1 # -*- coding: utf-8 -*-
4 from geomsmesh import geompy
6 # -----------------------------------------------------------------------------
7 # --- identification des shapes modifiées par la duplication des noeuds de la face fissure (d'un coté de la face)
9 def shapesSurFissure(blocPartition, plane1, faceFissure, gencnt):
16 vertex = geompy.MakeVertexOnSurface(plane1, 0.5, 0.5)
17 normal = geompy.GetNormal(plane1, vertex)
18 extrusion = geompy.MakePrismVecH(plane1, normal, 100)
21 solids= geompy.GetShapesOnBox ( extrusion, blocPartition, geompy.ShapeType("SOLID"), GEOM.ST_ONIN )
23 sharedSolids += geompy.GetSharedShapes(faceFissure, solid, geompy.ShapeType["SOLID"])
24 logging.debug("sharedSolids %s",sharedSolids)
27 faces= geompy.GetShapesOnBox ( extrusion, blocPartition, geompy.ShapeType("FACE"), GEOM.ST_ONIN )
29 sharedFaces += geompy.GetSharedShapes(faceFissure, face, geompy.ShapeType["FACE"])
30 logging.debug("sharedFaces %s",sharedFaces)
33 edges= geompy.GetShapesOnBox ( extrusion, blocPartition, geompy.ShapeType("EDGE"), GEOM.ST_ONIN )
35 if not edge.IsSame(gencnt):
36 sharedEdges += geompy.GetSharedShapes(faceFissure, edge, geompy.ShapeType["EDGE"])
37 logging.debug("sharedEdges %s",sharedEdges)
39 shapesAModifier = [ sharedSolids, sharedFaces, sharedEdges]
40 return shapesAModifier