summaryrefslogtreecommitdiff
path: root/test/raytracer/simplify.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/raytracer/simplify.c')
-rw-r--r--test/raytracer/simplify.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/test/raytracer/simplify.c b/test/raytracer/simplify.c
index 7a4a545..d8cbe64 100644
--- a/test/raytracer/simplify.c
+++ b/test/raytracer/simplify.c
@@ -7,7 +7,7 @@
#include "object.h"
#include "simplify.h"
-#define INFINITE_RADIUS 1e300
+#define INFINITE_RADIUS HUGE_VAL
static flt cone_radius = 1.0;
static flt cube_radius = 0.86602540378443859659; /* sqrt(3)/2 */
@@ -44,11 +44,11 @@ static inline void union_bs(struct object * t1, struct object * t2,
if (dd2 <= rr2) {
/* take the biggest sphere */
if (t1->radius <= t2->radius) {
- ASSIGN(obj->center, t2->center);
+ obj->center = t2->center;
obj->radius = t2->radius;
set_infinite(t2);
} else {
- ASSIGN(obj->center, t1->center);
+ obj->center = t1->center;
obj->radius = t1->radius;
set_infinite(t1);
}
@@ -67,12 +67,12 @@ static inline void intersection_bs(struct object * t1, struct object * t2,
flt dd2, rr, rr2, rpr, rpr2, diff, d, te1, te2, te3, te4, te, alpha;
if (t1->radius >= INFINITE_RADIUS) {
- ASSIGN(obj->center, t2->center);
+ obj->center = t2->center;
obj->radius = t2->radius;
return;
}
if (t2->radius >= INFINITE_RADIUS) {
- ASSIGN(obj->center, t1->center);
+ obj->center = t1->center;
obj->radius = t1->radius;
return;
}
@@ -83,11 +83,11 @@ static inline void intersection_bs(struct object * t1, struct object * t2,
if (dd2 <= rr2) {
/* take the smallest sphere */
if (t2->radius <= t1->radius) {
- ASSIGN(obj->center, t2->center);
+ obj->center = t2->center;
obj->radius = t2->radius;
set_infinite(t2);
} else {
- ASSIGN(obj->center, t1->center);
+ obj->center = t1->center;
obj->radius = t1->radius;
set_infinite(t1);
}
@@ -96,19 +96,19 @@ static inline void intersection_bs(struct object * t1, struct object * t2,
rpr = t1->radius + t2->radius;
rpr2 = rpr * rpr;
if (dd2 > rpr2) {
- ASSIGN(obj->center, origin);
+ obj->center = origin;
obj->radius = 0.0;
return;
}
diff = t1->radius * t1->radius - t2->radius * t2->radius;
if (dd2 <= diff) {
- ASSIGN(obj->center, t2->center);
+ obj->center = t2->center;
obj->radius = t2->radius;
set_infinite(t2);
return;
}
if (dd2 <= -diff) {
- ASSIGN(obj->center, t1->center);
+ obj->center = t1->center;
obj->radius = t1->radius;
set_infinite(t1);
return;
@@ -128,7 +128,7 @@ static inline void intersection_bs(struct object * t1, struct object * t2,
static inline void difference_bs(struct object * t1, struct object * t2,
struct object * obj)
{
- ASSIGN(obj->center, t1->center);
+ obj->center = t1->center;
obj->radius = t1->radius;
set_infinite(t1);
}
@@ -150,7 +150,7 @@ void compute_bounding_spheres(struct object * obj)
obj->radius = obj->max_scale_applied * cylinder_radius;
break;
case Plane:
- ASSIGN(obj->center, plane_center);
+ obj->center = plane_center;
obj->radius = INFINITE_RADIUS;
break;
case Sphere: