GlobalTransform

GlobalTransform

Methods

GlobalTransform är en skrivskyddad ögonblicksbild av en Node’s world-space transformation. Den erhålls via node.global_transform och återspeglar sammansättningen av nodens egna Transform med varje förfaders transform upp till scenroten.

Alla egenskaper är skrivskyddade. För att ändra en nods position, ändra nodens lokala Transform istället.

Methods: aspose.threed

from aspose.threed import GlobalTransform

GlobalTransform instansieras normalt inte direkt; du får den från node.global_transform.

Methods

MethodsMethodsMethods
translationVector3World-space position för noden
scaleVector3World-space scale för noden
rotationQuaternionWorld-space rotation som en quaternion
euler_anglesVector3World-space rotation som Euler-vinklar i radianer (roll, pitch, yaw)
transform_matrixMatrix4Fullständig 4×4 world-space transform-matris

Methods

from aspose.threed import Scene
from aspose.threed.utilities import Vector3
import math

scene = Scene()

# Create a parent node at (10, 0, 0)
parent = scene.root_node.create_child_node("parent")
parent.transform.translation = Vector3(10.0, 0.0, 0.0)

# Create a child node at (5, 0, 0) relative to parent
child = parent.create_child_node("child")
child.transform.translation = Vector3(5.0, 0.0, 0.0)

# Read world-space position
gt = child.global_transform
print(gt.translation)          # Vector3(15.0, 0.0, 0.0)
print(gt.scale)                # Vector3(1.0, 1.0, 1.0)

# Access the 4x4 matrix directly
mat = gt.transform_matrix
print(mat.m03)   # 15.0 — world-space X translation

# Euler angles in degrees
angles = gt.euler_angles
print(math.degrees(angles.x))   # 0.0 (no rotation)

# Using evaluate_global_transform to include geometric offset
manual_mat = child.evaluate_global_transform(True)

Methods

  • GlobalTransform beräknas vid tidpunkten node.global_transform åtkoms; den är inte uppdateras dynamiskt om en föräldranods Transform senare ändringar.
  • Methods scale egenskapsnamn på GlobalTransform är scale (inte scaling). Den lokala Transform använder scaling för den skrivbara skalegenskapen.

Se även

 Svenska