Bonjour à tous,
J'ai récupéré les coordonnées des nœuds du maillage suivant sur Abaqus (surface avec maillage affinée)
Après les avoir stockés dans une liste, j'aimerais pouvoir les trier afin de les manipuler aisément. Attention: petite subtilité, il faudrait que ça soit trié selon 2 critères d'importance équivalente (ici, x et y) afin d'obtenir un tri qui a du sens par rapport à l'image ci-dessus.
Voici un exemple basique de ce j'obtiens:
Voici ce que j'aimerais obtenir:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 coord = [ [1,0,2],[5,9,4],[4,1,5], [6,3,9],[10,4,12],[8,2,9], [0,9,1],[3,1,3],[7,10,8] ]
Représenté comme des matrices pour visualiser plus facilement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 coord = [ [8,2,9],[10,4,12],[7,10,8], [4,1,5],[9,3,9],[5,9,4], [1,0,2],[3,1,3],[0,9,1] ]
Méthode de tri souhaité: Y croissant de gauche vers droite / X croissant de bas en haut (afin d'être cohérent par rapport aux référentiel de l'image)
Là où c'est compliqué pour moi, c'est quand il y a des croisements, ex dans la matrice souhaitée: A(1,1)=[8,2,9] et B(3,2)=[3,1,3] -> on remarque que By < Ay. Pourtant le tri est correct car fidèle aux coordonnées de la surface (voir image)
Autre ex: A(1,1)=[8,2,9] et C(2,2)=[9,3,9] -> on remarque que Cx > Ax. Pourtant le tri est correct car fidèle aux coordonnées de la surface (voir image)
Voilà, j'espère avoir été claire, n'hésitez à me demander des détails.
Sachez que j'ai déjà posé cette question ici: https://www.developpez.net/forums/d2.../#post11678559
Malheureusement, ça n'a pas abouti et on m'a suggéré de poster mon message dans ce forum. Mais n'hésitez pas à y faire un tour pour comprendre le problème plus en détails (j'y ai apporté des précisions)
J'attends vos réponses avec impatience,
Bonne soirée.
Partager