Fixes IfcSectionedSurface and IfcSectionedSolidHorizontal use of PBE.OffsetLateral and OffsetVertical by adding unit conversion factor.

This commit is contained in:
Richard Brice
2026-08-30 10:47:50 -07:00
parent 15ab569e90
commit 5bbd5ea1b8
2 changed files with 8 additions and 8 deletions
@@ -63,10 +63,10 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcSectionedSolidHorizontal& in
// Corresponds to the profile X, Y directions (hopefully).
Eigen::Vector3d po(
pbde.OffsetLateral().value_or(0.),
// @todo I don't understand whether vertical is an offset relative to the tangent plane or to the global XY plane
pbde.OffsetVertical().value_or(0.),
0.
pbde.OffsetLateral().value_or(0.) * length_unit_,
// @todo I don't understand whether vertical is an offset relative to the tangent plane or to the global XY plane
pbde.OffsetVertical().value_or(0.) * length_unit_,
0.
);
profile_offsets.push_back(po);
+4 -4
View File
@@ -65,10 +65,10 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcSectionedSurface& inst) {
// Corresponds to the profile X, Y directions (hopefully).
Eigen::Vector3d po(
pbde.OffsetLateral().value_or(0.),
// @todo I don't understand whether vertical is an offset relative to the tangent plane or to the global XY plane
pbde.OffsetVertical().value_or(0.),
0.
pbde.OffsetLateral().value_or(0.) * length_unit_,
// @todo I don't understand whether vertical is an offset relative to the tangent plane or to the global XY plane
pbde.OffsetVertical().value_or(0.) * length_unit_,
0.
);
profile_offsets.push_back(po);