EgtGeomKernel 1.9l4 :

- fabs sostituito da abs
- in Zmap razionalizzazione operazioni taglio spilloni
- in SurfTriMesh UpdateFaceting senza più chiamate recursive.
This commit is contained in:
Dario Sassi
2018-12-27 11:19:40 +00:00
parent a149384fbb
commit 64c954ad4b
56 changed files with 936 additions and 1408 deletions
+16 -16
View File
@@ -71,12 +71,12 @@ FromUprightOrtho( const Vector3d& vtV)
double
Vector3d::Len( void) const
{
if ( fabs( y) < EPS_ZERO && fabs( z) < EPS_ZERO)
return fabs( x) ;
if ( fabs( z) < EPS_ZERO && fabs( x) < EPS_ZERO)
return fabs( y) ;
if ( fabs( x) < EPS_ZERO && fabs( y) < EPS_ZERO)
return fabs( z) ;
if ( abs( y) < EPS_ZERO && abs( z) < EPS_ZERO)
return abs( x) ;
if ( abs( z) < EPS_ZERO && abs( x) < EPS_ZERO)
return abs( y) ;
if ( abs( x) < EPS_ZERO && abs( y) < EPS_ZERO)
return abs( z) ;
return sqrt( x * x + y * y + z * z) ;
}
@@ -87,10 +87,10 @@ Vector3d::Len( void) const
double
Vector3d::LenXY( void) const
{
if ( fabs( y) < EPS_ZERO)
return fabs( x) ;
if ( fabs( x) < EPS_ZERO)
return fabs( y) ;
if ( abs( y) < EPS_ZERO)
return abs( x) ;
if ( abs( x) < EPS_ZERO)
return abs( y) ;
return sqrt( x * x + y * y) ;
}
@@ -114,12 +114,12 @@ Vector3d::ToSpherical( double* pdLen, double* pdAngVertDeg, double* pdAngOrizzDe
// altrimenti
else {
// se diretto come Z
if ( fabs( x) < EPS_ZERO && fabs( y) < EPS_ZERO) {
if ( abs( x) < EPS_ZERO && abs( y) < EPS_ZERO) {
dAngVertDeg = (( z > 0) ? 0 : ANG_STRAIGHT) ;
dAngOrizzDeg = 0 ;
}
// se altrimenti nel piano XY
else if ( fabs( z) < EPS_ZERO) {
else if ( abs( z) < EPS_ZERO) {
dAngVertDeg = ANG_RIGHT ;
dAngOrizzDeg = atan2( y, x) * RADTODEG ;
if ( dAngOrizzDeg < 0)
@@ -151,7 +151,7 @@ Vector3d::Normalize( double dEps)
{
// se già normalizzato, ok
double dSqLen = x * x + y * y + z * z ;
if ( fabs( 1.0 - dSqLen) < ( 2 * 1000 * DBL_EPSILON))
if ( abs( 1.0 - dSqLen) < ( 2 * 1000 * DBL_EPSILON))
return true ;
// se troppo piccolo, errore
@@ -160,7 +160,7 @@ Vector3d::Normalize( double dEps)
// eseguo la normalizzazione
double dLen = sqrt( dSqLen) ;
*this = *this / dLen ;
*this /= dLen ;
return true ;
}
@@ -402,7 +402,7 @@ Vector3d::GetAngle( const Vector3d& vtEnd, double& dAngDeg) const
double dProVett = ( *this ^ vtEnd).Len() ;
// se entrambe nulle
if ( fabs( dProSca) < EPS_ZERO && fabs( dProVett) < EPS_ZERO) {
if ( abs( dProSca) < EPS_ZERO && abs( dProVett) < EPS_ZERO) {
dAngDeg = 0 ;
return false ;
}
@@ -423,7 +423,7 @@ Vector3d::GetAngleXY( const Vector3d& vtEnd, double& dAngDeg) const
double dProVett = CrossXY( *this, vtEnd) ;
// se entrambe nulle
if ( fabs( dProSca) < EPS_ZERO && fabs( dProVett) < EPS_ZERO) {
if ( abs( dProSca) < EPS_ZERO && abs( dProVett) < EPS_ZERO) {
dAngDeg = 0 ;
return false ;
}