dox/Rendering/vtkVolumeProVP1000Mapper.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00049
#ifndef __vtkVolumeProVP1000Mapper_h
00050
#define __vtkVolumeProVP1000Mapper_h
00051
00052
#include "vtkVolumeProMapper.h"
00053
00054
#ifdef _WIN32
00055
#include "VolumePro1000/inc/vli.h"
00056
#else
00057
#include "vli3/include/vli.h"
00058
#endif
00059
00060 #define VTK_VOLUME_16BIT 3
00061 #define VTK_VOLUME_32BIT 4
00062
00063 class VTK_EXPORT vtkVolumeProVP1000Mapper :
public vtkVolumeProMapper
00064 {
00065
public:
00066 vtkTypeRevisionMacro(vtkVolumeProVP1000Mapper,
vtkVolumeProMapper);
00067
static vtkVolumeProVP1000Mapper *
New();
00068
virtual void PrintSelf(ostream& os,
vtkIndent indent);
00069
00071
00072
virtual void Render(
vtkRenderer *,
vtkVolume * );
00073
virtual int GetAvailableBoardMemory();
00074
virtual void GetLockSizesForBoardMemory(
unsigned int type,
00075
unsigned int *xSize,
00076
unsigned int *ySize,
00077
unsigned int *zSize);
00079
00080
protected:
00081 vtkVolumeProVP1000Mapper();
00082 ~vtkVolumeProVP1000Mapper();
00083
00084
00085
void UpdateCamera(
vtkRenderer *,
vtkVolume * );
00086
00087
00088
void UpdateLights(
vtkRenderer *,
vtkVolume * );
00089
00090
00091
00092
void UpdateProperties(
vtkRenderer *,
vtkVolume * );
00093
00094
00095
00096
void UpdateVolume(
vtkRenderer *,
vtkVolume * );
00097
00098
00099
void UpdateCropping(
vtkRenderer *,
vtkVolume * );
00100
00101
00102
void UpdateCursor(
vtkRenderer *,
vtkVolume * );
00103
00104
00105
void UpdateCutPlane(
vtkRenderer *,
vtkVolume * );
00106
00107
00108
00109 virtual void RenderImageBuffer(
vtkRenderer * vtkNotUsed(ren),
00110
vtkVolume * vol,
00111
int size[2],
00112
unsigned int * outData )
00113 {(
void)vol; (
void)size; (
void)outData;}
00114
00115
00116
00117 virtual void RenderBoundingBox(
vtkRenderer * vtkNotUsed(ren),
00118
vtkVolume * vol )
00119 {(
void)vol;}
00120
00121
00122 virtual void GetDepthBufferValues(
vtkRenderer *vtkNotUsed(ren),
00123
int size[2],
00124
unsigned int *outData )
00125 { (
void)outData; }
00126
00127
#if ((VTK_MAJOR_VERSION == 3)&&(VTK_MINOR_VERSION == 2))
00128
vtkGetVectorMacro( VoxelCroppingRegionPlanes,
float, 6 );
00129
void ConvertCroppingRegionPlanesToVoxels();
00130
float VoxelCroppingRegionPlanes[6];
00131
#endif
00132
00133
00134
00135
00136
00137 int LoadedDataSize[3];
00138
00139 VLIImageBuffer *ImageBuffer;
00140 VLIDepthBuffer *DepthBuffer;
00141
00142 VLIStatus CheckSubSampling(
const VLIVolume *inVolume,
00143
const VLIContext *inContext,
00144
int &outImageWidth,
int &outImageHeight);
00145
00146 int DrawBoundingBox;
00147
00148
private:
00149 vtkVolumeProVP1000Mapper(
const vtkVolumeProVP1000Mapper&);
00150
void operator=(
const vtkVolumeProVP1000Mapper&);
00151 };
00152
00153
00154
00155
#endif
00156
00157
00158