Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

vtkVolumeProVG500Mapper Class Reference

Superclass for VG500 board. More...

#include <vtkVolumeProVG500Mapper.h>

Inheritance diagram for vtkVolumeProVG500Mapper:

Inheritance graph
[legend]
Collaboration diagram for vtkVolumeProVG500Mapper:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
virtual void Render (vtkRenderer *, vtkVolume *)
virtual int GetAvailableBoardMemory ()
virtual void GetLockSizesForBoardMemory (unsigned int type, unsigned int *xSize, unsigned int *ySize, unsigned int *zSize)

Static Public Methods

int IsTypeOf (const char *type)
vtkVolumeProVG500Mapper * SafeDownCast (vtkObject *o)
vtkVolumeProVG500Mapper * New ()

Protected Methods

 vtkVolumeProVG500Mapper ()
 ~vtkVolumeProVG500Mapper ()
 vtkVolumeProVG500Mapper (const vtkVolumeProVG500Mapper &)
void operator= (const vtkVolumeProVG500Mapper &)
void UpdateCamera (vtkRenderer *, vtkVolume *)
void UpdateLights (vtkRenderer *, vtkVolume *)
void UpdateProperties (vtkRenderer *, vtkVolume *)
void UpdateVolume (vtkRenderer *, vtkVolume *)
void UpdateCropping (vtkRenderer *, vtkVolume *)
void UpdateCursor (vtkRenderer *, vtkVolume *)
void UpdateCutPlane (vtkRenderer *, vtkVolume *)
virtual void RenderHexagon (vtkRenderer *vtkNotUsed(ren), vtkVolume *vtkNotUsed(vol), VLIPixel *vtkNotUsed(basePlane), int size[2], VLIVector3D hexagon[6], VLIVector2D textureCoords[6])
void CorrectBasePlaneSize (VLIPixel *inBase, int inSize[2], VLIPixel **outBase, int outSize[2], VLIVector2D textureCoords[6])

Detailed Description

Superclass for VG500 board.

Date:
2000/12/10 20:08:28
Revision:
1.10

vtkVolumeProVG500Mapper is the superclass for VolumePRO volume rendering mappers based on the VG500 chip. Subclasses are for underlying graphics languages. Users should not create subclasses directly - a vtkVolumeProMapper will automatically create the object of the right type.

This class is not included in the contrib Makefile.in by default. If you want to add this class to your vtk build, you need to have the vli header and library files, and you will need to perform the following steps:

1. Make sure you are building with the contrib kit. On Unix add --with-contrib to your configure line, on Windows check the contrib box on PCMaker.

2. Edit the Makefile.in in contrib. Add the following three classes to the CONCRETE list of classes: vtkVolumeProVG500Mapper, vtkOpenGLVolumeProVG500Mapper. Please be certain that there are no spaces after the "\" that separates lines.

3. Specify the include path for vli.h to the vtk make process. For Windows, add the option -I "/path/to/vli/" to the Advanced Options Extra Compiler flags of pcmaker. For example, the following works here: -I "c:\Program Files/VolumePro/inc" -DVTK_USE_VLI For UNIX, add the path to USER_CXXFLAGS as a -I option to the compiler. Or you can edit vtkVolumeProMapper.h and specify the include path for vli.h, or simply copy the vli.h file to your contrib directory.

4. Add a -DVTK_USE_VLI to the compile options. For Windows, add the flag in the Advanced Options Extra Compiler Flags of pcmaker. For Unix, add the flag to USER_CXXFLAGS in user.make.

5. On Windows - add the vli.lib file to the Extra Linker Flags under the Advanced Options. For example the following works here: "c:\program files\volumepro\lib\vli.lib" On Unix - add the vli shared object to the KIT_LIBS in the Makefile.in in contrib.

6. On Windows - make sure vli.dll is somewhere in your path before you run vtk. You can put it in your vtkbin/lib or vtkbin/Debug/lib if you want. On Unix - make sure the vli shared object is in your shared library path before you run.

7. Reconfigure and rebuild vtk. You should now be able to create a vtkVolumeProMapper which, if you have a VolumePRO board and the device driver is running, should connect to the hardware and render your volumes quickly.

For more information on the VolumePRO hardware, please see:

http://www.3dvolumegraphics.com/3dvolumegraphics/product/index.htm

If you encounter any problems with this class, please inform Kitware, Inc. at kitware@kitware.com.

See also:
vtkVolumeMapper vtkVolumeProMapper vtkOpenGLVolumeProVG500Mapper

Definition at line 113 of file vtkVolumeProVG500Mapper.h.


Constructor & Destructor Documentation

vtkVolumeProVG500Mapper::vtkVolumeProVG500Mapper   [protected]
 

vtkVolumeProVG500Mapper::~vtkVolumeProVG500Mapper   [protected]
 

vtkVolumeProVG500Mapper::vtkVolumeProVG500Mapper const vtkVolumeProVG500Mapper &    [inline, protected]
 

Definition at line 128 of file vtkVolumeProVG500Mapper.h.


Member Function Documentation

virtual const char* vtkVolumeProVG500Mapper::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkVolumeProMapper.

Reimplemented in vtkOpenGLVolumeProVG500Mapper.

int vtkVolumeProVG500Mapper::IsTypeOf const char *    type [static]
 

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkVolumeProMapper.

Reimplemented in vtkOpenGLVolumeProVG500Mapper.

virtual int vtkVolumeProVG500Mapper::IsA const char *    type [virtual]
 

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkVolumeProMapper.

Reimplemented in vtkOpenGLVolumeProVG500Mapper.

vtkVolumeProVG500Mapper* vtkVolumeProVG500Mapper::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkVolumeProMapper.

Reimplemented in vtkOpenGLVolumeProVG500Mapper.

vtkVolumeProVG500Mapper* vtkVolumeProVG500Mapper::New   [static]
 

Automatically create the proper subclass

Reimplemented from vtkVolumeProMapper.

Reimplemented in vtkOpenGLVolumeProVG500Mapper.

virtual void vtkVolumeProVG500Mapper::Render vtkRenderer   ren,
vtkVolume   vol
[virtual]
 

Render the image using the hardware and place it in the frame buffer

Reimplemented from vtkVolumeProMapper.

virtual int vtkVolumeProVG500Mapper::GetAvailableBoardMemory   [virtual]
 

Reimplemented from vtkVolumeProMapper.

virtual void vtkVolumeProVG500Mapper::GetLockSizesForBoardMemory unsigned int    type,
unsigned int *    xSize,
unsigned int *    ySize,
unsigned int *    zSize
[virtual]
 

void vtkVolumeProVG500Mapper::operator= const vtkVolumeProVG500Mapper &    [inline, protected]
 

Definition at line 129 of file vtkVolumeProVG500Mapper.h.

void vtkVolumeProVG500Mapper::UpdateCamera vtkRenderer  ,
vtkVolume  
[protected]
 

void vtkVolumeProVG500Mapper::UpdateLights vtkRenderer  ,
vtkVolume  
[protected]
 

void vtkVolumeProVG500Mapper::UpdateProperties vtkRenderer  ,
vtkVolume  
[protected]
 

void vtkVolumeProVG500Mapper::UpdateVolume vtkRenderer  ,
vtkVolume  
[protected]
 

void vtkVolumeProVG500Mapper::UpdateCropping vtkRenderer  ,
vtkVolume  
[protected]
 

void vtkVolumeProVG500Mapper::UpdateCursor vtkRenderer  ,
vtkVolume  
[protected]
 

void vtkVolumeProVG500Mapper::UpdateCutPlane vtkRenderer  ,
vtkVolume  
[protected]
 

virtual void vtkVolumeProVG500Mapper::RenderHexagon vtkRenderer *vtkNotUsed(ren)   ,
vtkVolume *vtkNotUsed(vol)   ,
VLIPixel *vtkNotUsed(basePlane)   ,
int    size[2],
VLIVector3D    hexagon[6],
VLIVector2D    textureCoords[6]
[inline, protected, virtual]
 

Definition at line 156 of file vtkVolumeProVG500Mapper.h.

void vtkVolumeProVG500Mapper::CorrectBasePlaneSize VLIPixel *    inBase,
int    inSize[2],
VLIPixel **    outBase,
int    outSize[2],
VLIVector2D    textureCoords[6]
[protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Nov 21 13:01:47 2001 for VTK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001