Salome HOME
Implementation of Partition movement using new result creation, with different data...
[modules/shaper.git] / src / FeaturesPlugin / FeaturesPlugin_Movement.cpp
index bebbcd735c6ee6584d19a427e01de07c98d04628..3a298e2a4c255f9c193fc84e6cf1b23dd1e7647d 100644 (file)
@@ -100,17 +100,7 @@ void FeaturesPlugin_Movement::execute()
     // Setting result.
     if (isPart) {
       ResultPartPtr anOrigin = std::dynamic_pointer_cast<ModelAPI_ResultPart>(*aContext);
-
-      ResultPartPtr aCurrentResult;
-      const std::list<std::shared_ptr<ModelAPI_Result> >& aResults = results();
-      std::list<std::shared_ptr<ModelAPI_Result> >::const_iterator aResIter = aResults.begin();
-      for(int a = 0; aResIter != aResults.end(); aResIter++, a++)  {
-        if (a == aResultIndex) {
-          aCurrentResult = std::dynamic_pointer_cast<ModelAPI_ResultPart>(*aResIter);
-          break;
-        }
-      }
-      ResultPartPtr aResultPart = document()->copyPart(aCurrentResult, anOrigin, aResultIndex);
+      ResultPartPtr aResultPart = document()->copyPart(anOrigin, data(), aResultIndex);
       aResultPart->setTrsf(*aContext, aMovementAlgo.transformation());
       setResult(aResultPart);
     } else {