41 #ifndef vtkSimple3DCirclesStrategyH
42 #define vtkSimple3DCirclesStrategyH 1
44 #include "vtkInfovisLayoutModule.h"
46 #include "vtkVariant.h"
48 class vtkAbstractArray;
52 class vtkSimple3DCirclesStrategyInternal;
59 void PrintSelf( ostream& os, vtkIndent indent );
64 FixedRadiusMethod = 0, FixedDistanceMethod = 1
71 vtkSetMacro(Method,
int);
72 vtkGetMacro(Method,
int);
78 vtkSetMacro(Radius,
double);
79 vtkGetMacro(Radius,
double);
85 vtkSetMacro(Height,
double);
86 vtkGetMacro(Height,
double);
91 vtkSetVector3Macro(Origin,
double);
92 vtkGetVector3Macro(Origin,
double);
98 virtual void SetDirection(
double dx,
double dy,
double dz );
99 virtual void SetDirection(
double d[3] );
100 vtkGetVector3Macro(Direction,
double);
109 virtual void SetMarkedStartVertices( vtkAbstractArray * _arg );
110 vtkGetObjectMacro(MarkedStartVertices,vtkAbstractArray);
114 virtual void SetMarkedValue( vtkVariant _arg );
115 virtual vtkVariant GetMarkedValue(
void );
122 vtkSetMacro(ForceToUseUniversalStartPointsFinder,
int);
123 vtkGetMacro(ForceToUseUniversalStartPointsFinder,
int);
124 vtkBooleanMacro(ForceToUseUniversalStartPointsFinder,
int);
131 vtkSetMacro(AutoHeight,
int);
132 vtkGetMacro(AutoHeight,
int);
133 vtkBooleanMacro(AutoHeight,
int);
137 vtkSetMacro(MinimumRadian,
double);
138 vtkGetMacro(MinimumRadian,
double);
143 virtual void SetMinimumDegree(
double degree );
144 virtual double GetMinimumDegree(
void );
151 virtual void SetHierarchicalLayers( vtkIntArray * _arg );
152 vtkGetObjectMacro(HierarchicalLayers,vtkIntArray);
159 virtual void SetHierarchicalOrder( vtkIdTypeArray * _arg );
160 vtkGetObjectMacro(HierarchicalOrder,vtkIdTypeArray);
163 virtual void Layout(
void );
167 virtual void SetGraph( vtkGraph * graph );
174 inline void Transform(
double Local[],
double Global[] );
195 virtual int UniversalStartPoints(
vtkDirectedGraph * input, vtkSimple3DCirclesStrategyInternal *
target, vtkSimple3DCirclesStrategyInternal *StandAlones, vtkIntArray * layers );
199 virtual int BuildLayers(
vtkDirectedGraph * input, vtkSimple3DCirclesStrategyInternal *
source, vtkIntArray * layers );
201 virtual void BuildPointOrder(
vtkDirectedGraph * input, vtkSimple3DCirclesStrategyInternal *
source, vtkSimple3DCirclesStrategyInternal *StandAlones, vtkIntArray * layers, vtkIdTypeArray * order );
boost::graph_traits< vtkGraph * >::vertex_descriptor target(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
virtual void SetGraph(vtkGraph *graph)
int ForceToUseUniversalStartPointsFinder
abstract superclass for all graph layout strategies
vtkIntArray * HierarchicalLayers
places vertices on circles in 3D
vtkAbstractArray * MarkedStartVertices
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
vtkIdTypeArray * HierarchicalOrder
boost::graph_traits< vtkGraph * >::degree_size_type degree(boost::graph_traits< vtkGraph * >::vertex_descriptor u, vtkGraph *g)
void PrintSelf(ostream &os, vtkIndent indent)