Inverse l'ordre des points, de sorte que la polyligne va dans l'autre sens.
La liste de points propre de la polyligne donnée est inversée sur place et renvoyée dans un nouvel objet polyligne. Exemple : [[0,0,0], [1,0,0], [2,0,0]] -> [[2,0,0], [1,0,0], [0,0,0]]
La polyligne
Une polyligne avec les points dans l'ordre inverse
Découpe la polyligne en objets ligne, un par segment, chacun avec un point de départ et un point d'arrivée.
Une polyligne fermée reçoit aussi le segment de son dernier point à son premier, sauf si les deux coïncident. Exemple : trois points -> deux lignes, ou trois quand elle est fermée
La polyligne
Une ligne par segment, dans l'ordre
Découpe la polyligne en segments, chacun une paire de points.
Une polyligne fermée reçoit aussi le segment de son dernier point à son premier, sauf si les deux coïncident. Moins de deux points ne donnent aucun segment. Exemple : quatre points, fermée -> quatre segments autour de la boucle
La polyligne
Une paire de points par segment, dans l'ordre
Construit un objet polyligne à partir de points, ouverte ou fermée.
Exemple : trois points avec isClosed vrai -> un triangle
Les points et si le dernier rejoint le premier
L'objet polyligne
Trouve le plus grand congé pour chaque coin de la polyligne, chacun limité à la moitié la plus proche de ses segments pour que les congés ne se chevauchent jamais.
Une polyligne fermée inclut les deux coins à ses extrémités. Moins de trois points donnent une liste vide.
La polyligne et la tolérance
Un rayon par coin, dans l'ordre des coins
Trouve un seul rayon de congé qui convient à chaque coin de la polyligne : le plus petit des maximums par coin selon la règle du demi-segment.
Moins de trois points, ou tout coin qui n'admet aucun congé, donnent 0.
La polyligne et la tolérance
Le rayon qui convient à chaque coin, en unités du modèle
Mesure la polyligne en additionnant les distances en ligne droite entre points voisins.
Le segment de fermeture d'une polyligne fermée n'est pas compté. Exemple : [[0,0,0], [3,0,0], [3,4,0]] -> 7
La polyligne
La longueur en unités du modèle
Compte les points de la polyligne.
Exemple : trois points -> 3
La polyligne
Le nombre de points
Lit la liste des points de la polyligne.
Exemple : { points: [[0,0,0], [1,0,0]] } -> [[0,0,0], [1,0,0]]
La polyligne
Ses points, dans l'ordre
Trouve les points où deux polylignes se croisent, en testant chaque segment de l'une contre chaque segment de l'autre.
Les croisements plus proches l'un de l'autre que la tolérance sont rapportés une seule fois. Exemple : deux polylignes formant un X -> le point au milieu
Les deux polylignes et la tolérance
Les points de croisement ; vide quand il n'y en a pas
Trouve les points où la polyligne se croise elle-même.
Les segments voisins ne sont pas testés l'un contre l'autre, et les croisements plus proches l'un de l'autre que la tolérance sont rapportés une seule fois. Exemple : un huit -> son unique point de croisement
La polyligne et la tolérance
Les points de croisement ; vide quand il n'y en a pas
Réunit des segments épars en polylignes en faisant correspondre les extrémités qui se rejoignent à la tolérance près.
Les segments qui se connectent bout à bout deviennent une polyligne par chaîne ; les segments qui ne touchent rien deviennent des polylignes à un seul segment. Exemple : dix segments dispersés formant deux chaînes -> deux polylignes
Les segments et la tolérance pour que deux extrémités soient considérées comme se touchant
Les polylignes que forment les segments
Applique une matrice de transformation, ou une liste de matrices dans l'ordre, à chaque point de la polyligne.
Exemple : une translation de [5,0,0] -> chaque point déplacé de 5 le long de X
La polyligne et la transformation
Une nouvelle polyligne avec les points transformés
Polylignes : chaînes de segments droits passant par une liste de points, tenues comme de simples objets de la forme
{ points, isClosed }. Une polyligne fermée relie son dernier point à son premier. Les méthodes ici mesurent une polyligne, la convertissent en segments ou en lignes, trouvent où des polylignes se croisent, trient des segments isolés en chaînes et dimensionnent des congés pour ses coins. Les longueurs sont en unités du modèle.