Saturday, April 16, 2005

Voxels -- What to Know

Definition:
  • The term voxel is short for volume pixel. Pixels represent only two dimensions. Voxels allow objects to be represented in 3 dimensions. Voxels are used to represent volume data, such as CAT scans and MRIs.

In Use:

  • A 3 dimension array will represent the voxels. The array type will be an unsigned char, where a zero is outside of the object, a one would represent the outer shell of the object, a two would represent the undrawn inside of the object.
  • The memory size will increase with resolution (ex. 128 cells in each x, y and z coordinates as an unsigned char)
  • Voxelization is the process of converting a set of geometric shapes into a voxel representation. A problem is finding a ratio of memory size to resolution. One technique for voxelization is presented by
    E. Karabassi, G. Papaioannou, T. Theoharis, "A Fast Depth Buffer Based Voxelization Algorithm,
    Journal of Graphics Tools", ACM, 4(4), pp.5-10, 1999.

Project Specific Assumptions:

  • The real world material will be represented by a voxel shell. The material will be cuboid, not required to be cubic. The original object does not require voxelization, because of its shape. The STL object could be voxelized to enhance collision detection.
  • if tooltip is within voxel coordinates
  • check for collision with voxel outer shell
  • check for collision with STL voxel shell
  • use other collision detection to check for contact with STL
    object
  • Voxels are used because of quick collision detection. The position of where an object collides with the voxel shell can be checked easily. X, Y and Z coordinates with the offsets figured in will determine which cells need to be checked. If any cells have a value of one, being part of the outer shell, then a collision has occured.

0 Comments:

Post a Comment

<< Home


Counters