本文整理汇总了C++中volume::set_voxel方法的典型用法代码示例。如果您正苦于以下问题:C++ volume::set_voxel方法的具体用法?C++ volume::set_voxel怎么用?C++ volume::set_voxel使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类volume
的用法示例。
在下文中一共展示了volume::set_voxel方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void vega::data::hexagonal_prismatic_lattice::fill_volume_cell( volume& v, const prismatic_hexagon_node & node )
{
static const int hex_pixel_offset[8][2] = { {1, 0}, {2, 0}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {1, 2}, {2, 2}};
math::vector3d vertex = node.get_vertex();
for(size_t h=0;h<8;++h)
{
math::vector3d pixel;
int xx = (int)vertex.x + hex_pixel_offset[h][0];
int yy = (int)vertex.y + hex_pixel_offset[h][1];
int zz = (int)vertex.z;
if( xx >= 0 && yy >= 0 && zz >= 0 && xx < v.get_width() && yy < v.get_height() && zz < v.get_depth() )
{
#ifndef USE_COLOR_MAP
v.set_voxel(xx, yy, zz, (voxel)(node.density * 255.f));
#else
v.set_voxel(xx, yy, zz, (voxel)(node.color.A));
#endif
}
}
}