fastscapelib.TriMesh#
- class fastscapelib.TriMesh#
A 2-dimensional, triangular (irregular) mesh.
- __init__(*args, **kwargs) None #
TriMesh initializer (from an existing triangulation).
Overloaded initializer.
__init__(self, points: numpy.ndarray, triangles: numpy.ndarray, nodes_status: Dict[int, NodeStatus] | None = None) -> None
Create a new mesh with a dictionary of node status (optional).
__init__(self, points: numpy.ndarray, triangles: numpy.ndarray, nodes_status: np.ndarray) -> None
Create a new mesh with an array of node status.
- Parameters:
points (array-like) – Mesh node x,y coordinates (array of shape [N, 2]).
triangles (array-like) – Indices of triangle vertices (array of shape [K, 3]).
nodes_status (
dict
or array-like, optional) – A dictionary where keys are node indices and values areNodeStatus
values for setting the status at any node on the mesh. IfNone
(default), “fixed value” is set for all boundary nodes (i.e., end-points of all the edges that are not shared by more than one triangle). Alternatively, an array of shape [N] can be given for setting the status of all nodes at once.
Methods
__init__
(*args, **kwargs)TriMesh initializer (from an existing triangulation).
neighbors
(idx)Returns the neighbors of a given node.
neighbors_count
(idx)Returns the number of neighbors at a given node.
neighbors_distances
(idx)Returns the distances from a given node to its neighbors.
neighbors_indices
(idx)Returns the (flat) indices of the neighbors of a given node.
nodes_areas
(*args)Returns the area of the direct vicinity of a given node or all nodes.
nodes_indices
(*args)Returns the (flattened) indices of grid nodes, possibly filtered by node status.
nodes_status
(*args)Returns the status of a given node or all nodes.
Attributes
is_structured
is_uniform
n_neighbors_max
Returns the shape of the grid node arrays.
Returns the total number of grid nodes.
- neighbors(idx: int) List[Neighbor] #
Returns the neighbors of a given node.
- Parameters:
idx (
int
) – The grid node (flat) index.- Returns:
Notes
For a
RasterGrid
, it is also possible to providerow
andcol
indices as arguments, which returns a list ofRasterNeighbor
instances.
- neighbors_count(idx: int) int #
Returns the number of neighbors at a given node.
- Parameters:
idx (
int
) – The grid node (flat) index.
- neighbors_distances(idx: int) numpy.ndarray #
Returns the distances from a given node to its neighbors.
- Parameters:
idx (
int
) – The grid node (flat) index.- Returns:
distances (
numpy.ndarray
) – A 1-dimensional array of node distances (float). The neighbor order is the same than the one returned byneighbors_indices(idx)
.
- neighbors_indices(idx: int) numpy.ndarray #
Returns the (flat) indices of the neighbors of a given node.
- Parameters:
idx (
int
) – The grid node (flat) index.- Returns:
indices (
numpy.ndarray
) – A 1-dimensional array of node (flat) indices (int).
Notes
For a
RasterGrid
, it is also possible to providerow
andcol
indices as arguments.
- nodes_areas(*args) float | numpy.ndarray #
Returns the area of the direct vicinity of a given node or all nodes.
Overloaded method that supports the following signatures:
nodes_areas() -> numpy.ndarray
nodes_areas(idx: int) -> float
- Parameters:
idx (
int
) – The grid node (flat) index.
- nodes_indices(*args) numpy.ndarray #
Returns the (flattened) indices of grid nodes, possibly filtered by node status.
Overloaded method that supports the following signatures:
nodes_indices() -> numpy.ndarray
nodes_indices(status: NodeStatus) -> numpy.ndarray
- Parameters:
status (
NodeStatus
) – The status of the grid nodes to filter in.- Returns:
indices (
numpy.ndarray
) – A new, 1-dimensional array with grid node (filtered) flat indices.
- nodes_status(*args) NodeStatus | numpy.ndarray #
Returns the status of a given node or all nodes.
Overloaded method that supports the following signatures:
nodes_status() -> numpy.ndarray
nodes_status(idx: int) -> NodeStatus
- Parameters:
idx (
int
) – The grid node (flat) index.- Returns:
status (
NodeStatus
ornumpy.ndarray
) – If an array is returned, it is a copy of the original array and has theNodeStatus
enum class values (int) as values.
- property shape#
Returns the shape of the grid node arrays.
- property size#
Returns the total number of grid nodes.