VTK: Infovis/Layout/vtkTreeLayoutStrategy.h Source File

| VTK 9.3.1

vtkTreeLayoutStrategy.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2008 Sandia Corporation
3 // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-USGov
33 #ifndef vtkTreeLayoutStrategy_h
34 #define vtkTreeLayoutStrategy_h
35
36 #include "vtkGraphLayoutStrategy.h"
37 #include "vtkInfovisLayoutModule.h" // For export macro
38
39 VTK_ABI_NAMESPACE_BEGIN
40 class VTKINFOVISLAYOUT_EXPORT vtkTreeLayoutStrategy : public vtkGraphLayoutStrategy
41 {
42 public:
43 static vtkTreeLayoutStrategy* New();
44
45 vtkTypeMacro(vtkTreeLayoutStrategy, vtkGraphLayoutStrategy);
46 void PrintSelf(ostream& os, vtkIndent indent) override;
47
51 void Layout() override;
52
54
59 vtkSetClampMacro(Angle, double, 0, 360);
60 vtkGetMacro(Angle, double);
62
64
69 vtkSetMacro(Radial, bool);
70 vtkGetMacro(Radial, bool);
71 vtkBooleanMacro(Radial, bool);
73
75
81 vtkSetMacro(LogSpacingValue, double);
82 vtkGetMacro(LogSpacingValue, double);
84
86
91 vtkSetClampMacro(LeafSpacing, double, 0.0, 1.0);
92 vtkGetMacro(LeafSpacing, double);
94
96
100 vtkSetStringMacro(DistanceArrayName);
101 vtkGetStringMacro(DistanceArrayName);
103
105
109 vtkSetMacro(Rotation, double);
110 vtkGetMacro(Rotation, double);
112
114
119 vtkSetMacro(ReverseEdges, bool);
120 vtkGetMacro(ReverseEdges, bool);
121 vtkBooleanMacro(ReverseEdges, bool);
123
124 protected:
125 vtkTreeLayoutStrategy();
126 ~vtkTreeLayoutStrategy() override;
127
128 double Angle;
129 bool Radial;
130 double LogSpacingValue;
131 double LeafSpacing;
132 char* DistanceArrayName;
133 double Rotation;
134 bool ReverseEdges;
135
136 private:
137 vtkTreeLayoutStrategy(const vtkTreeLayoutStrategy&) = delete;
138 void operator=(const vtkTreeLayoutStrategy&) = delete;
139 };
140
141 VTK_ABI_NAMESPACE_END
142 #endif
vtkGraphLayoutStrategy
abstract superclass for all graph layout strategies
Definition: vtkGraphLayoutStrategy.h:40
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkTreeLayoutStrategy
hierarchical layout
Definition: vtkTreeLayoutStrategy.h:41
vtkTreeLayoutStrategy::LogSpacingValue
double LogSpacingValue
Definition: vtkTreeLayoutStrategy.h:130
vtkTreeLayoutStrategy::Rotation
double Rotation
Definition: vtkTreeLayoutStrategy.h:133
vtkTreeLayoutStrategy::vtkTreeLayoutStrategy
vtkTreeLayoutStrategy()
vtkTreeLayoutStrategy::Angle
double Angle
Definition: vtkTreeLayoutStrategy.h:128
vtkTreeLayoutStrategy::Layout
void Layout() override
Perform the tree layout.
vtkTreeLayoutStrategy::New
static vtkTreeLayoutStrategy * New()
vtkTreeLayoutStrategy::Radial
bool Radial
Definition: vtkTreeLayoutStrategy.h:129
vtkTreeLayoutStrategy::~vtkTreeLayoutStrategy
~vtkTreeLayoutStrategy() override
vtkTreeLayoutStrategy::DistanceArrayName
char * DistanceArrayName
Definition: vtkTreeLayoutStrategy.h:132
vtkTreeLayoutStrategy::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTreeLayoutStrategy::ReverseEdges
bool ReverseEdges
Definition: vtkTreeLayoutStrategy.h:134
vtkTreeLayoutStrategy::LeafSpacing
double LeafSpacing
Definition: vtkTreeLayoutStrategy.h:131
vtkGraphLayoutStrategy.h