37 #ifndef __vtkDijkstraGraphGeodesicPath_h
38 #define __vtkDijkstraGraphGeodesicPath_h
67 vtkSetMacro(StopWhenEndReached,
int);
68 vtkGetMacro(StopWhenEndReached,
int);
69 vtkBooleanMacro(StopWhenEndReached,
int);
74 vtkSetMacro(UseScalarWeights,
int);
75 vtkGetMacro(UseScalarWeights,
int);
76 vtkBooleanMacro(UseScalarWeights,
int);
81 vtkSetMacro(RepelPathFromVertices,
int);
82 vtkGetMacro(RepelPathFromVertices,
int);
83 vtkBooleanMacro(RepelPathFromVertices,
int);
88 virtual void SetRepelVertices(
vtkPoints*);
89 vtkGetObjectMacro(RepelVertices,
vtkPoints);
106 virtual void BuildAdjacency(
vtkDataSet *inData );
123 virtual void ShortestPath(
vtkDataSet *inData,
int startv,
int endv );
126 void Relax(
const int& u,
const int& v,
const double& w);
abstract class to specify dataset behavior
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
record modification and/or execution time
int RepelPathFromVertices
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkPoints * RepelVertices
Dijkstra algorithm to compute the graph geodesic.
dynamic, self-adjusting array of double
void PrintSelf(ostream &os, vtkIndent indent)
static vtkPolyDataAlgorithm * New()
a simple class to control print indentation
vtkDijkstraGraphInternals * Internals
vtkTimeStamp AdjacencyBuildTime
Helper class due to PIMPL excess.
list of point or cell ids
virtual double GetGeodesicLength()
Abstract base for classes that generate a geodesic path on a graph (mesh).
virtual double CalculateDynamicEdgeCost(vtkDataSet *, vtkIdType, vtkIdType)
represent and manipulate 3D points