69 return *
reinterpret_cast<float *
>(
reinterpret_cast<char *
>(elem) + (key.
mask_offset));
74 return reinterpret_cast<CCGElem *
>((
reinterpret_cast<char *
>(elem)) + key.
elem_size * offset);
79 return y * grid_size +
x;
void CCG_key_top_level(CCGKey *key, const CCGSubSurf *ss)
void CCG_key(CCGKey *key, const CCGSubSurf *ss, int level)
blender::float3 & CCG_grid_elem_no(const CCGKey &key, CCGElem *elem, int x, int y)
blender::float3 & CCG_grid_elem_co(const CCGKey &key, CCGElem *elem, int x, int y)
int CCG_grid_xy_to_index(const int grid_size, const int x, const int y)
CCGElem * CCG_grid_elem(const CCGKey &key, CCGElem *elem, int x, int y)
blender::float3 & CCG_elem_offset_co(const CCGKey &key, CCGElem *elem, int offset)
float & CCG_elem_mask(const CCGKey &key, CCGElem *elem)
blender::float3 & CCG_elem_no(const CCGKey &key, CCGElem *elem)
blender::float3 & CCG_elem_co(const CCGKey &, CCGElem *elem)
CCGElem * CCG_elem_offset(const CCGKey &key, CCGElem *elem, int offset)
float & CCG_grid_elem_mask(const CCGKey &key, CCGElem *elem, int x, int y)