

## Classes

| Class | Description |
| --- | --- |
| [A3DObject](../com.aspose.threed/a3dobject) | The base class of all Aspose.ThreeD objects, all sub classes will support dynamic properties. |
| [A3dwSaveOptions](../com.aspose.threed/a3dwsaveoptions) | Save options for A3DW format. |
| [AmfSaveOptions](../com.aspose.threed/amfsaveoptions) | Save options for AMF |
| [AnimationChannel](../com.aspose.threed/animationchannel) | A channel maps property's component field to a set of keyframe sequences |
| [AnimationClip](../com.aspose.threed/animationclip) | The Animation clip is a collection of animations. |
| [AnimationNode](../com.aspose.threed/animationnode) | Aspose.3D's supports animation hierarchy, each animation can be composed by several animations and animation's key-frame definition. |
| [ArbitraryProfile](../com.aspose.threed/arbitraryprofile) | This class allows you to construct a 2D profile directly from arbitrary curve. |
| [AssetInfo](../com.aspose.threed/assetinfo) | Information of asset. |
| [AxisSystem](../com.aspose.threed/axissystem) | Axis system is an combination of coordinate system, up vector and front vector. |
| [BindPoint](../com.aspose.threed/bindpoint) | A [BindPoint](../com.aspose.threed/bindpoint) is usually created on an object's property, some property types contains multiple component fields(like a Vector3 field), [BindPoint](../com.aspose.threed/bindpoint) will generate channel for each component field and connects the field to one or more keyframe sequence instance(s) through the channels. |
| [Bone](../com.aspose.threed/bone) | A bone defines the subset of the geometry's control point, and defined blend weight for each control point. |
| [BonePose](../com.aspose.threed/bonepose) | The [BonePose](../com.aspose.threed/bonepose) contains the transformation matrix for a bone node |
| [BoundingBox](../com.aspose.threed/boundingbox) | The axis-aligned bounding box **Example:** The following code shows how to get a bounding box from an Entity instance. |
| [BoundingBox2D](../com.aspose.threed/boundingbox2d) | The axis-aligned bounding box for [Vector2](../com.aspose.threed/vector2) |
| [Box](../com.aspose.threed/box) | Box. |
| [CShape](../com.aspose.threed/cshape) | IFC compatible C-shape profile that defined by parameters. |
| [Camera](../com.aspose.threed/camera) | The camera describes the eye point of the viewer looking at the scene. |
| [Cancellation](../com.aspose.threed/cancellation) | This class allows you to manually abort a load/save task. |
| [CenterLineProfile](../com.aspose.threed/centerlineprofile) | IFC compatible center line profile |
| [Circle](../com.aspose.threed/circle) | A [Circle](../com.aspose.threed/circle) curve consists of a set of points in the edge of the circle shape. |
| [CircleShape](../com.aspose.threed/circleshape) | IFC compatible circle profile, which can be used to construct a mesh through [LinearExtrusion](../com.aspose.threed/linearextrusion) |
| [ColladaSaveOptions](../com.aspose.threed/colladasaveoptions) | Save options for collada |
| [CompositeCurve](../com.aspose.threed/compositecurve) | A [CompositeCurve](../com.aspose.threed/compositecurve) is consisting of several curve segments. |
| [CompositeCurve.Segment](../com.aspose.threed/compositecurve.segment) | The curve segment |
| [CryptoUtils](../com.aspose.threed/cryptoutils) |  |
| [CubeFaceData<T>](../com.aspose.threed/cubefacedata) | Data for each face of the cube map texture. |
| [CullFaceMode](../com.aspose.threed/cullfacemode) | What face to cull |
| [Curve](../com.aspose.threed/curve) | The base class of all curve implementations. |
| [CustomObject](../com.aspose.threed/customobject) | Meta data or custom objects used in 3D files are managed by this class. |
| [Cylinder](../com.aspose.threed/cylinder) | Parameterized Cylinder. |
| [Deformer](../com.aspose.threed/deformer) | Base class for [SkinDeformer](../com.aspose.threed/skindeformer) and [MorphTargetDeformer](../com.aspose.threed/morphtargetdeformer) |
| [DescriptorSetUpdater](../com.aspose.threed/descriptorsetupdater) | This class allows to update the [IDescriptorSet](../com.aspose.threed/idescriptorset) in a chain operation. |
| [Discreet3dsLoadOptions](../com.aspose.threed/discreet3dsloadoptions) | Load options for 3DS file. |
| [Discreet3dsSaveOptions](../com.aspose.threed/discreet3dssaveoptions) | Save options for 3DS file. |
| [Dish](../com.aspose.threed/dish) | Parameterized dish. |
| [DracoFormat](../com.aspose.threed/dracoformat) | Google Draco format **Example:** The following code shows how to encode and decode a Mesh to/from byte array: |
| [DracoSaveOptions](../com.aspose.threed/dracosaveoptions) | Save options for Google draco files |
| [DriverException](../com.aspose.threed/driverexception) | The exception raised by internal rendering drivers. |
| [Ellipse](../com.aspose.threed/ellipse) | An [Ellipse](../com.aspose.threed/ellipse) defines a set of points that form the shape of ellipse. |
| [EllipseShape](../com.aspose.threed/ellipseshape) | IFC compatible ellipse shape that defined by parameters. |
| [EndPoint](../com.aspose.threed/endpoint) | The end point to trim the curve, can be a parameter value or a Cartesian point. |
| [Entity](../com.aspose.threed/entity) | The base class of all entities. |
| [EntityRenderer](../com.aspose.threed/entityrenderer) | Subclass this to implement rendering for different kind of entities. |
| [EntityRendererFeatures](../com.aspose.threed/entityrendererfeatures) | The extra features that the entity renderer will provide |
| [EntityRendererKey](../com.aspose.threed/entityrendererkey) | The key of registered entity renderer |
| [ExportException](../com.aspose.threed/exportexception) | Exceptions when Aspose.3D failed to export the scene to file |
| [Extrapolation](../com.aspose.threed/extrapolation) | Extrapolation defines how to do when sampled value is out of the range which defined by the first and last key-frames. |
| [FMatrix4](../com.aspose.threed/fmatrix4) | Matrix 4x4 with all component in float type |
| [FVector2](../com.aspose.threed/fvector2) | A float vector with two components. |
| [FVector3](../com.aspose.threed/fvector3) | A float vector with three components. |
| [FVector4](../com.aspose.threed/fvector4) | A float vector with four components. |
| [FbxLoadOptions](../com.aspose.threed/fbxloadoptions) | Load options for Fbx format. |
| [FbxSaveOptions](../com.aspose.threed/fbxsaveoptions) | Save options for Fbx file. |
| [FileFormat](../com.aspose.threed/fileformat) | File format definition |
| [FileFormatType](../com.aspose.threed/fileformattype) | File format type |
| [FileStream](../com.aspose.threed/filestream) | Created by lexchou on 6/16/2017. |
| [FileSystem](../com.aspose.threed/filesystem) | File system encapsulation. |
| [FontFile](../com.aspose.threed/fontfile) | Font file contains definitions for glyphs, this is used to create text profile. |
| [Frustum](../com.aspose.threed/frustum) | The base class of [Camera](../com.aspose.threed/camera) and [Light](../com.aspose.threed/light) |
| [GLSLSource](../com.aspose.threed/glslsource) | The source code of shaders in GLSL |
| [Geometry](../com.aspose.threed/geometry) | The base class of all renderable geometric objects (like [Mesh](../com.aspose.threed/mesh), [NurbsSurface](../com.aspose.threed/nurbssurface), [Patch](../com.aspose.threed/patch) and etc.). |
| [GlobalTransform](../com.aspose.threed/globaltransform) | Global transform is similar to [Transform](../com.aspose.threed/transform) but it's immutable while it represents the final evaluated transformation. |
| [GltfLoadOptions](../com.aspose.threed/gltfloadoptions) | Load options for glTF format |
| [GltfSaveOptions](../com.aspose.threed/gltfsaveoptions) | Save options for glTF format. |
| [HShape](../com.aspose.threed/hshape) | The [HShape](../com.aspose.threed/hshape) provides the defining parameters of an 'H' or 'I' shape. |
| [HollowCircleShape](../com.aspose.threed/hollowcircleshape) | IFC compatible hollow circle profile. |
| [HollowRectangleShape](../com.aspose.threed/hollowrectangleshape) | IFC compatible hollow rectangular shape with both inner/outer rounding corners. |
| [Html5SaveOptions](../com.aspose.threed/html5saveoptions) | Save options for HTML5 |
| [IOConfig](../com.aspose.threed/ioconfig) | IO config for serialization/deserialization. |
| [IOExtension](../com.aspose.threed/ioextension) | Utilities to write matrix/vector to binary writer |
| [ImageRenderOptions](../com.aspose.threed/imagerenderoptions) | Options for [Scene](../com.aspose.threed/scene) and [Scene](../com.aspose.threed/scene) |
| [ImportException](../com.aspose.threed/importexception) | Exception when Aspose.3D failed to open the specified source |
| [InitializationException](../com.aspose.threed/initializationexception) | Exceptions in render pipeline initialization |
| [Int2D](../com.aspose.threed/int2d) | Created by lexchou on 5/17/2017. 2-dimensional int array wrapper |
| [JavaXImageCodec](../com.aspose.threed/javaximagecodec) |  |
| [JtLoadOptions](../com.aspose.threed/jtloadoptions) | Load options for Siemens JT |
| [KeyFrame](../com.aspose.threed/keyframe) | A key frame is mainly defined by a time and a value, for some interpolation types, tangent/tension/bias/continuity is also used by calculating the final sampled value. |
| [KeyframeSequence](../com.aspose.threed/keyframesequence) | The sequence of key-frames, it describes the transformation of a sampled value over time. |
| [LShape](../com.aspose.threed/lshape) | IFC compatible L-shape profile that defined by parameters. |
| [LambertMaterial](../com.aspose.threed/lambertmaterial) | Material for lambert shading model |
| [License](../com.aspose.threed/license) | Provides methods to license the component. |
| [Light](../com.aspose.threed/light) | The light illuminates the scene. |
| [Line](../com.aspose.threed/line) | A polyline is a path defined by a set of points with [Geometry.\#getControlPoints](../com.aspose.threed/geometry\#getControlPoints), and connected by [Line.\#getSegments](../com.aspose.threed/line\#getSegments), which means it can also be a set of connected line segments. |
| [LinearExtrusion](../com.aspose.threed/linearextrusion) | Linear extrusion takes a 2D shape as input and extends the shape in the 3rd dimension. |
| [LoadOptions](../com.aspose.threed/loadoptions) | The base class to configure options in file loading for different types |
| [Material](../com.aspose.threed/material) | Material defines the parameters necessary for visual appearance of geometry. |
| [MathUtils](../com.aspose.threed/mathutils) | A set of useful mathematical utilities. |
| [Matrix4](../com.aspose.threed/matrix4) | 4x4 matrix implementation. |
| [MemoryStream](../com.aspose.threed/memorystream) | Created by lexchou on 6/13/2017. |
| [Mesh](../com.aspose.threed/mesh) | A mesh is made of many n-sided polygons. |
| [Metered](../com.aspose.threed/metered) | Provides methods to set metered key. |
| [Microsoft3MFFormat](../com.aspose.threed/microsoft3mfformat) | File format instance for Microsoft 3MF with 3MF related utilities. |
| [Microsoft3MFSaveOptions](../com.aspose.threed/microsoft3mfsaveoptions) | Save options for Microsoft 3MF file. |
| [MirroredProfile](../com.aspose.threed/mirroredprofile) | IFC compatible mirror profile. |
| [MorphTargetChannel](../com.aspose.threed/morphtargetchannel) | A MorphTargetChannel is used by [MorphTargetDeformer](../com.aspose.threed/morphtargetdeformer) to organize the target geometries. |
| [MorphTargetDeformer](../com.aspose.threed/morphtargetdeformer) | MorphTargetDeformer provides per-vertex animation. |
| [MulticastEvent<EventArg>](../com.aspose.threed/multicastevent) | Created by lexchou on 4/24/2017. |
| [Node](../com.aspose.threed/node) | Represents an element in the scene graph. |
| [NotImplementedException](../com.aspose.threed/notimplementedexception) | Created by lexchou on 6/26/2017. |
| [NurbsCurve](../com.aspose.threed/nurbscurve) | [NURBS curve][] is a curve represented by NURBS(Non-uniform rational basis spline), A NURBS curve is defined by its [NurbsCurve.\#getOrder](../com.aspose.threed/nurbscurve\#getOrder), a set of weighted [Geometry.\#getControlPoints](../com.aspose.threed/geometry\#getControlPoints) and a [NurbsCurve.\#getKnotVectors](../com.aspose.threed/nurbscurve\#getKnotVectors) The w component in control point is used as control point's weight, whatever it is a [CurveDimension.\#TWO\_DIMENSIONAL](../com.aspose.threed/curvedimension\#TWO-DIMENSIONAL) or [CurveDimension.\#THREE\_DIMENSIONAL](../com.aspose.threed/curvedimension\#THREE-DIMENSIONAL)[NURBS curve]: https://en.wikipedia.org/wiki/Non-uniform_rational_B-spline |
| [NurbsDirection](../com.aspose.threed/nurbsdirection) | A 3D [NurbsSurface](../com.aspose.threed/nurbssurface) has two direction, the [NurbsSurface.\#getU](../com.aspose.threed/nurbssurface\#getU) and [NurbsSurface.\#getV](../com.aspose.threed/nurbssurface\#getV), the [NurbsDirection](../com.aspose.threed/nurbsdirection) defines data for each direction. |
| [NurbsSurface](../com.aspose.threed/nurbssurface) | [NurbsSurface](../com.aspose.threed/nurbssurface) is a surface represented by [NURBS(Non-uniform rational basis spline)][NURBS_Non-uniform rational basis spline], A [NurbsSurface](../com.aspose.threed/nurbssurface) is defined by two [NurbsDirection](../com.aspose.threed/nurbsdirection)[NurbsSurface.\#getU](../com.aspose.threed/nurbssurface\#getU) and [NurbsSurface.\#getV](../com.aspose.threed/nurbssurface\#getV).[NURBS_Non-uniform rational basis spline]: https://en.wikipedia.org/wiki/Non-uniform_rational_B-spline |
| [ObjLoadOptions](../com.aspose.threed/objloadoptions) | Load options for wavefront obj |
| [ObjSaveOptions](../com.aspose.threed/objsaveoptions) | Save options for wavefront obj file |
| [ParameterizedProfile](../com.aspose.threed/parameterizedprofile) | The base class of all parameterized profiles. |
| [ParseException](../com.aspose.threed/parseexception) | Exception when Aspose.3D failed to parse the input. |
| [Patch](../com.aspose.threed/patch) | A [Patch](../com.aspose.threed/patch) is a parametric modeling surface, similar to [NurbsSurface](../com.aspose.threed/nurbssurface), it's also defined by two [PatchDirection](../com.aspose.threed/patchdirection), the [Patch.\#getU](../com.aspose.threed/patch\#getU) and [Patch.\#getV](../com.aspose.threed/patch\#getV). |
| [PatchDirection](../com.aspose.threed/patchdirection) | Patch's U and V direction. |
| [PbrMaterial](../com.aspose.threed/pbrmaterial) | Material for physically based rendering based on albedo color/metallic/roughness |
| [PbrSpecularMaterial](../com.aspose.threed/pbrspecularmaterial) | Material for physically based rendering based on diffuse color/specular/glossiness |
| [PdfFormat](../com.aspose.threed/pdfformat) | Adobe's Portable Document Format **Example:** The following code shows how to extract all supported 3D scenes from a 3D PDF file, and write them to obj format. |
| [PdfLoadOptions](../com.aspose.threed/pdfloadoptions) | Options for PDF loading |
| [PdfSaveOptions](../com.aspose.threed/pdfsaveoptions) | The save options in PDF exporting. |
| [PhongMaterial](../com.aspose.threed/phongmaterial) | Material for blinn-phong shading model. |
| [PixelMapping](../com.aspose.threed/pixelmapping) |  |
| [Plane](../com.aspose.threed/plane) | Parameterized plane. |
| [PlyFormat](../com.aspose.threed/plyformat) | The PLY format. |
| [PlyLoadOptions](../com.aspose.threed/plyloadoptions) | Load options for PLY files |
| [PlySaveOptions](../com.aspose.threed/plysaveoptions) | Save options for exporting scene as PLY file. |
| [PointCloud](../com.aspose.threed/pointcloud) | The point cloud contains no topology information but only the control points and the vertex elements. |
| [PolygonBuilder](../com.aspose.threed/polygonbuilder) | A helper class to build polygon for [Mesh](../com.aspose.threed/mesh) **Example:** |
| [PolygonModifier](../com.aspose.threed/polygonmodifier) | Utilities to modify polygons |
| [Pose](../com.aspose.threed/pose) | The pose is used to store transformation matrix when the geometry is skinned. |
| [PostProcessing](../com.aspose.threed/postprocessing) | The post-processing effects |
| [Primitive](../com.aspose.threed/primitive) | Base class for all primitives |
| [Profile](../com.aspose.threed/profile) | 2D Profile in xy plane |
| [Property](../com.aspose.threed/property) | Class to hold user-defined properties. |
| [PropertyCollection](../com.aspose.threed/propertycollection) | The collection of properties |
| [PushConstant](../com.aspose.threed/pushconstant) | A utility to provide data to shader through push constant. |
| [Pyramid](../com.aspose.threed/pyramid) | Parameterized pyramid. |
| [Quaternion](../com.aspose.threed/quaternion) | Quaternion is usually used to perform rotation in computer graphics. |
| [Rect](../com.aspose.threed/rect) | A class to represent the rectangle |
| [RectangleShape](../com.aspose.threed/rectangleshape) | IFC compatible rectangular shape with rounding corners. |
| [RectangularTorus](../com.aspose.threed/rectangulartorus) | Parameterized rectangular torus. |
| [RelativeRectangle](../com.aspose.threed/relativerectangle) | Relative rectangle The formula between relative component to absolute value is: Scale \* (Reference Width) + offset So if we want it to represent an absolute value, leave all scale fields zero, and use offset fields instead. |
| [RenderFactory](../com.aspose.threed/renderfactory) | RenderFactory creates all resources that represented in rendering pipeline. |
| [RenderParameters](../com.aspose.threed/renderparameters) | Describe the parameters of the render target |
| [RenderResource](../com.aspose.threed/renderresource) | The abstract class of all render resources All render resources will be disposed when the renderer is released. |
| [RenderState](../com.aspose.threed/renderstate) | Render state for building the pipeline The changes made on render state will not affect the created pipeline instances. |
| [Renderer](../com.aspose.threed/renderer) | The context about renderer. |
| [RendererException](../com.aspose.threed/rendererexception) |  |
| [RendererVariableManager](../com.aspose.threed/renderervariablemanager) | This class manages variables used in rendering |
| [RevolvedAreaSolid](../com.aspose.threed/revolvedareasolid) | This class represents a solid model by revolving a cross section provided by a profile about an axis. |
| [RvmFormat](../com.aspose.threed/rvmformat) | The RVM Format |
| [RvmLoadOptions](../com.aspose.threed/rvmloadoptions) | Load options for AVEVA Plant Design Management System's RVM file. |
| [RvmSaveOptions](../com.aspose.threed/rvmsaveoptions) | Save options for Aveva PDMS RVM file. |
| [SPIRVSource](../com.aspose.threed/spirvsource) | The compiled shader in SPIR-V format. |
| [SaveOptions](../com.aspose.threed/saveoptions) | The base class to configure options in file saving for different types |
| [Scene](../com.aspose.threed/scene) |  |
| [SceneObject](../com.aspose.threed/sceneobject) | The root class of objects that will be stored inside a scene. |
| [ShaderException](../com.aspose.threed/shaderexception) | Shader related exceptions |
| [ShaderMaterial](../com.aspose.threed/shadermaterial) | A shader material allows to describe the material by external rendering engine or shader language. |
| [ShaderProgram](../com.aspose.threed/shaderprogram) | The shader program |
| [ShaderSet](../com.aspose.threed/shaderset) | Shader programs for each kind of materials |
| [ShaderSource](../com.aspose.threed/shadersource) | The source code of shader |
| [ShaderStage](../com.aspose.threed/shaderstage) | Shader stage |
| [ShaderTechnique](../com.aspose.threed/shadertechnique) | A shader technique represents a concrete rendering implementation. |
| [ShaderVariable](../com.aspose.threed/shadervariable) | Shader variable |
| [Shape](../com.aspose.threed/shape) | The shape describes the deformation on a set of control points, which is similar to the cluster deformer in Maya. |
| [Skeleton](../com.aspose.threed/skeleton) | The [Skeleton](../com.aspose.threed/skeleton) is mainly used by CAD software to help designer to manipulate the transformation of skeletal structure, it's usually useless outside the CAD softwares. |
| [SkinDeformer](../com.aspose.threed/skindeformer) | A skin deformer contains multiple bones to work, each bone blends a part of the geometry by control point's weights. |
| [Sphere](../com.aspose.threed/sphere) | Parameterized sphere. |
| [StencilState](../com.aspose.threed/stencilstate) | Stencil states per face. |
| [StlLoadOptions](../com.aspose.threed/stlloadoptions) | Load options for STL |
| [StlSaveOptions](../com.aspose.threed/stlsaveoptions) | Save options for STL |
| [Stream](../com.aspose.threed/stream) | Created by lexchou on 12/14/2016. |
| [Structs](../com.aspose.threed/structs) | Base class of struct array |
| [SweptAreaSolid](../com.aspose.threed/sweptareasolid) | A [SweptAreaSolid](../com.aspose.threed/sweptareasolid) constructs a geometry by sweeping a profile along a directrix. |
| [TShape](../com.aspose.threed/tshape) | IFC compatible T-shape defined by parameters. |
| [Text](../com.aspose.threed/text) | Text profile, this profile describes contours using font and text. |
| [Texture](../com.aspose.threed/texture) | This class defines the texture from an external file. |
| [TextureBase](../com.aspose.threed/texturebase) | Base class for all concrete textures. |
| [TextureCodec](../com.aspose.threed/texturecodec) | Class to manage encoders and decoders for textures. |
| [TextureData](../com.aspose.threed/texturedata) | This class contains the raw data and format definition of a texture. |
| [TextureSlot](../com.aspose.threed/textureslot) | Texture slot in [Material](../com.aspose.threed/material), can be enumerated through material instance. |
| [Torus](../com.aspose.threed/torus) | Parameterized torus. |
| [Transform](../com.aspose.threed/transform) | A transform contains information that allow access to object's translate/scale/rotation or transform matrix at minimum cost This is used by local transform. |
| [TransformBuilder](../com.aspose.threed/transformbuilder) | The [TransformBuilder](../com.aspose.threed/transformbuilder) is used to build transform matrix by a chain of transformations. |
| [TransformedCurve](../com.aspose.threed/transformedcurve) | A [TransformedCurve](../com.aspose.threed/transformedcurve) gives a curve a placement by using a transformation matrix. |
| [TrapeziumShape](../com.aspose.threed/trapeziumshape) | IFC compatible Trapezium shape defined by parameters. |
| [TriMesh](../com.aspose.threed/trimesh) | A TriMesh contains raw data that can be used by GPU directly. |
| [TrialException](../com.aspose.threed/trialexception) | This is raised in Scene.Open/Scene.Save when no licenses are applied. |
| [TrimmedCurve](../com.aspose.threed/trimmedcurve) | A bounded curve that trimmed the basis curve at both ends. |
| [U3dLoadOptions](../com.aspose.threed/u3dloadoptions) | Load options for universal 3d |
| [U3dSaveOptions](../com.aspose.threed/u3dsaveoptions) | Save options for universal 3d |
| [UShape](../com.aspose.threed/ushape) | IFC compatible U-shape defined by parameters. |
| [UsdSaveOptions](../com.aspose.threed/usdsaveoptions) | Save options for USD/USDZ formats. |
| [Vector2](../com.aspose.threed/vector2) | A vector with two components. |
| [Vector3](../com.aspose.threed/vector3) | A vector with three components. |
| [Vector4](../com.aspose.threed/vector4) | A vector with four components. |
| [Version](../com.aspose.threed/version) | Created by lexchou on 4/17/2017. |
| [Vertex](../com.aspose.threed/vertex) | Vertex reference, used to access the raw vertex in [TriMesh](../com.aspose.threed/trimesh). |
| [VertexDeclaration](../com.aspose.threed/vertexdeclaration) | The declaration of a custom defined vertex's structure |
| [VertexElement](../com.aspose.threed/vertexelement) | Base class of vertex elements. |
| [VertexElementBinormal](../com.aspose.threed/vertexelementbinormal) | Defines the binormal vectors for specified components. |
| [VertexElementDoublesTemplate](../com.aspose.threed/vertexelementdoublestemplate) | A helper class for defining concrete [VertexElement](../com.aspose.threed/vertexelement) implementations. |
| [VertexElementEdgeCrease](../com.aspose.threed/vertexelementedgecrease) | Defines the edge crease for specified components |
| [VertexElementHole](../com.aspose.threed/vertexelementhole) | Defines if specified polygon is hole |
| [VertexElementIntsTemplate](../com.aspose.threed/vertexelementintstemplate) | A helper class for defining concrete [VertexElement](../com.aspose.threed/vertexelement) implementations. |
| [VertexElementMaterial](../com.aspose.threed/vertexelementmaterial) | Defines material index for specified components. |
| [VertexElementNormal](../com.aspose.threed/vertexelementnormal) | Defines normal vectors for specified components. |
| [VertexElementPolygonGroup](../com.aspose.threed/vertexelementpolygongroup) | Defines polygon group for specified components to group related polygons together. |
| [VertexElementSmoothingGroup](../com.aspose.threed/vertexelementsmoothinggroup) | A smoothing group is a group of polygons in a polygon mesh which should appear to form a smooth surface. |
| [VertexElementSpecular](../com.aspose.threed/vertexelementspecular) | Defines specular color for specified components. |
| [VertexElementTangent](../com.aspose.threed/vertexelementtangent) | Defines tangent vectors for specified components. |
| [VertexElementTemplate<T>](../com.aspose.threed/vertexelementtemplate) | A helper class for defining concrete [VertexElement](../com.aspose.threed/vertexelement) implementations. |
| [VertexElementUV](../com.aspose.threed/vertexelementuv) | Defines the UV coordinates for specified components. |
| [VertexElementUserData](../com.aspose.threed/vertexelementuserdata) | Defines custom user data for specified components. |
| [VertexElementVector4](../com.aspose.threed/vertexelementvector4) | A helper class for defining concrete [VertexElement](../com.aspose.threed/vertexelement) implementations. |
| [VertexElementVertexColor](../com.aspose.threed/vertexelementvertexcolor) | Defines the vertex color for specified components |
| [VertexElementVertexCrease](../com.aspose.threed/vertexelementvertexcrease) | Defines the vertex crease for specified components |
| [VertexElementVisibility](../com.aspose.threed/vertexelementvisibility) | Defines if specified components is visible |
| [VertexElementWeight](../com.aspose.threed/vertexelementweight) | Defines blend weight for specified components. |
| [VertexField](../com.aspose.threed/vertexfield) | Vertex's field memory layout description. |
| [VertexFieldDataType](../com.aspose.threed/vertexfielddatatype) | Vertex field's data type |
| [Viewport](../com.aspose.threed/viewport) | A [IRenderTarget](../com.aspose.threed/irendertarget) contains at least one viewport for rendering the scene. |
| [Watermark](../com.aspose.threed/watermark) | Utility to encode/decode blind watermark to/from a mesh. |
| [WeightedMode](../com.aspose.threed/weightedmode) | Weighted mode. |
| [WindowHandle](../com.aspose.threed/windowhandle) | Encapsulated window handle for different platforms. |
| [XLoadOptions](../com.aspose.threed/xloadoptions) | The Load options for DirectX X files. |
| [ZShape](../com.aspose.threed/zshape) | IFC compatible Z-shape profile defined by parameters. |

## Interfaces

| Interface | Description |
| --- | --- |
| [Enumerable<T>](../com.aspose.threed/enumerable) |  |
| [Enumerator<T>](../com.aspose.threed/enumerator) | Generic enumerator for collection of type T |
| [EventCallback<EventArg>](../com.aspose.threed/eventcallback) | Created by lexchou on 4/24/2017. |
| [FileSystemFactory](../com.aspose.threed/filesystemfactory) | [SaveOptions](../com.aspose.threed/saveoptions) and [LoadOptions](../com.aspose.threed/loadoptions) will create a com.aspose.threed.LocalFileSystem for default. |
| [IBuffer](../com.aspose.threed/ibuffer) | The base interface of all managed buffers used in rendering |
| [ICommandList](../com.aspose.threed/icommandlist) | Encodes a sequence of commands which will be sent to GPU to render. |
| [IDescriptorSet](../com.aspose.threed/idescriptorset) | The descriptor sets describes different resources that can be used to bind to the render pipeline like buffers, textures |
| [IIndexBuffer](../com.aspose.threed/iindexbuffer) | The index buffer describes the geometry used in rendering pipeline. |
| [IIndexedVertexElement](../com.aspose.threed/iindexedvertexelement) | VertexElement with indices data. |
| [IMeshConvertible](../com.aspose.threed/imeshconvertible) | Entities that implemented this interface can be converted to [Mesh](../com.aspose.threed/mesh) |
| [INamedObject](../com.aspose.threed/inamedobject) | Object that has a name |
| [IOrientable](../com.aspose.threed/iorientable) | Orientable entities shall implement this interface. |
| [IPipeline](../com.aspose.threed/ipipeline) | The pre-baked sequence of operations to draw in GPU side. |
| [IRenderQueue](../com.aspose.threed/irenderqueue) | Entity renderer uses this queue to manage render tasks. |
| [IRenderTarget](../com.aspose.threed/irendertarget) | The base interface of render target |
| [IRenderTexture](../com.aspose.threed/irendertexture) | The interface of render texture |
| [IRenderWindow](../com.aspose.threed/irenderwindow) | IRenderWindow represents the native window created by operating system that supports rendering. |
| [ITexture1D](../com.aspose.threed/itexture1d) | 1D texture |
| [ITexture2D](../com.aspose.threed/itexture2d) | 2D texture |
| [ITextureCodec](../com.aspose.threed/itexturecodec) | Codec for textures |
| [ITextureCubemap](../com.aspose.threed/itexturecubemap) | Cube map texture |
| [ITextureDecoder](../com.aspose.threed/itexturedecoder) | External texture decoder should implement this interface for decoding. |
| [ITextureEncoder](../com.aspose.threed/itextureencoder) | External texture encoder should implement this interface for encoding. |
| [ITextureUnit](../com.aspose.threed/itextureunit) | [ITextureUnit](../com.aspose.threed/itextureunit) represents a texture in the memory that shared between GPU and CPU and can be sampled by the shader, where the [Texture](../com.aspose.threed/texture) only represents a reference to an external file. |
| [IVertexBuffer](../com.aspose.threed/ivertexbuffer) | The vertex buffer holds the polygon vertex data that will be sent to rendering pipeline |
| [MaterialConverter](../com.aspose.threed/materialconverter) | Custom converter to convert the geometry's original material to GLTF's PBR material. |
| [NodeVisitor](../com.aspose.threed/nodevisitor) | A callback to travel through the whole node hierarchy. |
| [Struct<T>](../com.aspose.threed/struct) | Created by lexchou on 11/13/2017. |

## Enumerations

| Enum | Description |
| --- | --- |
| [AlphaSource](../com.aspose.threed/alphasource) | Defines whether the texture contains the alpha channel. |
| [ApertureMode](../com.aspose.threed/aperturemode) | Camera aperture modes. |
| [Axis](../com.aspose.threed/axis) | The coordinate axis. |
| [BlendFactor](../com.aspose.threed/blendfactor) | Blend factor specify pixel arithmetic. |
| [BoneLinkMode](../com.aspose.threed/bonelinkmode) | A bone's link mode refers to the way in which a bone is connected or linked to its parent bone within a hierarchical structure. |
| [BooleanOperation](../com.aspose.threed/booleanoperation) | Mesh's Boolean operation |
| [BoundingBoxExtent](../com.aspose.threed/boundingboxextent) | The extent of the bounding box |
| [ColladaTransformStyle](../com.aspose.threed/colladatransformstyle) | The node's transformation style of node |
| [CompareFunction](../com.aspose.threed/comparefunction) | The compare function used in depth/stencil testing. |
| [ComposeOrder](../com.aspose.threed/composeorder) | The order to compose transform matrix |
| [CoordinateSystem](../com.aspose.threed/coordinatesystem) | The left handed or right handed coordinate system. |
| [CubeFace](../com.aspose.threed/cubeface) | Each face of the cube map texture |
| [CurveDimension](../com.aspose.threed/curvedimension) | The dimension of the curves. |
| [DracoCompressionLevel](../com.aspose.threed/dracocompressionlevel) | Compression level for draco file |
| [DrawOperation](../com.aspose.threed/drawoperation) | The primitive types to render |
| [ExtrapolationType](../com.aspose.threed/extrapolationtype) | Extrapolation type. |
| [FileContentType](../com.aspose.threed/filecontenttype) | File content type |
| [FrontFace](../com.aspose.threed/frontface) | Define front- and back-facing polygons |
| [GltfEmbeddedImageFormat](../com.aspose.threed/gltfembeddedimageformat) | How glTF exporter will embed the textures during the exporting. |
| [IndexDataType](../com.aspose.threed/indexdatatype) | The data type of the elements in [IIndexBuffer](../com.aspose.threed/iindexbuffer) |
| [Interpolation](../com.aspose.threed/interpolation) | The key frame's interpolation type. |
| [LightType](../com.aspose.threed/lighttype) | Light types. |
| [MappingMode](../com.aspose.threed/mappingmode) | Determines how the element is mapped to a surface. |
| [NurbsType](../com.aspose.threed/nurbstype) | NURBS types. |
| [PatchDirectionType](../com.aspose.threed/patchdirectiontype) | Patch direction's types. |
| [PdfLightingScheme](../com.aspose.threed/pdflightingscheme) | LightingScheme specifies the lighting to apply to 3D artwork. |
| [PdfRenderMode](../com.aspose.threed/pdfrendermode) | Render mode specifies the style in which the 3D artwork is rendered. |
| [PixelFormat](../com.aspose.threed/pixelformat) | The pixel's format used in texture unit. |
| [PixelMapMode](../com.aspose.threed/pixelmapmode) |  |
| [PolygonMode](../com.aspose.threed/polygonmode) | The polygon rasterization mode |
| [PoseType](../com.aspose.threed/posetype) | Pose type. |
| [PresetShaders](../com.aspose.threed/presetshaders) | This defines the preset internal shaders used by the renderer. |
| [ProjectionType](../com.aspose.threed/projectiontype) | Camera's projection types. |
| [ReferenceMode](../com.aspose.threed/referencemode) | [ReferenceMode](../com.aspose.threed/referencemode) defines how mapping information is stored and referenced by. |
| [RenderQueueGroupId](../com.aspose.threed/renderqueuegroupid) | The group id of render queue |
| [RenderStage](../com.aspose.threed/renderstage) | The render stage |
| [RotationMode](../com.aspose.threed/rotationmode) | The frustum's rotation mode |
| [RotationOrder](../com.aspose.threed/rotationorder) | The order controls which rx ry rz are applied in the transformation matrix. |
| [SkeletonType](../com.aspose.threed/skeletontype) | [Skeleton](../com.aspose.threed/skeleton)'s types. |
| [SplitMeshPolicy](../com.aspose.threed/splitmeshpolicy) | Share vertex/control point data between sub-meshes or each sub-mesh has its own compacted data. |
| [StencilAction](../com.aspose.threed/stencilaction) | The stencil test actions |
| [StepMode](../com.aspose.threed/stepmode) | Interpolation step mode. |
| [TextureFilter](../com.aspose.threed/texturefilter) | Filter options during texture sampling. |
| [TextureMapping](../com.aspose.threed/texturemapping) | The texture mapping type for [VertexElementUV](../com.aspose.threed/vertexelementuv) Describes which kind of texture mapping is used. |
| [TextureType](../com.aspose.threed/texturetype) | The type of the [ITextureUnit](../com.aspose.threed/itextureunit) |
| [VertexElementType](../com.aspose.threed/vertexelementtype) | The type of the vertex element, defined how it will be used in modeling. |
| [VertexFieldSemantic](../com.aspose.threed/vertexfieldsemantic) | The semantic of the vertex field |
| [WrapMode](../com.aspose.threed/wrapmode) | Texture's wrap mode. |
