diff --git a/SurfBezier.cpp b/SurfBezier.cpp index cd57496..44142aa 100644 --- a/SurfBezier.cpp +++ b/SurfBezier.cpp @@ -49,7 +49,7 @@ #define SAVEREBUILTISO 0 #define SAVERULEDISO 0 #define SAVERULEDGUIDEDISO 0 -#define SAVEMATCHCURVES 0 +#define SAVEMATCHCURVES 1 #define SAVEFAILEDTREE 0 #define SAVELIMITSURF 0 #if SAVEFAILEDTRIANGULATION || SAVEREBUILTISO || SAVERULEDISO || SAVERULEDGUIDEDISO || SAVEMATCHCURVES || SAVEFAILEDTREE || SAVELIMITSURF @@ -5722,7 +5722,8 @@ SurfBezier::CreateByTwoCurves( const ICurve* pCurve0, const ICurve* pCurve1, int else dParamMatch = dLastParamMatch0 ; // se lo split non è in prossimità di una joint già esistente allora lo aggiungo - if ( abs( dParamMatch - round( dParamMatch)) > EPS_SMALL && dParamMatch > vdSplit1.back() + EPS_SMALL) { + double dLastSplit = vdSplit1.empty() ? 0 : vdSplit1.back() ; + if ( abs( dParamMatch - round( dParamMatch)) > EPS_SMALL && dParamMatch > dLastSplit + EPS_SMALL) { vdSplit1.push_back( dParamMatch) ; nSplit1 = vdSplit1.size() ; }