Vector3 — Aspose.3D FOSS for Java

Enumerations

Vector3 egy dupla pontosságú, három komponensű vektor, amely x, y, és z komponens. A Aspose.3D-ben mindenhol pozíciók, irányok, normálok és méretezési értékek tárolására használják. Minden aritmetikai művelet új Vector3 példányt ad vissza; az eredeti nem módosul.

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();

Enumerations

EnumerationsEnumerations
Vector3()Létrehozza a nullvektort (0, 0, 0)
Vector3(double x, double y, double z)Létrehozza három komponensből
Vector3(Vector3 other)Másoló konstruktor

Publikus mezők

Vector3 használja publikus mezőket az összetevők eléréséhez (nem getter/setter metódusok):

EnumerationsEnumerationsEnumerationsEnumerations
xdoublev.xX komponens
ydoublev.yY komponens
zdoublev.zZ komponens

Számított tulajdonságok

EnumerationsEnumerationsEnumerationsEnumerations
lengthdoublegetLength()Euklideszi hossz (sqrt(x^2+y^2+z^2)), csak olvasható
length2doublegetLength2()Négyzetes hossz, csak olvasható; olcsóbb, mint getLength() ha csak összehasonlításra van szükség

Statikus mezők

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

Enumerations

EnumerationsVisszatérési típusEnumerations
set(double x, double y, double z)voidBeállítja mindhárom összetevőt a helyén
dot(Vector3 rhs)doubleSkáláris szorzat egy másikkal Vector3
cross(Vector3 rhs)Vector3Keresztszorzat – egy vektort ad vissza, amely mindkét operandusra merőleges
normalize()Vector3Visszaad egy egység hosszú másolatot; ha a hossz nulla, visszaad nullvektort
angleBetween(Vector3 dir)doubleSzög radiánban ennek a vektornak és dir
angleBetween(Vector3 dir, Vector3 up)doubleAláírt szög radiánban, a következő által meghatározott síkra vetítve up
sin()Vector3Komponensenkénti szinusz
cos()Vector3Komponensenkénti koszinusz
compareTo(Vector3 other)intLexikografikus összehasonlítás: -1, 0 vagy 1 értéket ad vissza
Vector3.parse(String s)Vector3Statikus. Feldolgozza "x y z" karakterlánc ábrázolás

Enumerations

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));

Lásd még

 Magyar