VTK  9.3.20240420
vtkOutlineFilter.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
138#ifndef vtkOutlineFilter_h
139#define vtkOutlineFilter_h
140
141#include "vtkFiltersModelingModule.h" // For export macro
142#include "vtkPolyDataAlgorithm.h"
143
144VTK_ABI_NAMESPACE_BEGIN
145class VTKFILTERSMODELING_EXPORT vtkOutlineFilter : public vtkPolyDataAlgorithm
146{
147public:
149
154 void PrintSelf(ostream& os, vtkIndent indent) override;
156
158
161 vtkSetMacro(GenerateFaces, vtkTypeBool);
162 vtkBooleanMacro(GenerateFaces, vtkTypeBool);
163 vtkGetMacro(GenerateFaces, vtkTypeBool);
165
167 {
168 ROOT_LEVEL = 0,
169 LEAF_DATASETS = 1,
170 ROOT_AND_LEAFS = 2,
171 SPECIFIED_INDEX = 3
172 };
173
175
185 vtkSetMacro(CompositeStyle, int);
186 vtkGetMacro(CompositeStyle, int);
187 void SetCompositeStyleToRoot() { this->SetCompositeStyle(ROOT_LEVEL); }
188 void SetCompositeStyleToLeafs() { this->SetCompositeStyle(LEAF_DATASETS); }
189 void SetCompositeStyleToRootAndLeafs() { this->SetCompositeStyle(ROOT_AND_LEAFS); }
190 void SetCompositeStyleToSpecifiedIndex() { this->SetCompositeStyle(SPECIFIED_INDEX); }
192
194
201 void AddIndex(unsigned int index);
202 void RemoveIndex(unsigned int index);
205
207
212 vtkSetMacro(OutputPointsPrecision, int);
213 vtkGetMacro(OutputPointsPrecision, int);
215
216protected:
219
223
224 class vtkIndexSet;
225 vtkIndexSet* Indices;
226
227 void AppendOutline(vtkPoints* pts, vtkCellArray* lines, vtkCellArray* faces, double bds[6]);
228
230 int FillInputPortInformation(int port, vtkInformation* info) override;
231
232private:
233 vtkOutlineFilter(const vtkOutlineFilter&) = delete;
234 void operator=(const vtkOutlineFilter&) = delete;
235};
236
237VTK_ABI_NAMESPACE_END
238#endif
object to represent cell connectivity
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
create wireframe outline for an arbitrary data set or composite dataset
void SetCompositeStyleToRootAndLeafs()
Specify a style for creating bounding boxes around input composite datasets.
void RemoveAllIndices()
If the composite style is set to SpecifiedIndex, then one or more flat indices can be specified,...
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void SetCompositeStyleToLeafs()
Specify a style for creating bounding boxes around input composite datasets.
void RemoveIndex(unsigned int index)
If the composite style is set to SpecifiedIndex, then one or more flat indices can be specified,...
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void AppendOutline(vtkPoints *pts, vtkCellArray *lines, vtkCellArray *faces, double bds[6])
void SetCompositeStyleToSpecifiedIndex()
Specify a style for creating bounding boxes around input composite datasets.
void AddIndex(unsigned int index)
If the composite style is set to SpecifiedIndex, then one or more flat indices can be specified,...
~vtkOutlineFilter() override
static vtkOutlineFilter * New()
Standard methods for instantiation.
vtkTypeBool GenerateFaces
vtkIndexSet * Indices
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instantiation.
void SetCompositeStyleToRoot()
Specify a style for creating bounding boxes around input composite datasets.
represent and manipulate 3D points
Definition vtkPoints.h:139
Superclass for algorithms that produce only polydata as output.
int vtkTypeBool
Definition vtkABI.h:64