Vector3 — Aspose.3D FOSS for Java

Methods

Vector3 ir dubultas precizitātes 3-komponentu vektors ar x, y, un z komponentes. Tas tiek izmantots visur Aspose.3D pozīcijām, virzieniem, normālēm un mēroga vērtībām. Visi aritmētiskie operācijas atgriež jaunas Vector3 instancēs; oriģināls netiek mainīts.

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()Izveido nulles vektoru (0, 0, 0)
Vector3(double x, double y, double z)Izveido no trim komponentēm
Vector3(Vector3 other)Kopijas konstruktoru

Publiskie lauki

Vector3 izmanto publiskus laukus komponentu piekļuvei (nevis getter/setter metodes):

MethodsMethodsMethodsMethods
xdoublev.xX komponents
ydoublev.yY komponents
zdoublev.zZ komponents

Aprēķinātās īpašības

MethodsMethodsMethodsMethods
lengthdoublegetLength()Eiklīda garums (sqrt(x^2+y^2+z^2)), tikai lasāms
length2doublegetLength2()Kvadrātiskā garuma, tikai lasāms; lētāks nekā getLength() kad vajag tikai salīdzinājumu

Statiskie lauki

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

MethodsAtgriešanas tipsMethods
set(double x, double y, double z)voidIestata visus trīs komponentus uz vietas
dot(Vector3 rhs)doubleSkalarprodukts ar citu Vector3
cross(Vector3 rhs)Vector3Krustprodukts – atgriež vektoru, kas ir perpendikulārs abām operandiem
normalize()Vector3Atgriež vienības garuma kopiju; atgriež nulles vektoru, ja garums ir nulle
angleBetween(Vector3 dir)doubleLeņķis radiānos starp šo vektoru un dir
angleBetween(Vector3 dir, Vector3 up)doubleZīmogots leņķis radiānos, projicēts uz plakni, ko definē up
sin()Vector3Komponentu sinuss
cos()Vector3Komponentu kosinuss
compareTo(Vector3 other)intLeksikogrāfisks salīdzinājums: atgriež -1, 0 vai 1
Vector3.parse(String s)Vector3Statiska. Parsē "x y z" virknes pārstāvība

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

Skatīt arī

 Latviešu