1 # -*- coding: utf-8 -*-
4 from geomsmesh import geompy
5 from geomsmesh import geomPublish
6 from geomsmesh import geomPublishInFather
9 # -----------------------------------------------------------------------------
10 # --- crée zone géométrique défaut a partir d'un filling
12 def creeZoneDefautFilling(filling, shapeDefaut, lgExtrusion=50):
14 Construction CAO de la zone à remailler, quand on utilise un filling,
15 après appel creeZoneDefautMaillage et quadranglesToShapeNoCorner
16 @param filling : la CAO de la peau du défaut reconstituée
17 @param shapeDefaut : objet géométrique représentant la fissure
18 (selon les cas, un point central, ou une shape plus complexe,
19 dont on ne garde que les vertices)
20 @return (facesDefaut = filling, centreDefaut, normalDefaut, extrusionDefaut)
26 centreSphere = geompy.MakeCDG(shapeDefaut)
27 geomPublish(initLog.debug, centreSphere, "cdg_defaut")
28 centreDefaut = geompy.MakeProjection(centreSphere, filling)
30 geomPublish(initLog.debug, centreDefaut, "centreDefaut")
31 normalDefaut = geompy.GetNormal(filling, centreDefaut)
33 geomPublish(initLog.debug, normalDefaut, "normalDefaut")
34 extrusionDefaut = geompy.MakePrismVecH(filling, normalDefaut, -lgExtrusion)
36 geomPublish(initLog.debug, extrusionDefaut, "extrusionDefaut")
38 return facesDefaut, centreDefaut, normalDefaut, extrusionDefaut