Vector2 / Vector4

Vector2, Vector4 — Aspose.3D TypeScript API Reference

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

Vector2 i Vector4 su tipovi vektora dvostruke preciznosti izvezeni iz @aspose/3d/utilities. Vector2 je standardni 2D tip koordinata za UV podatke. Vector4 je 4-komponentni homogenog tip koji se koristi za kontrolne točke mreže i nizove podataka elemenata vrha.

import { Vector2, Vector4 } from '@aspose/3d';

Dvo-komponentni vektor dvostruke preciznosti s x i y poljima.

export class Vector2

new Vector2(x: number = 0.0, y: number = 0.0)

xnumberčitanje/pisanjePrva (horizontalna) komponenta.
ynumberčitanje/pisanjeDruga (vertikalna) komponenta.
lengthnumberčitanjeEuklidska duljina: sqrt(x² + y²).
length2numberčitajKvadrirana duljina: x² + y². Jeftinije od length prilikom uspoređivanja udaljenosti.

set(x, y)

Postavlja obje komponente na mjestu.

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

getItem(key) / setItem(key, value)

Indeksni pristup; key mora biti 0 ili 1.

equals(other)

Usporedba jednakosti po komponentama.

equals(other: Vector2): boolean

Vector2.parse(input) (statički)

Parsiraj string odvojen razmacima "x y" u Vector2.

static parse(input: string): Vector2

toString()

"Vector2(x, y)".

import { Vector2 } from '@aspose/3d';

const uv = new Vector2(0.5, 0.25);
console.log(uv.x, uv.y);       // 0.5 0.25
console.log(uv.length);        // ~0.559

const uv2 = Vector2.parse('0.0 1.0');
console.log(uv2.equals(new Vector2(0.0, 1.0)));  // true

uv.set(1.0, 0.0);
console.log(uv.toString());    // Vector2(1, 0)

Vektor s četiri komponente dvostruke preciznosti, x, y, z, i w polja. Koristi se kao tip elementa za Mesh.controlPoints i nizove podataka vršnih elemenata.

export class Vector4

new Vector4()
new Vector4(x: number, y: number, z: number, w: number)
new Vector4(vec3: FVector3, w: number)
new Vector4(vec: FVector2, w: number)

Zadani konstruktor proizvodi (0, 0, 0, 1). Prilikom konstrukcije iz FVector3, xyz komponente se uzimaju iz vektora i w se prosljeđuje kao drugi argument.

xnumberčitanje/pisanjePrva komponenta.
ynumberčitanje/pisanjeDruga komponenta.
znumberčitanje/pisanjeTreća komponenta.
wnumberčitanje/pisanjeČetvrta (homogena) komponenta. Za podatke o položaju, w je 1.0.

set(x, y, z, w?)

Postavite sve komponente na svoje mjesto. w zadano je 1.0.

set(newX: number, newY: number, newZ: number, newW: number = 1.0): void

getItem(key) / setItem(key, value)

Pristup po indeksu; key mora biti 03.

equals(other)

Jednakost po komponentama.

toString()

"Vector4(x, y, z, w)".

import { Vector4 } from '@aspose/3d';

// Used as mesh control points
const v = new Vector4(1.0, 0.0, 0.0, 1.0);
console.log(v.w);    // 1.0

// Index access
console.log(v.getItem(0));   // 1.0
v.setItem(1, 2.0);
console.log(v.y);            // 2.0

Popunite kontrolne točke mreže:

import { Scene, Mesh, Vector4 } from '@aspose/3d';

const mesh = new Mesh();
mesh.controlPoints.push(new Vector4(0.0, 0.0, 0.0, 1.0));
mesh.controlPoints.push(new Vector4(1.0, 0.0, 0.0, 1.0));
mesh.controlPoints.push(new Vector4(0.5, 1.0, 0.0, 1.0));
mesh.createPolygon(0, 1, 2);

const scene = new Scene();
scene.rootNode.createChildNode('triangle', mesh);
scene.save('triangle.glb');

Vidi također

 Hrvatski