built in some functions to handle bounding volume