Как узнать индекс ячейки в которой находится "точка", зная структуру ячеек?

Здравствуйте, я знаю как найти индекс кубических ячеек, но не знаю как найти индекс усеченных кубических ячеек, разница в том, что у усеченных на углах дополнительные ячейки, поэтому они и усеченные кубы. Помогите мне пожалуйста модифицировать алгоритм сложения векторов для кубических ячеек: id + 1 = X * Xv + Y * Yv + Z * Zv, Где X,Y,Z это координаты, Xv,Yv,Zv это множитель изменения id в зависимости от изменения по одноименному вектору координаты, и да все ячейки начинаются с нуля координат, и уходят в ++. Помогите пожалуйста, а то ну очень поможет.