NAME¶
vpRamp - initialize an array with a piecewise-linear ramp
SYNOPSIS¶
#include <volpack.h>
vpResult
vpRamp(array,
stride, num_points, ramp_x, ramp_y )
-
- float *array;
-
- int stride;
-
- int num_points;
-
- int *ramp_x;
-
- float *ramp_y;
ARGUMENTS¶
- array
- Output array.
- stride
- Stride from one array element to the next, in bytes.
- num_points
- Number of entries in the input arrays (ramp_x and
ramp_y).
- ramp_x
- Input array containing indices into array.
- ramp_y
- Input array containing values to store into
array.
DESCRIPTION¶
vpRamp is a utility routine for initializing linear arrays of
floating-point numbers with piecewise-linear ramps. A ramp is defined by a set
of (x, y) pairs. The X coordinates are integers that index entries in the
array argument, and the Y coordinates are floating-point values to
store into the array. Linearly-interpolated Y values are stored in array
elements with indexes in between two of the X values.
The values in
ramp_x most be strictly increasing. The
stride
argument may be used to skip array elements or to initialize arrays with a
non-standard stride. If the output array is a simple linear array of type
float then the stride should be sizeof(float).
This function is useful for creating lookup tables used for opacity transfer
functions (see vpSetClassifierTable(3)) and shading functions (see
vpSetLookupShader(3)).
ERRORS¶
The normal return value is VP_OK. The following error return value is possible:
- VPERROR_BAD_VALUE
- The number of points is less than one or the X values are
not strictly increasing.
SEE ALSO¶
VolPack(3)