VTK  9.1.0
vtkOutlineFilter.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkOutlineFilter.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=========================================================================*/
44#ifndef vtkOutlineFilter_h
45#define vtkOutlineFilter_h
46
47#include "vtkFiltersModelingModule.h" // For export macro
49
50class VTKFILTERSMODELING_EXPORT vtkOutlineFilter : public vtkPolyDataAlgorithm
51{
52public:
54
59 void PrintSelf(ostream& os, vtkIndent indent) override;
61
63
66 vtkSetMacro(GenerateFaces, vtkTypeBool);
67 vtkBooleanMacro(GenerateFaces, vtkTypeBool);
68 vtkGetMacro(GenerateFaces, vtkTypeBool);
70
72 {
73 ROOT_LEVEL = 0,
74 LEAF_DATASETS = 1,
75 ROOT_AND_LEAFS = 2,
76 SPECIFIED_INDEX = 3
77 };
78
80
90 vtkSetMacro(CompositeStyle, int);
91 vtkGetMacro(CompositeStyle, int);
92 void SetCompositeStyleToRoot() { this->SetCompositeStyle(ROOT_LEVEL); }
93 void SetCompositeStyleToLeafs() { this->SetCompositeStyle(LEAF_DATASETS); }
94 void SetCompositeStyleToRootAndLeafs() { this->SetCompositeStyle(ROOT_AND_LEAFS); }
95 void SetCompositeStyleToSpecifiedIndex() { this->SetCompositeStyle(SPECIFIED_INDEX); }
97
99
106 void AddIndex(unsigned int index);
107 void RemoveIndex(unsigned int index);
110
112
117 vtkSetMacro(OutputPointsPrecision, int);
118 vtkGetMacro(OutputPointsPrecision, int);
120
121protected:
124
128
129 class vtkIndexSet;
130 vtkIndexSet* Indices;
131
132 void AppendOutline(vtkPoints* pts, vtkCellArray* lines, vtkCellArray* faces, double bds[6]);
133
136
137private:
138 vtkOutlineFilter(const vtkOutlineFilter&) = delete;
139 void operator=(const vtkOutlineFilter&) = delete;
140};
141
142#endif
object to represent cell connectivity
Definition: vtkCellArray.h:190
a simple class to control print indentation
Definition: vtkIndent.h:43
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:43
Superclass for algorithms that produce only polydata as output.
@ info
Definition: vtkX3D.h:382
@ port
Definition: vtkX3D.h:453
@ index
Definition: vtkX3D.h:252
int vtkTypeBool
Definition: vtkABI.h:69