Skip to content

Commit

Permalink
nan checks for z_range #100
Browse files Browse the repository at this point in the history
  • Loading branch information
dcooley committed Aug 26, 2023
1 parent e71d53c commit fdc2b6b
Showing 1 changed file with 34 additions and 2 deletions.
36 changes: 34 additions & 2 deletions inst/include/sfheaders/sfc/z_range.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -106,9 +106,13 @@ namespace zm {

T d = point[2];

if ( std::isnan( d ) ) { return; };

//xmin, ymin, xmax, ymax
z_range[0] = std::min( d, z_range[0] );
z_range[1] = std::max( d, z_range[1] );

// Rcpp::Rcout << "z_range 13 : " << z_range << std::endl;
}

inline void calculate_z_range(
Expand All @@ -121,9 +125,13 @@ namespace zm {

double d = static_cast< double >( i );

if ( std::isnan( d ) ) { return; };

z_range[0] = std::min( d, z_range[0] );
z_range[1] = std::max( d, z_range[1] );

// Rcpp::Rcout << "z_range 12 : " << z_range << std::endl;

//calculate_z_range( z_range, d );
}

Expand All @@ -142,8 +150,10 @@ namespace zm {
double mn = static_cast< double >( zmin );
double mx = static_cast< double >( zmax );

z_range[0] = std::min( mn, z_range[0] );
z_range[1] = std::max( mx, z_range[1] );
z_range[0] = std::isnan( mn ) ? z_range[0] : std::min( mn, z_range[0] );
z_range[1] = std::isnan( mx ) ? z_range[1] : std::max( mx, z_range[1] );

// Rcpp::Rcout << "z_range 11 : " << z_range << std::endl;
}

template< int RTYPE >
Expand All @@ -164,6 +174,8 @@ namespace zm {
z_range[0] = std::min( zmin, z_range[0] );
z_range[1] = std::max( zmax, z_range[1] );

// Rcpp::Rcout << "z_range 10 : " << z_range << std::endl;

}

inline void calculate_z_range(
Expand All @@ -181,6 +193,8 @@ namespace zm {
z_range[0] = std::min( zmin, z_range[0] );
z_range[1] = std::max( zmax, z_range[1] );

// Rcpp::Rcout << "z_range 9 : " << z_range << std::endl;

}

inline void calculate_z_range(
Expand Down Expand Up @@ -235,8 +249,12 @@ namespace zm {

double zz = static_cast< double >( z );

if ( std::isnan( zz ) ) { return; };

z_range[0] = std::min( zz, z_range[0] );
z_range[1] = std::max( zz, z_range[1] );

// Rcpp::Rcout << "z_range 8 : " << z_range << std::endl;
}
}

Expand All @@ -260,6 +278,8 @@ namespace zm {

z_range[0] = std::min( z, z_range[0] );
z_range[1] = std::max( z, z_range[1] );

// Rcpp::Rcout << "z_range 7 : " << z_range << std::endl;
}
}

Expand All @@ -280,6 +300,8 @@ namespace zm {

z_range[0] = std::min( mn, z_range[0] );
z_range[1] = std::max( mx, z_range[1] );

// Rcpp::Rcout << "z_range 6 : " << z_range << std::endl;
}
}

Expand All @@ -305,6 +327,8 @@ namespace zm {

z_range[0] = std::min( mn, z_range[0] );
z_range[1] = std::max( mx, z_range[1] );

// Rcpp::Rcout << "z_range 5 : " << z_range << std::endl;
}
}

Expand All @@ -325,6 +349,8 @@ namespace zm {

z_range[0] = std::min( zmin, z_range[0] );
z_range[1] = std::max( zmax, z_range[1] );

// Rcpp::Rcout << "z_range 4 : " << z_range << std::endl;
}
}

Expand All @@ -348,6 +374,8 @@ namespace zm {

z_range[0] = std::min( zmin, z_range[0] );
z_range[1] = std::max( zmax, z_range[1] );

// Rcpp::Rcout << "z_range 3 : " << z_range << std::endl;
}
}

Expand All @@ -365,6 +393,8 @@ namespace zm {

z_range[0] = std::min( zmin, z_range[0] );
z_range[1] = std::max( zmax, z_range[1] );

// Rcpp::Rcout << "z_range 2 : " << z_range << std::endl;
}
}

Expand All @@ -385,6 +415,8 @@ namespace zm {

z_range[0] = std::min( zmin, z_range[0] );
z_range[1] = std::max( zmax, z_range[1] );

// Rcpp::Rcout << "z_range 1 : " << z_range << std::endl;
}
}

Expand Down

0 comments on commit fdc2b6b

Please sign in to comment.