EgtGeomKernel:

- correzione di un errore di taglio con piani nelle surf Bezier.
This commit is contained in:
Daniele Bariletti
2025-04-10 15:34:57 +02:00
parent 55a9685add
commit fb8bac8681
2 changed files with 63 additions and 27 deletions
+4
View File
@@ -2183,6 +2183,8 @@ Tree::TraceLoopLabelCell( const POLYLINEVECTOR& vplPolygons)
Point3d ptCurr ;
auto iter = find( m_vnLeaves.begin(), m_vnLeaves.end(), nId) ;
int nIdPolygon = distance( m_vnLeaves.begin(), iter) ;
if ( nIdPolygon > int( vplPolygons.size()) - 1)
return false ;
bool bEraseNextPoint = false ;
while ( plLoop.GetNextPoint( ptCurr)) {
Point3d ptTStart, ptTEnd ;
@@ -2218,6 +2220,8 @@ Tree::TraceLoopLabelCell( const POLYLINEVECTOR& vplPolygons)
// ricalcolo la posizione di nId nel vettore delle foglie
iter = find( m_vnLeaves.begin(), m_vnLeaves.end(), nId) ;
nIdPolygon = distance( m_vnLeaves.begin(), iter) ;
if ( nIdPolygon > int( vplPolygons.size()) - 1)
return false ;
// aggiorno il puntatore alla cella
pCell = &m_mTree[nId] ;
// salvo il verso del loop