ug4
|
Enumerations | |
enum | ug::NeighborhoodType { ug::NHT_DEFAULT = 0 , ug::NHT_VERTEX_NEIGHBORS = 1 , ug::NHT_EDGE_NEIGHBORS = 1<<1 , ug::NHT_FACE_NEIGHBORS = 1<<2 , ug::NHT_VOLUME_NEIGHBORS = 1<<3 , ug::NHT_ALL } |
Constants to specify a neighborhood. More... | |
Functions | |
void | ug::CollectAssociated (std::vector< Edge * > &vEdgesOut, Grid &grid, GridObject *obj, bool clearContainer=true) |
void | ug::CollectAssociated (std::vector< Face * > &vFacesOut, Grid &grid, Face *vol, bool clearContainer=true) |
Collects all faces. (Returns the face itself) More... | |
void | ug::CollectAssociated (std::vector< Face * > &vFacesOut, Grid &grid, GridObject *obj, bool clearContainer=true) |
void | ug::CollectAssociated (std::vector< Face * > &vFacesOut, Grid &grid, Vertex *vrt, bool clearContainer=true) |
UG_API void | ug::CollectAssociated (std::vector< Vertex * > &vVertexOut, Grid &grid, GridObject *obj, bool clearContainer=true) |
void | ug::CollectAssociated (std::vector< Volume * > &vVolumesOut, Grid &grid, GridObject *obj, bool clearContainer=true) |
void | ug::CollectAssociated (std::vector< Volume * > &vVolumesOut, Grid &grid, Vertex *vrt, bool clearContainer=true) |
void | ug::CollectAssociated (std::vector< Volume * > &vVolumesOut, Grid &grid, Volume *vol, bool clearContainer=true) |
Collects all volumes. (Returns the volume itself) More... | |
UG_API void | ug::CollectEdgesSorted (std::vector< Edge * > &vEdgesOut, Grid &grid, Edge *e, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given edge in the order defined by the reference elements. More... | |
UG_API void | ug::CollectEdgesSorted (std::vector< Edge * > &vEdgesOut, Grid &grid, Face *f, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given face in the order defined by the reference elements. More... | |
void | ug::CollectEdgesSorted (std::vector< Edge * > &vEdgesOut, Grid &grid, GridObject *obj, bool clearContainer=true) |
UG_API void | ug::CollectEdgesSorted (std::vector< Edge * > &vEdgesOut, Grid &grid, Vertex *v, bool clearContainer=true) |
Collects all edges of a vertex, thus, none. More... | |
UG_API void | ug::CollectEdgesSorted (std::vector< Edge * > &vEdgesOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given volume in the order defined by the reference elements. More... | |
UG_API void | ug::CollectFaces (std::vector< Face * > &vFacesOut, Grid &grid, Face *v, bool clearContainer=true) |
Collects all faces. (Returns the face itself) More... | |
void | ug::CollectFaces (std::vector< Face * > &vFacesOut, Grid &grid, Vertex *vrt, bool clearContainer) |
Collects all faces that exist in the given grid which contain the given vertex. More... | |
UG_API void | ug::CollectFacesSorted (std::vector< Face * > &vFacesOut, Grid &grid, Edge *e, bool clearContainer=true) |
Collects all face that exist in the given grid are part of the given edge in the order defined by the reference elements. More... | |
UG_API void | ug::CollectFacesSorted (std::vector< Face * > &vFacesOut, Grid &grid, Face *f, bool clearContainer=true) |
Collects all face that exist in the given grid are part of the given face in the order defined by the reference elements. More... | |
void | ug::CollectFacesSorted (std::vector< Face * > &vFacesOut, Grid &grid, GridObject *obj, bool clearContainer=true) |
UG_API void | ug::CollectFacesSorted (std::vector< Face * > &vFacesOut, Grid &grid, Vertex *v, bool clearContainer=true) |
Collects all Faces of a Vertex, thus, none. More... | |
UG_API void | ug::CollectFacesSorted (std::vector< Face * > &vFacesOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all face that exist in the given grid are part of the given volume in the order defined by the reference elements. More... | |
void | ug::CollectNeighborhood (std::vector< Face * > &facesOut, Grid &grid, Vertex *vrt, size_t range, bool clearContainer=true) |
Collects all neighbors in a given neighborhood of a vertex. More... | |
void | ug::CollectNeighbors (std::vector< Edge * > &vNeighborsOut, Edge *e, Grid &grid, NeighborhoodType nbhType=NHT_VERTEX_NEIGHBORS) |
collects all edges that are connected to the given one. More... | |
void | ug::CollectNeighbors (std::vector< Face * > &vNeighborsOut, Face *f, Grid &grid, NeighborhoodType nbhType=NHT_EDGE_NEIGHBORS) |
collects all faces that are connected to the given one. More... | |
void | ug::CollectNeighbors (std::vector< Vertex * > &vNeighborsOut, Grid &grid, Vertex *vrt, uint nbhType=NHT_EDGE_NEIGHBORS, Grid::edge_traits::callback considerEdge=ConsiderAll(), Grid::face_traits::callback considerFace=ConsiderAll(), Grid::volume_traits::callback considerVol=ConsiderAll()) |
Collects all vertices that are connected by elements of the specified type. More... | |
void | ug::CollectNeighbors (std::vector< Volume * > &vNeighboursOut, Volume *v, Grid &grid, NeighborhoodType nbhType=NHT_FACE_NEIGHBORS) |
collects all volumes that are connected to the given one. More... | |
UG_API void | ug::CollectVertices (std::vector< Vertex * > &vVertexOut, Grid &grid, GridObject *obj, bool clearContainer=true) |
void | ug::CollectVolumes (std::vector< Volume * > &vVolumesOut, Grid &grid, Vertex *vrt, bool clearContainer=true) |
Collects all volumes that exist in the given grid which contain the given vertex. More... | |
UG_API void | ug::CollectVolumes (std::vector< Volume * > &vVolumesOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all volumes. (Returns the volume itself) More... | |
void | ug::CollectVertices (std::vector< Vertex * > &vVertexOut, Grid &grid, Vertex *v, bool clearContainer) |
Collects all vertices. More... | |
UG_API void | ug::CollectAssociated (std::vector< Vertex * > &vVertexOut, Grid &grid, Vertex *v, bool clearContainer=true) |
Collects all vertices. More... | |
void | ug::CollectVertices (std::vector< Vertex * > &vVertexOut, Grid &grid, Edge *e, bool clearContainer) |
Collects all vertices. More... | |
UG_API void | ug::CollectAssociated (std::vector< Vertex * > &vVertexOut, Grid &grid, Edge *e, bool clearContainer=true) |
Collects all vertices. More... | |
void | ug::CollectVertices (std::vector< Vertex * > &vVertexOut, Grid &grid, Face *f, bool clearContainer) |
Collects all vertices. More... | |
UG_API void | ug::CollectAssociated (std::vector< Vertex * > &vVertexOut, Grid &grid, Face *f, bool clearContainer=true) |
Collects all vertices. More... | |
void | ug::CollectVertices (std::vector< Vertex * > &vVertexOut, Grid &grid, Volume *v, bool clearContainer) |
Collects all vertices. More... | |
void | ug::CollectAssociated (std::vector< Vertex * > &vVertexOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all vertices. More... | |
size_t | ug::NumVertices (Edge *elem) |
Returns the number of vertices of the given geometric object. More... | |
size_t | ug::NumVertices (Face *elem) |
Returns the number of vertices of the given geometric object. More... | |
size_t | ug::NumVertices (Volume *elem) |
Returns the number of vertices of the given geometric object. More... | |
void | ug::CollectEdges (std::vector< Edge * > &vEdgesOut, Grid &grid, Vertex *vrt, bool clearContainer) |
Collects all edges which exist in the given grid and which are part of the given vertex. More... | |
void | ug::CollectAssociated (std::vector< Edge * > &vEdgesOut, Grid &grid, Vertex *vrt, bool clearContainer=true) |
Collects all edges which exist in the given grid and which are part of the given vertex. More... | |
UG_API void | ug::CollectEdges (std::vector< Edge * > &vEdgesOut, Grid &grid, Edge *e, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given edge. More... | |
void | ug::CollectAssociated (std::vector< Edge * > &vEdgesOut, Grid &grid, Edge *e, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given edge. More... | |
UG_API void | ug::CollectEdges (std::vector< Edge * > &vEdgesOut, Grid &grid, Face *f, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given face. More... | |
void | ug::CollectAssociated (std::vector< Edge * > &vEdgesOut, Grid &grid, Face *f, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given face. More... | |
UG_API void | ug::CollectEdges (std::vector< Edge * > &vEdgesOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given volume. More... | |
void | ug::CollectAssociated (std::vector< Edge * > &vEdgesOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all edges that exist in the given grid are part of the given volume. More... | |
void | ug::CollectFaces (std::vector< Face * > &vFacesOut, Grid &grid, Edge *e, bool clearContainer) |
Collects all faces that exist in the given grid which contain the given edge. More... | |
void | ug::CollectAssociated (std::vector< Face * > &vFacesOut, Grid &grid, Edge *e, bool clearContainer=true) |
Collects all faces that exist in the given grid which contain the given edge. More... | |
UG_API void | ug::CollectFaces (std::vector< Face * > &vFacesOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all faces that exist in the given grid are part of the given volume. More... | |
void | ug::CollectAssociated (std::vector< Face * > &vFacesOut, Grid &grid, Volume *v, bool clearContainer=true) |
Collects all faces that exist in the given grid are part of the given volume. More... | |
void | ug::CollectVolumes (std::vector< Volume * > &vVolumesOut, Grid &grid, Edge *e, bool clearContainer) |
Collects all volumes that exist in the given grid which contain the given edge. More... | |
void | ug::CollectAssociated (std::vector< Volume * > &vVolumesOut, Grid &grid, Edge *e, bool clearContainer=true) |
Collects all volumes that exist in the given grid which contain the given edge. More... | |
void | ug::CollectVolumes (std::vector< Volume * > &vVolumesOut, Grid &grid, Face *f, bool clearContainer, bool ignoreAssociatedVolumes) |
Collects all volumes that exist in the given grid which contain the given face. More... | |
void | ug::CollectAssociated (std::vector< Volume * > &vVolumesOut, Grid &grid, Face *f, bool clearContainer=true, bool ignoreAssociatedVolumes=false) |
Collects all volumes that exist in the given grid which contain the given face. More... | |
void | ug::CollectVolumes (std::vector< Volume * > &vVolumesOut, Grid &grid, FaceDescriptor &fd, bool clearContainer) |
Collects all volumes that exist in the given grid which contain the given face. More... | |
void | ug::CollectAssociated (std::vector< Volume * > &vVolumesOut, Grid &grid, FaceDescriptor &fd, bool clearContainer=true) |
Collects all volumes that exist in the given grid which contain the given face. More... | |
Methods to access the neighborhood of geometric objects
enum ug::NeighborhoodType |
|
inline |
Collects all edges that exist in the given grid are part of the given edge.
This function simply returns the edge itself. It is added for completeness, such that the function can be used in template code.
Collects all edges that exist in the given grid are part of the given edge.
References ug::CollectEdges().
|
inline |
Collects all edges that exist in the given grid are part of the given face.
if FACEOPT_STORE_ASSOCIATED_EDGES is enabled then the algorithm uses associated_edges_begin(f), associated_edges_end(f) in order to find the edges. If not, GetEdge is used. This possibly involves auto-enabling of VRTOPT_STORE_ASSOCIATED_EDGES. The second option performs worse!
Collects all edges that exist in the given grid are part of the given face.
References ug::CollectEdges().
|
inline |
References ug::GridObject::base_object_id(), ug::CollectAssociated(), ug::EDGE, ug::FACE, ug::VERTEX, and ug::VOLUME.
|
inline |
Collects all edges which exist in the given grid and which are part of the given vertex.
Collects all edges that exist in the given grid are part of the given edge.
References ug::CollectEdges().
|
inline |
Collects all edges that exist in the given grid are part of the given volume.
if VOLOPT_STORE_ASSOCIATED_EDGES is enabled then the algorithm uses associated_edges_begin(v), associated_edges_end(v) in order to find the edges. If not, GetEdge is used. This possibly involves auto-enabling of VRTOPT_STORE_ASSOCIATED_EDGES. The second option performs worse!
References ug::CollectEdges().
|
inline |
Collects all faces that exist in the given grid which contain the given edge.
if EDGEOPT_STORE_ASSOCIATED_FACES is enabled then the algorithm uses associated_faces_begin(e), associated_faces_end(e) in order to find the faces. if not the algorithm iterates over all faces associated with one of the edges end-points and returns each face which contains the edge.
References ug::CollectFaces().
|
inline |
Collects all faces. (Returns the face itself)
References ug::CollectFaces().
|
inline |
References ug::GridObject::base_object_id(), ug::CollectAssociated(), ug::EDGE, ug::FACE, ug::VERTEX, and ug::VOLUME.
|
inline |
References ug::CollectFaces().
|
inline |
Collects all faces that exist in the given grid are part of the given volume.
if VOLOPT_STORE_ASSOCIATED_VOLUMES is enabled then the algorithm uses associated_faces_begin(v), associated_faces_end(v) in order to find the faces. If not, GetFace is used. This possibly involves auto-enabling of VRTOPT_STORE_ASSOCIATED_FACES. The second option performs worse!
References ug::CollectFaces().
|
inline |
Collects all vertices.
Collects all vertices that are part of the given edge.
This function returns a std::vector of pointers to all vertices, that are part of the given edge.
References ug::CollectVertices().
|
inline |
Collects all vertices.
Collects all vertices that are part of the given face.
This function returns a std::vector of pointers to all vertices, that are part of the given face.
References ug::CollectVertices().
|
inline |
References ug::GridObject::base_object_id(), ug::EDGE, ug::FACE, ug::VERTEX, and ug::VOLUME.
Referenced by ug::GlobalFracturedMediaRefiner::assign_elem_and_side_marks(), ug::HangingNodeRefinerBase< TSelector >::assign_hnode_marks(), ug::AssignAssociatedSidesToSubsets(), ug::AssignSidesToSubsets(), ug::CalculateAspectRatio(), ug::CalculateBoundaryVertexNormal2D(), ug::CalculateBoundaryVertexNormal3D(), ug::CalculateHexahedronAspectRatio(), ug::CalculateSmoothCreaseManifoldPosInParentLevelLoopScheme(), ug::CalculateSmoothManifoldPosInParentLevelButterflyScheme(), ug::CalculateSmoothManifoldPosInParentLevelLoopScheme(), ug::CalculateTetrahedronAspectRatio(), ug::CalculateTetrahedronRootMeanSquareFaceArea(), ug::grid_unit_tests::CheckAssociatedEdgesOfVolumes(), ug::grid_unit_tests::CheckAssociatedVolumesOfEdges(), ug::SurfaceView::collect_associated(), ug::FracturedMediaRefiner< TGrid, TAPosition >::collect_objects_for_refine(), ug::CollectAssociated(), ug::CollectAssociatedSides(), ug::DistributeExpansionMarks3D(), ug::DistributedGridManager::end_element_deletion(), ug::GetFirstRegularVertex(), ug::MakeDelaunay(), ug::GlobalFracturedMediaRefiner::mark_sides_of_marked_top_level_elements(), ug::MarkForAdaption_VerticesInCube(), ug::MarkForAdaption_VerticesInSphereMaxLvl(), ug::MinimizeEdgeLength_SwapsOnly(), ug::PartitionElements_RegularGrid(), ug::PerformCollapses(), ug::QualityGridGeneration(), ug::GlobalFracturedMediaRefiner::save_marks_to_file(), ug::SelectAreaBoundary(), ug::SelectAssociated(), ug::SelectInterfaceElements(), ug::SelectionFill(), ug::SelectLinkedFlatAndDegeneratedFaces(), ug::SelectLinkedFlatFaces(), ug::SelectNonShadowsAdjacentToShadowsOnLevel(), ug::SeparateSubsetsByLowerDimSeparators(), ug::SplitIrregularManifoldSubset(), ug::DimFEGeometry< TWorldDim, TRefDim >::update_boundary_faces(), and ug::VisitAreaBoundary().
|
inline |
Collects all vertices.
Dummy-method. Puts the vertex itself into the given vector.
This function simply returns the vertex itself. It is added for completeness, such that the function can be used in template code.
References ug::CollectVertices().
|
inline |
Collects all vertices.
Collects all vertices that are part of the given volume.
This function returns a std::vector of pointers to all vertices, that are part of the given volume.
References ug::CollectVertices().
|
inline |
Collects all volumes that exist in the given grid which contain the given edge.
if EDGEOPT_STORE_ASSOCIATED_VOLUMES is enabled then the algorithm uses associated_volumes_begin(e), associated_volumes_end(e) in order to find the volumes. if not the algorithm iterates over all volumes associated with one of the edges end-points and returns each volume that contains the edge.
References ug::CollectVolumes().
|
inline |
Collects all volumes that exist in the given grid which contain the given face.
if FACEOPT_STORE_ASSOCIATED_VOLUMES is enabled then the algorithm uses associated_volumes_begin(f), associated_volumes_end(f) in order to find the volumes. if not the algorithm iterates over all volumes associated with one of the faces end-points and returns each volume that contains the face.
References ug::CollectVolumes().
|
inline |
Collects all volumes that exist in the given grid which contain the given face.
if FACEOPT_STORE_ASSOCIATED_VOLUMES is enabled then the algorithm uses associated_volumes_begin(f), associated_volumes_end(f) in order to find the volumes. if not the algorithm iterates over all volumes associated with one of the faces end-points and returns each volume that contains the face.
References ug::CollectVolumes().
|
inline |
References ug::GridObject::base_object_id(), ug::CollectAssociated(), ug::EDGE, ug::FACE, ug::VERTEX, and ug::VOLUME.
|
inline |
References ug::CollectVolumes().
|
inline |
Collects all volumes. (Returns the volume itself)
References ug::CollectVolumes().
UG_API void ug::CollectEdges | ( | vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Edge * | e, | ||
bool | clearContainer | ||
) |
Collects all edges that exist in the given grid are part of the given edge.
This function simply returns the edge itself. It is added for completeness, such that the function can be used in template code.
Collects all edges that exist in the given grid are part of the given edge.
References ug::Grid::num().
UG_API void ug::CollectEdges | ( | vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Face * | f, | ||
bool | clearContainer | ||
) |
Collects all edges that exist in the given grid are part of the given face.
if FACEOPT_STORE_ASSOCIATED_EDGES is enabled then the algorithm uses associated_edges_begin(f), associated_edges_end(f) in order to find the edges. If not, GetEdge is used. This possibly involves auto-enabling of VRTOPT_STORE_ASSOCIATED_EDGES. The second option performs worse!
Collects all edges that exist in the given grid are part of the given face.
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::FACEOPT_STORE_ASSOCIATED_EDGES, ug::Grid::get_edge(), ug::Grid::num(), ug::Face::num_edges(), and ug::Grid::option_is_enabled().
UG_API void ug::CollectEdges | ( | std::vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Vertex * | vrt, | ||
bool | clearContainer | ||
) |
Collects all edges which exist in the given grid and which are part of the given vertex.
Collects all edges that exist in the given grid are part of the given edge.
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), and ug::Grid::num().
Referenced by ug::AdjustSelection(), ug::AssignAssociatedEdgesToSubsets(), ug::AssignFaceInterfaceEdgesToSubsets(), ug::AssignInnerAndBoundarySubsets(), ug::CalculateCreaseNormal(), ug::CollectAssociated(), ug::CollectSurfaceNeighborsSorted(), ug::ColorControlVolume(), ug::ArteExpandFracs3D::countAndSelectFracBaseNums(), ug::DistributeExpansionMarks3D(), ug::EraseConnectingElements(), ug::ExpandFractures2d(), ug::ArteExpandFracs3D::generateVertexInfos(), ug::Grid::register_and_replace_element(), ug::Grid::replace_vertex(), ug::SaveGridToART(), ug::SelectAssociatedEdges(), ug::SelectInnerSelectionEdges(), ug::TryCollapse(), and ug::WriteLGM().
UG_API void ug::CollectEdges | ( | std::vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Volume * | v, | ||
bool | clearContainer = true |
||
) |
Collects all edges that exist in the given grid are part of the given volume.
if VOLOPT_STORE_ASSOCIATED_EDGES is enabled then the algorithm uses associated_edges_begin(v), associated_edges_end(v) in order to find the edges. If not, GetEdge is used. This possibly involves auto-enabling of VRTOPT_STORE_ASSOCIATED_EDGES. The second option performs worse!
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::Grid::get_edge(), ug::Grid::num(), ug::Volume::num_edges(), ug::Grid::option_is_enabled(), and ug::VOLOPT_STORE_ASSOCIATED_EDGES.
UG_API void ug::CollectEdgesSorted | ( | vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Edge * | e, | ||
bool | clearContainer | ||
) |
Collects all edges that exist in the given grid are part of the given edge in the order defined by the reference elements.
This function simply returns the edge itself. It is added for completeness, such that the function can be used in template code.
Collects all edges that exist in the given grid are part of the given edge in the order defined by the reference elements.
UG_API void ug::CollectEdgesSorted | ( | vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Face * | f, | ||
bool | clearContainer | ||
) |
Collects all edges that exist in the given grid are part of the given face in the order defined by the reference elements.
This function returns the associated edges of a face in an std::vector. The order of the edges in the vector is equal to the numbering of edges in the reference element for the face.
Collects all edges that exist in the given grid are part of the given face in the order defined by the reference elements.
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::FACEOPT_AUTOGENERATE_EDGES, ug::FACEOPT_STORE_ASSOCIATED_EDGES, ug::Grid::get_edge(), ug::Grid::num(), ug::Face::num_edges(), and ug::Grid::option_is_enabled().
|
inline |
References ug::GridObject::base_object_id(), ug::CollectEdgesSorted(), ug::EDGE, ug::FACE, ug::VERTEX, and ug::VOLUME.
UG_API void ug::CollectEdgesSorted | ( | std::vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Vertex * | v, | ||
bool | clearContainer = true |
||
) |
Collects all edges of a vertex, thus, none.
Referenced by ug::CollectEdgesSorted(), ug::collectStretchedElementIndices(), ug::HFV1ManifoldGeometry< TElem, TWorldDim >::update(), ug::HCRFVGeometry< TElem, TWorldDim >::update(), ug::HFV1Geometry< TElem, TWorldDim >::update(), ug::DimHFV1Geometry< TDim, TWorldDim >::update(), ug::DimFV1Geometry< TDim, TWorldDim >::update_boundary_faces(), ug::FV1IBGeometry< TElem, TWorldDim >::update_boundary_faces(), ug::DimFV1IBGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::CRFVGeometry< TElem, TWorldDim >::update_boundary_faces(), ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::update_boundary_faces(), ug::DimFVGeometry< TWorldDim, TDim >::update_boundary_faces(), and ug::DimCRFVGeometry< TDim, TWorldDim >::update_hanging().
UG_API void ug::CollectEdgesSorted | ( | std::vector< Edge * > & | vEdgesOut, |
Grid & | grid, | ||
Volume * | v, | ||
bool | clearContainer = true |
||
) |
Collects all edges that exist in the given grid are part of the given volume in the order defined by the reference elements.
This function returns the associated edges of a volume in an std::vector. The order of the edges in the vector is equal to the numbering of edges in the reference element for the volume.
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::FACEOPT_AUTOGENERATE_EDGES, ug::Grid::get_edge(), ug::Grid::num(), ug::Volume::num_edges(), ug::Grid::option_is_enabled(), ug::VOLOPT_AUTOGENERATE_EDGES, ug::VOLOPT_AUTOGENERATE_FACES, and ug::VOLOPT_STORE_ASSOCIATED_EDGES.
UG_API void ug::CollectFaces | ( | std::vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Edge * | e, | ||
bool | clearContainer = true |
||
) |
Collects all faces that exist in the given grid which contain the given edge.
if EDGEOPT_STORE_ASSOCIATED_FACES is enabled then the algorithm uses associated_faces_begin(e), associated_faces_end(e) in order to find the faces. if not the algorithm iterates over all faces associated with one of the edges end-points and returns each face which contains the edge.
References ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), ug::EDGEOPT_STORE_ASSOCIATED_FACES, ug::FaceContains(), ug::Grid::num(), ug::Grid::option_is_enabled(), and ug::EdgeVertices::vertex().
UG_API void ug::CollectFaces | ( | std::vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Face * | v, | ||
bool | clearContainer = true |
||
) |
Collects all faces. (Returns the face itself)
References ug::Grid::num().
UG_API void ug::CollectFaces | ( | std::vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Vertex * | vrt, | ||
bool | clearContainer | ||
) |
Collects all faces that exist in the given grid which contain the given vertex.
References ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), and ug::Grid::num().
Referenced by ug::AdjustSelection(), ug::AdjustSubsetsForLgmNg(), ug::AssignAssociatedFacesToSubsets(), ug::AssignFaceInterfaceEdgesToSubsets(), ug::AssignVolumeInterfaceFacesToSubsets(), ug::CalculateCreaseNormal(), ug::CollectAssociated(), ug::CollectLines(), ug::ColorControlVolume(), ug::CreateEdgeSplitGeometry(), ug::DeselectBoundarySelectionEdges(), ug::EdgeCollapseIsValid(), ug::EraseConnectingElements(), ug::ExpandFractures3d(), ug::ExportGridToUG_2D(), ug::GetNeighbours(), ug::IsBoundaryEdge(), ug::IsBoundaryEdge3D(), ug::MultiEdgeSplit(), ug::HangingNodeRefiner_Grid::post_refine(), ug::Grid::register_and_replace_element(), ug::Grid::replace_vertex(), ug::SaveGridToART(), ug::SelectAssociatedFaces(), ug::SelectInnerSelectionEdges(), ug::SelectInnerSelectionFaces(), ug::SplitEdge(), ug::TryCollapse(), ug::Grid::unregister_edge(), ug::Grid::unregister_volume(), and ug::WriteNG().
UG_API void ug::CollectFaces | ( | std::vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Volume * | v, | ||
bool | clearContainer = true |
||
) |
Collects all faces that exist in the given grid are part of the given volume.
if VOLOPT_STORE_ASSOCIATED_VOLUMES is enabled then the algorithm uses associated_faces_begin(v), associated_faces_end(v) in order to find the faces. If not, GetFace is used. This possibly involves auto-enabling of VRTOPT_STORE_ASSOCIATED_FACES. The second option performs worse!
References ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), ug::Grid::get_face(), ug::Grid::num(), ug::Volume::num_faces(), ug::Grid::option_is_enabled(), and ug::VOLOPT_STORE_ASSOCIATED_FACES.
UG_API void ug::CollectFacesSorted | ( | vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Edge * | e, | ||
bool | clearContainer | ||
) |
Collects all face that exist in the given grid are part of the given edge in the order defined by the reference elements.
Collects all face that exist in the given grid are part of the given edge in the order defined by the reference elements.
UG_API void ug::CollectFacesSorted | ( | vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Face * | f, | ||
bool | clearContainer | ||
) |
Collects all face that exist in the given grid are part of the given face in the order defined by the reference elements.
Collects all face that exist in the given grid are part of the given face in the order defined by the reference elements.
|
inline |
References ug::GridObject::base_object_id(), ug::CollectFacesSorted(), ug::EDGE, ug::FACE, ug::VERTEX, and ug::VOLUME.
UG_API void ug::CollectFacesSorted | ( | std::vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Vertex * | v, | ||
bool | clearContainer = true |
||
) |
Collects all Faces of a Vertex, thus, none.
Referenced by ug::CollectFacesSorted(), ug::HCRFVGeometry< TElem, TWorldDim >::update(), ug::HFV1Geometry< TElem, TWorldDim >::update(), ug::DimHFV1Geometry< TDim, TWorldDim >::update(), ug::DimFV1Geometry< TDim, TWorldDim >::update_boundary_faces(), ug::FV1IBGeometry< TElem, TWorldDim >::update_boundary_faces(), ug::DimFV1IBGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::CRFVGeometry< TElem, TWorldDim >::update_boundary_faces(), ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::update_boundary_faces(), ug::DimFVGeometry< TWorldDim, TDim >::update_boundary_faces(), and ug::DimCRFVGeometry< TDim, TWorldDim >::update_hanging().
UG_API void ug::CollectFacesSorted | ( | vector< Face * > & | vFacesOut, |
Grid & | grid, | ||
Volume * | v, | ||
bool | clearContainer | ||
) |
Collects all face that exist in the given grid are part of the given volume in the order defined by the reference elements.
This function returns the associated faces of a volume in an std::vector. The order of the faces in the vector is equal to the numbering of faces in the reference element for the volume.
Collects all face that exist in the given grid are part of the given volume in the order defined by the reference elements.
References ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), ug::Grid::get_face(), ug::Grid::num(), ug::Volume::num_faces(), ug::Grid::option_is_enabled(), ug::VOLOPT_AUTOGENERATE_FACES, and ug::VOLOPT_STORE_ASSOCIATED_FACES.
void ug::CollectNeighborhood | ( | std::vector< Face * > & | facesOut, |
Grid & | grid, | ||
Vertex * | vrt, | ||
size_t | range, | ||
bool | clearContainer = true |
||
) |
Collects all neighbors in a given neighborhood of a vertex.
This algorithm uses Grid::mark
References ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), ug::Grid::begin_marking(), ug::Grid::end_marking(), ug::Grid::is_marked(), ug::Grid::mark(), ug::FaceVertices::num_vertices(), and ug::FaceVertices::vertices().
Referenced by ug::ObtainSimpleGrid_CollapseEdge().
void ug::CollectNeighbors | ( | std::vector< Edge * > & | vNeighborsOut, |
Edge * | e, | ||
Grid & | grid, | ||
NeighborhoodType | nbhType = NHT_VERTEX_NEIGHBORS |
||
) |
collects all edges that are connected to the given one.
This method uses Grid::mark.
if nbhType != NHT_VERTEX_NEIGHBORS, then vNeighborsOut will be empty. This parameter is featured for compatibility reasons with the other CollectNeighbors methods.
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::Grid::begin_marking(), ug::Grid::end_marking(), ug::Grid::is_marked(), ug::Grid::mark(), ug::NHT_DEFAULT, ug::NHT_VERTEX_NEIGHBORS, and ug::EdgeVertices::vertex().
void ug::CollectNeighbors | ( | std::vector< Face * > & | vNeighborsOut, |
Face * | f, | ||
Grid & | grid, | ||
NeighborhoodType | nbhType = NHT_EDGE_NEIGHBORS |
||
) |
collects all faces that are connected to the given one.
This method uses Grid::mark.
Using nbhType, you can choose which neighborhood you want to receive:
References ug::Grid::associated_edges_begin(), ug::Grid::associated_edges_end(), ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), ug::Grid::begin_marking(), ug::EDGEOPT_STORE_ASSOCIATED_FACES, ug::Grid::end_marking(), ug::FACEOPT_AUTOGENERATE_EDGES, ug::FACEOPT_STORE_ASSOCIATED_EDGES, ug::Grid::is_marked(), ug::Grid::mark(), ug::NHT_DEFAULT, ug::NHT_EDGE_NEIGHBORS, ug::NHT_FACE_NEIGHBORS, ug::NHT_VERTEX_NEIGHBORS, ug::FaceVertices::num_vertices(), ug::Grid::option_is_enabled(), and ug::FaceVertices::vertices().
void ug::CollectNeighbors | ( | std::vector< Vertex * > & | vNeighborsOut, |
Grid & | grid, | ||
Vertex * | vrt, | ||
uint | nbhType = NHT_EDGE_NEIGHBORS , |
||
Grid::edge_traits::callback | considerEdge = ConsiderAll() , |
||
Grid::face_traits::callback | considerFace = ConsiderAll() , |
||
Grid::volume_traits::callback | considerVol = ConsiderAll() |
||
) |
Collects all vertices that are connected by elements of the specified type.
This method uses Grid::mark.
You may specify the types of objects, which are regarded as connecting objects through or-combinations of constants enumerated in NeighborhoodType.
Through the consider... callbacks, you may specify whether a specific edge/face/volume shall be considered, when collecting neighbors of a vertex. By default, all geometric objects are considered.
vNeighboursOut | neighbor vertices |
grid | Grid |
sh | Subset Handler |
vrt | vertex |
subsetIndex | subset index |
nbhType | Accepts or-combinations of any NeighborhoodType enumerated constants. |
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::Grid::begin_marking(), ug::Grid::end_marking(), ug::GetConnectedVertex(), ug::Grid::is_marked(), ug::Grid::mark(), ug::NHT_EDGE_NEIGHBORS, ug::NHT_FACE_NEIGHBORS, ug::NHT_VOLUME_NEIGHBORS, ug::FaceVertices::num_vertices(), ug::VolumeVertices::num_vertices(), ug::FaceVertices::vertices(), and ug::VolumeVertices::vertices().
Referenced by ug::ConstructDualGraph(), ug::ConstructDualGraphMG(), ug::ConstructDualGraphMGLevel(), ug::ConstructParallelDualGraphMGLevel(), ug::EdgeCollapseIsValid(), and ug::FindSubsetGroups().
void ug::CollectNeighbors | ( | std::vector< Volume * > & | vNeighboursOut, |
Volume * | v, | ||
Grid & | grid, | ||
NeighborhoodType | nbhType = NHT_FACE_NEIGHBORS |
||
) |
collects all volumes that are connected to the given one.
This method uses Grid::mark.
Using nbhType, you can choose which neighborhood you want to receive:
References ug::Grid::associated_faces_begin(), ug::Grid::associated_faces_end(), ug::Grid::associated_volumes_begin(), ug::Grid::associated_volumes_end(), ug::Grid::begin_marking(), ug::Grid::end_marking(), ug::FACEOPT_STORE_ASSOCIATED_VOLUMES, ug::Grid::is_marked(), ug::Grid::mark(), ug::NHT_DEFAULT, ug::NHT_EDGE_NEIGHBORS, ug::NHT_FACE_NEIGHBORS, ug::NHT_VERTEX_NEIGHBORS, ug::VolumeVertices::num_vertices(), ug::Grid::option_is_enabled(), ug::VolumeVertices::vertices(), ug::VOLOPT_AUTOGENERATE_FACES, and ug::VOLOPT_STORE_ASSOCIATED_FACES.
UG_API void ug::CollectVertices | ( | std::vector< Vertex * > & | vVertexOut, |
Grid & | grid, | ||
Edge * | e, | ||
bool | clearContainer = true |
||
) |
Collects all vertices.
Collects all vertices that are part of the given edge.
This function returns a std::vector of pointers to all vertices, that are part of the given edge.
References ug::EdgeVertices::num_vertices(), and ug::EdgeVertices::vertex().
UG_API void ug::CollectVertices | ( | std::vector< Vertex * > & | vVertexOut, |
Grid & | grid, | ||
Face * | f, | ||
bool | clearContainer = true |
||
) |
Collects all vertices.
Collects all vertices that are part of the given face.
This function returns a std::vector of pointers to all vertices, that are part of the given face.
References ug::FaceVertices::num_vertices(), and ug::FaceVertices::vertices().
|
inline |
References ug::GridObject::base_object_id(), ug::CollectVertices(), ug::EDGE, ug::FACE, ug::VERTEX, and ug::VOLUME.
UG_API void ug::CollectVertices | ( | std::vector< Vertex * > & | vVertexOut, |
Grid & | grid, | ||
Vertex * | v, | ||
bool | clearContainer = true |
||
) |
Collects all vertices.
Dummy-method. Puts the vertex itself into the given vector.
This function simply returns the vertex itself. It is added for completeness, such that the function can be used in template code.
Referenced by ug::CollectAssociated(), ug::CollectVertices(), ug::FV1Geometry_gen< TElem, TWorldDim, false >::update_boundary_faces(), ug::DimFV1Geometry< TDim, TWorldDim >::update_boundary_faces(), ug::FV1IBGeometry< TElem, TWorldDim >::update_boundary_faces(), ug::DimFV1IBGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::CRFVGeometry< TElem, TWorldDim >::update_boundary_faces(), ug::FVGeometry< TOrder, TElem, TWorldDim, TQuadOrder >::update_boundary_faces(), and ug::DimFVGeometry< TWorldDim, TDim >::update_boundary_faces().
UG_API void ug::CollectVertices | ( | std::vector< Vertex * > & | vVertexOut, |
Grid & | grid, | ||
Volume * | v, | ||
bool | clearContainer = true |
||
) |
Collects all vertices.
Collects all vertices that are part of the given volume.
This function returns a std::vector of pointers to all vertices, that are part of the given volume.
References ug::VolumeVertices::num_vertices(), and ug::VolumeVertices::vertices().
UG_API void ug::CollectVolumes | ( | std::vector< Volume * > & | vVolumesOut, |
Grid & | grid, | ||
Edge * | e, | ||
bool | clearContainer = true |
||
) |
Collects all volumes that exist in the given grid which contain the given edge.
if EDGEOPT_STORE_ASSOCIATED_VOLUMES is enabled then the algorithm uses associated_volumes_begin(e), associated_volumes_end(e) in order to find the volumes. if not the algorithm iterates over all volumes associated with one of the edges end-points and returns each volume that contains the edge.
References ug::Grid::associated_volumes_begin(), ug::Grid::associated_volumes_end(), ug::EDGEOPT_STORE_ASSOCIATED_VOLUMES, ug::Grid::num(), ug::Grid::option_is_enabled(), ug::EdgeVertices::vertex(), and ug::VolumeContains().
void ug::CollectVolumes | ( | std::vector< Volume * > & | vVolumesOut, |
Grid & | grid, | ||
Face * | f, | ||
bool | clearContainer = true , |
||
bool | ignoreAssociatedVolumes = false |
||
) |
Collects all volumes that exist in the given grid which contain the given face.
if FACEOPT_STORE_ASSOCIATED_VOLUMES is enabled then the algorithm uses associated_volumes_begin(f), associated_volumes_end(f) in order to find the volumes. if not the algorithm iterates over all volumes associated with one of the faces end-points and returns each volume that contains the face.
References ug::Grid::associated_volumes_begin(), ug::Grid::associated_volumes_end(), ug::FACEOPT_STORE_ASSOCIATED_VOLUMES, ug::Grid::num(), ug::Grid::option_is_enabled(), ug::FaceVertices::vertex(), and ug::VolumeContains().
UG_API void ug::CollectVolumes | ( | std::vector< Volume * > & | vVolumesOut, |
Grid & | grid, | ||
FaceDescriptor & | fd, | ||
bool | clearContainer | ||
) |
Collects all volumes that exist in the given grid which contain the given face.
References ug::Grid::associated_volumes_begin(), ug::Grid::associated_volumes_end(), ug::Grid::num(), ug::FaceDescriptor::vertex(), and ug::VolumeContains().
UG_API void ug::CollectVolumes | ( | std::vector< Volume * > & | vVolumesOut, |
Grid & | grid, | ||
Vertex * | vrt, | ||
bool | clearContainer | ||
) |
Collects all volumes that exist in the given grid which contain the given vertex.
References ug::Grid::associated_volumes_begin(), ug::Grid::associated_volumes_end(), and ug::Grid::num().
Referenced by ug::AdjustSelection(), ug::AdjustSubsetsForLgmNg(), ug::AssignRegionToSubset(), ug::AssignVolumeInterfaceFacesToSubsets(), ug::CalculateCreaseNormal(), ug::CollectAssociated(), ug::ColorControlVolume(), ug::CreateEdgeSplitGeometry(), ug::DeselectBoundarySelectionEdges(), ug::DeselectBoundarySelectionFaces(), ug::EraseConnectingElements(), ug::ArteExpandFracs3D::generateVertexInfos(), ug::GetRightLeftUnitIndex(), ug::IsVolumeBoundaryFace(), ug::HangingNodeRefiner_Grid::post_refine(), ug::Grid::register_and_replace_element(), ug::Grid::register_face(), ug::Grid::replace_vertex(), ug::SelectInnerSelectionEdges(), ug::SelectInnerSelectionFaces(), ug::SplitEdge(), ug::Grid::unregister_edge(), and ug::Grid::unregister_face().
UG_API void ug::CollectVolumes | ( | std::vector< Volume * > & | vVolumesOut, |
Grid & | grid, | ||
Volume * | v, | ||
bool | clearContainer = true |
||
) |
Collects all volumes. (Returns the volume itself)
References ug::Grid::num().
|
inline |
Returns the number of vertices of the given geometric object.
Valid template arguments are Vertex, Edge, Face, Volume and derived types.
unifies access to geometric objects.
References ug::EdgeVertices::num_vertices().
|
inline |
Returns the number of vertices of the given geometric object.
Valid template arguments are Vertex, Edge, Face, Volume and derived types.
unifies access to geometric objects.
References ug::FaceVertices::num_vertices().