ug4
Loading...
Searching...
No Matches
ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP > Class Template Reference

#include <support3D.h>

Public Types

using AttBndryElm = AttachedBoundryElem< MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP >
 
using AttFractElm = AttachedFractElem< MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP >
 
using ManifDescr = ManifoldDescriptor< VECTOR_TYP, LOWDIMELM >
 
using PairSudoNormlV = std::pair< INDEX_TXP, VECTOR_TYP >
 
using PairSudoVecLowDiEl = std::pair< INDEX_TXP, std::vector< LOWDIMELM > >
 
using VecAttBndryElm = std::vector< AttBndryElm >
 
using VecAttFractElm = std::vector< AttFractElm >
 
using VecManifDescr = std::vector< ManifDescr >
 
using VecPairSudoNormlV = std::vector< PairSudoNormlV >
 
using VecPairSudoVecLowDiEl = std::vector< PairSudoVecLowDiEl >
 
enum  VrtxFracStatus { noFracSuDoAtt = 0 , oneFracSuDoAtt = 1 , twoFracSuDoAtt = 2 , threeFracSuDoAtt = 3 }
 

Public Member Functions

bool averageAll ()
 
bool const hasUnclosedFaces () const
 
bool const isBoundary () const
 
bool schluckAttBndryElm (AttBndryElm const &afeNew)
 
bool schluckAttFractElm (AttFractElm const &afeNew)
 
template<typename NOFRACT >
bool schluckAttFractElm (NOFRACT const &afeNew)=delete
 
bool schluckAttUnclosedFractElm (AttFractElm const &afeNew)
 
template<typename NOFRACT >
bool schluckAttUnclosedFractElm (NOFRACT const &afeNew)=delete
 
bool schluckFulldimElem (FULLDIM_ELEM const &fudielm)
 
template<typename = std::enable_if< std::is_pointer<LOWDIMELM>::value>>
bool schluckLowdimElmShiftDirectionIfUnclosedFractPresent (LOWDIMELM const &shiftDirectionElm)
 
bool schluckVecAttBndryElm (std::vector< AttBndryElm > const &vecAtBndryEl)
 
bool schluckVecAttFractElm (std::vector< AttFractElm > const &vecAtFracEl)
 
template<typename NOFRACT >
bool schluckVecAttFractElm (std::vector< NOFRACT > const &vecAtFracEl)=delete
 
bool schluckVecAttUnclosedFractElm (std::vector< AttFractElm > const &vecAtFracEl)
 
template<typename NOFRACT >
bool schluckVecAttUnclosedFractElm (std::vector< NOFRACT > const &vecAtFracEl)=delete
 
template<typename = std::enable_if< std::is_pointer<LOWDIMELM>::value>>
 SegmentSides (VRTXTYP const &vrt, bool isBndry=false)
 
template<typename = std::enable_if< std::is_same<VECTOR_TYP,vector3>::value>>
bool const spuckBndryManifDescr (VecManifDescr &vecManifDesc, Grid::VertexAttachmentAccessor< APosition > const &aaPos, bool clearDescVec=true) const
 
bool spuckBndrySudoNormls (VecPairSudoNormlV &vecBndrySudosNormlV)
 
VrtxFracStatus const spuckCrossingTyp () const
 
template<typename = std::enable_if< std::is_same<VECTOR_TYP,vector3>::value>>
bool const spuckFractManifDescr (VecManifDescr &vecManifDesc, Grid::VertexAttachmentAccessor< APosition > const &aaPos, bool clearDescVec=true) const
 
bool const spuckFractSudoNormls (VecPairSudoNormlV &vecFractSudosNormlV) const
 
template<typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>, typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>>
bool spuckListLowdimElmsOfVols (std::vector< LOWDIMELM > &listLowdimElms, Grid &grid)
 
template<typename = std::enable_if< std::is_pointer<LOWDIMELM>::value>>
bool const spuckLowdimElmShiftDirectionIfUnclosedFractPresent (LOWDIMELM &shiftDirectionElm) const
 
bool spuckVecAttBndryElm (std::vector< AttBndryElm > &vecAtBndryEl)
 
bool const spuckVecAttFractElm (std::vector< AttFractElm > &vecAttFracEl) const
 
bool const spuckVecAttUnclosedFractElm (std::vector< AttFractElm > &vecAttFracEl) const
 
bool const spuckVecFulldimElem (std::vector< FULLDIM_ELEM > &fudielm) const
 
VRTXTYP const spuckVertex () const
 

Private Member Functions

bool const addLowDimElmListForSudo (ManifDescr &md, INDEX_TXP sudo, VecPairSudoVecLowDiEl const &vecFractSudosLDE) const
 
bool averageBndryNormals ()
 
bool averageFractNormals ()
 
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool averageNormalForSpecificSudo (INDEX_TXP specfcSudo, std::vector< ATT_ELM > const &vecAttElm, VECTOR_TYP &normlAvrg)
 
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool averageNormlForEachSudo (std::vector< ATT_ELM > const &vecAttElm, VecPairSudoNormlV &vecPSudoNrml, VecPairSudoVecLowDiEl &vecPSudoVecLowDiElm)
 
bool checkIfIsAtBndry ()
 
template<typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>, typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>>
void determineListLowdimElms (Grid &grid)
 
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool extractLowDimElemsForSpecificSudo (INDEX_TXP specfcSudo, std::vector< ATT_ELM > const &vecAttElm, std::vector< LOWDIMELM > &vecLowDimElms)
 
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool extractSudoList (std::vector< INDEX_TXP > &sudoListSegment, std::vector< ATT_ELM > const &vecAttELm)
 
template<typename ATT_ELM , typename VEC_ATT_ELM , typename = std::enable_if<std::is_same<std::vector<ATT_ELM>,VEC_ATT_ELM>::value>, typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool isStillUnknown (ATT_ELM const &afeNew, VEC_ATT_ELM const &vecAttELm, bool acceptUnknowns=false)
 
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool schluckAttElm (ATT_ELM const &attElNew, std::vector< ATT_ELM > &vecAttElmKnown, bool acceptUnknowns=false)
 
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool schluckVecAttElm (std::vector< ATT_ELM > const &vecAttElNew, std::vector< ATT_ELM > &vecAttElmKnown, bool acceptUnknowns=false)
 
template<typename ManifDescr::ManifoldType manifTyp, typename = std::enable_if< std::is_same<VECTOR_TYP,vector3>::value>>
bool const spuckManifDescr (VecManifDescr &vecManifDesc, Grid::VertexAttachmentAccessor< APosition > const &aaPos, VecPairSudoNormlV const &vecFractSudosNormlV, VecPairSudoVecLowDiEl const &vecFractSudosLDE, bool clearDescVec=true) const
 

Private Attributes

bool m_averaged
 
std::vector< FULLDIM_ELEM > m_contribFulldimElm
 
bool m_isBoundary
 
LOWDIMELM m_shiftDirectionIfUnclosedFractPresent
 
VecAttBndryElm m_vecAttBndryElms
 
VecAttFractElm m_vecAttFractElms
 
VecAttFractElm m_vecAttUnclosedFractElms
 
VecPairSudoVecLowDiEl m_vecBndrySudoLowDiEl
 
VecPairSudoNormlV m_vecBndrySudosNormlV
 
VecPairSudoVecLowDiEl m_vecFractSudoLowDiEl
 
VecPairSudoNormlV m_vecFractSudosNormlV
 
std::vector< LOWDIMELM > m_vecVolEdges
 
bool m_volEdgesDetermined
 
VRTXTYP m_vrt
 

Member Typedef Documentation

◆ AttBndryElm

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::AttBndryElm = AttachedBoundryElem<MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP>

◆ AttFractElm

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::AttFractElm = AttachedFractElem<MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP>

◆ ManifDescr

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::ManifDescr = ManifoldDescriptor<VECTOR_TYP, LOWDIMELM>

◆ PairSudoNormlV

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::PairSudoNormlV = std::pair<INDEX_TXP,VECTOR_TYP>

◆ PairSudoVecLowDiEl

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::PairSudoVecLowDiEl = std::pair<INDEX_TXP, std::vector<LOWDIMELM> >

◆ VecAttBndryElm

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::VecAttBndryElm = std::vector<AttBndryElm>

◆ VecAttFractElm

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::VecAttFractElm = std::vector<AttFractElm>

◆ VecManifDescr

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::VecManifDescr = std::vector<ManifDescr>

◆ VecPairSudoNormlV

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::VecPairSudoNormlV = std::vector<PairSudoNormlV>

◆ VecPairSudoVecLowDiEl

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
using ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::VecPairSudoVecLowDiEl = std::vector<PairSudoVecLowDiEl>

Member Enumeration Documentation

◆ VrtxFracStatus

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
enum ug::support::SegmentSides::VrtxFracStatus
Enumerator
noFracSuDoAtt 
oneFracSuDoAtt 
twoFracSuDoAtt 
threeFracSuDoAtt 

Constructor & Destructor Documentation

◆ SegmentSides()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename = std::enable_if< std::is_pointer<LOWDIMELM>::value>>
ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::SegmentSides ( VRTXTYP const &  vrt,
bool  isBndry = false 
)
inline

Member Function Documentation

◆ addLowDimElmListForSudo()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::addLowDimElmListForSudo ( ManifDescr md,
INDEX_TXP  sudo,
VecPairSudoVecLowDiEl const &  vecFractSudosLDE 
) const
inlineprivate

◆ averageAll()

◆ averageBndryNormals()

◆ averageFractNormals()

◆ averageNormalForSpecificSudo()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::averageNormalForSpecificSudo ( INDEX_TXP  specfcSudo,
std::vector< ATT_ELM > const &  vecAttElm,
VECTOR_TYP &  normlAvrg 
)
inlineprivate

◆ averageNormlForEachSudo()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::averageNormlForEachSudo ( std::vector< ATT_ELM > const &  vecAttElm,
VecPairSudoNormlV vecPSudoNrml,
VecPairSudoVecLowDiEl vecPSudoVecLowDiElm 
)
inlineprivate

◆ checkIfIsAtBndry()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::checkIfIsAtBndry ( )
inlineprivate

◆ determineListLowdimElms()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>, typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>>
void ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::determineListLowdimElms ( Grid grid)
inlineprivate

◆ extractLowDimElemsForSpecificSudo()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::extractLowDimElemsForSpecificSudo ( INDEX_TXP  specfcSudo,
std::vector< ATT_ELM > const &  vecAttElm,
std::vector< LOWDIMELM > &  vecLowDimElms 
)
inlineprivate

◆ extractSudoList()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::extractSudoList ( std::vector< INDEX_TXP > &  sudoListSegment,
std::vector< ATT_ELM > const &  vecAttELm 
)
inlineprivate

◆ hasUnclosedFaces()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::hasUnclosedFaces ( ) const
inline

◆ isBoundary()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::isBoundary ( ) const
inline

◆ isStillUnknown()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ATT_ELM , typename VEC_ATT_ELM , typename = std::enable_if<std::is_same<std::vector<ATT_ELM>,VEC_ATT_ELM>::value>, typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::isStillUnknown ( ATT_ELM const &  afeNew,
VEC_ATT_ELM const &  vecAttELm,
bool  acceptUnknowns = false 
)
inlineprivate

◆ schluckAttBndryElm()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttBndryElm ( AttBndryElm const &  afeNew)
inline

◆ schluckAttElm()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttElm ( ATT_ELM const &  attElNew,
std::vector< ATT_ELM > &  vecAttElmKnown,
bool  acceptUnknowns = false 
)
inlineprivate

◆ schluckAttFractElm() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttFractElm ( AttFractElm const &  afeNew)
inline

◆ schluckAttFractElm() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename NOFRACT >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttFractElm ( NOFRACT const &  afeNew)
delete

◆ schluckAttUnclosedFractElm() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttUnclosedFractElm ( AttFractElm const &  afeNew)
inline

◆ schluckAttUnclosedFractElm() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename NOFRACT >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttUnclosedFractElm ( NOFRACT const &  afeNew)
delete

◆ schluckFulldimElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckFulldimElem ( FULLDIM_ELEM const &  fudielm)
inline

◆ schluckLowdimElmShiftDirectionIfUnclosedFractPresent()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename = std::enable_if< std::is_pointer<LOWDIMELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckLowdimElmShiftDirectionIfUnclosedFractPresent ( LOWDIMELM const &  shiftDirectionElm)
inline

◆ schluckVecAttBndryElm()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttBndryElm ( std::vector< AttBndryElm > const &  vecAtBndryEl)
inline

◆ schluckVecAttElm()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ATT_ELM , typename = std::enable_if<std::is_base_of<AttFractElm,ATT_ELM>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttElm ( std::vector< ATT_ELM > const &  vecAttElNew,
std::vector< ATT_ELM > &  vecAttElmKnown,
bool  acceptUnknowns = false 
)
inlineprivate

◆ schluckVecAttFractElm() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttFractElm ( std::vector< AttFractElm > const &  vecAtFracEl)
inline

◆ schluckVecAttFractElm() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename NOFRACT >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttFractElm ( std::vector< NOFRACT > const &  vecAtFracEl)
delete

◆ schluckVecAttUnclosedFractElm() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttUnclosedFractElm ( std::vector< AttFractElm > const &  vecAtFracEl)
inline

◆ schluckVecAttUnclosedFractElm() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename NOFRACT >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttUnclosedFractElm ( std::vector< NOFRACT > const &  vecAtFracEl)
delete

◆ spuckBndryManifDescr()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename = std::enable_if< std::is_same<VECTOR_TYP,vector3>::value>>
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckBndryManifDescr ( VecManifDescr vecManifDesc,
Grid::VertexAttachmentAccessor< APosition > const &  aaPos,
bool  clearDescVec = true 
) const
inline

◆ spuckBndrySudoNormls()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckBndrySudoNormls ( VecPairSudoNormlV vecBndrySudosNormlV)
inline

◆ spuckCrossingTyp()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
VrtxFracStatus const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckCrossingTyp ( ) const
inline

◆ spuckFractManifDescr()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename = std::enable_if< std::is_same<VECTOR_TYP,vector3>::value>>
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckFractManifDescr ( VecManifDescr vecManifDesc,
Grid::VertexAttachmentAccessor< APosition > const &  aaPos,
bool  clearDescVec = true 
) const
inline

◆ spuckFractSudoNormls()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckFractSudoNormls ( VecPairSudoNormlV vecFractSudosNormlV) const
inline

◆ spuckListLowdimElmsOfVols()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>, typename = std::enable_if< std::is_same<FULLDIM_ELEM,Volume*>::value>>
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckListLowdimElmsOfVols ( std::vector< LOWDIMELM > &  listLowdimElms,
Grid grid 
)
inline

◆ spuckLowdimElmShiftDirectionIfUnclosedFractPresent()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename = std::enable_if< std::is_pointer<LOWDIMELM>::value>>
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckLowdimElmShiftDirectionIfUnclosedFractPresent ( LOWDIMELM &  shiftDirectionElm) const
inline

◆ spuckManifDescr()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
template<typename ManifDescr::ManifoldType manifTyp, typename = std::enable_if< std::is_same<VECTOR_TYP,vector3>::value>>
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckManifDescr ( VecManifDescr vecManifDesc,
Grid::VertexAttachmentAccessor< APosition > const &  aaPos,
VecPairSudoNormlV const &  vecFractSudosNormlV,
VecPairSudoVecLowDiEl const &  vecFractSudosLDE,
bool  clearDescVec = true 
) const
inlineprivate

◆ spuckVecAttBndryElm()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVecAttBndryElm ( std::vector< AttBndryElm > &  vecAtBndryEl)
inline

◆ spuckVecAttFractElm()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVecAttFractElm ( std::vector< AttFractElm > &  vecAttFracEl) const
inline

◆ spuckVecAttUnclosedFractElm()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVecAttUnclosedFractElm ( std::vector< AttFractElm > &  vecAttFracEl) const
inline

◆ spuckVecFulldimElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVecFulldimElem ( std::vector< FULLDIM_ELEM > &  fudielm) const
inline

◆ spuckVertex()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
VRTXTYP const ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVertex ( ) const
inline

Member Data Documentation

◆ m_averaged

◆ m_contribFulldimElm

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
std::vector<FULLDIM_ELEM> ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_contribFulldimElm
private

◆ m_isBoundary

◆ m_shiftDirectionIfUnclosedFractPresent

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
LOWDIMELM ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_shiftDirectionIfUnclosedFractPresent
private

◆ m_vecAttBndryElms

◆ m_vecAttFractElms

◆ m_vecAttUnclosedFractElms

◆ m_vecBndrySudoLowDiEl

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
VecPairSudoVecLowDiEl ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecBndrySudoLowDiEl
private

◆ m_vecBndrySudosNormlV

◆ m_vecFractSudoLowDiEl

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
VecPairSudoVecLowDiEl ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecFractSudoLowDiEl
private

◆ m_vecFractSudosNormlV

◆ m_vecVolEdges

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
std::vector<LOWDIMELM> ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecVolEdges
private

◆ m_volEdgesDetermined

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
bool ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_volEdgesDetermined
private

◆ m_vrt

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename VECTOR_TYP , typename VRTXTYP >
VRTXTYP ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vrt
private

The documentation for this class was generated from the following file: