@@ -23,4 +23,9 @@ double max3(double a, double b, double c);
double frand();
+static double modulo(double a, double b)
+{
+ return a - floor(a/b) * b;
+}
+
#endif /* DORAYME_MATH_HELPER_H */
@@ -20,7 +20,7 @@ public:
{
double value = floor(point.x) + floor(point.y) + floor(point.z);
- return (fmod(value, 2) == 0)?this->a:this->b;
+ return (modulo(value, 2) == 0)?this->a:this->b;
}
void dumpMe(FILE *fp) {
@@ -22,7 +22,7 @@ public:
double value = floor(sqrt(squared));
@@ -21,7 +21,7 @@ public:
Colour patternAt(Tuple point)
- if (fmod(floor(point.x), 2) == 0)
+ if (modulo(floor(point.x), 2) == 0)
return this->a;
double u2 = floor(u * this->width);
double v2 = floor(v * this->height);
- if (fmod((u2 + v2), 2) == 0)
+ if (modulo((u2 + v2), 2) == 0)