diff -r 4fedf7290929 -r 7c3f38dff082 src/container.cc --- a/src/container.cc Sat Apr 19 18:00:27 2008 +0200 +++ b/src/container.cc Sun Apr 20 16:48:24 2008 +0200 @@ -33,15 +33,17 @@ if (shapes.size() == 0) { /* initialize bounding box */ bbox = aShape->get_bbox(); + Vector3 eps(Eps,Eps,Eps); + bbox = BBox(bbox.L - eps, bbox.H + eps); } else { /* adjust bounding box */ BBox shapebb = aShape->get_bbox(); - if (shapebb.L.x < bbox.L.x) bbox.L.x = shapebb.L.x; - if (shapebb.L.y < bbox.L.y) bbox.L.y = shapebb.L.y; - if (shapebb.L.z < bbox.L.z) bbox.L.z = shapebb.L.z; - if (shapebb.H.x > bbox.H.x) bbox.H.x = shapebb.H.x; - if (shapebb.H.y > bbox.H.y) bbox.H.y = shapebb.H.y; - if (shapebb.H.z > bbox.H.z) bbox.H.z = shapebb.H.z; + if (shapebb.L.x - Eps < bbox.L.x) bbox.L.x = shapebb.L.x - Eps; + if (shapebb.L.y - Eps < bbox.L.y) bbox.L.y = shapebb.L.y - Eps; + if (shapebb.L.z - Eps < bbox.L.z) bbox.L.z = shapebb.L.z - Eps; + if (shapebb.H.x + Eps > bbox.H.x) bbox.H.x = shapebb.H.x + Eps; + if (shapebb.H.y + Eps > bbox.H.y) bbox.H.y = shapebb.H.y + Eps; + if (shapebb.H.z + Eps > bbox.H.z) bbox.H.z = shapebb.H.z + Eps; } };