Salome HOME
Update of CheckDone
[modules/smesh.git] / src / Tools / blocFissure / gmu / whichSideMulti.py
index f33ecfcdd702a4a03d4768541c6d1296a40d3ed4..804dee7240e2de424dd1ac642b58791163d9cb58 100644 (file)
@@ -1,10 +1,27 @@
 # -*- coding: utf-8 -*-
+# Copyright (C) 2014-2024  EDF
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+"""Calcul de la position d'une shape par rapport à une face (dessus, dessous, sur la surface même)"""
 
 import logging
-from .geomsmesh import geompy
 
-# -----------------------------------------------------------------------------
-# --- calcul de la position d'une shape par rapport à une face (dessus, dessous, sur la surface même)
+from .geomsmesh import geompy
 
 def whichSideMulti(facerefs, ifil, obj, centre, tol = 1.e-3):
   """
@@ -21,6 +38,7 @@ def whichSideMulti(facerefs, ifil, obj, centre, tol = 1.e-3):
   nbEdges = geompy.NbShapes(obj, geompy.ShapeType["EDGE"]) # --- attention ! pour une seule edge presente, renvoie 2
   logging.debug("   nbEdges %s", nbEdges)
   vertices = geompy.ExtractShapes(obj, geompy.ShapeType["VERTEX"], False)
+
   if nbEdges > 0 : # --- edges
     if nbEdges <= 2:
       point = geompy.MakeVertexOnCurve(obj, 0.5)
@@ -32,6 +50,7 @@ def whichSideMulti(facerefs, ifil, obj, centre, tol = 1.e-3):
         vertices.append(point)
   else: # --- vertices
     vertices = [obj]
+
   nbOnRef = 0
   nbOnOther = 0
   for vertex in vertices:
@@ -52,20 +71,21 @@ def whichSideMulti(facerefs, ifil, obj, centre, tol = 1.e-3):
           break
         else:
           nbMiss += 1
-          pass           # peut-être inside, tester les autres faces
+          # peut-être inside, tester les autres faces
       else:
         if i == ifil:
           nbOnRef +=1    # le point est sur la face de référence, on continue avec les autres points
           break
         else:
           nbOnOther += 1 # le point est sur une autre face, mais il peut aussi être sur la face de référence...
-          pass           # on peut tester les autres faces
+         # on peut tester les autres faces
     if nbMiss == len(facerefs):
       side = 1 # inside
     if side != 0:
       break
+
   if side == 0 and nbOnRef < len(vertices):
-    side = 1   # inside  
+    side = 1   # inside
   logging.debug("  side %s", side)
-  return side
 
+  return side