本文整理汇总了C++中openni::VideoStream::isCroppingSupported方法的典型用法代码示例。如果您正苦于以下问题:C++ VideoStream::isCroppingSupported方法的具体用法?C++ VideoStream::isCroppingSupported怎么用?C++ VideoStream::isCroppingSupported使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类openni::VideoStream
的用法示例。
在下文中一共展示了VideoStream::isCroppingSupported方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: resetStreamCropping
void resetStreamCropping(openni::VideoStream& stream)
{
if (!stream.isValid())
{
displayMessage("Stream does not exist!");
return;
}
if (!stream.isCroppingSupported())
{
displayMessage("Stream does not support cropping!");
return;
}
openni::Status nRetVal = stream.resetCropping();
if (nRetVal != openni::STATUS_OK)
{
displayMessage("Failed to reset cropping: %s", xnGetStatusString(nRetVal));
return;
}
}
示例2: setStreamCropping
void setStreamCropping(openni::VideoStream& stream, int originX, int originY, int width, int height)
{
if (!stream.isValid())
{
displayMessage("Stream does not exist!");
return;
}
if (!stream.isCroppingSupported())
{
displayMessage("Stream does not support cropping!");
return;
}
openni::Status nRetVal = stream.setCropping(originX, originY, width, height);
if (nRetVal != openni::STATUS_OK)
{
displayMessage("Failed to set cropping: %s", xnGetStatusString(nRetVal));
return;
}
}
示例3: drawCropStream
void drawCropStream(openni::VideoStream& stream, IntRect location, IntRect selection, int dividedBy)
{
if (!stream.isCroppingSupported())
{
return;
}
openni::VideoMode Mode = stream.getVideoMode();
// check if entire selection is in location
if (selection.uLeft >= location.uLeft &&
selection.uRight <= location.uRight &&
selection.uBottom >= location.uBottom &&
selection.uTop <= location.uTop)
{
IntRect cropRect;
cropRect.uBottom = Mode.getResolutionY() * (selection.uBottom - location.uBottom) / (location.uTop - location.uBottom);
cropRect.uTop = Mode.getResolutionY() * (selection.uTop - location.uBottom) / (location.uTop - location.uBottom);
cropRect.uLeft = Mode.getResolutionX() * (selection.uLeft - location.uLeft) / (location.uRight - location.uLeft);
cropRect.uRight = Mode.getResolutionX() * (selection.uRight - location.uLeft) / (location.uRight - location.uLeft);
int originX, originY, width, height;
originX = cropRect.uLeft;
originY = cropRect.uBottom;
width = cropRect.uRight - cropRect.uLeft;
height = cropRect.uTop - cropRect.uBottom;
if ((originX % dividedBy) != 0)
originX -= (originX % dividedBy);
if ((width % dividedBy) != 0)
width += dividedBy - (width % dividedBy);
setStreamCropping(stream, originX, originY, width, height);
}
}