Salome HOME
Debug PHASE_17_Part1_V2
authorouv <ouv@opencascade.com>
Fri, 4 Dec 2009 10:20:38 +0000 (10:20 +0000)
committerouv <ouv@opencascade.com>
Fri, 4 Dec 2009 10:20:38 +0000 (10:20 +0000)
src/GEOM/GEOM_Engine.cxx
src/GEOM/GEOM_Engine.hxx
src/GEOM_I/GEOM_DumpPython.cc
src/GEOM_I/GEOM_IGroupOperations_i.cc
src/GEOM_SWIG/geompyDC.py
src/TransformationGUI/TransformationGUI_RotationDlg.cxx
src/TransformationGUI/TransformationGUI_TranslationDlg.cxx

index e6da3ad15bddf34d4343ea906390ab0e6e7891a6..3d52dfd4d48ef704307712e1ebcd0b99c0895095 100644 (file)
@@ -107,17 +107,18 @@ static Standard_Integer ExtractDocID(TCollection_AsciiString& theID)
   return aDocID.IntegerValue();
 }
 
-bool ProcessFunction(Handle(GEOM_Function)&   theFunction,
-                     TCollection_AsciiString& theScript,
-                     TCollection_AsciiString& theAfterScript,
-                     const TVariablesList&    theVariables,
-                     const bool               theIsPublished,
-                     TDF_LabelMap&            theProcessed,
-                     std::set<std::string>&   theIgnoreObjs,
-                     bool&                    theIsDumpCollected);
-
-void ReplaceVariables(TCollection_AsciiString& theCommand, 
-                      const TVariablesList&    theVariables);
+bool ProcessFunction(Handle(GEOM_Function)&                          theFunction,
+                     TCollection_AsciiString&                        theScript,
+                     TCollection_AsciiString&                        theAfterScript,
+                     const Resource_DataMapOfAsciiStringAsciiString& theObjectNames,
+                     const bool                                      theIsPublished,
+                     TDF_LabelMap&                                   theProcessed,
+                     std::set<std::string>&                          theIgnoreObjs,
+                     bool&                                           theIsDumpCollected);
+
+void ReplaceVariables(TCollection_AsciiString&                        theCommand, 
+                      const TColStd_SequenceOfAsciiString&            theVariables,
+                      const Resource_DataMapOfAsciiStringAsciiString& theObjectNames);
 
 Handle(TColStd_HSequenceOfInteger) FindEntries(TCollection_AsciiString& theString);
 
@@ -522,7 +523,6 @@ void GEOM_Engine::Close(int theDocID)
 //=============================================================================
 TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID,
                                                 Resource_DataMapOfAsciiStringAsciiString& theObjectNames,
-                                                TVariablesList theVariables,
                                                 bool isPublished,
                                                 bool& aValidScript)
 {
@@ -586,7 +586,7 @@ TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID,
       }
       bool isDumpCollected = false;
       TCollection_AsciiString aCurScript, anAfterScript;
-      if (!ProcessFunction(aFunction, aCurScript, anAfterScript, theVariables,
+      if (!ProcessFunction(aFunction, aCurScript, anAfterScript, theObjectNames,
                            isPublished, aCheckedFuncMap, anIgnoreObjMap,
                            isDumpCollected ))
         continue;
@@ -847,14 +847,14 @@ std::list<int> GEOM_Engine::getAllTextures(int theDocID)
  *  ProcessFunction: Dump fucntion description into script
  */
 //=============================================================================
-bool ProcessFunction(Handle(GEOM_Function)&     theFunction,
-                     TCollection_AsciiString&   theScript,
-                     TCollection_AsciiString&   theAfterScript,
-                     const TVariablesList&      theVariables,
-                     const bool                 theIsPublished,
-                     TDF_LabelMap&              theProcessed,
-                     std::set<std::string>&     theIgnoreObjs,
-                     bool&                      theIsDumpCollected)
+bool ProcessFunction(Handle(GEOM_Function)&                          theFunction,
+                     TCollection_AsciiString&                        theScript,
+                     TCollection_AsciiString&                        theAfterScript,
+                     const Resource_DataMapOfAsciiStringAsciiString& theObjectNames,
+                     const bool                                      theIsPublished,
+                     TDF_LabelMap&                                   theProcessed,
+                     std::set<std::string>&                          theIgnoreObjs,
+                     bool&                                           theIsDumpCollected)
 {
   theIsDumpCollected = false;
   if (theFunction.IsNull()) return false;
@@ -915,8 +915,12 @@ bool ProcessFunction(Handle(GEOM_Function)&     theFunction,
       theIsDumpCollected = true;
   }
 
-  //Replace parameter by notebook variables
-  ReplaceVariables(aDescr,theVariables);
+  // replace parameters of the function by notebook variables
+  TColStd_SequenceOfAsciiString aVariables;
+  for( int i = 1, n = theFunction->GetArgsCount(); i <= n; i++ )
+    aVariables.Append( theFunction->GetParam( i ) );
+  ReplaceVariables(aDescr, aVariables, theObjectNames);
+
   if ( theIsDumpCollected ) {
     int i = 1;
     bool isBefore = true;
@@ -979,19 +983,13 @@ Handle(TColStd_HSequenceOfInteger) FindEntries(TCollection_AsciiString& theStrin
  *                    Notebook if need
  */
 //=============================================================================
-void ReplaceVariables(TCollection_AsciiString& theCommand, 
-                      const TVariablesList&    theVariables)
+void ReplaceVariables(TCollection_AsciiString&                        theCommand, 
+                      const TColStd_SequenceOfAsciiString&            theVariables,
+                      const Resource_DataMapOfAsciiStringAsciiString& theObjectNames)
 {
   if (MYDEBUG)
     cout<<"Command : "<<theCommand<<endl;
 
-  if (MYDEBUG) {
-    cout<<"All Entries:"<<endl;
-    TVariablesList::const_iterator it = theVariables.begin();
-    for(;it != theVariables.end();it++)
-      cout<<"\t'"<<(*it).first<<"'"<<endl;
-  }
-
   //Additional case - multi-row commands
   int aCommandIndex = 1;
   while( aCommandIndex < 10 ) { // tmp check
@@ -1039,25 +1037,10 @@ void ReplaceVariables(TCollection_AsciiString& theCommand,
         cout<<"Sub-entry : '" <<anEntry<<"'"<<endl;
     }
     
-    //Find variables used for object construction
-    ObjectStates* aStates = 0;
-    TVariablesList::const_iterator it = theVariables.find(anEntry);
-    if( it != theVariables.end() )
-      aStates = (*it).second;
-
-    if(!aStates) {
-      if(MYDEBUG)
-        cout<<"Valiables list empty!!!"<<endl;
-      aCommandIndex++;
-      continue;
-    }
-
-    TState aVariables = aStates->GetCurrectState();
-
     if(MYDEBUG) {
-      cout<<"Variables from SObject:"<<endl;
-      for (int i = 0; i < aVariables.size();i++)
-        cout<<"\t Variable["<<i<<"] = "<<aVariables[i].myVariable<<endl;
+      cout<<"Variables:"<<endl;
+      for (int i = 1; i <= theVariables.Length(); i++)
+        cout<<"\t Variable["<<i<<"] = "<<theVariables.Value(i)<<endl;
     }
 
     //Calculate total number of parameters
@@ -1073,7 +1056,7 @@ void ReplaceVariables(TCollection_AsciiString& theCommand,
     //Replace parameters by variables
     Standard_Integer aStartPos = 0;
     Standard_Integer aEndPos = 0;
-    int iVar = 0;
+    int iVar = 1;
     TCollection_AsciiString aVar, aReplacedVar;
     for(Standard_Integer i=aFirstParam;i <= aTotalNbParams;i++) {
       //Replace first parameter (bettwen '(' character and first ',' character)
@@ -1153,16 +1136,16 @@ void ReplaceVariables(TCollection_AsciiString& theCommand,
             if(MYDEBUG) 
               cout<<"aParameter: "<<aParameter<<endl;
 
-            if(iVar >= aVariables.size())
+            if(iVar > theVariables.Length())
               continue;
 
-            aReplacedParameter = aVariables[iVar].myVariable;
+            aReplacedParameter = theVariables.Value(iVar);
             if(aReplacedParameter.IsEmpty()) {
               iVar++;
               continue;
             }
 
-            if(aVariables[iVar].isVariable) {
+            if(!theVariables.Value(iVar).IsEmpty()) {
               aReplacedParameter.InsertBefore(1,"'");
               aReplacedParameter.InsertAfter(aReplacedParameter.Length(),"'");
             }
@@ -1194,19 +1177,19 @@ void ReplaceVariables(TCollection_AsciiString& theCommand,
       } // end of specific case for sketcher
 
       //If parameter is entry or 'None', skip it
-      if(theVariables.find(aVar) != theVariables.end() || aVar.Search(":") != -1 || aVar == PY_NULL)
+      if(theObjectNames.IsBound(aVar) || aVar.Search(":") != -1 || aVar == PY_NULL)
         continue;
 
-      if(iVar >= aVariables.size())
+      if(iVar > theVariables.Length())
         continue;
 
-      aReplacedVar = aVariables[iVar].myVariable;
+      aReplacedVar = theVariables.Value(iVar);
       if(aReplacedVar.IsEmpty()) {
         iVar++;
         continue;
       }
 
-      if(aVariables[iVar].isVariable) {
+      if(!theVariables.Value(iVar).IsEmpty()) {
         aReplacedVar.InsertBefore(1,"\"");
         aReplacedVar.InsertAfter(aReplacedVar.Length(),"\"");
       }
@@ -1220,8 +1203,6 @@ void ReplaceVariables(TCollection_AsciiString& theCommand,
     theCommand.Insert(aStartCommandPos, aCommand);
 
     aCommandIndex++;
-
-    aStates->IncrementState();
   }
 
   if (MYDEBUG)
@@ -1496,56 +1477,3 @@ void PublishObject (const TCollection_AsciiString&                  theEntry,
     theEntry.SubString( theEntry.SearchFromEnd(":")+1, theEntry.Length() ).IntegerValue();
   theEntryToCommandMap.insert( std::make_pair( tag, aCommand.ToCString() ));
 }
-
-//================================================================================
-/*!
- * \brief Constructor
- */
-//================================================================================
-ObjectStates::ObjectStates()
-{
-  _dumpstate = 0;
-}
-
-//================================================================================
-/*!
- * \brief Destructor
- */
-//================================================================================
-ObjectStates::~ObjectStates()
-{
-}
-
-//================================================================================
-/*!
- * \brief Return current object state
- * \retval state - Object state (vector of notebook variable)
- */
-//================================================================================
-TState ObjectStates::GetCurrectState() const
-{
-  if(_states.size() > _dumpstate)
-    return _states[_dumpstate];
-  return TState();
-}
-
-//================================================================================
-/*!
- * \brief Add new object state 
- * \param theState - Object state (vector of notebook variable)
- */
-//================================================================================
-void ObjectStates::AddState(const TState &theState)
-{
-  _states.push_back(theState);
-}
-
-//================================================================================
-/*!
- * \brief Increment object state
- */
-//================================================================================
-void ObjectStates::IncrementState()
-{
-  _dumpstate++;
-}
index 25b661d1554ee8a2388409e4510267a01fa374b5..cb9d5a00f4de0a54b69ca1c54aa91375eb370389 100644 (file)
 
 class Handle_TDataStd_HArray1OfByte;
 
-struct TVariable{
-  TCollection_AsciiString myVariable;
-  bool isVariable;
-
-  TVariable(const TCollection_AsciiString& theVariable, bool theFlag = true):
-    myVariable(theVariable),
-    isVariable(theFlag){}
-};
-
-typedef std::vector<TVariable> TState;
-typedef std::vector<TState>    TAllStates;
-
-class ObjectStates
-{
-public:
-  Standard_EXPORT ObjectStates();
-  ~ObjectStates();
-
-  TAllStates GetAllStates() const { return _states; }
-
-  TState GetCurrectState() const;
-  Standard_EXPORT void AddState(const TState &theState);
-  void IncrementState();
-
-private:
-  TAllStates              _states;
-  int                     _dumpstate;
-};
-
-typedef std::map<TCollection_AsciiString, ObjectStates* > TVariablesList;
-
 typedef std::map<int, std::list<TDF_Label> > TFreeLabelsList;
 
 class GEOM_Engine
@@ -124,7 +93,6 @@ class GEOM_Engine
 
   Standard_EXPORT TCollection_AsciiString DumpPython(int theDocID, 
                                      Resource_DataMapOfAsciiStringAsciiString& theObjectNames,
-                                     TVariablesList theVariables,
                                      bool isPublished, 
                                      bool& aValidScript);
 
index 5ac911aa6a4bf30744744fca4f39003e06a21fbf..5f70ce96273b0e50b66854ab26ad423bbbfe951b 100644 (file)
@@ -32,9 +32,6 @@
 #include <TColStd_HSequenceOfAsciiString.hxx>
 #include <Resource_DataMapOfAsciiStringAsciiString.hxx>
 
-#include <vector>
-#include <string>
-
 //=======================================================================
 //function : DumpPython
 //purpose  : 
@@ -54,8 +51,6 @@ Engines::TMPFile* GEOM_Gen_i::DumpPython(CORBA::Object_ptr theStudy,
 
   Resource_DataMapOfAsciiStringAsciiString aMap;
 
-  TVariablesList aVariableMap;
-
   SALOMEDS::ChildIterator_var Itr = aStudy->NewChildIterator(aSO);
   for(Itr->InitEx(true); Itr->More(); Itr->Next()) {
     SALOMEDS::SObject_var aValue = Itr->Value();
@@ -67,28 +62,6 @@ Engines::TMPFile* GEOM_Gen_i::DumpPython(CORBA::Object_ptr theStudy,
         CORBA::String_var aName = aValue->GetName();
         CORBA::String_var anEntry = GO->GetEntry();
        aMap.Bind( (char*)anEntry.in(), (char*)aName.in() );
-
-  /*ASL: temporary commented for Notebook
-       //Find attribute with list of used notebook variables
-       SALOMEDS::GenericAttribute_var anAttr;
-       SALOMEDS::AttributeString_var anAttrStr;
-       if(aValue->FindAttribute(anAttr,"AttributeString")){
-         anAttrStr = SALOMEDS::AttributeString::_narrow(anAttr);
-         SALOMEDS::ListOfListOfStrings_var aSections = aStudy->ParseVariables(anAttrStr->Value());
-         ObjectStates* aStates = new ObjectStates();
-         for(int i = 0; i < aSections->length(); i++) {
-           TState aState;
-           SALOMEDS::ListOfStrings aListOfVars = aSections[i];
-           for(int j = 0; j < aListOfVars.length(); j++) {
-             bool isVar = aStudy->IsVariable(aListOfVars[j].in());
-             TVariable aVar = TVariable( (char*)aListOfVars[j].in(), isVar );
-             aState.push_back(aVar);
-           }
-           aStates->AddState(aState);
-         }
-         aVariableMap.insert(pair<TCollection_AsciiString,ObjectStates*>(TCollection_AsciiString(anEntry),aStates));
-       }
-  */
       }
     }
   }
@@ -97,7 +70,7 @@ Engines::TMPFile* GEOM_Gen_i::DumpPython(CORBA::Object_ptr theStudy,
     "# -*- coding: iso-8859-1 -*-\n"
     "### This file is generated by SALOME automatically by dump python functionality\n"
       "### of GEOM component\n\n";
-  aScript += _impl->DumpPython(aStudy->StudyId(), aMap, aVariableMap, isPublished, isValidScript);
+  aScript += _impl->DumpPython(aStudy->StudyId(), aMap, isPublished, isValidScript);
 
   if (isPublished)
   {
index ec64e411c63b96c1b5ba983169713bb5ab00666f..59803d71baa7d4a5923ee75258186b9aa749a521 100644 (file)
@@ -81,7 +81,7 @@ GEOM::GEOM_Object_ptr GEOM_IGroupOperations_i::CreateGroup(GEOM::GEOM_Object_ptr
   if (!GetOperations()->IsDone() || anObject.IsNull())
     return aGEOMObject._retn();
 
-  return GetObject(anObject);
+  return GetObject(anObject, false);
 }
 
 //=============================================================================
@@ -268,7 +268,7 @@ GEOM::GEOM_Object_ptr GEOM_IGroupOperations_i::GetMainShape(GEOM::GEOM_Object_pt
   Handle(GEOM_Object) anObject = GetOperations()->GetMainShape(aGroupRef);
   if (!GetOperations()->IsDone() || anObject.IsNull()) return aGEOMObject._retn();
 
-  return GetObject(anObject);
+  return GetObject(anObject, false);
 }
 
 //=============================================================================
index 2dd970d605f93cd9612e1f52e4a1765c95c9e768..d4f0da5c813b761d41b3473bb44837fa4b57d38f 100644 (file)
@@ -418,7 +418,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theX,theY,theZ,Parameters = ParseParameters(theX, theY, theZ)
             anObj = self.BasicOp.MakePointXYZ(theX, theY, theZ)
             RaiseIfFailed("MakePointXYZ", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a point, distant from the referenced point
@@ -435,7 +435,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theX,theY,theZ,Parameters = ParseParameters(theX, theY, theZ)
             anObj = self.BasicOp.MakePointWithReference(theReference, theX, theY, theZ)
             RaiseIfFailed("MakePointWithReference", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a point, corresponding to the given parameter on the given curve.
@@ -449,7 +449,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theParameter, Parameters = ParseParameters(theParameter)
             anObj = self.BasicOp.MakePointOnCurve(theRefCurve, theParameter)
             RaiseIfFailed("MakePointOnCurve", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a point by projection give coordinates on the given curve
@@ -465,7 +465,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theX, theY, theZ, Parameters = ParseParameters(theX, theY, theZ)
             anObj = self.BasicOp.MakePointOnCurveByCoord(theRefCurve, theX, theY, theZ)
             RaiseIfFailed("MakeVertexOnCurveByCoord", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a point, corresponding to the given parameters on the
@@ -481,7 +481,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             # Example: see GEOM_TestAll.py
             anObj = self.BasicOp.MakePointOnSurface(theRefSurf, theUParameter, theVParameter)
             RaiseIfFailed("MakePointOnSurface", self.BasicOp)
-            anObj.SetParameters(Parameters);
+            SetParameters(anObj, Parameters);
             return anObj
 
         ## Create a point by projection give coordinates on the given surface
@@ -497,7 +497,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             # Example: see GEOM_TestAll.py
             anObj = self.BasicOp.MakePointOnSurfaceByCoord(theRefSurf, theX, theY, theZ)
             RaiseIfFailed("MakeVertexOnSurfaceByCoord", self.BasicOp)
-            anObj.SetParameters(Parameters);
+            SetParameters(anObj, Parameters);
             return anObj
 
         ## Create a point on intersection of two lines.
@@ -547,7 +547,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ)
             anObj = self.BasicOp.MakeVectorDXDYDZ(theDX, theDY, theDZ)
             RaiseIfFailed("MakeVectorDXDYDZ", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a vector between two points.
@@ -612,7 +612,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theTrimSize, Parameters = ParseParameters(theTrimSize);
             anObj = self.BasicOp.MakePlanePntVec(thePnt, theVec, theTrimSize)
             RaiseIfFailed("MakePlanePntVec", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a plane, passing through the three given points
@@ -628,7 +628,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theTrimSize, Parameters = ParseParameters(theTrimSize);
             anObj = self.BasicOp.MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize)
             RaiseIfFailed("MakePlaneThreePnt", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a plane, similar to the existing one, but with another size of representing face.
@@ -642,7 +642,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theTrimSize, Parameters = ParseParameters(theTrimSize);
             anObj = self.BasicOp.MakePlaneFace(theFace, theTrimSize)
             RaiseIfFailed("MakePlaneFace", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
        ## Create a plane, passing through the 2 vectors
@@ -658,7 +658,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theTrimSize, Parameters = ParseParameters(theTrimSize);
             anObj = self.BasicOp.MakePlane2Vec(theVec1, theVec2, theTrimSize)
             RaiseIfFailed("MakePlane2Vec", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
        ## Create a plane, based on a Local coordinate system.
@@ -673,7 +673,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theTrimSize, Parameters = ParseParameters(theTrimSize);
             anObj = self.BasicOp.MakePlaneLCS(theLCS, theTrimSize, theOrientation)
             RaiseIfFailed("MakePlaneLCS", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a local coordinate system.
@@ -688,7 +688,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ, Parameters = ParseParameters(OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ);
             anObj = self.BasicOp.MakeMarker(OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ)
             RaiseIfFailed("MakeMarker", self.BasicOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a local coordinate system.
@@ -772,7 +772,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR, Parameters = ParseParameters(theR)
             anObj = self.CurvesOp.MakeCirclePntVecR(thePnt, theVec, theR)
             RaiseIfFailed("MakeCirclePntVecR", self.CurvesOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a circle with given radius.
@@ -827,7 +827,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
                 anObj = self.CurvesOp.MakeEllipse(thePnt, theVec, theRMajor, theRMinor)
                 pass
             RaiseIfFailed("MakeEllipse", self.CurvesOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create an ellipse with given radiuses.
@@ -920,7 +920,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theCommand,Parameters = ParseSketcherCommand(theCommand)
             anObj = self.CurvesOp.MakeSketcher(theCommand, theWorkingPlane)
             RaiseIfFailed("MakeSketcher", self.CurvesOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a sketcher (wire or face), following the textual description,
@@ -978,7 +978,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ)
             anObj = self.PrimOp.MakeBoxDXDYDZ(theDX, theDY, theDZ)
             RaiseIfFailed("MakeBoxDXDYDZ", self.PrimOp)
-            SetParameters( anObj, Parameters )
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a box with two specified opposite vertices,
@@ -1007,7 +1007,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theH,theW,Parameters = ParseParameters(theH, theW)
             anObj = self.PrimOp.MakeFaceHW(theH, theW, theOrientation)
             RaiseIfFailed("MakeFaceHW", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a face from another plane and two sizes,
@@ -1024,7 +1024,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theH,theW,Parameters = ParseParameters(theH, theW)
             anObj = self.PrimOp.MakeFaceObjHW(theObj, theH, theW)
             RaiseIfFailed("MakeFaceObjHW", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a disk with given center, normal vector and radius.
@@ -1039,7 +1039,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR,Parameters = ParseParameters(theR)
             anObj = self.PrimOp.MakeDiskPntVecR(thePnt, theVec, theR)
             RaiseIfFailed("MakeDiskPntVecR", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a disk, passing through three given points
@@ -1064,7 +1064,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR,Parameters = ParseParameters(theR)
             anObj = self.PrimOp.MakeDiskR(theR, theOrientation)
             RaiseIfFailed("MakeDiskR", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a cylinder with given base point, axis, radius and height.
@@ -1080,7 +1080,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR,theH,Parameters = ParseParameters(theR, theH)
             anObj = self.PrimOp.MakeCylinderPntVecRH(thePnt, theAxis, theR, theH)
             RaiseIfFailed("MakeCylinderPntVecRH", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a cylinder with given radius and height at
@@ -1096,7 +1096,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR,theH,Parameters = ParseParameters(theR, theH)
             anObj = self.PrimOp.MakeCylinderRH(theR, theH)
             RaiseIfFailed("MakeCylinderRH", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a sphere with given center and radius.
@@ -1110,7 +1110,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR,Parameters = ParseParameters(theR)
             anObj = self.PrimOp.MakeSpherePntR(thePnt, theR)
             RaiseIfFailed("MakeSpherePntR", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a sphere with given center and radius.
@@ -1135,7 +1135,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR,Parameters = ParseParameters(theR)
             anObj = self.PrimOp.MakeSphereR(theR)
             RaiseIfFailed("MakeSphereR", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a cone with given base point, axis, height and radiuses.
@@ -1154,7 +1154,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR1,theR2,theH,Parameters = ParseParameters(theR1,theR2,theH)
             anObj = self.PrimOp.MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theH)
             RaiseIfFailed("MakeConePntVecR1R2H", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a cone with given height and radiuses at
@@ -1173,7 +1173,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR1,theR2,theH,Parameters = ParseParameters(theR1,theR2,theH)
             anObj = self.PrimOp.MakeConeR1R2H(theR1, theR2, theH)
             RaiseIfFailed("MakeConeR1R2H", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a torus with given center, normal vector and radiuses.
@@ -1189,7 +1189,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theRMajor,theRMinor,Parameters = ParseParameters(theRMajor,theRMinor)
             anObj = self.PrimOp.MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor)
             RaiseIfFailed("MakeTorusPntVecRR", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a torus with given radiuses at the origin of coordinate system.
@@ -1203,7 +1203,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theRMajor,theRMinor,Parameters = ParseParameters(theRMajor,theRMinor)
             anObj = self.PrimOp.MakeTorusRR(theRMajor, theRMinor)
             RaiseIfFailed("MakeTorusRR", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         # end of l3_3d_primitives
@@ -1239,7 +1239,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theH,Parameters = ParseParameters(theH)
             anObj = self.PrimOp.MakePrismVecH(theBase, theVec, theH)
             RaiseIfFailed("MakePrismVecH", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a shape by extrusion of the base shape along the vector,
@@ -1256,7 +1256,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theH,Parameters = ParseParameters(theH)
             anObj = self.PrimOp.MakePrismVecH2Ways(theBase, theVec, theH)
             RaiseIfFailed("MakePrismVecH2Ways", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
        ## Create a shape by extrusion of the base shape along the dx, dy, dz direction
@@ -1270,7 +1270,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ)
             anObj = self.PrimOp.MakePrismDXDYDZ(theBase, theDX, theDY, theDZ)
             RaiseIfFailed("MakePrismDXDYDZ", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
        ## Create a shape by extrusion of the base shape along the dx, dy, dz direction
@@ -1286,7 +1286,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ)
             anObj = self.PrimOp.MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ)
             RaiseIfFailed("MakePrismDXDYDZ2Ways", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a shape by revolution of the base shape around the axis
@@ -1303,7 +1303,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theAngle,Parameters = ParseParameters(theAngle)
             anObj = self.PrimOp.MakeRevolutionAxisAngle(theBase, theAxis, theAngle)
             RaiseIfFailed("MakeRevolutionAxisAngle", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## The Same Revolution but in both ways forward&backward.
@@ -1311,7 +1311,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theAngle,Parameters = ParseParameters(theAngle)
             anObj = self.PrimOp.MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle)
             RaiseIfFailed("MakeRevolutionAxisAngle2Ways", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a filling from the given compound of contours.
@@ -1336,7 +1336,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             anObj = self.PrimOp.MakeFilling(theShape, theMinDeg, theMaxDeg,
                                             theTol2D, theTol3D, theNbIter, isApprox)
             RaiseIfFailed("MakeFilling", self.PrimOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create a shell or solid passing through set of sections.Sections should be wires,edges or vertices.
@@ -2079,7 +2079,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             for string in (theOperators + theParameters):
                 Parameters = ":" + Parameters
                 pass
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Remove faces from the given object (shape).
@@ -2113,7 +2113,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theTolerance,Parameters = ParseParameters(theTolerance)
             anObj = self.HealOp.Sew(theObject, theTolerance)
             RaiseIfFailed("Sew", self.HealOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Remove internal wires and edges from the given object (face).
@@ -2173,7 +2173,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theEdgeIndex,theValue,isByParameter,Parameters = ParseParameters(theEdgeIndex,theValue,isByParameter)
             anObj = self.HealOp.DivideEdge(theObject, theEdgeIndex, theValue, isByParameter)
             RaiseIfFailed("DivideEdge", self.HealOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Change orientation of the given object. Updates given shape.
@@ -2224,7 +2224,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             anObj = self.ShapesOp.MakeGlueFaces(theShape, theTolerance, doKeepNonSolids)
             if anObj is None:
                 raise RuntimeError, "MakeGlueFaces : " + self.ShapesOp.GetErrorCode()
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Find coincident faces in theShape for possible gluing.
@@ -2442,7 +2442,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             # Example: see GEOM_TestAll.py
             theDX, theDY, theDZ, Parameters = ParseParameters(theDX, theDY, theDZ)
             anObj = self.TrsfOp.TranslateDXDYDZ(theObject, theDX, theDY, theDZ)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             RaiseIfFailed("TranslateDXDYDZ", self.TrsfOp)
             return anObj
 
@@ -2457,7 +2457,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             # Example: see GEOM_TestAll.py
             theDX, theDY, theDZ, Parameters = ParseParameters(theDX, theDY, theDZ)
             anObj = self.TrsfOp.TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             RaiseIfFailed("TranslateDXDYDZ", self.TrsfOp)
             return anObj
 
@@ -2487,7 +2487,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theDistance,Parameters = ParseParameters(theDistance)
             anObj = self.TrsfOp.TranslateVectorDistance(theObject, theVector, theDistance, theCopy)
             RaiseIfFailed("TranslateVectorDistance", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Translate the given object along the given vector on given distance,
@@ -2503,7 +2503,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theDistance,Parameters = ParseParameters(theDistance)
             anObj = self.TrsfOp.TranslateVectorDistance(theObject, theVector, theDistance, 1)
             RaiseIfFailed("TranslateVectorDistance", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Rotate the given object around the given axis on the given angle.
@@ -2523,7 +2523,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
                 theAngle = theAngle*math.pi/180.0
             anObj = self.TrsfOp.Rotate(theObject, theAxis, theAngle)
             RaiseIfFailed("RotateCopy", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Rotate the given object around the given axis
@@ -2544,7 +2544,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
                 theAngle = theAngle*math.pi/180.0
             anObj = self.TrsfOp.RotateCopy(theObject, theAxis, theAngle)
             RaiseIfFailed("RotateCopy", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Rotate given object around vector perpendicular to plane
@@ -2575,7 +2575,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theFactor, Parameters = ParseParameters(theFactor)
             anObj = self.TrsfOp.ScaleShapeCopy(theObject, thePoint, theFactor)
             RaiseIfFailed("ScaleShapeCopy", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Scale the given object by different factors along coordinate axes,
@@ -2593,7 +2593,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             anObj = self.TrsfOp.ScaleShapeAlongAxesCopy(theObject, thePoint,
                                                         theFactorX, theFactorY, theFactorZ)
             RaiseIfFailed("MakeScaleAlongAxes", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Create an object, symmetrical
@@ -2679,7 +2679,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theOffset, Parameters = ParseParameters(theOffset)
             anObj = self.TrsfOp.OffsetShapeCopy(theObject, theOffset)
             RaiseIfFailed("OffsetShapeCopy", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         # -----------------------------------------------------------------------------
@@ -2700,7 +2700,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theStep, theNbTimes, Parameters = ParseParameters(theStep, theNbTimes)
             anObj = self.TrsfOp.MultiTranslate1D(theObject, theVector, theStep, theNbTimes)
             RaiseIfFailed("MultiTranslate1D", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Conseqently apply two specified translations to theObject specified number of times.
@@ -2722,7 +2722,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             anObj = self.TrsfOp.MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1,
                                                  theVector2, theStep2, theNbTimes2)
             RaiseIfFailed("MultiTranslate2D", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Rotate the given object around the given axis a given number times.
@@ -2739,7 +2739,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theAxis, theNbTimes, Parameters = ParseParameters(theAxis, theNbTimes)
             anObj = self.TrsfOp.MultiRotate1D(theObject, theAxis, theNbTimes)
             RaiseIfFailed("MultiRotate1D", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Rotate the given object around the
@@ -2762,7 +2762,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theAngle, theNbTimes1, theStep, theNbTimes2, Parameters = ParseParameters(theAngle, theNbTimes1, theStep, theNbTimes2)
             anObj = self.TrsfOp.MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2)
             RaiseIfFailed("MultiRotate2D", self.TrsfOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## The same, as MultiRotate1D(), but axis is given by direction and point
@@ -2799,7 +2799,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theR,Parameters = ParseParameters(theR)
             anObj = self.LocalOp.MakeFilletAll(theShape, theR)
             RaiseIfFailed("MakeFilletAll", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Perform a fillet on the specified edges/faces of the given shape
@@ -2821,7 +2821,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             else:
                 anObj = self.LocalOp.MakeFilletFaces(theShape, theR, theListShapes)
                 RaiseIfFailed("MakeFilletFaces", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## The same that MakeFillet but with two Fillet Radius R1 and R2
@@ -2834,7 +2834,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             else:
                 anObj = self.LocalOp.MakeFilletFacesR1R2(theShape, theR1, theR2, theListShapes)
                 RaiseIfFailed("MakeFilletFacesR1R2", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Perform a fillet on the specified edges of the given shape
@@ -2879,7 +2879,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theD,Parameters = ParseParameters(theD)
             anObj = self.LocalOp.MakeChamferAll(theShape, theD)
             RaiseIfFailed("MakeChamferAll", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Perform a chamfer on edges, common to the specified faces,
@@ -2897,7 +2897,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theD1,theD2,Parameters = ParseParameters(theD1,theD2)
             anObj = self.LocalOp.MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2)
             RaiseIfFailed("MakeChamferEdge", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## The Same that MakeChamferEdge but with params theD is chamfer length and
@@ -2911,7 +2911,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
                 theAngle = theAngle*math.pi/180.0
             anObj = self.LocalOp.MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2)
             RaiseIfFailed("MakeChamferEdgeAD", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Perform a chamfer on all edges of the specified faces,
@@ -2931,7 +2931,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theD1,theD2,Parameters = ParseParameters(theD1,theD2)
             anObj = self.LocalOp.MakeChamferFaces(theShape, theD1, theD2, theFaces)
             RaiseIfFailed("MakeChamferFaces", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## The Same that MakeChamferFaces but with params theD is chamfer lenght and
@@ -2947,7 +2947,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
                 theAngle = theAngle*math.pi/180.0
             anObj = self.LocalOp.MakeChamferFacesAD(theShape, theD, theAngle, theFaces)
             RaiseIfFailed("MakeChamferFacesAD", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Perform a chamfer on edges,
@@ -2962,7 +2962,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             theD1,theD2,Parameters = ParseParameters(theD1,theD2)
             anObj = self.LocalOp.MakeChamferEdges(theShape, theD1, theD2, theEdges)
             RaiseIfFailed("MakeChamferEdges", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## The Same that MakeChamferEdges but with params theD is chamfer lenght and
@@ -2976,7 +2976,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
                 theAngle = theAngle*math.pi/180.0
             anObj = self.LocalOp.MakeChamferEdgesAD(theShape, theD, theAngle, theEdges)
             RaiseIfFailed("MakeChamferEdgesAD", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Shortcut to MakeChamferEdge() and MakeChamferFaces()
@@ -3013,7 +3013,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
               theWeight,theWaterDensity,theMeshDeflection)
             anObj = self.LocalOp.MakeArchimede(theShape, theWeight, theWaterDensity, theMeshDeflection)
             RaiseIfFailed("MakeArchimede", self.LocalOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         # end of l3_basic_op
@@ -3680,7 +3680,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             aList = self.BlocksOp.ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces)
             RaiseIfFailed("ExplodeCompoundOfBlocks", self.BlocksOp)
             for anObj in aList:
-                anObj.SetParameters(Parameters)
+                SetParameters(anObj, Parameters)
                 pass
             return aList
 
@@ -3736,7 +3736,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             DirFace1,DirFace2,NbTimes,Parameters = ParseParameters(DirFace1,DirFace2,NbTimes)
             anObj = self.BlocksOp.MakeMultiTransformation1D(Block, DirFace1, DirFace2, NbTimes)
             RaiseIfFailed("MakeMultiTransformation1D", self.BlocksOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Multi-transformate block and glue the result.
@@ -3755,7 +3755,7 @@ class geompyDC(GEOM._objref_GEOM_Gen):
             anObj = self.BlocksOp.MakeMultiTransformation2D(Block, DirFace1U, DirFace2U, NbTimesU,
                                                             DirFace1V, DirFace2V, NbTimesV)
             RaiseIfFailed("MakeMultiTransformation2D", self.BlocksOp)
-            anObj.SetParameters(Parameters)
+            SetParameters(anObj, Parameters)
             return anObj
 
         ## Build all possible propagation groups.
index 6849d1395b1fcd58e171cb618486d29a720e073c..f5ff15fdf43a4ead26431c5f21c99b34307a3678 100644 (file)
@@ -32,6 +32,7 @@
 #include <SUIT_Session.h>
 #include <SUIT_ResourceMgr.h>
 #include <SalomeApp_Application.h>
+#include <SalomeApp_Notebook.h>
 #include <LightApp_SelectionMgr.h>
 
 // OCCT Includes
@@ -550,9 +551,8 @@ bool TransformationGUI_RotationDlg::execute (ObjectList& objects)
           myCurrObject = myObjects[i];
           anObj = anOper->RotateCopy(myObjects[i], myAxis, GetAngle() * PI180);
           if (!anObj->_is_nil()) {
-            if(!IsPreview()) {
-              //anObj->SetParameters(aParameters.join(":").toLatin1().constData());
-            }
+            if(!IsPreview())
+              myNoteBook->setParameters(anObj, 1, GroupPoints->SpinBox_DX);
             objects.push_back(anObj._retn());
           }
         }
@@ -563,8 +563,8 @@ bool TransformationGUI_RotationDlg::execute (ObjectList& objects)
           anObj = anOper->Rotate(myObjects[i], myAxis, GetAngle() * PI180);
           if (!anObj->_is_nil()) {
             if(!IsPreview()) {
-              //anObj->SetParameters(aParameters.join(":").toLatin1().constData());
-             updateAttributes(anObj, aParameters);
+              myNoteBook->setParameters(anObj, 1, GroupPoints->SpinBox_DX);
+             //updateAttributes(anObj, aParameters);
            }
             objects.push_back(anObj._retn());
          }
index 0088d849fb2d95435334b53e0360a7ac928f7af5..f9974b41662d3bddfc6a52675fc24672158f2375 100644 (file)
@@ -32,6 +32,7 @@
 #include <SUIT_Session.h>
 #include <SUIT_ResourceMgr.h>
 #include <SalomeApp_Application.h>
+#include <SalomeApp_Notebook.h>
 #include <LightApp_SelectionMgr.h>
 
 // OCCT Includes
@@ -564,18 +565,16 @@ bool TransformationGUI_TranslationDlg::execute (ObjectList& objects)
       double dy = GroupPoints->SpinBox2->value();
       double dz = GroupPoints->SpinBox3->value();
 
-      QStringList aParameters;
-      aParameters<<GroupPoints->SpinBox1->text();
-      aParameters<<GroupPoints->SpinBox2->text();
-      aParameters<<GroupPoints->SpinBox3->text();
-
       if (toCreateCopy) {
         for (int i = 0; i < myObjects.length(); i++) {
           myCurrObject = myObjects[i];
           anObj = anOper->TranslateDXDYDZCopy(myObjects[i], dx, dy, dz);
           if (!anObj->_is_nil()) {
-            //if(!IsPreview())
-           //  anObj->SetParameters(aParameters.join(":").toLatin1().constData());
+            if(!IsPreview())
+              myNoteBook->setParameters(anObj, 3,
+                                        GroupPoints->SpinBox1,
+                                        GroupPoints->SpinBox2,
+                                        GroupPoints->SpinBox3);
             objects.push_back(anObj._retn());
           }
         }
@@ -586,8 +585,11 @@ bool TransformationGUI_TranslationDlg::execute (ObjectList& objects)
           anObj = anOper->TranslateDXDYDZ(myObjects[i], dx, dy, dz);
           if (!anObj->_is_nil()) {
             if(!IsPreview()) {
-             //anObj->SetParameters(aParameters.join(":").toLatin1().constData());
-             updateAttributes(anObj, aParameters);
+              myNoteBook->setParameters(anObj, 3,
+                                        GroupPoints->SpinBox1,
+                                        GroupPoints->SpinBox2,
+                                        GroupPoints->SpinBox3);
+             //updateAttributes(anObj, aParameters);
            }
             objects.push_back(anObj._retn());
          }