From a5714cc85dbf90547ca3df522dee72df2f206b69 Mon Sep 17 00:00:00 2001 From: Daniele Bariletti Date: Thu, 19 Oct 2023 12:44:31 +0200 Subject: [PATCH] EgtGeomKernel : - correzione alla conversione da sup NURBS a Bezier. --- SurfAux.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/SurfAux.cpp b/SurfAux.cpp index 10f835d..7b95a30 100644 --- a/SurfAux.cpp +++ b/SurfAux.cpp @@ -230,6 +230,10 @@ NurbsToBezierSurface(const SNurbsSurfData& snData) } bool bRef = false ; + // se la superficie è lineare nel parametro U allora è già in forma di Bezier in questo parametro + if ( b == nU - 1 ) { + nb = 1 ; + } while ( b < nU - 1) { // qui correggo un probabile errore, mettendo nU anzich� nCPV, come indicato nell'algoritmo int i = b ; while ( b < nU - 1 && abs( snData.vU[b+1] - snData.vU[b]) < EPS_ZERO) @@ -391,6 +395,10 @@ NurbsToBezierSurface(const SNurbsSurfData& snData) } bRef = false ; + // se la superficie è lineare nel parametro V allora è già in forma di Bezier in questo parametro + if ( b == nV - 1 ) { + nc = 1 ; + } while ( b < nV - 1) { // qui correggo un probabile errore, mettendo nU anzich� nCPV, come indicato nell'algoritmo int i = b ; while ( b < nV - 1 && abs( snData.vV[b+1] - snData.vV[b]) < EPS_ZERO)