Mesh Object Structure

(created by Chris)
 
 

The Mesh Object component of IRIS is responsible for creating, storing, and displaying the 3D polygons which represent the 3D image segmentation.
 
 

Creation and Storage

When the 3D window determines that the segmentation displayed in the window needs to be re-created, it sends a request to the Mesh Object. Upon a request from the 3D Window, the Mesh Object queries the VoxelData for the current segmentation data. After receiving the data, the Mesh Object creates a surface which represents the 3D segmentation. To create the surface, the Mesh Object performs two steps:

    1. Triangle generation using a Marching Cubes algorithm.
    2. Triangle stripping
If a mesh reduction and/or filtering algorithm to smooth the surface are desired, these algorithms can be applied in between steps (1) and (2).

The vertices and normals created in step (1) and the traingle strips created in step (2) are stored in a display list and used during display.
 
 

Display

When the 3D window determines that the segmentation displayed in the window needs to be re-displayed, it sends a request to the Mesh Object. Upon a request from the 3D Window, the Mesh Object renders all of the triangle strips.