]> SALOME platform Git repositories - modules/shaper.git/commitdiff
Salome HOME
isol_solide
authorGérald NICOLAS <gerald.nicolas@edf.fr>
Thu, 26 Jan 2023 16:27:12 +0000 (17:27 +0100)
committerGérald NICOLAS <gerald.nicolas@edf.fr>
Wed, 10 May 2023 08:35:32 +0000 (10:35 +0200)
src/PythonAddons/macros/midSurface/surfaceMediane.py

index 8949c093d7521ac56022ec98bbf627df2b8e27a2..97ca98d2213df20f68191dd92c7ea613079666cd 100755 (executable)
@@ -497,41 +497,95 @@ Sorties :
       print_tab (n_recur, texte)
 
     if ( solide.name() != self.objet_principal.name() ):
+      objet, recover = self._isole_solide_a ( solide, n_recur )
 
-      if self._verbose_max:
-        print_tab (n_recur, ". Extraction du solide")
+    else:
+      objet, recover = self._isole_solide_b ( solide, n_recur )
+
+    if self._verbose_max:
+      print_tab (n_recur, "objet final : ", objet.name())
+      print_tab (n_recur, "fonction_0 : ", self.fonction_0)
+      print_tab (n_recur, "recover : ", recover)
+
+    return objet, recover
+
+#===========================  Fin de la méthode ==================================
+
+#=========================== Début de la méthode =================================
+
+  def _isole_solide_a ( self, solide, n_recur ):
+    """Isole le solide de son arboresence
+
+Entrées :
+  :solide: le solide à traiter
+  :n_recur: numéro de la récurrence
+
+Sorties :
+  :objet: le solide isolé
+  :recover: la fonction de récupération
+    """
+
+    nom_fonction = __name__ + "/_isole_solide_a"
+    blabla = "\nDans {} :".format(nom_fonction)
+    if self._verbose_max:
+      print (blabla)
+      texte = "Pour le solide '{}' ".format(solide.name())
+      texte += "de l'objet principal '{}'".format(self.objet_principal.name())
+      print_tab (n_recur, texte)
+
+    if self._verbose_max:
+      print_tab (n_recur, ". Extraction du solide '{}'".format(self.objet_principal.name()))
 
 # 1. Extraction du solide
-      remove_subshapes = model.addRemoveSubShapes(self.part_doc, model.selection("COMPOUND", self.objet_principal.name()))
-      remove_subshapes.setSubShapesToKeep([model.selection("SOLID", solide.name())])
+    remove_subshapes = model.addRemoveSubShapes(self.part_doc, model.selection("COMPOUND", self.objet_principal.name()))
+    remove_subshapes.setSubShapesToKeep([model.selection("SOLID", solide.name())])
 
-      self.nom_solide_aux = "{}_S".format(solide.name())
-      remove_subshapes.result().setName(self.nom_solide_aux)
+    self.nom_solide_aux = "{}_S".format(solide.name())
+    if self._verbose_max:
+      print_tab (n_recur, "\tAttribution à remove_subshapes.result() du nom '{}'".format(self.nom_solide_aux))
+    remove_subshapes.result().setName(self.nom_solide_aux)
 
-      self.fonction_0 = remove_subshapes
+    self.fonction_0 = remove_subshapes
 
 # 2. Récupération de l'objet principal
-      recover = model.addRecover(self.part_doc, remove_subshapes, [self.objet_principal])
-      recover.result().setName(self.objet_principal.name())
+    recover = model.addRecover(self.part_doc, remove_subshapes, [self.objet_principal])
+    if self._verbose_max:
+      print_tab (n_recur, "\tAttribution à recover du nom '{}'".format(self.objet_principal.name()))
+    recover.result().setName(self.objet_principal.name())
 
-      objet = remove_subshapes.result()
+    return remove_subshapes.result(), recover
 
-    else:
+#===========================  Fin de la méthode ==================================
 
-      if self._verbose_max:
-        print_tab (n_recur, ". Mise en place du solide")
+#=========================== Début de la méthode =================================
+
+  def _isole_solide_b ( self, solide, n_recur ):
+    """Isole le solide de son arboresence
+
+Entrées :
+  :solide: le solide à traiter
+  :n_recur: numéro de la récurrence
+
+Sorties :
+  :objet: le solide isolé
+  :recover: la fonction de récupération
+    """
 
-      objet = solide
-      self.nom_solide_aux = self.objet_principal.name()
-      self.fonction_0 = None
-      recover = None
+    nom_fonction = __name__ + "/_isole_solide_b"
+    blabla = "\nDans {} :".format(nom_fonction)
+    if self._verbose_max:
+      print (blabla)
+      texte = "Pour le solide '{}' ".format(solide.name())
+      texte += "de l'objet principal '{}'".format(self.objet_principal.name())
+      print_tab (n_recur, texte)
 
     if self._verbose_max:
-      print_tab (n_recur, "objet final : ", objet.name())
-      print_tab (n_recur, "fonction_0 : ", self.fonction_0)
-      print_tab (n_recur, "recover : ", recover)
+      print_tab (n_recur, ". Mise en place du solide")
 
-    return objet, recover
+    self.nom_solide_aux = self.objet_principal.name()
+    self.fonction_0 = None
+
+    return solide, None
 
 #===========================  Fin de la méthode ==================================