OpenNI 1.5.7
Alternative View Point Capability

Functions

XN_C_API XnBool XN_C_DECL xnIsViewPointSupported (XnNodeHandle hInstance, XnNodeHandle hOther)
 
XN_C_API XnStatus XN_C_DECL xnSetViewPoint (XnNodeHandle hInstance, XnNodeHandle hOther)
 
XN_C_API XnStatus XN_C_DECL xnResetViewPoint (XnNodeHandle hInstance)
 
XN_C_API XnBool XN_C_DECL xnIsViewPointAs (XnNodeHandle hInstance, XnNodeHandle hOther)
 
XN_C_API XnStatus XN_C_DECL xnRegisterToViewPointChange (XnNodeHandle hInstance, XnStateChangedHandler handler, void *pCookie, XnCallbackHandle *phCallback)
 
XN_C_API void XN_C_DECL xnUnregisterFromViewPointChange (XnNodeHandle hInstance, XnCallbackHandle hCallback)
 
XN_C_API XnStatus XN_C_DECL xnGetPixelCoordinatesInViewPoint (XnNodeHandle hInstance, XnNodeHandle hOther, XnUInt32 x, XnUInt32 y, XnUInt32 *pAltX, XnUInt32 *pAltY)
 

Detailed Description

The Alternative View Point capability (XN_CAPABILITY_ALTERNATIVE_VIEW_POINT) allows a Generator to transform its data to appear as if the sensor is placed in another location. For example, when more than one sensor is active (or one sensor that produces several outputs coming from close locations, yet not the same one), one sensor can change its data to appear as if coming from the location of the other sensor, so that both data buffers represent the same (for example depth and image maps, where the same coordinates in the map represent the same location is the scene).

Function Documentation

◆ xnGetPixelCoordinatesInViewPoint()

XN_C_API XnStatus XN_C_DECL xnGetPixelCoordinatesInViewPoint ( XnNodeHandle hInstance,
XnNodeHandle hOther,
XnUInt32 x,
XnUInt32 y,
XnUInt32 * pAltX,
XnUInt32 * pAltY )

Gets a single pixel coordinates in an alternative view point. This method uses current frame data.

Parameters
hInstance[in] A handle to the instance.
hOther[in] The view point to translate to.
x[in] X-coordinate of the pixel to be translated
y[in] Y-coordinate of the pixel to be translated
pAltX[out] X-coordinate of the pixel in the alternative view point
pAltY[out] Y-coordinate of the pixel in the alternative view point
Returns
XN_STATUS_INVALID_OPERATION Generator doesn't support this method.

◆ xnIsViewPointAs()

XN_C_API XnBool XN_C_DECL xnIsViewPointAs ( XnNodeHandle hInstance,
XnNodeHandle hOther )

Checks if current view point is as if coming from the other node view point.

Parameters
hInstance[in] A handle to the instance.
hOther[in] The view point to be checked.

◆ xnIsViewPointSupported()

XN_C_API XnBool XN_C_DECL xnIsViewPointSupported ( XnNodeHandle hInstance,
XnNodeHandle hOther )

Checks if this generator can change its output to look like it was taken from a different location, represented by another generator.

Parameters
hInstance[in] A handle to the instance.
hOther[in] The view point to be checked.
Returns
TRUE if view point is supported, FALSE otherwise.

◆ xnRegisterToViewPointChange()

XN_C_API XnStatus XN_C_DECL xnRegisterToViewPointChange ( XnNodeHandle hInstance,
XnStateChangedHandler handler,
void * pCookie,
XnCallbackHandle * phCallback )

Registers a callback function to view point changes.

Parameters
hInstance[in] A handle to the instance.
handler[in] A pointer to a function that will be called when view point changes.
pCookie[in] A user cookie that will be passed to the callback function.
phCallback[out] Optional. Will be filled with a handle to be passed to xnUnregisterFromViewPointChange().

◆ xnResetViewPoint()

XN_C_API XnStatus XN_C_DECL xnResetViewPoint ( XnNodeHandle hInstance)

Sets the view point of this generator to its normal one.

Parameters
hInstance[in] A handle to the instance.

◆ xnSetViewPoint()

XN_C_API XnStatus XN_C_DECL xnSetViewPoint ( XnNodeHandle hInstance,
XnNodeHandle hOther )

Sets the view point of this generator to look like as if placed at another generator location.

Parameters
hInstance[in] A handle to the instance.
hOther[in] The view point to be set.

◆ xnUnregisterFromViewPointChange()

XN_C_API void XN_C_DECL xnUnregisterFromViewPointChange ( XnNodeHandle hInstance,
XnCallbackHandle hCallback )

Unregisters a callback function which was registered using xnRegisterToViewPointChange().

Parameters
hInstance[in] A handle to the instance.
hCallback[in] The handle to the callback returned from xnRegisterToViewPointChange().