# Dividing Cubes

This is similar to the Marching Cubes algorithm except that when a voxel is determined
to be intersected by the isosurface, it is projected to the image plane. If it projects to
a single pixel or smaller, than it is just rendered as a point, else it is subdivided into
surfaces as with the Marching Cubes algorithm.

## Basic Idea:

- Create "Surface Points" Instead of Triangles
- Associate Surface Normal with Each Surface
- Point Surface Points, When Rendered, Are Pixel Size
- Subdivide Cells as Necessary

## Subdivide Cells as Necessary

- Eliminates Scan Conversion Step
- Point Cloud Rendering Randomly Ordered Points
- No Topology

## Dividing Cubes Algorithm

- User Specifies Threshold Value
- Read Four Slices Into Memory
- Compute Gradients
- Divide Cells Into AxBxC Cubes. Resample
- Test for Surface Intersections
- Interpolate Gradient Vectors Where Needed
- Shade Cube
- Rotate/Project Each Cube & Paint Pixel

Main Surface Fitting
Algorithm Page

HyperVis Table
of Contents

Last modified on February 16, 1999,
G. Scott Owen, owen@siggraph.org