void CChildView::MapToScreenRect(CRect *rect) { CPoint pt; pt = MapToScreen(CPoint(rect->left, rect->top)); rect->left = pt.x; rect->top = pt.y; pt = MapToScreen(CPoint(rect->right, rect->bottom)); rect->right = pt.x; rect->bottom = pt.y; }
void TNuiTracker::handleNewFrame() { if (m_target == NUI_SKELETON_POSITION_COUNT) return; NUI_SKELETON_FRAME frame; m_skeletonStream->readFrame(frame); //@todo: Track more players for (int i = 0; i < NUI_SKELETON_COUNT; i++) { if (frame.SkeletonData[i].dwTrackingID != 0) { const Vector4 &pos3d = frame.SkeletonData[i].SkeletonPositions[m_target]; m_screenPos = MapToScreen(pos3d); emit screenPosChanged(m_screenPos); m_realPos.setX(pos3d.x); m_realPos.setY(pos3d.y); m_realPos.setZ(pos3d.z); emit realPosChanged(m_realPos); break; } } }