Quaternion — Aspose.3D FOSS for Java

Enumerations

Quaternion एक इकाई क्वाटरनियन को दर्शाता है जिसका उपयोग घूर्णन के लिए किया जाता है। यह गिम्बल लॉक से बचाता है और अभिविन्यासों के बीच सुगम इंटरपोलेशन प्रदान करता है। यह Transform क्लास घूर्णन को एक के रूप में संग्रहीत करती है Quaternion के माध्यम से सुलभ getRotation() / setRotation().

Enumerations: com.aspose.threed

import com.aspose.threed.*;

Enumerations

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

सार्वजनिक फ़ील्ड्स

Quaternion का उपयोग करता है सार्वजनिक फ़ील्ड्स घटक पहुँच के लिए (गेटर/सेटर मेथड्स नहीं):

EnumerationsEnumerationsEnumerationsEnumerations
wdoubleq.wस्केलर (वास्तविक) भाग
xdoubleq.xवेक्टर भाग का X घटक
ydoubleq.yवेक्टर भाग का Y घटक
zdoubleq.zवेक्टर भाग का Z घटक

गणना किए गए गुण

EnumerationsEnumerationsEnumerationsEnumerations
lengthdoublegetLength()क्वाटरनियन का परिमाण (होना चाहिए 1.0 एक इकाई क्वाटरनियन के लिए)

स्थैतिक फ़ील्ड्स

EnumerationsEnumerationsEnumerations
IDENTITYQuaternionपहचान क्वाटरनियन (1, 0, 0, 0) – कोई घूर्णन नहीं

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

Enumerationsवापसी प्रकारEnumerations
Quaternion.fromEuler(double x, double y, double z)Quaternionडिग्री में यूलेर कोणों से क्वाटरनियन बनाता है
Quaternion.fromAngleAxis(double angle, Vector3 axis)Quaternionएक कोण (रेडियन) और घूर्णन अक्ष से क्वाटरनियन बनाता है

इंस्टेंस मेथड्स

Enumerationsवापसी प्रकारEnumerations
normalize()Quaternionइकाई-लंबाई की कॉपी लौटाता है
conjugate()Quaternionसंयुग्म (नकारात्मक वेक्टर भाग) लौटाता है
inverse()Quaternionगुणात्मक प्रतिलोम लौटाता है
toEulerAngles()Vector3डिग्री में यूलेर कोणों में परिवर्तित करता है
toMatrix()Matrix44x4 घूर्णन मैट्रिक्स में परिवर्तित करता है

Enumerations

import com.aspose.threed.Scene;
import com.aspose.threed.Node;
import com.aspose.threed.*;

Scene scene = new Scene();
Node node = scene.getRootNode().createChildNode("rotated");

// Create from Euler angles (degrees)
Quaternion q = Quaternion.fromEuler(0.0, 90.0, 0.0);
node.getTransform().setRotation(q);

// Read back as Euler
Vector3 euler = node.getTransform().getEulerAngles();
System.out.println(euler);   // approximately (0, 90, 0)

// Create from angle-axis
Quaternion q2 = Quaternion.fromAngleAxis(Math.toRadians(45), Vector3.UNIT_Y);
node.getTransform().setRotation(q2);

// Combine rotations via multiply
Quaternion start = Quaternion.IDENTITY;
Quaternion end = Quaternion.fromEuler(0.0, 180.0, 0.0);
Quaternion combined = Quaternion.multiply(start, end);

संबंधित देखें

 हिन्दी