API-Referenz: PathMeasure
PathMeasure wird verwendet, um die Länge eines Pfads zu berechnen und die Position und Tangente an einer bestimmten Entfernung entlang des Pfads zu finden.
Überblick
Ein PathMeasure-Objekt wird mit einem Path initialisiert. Es durchläuft die Konturen des Pfads. Wenn der Pfad mehrere Konturen hat, können Sie mit nextContour() zur nächsten wechseln.
Konstruktoren
new PathMeasure(): Erstellt einen leerenPathMeasure.new PathMeasure(path): Initialisiert mit dem angegebenen Pfad.new PathMeasure(path, forceClosed): WennforceClosedtrue ist, wird der Pfad so behandelt, als wäre er geschlossen, auch wenn er es nicht ist.new PathMeasure(path, forceClosed, resScale):resScalesteuert die Genauigkeit der Messung (Standard ist 1.0).
Methoden
Zustandsverwaltung
setPath(path, forceClosed): Setzt das Maß mit einem neuen Pfad zurück.nextContour(): Wechselt zur nächsten Kontur im Pfad. Gibttruezurück, falls eine existiert.isClosed(): Gibttruezurück, wenn die aktuelle Kontur geschlossen ist.
Messungen
getLength(): Gibt die Gesamtlänge der aktuellen Kontur zurück.getPosition(distance): Gibt denPointan der angegebenen Entfernung entlang des Pfads zurück.getTangent(distance): Gibt die Tangente (alsPoint-Vektor) an der angegebenen Entfernung zurück.getRSXform(distance): Gibt dieRSXforman der angegebenen Entfernung zurück.getMatrix(distance, getPosition, getTangent): Gibt eineMatrix33zurück, die die Position und/oder Tangente an der Entfernung darstellt.
Extraktion
getSegment(startD, endD, dst, startWithMoveTo): Gibt das Segment des Pfads zwischenstartDundendDin den bereitgestelltenPathBuilderzurück.
Beispiel
java
Path path = Path.makeCircle(100, 100, 50);
PathMeasure measure = new PathMeasure(path);
float length = measure.getLength();
Point pos = measure.getPosition(length / 2); // Punkt auf halbem Weg abrufen
Point tan = measure.getTangent(length / 2); // Richtung an diesem Punkt abrufen