Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
bitpit::ElementHalfItem< DerivedElement > Class Template Reference

The ElementHalfItem class is the base calss for defining element half-edge and half-faces. More...

Inheritance diagram for bitpit::ElementHalfItem< DerivedElement >:
Inheritance graph
[legend]
Collaboration diagram for bitpit::ElementHalfItem< DerivedElement >:
Collaboration graph
[legend]

Classes

class  Hasher
 The ElementHalfItem::Hasher class allows to create hashes for the half-items. More...
 

Public Types

enum  Winding { WINDING_NATURAL = 1 , WINDING_REVERSE = -1 }
 

Public Member Functions

const ConstProxyVector< long > & getVertexIds () const
 
Winding getWinding () const
 
bool operator!= (const ElementHalfItem &other) const
 
bool operator== (const ElementHalfItem &other) const
 
void setWinding (Winding winding)
 

Protected Member Functions

 ElementHalfItem (DerivedElement &element, ConstProxyVector< long > &&vertexIds, ElementHalfItem< DerivedElement >::Winding winding)
 
DerivedElement & getElement () const
 

Protected Attributes

DerivedElement & m_element
 
std::size_t m_firstVertexId
 
ConstProxyVector< long > m_vertexIds
 
Winding m_winding
 

Detailed Description

template<class DerivedElement>
class bitpit::ElementHalfItem< DerivedElement >

The ElementHalfItem class is the base calss for defining element half-edge and half-faces.

ElementHalfItem is the base calss for defining element half-edge and half-faces.

Definition at line 222 of file element.hpp.

Member Enumeration Documentation

◆ Winding

template<class DerivedElement >
enum bitpit::ElementHalfItem::Winding

Definition at line 225 of file element.hpp.

Constructor & Destructor Documentation

◆ ElementHalfItem()

template<class DerivedElement >
bitpit::ElementHalfItem< DerivedElement >::ElementHalfItem ( DerivedElement & element,
ConstProxyVector< long > && vertexIds,
ElementHalfItem< DerivedElement >::Winding winding )
protected

Constructor.

Parameters
elementis a reference to the element the owns the item
vertexIdsare the ids of the vertices
windingis the winding order of the vertices

Definition at line 49 of file element.tpp.

Member Function Documentation

◆ getElement()

template<class DerivedElement >
DerivedElement & bitpit::ElementHalfItem< DerivedElement >::getElement ( ) const
protected

Get the element the half-item belongs to.

Returns
Returns the element the half-item belongs to.

Definition at line 75 of file element.tpp.

◆ getVertexIds()

template<class DerivedElement >
const ConstProxyVector< long > & bitpit::ElementHalfItem< DerivedElement >::getVertexIds ( ) const

Get the list of vertex ids of the edge.

Returns
Returns the list of vertex ids of the edge.

Definition at line 86 of file element.tpp.

◆ getWinding()

template<class DerivedElement >
ElementHalfItem< DerivedElement >::Winding bitpit::ElementHalfItem< DerivedElement >::getWinding ( ) const

Get vertex winding order.

Returns
Vertex winding order.

Definition at line 97 of file element.tpp.

◆ operator!=()

template<class DerivedElement >
bool bitpit::ElementHalfItem< DerivedElement >::operator!= ( const ElementHalfItem< DerivedElement > & other) const

Comparison operator for the ElementHalfItem class.

Parameters
otheris the object to be compared with
Returns
Returns true if the two half-items define different half-item, false otherwise.

Definition at line 152 of file element.tpp.

◆ operator==()

template<class DerivedElement >
bool bitpit::ElementHalfItem< DerivedElement >::operator== ( const ElementHalfItem< DerivedElement > & other) const

Comparison operator for the ElementHalfItem class.

Parameters
otheris the object to be compared with
Returns
Returns true if the two half-items define the same half-item, false otherwise.

Definition at line 121 of file element.tpp.

◆ setWinding()

template<class DerivedElement >
void bitpit::ElementHalfItem< DerivedElement >::setWinding ( Winding winding)

Set vertex winding order.

Parameters
windingis the vertex winding order

Definition at line 108 of file element.tpp.

Member Data Documentation

◆ m_element

template<class DerivedElement >
DerivedElement& bitpit::ElementHalfItem< DerivedElement >::m_element
protected

Definition at line 243 of file element.hpp.

◆ m_firstVertexId

template<class DerivedElement >
std::size_t bitpit::ElementHalfItem< DerivedElement >::m_firstVertexId
protected

Definition at line 246 of file element.hpp.

◆ m_vertexIds

template<class DerivedElement >
ConstProxyVector<long> bitpit::ElementHalfItem< DerivedElement >::m_vertexIds
protected

Definition at line 245 of file element.hpp.

◆ m_winding

template<class DerivedElement >
Winding bitpit::ElementHalfItem< DerivedElement >::m_winding
protected

Definition at line 248 of file element.hpp.


The documentation for this class was generated from the following files:
--- layout: doxygen_footer ---