Aspose.3D FOSS for .NET

API reference for Aspose.3D.Converter 1.0.0 (.NET 10.0+, MIT license).

All classes reside in the Aspose.ThreeD root namespace. The root using directive is:

using Aspose.ThreeD;

C# naming convention: All properties use standard C# property syntax. For example, use scene.RootNode instead of scene.getRootNode(), and transform.Translation = ... instead of transform.setTranslation(...). Vector3, Vector4, Quaternion, Matrix4, and FVector types use public fields (v.X, v.Y, v.Z) for component access.


Core Scene Graph

ClassDescription
SceneTop-level container for all 3D scene data. Holds the root node, asset metadata, and animation clips. Exposes Open() and Save() as the primary I/O entry points.
NodeA named node in the scene hierarchy. Owns a list of child nodes and a list of attached Entity objects such as meshes, cameras, and lights. Carries a local Transform.
EntityAbstract base class for all objects that can be attached to a Node. Provides name and identity but no geometry of its own.
SceneObjectBase class shared by Node and Entity. Provides the property collection interface used for user-defined metadata.
A3DObjectRoot base class for all Aspose.3D managed objects. Exposes the Name property and the Properties collection.
INamedObjectInterface that guarantees a Name property. Implemented by Node, Entity, and several format-specific descriptor types.

Geometry and Mesh

ClassDescription
MeshPolygon mesh entity. Stores control points (vertex positions as Vector4), polygon face lists (lists of control-point indices), and vertex element layers (normals, UVs, vertex colours).
GeometryAbstract base for mesh-like geometry types. Defines the control-point array and the collection of VertexElement layers. Mesh inherits from Geometry.
VertexElementAbstract base for a data layer attached to geometry (normals, UVs, colours, etc.). Carries MappingMode, ReferenceMode, and a data list.
VertexElementNormalStores one normal vector per vertex or per polygon corner, depending on mapping mode.
VertexElementUVStores texture-coordinate pairs (Vector2) per vertex or per polygon corner.
VertexElementVertexColorStores per-vertex or per-corner RGBA colour data as Vector4.

Built-In Primitives

ClassDescription
BoxParametric axis-aligned box with configurable width, height, and depth. Can be attached to a Node directly or converted to Mesh via ToMesh().
SphereParametric sphere with configurable radius. Supports ToMesh() conversion.
CylinderParametric cylinder with configurable top radius, bottom radius, and height. Supports ToMesh() conversion.

Transform and Spatial

ClassDescription
TransformLocal transformation attached to a Node. Provides Translation (FVector3), Rotation (Quaternion), Scale (FVector3), and Matrix (Matrix4) properties.
GlobalTransformRead-only view of a node’s world-space transformation matrix after composing all ancestor transforms. Accessed via node.GlobalTransform. Exposes a single Matrix property.
AssetInfoMetadata block attached to a Scene. Inherits from A3DObject providing Name and Properties. No additional properties are defined in this edition.

Materials and Shading

ClassDescription
MaterialAbstract base class for all material types. Provides a name and a property collection.
LambertMaterialClassic diffuse-only material with Ambient, Diffuse, Emissive, Reflective, Transparency, and Texture properties. Namespace: Aspose.ThreeD.Shading.
PhongMaterialExtends Lambert with Specular, Shininess, and SpecularPower properties. Namespace: Aspose.ThreeD.Shading.
PbrMaterialPhysically Based Rendering material with BaseColor, Metallic, Roughness, Occlusion, and texture slot properties. Namespace: Aspose.ThreeD.Shading.

Camera

ClassDescription
CameraCamera entity. Inherits from Frustum. Attached to a Node to define viewpoint transforms. No format-specific properties are exposed in this edition.

Math Utilities

ClassDescription
Vector2Single-precision 2-component vector (X, Y). Used for UV texture coordinates.
Vector3Single-precision 3-component vector (X, Y, Z). General-purpose spatial vector.
Vector4Single-precision 4-component vector (X, Y, Z, W). Used for control points and normal data.
FVector3Single-precision 3-component float vector. Used by Transform.Translation and Transform.Scale.
FVector4Single-precision 4-component float vector.
QuaternionUnit quaternion for representing rotations (W, X, Y, Z). Used by Transform.Rotation.
Matrix44x4 transformation matrix. Used for world/local transform computations and by GlobalTransform.Matrix.
BoundingBoxAxis-aligned bounding box defined by Minimum and Maximum FVector3 corners.

Animation

ClassDescription
AnimationClipNamed container for an animation range. A Scene may hold multiple clips. Declaration stub — keyframe data and playback are not yet implemented.

Format I/O

SymbolDescription
Scene.Open(path)Opens a file, detects the format from the extension, and populates the scene.
Scene.Open(path, options)Opens a file with format-specific LoadOptions.
Scene.Open(stream)Opens from a stream, auto-detecting the format from content.
Scene.Open(stream, options)Opens from a stream with format-specific LoadOptions.
Scene.Save(path)Saves the scene to a file; format inferred from extension.
Scene.Save(path, options)Saves with format-specific SaveOptions.
Scene.Save(stream, options)Saves to a stream with format-specific SaveOptions.
FileFormatRegistry of supported file formats. Contains entries such as FileFormat.WavefrontOBJ, FileFormat.GLTF2, FileFormat.FBX7400ASCII.
IOServiceInternal I/O abstraction. Provides DetectFormat() for stream-based format detection.
LoadOptionsBase class for format-specific load options.
SaveOptionsBase class for format-specific save options.

OBJ Format

ClassDescription
ObjLoadOptionsLoad options for Wavefront OBJ files.
ObjSaveOptionsSave options for Wavefront OBJ output.

STL Format

ClassDescription
StlLoadOptionsLoad options for STL files.
StlSaveOptionsSave options for STL output.

glTF Format

ClassDescription
GltfLoadOptionsLoad options for glTF 2.0 and GLB files.
GltfSaveOptionsSave options for glTF 2.0 and GLB output. No format-specific properties are exposed in this edition; use .glb extension for binary output.

FBX Format

ClassDescription
FbxLoadOptionsLoad options for FBX files.
FbxSaveOptionsSave options for FBX output. Use IsAscii to toggle ASCII/binary mode.

3MF Format

ClassDescription
TmfLoadOptionsLoad options for 3MF files.
TmfSaveOptionsSave options for 3MF output.

Enumerations

EnumerationDescription
FileContentTypeContent type descriptor: ASCII, Binary. Available as a property on FileFormat.
AxisIdentifies a coordinate axis: XAxis, YAxis, ZAxis.
CoordinateSystemSpecifies handedness convention: RightHand or LeftHand.

Properties System

ClassDescription
PropertyA single named typed property on an A3DObject.
PropertyCollectionIterable collection of Property objects attached to an A3DObject.

See Also