Dune Core Modules (2.6.0)
Unique label for each type of entities that can occur in DUNE grids. More...
#include <dune/geometry/type.hh>
Public Types | |
| enum | BasicType {  simplex , cube , pyramid , prism , extended , none }  | 
| Each entity can be tagged by one of these basic types plus its space dimension.  More... | |
Public Member Functions | |
Constructors  | |
| constexpr | GeometryType () | 
| Default constructor, not initializing anything.  | |
| GeometryType (BasicType basicType, unsigned int dim) | |
| Constructor, using the basic type and the dimension.  More... | |
| constexpr | GeometryType (unsigned int topologyId, unsigned int dim, bool none) | 
| Constructor, using the topologyId (integer), the dimension and a flag for type none.  More... | |
| constexpr | GeometryType (unsigned int topologyId, unsigned int dim) | 
| Constructor, using the topologyId (integer) and the dimension.  More... | |
| template<class TopologyType , class = Dune::void_t<decltype(TopologyType::dimension), decltype(TopologyType::id)>> | |
| GeometryType (TopologyType t) | |
| Constructor from static TopologyType class.  More... | |
| GeometryType (unsigned int dim) | |
| Constructor for vertices and segments.  | |
| GeometryType (int dim) | |
| Constructor for vertices and segments.  | |
Setup Methods  | |
| void | makeVertex () | 
| Make a vertex.  More... | |
| void | makeLine () | 
| Make a line segment.  More... | |
| void | makeTriangle () | 
| Make a triangle.  More... | |
| void | makeQuadrilateral () | 
| Make a quadrilateral.  More... | |
| void | makeTetrahedron () | 
| Make a tetrahedron.  More... | |
| void | makePyramid () | 
| Make a pyramid.  More... | |
| void | makePrism () | 
| Make a prism.  More... | |
| void | makeHexahedron () | 
| Make a hexahedron.  More... | |
| void | makeSimplex (unsigned int dim) | 
| Make a simplex of given dimension.  More... | |
| void | makeCube (unsigned int dim) | 
| Make a hypercube of given dimension.  More... | |
| void | makeNone (unsigned int dim) | 
| Make a singular of given dimension.  More... | |
| void | makeFromVertices (unsigned int dim, unsigned int vertices) | 
| Construct the correct geometry type given the dimension and the number of vertices.  More... | |
Query Methods  | |
| constexpr bool | isVertex () const | 
| Return true if entity is a vertex.  | |
| constexpr bool | isLine () const | 
| Return true if entity is a line segment.  | |
| constexpr bool | isTriangle () const | 
| Return true if entity is a triangle.  | |
| constexpr bool | isQuadrilateral () const | 
| Return true if entity is a quadrilateral.  | |
| constexpr bool | isTetrahedron () const | 
| Return true if entity is a tetrahedron.  | |
| constexpr bool | isPyramid () const | 
| Return true if entity is a pyramid.  | |
| constexpr bool | isPrism () const | 
| Return true if entity is a prism.  | |
| constexpr bool | isHexahedron () const | 
| Return true if entity is a hexahedron.  | |
| constexpr bool | isSimplex () const | 
| Return true if entity is a simplex of any dimension.  | |
| constexpr bool | isCube () const | 
| Return true if entity is a cube of any dimension.  | |
| constexpr bool | isNone () const | 
| Return true if entity is a singular of any dimension.  | |
| constexpr unsigned int | dim () const | 
| Return dimension of the type.  | |
| constexpr unsigned int | id () const | 
| Return the topology id of the type.  | |
Comparison operators  | |
| constexpr bool | operator== (const GeometryType &other) const | 
| Check for equality. This method knows that in dimension 0 and 1 all BasicTypes are equal.  | |
| constexpr bool | operator!= (const GeometryType &other) const | 
| Check for inequality.  | |
| constexpr bool | operator< (const GeometryType &other) const | 
| less-than operation for use with maps  | |
Detailed Description
Unique label for each type of entities that can occur in DUNE grids.
This class has to be extended if a grid implementation with new entity types is added to DUNE.
GeometryType is a C++ "literal type" and can be used in constexpr context if created with a constexpr constructor. 
Member Enumeration Documentation
◆ BasicType
Each entity can be tagged by one of these basic types plus its space dimension.
| Enumerator | |
|---|---|
| simplex | Simplicial element in any nonnegative dimension.  | 
| cube | Cube element in any nonnegative dimension.  | 
| pyramid | Four sided pyramid in three dimensions.  | 
| prism | Prism element in three dimensions.  | 
| extended | Other, more general topology, representable as topologyId.  | 
| none | Even more general topology, cannot be specified by a topologyId. Two GeometryTypes with 'none' type are equal if and only if they have the same dimension.  | 
Constructor & Destructor Documentation
◆ GeometryType() [1/4]
      
  | 
  inline | 
Constructor, using the basic type and the dimension.
- Deprecated:
 - "The GeometryType constructor taking BasicType is deprecated and will be removed after DUNE 2.6" 
 
◆ GeometryType() [2/4]
      
  | 
  inlineconstexpr | 
Constructor, using the topologyId (integer), the dimension and a flag for type none.
- Note
 - With this constructor, you can easily create an invalid GeometryType, it is mostly here for internal use! the TypologyType, users are encouraged to use the GeometryType(TopologyType t) constructor.
 
◆ GeometryType() [3/4]
      
  | 
  inlineconstexpr | 
Constructor, using the topologyId (integer) and the dimension.
- Note
 - the topologyId is a binary encoded representation of the TypologyType, users are encouraged to use the GeometryType(TopologyType t) constructor.
 
◆ GeometryType() [4/4]
      
  | 
  inlineexplicit | 
Constructor from static TopologyType class.
Constructs the GeometryType object from a static topology representation.
- Template Parameters
 - 
  
TopologyType A class providing public static unsigned int members TopologyType::dimension and TopologyType::id. You can e.g. use the Point, Prism and Pyramid structs from the Impl namespace.  
- Parameters
 - 
  
t Any object of type TopologyType. The object t itself is ignored.  
Member Function Documentation
◆ makeCube()
      
  | 
  inline | 
Make a hypercube of given dimension.
- Deprecated:
 - "makeCube(dim) is deprecated in DUNE 2.6, please use Dune::GeometryTypes::cube(dim) instead" 
 
◆ makeFromVertices()
      
  | 
  inline | 
Construct the correct geometry type given the dimension and the number of vertices.
- Note
 - This code only works up to dimension 3. In higher dimensions the number of vertices does not uniquely identify the type of polyhedron.
 
- Deprecated:
 - "Use the utility function geometryTypeFromVertexCount(...) instead." 
 
◆ makeHexahedron()
      
  | 
  inline | 
Make a hexahedron.
- Deprecated:
 - "makeHexahedron() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::hexahedron instead" 
 
◆ makeLine()
      
  | 
  inline | 
Make a line segment.
- Deprecated:
 - "makeLine() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::line instead" 
 
◆ makeNone()
      
  | 
  inline | 
Make a singular of given dimension.
- Deprecated:
 - "makeNone(dim) is deprecated in DUNE 2.6, please use Dune::GeometryTypes::none(dim) instead" 
 
◆ makePrism()
      
  | 
  inline | 
Make a prism.
- Deprecated:
 - "makePrism() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::prism instead" 
 
◆ makePyramid()
      
  | 
  inline | 
Make a pyramid.
- Deprecated:
 - "makePyramid() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::pyramid instead" 
 
◆ makeQuadrilateral()
      
  | 
  inline | 
Make a quadrilateral.
- Deprecated:
 - "makeQuadrilateral() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::quadrilateral instead" 
 
◆ makeSimplex()
      
  | 
  inline | 
Make a simplex of given dimension.
- Deprecated:
 - "makeSimplex(dim) is deprecated in DUNE 2.6, please use Dune::GeometryTypes::simplex(dim) instead" 
 
◆ makeTetrahedron()
      
  | 
  inline | 
Make a tetrahedron.
- Deprecated:
 - "makeTetrahedron() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::tetrahedron instead" 
 
◆ makeTriangle()
      
  | 
  inline | 
Make a triangle.
- Deprecated:
 - "makeTriangle() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::triangle instead" 
 
◆ makeVertex()
      
  | 
  inline | 
Make a vertex.
- Deprecated:
 - "makeVertex() is deprecated in DUNE 2.6, please use Dune::GeometryTypes::vertex instead" 
 
The documentation for this class was generated from the following file:
- dune/geometry/type.hh
 
   | 
                                Legal Statements / Impressum  | 
                                Hosted by  TU Dresden & Uni Heidelberg  | 
				  generated with Hugo v0.111.3
								(Nov 3, 23:36, 2025)