scene = 0;
parent = 0;
name = 0;
+ bvol_valid = false;
}
SceneNode::SceneNode(Object *obj)
scene = 0;
parent = 0;
name = 0;
+ bvol_valid = false;
add_object(obj);
}
children.push_back(node);
node->parent = this;
node->scene = scene;
+
+ bvol_valid = false;
}
bool SceneNode::remove_child(SceneNode *node)
node->parent = 0;
node->scene = 0;
children.erase(it);
+
+ bvol_valid = false;
return true;
}
return false;
this->obj.push_back(obj);
obj->node = this;
+
+ bvol_valid = false;
}
bool SceneNode::remove_object(Object *o)
return false;
}
obj.erase(it);
+
+ bvol_valid = false;
return true;
}
}
return false;
}
+
+const Box &SceneNode::calc_bounds()
+{
+ // TODO
+}
+
+const Box &SceneNode::get_bounds() const
+{
+ if(!bvol_valid) {
+ return ((SceneNode*)this)->calc_bounds();
+ }
+ return bvol;
+}