void SceneGraph::recomputeBoundingBox() { Node *node; float center[3]; float size[3]; BoundingBox bbox; for (node=getNodes(); node; node=node->nextTraversal()) { if (node->isGroupingNode()) { GroupingNode *gnode = (GroupingNode *)node; gnode->getBoundingBoxCenter(center); gnode->getBoundingBoxSize(size); bbox.addBoundingBox(center, size); } else if (node->isGeometryNode()) { GeometryNode *gnode = (GeometryNode *)node; gnode->getBoundingBoxCenter(center); gnode->getBoundingBoxSize(size); bbox.addBoundingBox(center, size); } } setBoundingBox(&bbox); }