OpaqueCubes Class Reference

#include <OpaqueCubes.h>

List of all members.

Public Member Functions

 OpaqueCubes (VolumeLoader *volume_loader, matrix44 *aViewPt, matrix44 *aInvViewPt)
virtual ~OpaqueCubes ()
void createVolumeCubes ()
void createTextures ()
void setTextures ()
void setDrawSize (int width, int height)
void glDrawOpaqueCubes (int threshold, GLfloat rot_x, GLfloat rot_y)
void rotateView (Vector3 *rotation_axis, float angle)
matrix44getInvViewMatrix ()

Protected Attributes

VolumeLoadervolume_loader_
 The volume data.
int texture_size_
 The size of the texture.
Vector3 vector_
 The vector data.
LightingInfolight_info_
 The light parameters from the user input.
RGBAColortexture_
 The RGBAColor struct.
unsigned short x_dim_
 The x dimension of the volume dataset.
unsigned short y_dim_
 The y dimension of the volume dataset.
unsigned short z_dim_
 The z dimension of the volume dataset.
unsigned short max_dim_
 The value of the biggest dimension.
float x_side_
 The x dimension of one cube.
float y_side_
 The y dimension of one cube.
float z_side_
 The z dimension of one cube.
GLuint * x_texture_
 The texture for the x-axis.
GLuint * y_texture_
 The texture for the x-axis.
GLuint * z_texture_
 The texture for the z-axis.
unsigned short * volume_data_
 The values for the cubes.
GLuint texture_list_
 The display list to store the textures.
int draw_width_
 The width of the draw size.
int draw_height_
 The height of the draw size.
LightingInfolighting_info_
 The lighting information.
matrix44view_matrix_
 The view matrix of the volume.
matrix44inv_view_matrix_
 The inverse view matrix of the volume.


Constructor & Destructor Documentation

OpaqueCubes::OpaqueCubes ( VolumeLoader volume_loader,
matrix44 aViewPt,
matrix44 aInvViewPt 
)

This constructor sets all relevant variables for the image calculation.

OpaqueCubes::~OpaqueCubes (  )  [virtual]

The destructor.


Member Function Documentation

void OpaqueCubes::createTextures (  ) 

Creates the textures for the cubes.

void OpaqueCubes::createVolumeCubes (  ) 

Seperates the volume data into cubes.

Parameters:
lighting_info This holds the user defined lighting info.

matrix44 * OpaqueCubes::getInvViewMatrix (  ) 

void OpaqueCubes::glDrawOpaqueCubes ( int  threshold,
GLfloat  rot_x,
GLfloat  rot_y 
)

Renders the opaque cubes.

void OpaqueCubes::rotateView ( Vector3 rotation_axis,
float  angle 
)

Calculates the rotation matrix depending on the axis and the rotation angle.

Parameters:
rotation_axis The vector representing the rotation axis.
angle The rotation angle.

void OpaqueCubes::setDrawSize ( int  width,
int  height 
)

Sets the draw size.

void OpaqueCubes::setTextures (  ) 

Sets the textures on the cubes.


Member Data Documentation

int OpaqueCubes::draw_height_ [protected]

The height of the draw size.

int OpaqueCubes::draw_width_ [protected]

The width of the draw size.

matrix44* OpaqueCubes::inv_view_matrix_ [protected]

The inverse view matrix of the volume.

LightingInfo* OpaqueCubes::light_info_ [protected]

The light parameters from the user input.

LightingInfo* OpaqueCubes::lighting_info_ [protected]

The lighting information.

unsigned short OpaqueCubes::max_dim_ [protected]

The value of the biggest dimension.

RGBAColor* OpaqueCubes::texture_ [protected]

The RGBAColor struct.

GLuint OpaqueCubes::texture_list_ [protected]

The display list to store the textures.

int OpaqueCubes::texture_size_ [protected]

The size of the texture.

Vector3 OpaqueCubes::vector_ [protected]

The vector data.

matrix44* OpaqueCubes::view_matrix_ [protected]

The view matrix of the volume.

unsigned short* OpaqueCubes::volume_data_ [protected]

The values for the cubes.

VolumeLoader* OpaqueCubes::volume_loader_ [protected]

The volume data.

unsigned short OpaqueCubes::x_dim_ [protected]

The x dimension of the volume dataset.

float OpaqueCubes::x_side_ [protected]

The x dimension of one cube.

GLuint* OpaqueCubes::x_texture_ [protected]

The texture for the x-axis.

unsigned short OpaqueCubes::y_dim_ [protected]

The y dimension of the volume dataset.

float OpaqueCubes::y_side_ [protected]

The y dimension of one cube.

GLuint* OpaqueCubes::y_texture_ [protected]

The texture for the x-axis.

unsigned short OpaqueCubes::z_dim_ [protected]

The z dimension of the volume dataset.

float OpaqueCubes::z_side_ [protected]

The z dimension of one cube.

GLuint* OpaqueCubes::z_texture_ [protected]

The texture for the z-axis.


The documentation for this class was generated from the following files:
Generated on Wed Dec 6 11:27:27 2006 by  doxygen 1.4.7