void DrawStatusLabel(nite::UserTracker* pUserTracker, const nite::UserData& user) { int color = user.getId() % colorCount; glColor3f(1.0f - Colors[color][0], 1.0f - Colors[color][1], 1.0f - Colors[color][2]); float x,y; pUserTracker->convertJointCoordinatesToDepth(user.getCenterOfMass().x, user.getCenterOfMass().y, user.getCenterOfMass().z, &x, &y); x *= GL_WIN_SIZE_X/(float)g_nXRes; y *= GL_WIN_SIZE_Y/(float)g_nYRes; char *msg = g_userStatusLabels[user.getId()]; glRasterPos2i(x-((strlen(msg)/2)*8),y); glPrintString(GLUT_BITMAP_HELVETICA_18, msg); }
void DrawCenterOfMass(nite::UserTracker* pUserTracker, const nite::UserData& user) { glColor3f(1.0f, 1.0f, 1.0f); float coordinates[3] = {0}; pUserTracker->convertJointCoordinatesToDepth(user.getCenterOfMass().x, user.getCenterOfMass().y, user.getCenterOfMass().z, &coordinates[0], &coordinates[1]); coordinates[0] *= GL_WIN_SIZE_X/(float)g_nXRes; coordinates[1] *= GL_WIN_SIZE_Y/(float)g_nYRes; glPointSize(8); glVertexPointer(3, GL_FLOAT, 0, coordinates); glDrawArrays(GL_POINTS, 0, 1); }