Class Vector3

Gói: @aspose/3d (v24.12.0)

Vector3 là kiểu toán học chính được sử dụng xuyên suốt @aspose/3d API cho vị trí, hướng, góc Euler và hệ số tỉ lệ. Nó được xuất ra từ @aspose/3d/utilities đường dẫn phụ.

export class Vector3
import { Vector3 } from '@aspose/3d/utilities';
// or via the main entry point when used with Transform/GlobalTransform
import { Scene } from '@aspose/3d';

Enumerations

Tính điểm trung bình giữa hai vị trí và chuẩn hoá một vector hướng.

import { Vector3 } from '@aspose/3d/utilities';

const a = new Vector3(1, 0, 0);
const b = new Vector3(0, 0, 4);

// Midpoint: average the components manually
const mid = new Vector3(
  (a.x + b.x) * 0.5,
  (a.y + b.y) * 0.5,
  (a.z + b.z) * 0.5
);
console.log(`Midpoint: ${mid}`);
// Midpoint: Vector3(0.5, 0, 2)

// Normalized direction from a to b
const dir = b.minus(a).normalize();
console.log(`Direction: ${dir}`);
// Direction: Vector3(-0.2425..., 0, 0.9701...)

Enumerations

EnumerationsEnumerations
new Vector3(x, y, z)Khởi tạo từ ba thành phần số.
new Vector3(v)Điền cả ba thành phần bằng cùng một giá trị vô hướng.

Enumerations

EnumerationsEnumerationsEnumerations
xnumberThành phần X. Có thể đọc và ghi.
ynumberThành phần Y. Có thể đọc và ghi.
znumberThành phần Z. Có thể đọc và ghi.
lengthnumber (chỉ đọc)Độ dài Euclid: sqrt(x² + y² + z²).
length2number (chỉ đọc)Độ dài bình phương: x² + y² + z². Rẻ hơn so với length khi chỉ so sánh độ lớn.
zeroVector3 (chỉ đọc)Trả về một đối tượng mới Vector3(0, 0, 0).
oneVector3 (chỉ đọc)Trả về một đối tượng mới Vector3(1, 1, 1).
unitXVector3 (chỉ đọc)Trả về một đối tượng mới Vector3(1, 0, 0).
unitYVector3 (chỉ đọc)Trả về một đối tượng mới Vector3(0, 1, 0).
unitZVector3 (chỉ đọc)Trả về một đối tượng mới Vector3(0, 0, 1).

Enumerations

set(x, y, z)

Thay đổi vector tại chỗ, thiết lập cả ba thành phần.

set(newX: number, newY: number, newZ: number): void

dot(rhs)

Trả về tích vô hướng của vector này và rhs.

dot(rhs: Vector3): number

Enumerations

import { Vector3 } from '@aspose/3d/utilities';

const up = new Vector3(0, 1, 0);
const dir = new Vector3(0.5, 0.5, 0).normalize();
const alignment = up.dot(dir);
console.log(`Dot: ${alignment.toFixed(4)}`); // Dot: 0.7071

cross(rhs)

Trả về một đối tượng mới Vector3 là tích có hướng của vector này và rhs.

cross(rhs: Vector3): Vector3

Enumerations

import { Vector3 } from '@aspose/3d/utilities';

const right = new Vector3(1, 0, 0);
const up = new Vector3(0, 1, 0);
const forward = right.cross(up);
console.log(`Forward: ${forward}`);
// Forward: Vector3(0, 0, -1)

normalize()

Trả về một đối tượng mới Vector3 có cùng hướng nhưng độ dài đơn vị. Trả về (0, 0, 0) nếu vector này có độ dài bằng 0.

normalize(): Vector3

minus(v)

Trả về một đối tượng mới Vector3 bằng this - v.

minus(v: Vector3): Vector3

times(scalar)

Trả về một đối tượng mới Vector3 bằng this * scalar.

times(scalar: number): Vector3

angleBetween(dir, up?)

Trả về góc tính bằng radian giữa vectơ này và dir. Nếu up được cung cấp, góc được tính trong mặt phẳng vuông góc với up (góc có dấu trong mặt phẳng đó).

angleBetween(dir: Vector3, up?: Vector3): number

sin()

Trả về một đối tượng mới Vector3 với Math.sin được áp dụng từng thành phần.

sin(): Vector3

cos()

Trả về một đối tượng mới Vector3 với Math.cos được áp dụng từng thành phần.

cos(): Vector3

equals(other)

Enumerations true nếu ba thành phần đều hoàn toàn bằng nhau.

equals(other: Vector3): boolean

compareTo(other)

Enumerations -1, 0, hoặc 1 sử dụng thứ tự từ điển trên (x, y, z).

compareTo(other: Vector3): number

static parse(input)

Phân tích một chuỗi ba số cách nhau bằng khoảng trắng thành một Vector3. Ném ngoại lệ nếu định dạng không hợp lệ.

static parse(input: string): Vector3

Enumerations

import { Vector3 } from '@aspose/3d/utilities';

const v = Vector3.parse('1.5 2.0 -3.0');
console.log(`${v}`); // Vector3(1.5, 2, -3)

toString()

Trả về một chuỗi ở dạng Vector3(x, y, z).

toString(): string
 Tiếng Việt