Data extraction algorithms for buffers More...
#include <Inventor/algorithms/SoDataExtract.h>
Public Member Functions | |
SoDataExtract () | |
virtual int | getXSliceFromTile (SoBufferObject *inputTile, int dimx, int dimy, int dimz, int datumSize, int slice, SoBufferObject *outputSlice) |
virtual int | getYSliceFromTile (SoBufferObject *inputTile, int dimx, int dimy, int dimz, int datumSize, int slice, SoBufferObject *outputSlice) |
virtual int | getZSliceFromTile (SoBufferObject *inputTile, int dimx, int dimy, int dimz, int datumSize, int slice, SoBufferObject *outputSlice) |
virtual int | copyTile (SoBufferObject *inputTile, int tileDimx, int tileDimy, int tileDimz, int originX, int originY, int originZ, int datumSize, int bufDimX, int bufDimY, int bufDimZ, int vMinX, int vMinY, int vMinZ, int vMaxX, int vMaxY, int vMaxZ, SoBufferObject *outputBuffer) |
virtual int | copyPlane (SoBufferObject *inputTile, int tileDimX, int tileDimY, int tileDimZ, int originX, int originY, int originZ, int datumSize, int bufDimX, int qminX, int qminY, int qminZ, int qmaxX, int qmaxY, int qmaxZ, float normI, float normJ, float normK, float distance, int xAxis, int yAxis, int zAxis, SoBufferObject *outputBuffer) |
The Data extract module provides basic algorithms for extracting a specific subset of the data from a buffer. For example, extracting an axis aligned slice from a buffer that contains an LDM volume data tile.
Examples:
SoAlgorithms, SoArithmetic, SoConversion, SoConvolution, SoSeismic
SoDataExtract::SoDataExtract | ( | ) |
Constructor.
virtual int SoDataExtract::copyPlane | ( | SoBufferObject * | inputTile, | |
int | tileDimX, | |||
int | tileDimY, | |||
int | tileDimZ, | |||
int | originX, | |||
int | originY, | |||
int | originZ, | |||
int | datumSize, | |||
int | bufDimX, | |||
int | qminX, | |||
int | qminY, | |||
int | qminZ, | |||
int | qmaxX, | |||
int | qmaxY, | |||
int | qmaxZ, | |||
float | normI, | |||
float | normJ, | |||
float | normK, | |||
float | distance, | |||
int | xAxis, | |||
int | yAxis, | |||
int | zAxis, | |||
SoBufferObject * | outputBuffer | |||
) | [virtual] |
Copy a plane.
Reimplemented in SoCudaDataExtract, and SoOpenCLDataExtract.
virtual int SoDataExtract::copyTile | ( | SoBufferObject * | inputTile, | |
int | tileDimx, | |||
int | tileDimy, | |||
int | tileDimz, | |||
int | originX, | |||
int | originY, | |||
int | originZ, | |||
int | datumSize, | |||
int | bufDimX, | |||
int | bufDimY, | |||
int | bufDimZ, | |||
int | vMinX, | |||
int | vMinY, | |||
int | vMinZ, | |||
int | vMaxX, | |||
int | vMaxY, | |||
int | vMaxZ, | |||
SoBufferObject * | outputBuffer | |||
) | [virtual] |
Copy a tile.
Reimplemented in SoCudaDataExtract, and SoOpenCLDataExtract.
virtual int SoDataExtract::getXSliceFromTile | ( | SoBufferObject * | inputTile, | |
int | dimx, | |||
int | dimy, | |||
int | dimz, | |||
int | datumSize, | |||
int | slice, | |||
SoBufferObject * | outputSlice | |||
) | [virtual] |
Extract an X axis slice
Given a buffer containing an LDM volume data tile, extract the Nth slice of data along the X axis, where slices are numbered 0 to dimx-1.
Reimplemented in SoCudaDataExtract, and SoOpenCLDataExtract.
virtual int SoDataExtract::getYSliceFromTile | ( | SoBufferObject * | inputTile, | |
int | dimx, | |||
int | dimy, | |||
int | dimz, | |||
int | datumSize, | |||
int | slice, | |||
SoBufferObject * | outputSlice | |||
) | [virtual] |
Extract an X axis slice
Given a buffer containing an LDM volume data tile, extract the Nth slice of data along the X axis, where slices are numbered 0 to dimx-1.
Reimplemented in SoCudaDataExtract, and SoOpenCLDataExtract.
virtual int SoDataExtract::getZSliceFromTile | ( | SoBufferObject * | inputTile, | |
int | dimx, | |||
int | dimy, | |||
int | dimz, | |||
int | datumSize, | |||
int | slice, | |||
SoBufferObject * | outputSlice | |||
) | [virtual] |
Extract an X axis slice
Given a buffer containing an LDM volume data tile, extract the Nth slice of data along the X axis, where slices are numbered 0 to dimx-1.
Reimplemented in SoCudaDataExtract, and SoOpenCLDataExtract.