|
| 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
} |
| |
|
| 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 |
| |
|
| 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 |
| |
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 |
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>>
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::averageNormalForSpecificSudo(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::extractLowDimElemsForSpecificSudo(), and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::extractSudoList().
Referenced by ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::averageBndryNormals(), and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::averageFractNormals().
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>>
References ug::support::addElem(), ug::EdgeContains(), ug::Grid::get_edge(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_contribFulldimElm, ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecVolEdges, ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_volEdgesDetermined, and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vrt.
Referenced by ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckListLowdimElmsOfVols().
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 |
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 |
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 |
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 |
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::isStillUnknown(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_averaged, UG_LOG, and UG_THROW.
Referenced by ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttBndryElm(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttFractElm(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttUnclosedFractElm(), and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttElm().
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 |
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 |
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckAttElm(), UG_LOG, and UG_THROW.
Referenced by ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttBndryElm(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttFractElm(), and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttUnclosedFractElm().
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>>
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecBndrySudoLowDiEl, and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecBndrySudosNormlV.
Referenced by ug::ArteExpandFracs3D::expandWithinTheSegment().
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>>
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecFractSudoLowDiEl, and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecFractSudosNormlV.
Referenced by ug::ArteExpandFracs3D::expandWithinTheSegment().
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 |
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::determineListLowdimElms(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vecVolEdges, and ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_volEdgesDetermined.
Referenced by ug::ArteExpandFracs3D::testIfNewPointsSqueezeVolumes().
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 |
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>>
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::addLowDimElmListForSudo(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_averaged, ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::m_vrt, UG_LOG, and UG_THROW.