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...)
NameTypeAccessDescription
xnumberRead/WriteGets the x.
ynumberRead/WriteGets the y.
znumberRead/WriteGets the z.
lengthnumberReadGets the length.
length2numberReadGets the length2.
zeroVector3ReadGets the zero.
oneVector3ReadGets the one.
unitXVector3ReadGets the unit x.
unitYVector3ReadGets the unit y.
unitZVector3ReadGets the unit z.
SignatureDescription
constructor(x: number, y: number, z: number)Creates a new Vector3 using either a number or FVector3 for x and separate y, z
constructor(vec: FVector3)
constructor(v: number)
`constructor(x: numberFVector3, y: number, z: number)`
set(newX: number, newY: number, newZ: number)Assigns new x, y, z values to the vector
dot(rhs: Vector3)numberReturns the dot product of this vector with another Vector3
cross(rhs: Vector3)Vector3
normalize()Vector3Returns a unit-length vector in the same direction
angleBetween(dir: Vector3, up: Vector3)numberReturns the angle in radians between this vector and dir, using up as reference
sin()Vector3Returns a vector whose components are the sine of this vector’s components
cos()Vector3
compareTo(other: Vector3)numberReturns a numeric comparison of this vector with another vector
parse(input: string)Vector3Creates a Vector3 from a string representation
getItem(key: number)number
setItem(key: number, value: number)Sets the item value.
toString()string
equals(other: Vector3)booleanReturns true if this vector has the same components as another
minus(v: Vector3)Vector3Returns a new vector equal to this vector minus the given vector
times(scalar: number)Vector3Returns a new vector scaled by the given scalar

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

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

```typescript
cross(rhs: Vector3): Vector3

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.

```typescript
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)

equals(other: Vector3): boolean

compareTo(other)

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

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

```typescript
toString(): string
 Српски