Class Vector3

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

Vector3 é o tipo matemático principal usado ao longo da @aspose/3d API para posições, direções, ângulos de Euler e fatores de escala. É exportado do @aspose/3d/utilities subcaminho.

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

Calcule o ponto médio entre duas posições e normalize um vetor de direção.

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)Construa a partir de três componentes numéricos.
new Vector3(v)Preencha os três componentes com o mesmo valor escalar.

ImageRenderOptions

ImageRenderOptionsImageRenderOptionsImageRenderOptions
xnumberO componente X. Legível e gravável.
ynumberO componente Y. Legível e gravável.
znumberO componente Z. Legível e gravável.
lengthnumber (somente leitura)Comprimento euclidiano: sqrt(x² + y² + z²).
length2number (somente leitura)Comprimento ao quadrado: x² + y² + z². Mais barato que length quando apenas comparando magnitudes.
zeroVector3 (somente leitura)Retorna um novo Vector3(0, 0, 0).
oneVector3 (somente leitura)Retorna um novo Vector3(1, 1, 1).
unitXVector3 (somente leitura)Retorna um novo Vector3(1, 0, 0).
unitYVector3 (somente leitura)Retorna um novo Vector3(0, 1, 0).
unitZVector3 (somente leitura)Retorna um novo Vector3(0, 0, 1).

ImageRenderOptions

set(x, y, z)

Altera o vetor no local, definindo os três componentes.

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

dot(rhs)

Retorna o produto escalar deste vetor e 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)

Retorna um novo Vector3 que é o produto vetorial deste vetor e 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()

Retorna um novo Vector3 com a mesma direção, mas com comprimento unitário. Retorna (0, 0, 0) se este vetor tem comprimento zero.

normalize(): Vector3

minus(v)

Retorna um novo Vector3 igual a this - v.

minus(v: Vector3): Vector3

times(scalar)

Retorna um novo Vector3 igual a this * scalar.

times(scalar: number): Vector3

angleBetween(dir, up?)

Retorna o ângulo em radianos entre este vetor e dir. Se up fornecido, o ângulo é calculado no plano perpendicular a up (ângulo assinado nesse plano).

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

sin()

Retorna um novo Vector3 com Math.sin aplicado componente a componente.

sin(): Vector3

cos()

Retorna um novo Vector3 com Math.cos aplicado por componente.

cos(): Vector3

equals(other)

ImageRenderOptions true se todos os três componentes forem estritamente iguais.

equals(other: Vector3): boolean

compareTo(other)

ImageRenderOptions -1, 0, ou 1 usando ordenação lexicográfica em (x, y, z).

compareTo(other: Vector3): number

static parse(input)

Analisa uma string separada por espaços contendo três números em um(a) Vector3. Lança uma exceção se o formato for inválido.

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

Retorna uma string no formato Vector3(x, y, z).

toString(): string
 Português