From: dmv Date: Wed, 13 Oct 2010 15:01:03 +0000 (+0000) Subject: 0021031: EDF 1646 GEOM: Modify Location leads to Position driver failed X-Git-Tag: V5_1_5rc1~24 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=90dda39995ebbd4c4de8184fd89f528fafc45474;p=modules%2Fgeom.git 0021031: EDF 1646 GEOM: Modify Location leads to Position driver failed --- diff --git a/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx b/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx index 259e42e35..42ab3f44f 100644 --- a/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx @@ -1236,9 +1236,6 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::PositionShape Handle(GEOM_Function) anOriginal = theObject->GetLastFunction(); if (anOriginal.IsNull()) return NULL; //There is no function which creates an object to be set in position - Handle(GEOM_Function) aSrcF; - if (!theStartLCS.IsNull()) aSrcF = theStartLCS->GetLastFunction(); - //Add a Position function Standard_Integer aType = POSITION_SHAPE; if (theStartLCS.IsNull()) aType = POSITION_SHAPE_FROM_GLOBAL; @@ -1255,7 +1252,7 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::PositionShape aTI.SetShape(anOriginal); aTI.SetEndLCS(theEndLCS->GetLastFunction()); if (!theStartLCS.IsNull()) - aTI.SetStartLCS(aSrcF); + aTI.SetStartLCS(theObject == theStartLCS ? anOriginal : theStartLCS->GetLastFunction()); //Compute the Position try {