Bexel Manager API Documentation
Bexel.Api.Geometry Class Reference

More...

Inheritance diagram for Bexel.Api.Geometry:
Bexel.Api.ApiObject IEquatable Bexel.Api.IGeometry Bexel.Api.InstancedGeometry

Public Member Functions

Vector3D GetVertex (int index)
 Retrieves the vertex at the specified index. More...
 
Triangle3D GetTriangle (int index)
 Retrieves the triangle at the specified index. More...
 
Segment3D GetEdge (int index)
 Retrieves the edge at the specified index. More...
 
IEnumerable< Vector3DGetAllVertices ()
 Retrieves all vertices. More...
 
IEnumerable< Triangle3DGetAllTriangles ()
 Retrieves all triangles. More...
 
IEnumerable< Segment3DGetAllEdges ()
 Retrieves all edges. More...
 
AABB3D GetBoundingBox ()
 Returns an axis aligned bounding box (AABB) of the geometry. More...
 
OBB3D GetOrientedBoundingBox ()
 Calculates and returns an object oriented bounding box (OBB) of the geometry. More...
 
bool Equals (Geometry other)
 
override bool Equals (object obj)
 
override int GetHashCode ()
 

Static Public Member Functions

static bool operator== (Geometry left, Geometry right)
 
static bool operator!= (Geometry left, Geometry right)
 

Properties

override bool IsValid [get]
 
int VertexCount [get]
 
int TriangleCount [get]
 
int EdgeCount [get]
 
- Properties inherited from Bexel.Api.ApiObject
abstract bool IsValid [get]
 Indicates if the API object is valid or not. More...
 
- Properties inherited from Bexel.Api.IGeometry
int VertexCount [get]
 Returns the number of vertices associated with the geometry. More...
 
int TriangleCount [get]
 Returns the number of triangles associated with the geometry. More...
 
int EdgeCount [get]
 Returns the number of edges associated with this geometry. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Bexel.Api.ApiObject
virtual void CheckValidity ()
 

Detailed Description

Member Function Documentation

◆ GetAllEdges()

IEnumerable<Segment3D> Bexel.Api.Geometry.GetAllEdges ( )

Retrieves all edges.

Returns
Enumerable of all edges.

Implements Bexel.Api.IGeometry.

◆ GetAllTriangles()

IEnumerable<Triangle3D> Bexel.Api.Geometry.GetAllTriangles ( )

Retrieves all triangles.

Returns
Enumerable of all triangles.

Implements Bexel.Api.IGeometry.

◆ GetAllVertices()

IEnumerable<Vector3D> Bexel.Api.Geometry.GetAllVertices ( )

Retrieves all vertices.

Returns
Enumerable of all vertices.

Implements Bexel.Api.IGeometry.

◆ GetBoundingBox()

AABB3D Bexel.Api.Geometry.GetBoundingBox ( )

Returns an axis aligned bounding box (AABB) of the geometry.

Returns
AABB if it can be computed, else null.

Implements Bexel.Api.IGeometry.

◆ GetEdge()

Segment3D Bexel.Api.Geometry.GetEdge ( int  index)

Retrieves the edge at the specified index.

Parameters
indexIndex of the edge. Must be in range [0, EdgeCount).
Returns
Edge at the specified index.
Exceptions
Bexel.Api.InvalidApiArgumentExceptionThrown if specified index is out of range.

Implements Bexel.Api.IGeometry.

◆ GetOrientedBoundingBox()

OBB3D Bexel.Api.Geometry.GetOrientedBoundingBox ( )

Calculates and returns an object oriented bounding box (OBB) of the geometry.

Returns
OBB if it can be computed, else null.

Only XY plane is used to calculate the orientation of the object.

Implements Bexel.Api.IGeometry.

◆ GetTriangle()

Triangle3D Bexel.Api.Geometry.GetTriangle ( int  index)

Retrieves the triangle at the specified index.

Parameters
indexIndex of the triangle. Must be in range [0, TriangleCount).
Returns
Triangle at the specified index.
Exceptions
Bexel.Api.InvalidApiArgumentExceptionThrown if specified index is out of range.

Implements Bexel.Api.IGeometry.

◆ GetVertex()

Vector3D Bexel.Api.Geometry.GetVertex ( int  index)

Retrieves the vertex at the specified index.

Parameters
indexIndex of the vertex. Must be in range [0, VertexCount).
Returns
Vertex at the specified index.
Exceptions
Bexel.Api.InvalidApiArgumentExceptionThrown if specified index is out of range.

Implements Bexel.Api.IGeometry.