46#ifndef vtkForceDirectedLayoutStrategy_h
47#define vtkForceDirectedLayoutStrategy_h
50#include "vtkInfovisLayoutModule.h"
67 vtkGetMacro(RandomSeed,
int);
76 vtkSetVector6Macro(GraphBounds,
double);
77 vtkGetVectorMacro(GraphBounds,
double, 6);
99 vtkGetMacro(MaxNumberOfIterations,
int);
110 vtkGetMacro(IterationsPerLayout,
int);
120 vtkGetMacro(CoolDownRate,
double);
149 vtkGetMacro(InitialTemperature,
float);
177 double GraphBounds[6];
186 struct vtkLayoutVertex_t
191 using vtkLayoutVertex =
struct vtkLayoutVertex_t;
195 struct vtkLayoutEdge_t
200 using vtkLayoutEdge =
struct vtkLayoutEdge_t;
203 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