CAD Exchanger SDK
cadex::ModelData_PolyVertexSet Class Reference

Base class for particular vertex sets - triangle sets, polyline sets, point sets. More...

Inheritance diagram for cadex::ModelData_PolyVertexSet:
cadex::ModelData_PolyShape cadex::ModelData_BaseObject cadex::ModelData_IndexedTriangleSet cadex::ModelData_PolyLineSet cadex::ModelData_PolyPointSet

Public Types

typedef int IndexType
 Type of indices.
 
typedef cadex::internal::cadex_vector< IndexType >::type IndexVecType
 
typedef ModelData_Point CoordType
 
typedef ModelData_Color ColorType
 
- Public Types inherited from cadex::ModelData_BaseObject
typedef int IdType
 Defines a type identifier.
 

Public Member Functions

void SetAppearance (const ModelData_Appearance &theAppearance)
 
ModelData_Appearance Appearance () const
 
const CoordTypeCoordinate (IndexType theVertexIndex) const
 Returns a vertex coordinate.
 
bool HasColors () const
 
const ColorTypeColor (IndexType theIndex) const
 
IndexType NumberOfVertices () const
 
IndexType NumberOfColors () const
 Returns a number of unique colors.
 
bool IsEmpty () const
 
- Public Member Functions inherited from cadex::ModelData_PolyShape
 ModelData_PolyShape ()
 Constructor. More...
 
- Public Member Functions inherited from cadex::ModelData_BaseObject
 ModelData_BaseObject ()
 Constructor. More...
 
IdType TypeId () const
 Returns an object type id. More...
 
template<typename T >
bool IsOfType () const
 Returns true if the object has a type T. More...
 
void SetName (const Base_UTF16String &theName)
 Sets an object name. More...
 
Base_UTF16String Name () const
 Returns an object name. More...
 
void Nullify ()
 Resets reference to implementation object. More...
 
bool IsNull () const
 Returns true if the object is nullified. More...
 
 operator bool () const
 Casts the object to the bool type. More...
 
internal::ModelData_BaseObjectImpl * Impl () const
 Return a handle to backend (reserved for internal use).
 

Protected Member Functions

 ModelData_PolyVertexSet (internal::ModelData_BaseObjectImpl *theImpl)
 Constructor (reserved for internal use).
 
- Protected Member Functions inherited from cadex::ModelData_PolyShape
 ModelData_PolyShape (const internal::ModelData_BaseObjectImpl *theImpl)
 Constructor (reserved for internal use).
 
- Protected Member Functions inherited from cadex::ModelData_BaseObject
 ModelData_BaseObject (const internal::ModelData_BaseObjectImpl *theImpl)
 Constructor (reserved for internal use).
 
 ModelData_BaseObject (const internal::ModelData_BaseObjectImpl *theImpl, const Base_UTF16String &theName)
 Constructor (reserved for internal use).
 
template<typename T >
T * GetOrCreateImpl ()
 Reserved for internal use.
 

Detailed Description

Base class for particular vertex sets - triangle sets, polyline sets, point sets.

The vertex set defines a set of vertex coordinates which is used by subclass. The vertex set can also have optional appearance (ModelData_Appearance) or particular colors attached to vertices. The latter is very rarely used as it incurs the greatest memory footprint (although allows the highest flexibility).

Refer to Polygonal Object Types for description of supported vertex set types.

Examples:
meshing/main.cxx, and modelexplorer/main.cxx.