VTK
|
Dijkstra algorithm to compute the graph geodesic. More...
#include <vtkDijkstraGraphGeodesicPath.h>
Public Member Functions | |
virtual double | GetGeodesicLength () |
virtual void | GetCumulativeWeights (vtkDoubleArray *weights) |
virtual vtkIdList * | GetIdList () |
virtual void | SetStopWhenEndReached (int) |
virtual int | GetStopWhenEndReached () |
virtual void | StopWhenEndReachedOn () |
virtual void | StopWhenEndReachedOff () |
virtual void | SetUseScalarWeights (int) |
virtual int | GetUseScalarWeights () |
virtual void | UseScalarWeightsOn () |
virtual void | UseScalarWeightsOff () |
virtual void | SetRepelPathFromVertices (int) |
virtual int | GetRepelPathFromVertices () |
virtual void | RepelPathFromVerticesOn () |
virtual void | RepelPathFromVerticesOff () |
virtual void | SetRepelVertices (vtkPoints *) |
virtual vtkPoints * | GetRepelVertices () |
![]() | |
virtual vtkIdType | GetStartVertex () |
virtual void | SetStartVertex (vtkIdType) |
virtual vtkIdType | GetEndVertex () |
virtual void | SetEndVertex (vtkIdType) |
vtkGraphGeodesicPath * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
![]() | |
vtkGeodesicPath * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
Static Public Member Functions | |
static vtkDijkstraGraphGeodesicPath * | New () |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkGraphGeodesicPath * | SafeDownCast (vtkObjectBase *o) |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkGeodesicPath * | SafeDownCast (vtkObjectBase *o) |
Protected Member Functions | |
vtkDijkstraGraphGeodesicPath () | |
~vtkDijkstraGraphGeodesicPath () | |
virtual int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual void | BuildAdjacency (vtkDataSet *inData) |
virtual double | CalculateStaticEdgeCost (vtkDataSet *inData, vtkIdType u, vtkIdType v) |
virtual double | CalculateDynamicEdgeCost (vtkDataSet *, vtkIdType, vtkIdType) |
void | Initialize (vtkDataSet *inData) |
void | Reset () |
virtual void | ShortestPath (vtkDataSet *inData, int startv, int endv) |
void | Relax (const int &u, const int &v, const double &w) |
void | TraceShortestPath (vtkDataSet *inData, vtkPolyData *outPoly, vtkIdType startv, vtkIdType endv) |
![]() | |
vtkGraphGeodesicPath () | |
~vtkGraphGeodesicPath () | |
![]() | |
vtkGeodesicPath () | |
~vtkGeodesicPath () | |
virtual int | FillInputPortInformation (int port, vtkInformation *info) |
Protected Attributes | |
vtkTimeStamp | AdjacencyBuildTime |
int | NumberOfVertices |
vtkIdList * | IdList |
vtkDijkstraGraphInternals * | Internals |
int | StopWhenEndReached |
int | UseScalarWeights |
int | RepelPathFromVertices |
vtkPoints * | RepelVertices |
![]() | |
vtkIdType | StartVertex |
vtkIdType | EndVertex |
typedef vtkGraphGeodesicPath | Superclass |
static int | IsTypeOf (const char *type) |
static vtkDijkstraGraphGeodesicPath * | SafeDownCast (vtkObjectBase *o) |
virtual int | IsA (const char *type) |
vtkDijkstraGraphGeodesicPath * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual vtkObjectBase * | NewInstanceInternal () const |
Dijkstra algorithm to compute the graph geodesic.
Takes as input a polygonal mesh and performs a single source shortest path calculation. Dijkstra's algorithm is used. The implementation is similar to the one described in Introduction to Algorithms (Second Edition) by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Cliff Stein, published by MIT Press and McGraw-Hill. Some minor enhancement are added though. All vertices are not pushed on the heap at start, instead a front set is maintained. The heap is implemented as a binary heap. The output of the filter is a set of lines describing the shortest path from StartVertex to EndVertex.
Definition at line 46 of file vtkDijkstraGraphGeodesicPath.h.
Standard methids for printing and determining type information.
Definition at line 56 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
|
protected |
|
static |
Instantiate the class
|
static |
Standard methids for printing and determining type information.
|
virtual |
Standard methids for printing and determining type information.
Reimplemented from vtkGraphGeodesicPath.
Reimplemented in vtkDijkstraImageGeodesicPath.
|
static |
Standard methids for printing and determining type information.
|
protectedvirtual |
Standard methids for printing and determining type information.
Reimplemented from vtkGraphGeodesicPath.
Reimplemented in vtkDijkstraImageGeodesicPath.
vtkDijkstraGraphGeodesicPath* vtkDijkstraGraphGeodesicPath::NewInstance | ( | ) | const |
Standard methids for printing and determining type information.
void vtkDijkstraGraphGeodesicPath::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
Standard methids for printing and determining type information.
|
virtual |
The vertex ids (of the input polydata) on the shortest path
|
virtual |
Stop when the end vertex is reached or calculate shortest path to all vertices
|
virtual |
Stop when the end vertex is reached or calculate shortest path to all vertices
|
virtual |
Stop when the end vertex is reached or calculate shortest path to all vertices
|
virtual |
Stop when the end vertex is reached or calculate shortest path to all vertices
|
virtual |
Use scalar values in the edge weight (experimental)
|
virtual |
Use scalar values in the edge weight (experimental)
|
virtual |
Use scalar values in the edge weight (experimental)
|
virtual |
Use scalar values in the edge weight (experimental)
|
virtual |
Use the input point to repel the path by assigning high costs.
|
virtual |
Use the input point to repel the path by assigning high costs.
|
virtual |
Use the input point to repel the path by assigning high costs.
|
virtual |
Use the input point to repel the path by assigning high costs.
|
virtual |
Specify vtkPoints to use to repel the path from.
|
virtual |
Specify vtkPoints to use to repel the path from.
|
inlinevirtual |
TODO: Get the total geodesic length.
Implements vtkGeodesicPath.
Definition at line 94 of file vtkDijkstraGraphGeodesicPath.h.
|
virtual |
Fill the array with the cumulative weights.
|
protectedvirtual |
Reimplemented in vtkDijkstraImageGeodesicPath.
|
protectedvirtual |
Reimplemented in vtkDijkstraImageGeodesicPath.
|
protectedvirtual |
Reimplemented in vtkDijkstraImageGeodesicPath.
|
inlineprotectedvirtual |
Reimplemented in vtkDijkstraImageGeodesicPath.
Definition at line 116 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
|
protected |
|
protectedvirtual |
|
protected |
|
protected |
|
protected |
Definition at line 109 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
Definition at line 134 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
Definition at line 137 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
Definition at line 140 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
Definition at line 142 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
Definition at line 143 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
Definition at line 144 of file vtkDijkstraGraphGeodesicPath.h.
|
protected |
Definition at line 146 of file vtkDijkstraGraphGeodesicPath.h.