# opentl::modelprojection::WarpBack Class Reference

Inherits opentl::modelprojection::Warp.

List of all members.

## Public Member Functions
void | backWarpPoints (const std::vector< boost::shared_ptr< opentl::core::State > > &states, const ObjModelPtrVector &objModels, std::vector< math::Vector2 * > &screenPoints, std::vector< math::Vector4 * > &objPoints, std::vector< math::Vector4 * > &objNormals, std::vector< int > &outputTargetIndex, std::vector< int > &outputLinkIndex, int cameraIdx=0, int nPoints=-1)
| BACK-PROJECTION = get back 3D object coordinates, based on window coordinates and depth values.
opentl::cvprocess::GlFbo * | getFbo ()
| Return FBO handle.
opentl::modelprojection::GLScene & | getGLScene () const
void | initBackProjBuffers (int cameraIdx)
| Initialize frame buffer objects, textures, and shaders for back projection.
| WarpBack (std::vector< input::ImageSensor * > &sensors, opentl::modelprojection::GLScene &scene)
| Constructor, link the WarpBack to the respective object/sensor pair.
virtual | ~WarpBack ()
| Destructor.

## Constructor & Destructor Documentation

opentl::modelprojection::WarpBack::WarpBack | ( | std::vector< input::ImageSensor * > & | sensors,
|  | opentl::modelprojection::GLScene & | scene |
| ) |  |  |

Constructor, link the WarpBack to the respective object/sensor pair.

Parameters:

  | sensors | Vector of ImageSensor pointers.
  | scene | Pointer to GLScene instance.

virtual opentl::modelprojection::WarpBack::~WarpBack | ( |  | ) | `[virtual]`

Destructor.

## Member Function Documentation

void opentl::modelprojection::WarpBack::backWarpPoints | ( | const std::vector< boost::shared_ptr< opentl::core::State > > & | states,
|  | const ObjModelPtrVector & | objModels,
|  | std::vector< math::Vector2 * > & | screenPoints,
|  | std::vector< math::Vector4 * > & | objPoints,
|  | std::vector< math::Vector4 * > & | objNormals,
|  | std::vector< int > & | outputTargetIndex,
|  | std::vector< int > & | outputLinkIndex,
|  | int | cameraIdx = `0`,
|  | int | nPoints = `-1` |
| ) |  |  |

BACK-PROJECTION = get back 3D object coordinates, based on window coordinates and depth values.

Parameters:

  | states | Input states
  | objModels | Input object models for each state
  | screenPoints | Input vector of 2D screen coordinates
  | objPoints | Output vector of 3D object coordinates
  | objNormals | Output vector of 3D object coordinates for the object normals
  | outputTargetIndex | Input = expected target index for each point (-1 if "no expectations") Output = vector of found target indices, for each point (-1, if no target has been found there, or if the index differs from the expectation)
  | outputLinkIndex | Output vector of linkId for each point (-1 if no object has been found for this pixel)
  | cameraIdx | Input camera index
  | nPoints | Actual number of processed points (-1 = all of them) Pre-allocated: GLubyte *buffer = full color buffer (unsigned char), obtained from glReadPixels Pre-allocated: GLfloat *depthbuf = full depth buffer (float), obtained from glReadPixels Pre-allocated: std::vector<double *> modelViewMatrices = modelview matrices (for each link)

opentl::cvprocess::GlFbo* opentl::modelprojection::WarpBack::getFbo | ( |  | ) | `[inline]`

Return FBO handle.

opentl::modelprojection::GLScene& opentl::modelprojection::WarpBack::getGLScene | ( |  | ) | const`[inline]`

void opentl::modelprojection::WarpBack::initBackProjBuffers | ( | int | cameraIdx | ) |

Initialize frame buffer objects, textures, and shaders for back projection.