From e104e7486c1aa3658d81f0d73d1ce136a4620d20 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Tue, 25 Aug 2026 18:38:05 +0500 Subject: [PATCH] OCCT: avoid using deprecated `Triangles` method Deprecated since OCCT 7.6.0 --- .../opencascade/opencascade_conversion_result.cpp | 14 ++++++-------- src/ifcgeom/serialization/schema/serialization.cpp | 5 ++--- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/ifcgeom/kernels/opencascade/opencascade_conversion_result.cpp b/src/ifcgeom/kernels/opencascade/opencascade_conversion_result.cpp index b467dcb4d1..14852cee51 100644 --- a/src/ifcgeom/kernels/opencascade/opencascade_conversion_result.cpp +++ b/src/ifcgeom/kernels/opencascade/opencascade_conversion_result.cpp @@ -187,12 +187,11 @@ void ifcopenshell::geom::open_cascade_shape::triangulate(ifcopenshell::geom::set } } - const NCollection_Array1& triangles = tri->Triangles(); - for (int i = 1; i <= triangles.Length(); ++i) { + for (int i = 1; i <= tri->NbTriangles(); ++i) { int n1, n2, n3; if (face.Orientation() == TopAbs_REVERSED) - triangles(i).Get(n3, n2, n1); - else triangles(i).Get(n1, n2, n3); + tri->Triangle(i).Get(n3, n2, n1); + else tri->Triangle(i).Get(n1, n2, n3); if (dict[n1] == dict[n2] || dict[n2] == dict[n3] || dict[n3] == dict[n1]) { logger.warning("GEO", 185, "Mesher generated a degenerate triangle, ignoring"); @@ -656,14 +655,13 @@ namespace { coords.push_back(tri->Node(i).Transformed(loc).XYZ()); } - const NCollection_Array1& triangles = tri->Triangles(); - for (int i = 1; i <= triangles.Length(); ++i) { + for (int i = 1; i <= tri->NbTriangles(); ++i) { int n1, n2, n3; if (face.Orientation() == TopAbs_REVERSED) { - triangles(i).Get(n3, n2, n1); + tri->Triangle(i).Get(n3, n2, n1); } else { - triangles(i).Get(n1, n2, n3); + tri->Triangle(i).Get(n1, n2, n3); } const gp_XYZ& pt1 = coords[n1 - 1]; diff --git a/src/ifcgeom/serialization/schema/serialization.cpp b/src/ifcgeom/serialization/schema/serialization.cpp index 5139182837..e9ae6f1188 100644 --- a/src/ifcgeom/serialization/schema/serialization.cpp +++ b/src/ifcgeom/serialization/schema/serialization.cpp @@ -812,10 +812,9 @@ express::base POSTFIX_SCHEMA(tesselate)(ifcopenshell::file& f, const TopoDS_Shap cpnt.setCoordinates(xyz); vertices.push_back(cpnt); } - const NCollection_Array1& triangles = tri->Triangles(); - for (int i = 1; i <= triangles.Length(); ++i) { + for (int i = 1; i <= tri->NbTriangles(); ++i) { int n1, n2, n3; - triangles(i).Get(n1, n2, n3); + tri->Triangle(i).Get(n1, n2, n3); std::vector points { vertices[n1 - 1], vertices[n2 - 1], vertices[n3 - 1] };