From d972d11e0fdb82e1c8895d07451d3ce880d4b6f2 Mon Sep 17 00:00:00 2001 From: DarioS Date: Fri, 11 Jun 2021 15:54:55 +0200 Subject: [PATCH] EgtGeomKernel 2.3f2 : - miglioria a Triangulate (LM). --- EgtGeomKernel.rc | Bin 11710 -> 11710 bytes Triangulate.cpp | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/EgtGeomKernel.rc b/EgtGeomKernel.rc index b310e6ede406fe65d96890642e2b12a1bd6cfd87..fe56437e6e404fc3802b2dbf8f76b1f885d19728 100644 GIT binary patch delta 94 zcmdlNy)SyhFE&P_&A-_cnHh~HD{|{@_Trkr0u;H;XNwSVW8B;$>;>dw2zN+>g;Df- LFmBFL4&ed-Vf-5U delta 94 zcmdlNy)SyhFE&QQ&A-_cnHdcyD{|{@_Trkr0u;H;XNwSVW8B;$>;>dw2zN+>g;Df- LFmBFL4&ed-U|t&X diff --git a/Triangulate.cpp b/Triangulate.cpp index c24bcdd..0d3c665 100644 --- a/Triangulate.cpp +++ b/Triangulate.cpp @@ -534,7 +534,8 @@ Triangulate::TestTriangle( const PNTVECTOR& vPt, const INTVECTOR& vPol, // Test if current vertex, v[i], is an ear bool bIsEar = true ; // An ear must be convex (here counterclockwise) - if ( TriangleIsCCW( vPt[vPol[vPrev[i]]], vPt[vPol[i]], vPt[vPol[vNext[i]]])) { + if ( TriangleIsCCW( vPt[vPol[vPrev[i]]], vPt[vPol[i]], vPt[vPol[vNext[i]]]) && + ! Collinear( vPt[vPol[vPrev[i]]], vPt[vPol[i]], vPt[vPol[vNext[i]]])) { // Loop over all vertices not part of the tentative ear BBox3d b3Tria ; b3Tria.Add( vPt[vPol[vPrev[i]]]) ;