25 #ifndef vtkTextureObject_h 26 #define vtkTextureObject_h 55 NumberOfDepthTextureCompareFunctions
64 NumberOfDepthTextureModes
87 NumberOfMinificationModes
124 {
return this->Width*this->Height*this->Depth; }
149 void Activate(
unsigned int texUnit);
150 void Deactivate(
unsigned int texUnit);
162 void SendParameters();
175 bool Create1D(
int numComps,
177 bool shaderSupportsTextureInt);
184 bool Create2D(
unsigned int width,
unsigned int height,
int numComps,
186 bool shaderSupportsTextureInt);
192 bool CreateDepth(
unsigned int width,
201 bool CreateDepthFromRaw(
unsigned int width,
210 bool AllocateDepth(
unsigned int width,
unsigned int height,
216 bool Allocate1D(
unsigned int width,
int numComps,
int vtkType);
221 bool Allocate2D(
unsigned int width,
unsigned int height,
int numComps,
228 bool Allocate3D(
unsigned int width,
unsigned int height,
229 unsigned int depth,
int numComps,
238 bool Create3D(
unsigned int width,
unsigned int height,
unsigned int depth,
240 bool shaderSupportsTextureInt);
248 bool Create2D(
unsigned int width,
unsigned int height,
int numComps,
250 bool shaderSupportsTextureInt);
251 bool Create3D(
unsigned int width,
unsigned int height,
unsigned int depth,
252 int numComps,
int vtktype,
253 bool shaderSupportsTextureInt);
265 unsigned int GetInternalFormat(
int vtktype,
int numComps,
266 bool shaderSupportsTextureInt);
267 unsigned int GetFormat(
int vtktype,
int numComps,
268 bool shaderSupportsTextureInt);
342 { this->SetMagnificationFilter(val?Linear:Nearest); }
346 {
return this->MagnificationFilter==Linear; }
441 static bool IsSupported(
443 bool requireTexFloat,
444 bool requireDepthFloat,
474 void CopyToFrameBuffer(
int srcXmin,
494 void CopyFromFrameBuffer(
int srcXmin,
513 void CreateTexture();
516 void DestroyTexture();
543 float BorderColor[4];
bool SupportsTextureFloat
abstract base class for most VTK objects
int DepthTextureCompareFunction
bool GetLinearMagnification()
vtkWeakPointer< vtkRenderWindow > Context
#define vtkGetMacro(name, type)
record modification and/or execution time
dynamic, self-adjusting array of float
static bool IsSupported(vtkRenderWindow *renWin, bool requireTexFloat, bool requireDepthFloat, bool requireTexInt)
vtkTimeStamp SendParametersTime
#define vtkTypeMacro(thisClass, superclass)
GLint GLint GLsizei GLsizei height
GLint GLint GLsizei GLsizei GLsizei depth
virtual void PrintSelf(ostream &os, vtkIndent indent)
#define vtkSetVector4Macro(name, type)
a simple class to control print indentation
bool SupportsDepthBufferFloat
#define VTKRENDERINGOPENGL_EXPORT
GLint GLint GLsizei width
void SetLinearMagnification(bool val)
static bool IsSupported(vtkRenderWindow *renWin)
#define vtkGetVector4Macro(name, type)
abstracts an OpenGL pixel buffer object.
Interface class for querying and using OpenGL extensions.
bool RequireTextureInteger
abstracts an OpenGL texture object.
create a window for renderers to draw into
VTKRENDERINGOPENGL_EXPORT PFNGLGENERATEMIPMAPPROC GenerateMipmap
bool SupportsTextureInteger
bool RequireDepthBufferFloat
#define vtkSetMacro(name, type)