Cloned library of VTK-5.0.0 with extra build files for internal package management.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

80 lines
2.9 KiB

/*=========================================================================
Program: Visualization Toolkit
Module: $RCSfile: vtkOpenGLVolumeProVP1000Mapper.h,v $
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkOpenGLVolumeProVP1000Mapper - Concrete class for VolumePRO mapper
//
// .SECTION Description
// vtkOpenGLVolumeProVP1000Mapper is the concrete implementation of a
// vtkVolumeProMapper based on the VP1000 chip running with OpenGL.
// Users should not create this class directly - a vtkVolumeProMapper will
// automatically create the object of the right type.
//
// This class is not included in the Rendering CMakeLists by default. If you
// want to add this class to your vtk build, you need to have the vli header
// and library files. Please see the vtkVolumeProVP1000Mapper.h file for
// instructions on how to use the vli library with vtk.
//
// For more information on the VolumePRO hardware, please see:
//
// http://www.terarecon.com/products/volumepro_prod.html
//
// If you encounter any problems with this class, please inform Kitware, Inc.
// at kitware@kitware.com.
//
//
// .SECTION See Also
// vtkVolumeMapper vtkVolumeProMapper vtkVolumeProVP1000Mapper
//
#ifndef __vtkOpenGLVolumeProVP1000Mapper_h
#define __vtkOpenGLVolumeProVP1000Mapper_h
#include "vtkVolumeProVP1000Mapper.h"
class VTK_VOLUMERENDERING_EXPORT vtkOpenGLVolumeProVP1000Mapper : public vtkVolumeProVP1000Mapper
{
public:
vtkTypeRevisionMacro(vtkOpenGLVolumeProVP1000Mapper,vtkVolumeProVP1000Mapper);
static vtkOpenGLVolumeProVP1000Mapper *New();
virtual void PrintSelf(ostream& os, vtkIndent indent);
protected:
vtkOpenGLVolumeProVP1000Mapper() {}
~vtkOpenGLVolumeProVP1000Mapper() {}
// Render the hexagon returned by the hardware to the screen.
void RenderImageBuffer( vtkRenderer *ren,
vtkVolume *vol,
int size[2],
unsigned int *outData );
// Get the OpenGL depth buffer values in a the form needed for the
// VolumePro board
virtual void GetDepthBufferValues( vtkRenderer *ren, int size[2],
unsigned int *outData);
// Render a bounding box of the volume because the texture map would be
// too large
virtual void RenderBoundingBox(vtkRenderer *ren, vtkVolume *vol);
private:
vtkOpenGLVolumeProVP1000Mapper(const vtkOpenGLVolumeProVP1000Mapper&); // Not implemented
void operator=(const vtkOpenGLVolumeProVP1000Mapper&); // Not implemented
};
#endif