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