VTK  9.1.0
vtkTreeLayoutStrategy.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkTreeLayoutStrategy.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2008 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
43 #ifndef vtkTreeLayoutStrategy_h
44 #define vtkTreeLayoutStrategy_h
45 
46 #include "vtkGraphLayoutStrategy.h"
47 #include "vtkInfovisLayoutModule.h" // For export macro
48 
49 class VTKINFOVISLAYOUT_EXPORT vtkTreeLayoutStrategy : public vtkGraphLayoutStrategy
50 {
51 public:
53 
55  void PrintSelf(ostream& os, vtkIndent indent) override;
56 
60  void Layout() override;
61 
63 
68  vtkSetClampMacro(Angle, double, 0, 360);
69  vtkGetMacro(Angle, double);
71 
73 
78  vtkSetMacro(Radial, bool);
79  vtkGetMacro(Radial, bool);
80  vtkBooleanMacro(Radial, bool);
82 
84 
90  vtkSetMacro(LogSpacingValue, double);
91  vtkGetMacro(LogSpacingValue, double);
93 
95 
100  vtkSetClampMacro(LeafSpacing, double, 0.0, 1.0);
101  vtkGetMacro(LeafSpacing, double);
103 
105 
109  vtkSetStringMacro(DistanceArrayName);
110  vtkGetStringMacro(DistanceArrayName);
112 
114 
118  vtkSetMacro(Rotation, double);
119  vtkGetMacro(Rotation, double);
121 
123 
128  vtkSetMacro(ReverseEdges, bool);
129  vtkGetMacro(ReverseEdges, bool);
130  vtkBooleanMacro(ReverseEdges, bool);
132 
133 protected:
136 
137  double Angle;
138  bool Radial;
140  double LeafSpacing;
142  double Rotation;
144 
145 private:
147  void operator=(const vtkTreeLayoutStrategy&) = delete;
148 };
149 
150 #endif
abstract superclass for all graph layout strategies
a simple class to control print indentation
Definition: vtkIndent.h:34
void Layout() override
Perform the tree layout.
static vtkTreeLayoutStrategy * New()
~vtkTreeLayoutStrategy() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.