43#ifndef vtkForceDirectedLayoutStrategy_h
44#define vtkForceDirectedLayoutStrategy_h
47#include "vtkInfovisLayoutModule.h"
64 vtkGetMacro(RandomSeed,
int);
73 vtkSetVector6Macro(GraphBounds,
double);
74 vtkGetVectorMacro(GraphBounds,
double, 6);
96 vtkGetMacro(MaxNumberOfIterations,
int);
107 vtkGetMacro(IterationsPerLayout,
int);
117 vtkGetMacro(CoolDownRate,
double);
146 vtkGetMacro(InitialTemperature,
float);
174 double GraphBounds[6];
183 struct vtkLayoutVertex_t
188 using vtkLayoutVertex =
struct vtkLayoutVertex_t;
192 struct vtkLayoutEdge_t
197 using vtkLayoutEdge =
struct vtkLayoutEdge_t;
200 int IterationsPerLayout;
a force directed graph layout algorithm
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.
static vtkForceDirectedLayoutStrategy * New()
int MaxNumberOfIterations
abstract superclass for all graph layout strategies
a simple class to control print indentation