MeshPartitioning Class Reference

#include <mesh.h>

Class Description

This object is used to manage a roughly spatially coherent partitioning of the mesh.

It will be a child node of a Mesh node in the scene. There will be at most one MeshPartitioning for a given instance of the Mesh class. This is a partitioning of base faces only. It is implied that all faces subdivided from a base face are in the same partition as that base face.

Repartitioning can be achieved by calling the appropriate API, and faces can be moved between partitions using the SetFacePartition api. While the repartitioning may take some time, setting the partition ID of a face will be order 1 almost all of the time, and potentially order n a very small fraction of the time.

Partition IDs (unsigned ints) can be queried in order 1 time. They will be numbered sequentially from 0 through n-1 for n partitions.

faces within a partition can be enmerated in order n. (order 1 per face)

If you add faces to a mesh they will by default be in the "invalid" partition (ID 0xffffffff)

This class is not thread safe on write accesses. It should be safe for reads.

Definition at line 1616 of file mesh.h.

+ Inheritance diagram for MeshPartitioning:

Public Types

enum  QualityHint { eNone = 0, eFastest, eGood, eBest }
 
- Public Types inherited from Node
enum  DiagnosticLevel { dgnLevel1, dgnLevel2, dgnLevel3 }
 Indicates the level of validity checking that is performed in CheckValidity() More...
 

Public Member Functions

bool IsCurrentPartitioningFaceBased () const
 
 MeshPartitioning ()
 Ctor for the MeshPartitioning node. More...
 
 ~MeshPartitioning ()
 
void Clear ()
 Deallocate all memory – destroys and deletes the partitioning. More...
 
virtual void OnLinked (const TreeNode *pOldParent)
 Sets up a mesh partitioning using the current default hint. More...
 
void RePartition (QualityHint hint=eGood)
 Recompute the partitioning of this mesh with the specified quality. More...
 
void RecomputePartitionAABB (unsigned int pIdx)
 recompute the bounding box of a specified partition More...
 
void RecomputePartitionAABBs (void)
 recompute the bounding box of all the partitions More...
 
const AxisAlignedBoundingBoxGetTotalAABB () const
 get the bounding box of this partitioning. More...
 
const AxisAlignedBoundingBoxGetPartitionAABB (unsigned int pIdx) const
 returns the bounding box of a partition. More...
 
unsigned int GetPartitionMinFaceID (unsigned int pIdx) const
 Get the minimum face ID in a specified partition. If empty, will return 0xffffffff. More...
 
unsigned int GetPartitionMaxFaceID (unsigned int pIdx) const
 Get the maximum face ID in a partition. If empty, return 0. More...
 
bool IsPartitionCloseToPoint (unsigned int pIdx, const Vector &pt, float dist) const
 returns true if a specified point is within a given (non empty) partition, or within a specified distance of the partition. More...
 
QualityHint GetCurrentPartitioningQuality () const
 Return the current partitioning quality for this partitioning node. More...
 
void Consolidate (bool force)
 order n reconsolidation of the storage used for partitioning. More...
 
void Serialize (Stream &s)
 Load or store from the specified stream. More...
 
bool IsPartitionDirty (unsigned int pIdx) const
 returns true if the partition has been changed since the HWRenderer has built the VBOs for this partition. More...
 
void SetPartitionDirty (unsigned int pIdx)
 called by the HWRenderer to set the dirty flag to clean once it has built the VBOs for the specified partitions. More...
 
bool AnyPartitionsDirty ()
 returns true if any of the partitions are dirty. More...
 
void ContentChanged (void)
 Call this method after modifying the partitioning. More...
 
void SetFaceCount (unsigned int faceCount, bool noOvergrowth=false)
 Set the face count. More...
 
unsigned int GetFaceCount () const
 return the count of faces in the partitioning. More...
 
unsigned int GetPartitionCount () const
 Returns the number of partitions. Partition ids are 0 through PartitionCount-1 inclusive. More...
 
unsigned int GetPartitionFaceCount (unsigned int pIdx) const
 Return the number of faces to enumerate in the specified partition Note some faces may be INVALID_ID – these should be skipped... More...
 
unsigned int GetPartitionFace (unsigned int pIdx, unsigned int fIdx) const
 Return the specified face id in the specified partition Note some faces may be INVALID_ID – these should be skipped... More...
 
unsigned int GetPartitionBlindInt (unsigned int pIdx) const
 Read Accessor for blind data (32 bit uint) on each partition. More...
 
void SetPartitionBlindInt (unsigned int pIdx, unsigned int ii)
 Write Accessor for blind data (32 bit uint) on each partition. More...
 
unsigned int GetPartitionVersion (unsigned int pIdx) const
 Returns the version number of the specified partition. More...
 
unsigned int GetFacePartition (unsigned int faceID) const
 return the Partition id of a specified face. Can be INVALID_ID if it's not in a partition. More...
 
unsigned int GetFacePartitionIndex (unsigned int faceID) const
 return the index within it's partition partition of a given face ID. More...
 
void AddFaceToPartition (unsigned int faceID, unsigned int partitionID)
 Adds or moves a face to a partition. More...
 
unsigned int GetPartitionID (unsigned int faceID) const
 Returns the partition ID given a face ID. More...
 
void DebugLog ()
 
void SetBlindIntsAsColors ()
 
virtual void CheckValidity (Node::DiagnosticLevel iLevel=dgnLevel2) const
 See the documentation for Node::CheckValidity. More...
 
- Public Member Functions inherited from TreeNode
 TreeNode (void)
 
 ~TreeNode (void)
 
virtual void AddChild (TreeNode *pChild, bool bFirst=false) const
 Adds a node/subtree to the list of children. The added node will be removed from the current parent if it has one. More...
 
virtual void RemoveChild (TreeNode *pChild) const
 Removes a node/subtree from the list of children. More...
 
virtual TreeNodeFirstChild (void) const
 Returns the first node from the child list. More...
 
virtual TreeNodeParent (void) const
 Returns the parent node. More...
 
virtual TreeNodeNextSibling (void) const
 Returns the next linked node with the same parent. More...
 
virtual TreeNodePrevSibling (void) const
 Returns the previous linked node with the same parent. More...
 
virtual void MoveChild (TreeNode *pChild, TreeNode *pAfter)
 Moves the child after the given node in order. More...
 
virtual TreeNodeChildByClass (const ClassDesc *pClass, bool bAutoCreate=true) const
 Returns the first child with the specified type. When the bAutoCreate parameter is true and such a child does not exists, it creates it with the preferred descedant type. More...
 
template<typename type >
typeChildByClass (bool bAutoCreate=true) const
 Same as above, a most confortable version. More...
 
virtual TreeNodeChildByClass (const ClassDesc *pClass, unsigned int iIndex=0) const
 Returns the first child with the specified type, or returns zero if no child found. More...
 
template<typename type >
typeChildByClass (unsigned int iIndex=0) const
 Same as above, a most confortable version. More...
 
virtual void DeleteChildByClass (const ClassDesc *pClass)
 Deletes all child which is derived from a specific class. More...
 
virtual QString Info (void) const
 Returns descriptive information about the node. More...
 
virtual bool Visible (void) const
 Returns if the node is visible. Should be overridden in derived classes. More...
 
virtual void SetVisible (bool b)
 Sets the node visibility Should be overridden in derived classes. More...
 
virtual bool Locked (void) const
 Returns if the node is locked. Should be overridden in derived classes. More...
 
virtual void SetLocked (bool b)
 Sets the locking of the node. Should be overridden in derived classes. More...
 
virtual bool HiddenFromUI (void) const
 Returns true if the node cannot be seen from UI. More...
 
virtual void SetHiddenFromUI (bool b)
 Sets visibility in UI. More...
 
QString UniqueChildName (const TreeNode *pChild, const QString &sPrefix="") const
 Finds a node name that is unique among the children of this node. More...
 
virtual void SetStringID (const QString &sName)
 This method does the same thing as Node::SetStringID, except it ensures the name is unique among this node's siblings. More...
 
virtual void CopyTo (Node *pNode) const
 
- Public Member Functions inherited from Node
 Node (const QString &sStringID="", const QString &sDisplayName="")
 Standard constructor. More...
 
virtual ~Node (void)
 
virtual void Initialize (void)
 
void LoadTemplate (const QString &sFileName="", bool bStartEvent=false)
 Use an external XML file to initialize the attributes. More...
 
void SaveTemplate (const QString &sFileName="", bool bSaveOnlyVisible=false)
 Save current attributes as an XML template. More...
 
unsigned int Version (void) const
 Returns the current version of the node. This number increases when the content of the node changed (when ContentChanged() called). More...
 
void SetVersion (unsigned int iVersion)
 Sets the current version number for the node. More...
 
unsigned int ReferenceCount (void) const
 Returns the number of pointers referencing this node. More...
 
AttributeReferencePointer (unsigned int iIndex) const
 Returns the address of an attribute which refers to this node. The type of the attribute is always aptr. More...
 
NodeReferenceNode (unsigned int iIndex) const
 Returns the address of a node referencing this node. More...
 
virtual QString Name (const ClassDesc *pClass=0) const
 Deprecated. More...
 
virtual void SetName (const QString &sName)
 Deprecated. More...
 
virtual QString StringID (const ClassDesc *pClass=0) const
 Returns the string id of the node. More...
 
virtual QString DisplayName (void) const
 Returns the display name of the node. More...
 
virtual void SetDisplayName (const QString &sDisplayName)
 Sets the display name of the node. More...
 
virtual QString HelpID (void) const
 Returns the help entry id of the node. Can be overwritten in derived classes. More...
 
virtual void SetHelpID (const QString &sHelpID)
 Sets the help entry id of the node. More...
 
void Annex (Node *pSource, const QString &sCategory="")
 Relink all the attributes of the source node to this one. More...
 
bool IsKindOf (const ClassDesc *pClass) const
 Returns true if this node is derived from the pClass class. More...
 
void ContentChanged (void) const
 This function must be called if the content of the node is changed. More...
 
virtual NodeDuplicate (void) const
 
virtual void OnNodeEvent (const Attribute &cAttribute, NodeEventType cType)
 This function is called if an event occurs with any of the attributes of the node. More...
 
virtual void OnEvent (const EventGate &cEvent)
 This function is called when a generic event occurs. See EventGate class. More...
 
void RequestDeferredEvent (Attribute &cAttribute)
 Request for a deferred event, which will occur only in the main loop. More...
 
unsigned int AttributeCount (void) const
 Returns the number of attributes owned by the node. More...
 
AttributeAttributeByIndex (int iIndex) const
 Returns a specified attribute (or 0 if iIndex is greater than the number of attributes). More...
 
AttributeAttributeByName (const QString &sName) const
 Returns a specified attribute by its name. Returns 0 if the attribute not found. More...
 
AttributeAttributeByID (const QString &sID) const
 Returns a specified attribute by its ID. Returns 0 if the attribute not found. More...
 
void SetAttributeValue (const QString &sAttributeID, const QString &sNewValue)
 Set the value of an attribute from a string. More...
 
QString AttributeValue (const QString &sAttributeID) const
 Returns the current value of an attribute as a string. More...
 
void LogAttributes (void) const
 Write all attributes into the log file. More...
 
virtual QWidgetCreatePropertiesWindow (QWidget *pParent)
 Create a window which displays the attributes of the node. Can be overriden to provide a custom interface. More...
 
AttributeAddAttribute (Attribute::AttributeType type, const QString &id)
 Allows SDK users to add attributes at runtime. More...
 
NodeNext (void) const
 Returns the next node in the chain. Used to enumerate the current nodes. See also First(). More...
 
int ID (void) const
 Returns an ID for the node. The ID is unique in the whole application life. More...
 
bool SetID (int iID)
 Set ID for the node. More...
 

Static Public Member Functions

static void SetBaseMeshMode (bool b=true)
 sets a static mode to use the base mesh or the current subdiv level of the mesh. More...
 
static bool IsInBaseMeshMode ()
 
static void SetFaceMode (bool b=true)
 sets a static mode to use either face indices or vertex indices to perform partitioning. More...
 
static bool IsInFaceMode ()
 
static void SetDefaultQuality (QualityHint hint)
 Set the default quality hint. More...
 
static QualityHint GetDefaultQuality ()
 Query the default quality hint. More...
 
static unsigned int GetDefaultPartitionCount ()
 Query the default partition count. More...
 
static void SetDefaultPartitionCount (unsigned int pc)
 Set the default partition count. More...
 
- Static Public Member Functions inherited from Node
static void StartHashing ()
 This is called once in main once static ctors are done. More...
 
static NodeFirst (void)
 This function will return the first node in the memory. Used to enumerate all the current nodes. See also Next(). More...
 
static NodeByID (int iID)
 Returns the node with the specified ID, or zero if such a node does not exists. More...
 
static NodeByName (const QString &sClass, const QString &sName)
 Search for a node with the name sName. More...
 

Additional Inherited Members

- Public Attributes inherited from TreeNode
 DECLARE_CLASS
 
- Public Attributes inherited from Node
AttributeThisPointer m_pThis
 
 DECLARE_CLASS
 

Member Enumeration Documentation

Enumerator
eNone 
eFastest 
eGood 
eBest 

Definition at line 1621 of file mesh.h.

1621  {
1622  eNone = 0, //<-- mesh has not partitioning computed yet.
1623  eFastest, //<-- order n partitioning -- may not be spatially coherent.
1624  eGood, //<-- no worse than order n log n. Mostly spatially coherent. default
1625  eBest //<-- slower than eGood, but better coherence
1626  };

Constructor & Destructor Documentation

Ctor for the MeshPartitioning node.

~MeshPartitioning ( )
inline

Definition at line 1800 of file mesh.h.

1800 { Clear(); }
void Clear()
Deallocate all memory – destroys and deletes the partitioning.

Member Function Documentation

static void SetBaseMeshMode ( bool  b = true)
inlinestatic

sets a static mode to use the base mesh or the current subdiv level of the mesh.

this mode affects the following repartition calls

Definition at line 1765 of file mesh.h.

1765 { m_sBaseMesh = b; }
GLubyte GLubyte b
Definition: GLee.h:5404
static bool IsInBaseMeshMode ( )
inlinestatic

Definition at line 1766 of file mesh.h.

1766 { return m_sBaseMesh; }
static void SetFaceMode ( bool  b = true)
inlinestatic

sets a static mode to use either face indices or vertex indices to perform partitioning.

When in vertex mode, all the FaceIDs stored in this class are Vertex ids instead. this mode affects the following repartition calls These two modes are referred to as Face mode or Point mode. Partition bounding boxes are currently only computed in Point mode.

Definition at line 1774 of file mesh.h.

1774 { m_sUseFaces = b; }
GLubyte GLubyte b
Definition: GLee.h:5404
static bool IsInFaceMode ( )
inlinestatic

Definition at line 1775 of file mesh.h.

1775 { return m_sUseFaces; }
bool IsCurrentPartitioningFaceBased ( ) const
inline

Definition at line 1777 of file mesh.h.

1777 { return m_UseFaces; }
static void SetDefaultQuality ( QualityHint  hint)
inlinestatic

Set the default quality hint.

The default quality is eFastest, and is used when this node is linked to a parent mesh.

Definition at line 1781 of file mesh.h.

1781 { m_sDefaultQuality = hint; }
static QualityHint GetDefaultQuality ( )
inlinestatic

Query the default quality hint.

Definition at line 1784 of file mesh.h.

1784 { return m_sDefaultQuality; }
static unsigned int GetDefaultPartitionCount ( )
inlinestatic

Query the default partition count.

The partitioning will try to create this number of partitions. Actual partitioning may vary by as much as +-10% initial default for this is 2048

Definition at line 1789 of file mesh.h.

1789 { return m_sPreferredPartitionCount; }
static void SetDefaultPartitionCount ( unsigned int  pc)
inlinestatic

Set the default partition count.

The partitioning will try to create this number of partitions. Actual partitioning may vary by as much as +-10% initial default for this is 2048

Definition at line 1794 of file mesh.h.

1794 { m_sPreferredPartitionCount = pc; }
void Clear ( )

Deallocate all memory – destroys and deletes the partitioning.

virtual void OnLinked ( const TreeNode pOldParent)
virtual

Sets up a mesh partitioning using the current default hint.

NOTE you must link this to a Mesh and not any other node type. It also must be a base mesh, not a subdivided one.

Reimplemented from TreeNode.

void RePartition ( QualityHint  hint = eGood)

Recompute the partitioning of this mesh with the specified quality.

(always uses the base subdiv level for partitioning!) Specifying eNone will delete the current partitioning.

void RecomputePartitionAABB ( unsigned int  pIdx)

recompute the bounding box of a specified partition

void RecomputePartitionAABBs ( void  )

recompute the bounding box of all the partitions

const AxisAlignedBoundingBox& GetTotalAABB ( ) const
inline

get the bounding box of this partitioning.

in face mode, it will retuurn the bounding box of the ceneres of all the faces. In point mode, it will return the bounding box of the mesh.

Definition at line 1825 of file mesh.h.

1825 { return m_TotalAABB; }
const AxisAlignedBoundingBox& GetPartitionAABB ( unsigned int  pIdx) const
inline

returns the bounding box of a partition.

Only valid in point mode, not face mode.

Definition at line 1829 of file mesh.h.

1830  { return m_aPartitions[pIdx].m_AABB; }
unsigned int GetPartitionMinFaceID ( unsigned int  pIdx) const
inline

Get the minimum face ID in a specified partition. If empty, will return 0xffffffff.

Definition at line 1833 of file mesh.h.

1834  { return m_aPartitions[pIdx].m_MinFaceID; }
unsigned int GetPartitionMaxFaceID ( unsigned int  pIdx) const
inline

Get the maximum face ID in a partition. If empty, return 0.

Definition at line 1837 of file mesh.h.

1838  { return m_aPartitions[pIdx].m_MaxFaceID; }
bool IsPartitionCloseToPoint ( unsigned int  pIdx,
const Vector pt,
float  dist 
) const
inline

returns true if a specified point is within a given (non empty) partition, or within a specified distance of the partition.

If the tolerance distance is 0, this fcn will only return true if the point is within the partitions bounding box. Only use this in point mode, not face mode of partitioning.

Definition at line 1844 of file mesh.h.

1845  {
1846  if (dist > 0) {
1847  AxisAlignedBoundingBox bBox = m_aPartitions[pIdx].m_AABB;
1848  bBox.ExpandBy(dist);
1849  return bBox.IsContaining(pt);
1850  } else {
1851  return m_aPartitions[pIdx].m_AABB.IsContaining(pt);
1852  }
1853  }
QualityHint GetCurrentPartitioningQuality ( ) const
inline

Return the current partitioning quality for this partitioning node.

Definition at line 1856 of file mesh.h.

1856 { return m_eCurrentPartitionQuality; }
void Consolidate ( bool  force)

order n reconsolidation of the storage used for partitioning.

if force is true it will reconsolidate to 0 wastage, otherwise it will tolerate up to 5% wastage in any one partition.

void Serialize ( Stream s)
virtual

Load or store from the specified stream.

Reimplemented from TreeNode.

bool IsPartitionDirty ( unsigned int  pIdx) const
inline

returns true if the partition has been changed since the HWRenderer has built the VBOs for this partition.

Definition at line 1868 of file mesh.h.

1868 { return m_aPartitions[pIdx].m_bDirty; }
void SetPartitionDirty ( unsigned int  pIdx)
inline

called by the HWRenderer to set the dirty flag to clean once it has built the VBOs for the specified partitions.

Definition at line 1872 of file mesh.h.

1872 { m_aPartitions[pIdx].m_bDirty = true; }
bool AnyPartitionsDirty ( )
inline

returns true if any of the partitions are dirty.

Definition at line 1875 of file mesh.h.

1876  {
1877  bool b = false;
1878  for (unsigned int i = 0; i < m_aPartitions.ItemCount(); ++i)
1879  b |= m_aPartitions[i].m_bDirty;
1880  return b;
1881  }
GLubyte GLubyte b
Definition: GLee.h:5404
unsigned int ItemCount(void) const
Returns the number of items in the array.
Definition: array.h:645
void ContentChanged ( void  )
inline

Call this method after modifying the partitioning.

It will update the version numbers of each modified partition.

Definition at line 1885 of file mesh.h.

1886  {
1887  for (unsigned int i = 0; i < m_aPartitions.ItemCount(); ++i)
1888  if( m_aPartitions[i].m_bDirty )
1889  {
1890  m_aPartitions[i].m_bDirty = false;
1891  m_aPartitions[i].m_iVersion++;
1892  }
1893 
1895  }
unsigned int ItemCount(void) const
Returns the number of items in the array.
Definition: array.h:645
void ContentChanged(void) const
This function must be called if the content of the node is changed.
void SetFaceCount ( unsigned int  faceCount,
bool  noOvergrowth = false 
)

Set the face count.

New faces will be in the invalid partition. noOvergrowth set to true will potentially use less memory, but can be much slower.

unsigned int GetFaceCount ( ) const
inline

return the count of faces in the partitioning.

Should match the number of faces in the mesh that owns this instance.

Definition at line 1903 of file mesh.h.

1903 { return m_aFaces.ItemCount(); }
unsigned int ItemCount(void) const
Returns the number of items in the array.
Definition: array.h:645
unsigned int GetPartitionCount ( ) const
inline

Returns the number of partitions. Partition ids are 0 through PartitionCount-1 inclusive.

Definition at line 1906 of file mesh.h.

1906 { return m_aPartitions.ItemCount(); }
unsigned int ItemCount(void) const
Returns the number of items in the array.
Definition: array.h:645
unsigned int GetPartitionFaceCount ( unsigned int  pIdx) const
inline

Return the number of faces to enumerate in the specified partition Note some faces may be INVALID_ID – these should be skipped...

To avoid all of these you can call Consolidate(true);

Definition at line 1911 of file mesh.h.

1912  { return m_aPartitions[pIdx].m_aFaceIDs.ItemCount(); }
unsigned int ItemCount(void) const
Returns the number of items in the array.
Definition: array.h:645
unsigned int GetPartitionFace ( unsigned int  pIdx,
unsigned int  fIdx 
) const
inline

Return the specified face id in the specified partition Note some faces may be INVALID_ID – these should be skipped...

To avoid all of these you can call Consolidate(true);

Definition at line 1917 of file mesh.h.

1918  { return m_aPartitions[pIdx].m_aFaceIDs[fIdx]; }
unsigned int GetPartitionBlindInt ( unsigned int  pIdx) const
inline

Read Accessor for blind data (32 bit uint) on each partition.

Definition at line 1921 of file mesh.h.

1922  { return m_aPartitions[pIdx].m_BlindInt; }
void SetPartitionBlindInt ( unsigned int  pIdx,
unsigned int  ii 
)
inline

Write Accessor for blind data (32 bit uint) on each partition.

Definition at line 1925 of file mesh.h.

1926  { m_aPartitions[pIdx].m_BlindInt = ii; }
unsigned int GetPartitionVersion ( unsigned int  pIdx) const
inline

Returns the version number of the specified partition.

The version number is incremented each time the partition is modified, and ContentChanged is called.

Definition at line 1930 of file mesh.h.

1931  { return m_aPartitions[pIdx].m_iVersion; }
unsigned int GetFacePartition ( unsigned int  faceID) const
inline

return the Partition id of a specified face. Can be INVALID_ID if it's not in a partition.

Definition at line 1934 of file mesh.h.

1935  { return faceID < m_aFaces.ItemCount() ? m_aFaces[faceID].m_iPartition : INVALID_ID; }
unsigned int ItemCount(void) const
Returns the number of items in the array.
Definition: array.h:645
#define INVALID_ID
Definition: mesh.h:47
unsigned int GetFacePartitionIndex ( unsigned int  faceID) const
inline

return the index within it's partition partition of a given face ID.

Can be INVALID_ID if it's not in a partition.

Definition at line 1939 of file mesh.h.

1940  { return faceID < m_aFaces.ItemCount() ? m_aFaces[faceID].m_iIndex : INVALID_ID; }
unsigned int ItemCount(void) const
Returns the number of items in the array.
Definition: array.h:645
#define INVALID_ID
Definition: mesh.h:47
void AddFaceToPartition ( unsigned int  faceID,
unsigned int  partitionID 
)

Adds or moves a face to a partition.

If a face is already in a partitoin it is removed and put in the specified partition. If the face or target partition does not esist it silently does nothing. If the face is not in a partition (implicitly in the invalid partition), it will be removed form the invalid partition and put in the specified partition A face can be removed from a partition and placed in the invalid partition with this API. This will run in order 1 time almost all the time.

unsigned int GetPartitionID ( unsigned int  faceID) const
inline

Returns the partition ID given a face ID.

Definition at line 1951 of file mesh.h.

1952  { return (faceID < GetFaceCount()) ? m_aFaces[faceID].m_iPartition : INVALID_ID; }
#define INVALID_ID
Definition: mesh.h:47
unsigned int GetFaceCount() const
return the count of faces in the partitioning.
Definition: mesh.h:1903
void DebugLog ( )
void SetBlindIntsAsColors ( )
virtual void CheckValidity ( Node::DiagnosticLevel  iLevel = dgnLevel2) const
virtual

See the documentation for Node::CheckValidity.

Reimplemented from TreeNode.


The documentation for this class was generated from the following file: