我想更新窗口(删除之前的绘图)并使用 x2,y2 的新值重新绘制。我从相机中得到 x2 和 y2,它们是手坐标,我想根据手坐标的新值绘制椭圆。我怎样才能做到这一点?
我尝试调用 Invalidate()、RedrawWindow() 和 UpdateWindow(),但它们似乎都不起作用。以下是我的一段代码。
int x2,y2 // Global Variables (used to store coordinates of the hand)
void GesturePipe()
{
x2=Hand.Coordinate.x;
y2=Hand.Coordinate.y;
// I get x2,y2 from a camera
}
void CLesson1View::OnDraw(CDC* pDC)
{
while(1)
{
GesturePipe();
CLesson1Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
COLORREF colorCircle= RGB(255,0,0);
pDC->Ellipse(0,0,(int) x2,(int) y2);
//I intend to draw the skeleton of the hands so i would draw five lines,which will get updated with each frame
Invalidate(TRUE);
UpdateWindow();
}
}