Lägger till transformation till noden

TSR (Translation/Scaling/Rotation) används oftast i 3D-scenarier, vi tillhandahåller en klass Transform för att få åtkomst till dessa i Aspose.3D Affina transformationer inkluderar:

  • Translation
  • Scaling
  • Rotation
  • Shear mapping
  • Squeeze mapping

Rotera med Euler-vinklar

var aspose = aspose || {};

aspose.threed = require("aspose.threed");

// Initialisera scenobjekt
var scene = new aspose.threed.Scene();

// Initialisera cylinder
var cylinder =new aspose.threed.Cylinder(2, 2, 10, 20, 1, false);

// Skapa ChildNode
var Node=scene.getRootNode().createChildNode(cylinder);

// Euler-vinklar
Node.getTransform().setEulerAngles(new aspose.threed.Vector3(30, 40, 50));

// Ange translation
Node.getTransform().setTranslation(new aspose.threed.Vector3(0, 0, 20));

// Spara
scene.save("TransformationToNode.obj");

Anpassad Transformationsmatris

Vi kan också använda Matris direkt:

var aspose = aspose || {};

aspose.threed = require("aspose.threed");

// Initialisera scenobjekt
var scene = new aspose.threed.Scene();

// Initialisera cylinder
var cylinder =new aspose.threed.Cylinder(2, 2, 10, 20, 1, false);

// Skapa ChildNode
var Node=scene.getRootNode().createChildNode(cylinder);

// Ange anpassad translationmatris
Node.getTransform().setTransformMatrix(new aspose.threed.Matrix4(
    1, -0.3, 0, 0,
    0.4, 1, 0.3, 0,
    0, 0, 1, 0,
    0, 20, 0, 1
));

// Spara
scene.save("TransformationToNode.obj");