- int aFacesNum = -1; // this mean that "aFace" is used
- ResultConstructionPtr aConstruction =
- std::dynamic_pointer_cast<ModelAPI_ResultConstruction>(aContext);
- if(!aFaceShape.get()) { // this may be the whole sketch result selected, check and get faces
- if (aConstruction.get()) {
- aFacesNum = aConstruction->facesNum();
- } else {
- static const std::string aFaceError = "Can not find basis for revolution";
+ if(aFaceShape.get() && !aFaceShape->isNull()) { // Getting face.
+ aFacesList.push_back(aFaceShape);
+ } else { // This may be the whole sketch result selected, check and get faces.
+ ResultPtr aContext = aFaceSel->context();
+ std::shared_ptr<GeomAPI_Shape> aContextShape = aContext->shape();
+ if(!aContextShape.get()) {
+ static const std::string aContextError = "Error: The selection context is bad.";
+ setError(aContextError);
+ return;
+ }
+ ResultConstructionPtr aConstruction = std::dynamic_pointer_cast<ModelAPI_ResultConstruction>(aContext);
+ if(!aConstruction.get()) {
+ static const std::string aFaceError = "Error: Can not find basis for revolution.";