EgtGeomKernel 2.2k3 :
- in NurbsToBezierCurve aggiunto controllo costanza valori nodi agli estremi.
This commit is contained in:
@@ -545,6 +545,18 @@ NurbsToBezierCurve( const CNurbsData& cnData)
|
||||
return nullptr ;
|
||||
// numero degli intervalli
|
||||
int nInt = nU - 2 * cnData.nDeg + 1 ;
|
||||
// verifico le condizioni agli estremi sui nodi (i primi nDeg nodi e gli ultimi nDeg nodi devono essere uguali tra loro)
|
||||
bool bOk = true ;
|
||||
for ( int i = 1 ; i < cnData.nDeg ; ++ i) {
|
||||
if ( abs( cnData.vU[i] - cnData.vU[0]) >= EPS_ZERO)
|
||||
bOk = false ;
|
||||
}
|
||||
for ( int i = 1 ; i < cnData.nDeg ; ++ i) {
|
||||
if ( abs( cnData.vU[nU - 1 - i] - cnData.vU[nU - 1]) >= EPS_ZERO)
|
||||
bOk = false ;
|
||||
}
|
||||
if ( ! bOk)
|
||||
return nullptr ;
|
||||
|
||||
// se 1 solo intervallo, la Nurbs è già una curva di Bezier
|
||||
if ( nInt == 1) {
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user