VTK  9.2.20221001
vtkCellType.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCellType.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 =========================================================================*/
65 #ifndef vtkCellType_h
66 #define vtkCellType_h
67 
68 #include "vtkABINamespace.h"
69 
70 // To add a new cell type, define a new integer type flag here, then
71 // create a subclass of vtkCell to implement the proper behavior. You
72 // may have to modify the following methods: vtkDataSet (and subclasses)
73 // GetCell() and vtkGenericCell::SetCellType(). Also, to do the job right,
74 // you'll also have to modify some filters (vtkGeometryFilter...) and
75 // regression tests (example scripts) to reflect the new cell addition.
76 // Also, make sure to update vtkCellTypesStrings in vtkCellTypes.cxx
77 // and the vtkCellTypes::IsLinear method in vtkCellTypes.h.
78 
79 // .SECTION Caveats
80 // An unstructured grid stores the types of its cells as a
81 // unsigned char array. Therefore, the maximum encoding number for a cell type
82 // is 255.
83 
84 VTK_ABI_NAMESPACE_BEGIN
85 typedef enum
86 {
87  // Linear cells
91  VTK_LINE = 3,
96  VTK_PIXEL = 8,
97  VTK_QUAD = 9,
98  VTK_TETRA = 10,
99  VTK_VOXEL = 11,
101  VTK_WEDGE = 13,
105 
106  // Quadratic, isoparametric cells
123 
124  // Cubic, isoparametric cell
126 
127  // Special class of cells formed by convex group of points
129 
130  // Polyhedron cell (consisting of polygonal faces)
132 
133  // Higher order cells in parametric form
140 
141  // Higher order cells
150 
151  // Arbitrary order Lagrange elements (formulated separated from generic higher order cells)
159 
160  // Arbitrary order Bezier elements (formulated separated from generic higher order cells)
168 
171 
172 VTK_ABI_NAMESPACE_END
173 #endif
174 // VTK-HeaderTest-Exclude: vtkCellType.h
VTKCellType
Definition: vtkCellType.h:86
@ VTK_VOXEL
Definition: vtkCellType.h:99
@ VTK_QUADRATIC_HEXAHEDRON
Definition: vtkCellType.h:112
@ VTK_PARAMETRIC_SURFACE
Definition: vtkCellType.h:135
@ VTK_HIGHER_ORDER_TETRAHEDRON
Definition: vtkCellType.h:146
@ VTK_TRIANGLE_STRIP
Definition: vtkCellType.h:94
@ VTK_BIQUADRATIC_QUADRATIC_HEXAHEDRON
Definition: vtkCellType.h:121
@ VTK_NUMBER_OF_CELL_TYPES
Definition: vtkCellType.h:169
@ VTK_LAGRANGE_CURVE
Definition: vtkCellType.h:152
@ VTK_HIGHER_ORDER_QUAD
Definition: vtkCellType.h:144
@ VTK_PYRAMID
Definition: vtkCellType.h:102
@ VTK_PIXEL
Definition: vtkCellType.h:96
@ VTK_QUADRATIC_WEDGE
Definition: vtkCellType.h:113
@ VTK_BEZIER_WEDGE
Definition: vtkCellType.h:166
@ VTK_BIQUADRATIC_QUAD
Definition: vtkCellType.h:115
@ VTK_HIGHER_ORDER_WEDGE
Definition: vtkCellType.h:147
@ VTK_LAGRANGE_QUADRILATERAL
Definition: vtkCellType.h:154
@ VTK_POLY_LINE
Definition: vtkCellType.h:92
@ VTK_TRIQUADRATIC_PYRAMID
Definition: vtkCellType.h:117
@ VTK_TRIANGLE
Definition: vtkCellType.h:93
@ VTK_BEZIER_TRIANGLE
Definition: vtkCellType.h:162
@ VTK_POLYGON
Definition: vtkCellType.h:95
@ VTK_EMPTY_CELL
Definition: vtkCellType.h:88
@ VTK_QUADRATIC_PYRAMID
Definition: vtkCellType.h:114
@ VTK_POLYHEDRON
Definition: vtkCellType.h:131
@ VTK_TRIQUADRATIC_HEXAHEDRON
Definition: vtkCellType.h:116
@ VTK_TETRA
Definition: vtkCellType.h:98
@ VTK_LINE
Definition: vtkCellType.h:91
@ VTK_CONVEX_POINT_SET
Definition: vtkCellType.h:128
@ VTK_BEZIER_HEXAHEDRON
Definition: vtkCellType.h:165
@ VTK_PARAMETRIC_TRI_SURFACE
Definition: vtkCellType.h:136
@ VTK_LAGRANGE_WEDGE
Definition: vtkCellType.h:157
@ VTK_LAGRANGE_HEXAHEDRON
Definition: vtkCellType.h:156
@ VTK_PENTAGONAL_PRISM
Definition: vtkCellType.h:103
@ VTK_HIGHER_ORDER_TRIANGLE
Definition: vtkCellType.h:143
@ VTK_QUADRATIC_QUAD
Definition: vtkCellType.h:109
@ VTK_WEDGE
Definition: vtkCellType.h:101
@ VTK_PARAMETRIC_QUAD_SURFACE
Definition: vtkCellType.h:137
@ VTK_LAGRANGE_TETRAHEDRON
Definition: vtkCellType.h:155
@ VTK_PARAMETRIC_CURVE
Definition: vtkCellType.h:134
@ VTK_BEZIER_CURVE
Definition: vtkCellType.h:161
@ VTK_HIGHER_ORDER_PYRAMID
Definition: vtkCellType.h:148
@ VTK_HEXAGONAL_PRISM
Definition: vtkCellType.h:104
@ VTK_PARAMETRIC_HEX_REGION
Definition: vtkCellType.h:139
@ VTK_BEZIER_QUADRILATERAL
Definition: vtkCellType.h:163
@ VTK_QUADRATIC_LINEAR_WEDGE
Definition: vtkCellType.h:119
@ VTK_HEXAHEDRON
Definition: vtkCellType.h:100
@ VTK_CUBIC_LINE
Definition: vtkCellType.h:125
@ VTK_LAGRANGE_TRIANGLE
Definition: vtkCellType.h:153
@ VTK_HIGHER_ORDER_HEXAHEDRON
Definition: vtkCellType.h:149
@ VTK_QUADRATIC_POLYGON
Definition: vtkCellType.h:110
@ VTK_QUAD
Definition: vtkCellType.h:97
@ VTK_QUADRATIC_TRIANGLE
Definition: vtkCellType.h:108
@ VTK_PARAMETRIC_TETRA_REGION
Definition: vtkCellType.h:138
@ VTK_QUADRATIC_EDGE
Definition: vtkCellType.h:107
@ VTK_QUADRATIC_TETRA
Definition: vtkCellType.h:111
@ VTK_HIGHER_ORDER_EDGE
Definition: vtkCellType.h:142
@ VTK_LAGRANGE_PYRAMID
Definition: vtkCellType.h:158
@ VTK_BEZIER_TETRAHEDRON
Definition: vtkCellType.h:164
@ VTK_VERTEX
Definition: vtkCellType.h:89
@ VTK_POLY_VERTEX
Definition: vtkCellType.h:90
@ VTK_QUADRATIC_LINEAR_QUAD
Definition: vtkCellType.h:118
@ VTK_BEZIER_PYRAMID
Definition: vtkCellType.h:167
@ VTK_BIQUADRATIC_QUADRATIC_WEDGE
Definition: vtkCellType.h:120
@ VTK_HIGHER_ORDER_POLYGON
Definition: vtkCellType.h:145
@ VTK_BIQUADRATIC_TRIANGLE
Definition: vtkCellType.h:122