30 #ifndef vtkForceDirectedLayoutStrategy_h
31 #define vtkForceDirectedLayoutStrategy_h
34 #include "vtkInfovisLayoutModule.h"
36 VTK_ABI_NAMESPACE_BEGIN
52 vtkGetMacro(RandomSeed,
int);
61 vtkSetVector6Macro(GraphBounds,
double);
62 vtkGetVectorMacro(GraphBounds,
double, 6);
84 vtkGetMacro(MaxNumberOfIterations,
int);
95 vtkGetMacro(IterationsPerLayout,
int);
105 vtkGetMacro(CoolDownRate,
double);
134 vtkGetMacro(InitialTemperature,
float);
162 double GraphBounds[6];
171 struct vtkLayoutVertex_t
176 using vtkLayoutVertex =
struct vtkLayoutVertex_t;
180 struct vtkLayoutEdge_t
185 using vtkLayoutEdge =
struct vtkLayoutEdge_t;
188 int IterationsPerLayout;
200 VTK_ABI_NAMESPACE_END
a force directed graph layout algorithm
static vtkForceDirectedLayoutStrategy * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Layout() override
This is the layout method where the graph that was set in SetGraph() is laid out.
vtkTypeBool RandomInitialPoints
double InitialTemperature
void Initialize() override
This strategy sets up some data structures for faster processing of each Layout() call.
~vtkForceDirectedLayoutStrategy() override
vtkForceDirectedLayoutStrategy()
vtkTypeBool ThreeDimensionalLayout
vtkTypeBool AutomaticBoundsComputation
int IsLayoutComplete() override
I'm an iterative layout so this method lets the caller know if I'm done laying out the graph.
int MaxNumberOfIterations
abstract superclass for all graph layout strategies
a simple class to control print indentation