Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages
Rendering/vtkVolumeTextureMapper2D.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00045 #ifndef __vtkVolumeTextureMapper2D_h
00046 #define __vtkVolumeTextureMapper2D_h
00047
00048 #include "vtkVolumeTextureMapper.h"
00049
00050 class VTK_RENDERING_EXPORT vtkVolumeTextureMapper2D : public vtkVolumeTextureMapper
00051 {
00052 public:
00053 vtkTypeRevisionMacro(vtkVolumeTextureMapper2D,vtkVolumeTextureMapper);
00054 void PrintSelf( ostream& os, vtkIndent indent );
00055
00056 static vtkVolumeTextureMapper2D *New();
00057
00059
00064 vtkSetVector2Macro( TargetTextureSize, int );
00065 vtkGetVector2Macro( TargetTextureSize, int );
00067
00069
00074 vtkSetMacro( MaximumNumberOfPlanes, int );
00075 vtkGetMacro( MaximumNumberOfPlanes, int );
00077
00079
00083 vtkSetMacro( MaximumStorageSize, int );
00084 vtkGetMacro( MaximumStorageSize, int );
00086
00087
00088
00091 virtual void Render(vtkRenderer *, vtkVolume *) {};
00092
00093 virtual void RenderQuads( int vtkNotUsed(count),
00094 float *vtkNotUsed(v), float *vtkNotUsed(t),
00095 unsigned char *vtkNotUsed(texture),
00096 int vtkNotUsed(size)[2],
00097 int vtkNotUsed(reverseFlag)) {};
00098
00101 int GetInternalSkipFactor() {return this->InternalSkipFactor;};
00102
00103 int *GetAxisTextureSize() {return &(this->AxisTextureSize[0][0]);};
00104
00105 int GetSaveTextures() {return this->SaveTextures;};
00106
00107 unsigned char *GetTexture() {return this->Texture;};
00108
00109
00110
00111
00112 protected:
00113 vtkVolumeTextureMapper2D();
00114 ~vtkVolumeTextureMapper2D();
00115
00116 void InitializeRender( vtkRenderer *ren, vtkVolume *vol )
00117 {this->InitializeRender( ren, vol, -1 );}
00118
00119 void InitializeRender( vtkRenderer *ren, vtkVolume *vol, int majorDirection );
00120
00121 void GenerateTexturesAndRenderQuads( vtkRenderer *ren, vtkVolume *vol );
00122
00123 int MajorDirection;
00124 int TargetTextureSize[2];
00125
00126 int MaximumNumberOfPlanes;
00127 int InternalSkipFactor;
00128 int MaximumStorageSize;
00129
00130 unsigned char *Texture;
00131 int TextureSize;
00132 int SaveTextures;
00133 vtkTimeStamp TextureMTime;
00134
00135 int AxisTextureSize[3][3];
00136 void ComputeAxisTextureSize( int axis, int *size );
00137
00138 void RenderSavedTexture();
00139
00140 private:
00141 vtkVolumeTextureMapper2D(const vtkVolumeTextureMapper2D&);
00142 void operator=(const vtkVolumeTextureMapper2D&);
00143 };
00144
00145
00146 #endif
00147
00148