Vector3 — Aspose.3D FOSS for Java

Example

Vector3 çift duyarlıklı 3 bileşenli bir vektördür x, y, ve z bileşenler. Aspose.3D içinde konumlar, yönler, normaller ve ölçek değerleri için yaygın olarak kullanılır. Tüm aritmetik işlemler yeni Vector3 örnekler döndürür; orijinali değiştirilmez.

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

Example

ExampleExample
Vector3()Sıfır vektörünü oluşturur (0, 0, 0)
Vector3(double x, double y, double z)Üç bileşenden oluşturur
Vector3(Vector3 other)Kopya yapıcı

Public Alanlar

Vector3 kullanır public alanlar bileşen erişimi için (getter/setter metodları değil):

ExampleExampleExampleExample
xdoublev.xX bileşeni
ydoublev.yY bileşeni
zdoublev.zZ bileşeni

Hesaplanmış Özellikler

ExampleExampleExampleExample
lengthdoublegetLength()Öklid uzunluğu (sqrt(x^2+y^2+z^2)), sadece okunur
length2doublegetLength2()Karesel uzunluk, sadece okunur; daha ucuz than getLength() sadece karşılaştırma gerektiğinde

Statik Alanlar

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

Example

ExampleDönüş TipiExample
set(double x, double y, double z)voidÜç bileşenin tümünü yerinde ayarlar
dot(Vector3 rhs)doubleBaşka bir vektörle nokta çarpımı Vector3
cross(Vector3 rhs)Vector3Çapraz çarpım – iki operanda dik bir vektör döndürür
normalize()Vector3Bir birim uzunlukta kopya döndürür; uzunluk sıfır ise sıfır vektör döndürür
angleBetween(Vector3 dir)doubleBu vektör ile arasındaki açı (radyan cinsinden) dir
angleBetween(Vector3 dir, Vector3 up)doubleTanımlanan düzleme yansıtılan işaretli açı (radyan cinsinden) up
sin()Vector3Bileşen bazlı sinüs
cos()Vector3Bileşen bazlı kosinüs
compareTo(Vector3 other)intSözlük sıralamasına göre karşılaştırma: -1, 0 veya 1 döndürür
Vector3.parse(String s)Vector3Statik. Ayrıştırır "x y z" dize temsili

Example

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

Ayrıca Bakınız

 Türkçe