Class Vector3

Pachet: @aspose/3d (v24.12.0)

Vector3 este tipul matematic principal utilizat în tot @aspose/3d API pentru poziții, direcții, unghiuri Euler și factori de scară. Este exportat din @aspose/3d/utilities sub-calea.

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

Calculează punctul mijlociu dintre două poziții și normalizează un vector de direcție.

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)Construiește din trei componente numerice.
new Vector3(v)Completează toate cele trei componente cu aceeași valoare scalară.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
xnumberComponenta X. Citibilă și modificabilă.
ynumberComponenta Y. Citibilă și modificabilă.
znumberComponenta Z. Citibilă și modificabilă.
lengthnumber (doar citire)Lungime euclidiană: sqrt(x² + y² + z²).
length2number (doar citire)Lungime pătrată: x² + y² + z². Mai ieftin decât length când se compară doar magnitudinile.
zeroVector3 (doar citire)Returnează un nou Vector3(0, 0, 0).
oneVector3 (doar citire)Returnează un nou Vector3(1, 1, 1).
unitXVector3 (doar citire)Returnează un nou Vector3(1, 0, 0).
unitYVector3 (doar citire)Returnează un nou Vector3(0, 1, 0).
unitZVector3 (doar citire)Returnează un nou Vector3(0, 0, 1).

ImageRenderOptions

set(x, y, z)

Modifică vectorul la loc, setând toate cele trei componente.

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

dot(rhs)

Returnează produsul scalar al acestui vector și 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)

Returnează un nou Vector3 care este produsul vectorial al acestui vector și 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()

Returnează un nou Vector3 cu aceeași direcție, dar cu lungime unitate. Returnează (0, 0, 0) dacă acest vector are lungime zero.

normalize(): Vector3

minus(v)

Returnează un nou Vector3 egal cu this - v.

minus(v: Vector3): Vector3

times(scalar)

Returnează un nou Vector3 egal cu this * scalar.

times(scalar: number): Vector3

angleBetween(dir, up?)

Returnează unghiul în radiani dintre acest vector și dir. Dacă up este furnizat, unghiul este calculat în planul perpendicular pe up (unghi semnat în acel plan).

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

sin()

Returnează un nou Vector3 cu Math.sin aplicat pe fiecare componentă.

sin(): Vector3

cos()

Returnează un nou Vector3 cu Math.cos aplicat pe fiecare componentă.

cos(): Vector3

equals(other)

ImageRenderOptions true dacă toate cele trei componente sunt strict egale.

equals(other: Vector3): boolean

compareTo(other)

ImageRenderOptions -1, 0, sau 1 folosind ordonarea lexicografică pe (x, y, z).

compareTo(other: Vector3): number

static parse(input)

Parsează un șir de trei numere separate prin spații într-un Vector3. Aruncă dacă formatul este invalid.

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

Returnează un șir în forma Vector3(x, y, z).

toString(): string
 Română