对话框绘制坐标及波形

上传人:wt****50 文档编号:49536546 上传时间:2018-07-30 格式:PPT 页数:9 大小:188KB
返回 下载 相关 举报
对话框绘制坐标及波形_第1页
第1页 / 共9页
对话框绘制坐标及波形_第2页
第2页 / 共9页
对话框绘制坐标及波形_第3页
第3页 / 共9页
对话框绘制坐标及波形_第4页
第4页 / 共9页
对话框绘制坐标及波形_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《对话框绘制坐标及波形》由会员分享,可在线阅读,更多相关《对话框绘制坐标及波形(9页珍藏版)》请在金锄头文库上搜索。

1、要求用VC.NET编写本章三角波信号卷积 的例程,要求采用面向对象的项目方 式,且用对话框输出原始和结果波 形,以及运行时间,以毫秒计。Step one 视图类构造函数中计算卷积,得到每一个 波形的函数值,以及运行时间,并弹出对 话框,显示运行时间; 其中计算机主频的获取是需要注意的地方 int Mhz; ippGetCpuFreqMhz( /获取主频 Ipp64f tim=(endd-start)/Mhz/1000; /计算时间 CString ti; ti.Format(_T(“运行时间:%fms“),tim); /将时间转换成字符串 AfxMessageBox(ti); /提示框显示运行

2、时间Step two 新建对话框,添加相应类,用来显示波形 ,其中构造函数参数有:需显示离散函数 的点数、函数值,直角坐标系中X坐标最大 值、Y坐标最大值; Cmydialog:Cmydialog(int n,Ipp16s * p,int xma,int yma,CWnd* pParent /*=NULL*/) : CDialogEx(Cmydialog:IDD, pParent) , len(n),pSrc(p) , xm(xma) , ym(yma) Step three 为对话框添加OnPain消息函数,并在 其中添加画坐标和波形代码; void Cmydialog:OnPaint()

3、int xpos=40,ypos=30; float recx=64*6,recy=512/3,xb=recx/xm,yb=ym/recy; CPaintDC dc(this); / device context for painting CBrush BrushNew(RGB(200,200,200); CPen PenOld,PenNew; PenOld.CreatePen(PS_DOT,1,RGB(0,0,0); / 画坐标矩形 dc.SelectObject( dc.Rectangle(xpos,ypos,xpos+recx,ypos+recy);/ 画坐标网格 dc.SelectOb

4、ject( for(int i=1;i4;i+) dc.MoveTo(xpos,ypos+recy-recy/4*i); dc.LineTo(xpos+recx,ypos+recy-recy/4*i); dc.MoveTo(xpos+recx/4*i,ypos); dc.LineTo(xpos+recx/4*i,ypos+recy); CString x,y; / 标注坐标轴上的值 for(int i=0;i5;i+) x.Format(_T(“%d“),xm/4*i); y.Format(_T(“%d“),ym/4*i); dc.TextOutW(xpos+recx/4*i-5,ypos+r

5、ecy+2,x); dc.TextOutW(xpos-25,ypos+recy-6-recy/4*i,y); / 画函数曲线 if(PenNew.CreatePen(PS_SOLID,1,RGB(0,0,255) dc.SelectObject( dc.MoveTo(xpos,-*pSrc/yb+ypos+recy); for(int i=1;ilen;i+) dc.LineTo(xpos+i*xb,-*(pSrc+i)/yb+ypos+recy); PenNew.DeleteObject(); / TODO: Add your message handler code here / Do n

6、ot call CDialogEx:OnPaint() for painting messages Step four 视图类中添加“显示波形”主菜单,下拉子菜 单中添加“波形1”、“波形2”、“卷积”三个子 菜单。Step five 为上面的三个菜单添加命令函数,分别新建对话 框,选用对应的构造函数参数。 void CippmfcdemoView:OnWav1() Cmydialog dlg1(len1,pSrc1,len1,512); dlg1.DoModal(); / TODO: Add your command handler code here void CippmfcdemoView:OnJuanji() Cmydialog dlg3(len1+len2-1,pDst,len1+len2,17404); dlg3.DoModal(); / TODO: Add your command handler code here 谢谢!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 文化创意

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号