//*******************************************************
//捕捉鼠标左键按下消息,获得两个起始控制点的坐标
//*******************************************************
void CDrawCurvesView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
oldPoint = point;
newPoint = point;
CurveCtrlPoints[count++] = point;
SetCapture();
isLButtonDown = true;
CRect rect;
GetClientRect(&rect);
ClientToScreen(&rect); //用用户区坐标重新计算屏幕坐标
ClipCursor(&rect); //限制光标在用户区内
//默认处理,调用基类消息处理函数
CView::OnLButtonDown(nFlags, point);
}
//******************************************
//按下键盘清除客户区的内容,为下次绘制作准备
//******************************************
void CDrawCurvesView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
count = 0;
Invalidate();
CView::OnKeyDown(nChar, nRepCnt, nFlags);
}
//******************
//矩阵乘法
//******************
void
MFC下实现图形学之Hermite、Bezier曲线的绘制
最新推荐文章于 2025-05-13 10:47:48 发布