Create Orientations


When a tool path is first created, it is a series of XYZ positions that the tool moves along; in order to complete the pass, a matching series of orientation angles must be assigned for every XYZ point on the tool path sequence.  SculptPrint has many helpful features to make it as simple as possible to generate these orientations.  In the last blog post, the concept of an access map was introduced; in this post, this concept is extending to an access space.

When the sequence of access maps for each step of an entire tool pass are placed in order, the access space is created. Each access map is a digital image and the series of maps forms a video sequence.  The access space shows the accessible and inaccessible orientations of the tool from the start to finish of the tool pass.

To create orientations, the goal is to find a series of rotations in which the tool remains in accessible positions. The proper orientations on the tool pass can be thought of as a path through a tunnel in the access space, depicted in white on the model below.

SculptPrint uses computer vision algorithms to create a path through these tunnels.  These paths are called “access paths”.  When one tunnel comes to an end, SculptPrint knows to switch to a new tunnel.  The green paths show examples of this “tunnel switching”.  When a tunnel is changed, the tool path is split and the tool is directed to retract to a safe distance in order to reorient.

Access Maps


In SculptPrint, access maps are generated to show which orientations and positions can be used so that the tool does not collide with the part. Each point on an access map corresponds with a possible orientation of the tool at a specific point in the tool pass. Regions in black represent orientations that would result in the tool colliding with the part, while regions in white represent accessible orientations for the tool. The images above depict four accessible orientations for the same point in a pass, and the corresponding access map.

The access map corresponds with the spherical end of the tool similar to the way a world map represents a globe.

The point selected on the map represents the direction the length of the tool extends directly from. The direction the tool is rotated from top to bottom corresponds to a phi (Φ) value. This is analogous to latitude on a world map.

The direction from left to right corresponds to a theta (ϴ) value for rotation about the Z axis, as with longitude.

Using a combination of theta and phi values, any possible orientation can be generated. Access maps make it easy for SculptPrint users to generate proper orientations and retractions for successful tool passes.

Milling Passes in SculptPrint

When manufacturing a part on a mill, several passes are typically required to achieve the final product: first, a roughing pass to cut away the bulk of the unnecessary material, followed by more detailed finishing passes. Larger tools are used in the roughing pass so that a lot of material can be removed quickly.  Then smaller tools which take longer to remove the same amount of material can be used on the finished passes to incorporate detail and sculpt the specific shape of the part.

The image above shows the path of a roughing pass, as well as its starting and ending volumes. Below, a sequence of finishing passes sculpt out the final part (head) from the volume created in the roughing pass.


To further increase efficiency, SculptPrint allows users to create cross section passes for the roughing.  A cross section pass is much quicker than a typical pass because it’s movements are less specific to the part, making it more effective for removing material.

In a finishing pass, the tool’s movements are specific to the part, as shown below.

In a cross section roughing pass, the tool either moves in a raster or radial pattern, both of which are much easier and faster for the tool to cut.

Raster:                                                                 Radial:


Raster: A raster pattern moves the tool across only the x or y axis. This technique is most effective when cutting from block stock.

Radial: A radial pattern consists of concentric circles; the tool begins cutting large circles that get progressively smaller. This technique is ideal when cutting from cylinder stock.

SculptPrint’s features are designed as easy and efficient tools for creating the most effective tool paths.

SculptPrint Technology Patented

On May 15, 2018, the U.S. patent office issued patent no. 9,971,335 B2 for "Hybrid Dynamic Tree Data Structure and Accessibility Mapping for Computer Numerical Controlled Machining Path Planning".  This patent defines SculptPrint's use of voxels and access maps to automatically produce CNC machining tool paths.  The patent award represents a significant milestone and we are pleased with this recognition by the U.S. patent office.

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.

Triangle Mesh

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 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.


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



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.

SculptPrinted Centrifugal Compressor

 Last month, Georgia Tech students used SculptPrint to produce a complete centrifugal compressor.  A housing for the impeller featured in the last blog post was sculptprinted on an Okuma Multus B-300 5-axis millturn machine.  SculptPrint features supporting boring operations were used extensively to produce the inner diameter geometry of the housing.

The voxel model of the compressor housing in the SculptPrint software is shown below.

The millturn machine allows a mixture of turning and milling pass to produce the asymmetric geometry of the housing.

A boring pass on the inner diameter is shown below.

A milling pass to produce the asymmetric outlet port geometry is shown next.

A turning pass as modeled in SculptPrint is shown below.

A collision free milling pass on the inner diameter modeled in SculptPrint is shown next.

Finally, the test rig for the assembled compressor is shown.  The compressors was tested up to around 2800 rpm with good results.

SculptPrinted Impeller

Georgia Tech students used SculptPrint to generate CNC paths for a turbocharger impeller.  The impeller was produced on an Okuma Multus B-300 5-axis millturn machine.  The tool paths were automatically assigned collision free orientations using SculptPrint’s access map technology.  The students are also working on a housing for the impeller to complete the turbocharger.

The part modeled in SculptPrint using voxel modeling and access map technology shown below.

SculptPrint at nVidia’s 2016 GPU Technology Conference

In April of 2016, SculptPrint was featured at nVidia’s GPU Technology Conference.  Demos of the software were given in our booth as well as in nVidia’s Design and Manufacturing section of their booth.  The slides from the talk given at the conference are now available on nVidia’s website and can be found here.