|
ug4
|
#include <ArteExpandFracs3D.h>
Public Types | |
| using | AttVecSegmLimSid = Attachment< VecSegmentLimitingSides > |
| using | IndexType = unsigned short |
| using | SegLimSidesFractFace = SegmentLimitingSides::AttFractElm |
| using | SegmentLimitingSides = support::SegmentSides< Volume *, Face *, Edge *, IndexType, vector3, Vertex * > |
| using | SegmentVrtxFracStatus = SegmentLimitingSides::VrtxFracStatus |
| using | VecSegLimSidesFractFace = SegmentLimitingSides::VecAttFractElm |
| using | VecSegmentLimitingSides = std::vector< SegmentLimitingSides > |
| using | VrtxFracProptsStatus = VertxFracPropts::VrtxFracStatus |
Public Member Functions | |
| ArteExpandFracs3D (Grid &grid, SubsetHandler &sh, std::vector< FractureInfo > const &fracInfos, bool useTrianglesInDiamonds, bool establishDiamonds) | |
| bool | run (bool &needToRestart) |
| virtual | ~ArteExpandFracs3D () |
Private Member Functions | |
| template<typename ELEMTYP > | |
| bool | addElem (std::vector< ELEMTYP > &knownElems, ELEMTYP elemToAdd) |
| void | assignDebugSubsets (bool intermediate) |
| bool | assignNotCuttingEdgeUnclosedCrossingCleft (SegLimSidesFractFace const &slsffUncl, Edge *const &commonEdge, Edge *&shiftEdge) |
| bool | assignOrigFracInfos () |
| bool | attachMarkers () |
| bool | averageBndryNormals (VecPlaneDescriptor const &vecPlaneBndryDescr, vector3 &averagedNormal) |
| template<typename ELMTYP > | |
| bool | checkIfContentUnique (std::vector< ELMTYP > const &vecTest, std::vector< ELMTYP > &content, IndexType mandatoryDifferentElems) |
| bool | checkIfFacesVerticesCoincide (Face *const &facOne, Face *const &facTwo) |
| bool | collectFaceVertices (std::vector< Vertex * > &facVrt, Face *const &fac) |
| bool | computeCrossingPointOf3Planes (VecPlaneDescriptor const &vecPlaneDescr, vector3 &crossingPoint) |
| bool | computeCrossPointOfPlaneWithLine (PlaneDescriptor const &shiftedPlane, Edge *const &shiftDirectionEdg, Vertex *const &oldVrt, vector3 &posCrossingPt) |
| bool | computeNormalKuhVolProcedure (Volume *const &kuhVol, Face *const &fac, NormalVectorFacIntoVol &normalIntoVol) |
| bool | countAndSelectFracBaseNums () |
| bool | createConditionForNewVrtcs () |
| bool | createNewElements () |
| IndexType | deleteEndingCrossingCleftOrigFacs () |
| bool | detachMarkers () |
| bool | detectEndingCrossingCleftsSegmBased () |
| bool | distinguishSegments () |
| bool | enableVolOptAutoGenFac () |
| bool | establishNewVertizesStasiBased (Vertex *const &oldVrt) |
| bool | establishNewVrtBase () |
| bool | establishSegmentLimitingSidesInfo () |
| bool | etablishVolumesAtEndingCrossingClefts (std::vector< Volume * > &newFractureVolumes, std::vector< IndexType > &subsOfNewVolumes) |
| bool | expandWithinTheSegment (SegmentLimitingSides &segmLimSides) |
| bool | findShiftEdgeUncuttingCrossingCleft (VecSegLimSidesFractFace const &vecSegmLimSiFFUnclosed, std::vector< Face * > const &vecEndingFractManifNotCutting, Edge *const &uncuttingLowDimEl, Edge *&shiftLowDimEl, std::vector< Edge * > &vecEdgsNotCutFaces) |
| template<bool FACES_HAVE_SAME_SUDO> | |
| bool | fractFacesAreNeighboured (SegLimSidesFractFace const &fractFaceOne, SegLimSidesFractFace const &fractFaceTwo, Edge *&commonEdge) |
| bool | initialize () |
| bool | loop2EstablishNewVertices () |
| int | prepareStasi (Vertex *const &vrt, AttachedVolumeElemInfo &attVolElmInfo) |
| bool | seletForSegmented () |
| void | setAllowedSqueeze (number allowedSqueeze=0.8) |
| bool | setSelector () |
| bool | shiftUnclosedFracFaces () |
| IndexType | shiftUnclosedFracFacesToUnclosedFractFaces (Vertex *const &vrt) |
| bool | splitEdgesOfNeighboredEndingCrossingFracVrtcs () |
| int | splitInnerFreeFracEdgs () |
| bool | stasiAlgo (Vertex *const &oldVrt) |
| bool | testIfNewPointsSqueezeVolumes (SegmentLimitingSides &segmLimSides, VecPlaneDescriptor const &vecShiftedPlaneDescript) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
| using ug::ArteExpandFracs3D::IndexType = unsigned short |
|
private |
|
private |
|
private |
| using ug::ArteExpandFracs3D::SegmentLimitingSides = support::SegmentSides<Volume*,Face*,Edge*,IndexType,vector3,Vertex*> |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
| using ug::ArteExpandFracs3D::VecSegmentLimitingSides = std::vector<SegmentLimitingSides> |
|
private |
|
private |
| ug::ArteExpandFracs3D::ArteExpandFracs3D | ( | Grid & | grid, |
| SubsetHandler & | sh, | ||
| std::vector< FractureInfo > const & | fracInfos, | ||
| bool | useTrianglesInDiamonds, | ||
| bool | establishDiamonds | ||
| ) |
References m_sel.
|
virtual |
|
private |
|
private |
|
private |
References ug::support::AttachedGeneralElem< MANIFELM, LOWDIMELM, INDEX_TXP >::getPairLowElm(), UG_LOG, and UG_THROW.
Referenced by detectEndingCrossingCleftsSegmBased().
|
private |
|
private |
References ug::Grid::attach_to_edges_dv(), ug::Grid::attach_to_faces_dv(), ug::Grid::attach_to_vertices_dv(), ug::Grid::attach_to_volumes(), ug::Grid::attach_to_volumes_dv(), m_aAdjInfoEdges, m_aAdjInfoFaces, m_aAdjMarkerFaceIsFracB, m_aAdjMarkerFaceWithEndingCrossingCleft, m_aAdjMarkerVFP, m_aAdjMarkerVrtxAtEndingCrossingCleft, m_aaMarkEdgeVFP, m_aaMarkFaceIsFracB, m_aaMarkFaceWithEndingCrossingCleft, m_aaMarkVrtVFP, m_aaMarkVrtxAtEndingCrossingCleft, m_aaVrtInfoAssoEdges, m_aaVrtInfoAssoFaces, m_aaVrtVecVol, m_accsAttVecSegVolElmInfo, m_attAdjVecSegVolElmInfo, m_attAtFaceIfFaceIsSegmLimFaceEndingCrossingCleft, m_attAtVolIfVolTouchesEndingCrossingCleft, m_attAtVrtxIfVrtxArisesFromExpandedEndingCrossingCleft, m_attAtVrtxVecEndingCrossFractSegmInfo, m_attVecSegmLimSid, m_attVrtVec, m_facAttAccsIfFaceIsSegmLimFaceEndingCrossingCleft, m_grid, m_volAttAccsVolTouchesEndingCrossingCleft, m_vrtxAttAccsVecEndingCrossFractSegmInfo, m_vrtxAttAccsVecSegmLimSid, and m_vrtxAttAccsVrtxArisesFromExpandedEndingCrossingCleft.
Referenced by run().
|
private |
References UG_LOG, ug::VecAdd(), and ug::VecScale().
Referenced by expandWithinTheSegment().
|
private |
References UG_LOG, and UG_THROW.
Referenced by detectEndingCrossingCleftsSegmBased().
|
private |
References collectFaceVertices(), and ug::FaceVertices::size().
Referenced by computeNormalKuhVolProcedure().
|
private |
References ug::FaceVertices::num_vertices(), and ug::FaceVertices::vertex().
Referenced by checkIfFacesVerticesCoincide().
|
private |
|
private |
References ug::GridSubsetHandler::assign_subset(), ug::Grid::create(), ug::EdgeContains(), m_aaPos, m_allowedSqueeze, m_grid, m_sh, ug::ISubsetHandler::num_subsets(), ug::support::ManifoldDescriptor< VECTOR_TYP, LOWDIMELM >::spuckBaseVector(), ug::support::ManifoldDescriptor< VECTOR_TYP, LOWDIMELM >::spuckNormalVector(), ug::support::ManifoldDescriptor< VECTOR_TYP, LOWDIMELM >::spuckRHS(), UG_LOG, UG_THROW, ug::VecAdd(), ug::VecDot(), ug::VecLength(), ug::VecScale(), ug::VecSubtract(), and ug::EdgeVertices::vertex().
Referenced by expandWithinTheSegment(), and testIfNewPointsSqueezeVolumes().
|
private |
References ug::CalculateCenter(), ug::CalculateNormal(), checkIfFacesVerticesCoincide(), ug::Volume::face_desc(), ug::Grid::get_side(), m_aaPos, m_grid, ug::Volume::num_sides(), UG_LOG, and UG_THROW.
Referenced by prepareStasi().
|
private |
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::Selector::begin(), ug::GridSubsetHandler::begin(), ug::CalculateCenter(), ug::CollectEdges(), ug::Selector::end(), ug::GridSubsetHandler::end(), ug::support::VertexFracturePropertiesVol< T, ATT_ELEM >::getIsBndFracVertex(), ug::ISelector::is_selected(), ug::IsBoundaryEdge3D(), ug::IsBoundaryVertex3D(), m_aaMarkEdgeVFP, m_aaMarkFaceIsFracB, m_aaMarkVrtVFP, m_aaPos, m_fracInfos, m_grid, m_sel, m_sh, ug::FaceVertices::num_vertices(), ug::ISelector::select(), UG_LOG, ug::EdgeVertices::vertex(), and ug::FaceVertices::vertex().
Referenced by run().
|
private |
References m_aaVrtVecVol, m_sel, ug::VolumeVertices::num_vertices(), ug::Selector::volumes_begin(), and ug::Selector::volumes_end().
Referenced by run().
|
private |
only used to initialize a prism. for all other tasks you should use VolumeDescripor.
please be sure to pass the vertices in the correct order:
v1, v2, v3: bottom-vertices in counterclockwise order (if viewed from the top).
v4, v5, v6: top-vertices in counterclockwise order (if viewed from the top).
PrismDescriptor(Vertex* v1, Vertex* v2, Vertex* v3,
Vertex* v4, Vertex* v5, Vertex* v6);
References ug::GridSubsetHandler::assign_subset(), ug::Selector::begin(), ug::CalculateCenter(), ug::Grid::create(), ug::Grid::create_by_cloning(), detachMarkers(), ug::Selector::end(), ug::Grid::erase(), etablishVolumesAtEndingCrossingClefts(), ug::Grid::get_edge(), ug::Grid::get_face(), ug::Grid::get_side(), ug::ISubsetHandler::get_subset_index(), ug::Volume::get_vertex_indices_of_edge(), ug::Volume::get_vertex_indices_of_face(), ug::ISelector::is_selected(), m_aaMarkEdgeVFP, m_aaMarkFaceIsFracB, m_aaMarkFaceWithEndingCrossingCleft, m_aaPos, m_aaVrtVecVol, m_facAttAccsIfFaceIsSegmLimFaceEndingCrossingCleft, m_fracInfosBySubset, m_grid, m_sel, m_sh, m_vecEndCrossFractSegmInfo, m_volAttAccsVolTouchesEndingCrossingCleft, m_vrtxAttAccsVrtxArisesFromExpandedEndingCrossingCleft, ug::Face::num_edges(), ug::Volume::num_edges(), ug::Volume::num_faces(), ug::Volume::num_sides(), ug::ISubsetHandler::num_subsets(), ug::FaceVertices::num_vertices(), ug::VolumeVertices::num_vertices(), ug::VolumeDescriptor::num_vertices(), ug::FaceDescriptor::set_num_vertices(), ug::VolumeDescriptor::set_num_vertices(), ug::FaceDescriptor::set_vertex(), ug::VolumeDescriptor::set_vertex(), UG_LOG, UG_THROW, ug::FaceVertices::vertex(), ug::VolumeVertices::vertex(), ug::Selector::volumes_begin(), and ug::Selector::volumes_end().
Referenced by run().
|
private |
References addElem(), ug::EdgeContains(), ug::Grid::erase(), ug::Grid::get_edge(), m_grid, and m_vecEndCrossFractSegmInfo.
Referenced by run().
|
private |
References ug::Grid::detach_from_edges(), ug::Grid::detach_from_faces(), ug::Grid::detach_from_vertices(), ug::Grid::detach_from_volumes(), m_aAdjInfoEdges, m_aAdjInfoFaces, m_aAdjMarkerFaceIsFracB, m_aAdjMarkerFaceWithEndingCrossingCleft, m_aAdjMarkerVFP, m_aAdjMarkerVrtxAtEndingCrossingCleft, m_attAdjVecSegVolElmInfo, m_attAtFaceIfFaceIsSegmLimFaceEndingCrossingCleft, m_attAtVolIfVolTouchesEndingCrossingCleft, m_attAtVrtxIfVrtxArisesFromExpandedEndingCrossingCleft, m_attAtVrtxVecEndingCrossFractSegmInfo, m_attVecSegmLimSid, m_attVrtVec, and m_grid.
Referenced by createNewElements(), etablishVolumesAtEndingCrossingClefts(), run(), and splitEdgesOfNeighboredEndingCrossingFracVrtcs().
|
private |
References addElem(), ug::GridSubsetHandler::assign_subset(), assignNotCuttingEdgeUnclosedCrossingCleft(), ug::Selector::begin(), ug::CalculateCenter(), checkIfContentUnique(), ug::Selector::end(), findShiftEdgeUncuttingCrossingCleft(), m_aaMarkFaceWithEndingCrossingCleft, m_aaMarkVrtxAtEndingCrossingCleft, m_aaPos, m_facAttAccsIfFaceIsSegmLimFaceEndingCrossingCleft, m_needToSplitEdgesConnectingNeighbrdEndingCrossCleftVrtx, m_sel, m_sh, m_vecEdgeDirectConnectingEndingCrossCleftVrtcs, m_vecEndCrossFractSegmInfo, m_volAttAccsVolTouchesEndingCrossingCleft, m_vrtxAttAccsVecEndingCrossFractSegmInfo, m_vrtxAttAccsVecSegmLimSid, ug::ISubsetHandler::num_subsets(), ug::support::EndingCrossingFractSegmentInfo< FULLDIMEL, MANIFEL, LOWDIMEL, VRTXTYP, INDEXTYP >::schluckVecClosedFracManifElNoNeighbr(), ug::support::EndingCrossingFractSegmentInfo< FULLDIMEL, MANIFEL, LOWDIMEL, VRTXTYP, INDEXTYP >::schluckVecFulldimElm(), splitEdgesOfNeighboredEndingCrossingFracVrtcs(), UG_LOG, and UG_THROW.
Referenced by run().
|
private |
References ug::Selector::begin(), ug::Selector::end(), m_aaPos, m_sel, shiftUnclosedFracFacesToUnclosedFractFaces(), stasiAlgo(), UG_LOG, and UG_THROW.
Referenced by run().
|
private |
References ug::Grid::enable_options(), m_grid, ug::Grid::option_is_enabled(), UG_LOG, and ug::VOLOPT_AUTOGENERATE_FACES.
Referenced by run().
|
private |
References expandWithinTheSegment(), m_aaMarkVrtVFP, m_vrtxAttAccsVecSegmLimSid, UG_LOG, and UG_THROW.
Referenced by loop2EstablishNewVertices().
|
private |
References m_aaVrtVecVol, m_sel, ug::VolumeVertices::num_vertices(), ug::Selector::volumes_begin(), and ug::Selector::volumes_end().
Referenced by run().
|
private |
References ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::averageAll(), ug::Selector::begin(), ug::Selector::end(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::hasUnclosedFaces(), m_aaMarkVrtVFP, m_aaPos, m_accsAttVecSegVolElmInfo, m_sel, m_vrtxAttAccsVecSegmLimSid, ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckFulldimElem(), 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(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::schluckVecAttUnclosedFractElm(), UG_LOG, and UG_THROW.
Referenced by run().
|
private |
References ug::GridSubsetHandler::assign_subset(), ug::CalculateCenter(), ug::Grid::create(), detachMarkers(), ug::EdgeContains(), ug::Grid::get_edge(), ug::Grid::get_side(), ug::ISubsetHandler::get_subset_index(), m_aaMarkFaceIsFracB, m_aaMarkFaceWithEndingCrossingCleft, m_aaPos, m_aaVrtVecVol, m_facAttAccsIfFaceIsSegmLimFaceEndingCrossingCleft, m_fracInfosBySubset, m_grid, m_sh, m_vecEndCrossFractSegmInfo, m_volAttAccsVolTouchesEndingCrossingCleft, ug::Face::num_edges(), ug::FaceVertices::num_vertices(), UG_LOG, UG_THROW, ug::EdgeVertices::vertex(), ug::FaceVertices::vertex(), and ug::VolumeContains().
Referenced by createNewElements().
|
private |
References addElem(), ug::GridSubsetHandler::assign_subset(), averageBndryNormals(), computeCrossingPointOf3Planes(), computeCrossPointOfPlaneWithLine(), ug::Grid::create(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::hasUnclosedFaces(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::isBoundary(), m_aaPos, m_aaVrtVecVol, m_fracInfosBySubset, m_grid, m_sh, m_vecEndCrossFractSegmInfo, m_vrtxArisesFromExpandedEndingCrossingCleft, m_vrtxAttAccsVrtxArisesFromExpandedEndingCrossingCleft, ug::ISubsetHandler::num_subsets(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckBndryManifDescr(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckCrossingTyp(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckFractManifDescr(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckLowdimElmShiftDirectionIfUnclosedFractPresent(), ug::support::ManifoldDescriptor< VECTOR_TYP, LOWDIMELM >::spuckPlaneShifted(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVecFulldimElem(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVertex(), testIfNewPointsSqueezeVolumes(), UG_LOG, UG_THROW, ug::VecCross(), and ug::VecLength().
Referenced by establishNewVertizesStasiBased().
|
private |
References addElem(), UG_LOG, and UG_THROW.
Referenced by detectEndingCrossingCleftsSegmBased().
|
private |
References ug::CalculateCenter(), ug::support::AttachedGeneralElem< MANIFELM, LOWDIMELM, INDEX_TXP >::getManifElm(), ug::support::AttachedGeneralElem< MANIFELM, LOWDIMELM, INDEX_TXP >::getPairLowElm(), ug::support::AttachedFractElem< MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getSudo(), m_aaPos, UG_LOG, and UG_THROW.
|
private |
References ug::aPosition, ug::Grid::enable_options(), ug::FACEOPT_AUTOGENERATE_EDGES, ug::Grid::has_vertex_attachment(), m_aaPos, m_fracInfos, m_fracInfosBySubset, m_grid, m_sh, ug::ISubsetHandler::num_subsets(), ug::Grid::option_is_enabled(), UG_LOG, and ug::VOLOPT_AUTOGENERATE_FACES.
Referenced by run().
|
private |
References ug::Selector::begin(), ug::Selector::end(), establishNewVertizesStasiBased(), m_aaPos, m_sel, m_vecCrossVrtInf, m_vrtxAttAccsVecSegmLimSid, and UG_LOG.
Referenced by run().
|
private |
References ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addBndryManifElem(), ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addFractManifElem(), ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addGenerManifElem(), computeNormalKuhVolProcedure(), ug::EdgeContains(), ug::FaceContains(), ug::Grid::get_edge(), ug::Grid::get_face(), ug::ISubsetHandler::get_subset_index(), ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getFulldimElem(), ug::IsBoundaryFace3D(), m_aaMarkVrtVFP, m_aaPos, m_grid, m_sh, ug::Face::num_edges(), ug::Volume::num_faces(), UG_LOG, and UG_THROW.
Referenced by stasiAlgo().
| bool ug::ArteExpandFracs3D::run | ( | bool & | needToRestart | ) |
References assignOrigFracInfos(), attachMarkers(), countAndSelectFracBaseNums(), createConditionForNewVrtcs(), createNewElements(), deleteEndingCrossingCleftOrigFacs(), detachMarkers(), detectEndingCrossingCleftsSegmBased(), distinguishSegments(), enableVolOptAutoGenFac(), establishNewVrtBase(), establishSegmentLimitingSidesInfo(), initialize(), loop2EstablishNewVertices(), m_needToSplitEdgesConnectingNeighbrdEndingCrossCleftVrtx, seletForSegmented(), setSelector(), splitInnerFreeFracEdgs(), and UG_LOG.
Referenced by ug::ExpandFractures3dArte().
|
private |
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), ug::Grid::associated_volumes_begin(), ug::Grid::associated_volumes_end(), ug::Selector::begin(), ug::EdgeContains(), ug::Selector::end(), ug::FaceContains(), ug::Grid::get_edge(), ug::Grid::get_face(), ug::ISubsetHandler::get_subset_index(), m_aaMarkVrtVFP, m_aaPos, m_aaVrtInfoAssoEdges, m_aaVrtInfoAssoFaces, m_accsAttVecSegVolElmInfo, m_grid, m_sel, m_sh, ug::support::VertexFracturePropertiesVol< T, ATT_ELEM >::noFracSuDoAtt, ug::Volume::num_faces(), ug::ISelector::select(), UG_LOG, and UG_THROW.
Referenced by run().
|
inlineprivate |
References m_allowedSqueeze.
|
private |
References ug::Selector::assign_grid(), ug::ISelector::enable_autoselection(), ug::ISelector::enable_selection_inheritance(), ug::ISelector::enable_strict_inheritance(), m_grid, and m_sel.
Referenced by run().
|
private |
|
private |
References m_accsAttVecSegVolElmInfo, UG_LOG, and UG_THROW.
Referenced by distinguishSegments().
|
private |
References ug::GridSubsetHandler::assign_subset(), ug::CalculateCenter(), detachMarkers(), ug::EdgeContains(), m_aaPos, m_grid, m_sh, m_vecEdgeDirectConnectingEndingCrossCleftVrtcs, m_vecEndCrossFractSegmInfo, ug::ISubsetHandler::num_subsets(), and UG_LOG.
Referenced by detectEndingCrossingCleftsSegmBased().
|
private |
References ug::GridSubsetHandler::assign_subset(), ug::Grid::attach_to_edges_dv(), ug::GridSubsetHandler::begin(), ug::CalculateCenter(), ug::CollectEdges(), ug::Grid::detach_from_edges(), ug::GridSubsetHandler::end(), ug::support::VertexFracturePropertiesVol< T, ATT_ELEM >::getNumberFracEdgesInVertex(), m_aaPos, m_fracInfos, m_grid, m_sh, ug::ISubsetHandler::num_subsets(), UG_LOG, and UG_THROW.
Referenced by run().
|
private |
References ug::GridSubsetHandler::assign_subset(), ug::Grid::associated_volumes_begin(), ug::Grid::associated_volumes_end(), ug::CalculateCenter(), ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getFulldimElem(), ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::hasSameFulldimElem(), m_aaMarkVrtVFP, m_aaPos, m_accsAttVecSegVolElmInfo, m_grid, m_sh, ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::markIt(), ug::ISubsetHandler::num_subsets(), prepareStasi(), ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::testFullDimElmNeighbour(), UG_LOG, and UG_THROW.
Referenced by distinguishSegments().
|
private |
References addElem(), ug::GridSubsetHandler::assign_subset(), ug::CalculateCenter(), computeCrossPointOfPlaneWithLine(), m_aaPos, m_grid, m_sh, m_volsViolatingExpansion, m_vrtcsViolatingExpansion, ug::ISubsetHandler::num_subsets(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckListLowdimElmsOfVols(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVecFulldimElem(), ug::support::SegmentSides< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, VECTOR_TYP, VRTXTYP >::spuckVertex(), UG_LOG, UG_THROW, and ug::VolumeContains().
Referenced by expandWithinTheSegment().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), countAndSelectFracBaseNums(), and createNewElements().
|
private |
|
private |
|
private |
|
private |
Referenced by attachMarkers(), and detectEndingCrossingCleftsSegmBased().
|
private |
Referenced by computeCrossPointOfPlaneWithLine(), computeNormalKuhVolProcedure(), countAndSelectFracBaseNums(), createNewElements(), detectEndingCrossingCleftsSegmBased(), distinguishSegments(), establishSegmentLimitingSidesInfo(), etablishVolumesAtEndingCrossingClefts(), expandWithinTheSegment(), fractFacesAreNeighboured(), initialize(), loop2EstablishNewVertices(), prepareStasi(), seletForSegmented(), splitEdgesOfNeighboredEndingCrossingFracVrtcs(), splitInnerFreeFracEdgs(), stasiAlgo(), and testIfNewPointsSqueezeVolumes().
|
private |
Referenced by attachMarkers(), and seletForSegmented().
|
private |
Referenced by attachMarkers(), and seletForSegmented().
|
private |
|
private |
|
private |
Referenced by computeCrossPointOfPlaneWithLine(), and setAllowedSqueeze().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
Referenced by attachMarkers(), and detachMarkers().
|
private |
|
private |
|
private |
|
private |
Referenced by assignOrigFracInfos(), countAndSelectFracBaseNums(), initialize(), and splitInnerFreeFracEdgs().
|
private |
|
private |
Referenced by attachMarkers(), computeCrossPointOfPlaneWithLine(), computeNormalKuhVolProcedure(), countAndSelectFracBaseNums(), createNewElements(), deleteEndingCrossingCleftOrigFacs(), detachMarkers(), enableVolOptAutoGenFac(), etablishVolumesAtEndingCrossingClefts(), expandWithinTheSegment(), initialize(), prepareStasi(), seletForSegmented(), setSelector(), splitEdgesOfNeighboredEndingCrossingFracVrtcs(), splitInnerFreeFracEdgs(), stasiAlgo(), and testIfNewPointsSqueezeVolumes().
|
private |
Referenced by detectEndingCrossingCleftsSegmBased(), and run().
|
private |
Referenced by assignOrigFracInfos().
|
private |
Referenced by ArteExpandFracs3D(), assignOrigFracInfos(), countAndSelectFracBaseNums(), createConditionForNewVrtcs(), createNewElements(), detectEndingCrossingCleftsSegmBased(), distinguishSegments(), establishNewVrtBase(), establishSegmentLimitingSidesInfo(), loop2EstablishNewVertices(), seletForSegmented(), and setSelector().
|
private |
Referenced by assignDebugSubsets(), assignOrigFracInfos(), computeCrossPointOfPlaneWithLine(), countAndSelectFracBaseNums(), createNewElements(), detectEndingCrossingCleftsSegmBased(), etablishVolumesAtEndingCrossingClefts(), expandWithinTheSegment(), initialize(), prepareStasi(), seletForSegmented(), splitEdgesOfNeighboredEndingCrossingFracVrtcs(), splitInnerFreeFracEdgs(), stasiAlgo(), and testIfNewPointsSqueezeVolumes().
|
private |
|
private |
Referenced by loop2EstablishNewVertices().
|
private |
Referenced by detectEndingCrossingCleftsSegmBased(), and splitEdgesOfNeighboredEndingCrossingFracVrtcs().
|
private |
|
private |
|
private |
|
private |
Referenced by testIfNewPointsSqueezeVolumes().
|
private |
Referenced by testIfNewPointsSqueezeVolumes().
|
private |
Referenced by expandWithinTheSegment().
|
private |
Referenced by attachMarkers(), and detectEndingCrossingCleftsSegmBased().
|
private |
|
private |
Referenced by attachMarkers(), createNewElements(), and expandWithinTheSegment().