工控编程吧
标题:
106上位机VC MFC设备上下文本CDC绘制贝尔曲线
[打印本页]
作者:
qq263946146
时间:
2015-12-20 22:14
标题:
106上位机VC MFC设备上下文本CDC绘制贝尔曲线
(, 下载次数: 1)
上传
点击文件名下载附件
106上位机VC MFC设备上下文本CDC绘制贝尔曲线
功能展示
贝尔曲线长成怎样?我们当前例程绘制出垂直与水平方向的贝尔曲线,效果如图;
要点提示
贝尔曲线的绘制可以通过窗口设备上下文类CDC内部的函数PolyBezier()进行绘制,函数原型BOOL PolyBezier( const POINT* lpPoints, int nCount );第一个参数lpPoints指定曲线的所有顶头的坐标,第二个参数指定绘制曲线的顶头个数
功能实现
1.新建基于对话框的应用程序
2.在主对话框的绘制函数OnPaint() 中进行绘制曲线
CPaintDC dc(this);
if(m_bDraw)
{
CPen newpen;
newpen.CreatePen(PS_SOLID,1,RGB(0,255,0));
dc.SelectObject(&newpen);
//垂直
POINT ptv[4];
ptv[0].x=300;
ptv[0].y=20;
ptv[1].x=250;
ptv[1].y=70;
ptv[2].x=350;
ptv[2].y=120;
ptv[3].x=300;
ptv[3].y=170;
dc.PolyBezier(ptv,4);
}
复制代码
if(m_bDraw1)
{
CPen newpen;
newpen.CreatePen(PS_SOLID,1,RGB(255,0,0));
dc.SelectObject(&newpen);
//水平
POINT pth[4];
pth[0].x=20;
pth[0].y=120;
pth[1].x=70;
pth[1].y=70;
pth[2].x=120;
pth[2].y=170;
pth[3].x=170;
pth[3].y=120;
dc.PolyBezier(pth,4);
}
<div style="text-align: center;"><span style="font-size: large; line-height: 1.5;">im_bDraw, m_bDraw1标识是否绘制垂直和水平的贝尔曲线;</span></div><font size="4"><div style="text-align: center;"><span style="line-height: 1.5;"><b>我们来演示下功能实现的整个过程</b></span></div></font>
复制代码
[iqiyi]http://player.video.qiyi.com/979dbbb3d1a4f285d52e1fe027a25712/0/0/w_19rt79wjst.swf-albumId=5063280209-tvId=5063280209-isPurchase=0-cnId=12[/iqiyi]
(, 下载次数: 0)
上传
点击文件名下载附件
[note]1[/note]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4