pub struct Feature<'m> { /* private fields */ }Expand description
A shape feature (SHAPE_ASPECT and its subtypes) that a dimension or
tolerance applies to — its name, description, and identity.
Every entity here is a SHAPE_ASPECT subtype in the schema (that is why the
same set forms both applies_to and toleranced_shape_aspect targets), so a
Feature can be a plain aspect, a datum feature, a composite/derived aspect,
or occasionally a datum / tolerance-zone construct. key
reveals the exact kind when it matters.
Implementations§
Source§impl<'m> Feature<'m>
impl<'m> Feature<'m>
Sourcepub fn kind(&self) -> FeatureKind
pub fn kind(&self) -> FeatureKind
The concrete kind backing this feature.
Sourcepub fn description(&self) -> Option<&'m str>
pub fn description(&self) -> Option<&'m str>
The feature’s description, if any.
Source§impl<'m> Feature<'m>
impl<'m> Feature<'m>
Sourcepub fn geometry(&self) -> Vec<FeatureGeometry<'m>>
pub fn geometry(&self) -> Vec<FeatureGeometry<'m>>
The concrete geometry this feature designates — the faces / edges / points
/ solids linked to it by GEOMETRIC_ITEM_SPECIFIC_USAGE (GISU).
A feature may designate several items (one per GISU). Items outside the
typed set (curves, tessellated faces, …) come back as
FeatureGeometry::Other with their key. Only GISUs whose definition
points directly at this feature are followed; indirect links through a
shape-aspect relationship are not yet resolved.