]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
mini binding v2
authorpascale.noyret <pascale.noyret@edf.fr>
Tue, 4 May 2021 16:22:39 +0000 (18:22 +0200)
committerpascale.noyret <pascale.noyret@edf.fr>
Tue, 4 May 2021 16:22:39 +0000 (18:22 +0200)
Noyau/N_MCCOMPO.py
Noyau/N_OBJECT.py
Poc/essaiGetattr.py

index e5bf186d3dfe13037bc44a4988e7bb68843a1f5f..08830c56897f7c73c2c3f197f041da4db0bfbc9b 100644 (file)
@@ -437,6 +437,25 @@ class MCCOMPO(N_OBJECT.OBJECT):
 
         return None
 
+    def getChildOrChildInBloc(self, name, restreint='non'):
+    # cherche dans les fils et les fils des blocs
+    # tout est base sur le fait que deux freres ne peuvent pas avoir le meme nom
+    # dans des blocs non exclusifs, sinon le .comm n est pas du python valide
+        for v in self.mcListe:
+            if v.nom == name: return v
+        if restreint == 'non':
+            try:
+                entite = self.definition.entites[name]
+                if entite.label == 'SIMP' or (entite.label == 'FACT' and entite.statut in ('c', 'd')):
+                    return entite(None, name, None)
+            except:
+                pass
+        for v in self.mcListe:
+            if v.nature == 'MCBLOC' :
+                petitFils=v.getChildOrChildInBloc(name, restreint) 
+                if petitFils !=None :  return petitFils
+        return None
+
     def append_mc_global_avecRecalcule(self, mc):
         etape = self.getEtape()
         if etape:
index d08f9fce85f8cb92bd69d9a84a38b062c05322f8..80f31056de66ebc88e0247000121d63c3fc3ea66 100644 (file)
@@ -151,7 +151,7 @@ class ErrorObj(OBJECT):
 
 def newGetattr(self,name):
     try :
-       fils=self.getChild(name)
+       fils=self.getChildOrChildInBloc(name,restreint='non')
        if fils : 
           if fils.nature == 'MCSIMP' : return fils.valeur
           if fils.nature == 'MCList' : 
index 741f6ee0955496917c48743082b90183b7d69bd6..c2f786c5cf539de283f938f16a9925400324b1fe 100755 (executable)
@@ -50,8 +50,8 @@ except : pass
 
 print (techno.radial_description)
 print (techno.radial_description.nb_assembly)
-print (techno.radial_description.assembly_map_6.xaxis)
-print (techno.radial_description.assembly_map_6.yaxis)
-print (techno.radial_description.assembly_map_6.assembly_map)
-print (techno.radial_description.assembly_map_6.assembly_map[0][3])
+print (techno.radial_description.xaxis)
+print (techno.radial_description.yaxis)
+print (techno.radial_description.assembly_map)
+print (techno.radial_description.assembly_map[0][3])