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

This commit is contained in:
Richard Brice
2026-08-18 08:57:13 -07:00
parent 1af5cc9bbe
commit 472482a87c
2 changed files with 4 additions and 4 deletions
@@ -62,9 +62,9 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcSectionedSolidHorizontal* in
longitudes.push_back(*pbde->DistanceAlong()->as<IfcSchema::IfcLengthMeasure>(true) * length_unit_);
Eigen::Vector3d po(
pbde->OffsetLateral().get_value_or(0.),
pbde->OffsetLateral().get_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().get_value_or(0.),
pbde->OffsetVertical().get_value_or(0.) * length_unit_,
0.);
profile_offsets.push_back(po);
+2 -2
View File
@@ -64,9 +64,9 @@ taxonomy::ptr mapping::map_impl(const IfcSchema::IfcSectionedSurface* inst) {
longitudes.push_back(*pbde->DistanceAlong()->as<IfcSchema::IfcLengthMeasure>(true) * length_unit_);
Eigen::Vector3d po(
pbde->OffsetLateral().get_value_or(0.),
pbde->OffsetLateral().get_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().get_value_or(0.),
pbde->OffsetVertical().get_value_or(0.) * length_unit_,
0.);
profile_offsets.push_back(po);