Class Quaternion

Class Quaternion

पैकेज: @aspose/3d (v24.12.0)

Quaternion पूरे में उपयोग किया जाता है @aspose/3d API में गिम्बल लॉक के बिना घूर्णन को दर्शाने के लिए। Transform.rotation और GlobalTransform.rotation. पहचान क्वाटरनियन (1, 0, 0, 0) कोई घूर्णन नहीं दर्शाता है।. Quaternion से निर्यात किया जाता है @aspose/3d/utilities उप-पथ से।.

export class Quaternion
import { Quaternion } from '@aspose/3d/utilities';

ColladaSaveOptions

एक नोड को Y अक्ष के चारों ओर 90° घुमाएँ और फिर स्मूथली इंटरपोलेट करके पहचान (identity) पर वापस लाएँ।.

import { Scene } from '@aspose/3d';
import { Quaternion } from '@aspose/3d/utilities';

const scene = new Scene();
const node = scene.rootNode.createChildNode('spinner');

// 90° around Y
const q90 = Quaternion.fromEulerAngle(0, Math.PI / 2, 0);
node.transform.rotation = q90;

// Slerp halfway back to identity
const identity = Quaternion.IDENTITY;
const half = Quaternion.slerp(0.5, q90, identity);
console.log(`Half rotation W: ${half.w.toFixed(4)}`);
// Half rotation W: 0.9239

ColladaSaveOptions

ColladaSaveOptionsColladaSaveOptions
new Quaternion()पहचान क्वाटरनियन बनाता है (1, 0, 0, 0).
new Quaternion(w, x, y, z)स्पष्ट घटकों से क्वाटरनियन बनाता है।.

ColladaSaveOptions

ColladaSaveOptionsColladaSaveOptionsColladaSaveOptions
wnumberस्केलर (वास्तविक) घटक। एक इकाई घूर्णन क्वाटरनियन के लिए, w = cos(θ/2).
xnumberवेक्टर भाग का X घटक।.
ynumberवेक्टर भाग का Y घटक।.
znumberवेक्टर भाग का Z घटक।.
lengthnumber (केवल-रीड)परिमाण: sqrt(w² + x² + y² + z²). वैध घूर्णन क्वाटरनियन के लिए 1.0 होना चाहिए।.

स्थैतिक गुण

ColladaSaveOptionsColladaSaveOptionsColladaSaveOptions
Quaternion.IDENTITYQuaternionएक नया पहचान क्वाटरनियन लौटाता है (1, 0, 0, 0).

स्थैतिक मेथड्स

Quaternion.fromEulerAngle(pitch, yaw, roll)

रैडियन में ऑयलर एंगल्स से एक क्वाटरनियन बनाता है।.

static fromEulerAngle(pitch: number, yaw: number, roll: number): Quaternion
static fromEulerAngle(vec: Vector3): Quaternion

ColladaSaveOptions

pitch number — X अक्ष के चारों ओर रैडियन में घूर्णन।.

yaw number — Y अक्ष के चारों ओर रैडियन में घूर्णन।.

roll number — Z अक्ष के चारों ओर रैडियन में घूर्णन।.

— वैकल्पिक रूप से, एकल पास करें Vector3 — जिसका x, y, z — पिच, यॉ और रोल को रखता है।.

ColladaSaveOptions

import { Quaternion } from '@aspose/3d/utilities';

const q = Quaternion.fromEulerAngle(0, Math.PI / 4, 0); // 45° around Y
console.log(`W: ${q.w.toFixed(4)}`); // W: 0.9239

Quaternion.fromAngleAxis(angle, axis)

— एक क्वाटरनियन बनाता है जो … का घूर्णन दर्शाता है angle — … के चारों ओर रैडियन axis.

static fromAngleAxis(angle: number, axis: Vector3): Quaternion

ColladaSaveOptions

angle number — रैडियन में घूर्णन कोण।.

axis Vector3 — घूर्णन की धुरी। इसे सामान्यीकृत करने की आवश्यकता नहीं है।.

ColladaSaveOptions

import { Quaternion, Vector3 } from '@aspose/3d/utilities';

const axis = new Vector3(0, 1, 0);
const q = Quaternion.fromAngleAxis(Math.PI / 2, axis);
console.log(`Rotating 90° around Y — W: ${q.w.toFixed(4)}`);
// Rotating 90° around Y — W: 0.7071

Quaternion.fromRotation(orig, dest)

— सबसे छोटे चाप वाला क्वाटरनियन बनाता है जो दिशा वेक्टर को घुमाता है orig — तक dest.

static fromRotation(orig: Vector3, dest: Vector3): Quaternion

Quaternion.slerp(t, v1, v2)

— दो बिंदुओं के बीच गोलाकार रैखिक इंटरपोलेशन करता है v1 — और v2 — पैरामीटर पर t (0.0 = v1, 1.0 = v2).

static slerp(t: number, v1: Quaternion, v2: Quaternion): Quaternion

ColladaSaveOptions

import { Quaternion } from '@aspose/3d/utilities';

const start = Quaternion.fromEulerAngle(0, 0, 0);
const end = Quaternion.fromEulerAngle(0, Math.PI, 0);
const mid = Quaternion.slerp(0.5, start, end);
console.log(`Mid W: ${mid.w.toFixed(4)}`); // Mid W: 0.7071

Quaternion.interpolate(t, fromQ, toQ)

के लिए उपनाम slerp. गोलाकार रैखिक अंतःस्थापन करता है।.

static interpolate(t: number, fromQ: Quaternion, toQ: Quaternion): Quaternion

Instance Methods

normalize()

एक नया क्वाटरनियन लौटाता है जो इकाई लंबाई तक स्केल किया गया है।.

normalize(): Quaternion

conjugate()

संयुग्मित लौटाता है (w, -x, -y, -z).

conjugate(): Quaternion

inverse()

इनवर्स क्वाटरनियन लौटाता है। यदि क्वाटरनियन की लंबाई शून्य है तो त्रुटि फेंकता है।.

inverse(): Quaternion

dot(q)

क्वाटरनियन के साथ स्केलर डॉट प्रोडक्ट लौटाता है q.

dot(q: Quaternion): number

concat(rhs)

क्वाटरनियन गुणनफल लौटाता है this * rhs, पहले लागू करने के संयुक्त घूर्णन को दर्शाते हुए this और फिर rhs.

concat(rhs: Quaternion): Quaternion

eulerAngles()

रैडियन में यूलेर कोणों के रूप में व्यक्त घूर्णन को एक Vector3(pitch, yaw, roll).

eulerAngles(): Vector3

ColladaSaveOptions

import { Quaternion } from '@aspose/3d/utilities';

const q = Quaternion.fromEulerAngle(0, Math.PI / 3, 0);
const euler = q.eulerAngles();
console.log(`Yaw: ${euler.y.toFixed(4)}`);
// Yaw: 1.0472  (= π/3)

toMatrix()

इस क्वाटरनियन को समतुल्य में परिवर्तित करता है Matrix4 घूर्णन मैट्रिक्स।.

toMatrix(): Matrix4

equals(other)

ColladaSaveOptions true यदि सभी चार घटक सख्ती से समान हों।.

equals(other: Quaternion): boolean

toString()

रूप में एक स्ट्रिंग लौटाता है Quaternion(w, x, y, z).

toString(): string
 हिन्दी