Class Vector3

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

Vector3 je primarni matematički tip koji se koristi diljem @aspose/3d API-ja za položaje, smjerove, Eulerove kutove i faktore skaliranja. Izvozi se iz @aspose/3d/utilities poddirektorija.

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

Izračunajte sredinu između dvaju položaja i normalizirajte vektor smjera.

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

new Vector3(x, y, z)Kreiraj od tri numerička komponenta.
new Vector3(v)Ispuni sve tri komponente istom skalarnom vrijednošću.

xnumberX komponenta. Čitljiva i zapisiva.
ynumberY komponenta. Čitljiva i zapisiva.
znumberZ komponenta. Čitljiva i zapisiva.
lengthnumber (samo za čitanje)Euklidska duljina: sqrt(x² + y² + z²).
length2number (samo za čitanje)Kvadrirana duljina: x² + y² + z². Jeftiniji od length kada se uspoređuju samo veličine.
zeroVector3 (samo za čitanje)Vraća novi Vector3(0, 0, 0).
oneVector3 (samo za čitanje)Vraća novi Vector3(1, 1, 1).
unitXVector3 (samo za čitanje)Vraća novi Vector3(1, 0, 0).
unitYVector3 (samo za čitanje)Vraća novi Vector3(0, 1, 0).
unitZVector3 (samo za čitanje)Vraća novi Vector3(0, 0, 1).

set(x, y, z)

Mijenja vektor na mjestu, postavljajući sve tri komponente.

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

dot(rhs)

Vraća skalarni produkt ovog vektora i rhs.

dot(rhs: Vector3): number

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)

Vraća novi Vector3 koji je vektorski produkt ovog vektora i rhs.

cross(rhs: Vector3): Vector3

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

Vraća novi Vector3 sa istim smjerom, ali jediničnom duljinom. Vraća (0, 0, 0) ako ovaj vektor ima nultu duljinu.

normalize(): Vector3

minus(v)

Vraća novi Vector3 jednak this - v.

minus(v: Vector3): Vector3

times(scalar)

Vraća novi Vector3 jednako this * scalar.

times(scalar: number): Vector3

angleBetween(dir, up?)

Vraća kut u radijanima između ovog vektora i dir. Ako up je navedeno, kut se izračunava u ravnini okomitoj na up (potpisani kut u toj ravnini).

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

sin()

Vraća novi Vector3 s Math.sin primijenjeno po komponentama.

sin(): Vector3

cos()

Vraća novi Vector3 s Math.cos primijenjeno po komponentama.

cos(): Vector3

equals(other)

true ako su sve tri komponente strogo jednake.

equals(other: Vector3): boolean

compareTo(other)

-1, 0, ili 1 koristeći leksikografsko poredanje na (x, y, z).

compareTo(other: Vector3): number

static parse(input)

Parsira niz od tri broja odvojenih razmacima u Vector3. Baca iznimku ako je format neispravan.

static parse(input: string): Vector3

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

Vraća niz u obliku Vector3(x, y, z).

toString(): string
 Hrvatski