Expand description
Element geometry, in the form IFC stores it.
This is the bridge between “the recipe is canonical” (ADR-0004) and “IFC is the exchange
authority” (docs/ifc-semantics.md ADR-001). A GeometryRecipe is how a family authors
geometry; a Representation is what that evaluates to and what gets written to a file.
Deliberately pure data with no dependency on cadforge-geom or cadforge-family: core
must stay standalone (ADR-0002), and the exporter must not have to understand recipes to
write a file.
The two variants are not equivalent, and the difference is the whole point of ADR-0004:
Representation::ExtrudedAreaSolidexports asIfcExtrudedAreaSolidoverIfcArbitraryClosedProfileDef. It stays parametric and editable in Revit, Archicad, and Bonsai after a round trip.Representation::TriangulatedFaceSetexports asIfcTriangulatedFaceSet. It is geometrically correct and semantically poorer — a receiving application can display it but not edit it.
An element that degrades from the first to the second has lost something real, so the degradation is visible in the type rather than buried in a log.
Enums§
- Representation
- The geometry of one element, in its own local coordinate system.