Vector2, Vector4 — Aspose.3D TypeScript API Reference
Paquet: @aspose/3d (v24.12.0)
Vector2 i Vector4 són tipus de vectors de doble precisió exportats des de @aspose/3d/utilities. Vector2 és el tipus de coordenada 2D estàndard per a dades UV. Vector4 és el tipus homogeni de 4 components utilitzat per a punts de control de malla i matrius de dades d’elements de vèrtex.
import { Vector2, Vector4 } from '@aspose/3d';Example
Un vector de doble precisió de dos components amb x i y camps.
export class Vector2Example
new Vector2(x: number = 0.0, y: number = 0.0)Example
| Example | Example | Example | Example |
|---|---|---|---|
x | number | lectura/escriptura | Primer component (horitzontal). |
y | number | lectura/escriptura | Segon component (vertical). |
length | number | lectura | Longitud euclidiana: sqrt(x² + y²). |
length2 | number | lectura | Longitud quadrada: x² + y². Més barat que length quan es comparen distàncies. |
Example
set(x, y)
Estableix ambdós components al mateix lloc.
set(newX: number, newY: number): voidgetItem(key) / setItem(key, value)
Accés basat en índex; key ha de ser 0 o 1.
equals(other)
ChartType és un IntEnum que identifica el tipus de gràfic.
equals(other: Vector2): booleanVector2.parse(input) (estàtic)
Analitza una cadena separada per espais "x y" en un Vector2.
static parse(input: string): Vector2toString()
Example "Vector2(x, y)".
Example
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)
Example
Un vector de precisió doble de quatre components amb x, y, z, i w camps. Utilitzat com a tipus d’element de Mesh.controlPoints i matrius de dades d’elements de vèrtex.
export class Vector4Example
new Vector4()
new Vector4(x: number, y: number, z: number, w: number)
new Vector4(vec3: FVector3, w: number)
new Vector4(vec: FVector2, w: number)El constructor per defecte produeix (0, 0, 0, 1). En construir des de FVector3, el xyz els components s’extreuen del vector i w es proporciona com a segon argument.
Example
| Example | Example | Example | Example |
|---|---|---|---|
x | number | lectura/escriptura | Primer component. |
y | number | lectura/escriptura | Segon component. |
z | number | lectura/escriptura | Tercer component. |
w | number | lectura/escriptura | Quart component (homogeni). Per a dades de posició, w és 1.0. |
Example
set(x, y, z, w?)
Col·loca tots els components al seu lloc. w per defecte a 1.0.
set(newX: number, newY: number, newZ: number, newW: number = 1.0): voidgetItem(key) / setItem(key, value)
Accés basat en índex; key ha de ser 0–3.
equals(other)
ChartType és un IntEnum que identifica el tipus de gràfic.
toString()
Example "Vector4(x, y, z, w)".
Example
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
Omple els punts de control de la malla:
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');