00001 #ifndef SCT_ROUND_H 00002 #define SCT_ROUND_H 00003 #include <cmath> 00004 00005 using std::floor; 00006 00007 namespace Sct { 00008 00009 00010 inline unsigned char roundToUChar(float value) { 00011 if (value < 0) return 0; 00012 else if (value>255) return 255; 00013 else return(unsigned char)floor(value+0.5f); 00014 } 00015 00016 inline unsigned char roundToUChar(double value) { 00017 if (value < 0) return 0; 00018 else if (value>255) return 255; 00019 else return(unsigned char)floor(value+0.5); 00020 } 00021 00022 } 00023 00024 #endif