VTK
|
keep track of edges (edge is pair of integer id's) More...
#include <vtkEdgeTable.h>
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual vtkTypeBool | IsA (const char *type) |
Return 1 if this class is the same type of (or a subclass of) the named class. More... | |
vtkEdgeTable * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. More... | |
void | Initialize () |
Free memory and return to the initially instantiated state. More... | |
int | InitEdgeInsertion (vtkIdType numPoints, int storeAttributes=0) |
Initialize the edge insertion process. More... | |
vtkIdType | InsertEdge (vtkIdType p1, vtkIdType p2) |
Insert the edge (p1,p2) into the table. More... | |
void | InsertEdge (vtkIdType p1, vtkIdType p2, vtkIdType attributeId) |
Insert the edge (p1,p2) into the table with the attribute id specified (make sure the attributeId >= 0). More... | |
void | InsertEdge (vtkIdType p1, vtkIdType p2, void *ptr) |
Insert the edge (p1,p2) into the table with the attribute id specified (make sure the attributeId >= 0). More... | |
vtkIdType | IsEdge (vtkIdType p1, vtkIdType p2) |
Return an integer id for the edge, or an attribute id of the edge (p1,p2) if the edge has been previously defined (it depends upon which version of InsertEdge() is being used); otherwise -1. More... | |
void | IsEdge (vtkIdType p1, vtkIdType p2, void *&ptr) |
Similar to above, but returns a void* pointer is InitEdgeInsertion() has been called with storeAttributes==2. More... | |
int | InitPointInsertion (vtkPoints *newPts, vtkIdType estSize) |
Initialize the point insertion process. More... | |
int | InsertUniquePoint (vtkIdType p1, vtkIdType p2, double x[3], vtkIdType &ptId) |
Insert a unique point on the specified edge. More... | |
void | InitTraversal () |
Initialize traversal of edges in table. More... | |
vtkIdType | GetNextEdge (vtkIdType &p1, vtkIdType &p2) |
Traverse list of edges in table. More... | |
int | GetNextEdge (vtkIdType &p1, vtkIdType &p2, void *&ptr) |
Similar to above, but fills a void* pointer if InitEdgeInsertion() has been called with storeAttributes==2. More... | |
void | Reset () |
Reset the object and prepare for reinsertion of edges. More... | |
virtual vtkIdType | GetNumberOfEdges () |
Return the number of edges that have been inserted thus far. More... | |
Public Member Functions inherited from vtkObject | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. More... | |
virtual void | DebugOff () |
Turn debugging output off. More... | |
bool | GetDebug () |
Get the value of the debug flag. More... | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. More... | |
virtual void | Modified () |
Update the modification time for this object. More... | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. More... | |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
vtkTypeBool | HasObserver (unsigned long event) |
vtkTypeBool | HasObserver (const char *event) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Allow user to set the AbortFlagOn() with the return value of the callback method. More... | |
int | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
int | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
Return the class name as a string. More... | |
virtual void | Delete () |
Delete a VTK object. More... | |
virtual void | FastDelete () |
Delete a reference to this object. More... | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. More... | |
virtual void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). More... | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). More... | |
int | GetReferenceCount () |
Return the current reference count of this object. More... | |
void | SetReferenceCount (int) |
Sets the reference count. More... | |
void | PrintRevisions (ostream &) |
Legacy. More... | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
Static Public Member Functions | |
static vtkEdgeTable * | New () |
Instantiate object assuming that 1000 edges are to be inserted. More... | |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkEdgeTable * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. More... | |
static void | SetGlobalWarningDisplay (int val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static int | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
Static Public Member Functions inherited from vtkObjectBase | |
static vtkTypeBool | IsTypeOf (const char *name) |
Return 1 if this class type is the same type of (or a subclass of) the named class. More... | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkEdgeTable () | |
~vtkEdgeTable () override | |
vtkIdList ** | Resize (vtkIdType size) |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
~vtkObject () override | |
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
These methods allow a command to exclusively grab all events. More... | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. More... | |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkIdList ** | Table |
vtkIdType | TableMaxId |
vtkIdType | TableSize |
int | Position [2] |
int | Extend |
vtkIdType | NumberOfEdges |
vtkPoints * | Points |
int | StoreAttributes |
vtkIdList ** | Attributes |
vtkVoidArray ** | PointerAttributes |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
keep track of edges (edge is pair of integer id's)
vtkEdgeTable is a general object for keeping track of lists of edges. An edge is defined by the pair of point id's (p1,p2). Methods are available to insert edges, check if edges exist, and traverse the list of edges. Also, it's possible to associate attribute information with each edge. The attribute information may take the form of vtkIdType id's, void* pointers, or points. To store attributes, make sure that InitEdgeInsertion() is invoked with the storeAttributes flag set properly. If points are inserted, use the methods InitPointInsertion() and InsertUniquePoint().
Definition at line 40 of file vtkEdgeTable.h.
typedef vtkObject vtkEdgeTable::Superclass |
Definition at line 48 of file vtkEdgeTable.h.
|
protected |
|
overrideprotected |
|
static |
Instantiate object assuming that 1000 edges are to be inserted.
|
static |
|
virtual |
Return 1 if this class is the same type of (or a subclass of) the named class.
Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObjectBase.
|
static |
|
protectedvirtual |
vtkEdgeTable* vtkEdgeTable::NewInstance | ( | ) | const |
|
overridevirtual |
void vtkEdgeTable::Initialize | ( | ) |
Free memory and return to the initially instantiated state.
Initialize the edge insertion process.
Provide an estimate of the number of points in a dataset (the maximum range value of p1 or p2). The storeAttributes variable controls whether attributes are to be stored with the edge, and what type of attributes. If storeAttributes==1, then attributes of vtkIdType can be stored. If storeAttributes==2, then attributes of type void* can be stored. In either case, additional memory will be required by the data structure to store attribute data per each edge. This method is used in conjunction with one of the three InsertEdge() methods described below (don't mix the InsertEdge() methods—make sure that the one used is consistent with the storeAttributes flag set in InitEdgeInsertion()).
Insert the edge (p1,p2) into the table.
It is the user's responsibility to check if the edge has already been inserted (use IsEdge()). If the storeAttributes flag in InitEdgeInsertion() has been set, then the method returns a unique integer id (i.e., the edge id) that can be used to set and get edge attributes. Otherwise, the method will return 1. Do not mix this method with the InsertEdge() method that follows.
Insert the edge (p1,p2) into the table with the attribute id specified (make sure the attributeId >= 0).
Note that the attributeId is ignored if the storeAttributes variable was set to 0 in the InitEdgeInsertion() method. It is the user's responsibility to check if the edge has already been inserted (use IsEdge()). Do not mix this method with the other two InsertEdge() methods.
Insert the edge (p1,p2) into the table with the attribute id specified (make sure the attributeId >= 0).
Note that the attributeId is ignored if the storeAttributes variable was set to 0 in the InitEdgeInsertion() method. It is the user's responsibility to check if the edge has already been inserted (use IsEdge()). Do not mix this method with the other two InsertEdge() methods.
Return an integer id for the edge, or an attribute id of the edge (p1,p2) if the edge has been previously defined (it depends upon which version of InsertEdge() is being used); otherwise -1.
The unique integer id can be used to set and retrieve attributes to the edge.
Similar to above, but returns a void* pointer is InitEdgeInsertion() has been called with storeAttributes==2.
A nullptr pointer value is returned if the edge does not exist.
Initialize the point insertion process.
The newPts is an object representing point coordinates into which incremental insertion methods place their data. The points are associated with the edge.
Insert a unique point on the specified edge.
Invoke this method only after InitPointInsertion() has been called. Return 0 if point was already in the list, otherwise return 1.
|
virtual |
Return the number of edges that have been inserted thus far.
void vtkEdgeTable::InitTraversal | ( | ) |
Initialize traversal of edges in table.
Traverse list of edges in table.
Return the edge as (p1,p2), where p1 and p2 are point id's. Method return value is <0 if list is exhausted; non-zero otherwise. The value of p1 is guaranteed to be <= p2.
Similar to above, but fills a void* pointer if InitEdgeInsertion() has been called with storeAttributes==2.
A nullptr pointer value is filled otherwise. Returns 0 if list is exhausted.
void vtkEdgeTable::Reset | ( | ) |
Reset the object and prepare for reinsertion of edges.
Does not delete memory like the Initialize() method.
|
protected |
Definition at line 171 of file vtkEdgeTable.h.
|
protected |
Definition at line 172 of file vtkEdgeTable.h.
|
protected |
Definition at line 173 of file vtkEdgeTable.h.
|
protected |
Definition at line 174 of file vtkEdgeTable.h.
|
protected |
Definition at line 175 of file vtkEdgeTable.h.
|
protected |
Definition at line 176 of file vtkEdgeTable.h.
|
protected |
Definition at line 177 of file vtkEdgeTable.h.
|
protected |
Definition at line 179 of file vtkEdgeTable.h.
|
protected |
Definition at line 180 of file vtkEdgeTable.h.
|
protected |
Definition at line 181 of file vtkEdgeTable.h.