vtkbone
vtkboneNodeSetsByGeometry.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Copyright 2010-2016, Numerics88 Solutions Ltd.
4  http://www.numerics88.com/
5 
6  Copyright (c) Eric Nodwell and Steven K. Boyd
7  See Copyright.txt for details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notice for more information.
12 =========================================================================*/
13 
29 #ifndef __vtkboneNodeSetsByGeometry_h
30 #define __vtkboneNodeSetsByGeometry_h
31 
32 #include "vtkObject.h"
33 #include "vtkboneWin32Header.h"
34 
35 // Forward declarations
38 class vtkDataSet;
39 class vtkIdTypeArray;
40 class vtkPolyData;
41 class vtkIdList;
42 class vtkPoints;
43 
45 {
46 public:
49  void PrintSelf(ostream& os, vtkIndent indent);
50 
52 
54  static void DetermineMaterialBounds(vtkUnstructuredGrid *geometry,
55  double bounds[6],
56  int specificMaterial = -1);
58 
60 
63  static int FilterPointListByCellScalar(vtkIdTypeArray *output_ids,
64  vtkIdTypeArray *input_ids,
66  int targetCellScalar);
68 
70 
76  static int FindNodesOnPlane(
77  int axis,
78  float val,
79  vtkIdTypeArray *ids,
81  int specificMaterial = -1);
83 
85 
86  static int AddNodesOnPlane(
87  int axis,
88  float val,
89  const char* name,
91  int specificMaterial = -1);
93 
95 
96  static int AddNodesAndElementsOnPlane(
97  int axis,
98  float val,
99  const char* name,
101  int specificMaterial = -1);
103 
105 
109  static int FindNodesIntersectingTwoPlanes(
110  int axis1,
111  float val1,
112  int axis2,
113  float val2,
114  vtkIdTypeArray* ids,
116  int specificMaterial = -1);
118 
120 
122  static int AddNodesIntersectingTwoPlanes(
123  int axis1,
124  float val1,
125  int axis2,
126  float val2,
127  const char* name,
129  int specificMaterial = -1);
131 
133 
135  static int AddNodesAndElementsIntersectingTwoPlanes(
136  int axis1,
137  float val1,
138  int axis2,
139  float val2,
140  const char* name,
142  int specificMaterial = -1);
144 
146 
150  static int FindNodesIntersectingThreePlanes(
151  int axisA,
152  float valA,
153  int axisB,
154  float valB,
155  int axisC,
156  float valC,
157  vtkIdTypeArray *ids,
159  int specificMaterial = -1);
161 
163 
165  static int AddNodesIntersectingThreePlanes(
166  int axisA,
167  float valA,
168  int axisB,
169  float valB,
170  int axisC,
171  float valC,
172  const char* name,
174  int specificMaterial = -1);
176 
178 
180  static int AddNodesAndElementsIntersectingThreePlanes(
181  int axisA,
182  float valA,
183  int axisB,
184  float valB,
185  int axisC,
186  float valC,
187  const char* name,
189  int specificMaterial = -1);
191 
193 
200  static int FindNodesOnVisibleSurface(
201  vtkIdTypeArray *visibleNodesIds,
203  double normalVector[3],
204  int specificMaterial = -1);
206 
208 
209  static int AddNodesOnVisibleSurface(
210  const char* name,
212  double normalVector[3],
213  int specificMaterial = -1);
215 
217 
218  static int AddNodesAndElementsOnVisibleSurface(
219  const char* name,
221  double normalVector[3],
222  int specificMaterial = -1);
224 
225 protected:
228 
229 private:
230  vtkboneNodeSetsByGeometry(const vtkboneNodeSetsByGeometry&); // Not implemented
231  void operator=(const vtkboneNodeSetsByGeometry&); // Not implemented
232 };
233 
234 #endif
data model for finite element meshes
data
#define VTKBONE_EXPORT
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
various algorithms to select nodes sets from a mesh by geometry.
name
static vtkObject * New()
void operator=(const vtkObjectBase &)