Skip to main content

conspire/geometry/mesh/from/
mod.rs

1#[cfg(test)]
2mod test;
3
4mod pixels;
5mod segmentation;
6mod voxels;
7
8use crate::{
9    geometry::{
10        Coordinates,
11        mesh::{Connectivities, Connectivity, Mesh, NodeSets, SideSets},
12    },
13    math::Set,
14};
15use std::cell::OnceCell;
16
17impl<const D: usize> From<(Connectivities, Set<Coordinates<D>>)> for Mesh<D> {
18    fn from((connectivities, coordinates): (Connectivities, Set<Coordinates<D>>)) -> Self {
19        Self {
20            connectivities,
21            coordinates,
22            node_sets: NodeSets::from(Vec::new()),
23            side_sets: SideSets::from(Vec::new()),
24            nodes_elements: OnceCell::new(),
25            nodes_nodes: OnceCell::new(),
26        }
27    }
28}
29
30impl<const D: usize> From<(Vec<Connectivity>, Coordinates<D>)> for Mesh<D> {
31    fn from((connectivities, coordinates): (Vec<Connectivity>, Coordinates<D>)) -> Self {
32        Self {
33            connectivities: Connectivities::from(connectivities),
34            coordinates: Set::from(coordinates),
35            node_sets: NodeSets::from(Vec::new()),
36            side_sets: SideSets::from(Vec::new()),
37            nodes_elements: OnceCell::new(),
38            nodes_nodes: OnceCell::new(),
39        }
40    }
41}