conspire/geometry/mesh/
mod.rs1#[cfg(test)]
2pub mod test;
3
4mod base;
5mod connectivity;
6mod differential;
7mod from;
8mod into;
9mod quality;
10mod read;
11mod remesh;
12mod smooth;
13mod tessellation;
14mod write;
15
16pub use self::{
17 connectivity::{
18 Connectivities, Connectivity, polytopal::PolytopalConnectivity,
19 primitive::PrimitiveConnectivity,
20 },
21 differential::laplace::Weighting,
22 quality::metrics::Verdict,
23 read::Input,
24 remesh::{AnisotropicSizing, IsotropicSizing, Remeshing, RemeshingMetric},
25 smooth::Smoothing,
26 tessellation::Tessellation,
27 write::Output,
28};
29
30use crate::{
31 geometry::Coordinates,
32 math::{Graph, Set},
33};
34use std::cell::OnceCell;
35
36pub type NodeSets = Set<Vec<Vec<usize>>>;
37pub type SideSets = Set<Vec<Vec<(usize, usize)>>>;
38
39pub struct Mesh<const D: usize> {
40 connectivities: Connectivities,
41 coordinates: Set<Coordinates<D>>,
42 node_sets: NodeSets,
43 side_sets: SideSets,
44 nodes_elements: OnceCell<Vec<Vec<usize>>>,
45 nodes_nodes: OnceCell<Graph>,
46}