Geometry

Geometry class

The base class of all renderable geometric objects (like Mesh, NurbsSurface, Patch and etc.).

The Geometry base class supports: Control point management, control points defines the base 3D spatial structure of the geometry, different geometric types has different way to define concrete 3D models. Vertex element definition, vertex elements applies extra information like normals/uv coordinates/vertex colors to the geometry, see VertexElement for more details.Object deforming, Deformer can be bonded to animate geometry’s shape.

public class Geometry : Entity

Constructors

Name Description
Geometry(string) Initializes a new instance of the Geometry class.

Properties

Name Description
CastShadows { get; set; } Gets or sets whether this geometry can cast shadow
ControlPoints { get; } Gets all control points
Deformers { get; } Gets all deformers associated with this geometry.
Excluded { get; set; } Gets or sets whether to exclude this entity during exporting.
virtual Name { get; set; } Gets or sets the name.
ParentNode { get; set; } Gets or sets the first parent node, if set the first parent node, this entity will be detached from other parent nodes.
ParentNodes { get; } Gets all parent nodes, an entity can be attached to multiple parent nodes for geometry instancing
Properties { get; } Gets the collection of all properties.
ReceiveShadows { get; set; } Gets or sets whether this geometry can receive shadow.
Scene { get; } Gets the scene that this object belongs to
VertexElements { get; } Gets all vertex elements
Visible { get; set; } Gets or sets if the geometry is visible

Methods

Name Description
AddElement(VertexElement) Adds an existing vertex element to current geometry
CreateElement(VertexElementType) Creates a vertex element with specified type and add it to the geometry.
CreateElement(VertexElementType, MappingMode, ReferenceMode) Creates a vertex element with specified type and add it to the geometry.
CreateElementUV(TextureMapping) Creates a VertexElementUV with given texture mapping type.
CreateElementUV(TextureMapping, MappingMode, ReferenceMode) Creates a VertexElementUV with given texture mapping type.
FindProperty(string) Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name)
GetBoundingBox() Gets the bounding box of current entity in its object space coordinate system.
GetDeformers<T>()
GetElement(VertexElementType) Gets a vertex element with specified type
virtual GetEntityRendererKey() Gets the key of the entity renderer registered in the renderer
GetProperty(string) Get the value of specified property
GetVertexElementOfUV(TextureMapping) Gets a VertexElementUV instance with given texture mapping type
RemoveProperty(Property) Removes a dynamic property.
RemoveProperty(string) Remove the specified property identified by name
SetProperty(string, object) Sets the value of specified property

See Also