|
| ~Mesh1D () override=default |
| Default destructor.
|
|
| Mesh1D ()=default |
| Default constructor.
|
|
| Mesh1D (Projection projection) |
| Construct a mesh1d using only the projection. More...
|
|
| Mesh1D (std::vector< Edge > const &edges, std::vector< Point > const &nodes, Projection projection) |
| Construct a mesh1d starting from the edges and nodes. More...
|
|
| Mesh1D (Network1D &network1d, double minFaceSize) |
| Constructs a mesh 1d from a network 1d. The network contains the chainages where the discratization points will be computed. More...
|
|
bool | IsNodeOnBoundary (UInt node) const |
| Inquire if a mesh 1d-node is on boundary. More...
|
|
Point | ComputeProjectedNode (UInt node, double distanceFactor) const |
| Compute a projected node along a line normal to the edges connected to the node. More...
|
|
virtual | ~Mesh ()=default |
| Define virtual destructor.
|
|
| Mesh () |
| Default constructor, setting a cartesian projection.
|
|
Mesh & | operator= (const Mesh &mesh)=delete |
| Delete assignment operator.
|
|
Mesh & | operator= (Mesh &&mesh)=delete |
| Delete move assignment operator.
|
|
| Mesh (const Mesh &mesh)=delete |
| Copy constructor taking only a mesh.
|
|
| Mesh (Mesh &&mesh)=delete |
| Move constructor taking only a mesh.
|
|
| Mesh (Projection projection) |
| Constructs an empty mesh, sets only the projection. More...
|
|
| Mesh (const std::vector< Edge > &edges, const std::vector< Point > &nodes, Projection projection) |
| Construct a mesh starting from the edges and nodes. More...
|
|
bool | IsNodeOnBoundary (UInt node) const |
| Inquire if a node is on boundary. More...
|
|
auto | GetNumNodes () const |
| Get the number of valid nodes. More...
|
|
auto | GetNumEdges () const |
| Get the number of valid edges. More...
|
|
auto | GetNumFaces () const |
| Get the number of valid faces. More...
|
|
UInt | GetNumValidNodes () const |
| Get the number of valid nodes. More...
|
|
UInt | GetNumValidEdges () const |
| Get the number of valid edges. More...
|
|
auto | GetNumFaceEdges (UInt faceIndex) const |
| Get the number of edges for a face. More...
|
|
auto | GetNumEdgesFaces (UInt edgeIndex) const |
| Get the number of faces an edges shares. More...
|
|
UInt | GetEdgeIndex (const UInt elementId, const UInt edgeId) const |
| Get the local edge number for an element edge.
|
|
UInt | GetNodeIndex (const UInt elementId, const UInt nodeId) const |
| Get the local node number for an element node.
|
|
bool | IsEdgeOnBoundary (UInt edge) const |
| Inquire if an edge is on boundary. More...
|
|
bool | IsFaceOnBoundary (UInt face) const |
| Inquire if a face is on boundary. More...
|
|
const std::vector< Point > & | Nodes () const |
| Get vector of all nodes.
|
|
const Point & | Node (const UInt index) const |
| Get the node at the position.
|
|
void | SetNodes (const std::vector< Point > &newValues) |
| Set all nodes to a new set of values.
|
|
void | SetNode (const UInt index, const Point &newValue) |
| Set a node to a new value, bypassing the undo action.
|
|
std::unique_ptr< ResetNodeAction > | ResetNode (const UInt index, const Point &newValue) |
| Set the node to a new value, this value may be the in-valid value.
|
|
const std::vector< Edge > & | Edges () const |
| Get all edges.
|
|
const Edge & | GetEdge (const UInt index) const |
| Get constant reference to an edge.
|
|
void | SetEdges (const std::vector< Edge > &newValues) |
| Set all edges to a new set of values.
|
|
void | SetEdge (const UInt index, const Edge &edge) |
| Set the edge to a new value, bypassing the undo action.
|
|
std::unique_ptr< ResetEdgeAction > | ResetEdge (UInt edgeId, const Edge &edge) |
| Change the nodes referenced by the edge.
|
|
UInt | GetLocalFaceNodeIndex (const UInt faceIndex, const UInt nodeIndex) const |
| Get the local index of the node belong to a face. More...
|
|
std::unique_ptr< UndoAction > | MergeTwoNodes (UInt startNode, UInt endNode) |
| Merges two mesh nodes. More...
|
|
std::unique_ptr< UndoAction > | MergeNodesInPolygon (const Polygons &polygons, double mergingDistance) |
| Merge close mesh nodes inside a polygon (MERGENODESINPOLYGON) More...
|
|
std::tuple< UInt, std::unique_ptr< AddNodeAction > > | InsertNode (const Point &newPoint) |
| Insert a new node in the mesh (setnewpoint) More...
|
|
std::tuple< UInt, std::unique_ptr< AddEdgeAction > > | ConnectNodes (UInt startNode, UInt endNode) |
| Connect two existing nodes, checking if the nodes are already connected. If the nodes are not connected a new edge is formed, otherwise UInt invalid value is returned. (connectdbn) More...
|
|
std::unique_ptr< DeleteNodeAction > | DeleteNode (UInt node) |
| Deletes a node and removes any connected edges. More...
|
|
UInt | FindEdge (UInt firstNodeIndex, UInt secondNodeIndex) const |
| Find the edge sharing two nodes. More...
|
|
UInt | FindEdgeWithLinearSearch (UInt firstNodeIndex, UInt secondNodeIndex) const |
| Find the edge using a linear search, without connectivity information (much slower than FindEdge) More...
|
|
std::unique_ptr< UndoAction > | MoveNode (Point newPoint, UInt nodeindex) |
| Move a node to a new location. More...
|
|
UInt | FindLocationIndex (Point point, Location location, const std::vector< bool > &locationMask={}, const BoundingBox &boundingBox={}) |
| Get the index of a location (node/edge or face) close to a point. More...
|
|
UInt | FindNodeCloseToAPoint (Point const &point, double searchRadius) |
| Get the index of a node close to a point. More...
|
|
std::unique_ptr< DeleteEdgeAction > | DeleteEdge (UInt edge) |
| Deletes an edge. More...
|
|
UInt | FindCommonNode (UInt firstEdgeIndex, UInt secondEdgeIndex) const |
| Find the common node two edges share This method uses return parameters since the success is evaluated in a hot loop. More...
|
|
void | ComputeEdgesLengths () |
| Compute the lengths of all edges in one go.
|
|
double | ComputeMinEdgeLength (const Polygons &polygon) const |
| Compute the minimum edge length of the edges included in the polygon. An edge is considered included if one of the two nodes is inside the polygon. More...
|
|
void | ComputeEdgesCenters () |
| Computes the edges centers in one go.
|
|
bool | NodeAdministration () |
| Node administration (setnodadmin) More...
|
|
void | DeleteInvalidNodesAndEdges () |
| Removes all invalid nodes and edges.
|
|
virtual void | Administrate (CompoundUndoAction *undoAction=nullptr) |
| Perform complete administration.
|
|
void | AdministrateNodesEdges (CompoundUndoAction *undoAction=nullptr) |
| Perform node and edges administration.
|
|
void | SortEdgesInCounterClockWiseOrder (UInt startNode, UInt endNode) |
| Sort mesh edges around a node in counterclockwise order (Sort_links_ccw) More...
|
|
double | ComputeMaxLengthSurroundingEdges (UInt node) |
| Compute the max length of the edges connected to a node. More...
|
|
void | BuildTree (Location location, const BoundingBox &boundingBox={}) |
| Build the rtree for the corresponding location, using only the locations inside the bounding box. More...
|
|
std::vector< Point > | ComputeLocations (Location location) const |
| Computes a vector with the mesh locations coordinates (nodes, edges or faces coordinates). More...
|
|
std::vector< bool > | IsLocationInPolygon (const Polygons &polygon, Location location) const |
| Computes if a location is in polygon. More...
|
|
Mesh & | operator+= (Mesh const &rhs) |
| Add meshes: result is a mesh composed of the additions firstMesh += secondmesh results in the second mesh being added to firstMesh. More...
|
|
std::unique_ptr< UndoAction > | Join (const Mesh &rhs) |
| Add meshes: result is a mesh composed of the additions firstMesh += secondmesh results in the second mesh being added to firstMesh. More...
|
|
std::vector< UInt > | GetValidNodeMapping () const |
| Get the mapping/indexing from the node array mapped to valid nodes.
|
|
std::vector< UInt > | GetValidEdgeMapping () const |
| Get the mapping/indexing from the edge array mapped to valid edges.
|
|
bool | IsValidEdge (const UInt edgeId) const |
| Indicate if the edge-id is a valid edge. More...
|
|
void | CommitAction (const ResetNodeAction &undoAction) |
| Apply the reset node action.
|
|
void | CommitAction (const AddNodeAction &undoAction) |
| Apply the add node action.
|
|
void | CommitAction (const AddEdgeAction &undoAction) |
| Apply the add edge action.
|
|
void | CommitAction (const ResetEdgeAction &undoAction) |
| Apply the reset edge action.
|
|
void | CommitAction (const DeleteNodeAction &undoAction) |
| Apply the delete node action.
|
|
void | CommitAction (NodeTranslationAction &undoAction) |
| Apply the node translation action.
|
|
void | CommitAction (MeshConversionAction &undoAction) |
| Apply the node translation action.
|
|
void | CommitAction (const DeleteEdgeAction &undoAction) |
| Apply the delete edge action.
|
|
void | CommitAction (FullUnstructuredGridUndo &undoAction) |
| Set the node and edge values.
|
|
void | RestoreAction (const ResetNodeAction &undoAction) |
| Undo the reset node action. More...
|
|
void | RestoreAction (const AddNodeAction &undoAction) |
| Undo the add node action. More...
|
|
void | RestoreAction (const AddEdgeAction &undoAction) |
| Undo the add edge action. More...
|
|
void | RestoreAction (const ResetEdgeAction &undoAction) |
| Undo the reset edge action. More...
|
|
void | RestoreAction (const DeleteNodeAction &undoAction) |
| Undo the delete node action. More...
|
|
void | RestoreAction (NodeTranslationAction &undoAction) |
| Undo the node translation action. More...
|
|
void | RestoreAction (MeshConversionAction &undoAction) |
| Undo the node translation action. More...
|
|
void | RestoreAction (const DeleteEdgeAction &undoAction) |
| Undo the delete edge action. More...
|
|
void | RestoreAction (FullUnstructuredGridUndo &undoAction) |
| Undo entire node and edge values. More...
|
|
RTreeBase & | GetRTree (Location location) const |
| Get a reference to the RTree for a specific location.
|
|
void | SetNodesRTreeRequiresUpdate (bool value) |
| Set the m_nodesRTreeRequiresUpdate flag. More...
|
|
void | SetEdgesRTreeRequiresUpdate (bool value) |
| Set the m_edgesRTreeRequiresUpdate flag. More...
|
|
void | SetFacesRTreeRequiresUpdate (bool value) |
| Set the m_facesRTreeRequiresUpdate flag. More...
|
|
A class derived from Mesh, which describes 1d meshes.
A 1d mesh is composed of a series of connected edges representing 1d real word features, such as pipes or a sewage network.