From 1f4b12443aa55e19d69429ab801a168e337f6f7a Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Wed, 9 Aug 2023 14:55:23 +0800 Subject: [PATCH] fix edge segments in world coords #3536 --- .../kernels/opencascade/OpenCascadeConversionResult.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/ifcgeom/kernels/opencascade/OpenCascadeConversionResult.cpp b/src/ifcgeom/kernels/opencascade/OpenCascadeConversionResult.cpp index 7d58fc99f1..45bbca333b 100644 --- a/src/ifcgeom/kernels/opencascade/OpenCascadeConversionResult.cpp +++ b/src/ifcgeom/kernels/opencascade/OpenCascadeConversionResult.cpp @@ -180,7 +180,7 @@ void ifcopenshell::geometry::OpenCascadeShape::Triangulate(ifcopenshell::geometr for (int i = 1; i <= n; ++i) { gp_XYZ p = tessellater.Value(i).XYZ(); - + auto p_local = p; taxonomy_transform(place.components_, p); int current = t->addVertex(item_id, surface_style_id, p.X(), p.Y(), p.Z()); @@ -209,12 +209,11 @@ void ifcopenshell::geometry::OpenCascadeShape::Triangulate(ifcopenshell::geometr } d3 = d1.XYZ() + d2.XYZ(); d4 = d1.XYZ() - d2.XYZ(); - p2 = p - d3.XYZ() / 10.; - p3 = p - d4.XYZ() / 10.; + p2 = p_local - d3.XYZ() / 10.; + p3 = p_local - d4.XYZ() / 10.; taxonomy_transform(place.components_, p2); taxonomy_transform(place.components_, p3); - taxonomy_transform(place.components_, p); int left = t->addVertex(item_id, surface_style_id, p2.X(), p2.Y(), p2.Z()); int right = t->addVertex(item_id, surface_style_id, p3.X(), p3.Y(), p3.Z());