vtkTexture Class Reference

#include <vtkTexture.h>

Inheritance diagram for vtkTexture:

Inheritance graph
[legend]
Collaboration diagram for vtkTexture:

Collaboration graph
[legend]

List of all members.


Detailed Description

handles properties associated with a texture map

vtkTexture is an object that handles loading and binding of texture maps. It obtains its data from an input image data dataset type. Thus you can create visualization pipelines to read, process, and construct textures. Note that textures will only work if texture coordinates are also defined, and if the rendering system supports texture.

Instances of vtkTexture are associated with actors via the actor's SetTexture() method. Actors can share texture maps (this is encouraged to save memory resources.)

Warning:
Currently only 2D texture maps are supported, even though the data pipeline supports 1,2, and 3D texture coordinates.

Some renderers such as OpenGL require that the texture map dimensions are a power of two in each direction. Other renderers may have similar (ridiculous) restrictions, so be careful out there... (Note: a recent change to vtk allows use of non-power of two texture maps in OpenGL. The texture is automatically resampled to a power of two in one or more directions.)

See also:
vtkActor vtkRenderer vtkOpenGLTexture
Tests:
vtkTexture (Tests)

Definition at line 64 of file vtkTexture.h.


Public Types

typedef vtkImageAlgorithm Superclass
enum  VTKTextureBlendingMode {
  VTK_TEXTURE_BLENDING_MODE_NONE = 0, VTK_TEXTURE_BLENDING_MODE_REPLACE, VTK_TEXTURE_BLENDING_MODE_MODULATE, VTK_TEXTURE_BLENDING_MODE_ADD,
  VTK_TEXTURE_BLENDING_MODE_ADD_SIGNED, VTK_TEXTURE_BLENDING_MODE_INTERPOLATE, VTK_TEXTURE_BLENDING_MODE_SUBTRACT
}

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void Render (vtkRenderer *ren)
virtual void ReleaseGraphicsResources (vtkWindow *)
virtual void Load (vtkRenderer *)
vtkImageDataGetInput ()
unsigned char * MapScalarsToColors (vtkDataArray *scalars)
virtual int GetRepeat ()
virtual void SetRepeat (int)
virtual void RepeatOn ()
virtual void RepeatOff ()
virtual int GetEdgeClamp ()
virtual void SetEdgeClamp (int)
virtual void EdgeClampOn ()
virtual void EdgeClampOff ()
virtual int GetInterpolate ()
virtual void SetInterpolate (int)
virtual void InterpolateOn ()
virtual void InterpolateOff ()
virtual void SetQuality (int)
virtual int GetQuality ()
void SetQualityToDefault ()
void SetQualityTo16Bit ()
void SetQualityTo32Bit ()
virtual int GetMapColorScalarsThroughLookupTable ()
virtual void SetMapColorScalarsThroughLookupTable (int)
virtual void MapColorScalarsThroughLookupTableOn ()
virtual void MapColorScalarsThroughLookupTableOff ()
void SetLookupTable (vtkScalarsToColors *)
virtual vtkScalarsToColorsGetLookupTable ()
virtual vtkUnsignedCharArrayGetMappedScalars ()
void SetTransform (vtkTransform *transform)
virtual vtkTransformGetTransform ()
virtual int GetBlendingMode ()
virtual void SetBlendingMode (int)
virtual int GetRestrictPowerOf2ImageSmaller ()
virtual void SetRestrictPowerOf2ImageSmaller (int)
virtual void RestrictPowerOf2ImageSmallerOn ()
virtual void RestrictPowerOf2ImageSmallerOff ()

Static Public Member Functions

static vtkTextureNew ()
static int IsTypeOf (const char *type)
static vtkTextureSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkTexture ()
 ~vtkTexture ()

Protected Attributes

int Repeat
int EdgeClamp
int Interpolate
int Quality
int MapColorScalarsThroughLookupTable
vtkScalarsToColorsLookupTable
vtkUnsignedCharArrayMappedScalars
vtkTransformTransform
int BlendingMode
int RestrictPowerOf2ImageSmaller
int SelfAdjustingTableRange

Member Typedef Documentation

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

Definition at line 68 of file vtkTexture.h.


Member Enumeration Documentation

Used to specify how the texture will blend its RGB and Alpha values with other textures and the fragment the texture is rendered upon. BTX

Enumerator:
VTK_TEXTURE_BLENDING_MODE_NONE 
VTK_TEXTURE_BLENDING_MODE_REPLACE 
VTK_TEXTURE_BLENDING_MODE_MODULATE 
VTK_TEXTURE_BLENDING_MODE_ADD 
VTK_TEXTURE_BLENDING_MODE_ADD_SIGNED 
VTK_TEXTURE_BLENDING_MODE_INTERPOLATE 
VTK_TEXTURE_BLENDING_MODE_SUBTRACT 

Definition at line 163 of file vtkTexture.h.


Constructor & Destructor Documentation

vtkTexture::vtkTexture (  )  [protected]

vtkTexture::~vtkTexture (  )  [protected]


Member Function Documentation

static vtkTexture* vtkTexture::New (  )  [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkAlgorithm.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

virtual const char* vtkTexture::GetClassName (  )  [virtual]

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

static int vtkTexture::IsTypeOf ( const char *  name  )  [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

virtual int vtkTexture::IsA ( const char *  name  )  [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

static vtkTexture* vtkTexture::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

void vtkTexture::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkImageAlgorithm.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

virtual void vtkTexture::Render ( vtkRenderer ren  )  [virtual]

Renders a texture map. It first checks the object's modified time to make sure the texture maps Input is valid, then it invokes the Load() method.

virtual void vtkTexture::ReleaseGraphicsResources ( vtkWindow  )  [inline, virtual]

Release any graphics resources that are being consumed by this texture. The parameter window could be used to determine which graphic resources to release.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

Definition at line 79 of file vtkTexture.h.

virtual void vtkTexture::Load ( vtkRenderer  )  [inline, virtual]

Abstract interface to renderer. Each concrete subclass of vtkTexture will load its data into graphics system in response to this method invocation.

Reimplemented in vtkMesaTexture, and vtkOpenGLTexture.

Definition at line 84 of file vtkTexture.h.

virtual int vtkTexture::GetRepeat (  )  [virtual]

Turn on/off the repetition of the texture map when the texture coords extend beyond the [0,1] range.

virtual void vtkTexture::SetRepeat ( int   )  [virtual]

Turn on/off the repetition of the texture map when the texture coords extend beyond the [0,1] range.

virtual void vtkTexture::RepeatOn (  )  [virtual]

Turn on/off the repetition of the texture map when the texture coords extend beyond the [0,1] range.

virtual void vtkTexture::RepeatOff (  )  [virtual]

Turn on/off the repetition of the texture map when the texture coords extend beyond the [0,1] range.

virtual int vtkTexture::GetEdgeClamp (  )  [virtual]

Turn on/off the clamping of the texture map when the texture coords extend beyond the [0,1] range. Only used when Repeat is off, and edge clamping is supported by the graphics card.

virtual void vtkTexture::SetEdgeClamp ( int   )  [virtual]

Turn on/off the clamping of the texture map when the texture coords extend beyond the [0,1] range. Only used when Repeat is off, and edge clamping is supported by the graphics card.

virtual void vtkTexture::EdgeClampOn (  )  [virtual]

Turn on/off the clamping of the texture map when the texture coords extend beyond the [0,1] range. Only used when Repeat is off, and edge clamping is supported by the graphics card.

virtual void vtkTexture::EdgeClampOff (  )  [virtual]

Turn on/off the clamping of the texture map when the texture coords extend beyond the [0,1] range. Only used when Repeat is off, and edge clamping is supported by the graphics card.

virtual int vtkTexture::GetInterpolate (  )  [virtual]

Turn on/off linear interpolation of the texture map when rendering.

virtual void vtkTexture::SetInterpolate ( int   )  [virtual]

Turn on/off linear interpolation of the texture map when rendering.

virtual void vtkTexture::InterpolateOn (  )  [virtual]

Turn on/off linear interpolation of the texture map when rendering.

virtual void vtkTexture::InterpolateOff (  )  [virtual]

Turn on/off linear interpolation of the texture map when rendering.

virtual void vtkTexture::SetQuality ( int   )  [virtual]

Force texture quality to 16-bit or 32-bit. This might not be supported on all machines.

virtual int vtkTexture::GetQuality (  )  [virtual]

Force texture quality to 16-bit or 32-bit. This might not be supported on all machines.

void vtkTexture::SetQualityToDefault (  )  [inline]

Force texture quality to 16-bit or 32-bit. This might not be supported on all machines.

Definition at line 115 of file vtkTexture.h.

void vtkTexture::SetQualityTo16Bit (  )  [inline]

Force texture quality to 16-bit or 32-bit. This might not be supported on all machines.

Definition at line 116 of file vtkTexture.h.

void vtkTexture::SetQualityTo32Bit (  )  [inline]

Force texture quality to 16-bit or 32-bit. This might not be supported on all machines.

Definition at line 117 of file vtkTexture.h.

virtual int vtkTexture::GetMapColorScalarsThroughLookupTable (  )  [virtual]

Turn on/off the mapping of color scalars through the lookup table. The default is Off. If Off, unsigned char scalars will be used directly as texture. If On, scalars will be mapped through the lookup table to generate 4-component unsigned char scalars. This ivar does not affect other scalars like unsigned short, float, etc. These scalars are always mapped through lookup tables.

virtual void vtkTexture::SetMapColorScalarsThroughLookupTable ( int   )  [virtual]

Turn on/off the mapping of color scalars through the lookup table. The default is Off. If Off, unsigned char scalars will be used directly as texture. If On, scalars will be mapped through the lookup table to generate 4-component unsigned char scalars. This ivar does not affect other scalars like unsigned short, float, etc. These scalars are always mapped through lookup tables.

virtual void vtkTexture::MapColorScalarsThroughLookupTableOn (  )  [virtual]

Turn on/off the mapping of color scalars through the lookup table. The default is Off. If Off, unsigned char scalars will be used directly as texture. If On, scalars will be mapped through the lookup table to generate 4-component unsigned char scalars. This ivar does not affect other scalars like unsigned short, float, etc. These scalars are always mapped through lookup tables.

virtual void vtkTexture::MapColorScalarsThroughLookupTableOff (  )  [virtual]

Turn on/off the mapping of color scalars through the lookup table. The default is Off. If Off, unsigned char scalars will be used directly as texture. If On, scalars will be mapped through the lookup table to generate 4-component unsigned char scalars. This ivar does not affect other scalars like unsigned short, float, etc. These scalars are always mapped through lookup tables.

vtkImageData* vtkTexture::GetInput (  ) 

Get the input as a vtkImageData object. This method is for backwards compatibility.

Reimplemented from vtkImageAlgorithm.

void vtkTexture::SetLookupTable ( vtkScalarsToColors  ) 

Specify the lookup table to convert scalars if necessary

virtual vtkScalarsToColors* vtkTexture::GetLookupTable (  )  [virtual]

Specify the lookup table to convert scalars if necessary

virtual vtkUnsignedCharArray* vtkTexture::GetMappedScalars (  )  [virtual]

Get Mapped Scalars

unsigned char* vtkTexture::MapScalarsToColors ( vtkDataArray scalars  ) 

Map scalar values into color scalars.

void vtkTexture::SetTransform ( vtkTransform transform  ) 

Set a transform on the texture which allows one to scale, rotate and translate the texture.

virtual vtkTransform* vtkTexture::GetTransform (  )  [virtual]

Set a transform on the texture which allows one to scale, rotate and translate the texture.

virtual int vtkTexture::GetBlendingMode (  )  [virtual]

Used to specify how the texture will blend its RGB and Alpha values with other textures and the fragment the texture is rendered upon.

virtual void vtkTexture::SetBlendingMode ( int   )  [virtual]

Used to specify how the texture will blend its RGB and Alpha values with other textures and the fragment the texture is rendered upon.

virtual int vtkTexture::GetRestrictPowerOf2ImageSmaller (  )  [virtual]

When the texture is forced to be a power of 2, the default behavior is for the "new" image's dimensions to be greater than or equal to with respects to the original. Setting RestrictPowerOf2ImageSmaller to be 1 (or ON) with force the new image's dimensions to be less than or equal to with respects to the original.

virtual void vtkTexture::SetRestrictPowerOf2ImageSmaller ( int   )  [virtual]

When the texture is forced to be a power of 2, the default behavior is for the "new" image's dimensions to be greater than or equal to with respects to the original. Setting RestrictPowerOf2ImageSmaller to be 1 (or ON) with force the new image's dimensions to be less than or equal to with respects to the original.

virtual void vtkTexture::RestrictPowerOf2ImageSmallerOn (  )  [virtual]

When the texture is forced to be a power of 2, the default behavior is for the "new" image's dimensions to be greater than or equal to with respects to the original. Setting RestrictPowerOf2ImageSmaller to be 1 (or ON) with force the new image's dimensions to be less than or equal to with respects to the original.

virtual void vtkTexture::RestrictPowerOf2ImageSmallerOff (  )  [virtual]

When the texture is forced to be a power of 2, the default behavior is for the "new" image's dimensions to be greater than or equal to with respects to the original. Setting RestrictPowerOf2ImageSmaller to be 1 (or ON) with force the new image's dimensions to be less than or equal to with respects to the original.


Member Data Documentation

int vtkTexture::Repeat [protected]

Definition at line 197 of file vtkTexture.h.

int vtkTexture::EdgeClamp [protected]

Definition at line 198 of file vtkTexture.h.

int vtkTexture::Interpolate [protected]

Definition at line 199 of file vtkTexture.h.

int vtkTexture::Quality [protected]

Definition at line 200 of file vtkTexture.h.

Definition at line 201 of file vtkTexture.h.

Definition at line 202 of file vtkTexture.h.

Definition at line 203 of file vtkTexture.h.

Definition at line 204 of file vtkTexture.h.

int vtkTexture::BlendingMode [protected]

Definition at line 206 of file vtkTexture.h.

Definition at line 207 of file vtkTexture.h.

Definition at line 209 of file vtkTexture.h.


The documentation for this class was generated from the following file:

Generated on Wed Jun 3 19:39:31 2009 for VTK by  doxygen 1.5.6