VTK  9.1.0
vtkCellDistanceSelector.h
Go to the documentation of this file.
1/*=========================================================================
2
3Program: Visualization Toolkit
4Module: vtkCellDistanceSelector
5
6Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7All rights reserved.
8See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10This software is distributed WITHOUT ANY WARRANTY; without even
11the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
34#ifndef vtkCellDistanceSelector_h
35#define vtkCellDistanceSelector_h
36
37#include "vtkFiltersSelectionModule.h" // For export macro
39#include "vtkSmartPointer.h" // For smart pointers
40
41class vtkDataSet;
42class vtkSelection;
44class vtkDataArray;
45
49class VTKFILTERSSELECTION_EXPORT vtkCellDistanceSelector : public vtkSelectionAlgorithm
50{
51public:
54 void PrintSelf(ostream& os, vtkIndent indent) override;
56
58
63 {
64 INPUT_MESH = 0,
65 INPUT_SELECTION = 1
66 };
67
72
76 void SetInputMesh(vtkDataObject* obj) { this->SetInputData(INPUT_MESH, obj); }
77
82 {
83 this->SetInputConnection(INPUT_SELECTION, in);
84 }
85
89 void SetInputSelection(vtkSelection* obj) { this->SetInputData(INPUT_SELECTION, obj); }
90
92
95 vtkSetMacro(Distance, int);
96 vtkGetMacro(Distance, int);
98
100
103 vtkSetMacro(IncludeSeed, vtkTypeBool);
104 vtkGetMacro(IncludeSeed, vtkTypeBool);
105 vtkBooleanMacro(IncludeSeed, vtkTypeBool);
107
109
113 vtkSetMacro(AddIntermediate, vtkTypeBool);
114 vtkGetMacro(AddIntermediate, vtkTypeBool);
115 vtkBooleanMacro(AddIntermediate, vtkTypeBool);
117
118protected:
121
123 vtkSelection* output, vtkSmartPointer<vtkDataArray> outIndices, int partNumber, int d);
124
127
133
139
145
146private:
148 void operator=(const vtkCellDistanceSelector&) = delete;
149};
150
151#endif /* vtkCellDistanceSelector_h */
Proxy object to connect input/output ports.
virtual void SetInputConnection(int port, vtkAlgorithmOutput *input)
Set the connection for the given input port index.
Grows a selection, selecting neighbor cells, up to a user defined topological distance.
vtkTypeBool IncludeSeed
Decide whether seed cells are included in selection Default: 1.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void SetInputSelection(vtkSelection *obj)
A convenience method to set the input selection.
static vtkCellDistanceSelector * New()
~vtkCellDistanceSelector() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetInputMesh(vtkDataObject *obj)
A convenience method to set the input data object.
void SetInputMeshConnection(vtkAlgorithmOutput *in)
A convenience method to set the data object input connection to the producer output.
int Distance
Tological radius from seed cells to be used to select cells Default: 1.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
InputPorts
enumeration values to specify input port types
void SetInputSelectionConnection(vtkAlgorithmOutput *in)
A convenience method to set the selection input connection to the producer output.
void AddSelectionNode(vtkSelection *output, vtkSmartPointer< vtkDataArray > outIndices, int partNumber, int d)
vtkTypeBool AddIntermediate
Decide whether at distance between 1 and Distance-1 are included in selection Default: 1.
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:159
general representation of visualization data
abstract class to specify dataset behavior
Definition: vtkDataSet.h:166
a simple class to control print indentation
Definition: vtkIndent.h:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only Selection as output.
void SetInputData(vtkDataObject *obj)
Assign a data object as input.
data object that represents a "selection" in VTK.
Definition: vtkSelection.h:163
@ info
Definition: vtkX3D.h:382
@ port
Definition: vtkX3D.h:453
int vtkTypeBool
Definition: vtkABI.h:69