From 4f1a8b22ac2208f682c5541478b18db6e05709c8 Mon Sep 17 00:00:00 2001 From: Tanner Collin Date: Tue, 3 Mar 2026 16:36:07 -0700 Subject: [PATCH] fix: Update ElCLib 2D/3D point conversion API in ViewportWidget Co-authored-by: aider (gemini/gemini-2.5-pro) --- src/ViewportWidget.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ViewportWidget.cpp b/src/ViewportWidget.cpp index f46d0d2..7079435 100644 --- a/src/ViewportWidget.cpp +++ b/src/ViewportWidget.cpp @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -574,14 +575,14 @@ void ViewportWidget::drawSketch(const SketchFeature* sketch) const auto& p1_3d = rect->corner1(); const auto& p3_3d = rect->corner2(); - gp_Pnt2d p1_2d = ElCLib::To2d(p1_3d, plane); - gp_Pnt2d p3_2d = ElCLib::To2d(p3_3d, plane); + gp_Pnt2d p1_2d(gp_Vec(plane.Location(), p1_3d).Dot(plane.XDirection()), gp_Vec(plane.Location(), p1_3d).Dot(plane.YDirection())); + gp_Pnt2d p3_2d(gp_Vec(plane.Location(), p3_3d).Dot(plane.XDirection()), gp_Vec(plane.Location(), p3_3d).Dot(plane.YDirection())); gp_Pnt2d p2_2d(p3_2d.X(), p1_2d.Y()); gp_Pnt2d p4_2d(p1_2d.X(), p3_2d.Y()); - gp_Pnt p2_3d = ElCLib::To3d(p2_2d, plane); - gp_Pnt p4_3d = ElCLib::To3d(p4_2d, plane); + gp_Pnt p2_3d = ElCLib::To3d(plane, p2_2d); + gp_Pnt p4_3d = ElCLib::To3d(plane, p4_2d); lineVertices << p1_3d.X() << p1_3d.Y() << p1_3d.Z(); lineVertices << p2_3d.X() << p2_3d.Y() << p2_3d.Z();