38 #ifndef HPP_FCL_BROADPHASE_SPATIALHASH_INL_H 
   39 #define HPP_FCL_BROADPHASE_SPATIALHASH_INL_H 
   50     : cell_size(cell_size_), scene_limit(scene_limit_) {
 
   51   width[0] = std::ceil(scene_limit.
width() / cell_size);
 
   52   width[1] = std::ceil(scene_limit.
height() / cell_size);
 
   53   width[2] = std::ceil(scene_limit.
depth() / cell_size);
 
   58   int min_x = std::floor((aabb.
min_[0] - scene_limit.
min_[0]) / cell_size);
 
   59   int max_x = std::ceil((aabb.
max_[0] - scene_limit.
min_[0]) / cell_size);
 
   60   int min_y = std::floor((aabb.
min_[1] - scene_limit.
min_[1]) / cell_size);
 
   61   int max_y = std::ceil((aabb.
max_[1] - scene_limit.
min_[1]) / cell_size);
 
   62   int min_z = std::floor((aabb.
min_[2] - scene_limit.
min_[2]) / cell_size);
 
   63   int max_z = std::ceil((aabb.
max_[2] - scene_limit.
min_[2]) / cell_size);
 
   65   std::vector<unsigned int> keys((max_x - min_x) * (max_y - min_y) *
 
   68   for (
int x = min_x; x < max_x; ++x) {
 
   69     for (
int y = min_y; y < max_y; ++y) {
 
   70       for (
int z = min_z; z < max_z; ++z) {
 
   71         keys[
id++] = x + y * width[0] + z * width[0] * width[1];