0021031: EDF 1646 GEOM: Modify Location leads to Position driver failed

This commit is contained in:
dmv 2010-10-13 14:45:24 +00:00
parent d197245868
commit 994771fd7d
2 changed files with 4 additions and 2 deletions

View File

@ -1236,6 +1236,9 @@ 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;
@ -1252,7 +1255,7 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::PositionShape
aTI.SetShape(anOriginal);
aTI.SetEndLCS(theEndLCS->GetLastFunction());
if (!theStartLCS.IsNull())
aTI.SetStartLCS(theStartLCS->GetLastFunction());
aTI.SetStartLCS(aSrcF);
//Compute the Position
try {

View File

@ -633,7 +633,6 @@ bool TransformationGUI_PositionDlg::execute (ObjectList& objects)
case 1:
{
for (int i = 0; i < myObjects.length(); i++) {
if (toCreateCopy)
anObj = toCreateCopy ?
anOper->PositionShapeCopy(myObjects[i], myStartLCS, myEndLCS) :
anOper->PositionShape(myObjects[i], myStartLCS, myEndLCS);