Voxels in SculptPrint

SculptPrint employs voxels.  A voxel is a cube of space.  Voxels are not a new technology.  Since computing began, representing 3D space as an indexed array has been an obvious idea.  However, the computing power in terms of memory and processing needed to compute 3D arrays of significant size has only recently become widely available and affordable.  SculptPrint uses parallel processing from graphics processing units from nVidia to process billions of voxels quickly and efficiently.

B-rep
Triangle Mesh
Voxels

The three types of 3D models supported by SculptPrint are shown above.  These include boundary representation (b-rep) models, triangle mesh models, and voxels.  SculptPrint supports import and display of b-rep and triangle mesh models in order to voxelize them to the SculptPrint voxel format.  A quick explanation of b-rep and triangle mesh models will help in explaining voxels.

B-rep Model

B-rep

B-rep models are a collection of 3D surfaces and curves with connections between the surfaces and curves tracked by a data structure.  The surfaces can be simple shapes such as planes or cylinder as well as more exotic shapes such as b-splines or NURBS.  Computer-aided design packages primarily use b-rep models.  B-rep models are the best for tracking precise geometry such as bolt patterns.  SculptPrint supports importing these types of models and allows the user to access the precise geometry during tasks when the b-rep model is the best choice of representation.

mesh

Triangle Mesh

Triangle meshes are a collection of triangles.  Most 3D graphics is performed using triangle meshes.  Often b-rep modeling software will necessarily need to generate a triangle mesh through a process called tessellation in order to display the model on a computer screen.

Triangle meshes are also the most popular form of 3D model for 3D printing.  However, interest in using voxels for 3D printing is on the rise.  A few examples are below:

HP Voxel 3D Printing

Stratasys Voxel 3D Printing

voxelviztool

Voxels

SculptPrint converts imported B-rep and triangle mesh models into voxels through a process called voxelization.   Voxelization is one of many operations in SculptPrint that use the GPU.  Both b-rep and triangle mesh models only capture the boundary between full and empty space, but voxels allow each cube to carry information about whether the cube of space is inside or outside.

Voxels can also be assigned additional information such as density, distance from the surface, or a physical property such as temperature or pressure.

SculptPrint renders voxels using nVidia's CUDA technology directly.  The need for an additional triangle mesh is not necessary.  In the image above, one can see the smooth voxels and then a small red sample of voxels displayed in the lower left.  The model is composed of billions of voxels.

all at once

All Three in SculptPrint

SculptPrint primarily uses voxels but allows all three types of 3D models to be used together.  In the image above a part to be manufactured has all three types of models listed, b-rep, mesh, and voxel.  The concept is similar to a 2D image modeling package such as Adobe Photoshop.  A 2D image might be composed of vector graphics layers and raster graphics layers. The vector graphics layers are analogous to the b-rep and triangle mesh models.  The raster graphics layers are pixels and are analogous to the voxels.  SculptPrint's approach is to allow the user to use the "right tool for the right job" in terms of 3D model representation.