X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FTools%2FblocFissure%2Fgmu%2ForderEdgesFromWire.py;h=888eb2163ace36444b7e4ddbf2d5a95130aabb40;hb=74fc9ad2b8e86d41d44e1abf824a086456591e92;hp=0a092e26cd12f1e8fbff417cf6b8e752d55d4c89;hpb=072a73120b6db7bba2389aa7ada0cde20e22ee57;p=modules%2Fsmesh.git diff --git a/src/Tools/blocFissure/gmu/orderEdgesFromWire.py b/src/Tools/blocFissure/gmu/orderEdgesFromWire.py index 0a092e26c..888eb2163 100644 --- a/src/Tools/blocFissure/gmu/orderEdgesFromWire.py +++ b/src/Tools/blocFissure/gmu/orderEdgesFromWire.py @@ -1,14 +1,14 @@ # -*- coding: utf-8 -*- import logging -from geomsmesh import geompy +from .geomsmesh import geompy # ----------------------------------------------------------------------------- # --- trouver les vertices intermediaires d'un wire def orderEdgesFromWire(aWire): """ - fournit les edges ordonnées d'un wire selon ExtractShapes(,,False), + fournit les edges ordonnees d'un wire selon ExtractShapes(,,False), et l'ordre des edges selon le sens de parcours (ordre des indices de la liste d'edges) """ logging.info("start") @@ -29,44 +29,44 @@ def orderEdgesFromWire(aWire): idverts[(i,1)] = verts[0] idsubs = {} - for kv, sub in idverts.iteritems(): + for kv, sub in idverts.items(): subid = geompy.GetSubShapeID(aWire, sub) - if subid in idsubs.keys(): + if subid in list(idsubs.keys()): idsubs[subid].append(kv) else: idsubs[subid] = [kv] debut = -1 fin = -1 - for k, kvs in idsubs.iteritems(): - if len(kvs) == 1: # une extremité + for k, kvs in idsubs.items(): + if len(kvs) == 1: # une extremite kv = kvs[0] if kv[1] == 0: debut = kv[0] else: fin = kv[0] - logging.debug("nombre d'edges: %s, indice edge début: %s, fin: %s",len(edges), debut, fin) + logging.debug("nombre d'edges: %s, indice edge debut: %s, fin: %s",len(edges), debut, fin) if debut < 0: - logging.critical("les edges du wire ne sont pas orientées dans le même sens: pas de début trouvé") - return edges, range(len(edges)) + logging.critical("les edges du wire ne sont pas orientees dans le meme sens: pas de debut trouve") + return edges, list(range(len(edges))) orderedList = [debut] while len(orderedList) < len(edges): bout = orderedList[-1] vertex = idverts[(bout,1)] - for k, v in idverts.iteritems(): + for k, v in idverts.items(): if k[0] not in orderedList: if geompy.MinDistance(vertex, v) < 1.e-4: if k[1] == 0: orderedList.append(k[0]) break else: - logging.critical("les edges du wire ne sont pas orientées dans le même sens: une edge à l'envers") - return edges, range(len(edges)) + logging.critical("les edges du wire ne sont pas orientees dans le meme sens: une edge a l'envers") + return edges, list(range(len(edges))) - logging.debug("liste des edges ordonnées selon le sens de parcours: %s", orderedList) - accessList = range(len(orderedList)) + logging.debug("liste des edges ordonnees selon le sens de parcours: %s", orderedList) + accessList = list(range(len(orderedList))) for i,k in enumerate(orderedList): accessList[k] = i - logging.info("position ordonnée des edges selon le sens de parcours: %s", accessList) + logging.info("position ordonnee des edges selon le sens de parcours: %s", accessList) return edges, accessList