diff --git a/SurfBezier.cpp b/SurfBezier.cpp index 7b6f963..ff0588b 100644 --- a/SurfBezier.cpp +++ b/SurfBezier.cpp @@ -4394,6 +4394,15 @@ SurfBezier::CreateByTwoCurves( const ICurve* pCurve0, const ICurve* pCurve1, int ++ nCrv0 ; ++nAddedSpan ; } + // se non sono arrivato all'ultima curva su U0 o U1 vuol dire che ho creato delle ripetizioni che non ho contato prima + if( nCrv1 < nSpanU1) + nRep1 += nSpanU1 - nCrv1 ; + for ( int z = int( vbRep1.size() - 1) ; z >= nCrv1 ; --z) + vbRep1[z] = true ; + if( nCrv0 < nSpanU0) + nRep0 += nSpanU0 - nCrv0 ; + for ( int z = int( vbRep0.size() - 1) ; z >= nCrv0 ; --z) + vbRep0[z] = true ; // trovo il numero di span che dovrà avere la superficie // ( numero di sottocurve che compongono la U0 + tutte le ripetizioni dei match di punti della curva U1 con i punti di U0)