From c2ef5d47ff72249efb2a8956a2413c11a9a79d21 Mon Sep 17 00:00:00 2001 From: srn Date: Fri, 18 Mar 2005 14:15:04 +0000 Subject: [PATCH] Added possibilty to re-init geompy by new Study --- src/GEOM_SWIG/geompy.py | 88 +++++++++++++++++++++++++++-------------- 1 file changed, 59 insertions(+), 29 deletions(-) diff --git a/src/GEOM_SWIG/geompy.py b/src/GEOM_SWIG/geompy.py index 60c341f82..5d4c14dae 100644 --- a/src/GEOM_SWIG/geompy.py +++ b/src/GEOM_SWIG/geompy.py @@ -36,20 +36,67 @@ import GEOM g = lcc.FindOrLoadComponent("FactoryServer", "GEOM") geom = g._narrow( GEOM.GEOM_Gen ) -myBuilder = myStudy.NewBuilder() - -father = myStudy.FindComponent("GEOM") -if father is None: - father = myBuilder.NewComponent("GEOM") - A1 = myBuilder.FindOrCreateAttribute(father, "AttributeName") +gg = ImportComponentGUI("GEOM") + +#SRN: modified on Mar 18, 2005 + +geomStudy = None +geomBuilder = None +geomStudyId = 0 +BasicOp = None +CurvesOp = None +PrimOp = None +ShapesOp = None +HealOp = None +InsertOp = None +BoolOp = None +TrsfOp = None +LocalOp = None +MeasuOp = None +BlocksOp = None +GroupOp = None + +def init_geom(theStudy): + + global geomStudy, geomBuilder, geomStudyId, BasicOp, CurvesOp, PrimOp, ShapesOp, HealOp + global InsertOp, BoolOp, TrsfOp, LocalOp, MeasuOp, BlocksOp, GroupOp + + geomStudy = theStudy + geomStudyId = geomStudy._get_StudyId() + geomBuilder = geomStudy.NewBuilder() + father = geomStudy.FindComponent("GEOM") + if father is None: + father = geomBuilder.NewComponent("GEOM") + A1 = geomBuilder.FindOrCreateAttribute(father, "AttributeName") FName = A1._narrow(SALOMEDS.AttributeName) FName.SetValue("Geometry") - A2 = myBuilder.FindOrCreateAttribute(father, "AttributePixMap") + A2 = geomBuilder.FindOrCreateAttribute(father, "AttributePixMap") aPixmap = A2._narrow(SALOMEDS.AttributePixMap) aPixmap.SetPixMap("ICON_OBJBROWSER_Geometry") - myBuilder.DefineComponentInstance(father,geom) - -gg = ImportComponentGUI("GEOM") + geomBuilder.DefineComponentInstance(father,geom) + pass + + # ----------------------------------------------------------------------------- + # Assign Operations Interfaces + # ----------------------------------------------------------------------------- + + BasicOp = geom.GetIBasicOperations (geomStudyId) + CurvesOp = geom.GetICurvesOperations (geomStudyId) + PrimOp = geom.GetI3DPrimOperations (geomStudyId) + ShapesOp = geom.GetIShapesOperations (geomStudyId) + HealOp = geom.GetIHealingOperations (geomStudyId) + InsertOp = geom.GetIInsertOperations (geomStudyId) + BoolOp = geom.GetIBooleanOperations (geomStudyId) + TrsfOp = geom.GetITransformOperations(geomStudyId) + LocalOp = geom.GetILocalOperations (geomStudyId) + MeasuOp = geom.GetIMeasureOperations (geomStudyId) + BlocksOp = geom.GetIBlocksOperations (geomStudyId) + GroupOp = geom.GetIGroupOperations (geomStudyId) + pass + +init_geom(myStudy) + +#SRN: end of modifications def SubShapeName(aSubObj, aMainObj): """ @@ -70,7 +117,7 @@ def addToStudy(aShape, aName): * Example: see GEOM_TestAll.py """ try: - aSObject = geom.AddInStudy(myStudy, aShape, aName, None) + aSObject = geom.AddInStudy(geomStudy, aShape, aName, None) except: print "addToStudy() failed" return "" @@ -83,7 +130,7 @@ def addToStudyInFather(aFather, aShape, aName): * Example: see GEOM_TestAll.py """ try: - aSObject = geom.AddInStudy(myStudy, aShape, aName, aFather) + aSObject = geom.AddInStudy(geomStudy, aShape, aName, aFather) except: print "addToStudyInFather() failed" return "" @@ -95,23 +142,6 @@ def addToStudyInFather(aFather, aShape, aName): ShapeType = {"COMPOUND":0, "COMPSOLID":1, "SOLID":2, "SHELL":3, "FACE":4, "WIRE":5, "EDGE":6, "VERTEX":7, "SHAPE":8} -# ----------------------------------------------------------------------------- -# Get Operations Interfaces -# ----------------------------------------------------------------------------- - -BasicOp = geom.GetIBasicOperations (myStudyId) -CurvesOp = geom.GetICurvesOperations (myStudyId) -PrimOp = geom.GetI3DPrimOperations (myStudyId) -ShapesOp = geom.GetIShapesOperations (myStudyId) -HealOp = geom.GetIHealingOperations (myStudyId) -InsertOp = geom.GetIInsertOperations (myStudyId) -BoolOp = geom.GetIBooleanOperations (myStudyId) -TrsfOp = geom.GetITransformOperations(myStudyId) -LocalOp = geom.GetILocalOperations (myStudyId) -MeasuOp = geom.GetIMeasureOperations (myStudyId) -BlocksOp = geom.GetIBlocksOperations (myStudyId) -GroupOp = geom.GetIGroupOperations (myStudyId) - # ----------------------------------------------------------------------------- # Basic primitives # ----------------------------------------------------------------------------- -- 2.39.2