#undef ABS #undef SIGN #undef MIN #undef MAX #undef IN #undef CLIP #undef RND #undef INSIDE #define MIN(a,b) (((a)<(b))?(a):(b)) #define MAX(a,b) (((a)>(b))?(a):(b)) #define IN(v,min,max) (((v)>=(min))&&((v)<=(max))) #define CLIP(v,min,max) (((v)>(max))?(max):((v)<(min))?(min):(v)) #define RND(v) (((v)>0.0)?((int)((v)+0.5)):((int)((v)-0.5))) #define ABS(v) (((v)<0.0)?(-(v)):(v)) #define SIGN(v) (((v)<0.0)?(-1.0):(1.0)) #define INSIDE( vdim, hdim, v, h ) \ (((v)>=0) && ((v)<(vdim)) && ((h)>=0) && ((h)<(hdim))) #define ASSERT( val ) if( !(val) ) \ { fprintf(stderr,"ASSERTION ERROR %s:%d\n",__FILE__, __LINE__); exit(-1); }