Expand description
Transactional material authoring, bound to the model’s release.
These helpers only stage records. ifc_model::Transaction::commit owns
atomic graph/index application, so a failed batch cannot leave part of a
material graph in the model.
Every record is laid out from the bundled table of the release the
model’s header declares (see crate::material_schema), never from IFC4
by assumption. A record type the release lacks (a constituent or profile
set for IFC2X3) is refused with MaterialError::EntityNotInSchema; a
draft value for an attribute it lacks (an IFC2X3 layer Name) with
MaterialError::AuthoringNotInSchema; and an attribute it requires
that the call leaves unset (the IFC2X3 OwnerHistory) with
MaterialError::AuthoringRequired. Nothing is staged on refusal.
Structs§
- Constituent
Draft - Authored fields for
IfcMaterialConstituent. - Layer
Draft - Authored fields for
IfcMaterialLayer. - Layer
SetDraft - Ordered composition fields for
IfcMaterialLayerSet. - Material
Assignment Draft - Authored fields for
IfcRelAssociatesMaterial. - Material
Draft - Authored identity fields for
IfcMaterial. - Profile
Draft - Authored fields for
IfcMaterialProfile.
Functions§
- associate_
material - Stage a product/type material association after validating the IFC GlobalId,
non-empty relation end, and
IfcMaterialSelectbranch. - associate_
material_ with_ owner_ history associate_materialwith a caller-suppliedIfcOwnerHistory, which IFC2X3 requires. The owner history is never invented here (build one withifc-author).- create_
constituent - Stage an
IfcMaterialConstituent. IFC4 onwards. - create_
constituent_ set - Stage an
IfcMaterialConstituentSet. IFC4 onwards. Must name at least one constituent: an empty set describes no composition at all. - create_
layer - Stage a layer after checking its scalar and material-reference invariants.
- create_
layer_ set - Stage a non-empty ordered layer set. Layers may have been created earlier in this transaction; their staged type is checked just like stored records.
- create_
layer_ set_ usage - Stage an
IfcMaterialLayerSetUsage. - create_
layer_ with_ offsets - Stage an
IfcMaterialLayerWithOffsets. IFC4 onwards. - create_
material - Stage a material identity record in the model’s release layout.
- create_
material_ classification_ relationship - Stage an
IfcMaterialClassificationRelationship. - create_
material_ definition_ representation - Stage an
IfcMaterialDefinitionRepresentation. - create_
material_ list - Stage an
IfcMaterialList. Must name at least one material. - create_
material_ properties - Stage an
IfcMaterialProperties. IFC4 onwards. - create_
material_ relationship - Stage an
IfcMaterialRelationship. IFC4 onwards. - create_
profile - Stage an
IfcMaterialProfile. IFC4 onwards. - create_
profile_ set - Stage an
IfcMaterialProfileSet. IFC4 onwards. Must name at least one profile. - create_
profile_ set_ usage - Stage an
IfcMaterialProfileSetUsage. IFC4 onwards. - create_
profile_ set_ usage_ tapering - Stage an
IfcMaterialProfileSetUsageTapering. IFC4 onwards. - create_
profile_ with_ offsets - Stage an
IfcMaterialProfileWithOffsets. IFC4 onwards.