Class Vector3

الحزمة: @aspose/3d (v24.12.0)

Vector3 هو النوع الرياضي الأساسي المستخدم في جميع أنحاء @aspose/3d API للمواقع، الاتجاهات، زوايا أويلر، وعوامل القياس. يتم تصديره من الـ @aspose/3d/utilities المسار الفرعي.

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';

Properties

احسب نقطة المنتصف بين موقعين وطبّق التطبيع على متجه الاتجاه.

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

Properties

PropertiesProperties
new Vector3(x, y, z)إنشاء من ثلاثة مكونات رقمية.
new Vector3(v)ملء جميع المكونات الثلاثة بنفس القيمة العددية.

Properties

PropertiesPropertiesProperties
xnumberالمكوّن X. قابل للقراءة والكتابة.
ynumberالمكوّن Y. قابل للقراءة والكتابة.
znumberالمكوّن Z. قابل للقراءة والكتابة.
lengthnumber (للقراءة فقط)الطول الإقليدي: sqrt(x² + y² + z²).
length2number (للقراءة فقط)الطول المربّع: x² + y² + z². أرخص من length عند مقارنة القيم فقط.
zeroVector3 (للقراءة فقط)يرجع جديدًا Vector3(0, 0, 0).
oneVector3 (للقراءة فقط)يرجع جديدًا Vector3(1, 1, 1).
unitXVector3 (للقراءة فقط)يرجع جديدًا Vector3(1, 0, 0).
unitYVector3 (للقراءة فقط)يرجع جديدًا Vector3(0, 1, 0).
unitZVector3 (للقراءة فقط)يرجع جديدًا Vector3(0, 0, 1).

Properties

set(x, y, z)

يُغيّر المتجه في موضعه، مع ضبط جميع المكوّنات الثلاثة.

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

dot(rhs)

يرجع حاصل الضرب النقطي القياسي لهذا المتجه و rhs.

dot(rhs: Vector3): number

Properties

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): Vector3

Properties

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

minus(v)

يعيد كائنًا جديدًا Vector3 يساوي this - v.

minus(v: Vector3): Vector3

times(scalar)

يعيد كائنًا جديدًا Vector3 يساوي this * scalar.

times(scalar: number): Vector3

angleBetween(dir, up?)

يعيد الزاوية بالراديان بين هذا المتجه و dir. إذا up تم توفيره، تُحسب الزاوية في المستوى العمودي على up (زاوية موقعة في ذلك المستوى).

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

sin()

يرجع جديدًا Vector3 مع Math.sin مُطبق على كل مكوّن.

sin(): Vector3

cos()

يرجع جديدًا Vector3 مع Math.cos مُطبق على كل مكوّن.

cos(): Vector3

equals(other)

Properties true إذا كانت جميع المكوّنات الثلاثة متساوية تمامًا.

equals(other: Vector3): boolean

compareTo(other)

Properties -1, 0, أو 1 باستخدام الترتيب المعجمي على (x, y, z).

compareTo(other: Vector3): number

static parse(input)

يقوم بتحليل سلسلة مفصولة بمسافات تحتوي على ثلاثة أرقام إلى Vector3. يرمى استثناءً إذا كان التنسيق غير صالح.

static parse(input: string): Vector3

Properties

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
 العربية