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:
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' :
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])