#
CS 284: CAGD

Lecture #20 -- Wed 11/04, 2009.

PREVIOUS
< - - - - > CS
284 HOME < - - - - > CURRENT
< - - - - > NEXT

### Preparation:

# Warm-up Questions:

## What representations do you know for describing the shape of a physical object ?

How do you convert these representations into one another ?

## How does this apply to today's paper ?

## Discuss these questions with your neighbors.

# Marching Cubes

**Lorensen and Klein: "Marching Cubes: A High-Resolution 3D Surface Construction Algorithm", SIGGRAPH 1987**

WHAT: Converts an octree/voxel representation into a relatively smooth triangulated B-Rep.

WHY: Easier interpretation of medical scans from CT, MRI, SPECT, Ultrasound ...

HOW: For each leaf-node voxel through which the surface passes,
construct one or more triangles that approximate the most likely shape
of the surface in that voxel.

Determine
the most likely position where a surface may cross one of the edges of
the voxel using linear interpolation between voxel corners.

Also
calculate the most likely normalized surface normal for each surface
vertex constructed, by interpolating the gradient values at the sample
points.

What can be done to enhance the efficiency of the algorithm ? (exploit coherence)

What can be done to enhance the functionality of the algorithm ? (Boolean operations)

What do you make of the results ?

#### Test-questions:

**In what form is the original data coming in ?**

How
many different voxel vertex-occupancy patterns are there, if we only
exclude the redundancies due to rotations and mirroring ?

What are the pro's and con's of using marching TETRAHEDRA instead of CUBES ?

**Under what circumstances will a very large planar face, positioned obliquely in 3D space,**

be recovered as a perfectly flat collection of facets by the marching-cube algorithm ?

**A nice Tutorial: -- algorithm**

**
**

##

##
Reading Assignments:

Chapter 7 of Rockwood and Chambers: "Rational Curves" -- to give you some background for this paper.

**T-Splines and T-NURCCs by T. Sederberg at al.**

## Programming Assignment:

It is time to wrap up your genus-4 texture mapping assignment. Show me what you have been able to accomplish.

## COURSE PROJECTS:

**Acquire background information, plan your path of implementation, try to get some quick and dirty tests going ...**

and always keep the overall schedule in mind!

PREVIOUS
< - - - - > CS
284 HOME < - - - - > CURRENT
< - - - - > NEXT

Page Editor: Carlo H. Séquin