From: ouv Date: Fri, 4 Dec 2009 10:20:38 +0000 (+0000) Subject: Debug X-Git-Tag: PHASE_17_Part1_V2 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=792ed438512633806e3c12309e05529027c2d7ed;p=modules%2Fgeom.git Debug --- diff --git a/src/GEOM/GEOM_Engine.cxx b/src/GEOM/GEOM_Engine.cxx index e6da3ad15..3d52dfd4d 100644 --- a/src/GEOM/GEOM_Engine.cxx +++ b/src/GEOM/GEOM_Engine.cxx @@ -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& 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& 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 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& 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& 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 : "<GetCurrectState(); - if(MYDEBUG) { - cout<<"Variables from SObject:"<= 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++; -} diff --git a/src/GEOM/GEOM_Engine.hxx b/src/GEOM/GEOM_Engine.hxx index 25b661d15..cb9d5a00f 100644 --- a/src/GEOM/GEOM_Engine.hxx +++ b/src/GEOM/GEOM_Engine.hxx @@ -39,37 +39,6 @@ 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 TState; -typedef std::vector 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 TVariablesList; - typedef std::map > 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); diff --git a/src/GEOM_I/GEOM_DumpPython.cc b/src/GEOM_I/GEOM_DumpPython.cc index 5ac911aa6..5f70ce962 100644 --- a/src/GEOM_I/GEOM_DumpPython.cc +++ b/src/GEOM_I/GEOM_DumpPython.cc @@ -32,9 +32,6 @@ #include #include -#include -#include - //======================================================================= //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(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) { diff --git a/src/GEOM_I/GEOM_IGroupOperations_i.cc b/src/GEOM_I/GEOM_IGroupOperations_i.cc index ec64e411c..59803d71b 100644 --- a/src/GEOM_I/GEOM_IGroupOperations_i.cc +++ b/src/GEOM_I/GEOM_IGroupOperations_i.cc @@ -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); } //============================================================================= diff --git a/src/GEOM_SWIG/geompyDC.py b/src/GEOM_SWIG/geompyDC.py index 2dd970d60..d4f0da5c8 100644 --- a/src/GEOM_SWIG/geompyDC.py +++ b/src/GEOM_SWIG/geompyDC.py @@ -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. diff --git a/src/TransformationGUI/TransformationGUI_RotationDlg.cxx b/src/TransformationGUI/TransformationGUI_RotationDlg.cxx index 6849d1395..f5ff15fdf 100644 --- a/src/TransformationGUI/TransformationGUI_RotationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_RotationDlg.cxx @@ -32,6 +32,7 @@ #include #include #include +#include #include // 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()); } diff --git a/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx b/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx index 0088d849f..f9974b416 100644 --- a/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx @@ -32,6 +32,7 @@ #include #include #include +#include #include // 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<SpinBox1->text(); - aParameters<SpinBox2->text(); - aParameters<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()); }