Browse our Products

Aspose.3D for .NET 22.6 Release Notes

Improvements and Changes

KeySummaryCategory
THREEDNET-1152Allow save 3D scene without specify the file formatNew Feature
THREEDNET-1157SdfValueBlock is not supported in USDZ importImprovement
THREEDNET-1156GLF Exception: Failed to import glTF, byteOffset is not defined in accessorBug fix
THREEDNET-1154Aspose.ThreeD.ExportException: Spec duplicated while DAE to USDZ conversionBug fix
THREEDNET-1153Exception occurs while saving USDZ to GLTFBug fix

API changes

Added new method to class Aspose.ThreeD.FileFormat

    /**
     * Gets the preferred file format from the file extension name
     * The extension name should starts with a dot('.').
     * @param extensionName 
     */
    public static FileFormat getFormatByExtension(String extensionName)

You can get a FileFormat instance by extension name, example code:

var scene = new Scene(new Box());
var format = FileFormat.getFormatByExtension(".fbx");
//save the scene to memory stream using FileFormat returned by GetFormatByExtension
var stream = new ByteArrayOutputStream();
scene.save(Stream.wrap(stream), format);

Added new method to class Aspose.ThreeD.Scene

        /// <summary>
        /// Saves the scene to specified path using specified file format.
        /// </summary>
        /// <param name="fileName">File name.</param>
        public void Save(string fileName)

The new method allows you to save the scene to a 3D file without providing a file format.

Example code:

var scene = Scene.FromFile("Input.fbx");
scene.Save("Output.usdz);

Added new methods to class Aspose.ThreeD.Transform

        public Transform SetGeometricTranslation(double x, double y, double z)
        public Transform SetGeometricScaling(double sx, double sy, double sz)
        public Transform SetGeometricRotation(double rx, double ry, double rz)
        public Transform SetTranslation(double tx, double ty, double tz)
        public Transform SetScale(double sx, double sy, double sz)
        public Transform SetEulerAngles(double rx, double ry, double rz)
        public Transform SetRotation(double rw, double rx, double ry, double rz)
        public Transform SetPreRotation(double rx, double ry, double rz)
        public Transform SetPostRotation(double rx, double ry, double rz)

These helper methods are provided for Java/Python bindings, you can also use them to provide chain-style transformation, example code:

        var scene = new Scene();
        var node = scene.RootNode.CreateChildNode(new Box());
        node.Transform
                .SetTranslation(10, 0, 0)
                .SetScale(20, 1, 1)
        ;


 
 English