VTK
vtkSelectionNode.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkSelectionNode.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html 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 =========================================================================*/
52 #ifndef vtkSelectionNode_h
53 #define vtkSelectionNode_h
54 
55 #include "vtkCommonDataModelModule.h" // For export macro
56 #include "vtkObject.h"
57 
58 class vtkAbstractArray;
60 class vtkInformation;
64 class vtkProp;
65 class vtkTable;
66 
67 class VTKCOMMONDATAMODEL_EXPORT vtkSelectionNode : public vtkObject
68 {
69 public:
70  vtkTypeMacro(vtkSelectionNode,vtkObject);
71  void PrintSelf(ostream& os, vtkIndent indent) override;
72  static vtkSelectionNode* New();
73 
77  virtual void Initialize();
78 
80 
83  virtual void SetSelectionList(vtkAbstractArray*);
84  virtual vtkAbstractArray* GetSelectionList();
86 
88 
91  virtual void SetSelectionData(vtkDataSetAttributes* data);
92  vtkGetObjectMacro(SelectionData, vtkDataSetAttributes);
94 
96 
99  vtkGetObjectMacro(Properties, vtkInformation);
101 
105  virtual void DeepCopy(vtkSelectionNode* src);
106 
112  virtual void ShallowCopy(vtkSelectionNode* src);
113 
117  vtkMTimeType GetMTime() override;
118 
119  // vtkSelectionNode specific keys follow:
127  static vtkInformationIntegerKey* CONTENT_TYPE();
128 
134  {
145  USER
146  };
147 
149 
153  virtual void SetContentType(int type);
154  virtual int GetContentType();
156 
163  static vtkInformationIntegerKey* FIELD_TYPE();
164 
167  {
173  ROW
174  };
175 
177 
181  virtual void SetFieldType(int type);
182  virtual int GetFieldType();
184 
186 
190  static int ConvertSelectionFieldToAttributeType(int val);
191  static int ConvertAttributeTypeToSelectionField(int val);
193 
195 
198  vtkSetStringMacro(QueryString);
199  vtkGetStringMacro(QueryString);
201 
205  static vtkInformationDoubleKey* EPSILON();
206 
210  static vtkInformationDoubleKey* ZBUFFER_VALUE();
211 
216  static vtkInformationIntegerKey* CONTAINING_CELLS();
217 
225  static vtkInformationIntegerKey* COMPONENT_NUMBER();
226 
230  static vtkInformationIntegerKey* INVERSE();
231 
236  static vtkInformationIntegerKey* PIXEL_COUNT();
237 
241  static vtkInformationObjectBaseKey* SOURCE();
242 
247  static vtkInformationIntegerKey* SOURCE_ID();
248 
252  static vtkInformationObjectBaseKey* PROP();
253 
258  static vtkInformationIntegerKey* PROP_ID();
259 
263  static vtkInformationIntegerKey* PROCESS_ID();
264 
268  static vtkInformationIntegerKey* COMPOSITE_INDEX();
269 
271 
274  static vtkInformationIntegerKey* HIERARCHICAL_LEVEL();
275  static vtkInformationIntegerKey* HIERARCHICAL_INDEX();
277 
283  static vtkInformationIntegerKey* INDEXED_VERTICES();
284 
289  void UnionSelectionList(vtkSelectionNode* other);
290 
296  void SubtractSelectionList(vtkSelectionNode* other);
297 
301  bool EqualProperties(vtkSelectionNode* other, bool fullcompare=true);
302 
303 protected:
305  ~vtkSelectionNode() override;
306 
309  char* QueryString;
310 
311 private:
312  vtkSelectionNode(const vtkSelectionNode&) = delete;
313  void operator=(const vtkSelectionNode&) = delete;
314 
315 };
316 
317 #endif
vtkSelectionNode
A node in a selection tree. Used to store selection results.
Definition: vtkSelectionNode.h:67
vtkSelectionNode::Properties
vtkInformation * Properties
Definition: vtkSelectionNode.h:307
vtkSelectionNode::LOCATIONS
Select entities near the supplied world coordinates.
Definition: vtkSelectionNode.h:141
vtkX3D::type
Definition: vtkX3D.h:516
vtkDataSetAttributes
represent and manipulate attribute data in a dataset
Definition: vtkDataSetAttributes.h:59
vtkX3D::data
Definition: vtkX3D.h:315
vtkSelectionNode::SelectionData
vtkDataSetAttributes * SelectionData
Definition: vtkSelectionNode.h:308
vtkTable
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:68
vtkSelectionNode::PEDIGREEIDS
Select entities that have some identifiable pedigree.
Definition: vtkSelectionNode.h:137
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkSelectionNode::QueryString
char * QueryString
Definition: vtkSelectionNode.h:309
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:59
vtkSelectionNode::QUERY
Select entities with a text query.
Definition: vtkSelectionNode.h:144
vtkSelectionNode::FRUSTUM
Select entities contained within a viewing frustum.
Definition: vtkSelectionNode.h:140
vtkSelectionNode::SelectionContent
SelectionContent
Indicate the means by which data is selected.
Definition: vtkSelectionNode.h:133
vtkInformationDoubleKey
Key for double values in vtkInformation.
Definition: vtkInformationDoubleKey.h:34
vtkSelectionNode::VALUES
Select entities that take on specific array values.
Definition: vtkSelectionNode.h:138
vtkSelectionNode::POINT
The selection data provided is point-data.
Definition: vtkSelectionNode.h:169
vtkSelectionNode::VERTEX
The selection data provided is graph vertex-data.
Definition: vtkSelectionNode.h:171
vtkObject::GetMTime
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkSelectionNode::BLOCKS
Select blocks within a composite dataset by their flat index.
Definition: vtkSelectionNode.h:143
vtkInformationObjectBaseKey
Key for vtkObjectBase values.
Definition: vtkInformationObjectBaseKey.h:36
vtkInformationIntegerKey
Key for integer values in vtkInformation.
Definition: vtkInformationIntegerKey.h:34
vtkSelectionNode::GLOBALIDS
Select entities called out by their globally-unique IDs.
Definition: vtkSelectionNode.h:136
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkSelectionNode::FIELD
The selection data provided is field-data.
Definition: vtkSelectionNode.h:170
vtkObject.h
vtkAbstractArray
Abstract superclass for all arrays.
Definition: vtkAbstractArray.h:78
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkProp
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:52
vtkSelectionNode::SelectionField
SelectionField
Indicate the types of entities to which the selection-data applies.
Definition: vtkSelectionNode.h:166
vtkSelectionNode::THRESHOLDS
Select entities whose array values fall within a given threshold.
Definition: vtkSelectionNode.h:142
vtkSelectionNode::SELECTIONS
Deprecated.
Definition: vtkSelectionNode.h:135
vtkSelectionNode::EDGE
The selection data provided is graph edge-data.
Definition: vtkSelectionNode.h:172
vtkSelectionNode::INDICES
Select entities by their offsets into the dataset.
Definition: vtkSelectionNode.h:139
vtkSelectionNode::CELL
The selection data provided is cell-data.
Definition: vtkSelectionNode.h:168
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:302