Class Vector3
パッケージ: @aspose/3d (v24.12.0)
Vector3 は、API全体で使用される主要な数学型です @aspose/3d 位置、方向、オイラー角、スケール係数のAPIです。エクスポート元は @aspose/3d/utilities サブパスです。.
export class Vector3import { Vector3 } from '@aspose/3d/utilities';
// or via the main entry point when used with Transform/GlobalTransform
import { Scene } from '@aspose/3d';ImageRenderOptions
2 つの位置間の中点を計算し、方向ベクトルを正規化します。.
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
| ImageRenderOptions | ImageRenderOptions |
|---|---|
new Vector3(x, y, z) | 3つの数値コンポーネントから構築します。. |
new Vector3(v) | 3つのコンポーネントすべてを同じスカラー値で埋めます。. |
ImageRenderOptions
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
x | number | X コンポーネント。読み取り可能で書き込み可能です。. |
y | number | Y コンポーネント。読み取り可能で書き込み可能です。. |
z | number | Z コンポーネント。読み取り可能で書き込み可能です。. |
length | number (読み取り専用) | ユークリッド長さ: sqrt(x² + y² + z²). |
length2 | number (読み取り専用) | 二乗長さ: x² + y² + z². より安価 length 大きさだけを比較する場合。. |
zero | Vector3 (読み取り専用) | 新しいものを返す Vector3(0, 0, 0). |
one | Vector3 (読み取り専用) | 新しいものを返す Vector3(1, 1, 1). |
unitX | Vector3 (読み取り専用) | 新しいものを返します Vector3(1, 0, 0). |
unitY | Vector3 (読み取り専用) | 新しいものを返します Vector3(0, 1, 0). |
unitZ | Vector3 (読み取り専用) | 新しいものを返します Vector3(0, 0, 1). |
ImageRenderOptions
set(x, y, z)
ベクトルをその場で変更し、3 つの成分すべてを設定します。.
set(newX: number, newY: number, newZ: number): voiddot(rhs)
このベクトルと…のスカラー・ドット積を返します rhs.
dot(rhs: Vector3): numberImageRenderOptions
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)
新しいものを返します Vector3 これはこのベクトルと…の外積です rhs.
cross(rhs: Vector3): Vector3ImageRenderOptions
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()
新しいものを返します Vector3 同じ方向だが単位長さのベクトルです。返します (0, 0, 0) このベクトルの長さがゼロの場合。.
normalize(): Vector3minus(v)
新しいものを返します Vector3 等しい this - v.
minus(v: Vector3): Vector3times(scalar)
新しいものを返します Vector3 等しい this * scalar.
times(scalar: number): Vector3angleBetween(dir, up?)
このベクトルと…の間の角度(ラジアン)を返します dir.。もし up が提供される場合、角度は…に垂直な平面で計算されます up (その平面での符号付き角度)。.
angleBetween(dir: Vector3, up?: Vector3): numbersin()
新しいものを返します Vector3 を使用した Math.sin 要素ごとに適用されます。.
sin(): Vector3cos()
新しいものを返します Vector3 を使用して Math.cos コンポーネントごとに適用されます。.
cos(): Vector3equals(other)
ImageRenderOptions true 3 つのコンポーネントがすべて厳密に等しい場合。.
equals(other: Vector3): booleancompareTo(other)
ImageRenderOptions -1, 0,、または 1 辞書順で (x, y, z).
compareTo(other: Vector3): numberstatic parse(input)
空白で区切られた 3 つの数値の文字列を … に解析します Vector3.。形式が無効な場合は例外をスローします。.
static parse(input: string): Vector3ImageRenderOptions
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()
次の形式の文字列を返します Vector3(x, y, z).
toString(): string