mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-12 02:23:34 +00:00
e333c1c100
IfcSurfaceCurveSweptAreaSolid regressed in 0.8 for geometry far from the origin (for example parapets on a georeferenced building), which went missing or glitched. The kernel offsets the directrix toward the origin when it is far away (mean.norm() > 1e2), storing the offset copy in a local curve variable and setting applied_temporary_offset so the finished solid is translated back by +mean. But the wire was still built from scs->curve, the un-offset original, so the offset never took effect and the result was translated by +mean from its correct location. Build the wire from curve instead. When no offset is applied curve aliases scs->curve, so near-origin geometry is unchanged. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>