diff --git a/src/cpp/web-ifc/geometry/IfcGeometryLoader.cpp b/src/cpp/web-ifc/geometry/IfcGeometryLoader.cpp index 1a84f23e7..0a1896772 100644 --- a/src/cpp/web-ifc/geometry/IfcGeometryLoader.cpp +++ b/src/cpp/web-ifc/geometry/IfcGeometryLoader.cpp @@ -3150,7 +3150,8 @@ namespace webifc::geometry _loader.MoveToArgumentOffset(expressID, 0); profile.type = _loader.GetStringArgument(); _loader.MoveToArgumentOffset(expressID, 2); - profile.curve = GetCurve(_loader.GetRefArgument(), 2); + // ISSUE 1973 same as IFCARBITRARYCLOSEDPROFILEDEF: 3D curves require dimension 3 + profile.curve = GetCurve(_loader.GetRefArgument(), 3); profile.isConvex = IsCurveConvex(profile.curve); _loader.MoveToArgumentOffset(expressID, 3); @@ -3158,7 +3159,7 @@ namespace webifc::geometry for (auto &hole : holes) { - IfcCurve holeCurve = GetCurve(_loader.GetRefArgument(hole), 2); + IfcCurve holeCurve = GetCurve(_loader.GetRefArgument(hole), 3); profile.holes.push_back(holeCurve); }