X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FFeaturesPlugin%2FFeaturesPlugin_ExtrusionBoolean.cpp;h=bc514dcd603c3cceaa458291ccbded42c4722e36;hb=5c7800057bef826f4dfcd151a05b18ca5c69a08a;hp=cc0b7b783e2eacf370bfa191a056ea2a4889f706;hpb=606daaeec8fffdf1592853893aa6f8fc9919e451;p=modules%2Fshaper.git diff --git a/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.cpp b/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.cpp old mode 100644 new mode 100755 index cc0b7b783..bc514dcd6 --- a/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.cpp +++ b/src/FeaturesPlugin/FeaturesPlugin_ExtrusionBoolean.cpp @@ -1,6 +1,6 @@ // Copyright (C) 2014-20xx CEA/DEN, EDF R&D -// File: FeaturesPlugin_ExtrusionBoolean.h +// File: FeaturesPlugin_ExtrusionBoolean.cpp // Created: 11 June 2015 // Author: Dmitry Bobylev @@ -35,7 +35,7 @@ void FeaturesPlugin_ExtrusionBoolean::initMakeSolidsAttributes() //================================================================================================= void FeaturesPlugin_ExtrusionBoolean::makeSolids(const ListOfShape& theFaces, ListOfShape& theResults, - std::list>& theAlgos) + ListOfMakeShape& theAlgos) { // Getting extrusion sizes. double aToSize = 0.0; @@ -74,17 +74,16 @@ void FeaturesPlugin_ExtrusionBoolean::makeSolids(const ListOfShape& theFaces, theResults.clear(); for(ListOfShape::const_iterator aFacesIt = theFaces.begin(); aFacesIt != theFaces.end(); aFacesIt++) { std::shared_ptr aBaseShape = *aFacesIt; - std::shared_ptr aPrismAlgo = std::make_shared(aBaseShape, - aToShape, aToSize, - aFromShape, aFromSize); + std::shared_ptr aPrismAlgo = std::shared_ptr(new GeomAlgoAPI_Prism(aBaseShape, aToShape, aToSize, aFromShape, aFromSize)); // Checking that the algorithm worked properly. - if(!aPrismAlgo->isDone() || aPrismAlgo->shape()->isNull() || !aPrismAlgo->isValid()) { - setError("Extrusion algorithm failed"); + if(!aPrismAlgo->isDone() || !aPrismAlgo->shape().get() || aPrismAlgo->shape()->isNull() || + !aPrismAlgo->isValid()) { + setError("Error: Extrusion algorithm failed."); theResults.clear(); return; } theResults.push_back(aPrismAlgo->shape()); theAlgos.push_back(aPrismAlgo); } -} \ No newline at end of file +}