- logging.debug(" edges issues de la partition: %s", ednouv)
- for ii, ed in enumerate(ednouv):
- geomPublish(initLog.debug, ed, "ednouv%d"%ii)
- [edsorted, minl,maxl] = sortEdges(ednouv)
- logging.debug(" longueur edge trouvée: %s", maxl)
- edge = edsorted[-1]
+ if (len(ednouv) > 0):
+ logging.debug(" edges issues de la partition: %s", ednouv)
+ for ii, ed in enumerate(ednouv):
+ geomPublish(initLog.debug, ed, "ednouv%d"%ii)
+ [edsorted, _, maxl] = sortEdges(ednouv)
+ logging.debug(" longueur edge trouvée: %s", maxl)
+ edge = edsorted[-1]
+ else:
+ logging.info("problème partition recherche edge radiale %s", k)
+ vxs = geompy.ExtractShapes(partNappeFace, geompy.ShapeType["VERTEX"], False)
+ vxnouv=[]
+ for ii,vx in enumerate(vxs):
+ distx = geompy.MinDistance(vx, face)
+ distx += geompy.MinDistance(vx, nappes[k])
+ logging.debug("vertex distance: %s", distx)
+ if distx < 0.005:
+ vxnouv.append(vx)
+ logging.debug("nombre vertex candidats %s", len(vxnouv))
+ if len(vxnouv) >= 2:
+ eds = [geompy.MakeEdge(vxnouv[j],vxnouv[(j+1)%len(vxnouv)]) for j in range(len(vxnouv))]
+ [edsorted2, _, maxl] = sortEdges(eds)
+ edge = edsorted2[-1]
+ logging.debug("lg edge: %s", maxl)
+ else:
+ logging.debug("problème recherche edge radiale %s non résolu", k)