pub struct MaterialLayerSetUsage<'m> { /* private fields */ }Expand description
Borrowed projection of IFCMATERIALLAYERSETUSAGE.
Projections handed out by a crate::MaterialView read against the
release the model declares; one built with try_new has no model and
reads against IFC4, as in 0.2.0.
Implementations§
Source§impl<'m> MaterialLayerSetUsage<'m>
impl<'m> MaterialLayerSetUsage<'m>
Sourcepub fn try_new(id: EntityId, entity: &'m Entity) -> MaterialResult<Self>
pub fn try_new(id: EntityId, entity: &'m Entity) -> MaterialResult<Self>
Wraps entity as this view after checking it is an instance
of the expected IFC entity type; fails with
crate::MaterialError::WrongEntityType otherwise.
Without a model there is no header to bind, so the projection
reads against IFC4. Use Self::try_from_view to read the
release a model declares.
Sourcepub fn try_from_view(
view: MaterialView<'m>,
id: EntityId,
) -> MaterialResult<Self>
pub fn try_from_view( view: MaterialView<'m>, id: EntityId, ) -> MaterialResult<Self>
Looks up id in the view’s model and projects it against the
release the model declares.
§Errors
crate::MaterialError::UnknownEntity when id is not in
the model, and crate::MaterialError::WrongEntityType when
it is another entity type.
Sourcepub fn schema(self) -> MaterialResult<SchemaVersion>
pub fn schema(self) -> MaterialResult<SchemaVersion>
The release this projection reads against.
§Errors
crate::MaterialError::MultipleSchemas or
crate::MaterialError::UnsupportedSchema when the model’s
header binds none.
Source§impl MaterialLayerSetUsage<'_>
impl MaterialLayerSetUsage<'_>
Sourcepub fn layer_set_id(self) -> MaterialResult<EntityId>
pub fn layer_set_id(self) -> MaterialResult<EntityId>
IfcMaterialLayerSetUsage.ForLayerSet. Required.
Sourcepub fn layer_set_direction(self) -> MaterialResult<LayerSetDirection>
pub fn layer_set_direction(self) -> MaterialResult<LayerSetDirection>
IfcMaterialLayerSetUsage.LayerSetDirection. Required.
Sourcepub fn direction_sense(self) -> MaterialResult<DirectionSense>
pub fn direction_sense(self) -> MaterialResult<DirectionSense>
IfcMaterialLayerSetUsage.DirectionSense. Required.
Sourcepub fn offset_from_reference_line(self) -> MaterialResult<f64>
pub fn offset_from_reference_line(self) -> MaterialResult<f64>
IfcMaterialLayerSetUsage.OffsetFromReferenceLine. Required.
Sourcepub fn reference_extent(self) -> MaterialResult<Option<f64>>
pub fn reference_extent(self) -> MaterialResult<Option<f64>>
IfcMaterialLayerSetUsage.ReferenceExtent, if given. Must be
strictly positive when present. NotInSchema for IFC2X3.