Class Vector3

Пакет: @aspose/3d (v24.12.0)

Vector3 является основным типом математики, используемым по всему @aspose/3d API для позиций, направлений, углов Эйлера и коэффициентов масштабирования. Он экспортируется из @aspose/3d/utilities подпуть.

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

ImageRenderOptions

Вычислите среднюю точку между двумя позициями и нормализуйте вектор направления.

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

ImageRenderOptions

ImageRenderOptionsImageRenderOptions
new Vector3(x, y, z)Создать из трёх числовых компонентов.
new Vector3(v)Заполнить все три компонента одинаковым скалярным значением.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
xnumberКомпонент X. Доступен для чтения и записи.
ynumberКомпонент Y. Доступен для чтения и записи.
znumberКомпонент Z. Доступен для чтения и записи.
lengthnumber (только для чтения)Евклидова длина: sqrt(x² + y² + z²).
length2number (только для чтения)Квадрат длины: x² + y² + z². Дешевле, чем length при сравнении только величин.
zeroVector3 (только для чтения)Возвращает новый Vector3(0, 0, 0).
oneVector3 (только для чтения)Возвращает новый Vector3(1, 1, 1).
unitXVector3 (только для чтения)Возвращает новый Vector3(1, 0, 0).
unitYVector3 (только для чтения)Возвращает новый Vector3(0, 1, 0).
unitZVector3 (только для чтения)Возвращает новый Vector3(0, 0, 1).

ImageRenderOptions

set(x, y, z)

Изменяет вектор на месте, задавая все три компонента.

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

dot(rhs)

Возвращает скалярное произведение этого вектора и rhs.

dot(rhs: Vector3): number

ImageRenderOptions

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)

Возвращает новый Vector3 который является векторным произведением этого вектора и rhs.

cross(rhs: Vector3): Vector3

ImageRenderOptions

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

Возвращает новый Vector3 с тем же направлением, но единичной длины. Возвращает (0, 0, 0) если у этого вектора нулевая длина.

normalize(): Vector3

minus(v)

Возвращает новый Vector3 равный this - v.

minus(v: Vector3): Vector3

times(scalar)

Возвращает новый Vector3 равный this * scalar.

times(scalar: number): Vector3

angleBetween(dir, up?)

Возвращает угол в радианах между этим вектором и dir. Если up указана, угол вычисляется в плоскости, перпендикулярной к up (знаковый угол в этой плоскости).

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

sin()

Возвращает новый Vector3 с Math.sin применяется по компонентам.

sin(): Vector3

cos()

Возвращает новый Vector3 с Math.cos применяется по компонентам.

cos(): Vector3

equals(other)

ImageRenderOptions true если все три компонента строго равны.

equals(other: Vector3): boolean

compareTo(other)

ImageRenderOptions -1, 0, или 1 используя лексикографический порядок по (x, y, z).

compareTo(other: Vector3): number

static parse(input)

Разбирает строку, разделённую пробелами, из трёх чисел, в Vector3. Выбрасывает исключение, если формат недействителен.

static parse(input: string): Vector3

ImageRenderOptions

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

Возвращает строку в виде Vector3(x, y, z).

toString(): string
 Русский