Class Vector3

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

Vector3 je primarni matematički tip koji se koristi u cijelom @aspose/3d API-ju za pozicije, smjerove, Eulerove uglove 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 dve pozicije i normalizujte vektor pravca.

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)Kreirajte od tri numerička komponenta.
new Vector3(v)Popunite sve tri komponente istom skalar vrijednošću.

xnumberX komponenta. Čitljiva i upisiva.
ynumberY komponenta. Čitljiva i upisiva.
znumberZ komponenta. Čitljiva i upisiva.
lengthnumber (samo za čitanje)Euklidska dužina: sqrt(x² + y² + z²).
length2number (samo za čitanje)Kvadratna dužina: x² + y² + z². Jeftinije od length kada se upoređ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)

Mutira vektor na mestu, postavljajući sve tri komponente.

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

dot(rhs)

Vraća skalarni proizvod 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 proizvod 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 smerom, ali jediničnom dužinom. Vraća (0, 0, 0) ako ovaj vektor ima nultu dužinu.

normalize(): Vector3

minus(v)

Vraća novi Vector3 jednak this - v.

minus(v: Vector3): Vector3

times(scalar)

Vraća novi Vector3 jednak this * scalar.

times(scalar: number): Vector3

angleBetween(dir, up?)

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

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

sin()

Vraća novi Vector3 sa Math.sin primenjen komponentno.

sin(): Vector3

cos()

Vraća novi Vector3 sa Math.cos primenjen komponentno.

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 poređivanje po (x, y, z).

compareTo(other: Vector3): number

static parse(input)

Parsira string odvojen belinama koji sadrži tri broja u Vector3. Baca izuzetak 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 string u obliku Vector3(x, y, z).

toString(): string
 Српски