#[non_exhaustive]pub struct Adjacency {
pub face_edges: Vec<u32>,
pub edge_faces: Vec<[u32; 2]>,
pub vertex_edge_offsets: Vec<u32>,
pub vertex_edges: Vec<u32>,
pub vertex_face_offsets: Vec<u32>,
pub vertex_faces: Vec<u32>,
pub edge_is_boundary: Vec<bool>,
pub vertex_is_boundary: Vec<bool>,
}Expand description
Pre-built adjacency arrays in CSR format.
Produced by refinement and consumed by adapter-side mesh construction to avoid redundant topology analysis.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.face_edges: Vec<u32>Per face-corner → edge index (same layout as face_vertex_indices).
edge_faces: Vec<[u32; 2]>Two incident faces per edge. u32::MAX = boundary.
vertex_edge_offsets: Vec<u32>CSR vertex → edge adjacency: per-vertex start offsets into vertex_edges.
vertex_edges: Vec<u32>Flattened incident-edge indices (sliced by vertex_edge_offsets).
vertex_face_offsets: Vec<u32>CSR vertex → face adjacency: per-vertex start offsets into vertex_faces.
vertex_faces: Vec<u32>Flattened incident-face indices (sliced by vertex_face_offsets).
edge_is_boundary: Vec<bool>Per-edge boundary flag.
vertex_is_boundary: Vec<bool>Per-vertex boundary flag.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Adjacency
impl<'de> Deserialize<'de> for Adjacency
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Adjacency
Auto Trait Implementations§
impl Freeze for Adjacency
impl RefUnwindSafe for Adjacency
impl Send for Adjacency
impl Sync for Adjacency
impl Unpin for Adjacency
impl UnsafeUnpin for Adjacency
impl UnwindSafe for Adjacency
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more