pub struct Mesh<'m> { /* private fields */ }Expand description
One tessellated mesh item: a vertex list plus triangles (expanded from the stored triangle strips/fans).
Implementations§
Source§impl<'m> Mesh<'m>
impl<'m> Mesh<'m>
pub fn name(&self) -> &'m str
Sourcepub fn key(&self) -> EntityKey
pub fn key(&self) -> EntityKey
This mesh’s global identity (a Copy key for maps / deduplication).
Sourcepub fn points(&self) -> Vec<[f64; 3]>
pub fn points(&self) -> Vec<[f64; 3]>
The vertex positions, pnindex resolved: entry n is the position of
the vertex that Mesh::triangles refers to as n (0-based).
Sourcepub fn triangles(&self) -> Vec<[usize; 3]>
pub fn triangles(&self) -> Vec<[usize; 3]>
The triangles as 0-based indices into Mesh::points, expanded from
the stored triangle strips and fans (the same expansion OCCT applies;
only the emission order differs). Degenerate entries (repeated
indices) are skipped per the encoding; an out-of-range index skips the
triangle with a warning. A plain TESSELLATED_FACE stores no
triangles, so its list is empty.
Sourcepub fn normals(&self) -> MeshNormals
pub fn normals(&self) -> MeshNormals
The normals, as stored: none, one for the whole mesh, or one per vertex. Any other count is malformed and reported as a warning.