]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
Added possibilty to re-init geompy by new Study
authorsrn <srn@opencascade.com>
Fri, 18 Mar 2005 14:15:04 +0000 (14:15 +0000)
committersrn <srn@opencascade.com>
Fri, 18 Mar 2005 14:15:04 +0000 (14:15 +0000)
src/GEOM_SWIG/geompy.py

index 60c341f82f34a76d7b403ff4761d67d622896948..5d4c14dae9b511f47bada4bc4154b15fd203a0be 100644 (file)
@@ -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
 # -----------------------------------------------------------------------------