MCPcopy Create free account
hub / github.com/ThatOpen/engine_web-ifc / GetOrientedEdge

Method GetOrientedEdge

src/cpp/web-ifc/geometry/IfcGeometryLoader.cpp:1412–1430  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1410 }
1411
1412 IfcCurve IfcGeometryLoader::GetOrientedEdge(uint32_t expressID) const
1413 {
1414 spdlog::debug("[GetOrientedEdge({})]", expressID);
1415 _loader.MoveToArgumentOffset(expressID, 3);
1416 std::string_view orientValue = _loader.GetStringArgument();
1417 bool orient = orientValue == "T";
1418 _loader.MoveToArgumentOffset(expressID, 2);
1419 uint32_t edgeCurveRef = _loader.GetRefArgument();
1420 IfcCurve curveEdge = GetEdge(edgeCurveRef);
1421
1422 // Read edgeCurve
1423
1424 if (orient)
1425 {
1426 std::reverse(curveEdge.points.begin(), curveEdge.points.end());
1427 }
1428
1429 return curveEdge;
1430 }
1431
1432 glm::dvec3 IfcGeometryLoader::GetVertexPoint(uint32_t expressID) const
1433 {

Callers

nothing calls this directly

Calls 4

debugFunction · 0.85
MoveToArgumentOffsetMethod · 0.80
GetStringArgumentMethod · 0.80
GetRefArgumentMethod · 0.80

Tested by

no test coverage detected