VTK  9.4.20250102
vtkCirclePackFrontChainLayoutStrategy.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
32#ifndef vtkCirclePackFrontChainLayoutStrategy_h
33#define vtkCirclePackFrontChainLayoutStrategy_h
34
36#include "vtkInfovisLayoutModule.h" // For export macro
37
38VTK_ABI_NAMESPACE_BEGIN
39class vtkCirclePackFrontChainLayoutStrategyImplementation;
40
41class VTKINFOVISLAYOUT_EXPORT vtkCirclePackFrontChainLayoutStrategy
43{
44public:
46
48 void PrintSelf(ostream& os, vtkIndent indent) override;
49
55 void Layout(vtkTree* inputTree, vtkDataArray* areaArray, vtkDataArray* sizeArray) override;
56
58
62 vtkGetMacro(Width, int);
63 vtkSetMacro(Width, int);
64 vtkGetMacro(Height, int);
65 vtkSetMacro(Height, int);
67
68protected:
71
73 int Width;
74 int Height;
75
76private:
77 vtkCirclePackFrontChainLayoutStrategyImplementation* pimpl; // Private implementation
78
80 void operator=(const vtkCirclePackFrontChainLayoutStrategy&) = delete;
81};
82
83VTK_ABI_NAMESPACE_END
84#endif
layout a vtkTree into packed circles using the front chain algorithm.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Layout(vtkTree *inputTree, vtkDataArray *areaArray, vtkDataArray *sizeArray) override
Perform the layout of the input tree, and store the circle bounds of each vertex as a tuple in a data...
static vtkCirclePackFrontChainLayoutStrategy * New()
abstract superclass for all circle packing layout strategies.
abstract superclass for arrays of numeric data
a simple class to control print indentation
Definition vtkIndent.h:108
A rooted tree data structure.
Definition vtkTree.h:155