|
VTK
|
Defines API for interpolating/modifying nodes from a vtkContourRepresentation. More...
#include <vtkContourLineInterpolator.h>
Public Types | |
| typedef vtkObject | Superclass |
Public Types inherited from vtkObject | |
| typedef vtkObjectBase | Superclass |
Public Member Functions | |
| virtual int | IsA (const char *type) |
| vtkContourLineInterpolator * | NewInstance () const |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| virtual int | InterpolateLine (vtkRenderer *ren, vtkContourRepresentation *rep, int idx1, int idx2)=0 |
| virtual int | UpdateNode (vtkRenderer *, vtkContourRepresentation *, double *vtkNotUsed(node), int vtkNotUsed(idx)) |
| virtual void | GetSpan (int nodeIndex, vtkIntArray *nodeIndices, vtkContourRepresentation *rep) |
Public Member Functions inherited from vtkObject | |
| vtkObject * | NewInstance () const |
| virtual void | DebugOn () |
| virtual void | DebugOff () |
| bool | GetDebug () |
| void | SetDebug (bool debugFlag) |
| virtual void | Modified () |
| virtual unsigned long | GetMTime () |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
| vtkCommand * | GetCommand (unsigned long tag) |
| void | RemoveObserver (vtkCommand *) |
| void | RemoveObservers (unsigned long event, vtkCommand *) |
| void | RemoveObservers (const char *event, vtkCommand *) |
| int | HasObserver (unsigned long event, vtkCommand *) |
| int | HasObserver (const char *event, vtkCommand *) |
| void | RemoveObserver (unsigned long tag) |
| void | RemoveObservers (unsigned long event) |
| void | RemoveObservers (const char *event) |
| void | RemoveAllObservers () |
| int | HasObserver (unsigned long event) |
| int | HasObserver (const char *event) |
| template<class U , class T > | |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| template<class U , class T > | |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| template<class U , class T > | |
| unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| int | InvokeEvent (unsigned long event, void *callData) |
| int | InvokeEvent (const char *event, void *callData) |
| int | InvokeEvent (unsigned long event) |
| int | InvokeEvent (const char *event) |
Public Member Functions inherited from vtkObjectBase | |
| const char * | GetClassName () const |
| virtual void | Delete () |
| virtual void | FastDelete () |
| void | Print (ostream &os) |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| virtual void | Register (vtkObjectBase *o) |
| virtual void | UnRegister (vtkObjectBase *o) |
| int | GetReferenceCount () |
| void | SetReferenceCount (int) |
| void | PrintRevisions (ostream &) |
Static Public Member Functions | |
| static int | IsTypeOf (const char *type) |
| static vtkContourLineInterpolator * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
| static int | IsTypeOf (const char *type) |
| static vtkObject * | SafeDownCast (vtkObjectBase *o) |
| static vtkObject * | New () |
| static void | BreakOnError () |
| static void | SetGlobalWarningDisplay (int val) |
| static void | GlobalWarningDisplayOn () |
| static void | GlobalWarningDisplayOff () |
| static int | GetGlobalWarningDisplay () |
Static Public Member Functions inherited from vtkObjectBase | |
| static int | IsTypeOf (const char *name) |
| static vtkObjectBase * | New () |
Protected Member Functions | |
| virtual vtkObjectBase * | NewInstanceInternal () const |
| vtkContourLineInterpolator () | |
| ~vtkContourLineInterpolator () | |
Protected Member Functions inherited from vtkObject | |
| vtkObject () | |
| virtual | ~vtkObject () |
| virtual void | RegisterInternal (vtkObjectBase *, int check) |
| virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
| void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| void | InternalReleaseFocus () |
Protected Member Functions inherited from vtkObjectBase | |
| vtkObjectBase () | |
| virtual | ~vtkObjectBase () |
| virtual void | CollectRevisions (ostream &) |
| virtual void | ReportReferences (vtkGarbageCollector *) |
| vtkObjectBase (const vtkObjectBase &) | |
| void | operator= (const vtkObjectBase &) |
Additional Inherited Members | |
Protected Attributes inherited from vtkObject | |
| bool | Debug |
| vtkTimeStamp | MTime |
| vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
| vtkAtomicInt32 | ReferenceCount |
| vtkWeakPointerBase ** | WeakPointers |
Defines API for interpolating/modifying nodes from a vtkContourRepresentation.
vtkContourLineInterpolator is an abstract base class for interpolators that work are used by the contour representation class to interpolate and/or modify nodes in a contour. Subclasses must override the virtual method: InterpolateLine. This is used by the contour representation to give the interpolator a chance to define an interpolation scheme between nodes. See vtkBezierContourLineInterpolator for a concrete implementation. Subclasses may also override, UpdateNode. This provides a way for the representation to give the interpolator a chance to modify the nodes, as the user constructs the contours. For instance a sticky contour widget may be implemented that moves nodes to nearby regions of high gradient, to be used in contour guided segmentation.
Definition at line 42 of file vtkContourLineInterpolator.h.
Standard methods for instances of this class.
Definition at line 47 of file vtkContourLineInterpolator.h.
|
protected |
|
protected |
|
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 vtkObject.
Reimplemented in vtkTerrainContourLineInterpolator, vtkPolygonalSurfaceContourLineInterpolator, vtkPolyDataContourLineInterpolator, vtkLinearContourLineInterpolator, vtkDijkstraImageContourLineInterpolator, and vtkBezierContourLineInterpolator.
|
static |
|
protectedvirtual |
| vtkContourLineInterpolator* vtkContourLineInterpolator::NewInstance | ( | ) | const |
|
virtual |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkTerrainContourLineInterpolator, vtkPolygonalSurfaceContourLineInterpolator, vtkPolyDataContourLineInterpolator, vtkLinearContourLineInterpolator, and vtkDijkstraImageContourLineInterpolator.
|
pure virtual |
Subclasses that wish to interpolate a line segment must implement this. For instance vtkBezierContourLineInterpolator adds nodes between idx1 and idx2, that allow the contour to adhere to a bezier curve.
Implemented in vtkPolyDataContourLineInterpolator, vtkTerrainContourLineInterpolator, vtkPolygonalSurfaceContourLineInterpolator, vtkLinearContourLineInterpolator, vtkDijkstraImageContourLineInterpolator, and vtkBezierContourLineInterpolator.
|
virtual |
The interpolator is given a chance to update the node. For instance, the vtkImageContourLineInterpolator updates the idx'th node in the contour, so it automatically sticks to edges in the vicinity as the user constructs the contour. Returns 0 if the node (world position) is unchanged.
Reimplemented in vtkPolyDataContourLineInterpolator, vtkTerrainContourLineInterpolator, and vtkPolygonalSurfaceContourLineInterpolator.
|
virtual |
Span of the interpolator. ie. the number of control points its supposed to interpolate given a node. The first argument is the current nodeIndex. ie, you'd be trying to interpolate between nodes "nodeIndex" and "nodeIndex-1", unless you're closing the contour in which case, you're trying to interpolate "nodeIndex" and "Node=0". The node span is returned in a vtkIntArray. The default node span is 1 (ie. nodeIndices is a 2 tuple (nodeIndex, nodeIndex-1)). However, it need not always be 1. For instance, cubic spline interpolators, which have a span of 3 control points, it can be larger. See vtkBezierContourLineInterpolator for instance.
Reimplemented in vtkBezierContourLineInterpolator.