Main Page   Class Hierarchy   Alphabetical List   Compound List   Compound Members   Related Pages  

vtkPiecewiseFunction Class Reference

Defines a 1D piecewise function. More...

#include <vtkPiecewiseFunction.h>

Inheritance diagram for vtkPiecewiseFunction:

Inheritance graph
[legend]
Collaboration diagram for vtkPiecewiseFunction:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
vtkDataObjectMakeObject ()
void Initialize ()
void DeepCopy (vtkDataObject *f)
void ShallowCopy (vtkDataObject *f)
int GetDataObjectType ()
int GetSize ()
void AddPoint (float x, float val)
void RemovePoint (float x)
void RemoveAllPoints ()
void AddSegment (float x1, float val1, float x2, float val2)
float GetValue (float x)
float * GetDataPointer ()
float * GetRange ()
void GetTable (float x1, float x2, int size, float *table, int stride=1)
void BuildFunctionFromTable (float x1, float x2, int size, float *table, int stride=1)
virtual void SetClamping (int)
virtual int GetClamping ()
virtual void ClampingOn ()
virtual void ClampingOff ()
const char * GetType ()
unsigned long GetMTime ()
float GetFirstNonZeroValue ()

Static Public Methods

vtkPiecewiseFunction * New ()
int IsTypeOf (const char *type)
vtkPiecewiseFunction * SafeDownCast (vtkObject *o)

Protected Methods

 vtkPiecewiseFunction ()
 ~vtkPiecewiseFunction ()
 vtkPiecewiseFunction (const vtkPiecewiseFunction &)
void operator= (const vtkPiecewiseFunction &)
void IncreaseArraySize ()
int InsertPoint (float x, float val)
void MovePoints (int index, int down)

Protected Attributes

int ArraySize
int Clamping
float * Function
int FunctionSize
float FunctionRange [2]

Detailed Description

Defines a 1D piecewise function.

Date:
2000/12/10 20:08:46
Revision:
1.24

Defines a piecewise linear function mapping. Used for transfer functions in volume rendering.

Examples:
vtkPiecewiseFunction (examples)


Member Function Documentation

void vtkPiecewiseFunction::AddPoint float    x,
float    val
 

Add/Remove points to/from the function. If a duplicate point is added then the function value is changed at that location.

void vtkPiecewiseFunction::AddSegment float    x1,
float    val1,
float    x2,
float    val2
 

Add a line segment to the function. All points defined between the two points specified are removed from the function.

void vtkPiecewiseFunction::BuildFunctionFromTable float    x1,
float    x2,
int    size,
float *    table,
int    stride = 1
 

Constructs a piecewise function from a table. Function range is is set to [x1, x2], function size is set to size, and function points are regularly spaced between x1 and x2. Parameter "stride" is is step through the input table. It is used by vtkColorTransferFunction to construct 3 piecewise functions from an rgb table.

virtual const char* vtkPiecewiseFunction::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataObject.

int vtkPiecewiseFunction::GetDataObjectType   [inline, virtual]
 

Return what type of dataset this is.

Reimplemented from vtkDataObject.

float* vtkPiecewiseFunction::GetDataPointer   [inline]
 

Returns a pointer to the data stored in the table.

float vtkPiecewiseFunction::GetFirstNonZeroValue  
 

Returns the first point location which precedes a non-zero segment of the function. Note that the value at this point may be zero.

unsigned long vtkPiecewiseFunction::GetMTime   [virtual]
 

Get the mtime of this object - override to consider the mtime of the source as well.

Reimplemented from vtkDataObject.

float* vtkPiecewiseFunction::GetRange  
 

Returns the min and max point locations of the function.

int vtkPiecewiseFunction::GetSize  
 

Get the number of points used to specify the function

void vtkPiecewiseFunction::GetTable float    x1,
float    x2,
int    size,
float *    table,
int    stride = 1
 

Fills in an array of function values evaluated at regular intervals. Parameter "stride" is used to step through the output "table". It is used by vtkColorTransferFunction to fill in an rgb table using three separate piecewise functions and three separate calls to GetTable().

const char* vtkPiecewiseFunction::GetType  
 

Return the type of function: Function Types: 0 : Constant (No change in slope between end points) 1 : NonDecreasing (Always increasing or zero slope) 2 : NonIncreasing (Always decreasing or zero slope) 3 : Varied (Contains both decreasing and increasing slopes)

float vtkPiecewiseFunction::GetValue float    x
 

Returns the value of the function at the specified location using the specified interpolation. Returns zero if the specified location is outside the min and max points of the function.

virtual int vtkPiecewiseFunction::IsA const char *    type [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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataObject.

int vtkPiecewiseFunction::IsTypeOf const char *    type [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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataObject.

vtkDataObject* vtkPiecewiseFunction::MakeObject   [virtual]
 

Create concrete instance of this data object.

Reimplemented from vtkDataObject.

vtkPiecewiseFunction* vtkPiecewiseFunction::New   [static]
 

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

Reimplemented from vtkDataObject.

void vtkPiecewiseFunction::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 vtkDataObject.

void vtkPiecewiseFunction::RemoveAllPoints  
 

Removes all points from the function.

vtkPiecewiseFunction* vtkPiecewiseFunction::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataObject.

virtual void vtkPiecewiseFunction::SetClamping int    [virtual]
 

When zero range clamping is Off, GetValue() returns 0.0 when a value is requested outside of the points specified. When zero range clamping is On, GetValue() returns the value at the value at the lowest point for a request below all points specified and returns the value at the highest point for a request above all points specified. On is the default.

void vtkPiecewiseFunction::ShallowCopy vtkDataObject   f [virtual]
 

Shallow and Deep copy. These copy the data, but not any of the pipeline connections.

Reimplemented from vtkDataObject.


The documentation for this class was generated from the following file:
Generated on Tue Mar 19 13:30:53 2002 for VTK by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002