Verwandelt ein Segment, das Paar [start, end], in ein Linienobjekt.
Beispiel: [[0,0,0], [10,5,0]] -> { start: [0,0,0], end: [10,5,0] }
Das Segment
Die Linie
Verwandelt jedes Segment, ein Paar [start, end], in ein Linienobjekt.
Beispiel: drei Segmente -> drei Linien, in derselben Reihenfolge
Die Segmente
Eine Linie pro Segment
Erzeugt ein Linienobjekt aus einem Start- und einem Endpunkt.
Beispiel: Start [0,0,0], Ende [10,5,0] -> { start: [0,0,0], end: [10,5,0] }
Der Start- und der Endpunkt
Das Linienobjekt
Erzeugt ein Segment, die Punktepaar-Form einer Linie, aus einem Start- und einem Endpunkt.
Beispiel: Start [0,0,0], Ende [10,5,0] -> [[0,0,0], [10,5,0]]
Der Start- und der Endpunkt
Das Segment als [start, end]
Verbindet jeden Punkt mit dem nächsten durch eine Linie, sodass eine Liste von Punkten zu einer Kette von Linien wird.
Beispiel: [[0,0,0], [5,0,0], [5,5,0]] -> zwei Linien, [0,0,0] nach [5,0,0] und [5,0,0] nach [5,5,0]
Die Punkte, in Reihenfolge
Eine Linie pro Paar benachbarter Punkte
Paart jeden Startpunkt mit dem Endpunkt an derselben Position und verbindet sie durch eine Linie.
Ein Paar, dessen zwei Punkte zusammenfallen, ergibt keine Linie und wird weggelassen. Beispiel: Starts [[0,0,0], [5,0,0]] und Enden [[0,5,0], [5,5,0]] -> zwei Linien
Die Startpunkte und die Endpunkte, in passender Reihenfolge
Eine Linie pro Paar, Paare mit Länge 0 werden übersprungen
Ermittelt den Punkt bei einem Anteil des Wegs entlang einer Linie: 0 ergibt den Anfang, 1 das Ende, 0.5 die Mitte.
Ein Anteil außerhalb von 0 bis 1 setzt über die Enden hinaus fort. Beispiel: { start: [0,0,0], end: [10,0,0] } bei 0.5 -> [5,0,0]
Die Linie und der Anteil entlang der Linie
Der Punkt auf der Linie
Ermittelt den Punkt, an dem sich zwei Linien kreuzen.
Mit checkSegmentsOnly an muss die Kreuzung innerhalb beider Segmente liegen; aus, verlängern sich die Linien
ohne Ende. Parallele Linien, Linien, die aneinander vorbeilaufen, ohne sich zu treffen, und Segmente,
die einander nicht erreichen, ergeben undefined. Die Toleranz sagt, wie nah als Treffen gilt.
Beispiel: [0,0,0] nach [10,0,0] und [5,-5,0] nach [5,5,0] -> [5,0,0]
Die beiden Linien, ob innerhalb der Segmente geblieben wird, und die Toleranz
Der Schnittpunkt oder undefined, wenn es keinen gibt
Wendet eine Transformationsmatrix, oder eine Liste davon der Reihe nach, auf beide Enden einer Linie an.
Beispiel: { start: [0,0,0], end: [10,0,0] } verschoben um [5,5,0] -> { start: [5,5,0], end: [15,5,0] }
Die Linie und die Transformation
Eine neue Linie mit den transformierten Enden
Wendet auf jede Linie eine andere Transformation an: die erste Transformation auf die erste Linie, und so weiter.
Beispiel: drei Linien mit drei Verschiebungen -> jede Linie um ihre eigene Verschiebung bewegt
Die Linien und eine Transformation pro Linie
Die transformierten Linien, in derselben Reihenfolge
Gerade Linien zwischen zwei Punkten, gehalten als einfache Objekte der Form
{ start, end }, und die Segmentform[start, end]derselben Sache. Die Methoden hier bauen Linien, messen und transformieren sie, wandeln zwischen den beiden Formen um, platzieren Punkte entlang ihnen und finden, wo sich zwei Linien kreuzen. Längen sind in Modelleinheiten.