pub struct SectoredLimitStencils {
pub position: StencilTable,
pub tangent1: StencilTable,
pub tangent2: StencilTable,
pub corner_sector: Vec<u32>,
}Expand description
Per-sector limit-surface stencils over a refined level’s vertices.
The position table matches LimitStencils’s row for row; the
tangent tables have one row per sector (see the module docs), so
each side of an infinitely sharp crease shades with its own normal.
Tangents are unnormalized and tangent1 x tangent2 is the (winding
oriented) sector normal.
Fields§
§position: StencilTableRefined-vertex -> limit position (same as
LimitStencils::position).
tangent1: StencilTablePer-sector limit tangents: row s is sector s’s tangent.
tangent2: StencilTablePer-sector limit tangents: row s is sector s’s tangent.
corner_sector: Vec<u32>For each refined face-corner, in the CSR order of
Mesh::face_vertex_indices, the sector row its
vertex’s limit tangents live in. Smooth vertices have one sector
shared by all their corners; a crease vertex has two; a
corner-rule vertex one per fan between consecutive sharp edges.
Trait Implementations§
Source§impl Clone for SectoredLimitStencils
impl Clone for SectoredLimitStencils
Source§fn clone(&self) -> SectoredLimitStencils
fn clone(&self) -> SectoredLimitStencils
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SectoredLimitStencils
impl Debug for SectoredLimitStencils
Source§impl PartialEq for SectoredLimitStencils
impl PartialEq for SectoredLimitStencils
Source§fn eq(&self, other: &SectoredLimitStencils) -> bool
fn eq(&self, other: &SectoredLimitStencils) -> bool
self and other values to be equal, and is used by ==.