Vector3 — Aspose.3D FOSS for Java

Methods

Vector3 ist ein doppelpräziser 3-Komponenten-Vektor mit x, y, und z Komponenten. Er wird in Aspose.3D überall für Positionen, Richtungen, Normalen und Skalierungswerte verwendet. Alle arithmetischen Operationen geben neue Vector3 Instanzen zurück; das Original wird nicht verändert.

import com.aspose.threed.*;

// Construct from components
Vector3 v = new Vector3(1.0, 2.0, 3.0);

// Copy constructor
Vector3 v2 = new Vector3(v);

// Default (zero vector)
Vector3 zero = new Vector3();

Methods

MethodsMethods
Vector3()Konstruiert den Nullvektor (0, 0, 0)
Vector3(double x, double y, double z)Konstruiert aus drei Komponenten
Vector3(Vector3 other)Copy-Konstruktor

Öffentliche Felder

Vector3 verwendet öffentliche Felder für den Zugriff auf Komponenten (keine Getter/Setter-Methoden):

MethodsMethodsMethodsMethods
xdoublev.xX-Komponente
ydoublev.yY‑Komponente
zdoublev.zZ‑Komponente

Berechnete Eigenschaften

MethodsMethodsMethodsMethods
lengthdoublegetLength()Euklidische Länge (sqrt(x^2+y^2+z^2)), schreibgeschützt
length2doublegetLength2()Quadratische Länge, schreibgeschützt; günstiger als getLength() wenn nur ein Vergleich benötigt wird

Statische Felder

MethodsMethodsMethods
ZEROVector3Vector3(0, 0, 0)
ONEVector3Vector3(1, 1, 1)
UNIT_XVector3Vector3(1, 0, 0)
UNIT_YVector3Vector3(0, 1, 0)
UNIT_ZVector3Vector3(0, 0, 1)

Methods

MethodsRückgabetypMethods
set(double x, double y, double z)voidSetzt alle drei Komponenten direkt
dot(Vector3 rhs)doubleSkalarprodukt mit einem anderen Vector3
cross(Vector3 rhs)Vector3Kreuzprodukt – gibt einen Vektor zurück, der zu beiden Operanden senkrecht ist
normalize()Vector3Gibt eine Kopie mit Einheitslänge zurück; gibt den Nullvektor zurück, wenn die Länge null ist
angleBetween(Vector3 dir)doubleWinkel in Radianten zwischen diesem Vektor und dir
angleBetween(Vector3 dir, Vector3 up)doubleVorzeichenbehafteter Winkel in Radianten, projiziert auf die Ebene, die definiert ist durch up
sin()Vector3Komponentenweise Sinus
cos()Vector3Komponentenweise Kosinus
compareTo(Vector3 other)intLexikographischer Vergleich: gibt -1, 0 oder 1 zurück
Vector3.parse(String s)Vector3Statisch. Parst "x y z" String-Darstellung

Methods

import com.aspose.threed.*;
import com.aspose.threed.Scene;

// Basic arithmetic
Vector3 a = new Vector3(1.0, 0.0, 0.0);
Vector3 b = new Vector3(0.0, 1.0, 0.0);

// Dot and cross products
double dot = a.dot(b);           // 0.0
Vector3 perp = a.cross(b);      // Vector3(0, 0, 1)

// Normalize
Vector3 direction = new Vector3(3.0, 4.0, 0.0);
Vector3 unit = direction.normalize();   // Vector3(0.6, 0.8, 0.0)
System.out.println(unit.getLength());    // 1.0

// Angle between vectors
double angle = a.angleBetween(b);
System.out.println(Math.toDegrees(angle));   // 90.0

// Use with a scene node transform
Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("box");
node.getTransform().setTranslation(new Vector3(10.0, 0.0, 0.0));

Siehe auch

 Deutsch