VC++mfc画坐图.docx

上传人:小飞机 文档编号:3168330 上传时间:2023-03-11 格式:DOCX 页数:7 大小:37.75KB
返回 下载 相关 举报
VC++mfc画坐图.docx_第1页
第1页 / 共7页
VC++mfc画坐图.docx_第2页
第2页 / 共7页
VC++mfc画坐图.docx_第3页
第3页 / 共7页
VC++mfc画坐图.docx_第4页
第4页 / 共7页
VC++mfc画坐图.docx_第5页
第5页 / 共7页
亲,该文档总共7页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《VC++mfc画坐图.docx》由会员分享,可在线阅读,更多相关《VC++mfc画坐图.docx(7页珍藏版)》请在三一办公上搜索。

1、VC+ mfc画坐图int width=1000;int height=300;int m_rowX=0;int i;/确定坐标图四周预留的空白大小const int mytop=10;const int mybottom=40;const int myleft=60;const int myright=10;const int x_distance=15;/确定X,Y轴每单位显示宽度float m_x_num=60,m_y_num=10,m_potY1=5,m_potY2=100;float intervalX=(width-myleft-myright)/(m_x_num);float i

2、ntervalY=(height-mybottom-mytop)/(m_y_num);/确定显示刻度个数float bottomY=0;float leftX=0;const int count_x=m_x_num/2;const int count_y=m_y_num; /确定每个显示刻度之间的宽度 float spaceX=(float)(width-myleft-myright)/count_x; float spaceY=(float)(height-mybottom-mytop)/count_y;float m_x_x=spaceX+7;/x轴pDC->MoveTo(int(my

3、left),int(height-(mybottom+(bottomY)*intervalY);pDC->LineTo(int(width-myright),int(height-(mybottom+(bottomY)*intervalY);/Y轴 从图形区域最底端到最顶端/电流坐标轴 兰m_rowX = int(myleft+(leftX)*intervalX);CPen pen1(PS_SOLID,1,RGB(0,200,0);CPen *pOldPen1=pDC->SelectObject(&pen1);pDC->MoveTo(m_rowX,int(height-mybott

4、om);pDC->LineTo(m_rowX,int(mytop);pDC->SelectObject(pOldPen1);/电流坐标轴 红CPen pen2(PS_SOLID,1,RGB(255,0,0);CPen *pOldPen2=pDC->SelectObject(&pen2);pDC->MoveTo(m_rowX-m_x_x,int(height-mybottom); pDC->LineTo(m_rowX-m_x_x,int(mytop);pDC->SelectObject(pOldPen2);/绘制刻度和刻度值CString str;/选择字体CFont f

5、ont;font.CreateFont(14,4,0,0,FW_REGULAR,FALSE,FALSE,0,ANSI_CHARSET,OUT_STROKE_PRECIS,CLIP_DEFAULT_PRECIS,PROOF_QUALITY,FIXED_PITCH | FF_MODERN,_T(Arial);CFont* def_font=pDC->SelectObject(&font);/X轴for(int i=0;i<=count_x;i+) pDC->MoveTo(int(myleft+spaceX*i),int(height-(mybottom+(bottomY)*interv

6、alY);pDC->LineTo(int(myleft+spaceX*i),int(height-(mybottom+(bottomY)*intervalY+5);int m_initx=0;for( i=0;i<=count_x;i+) str.Format(_T(%d),m_initx+i*2);/pDC->TextOut(int(myleft+spaceX*i-3), int(height-(mybottom+(bottomY)*intervalY-5),str); /Y轴兰CPen pen3(PS_SOLID,1,RGB(0,200,0);CPen *pOldPen3=pD

7、C->SelectObject(&pen3);for(i=0;i<=count_y;i+) str.Format(_T(%.1f),i*(m_potY1/count_y); /pDC->MoveTo(m_rowX,int(height-(mybottom+spaceY*i); pDC->LineTo(m_rowX+5,int(height-(mybottom+spaceY*i); pDC->TextOut(m_rowX-x_distance, int(height-(mybottom+spaceY*i+8),str); pDC->SelectObject(pOldPen

8、3);pDC->MoveTo(m_rowX,int(height-(mybottom+spaceY*5);pDC->LineTo(m_rowX+10,int(height-(mybottom+spaceY*5);pDC->MoveTo(m_rowX,int(height-(mybottom+spaceY*8.4);pDC->LineTo(m_rowX+10,int(height-(mybottom+spaceY*8.4);str.Format(_T(%.1f),4.2);pDC->TextOut(int(myleft+(leftX)*intervalX-x_distance

9、),int(height-(mybottom+spaceY*8.4+8),str); /Y轴红CPen pen5(PS_SOLID,1,RGB(255,0,0);CPen *pOldPen5=pDC->SelectObject(&pen5);for(i=0;i<=count_y;i+) str.Format(_T(%.f),i*(m_potY2/count_y); pDC->MoveTo(m_rowX-m_x_x,int(height-(mybottom+spaceY*i); pDC->LineTo(m_rowX+5-m_x_x,int(height-(mybottom+spa

10、ceY*i); pDC->TextOut(m_rowX-m_x_x-x_distance,int(height-(mybottom+spaceY*i+8),str);pDC->SelectObject(pOldPen5);/绘制网格CPen pen6(PS_DOT,1,RGB(200,240,240);CPen *pOldPen6=pDC->SelectObject(&pen6);for(i=1;i<=count_y;i+) pDC->MoveTo(m_rowX+10,int(height-mybottom-i*spaceY);pDC->LineTo(width,int

11、(height-mybottom-i*spaceY);for(i=1;i<count_x;i+)pDC->MoveTo(int(m_rowX+i*spaceX),int(height-mybottom);pDC->LineTo(int(m_rowX+i*spaceX),mytop);pDC->SelectObject(pOldPen6); /绘制虚线CPen pen4(PS_DASHDOT,1,RGB(0,200,0);CPen *pOldPen4=pDC->SelectObject(&pen4);pDC->MoveTo(m_rowX+10,int(height-(my

12、bottom+spaceY*5);pDC->LineTo(width,int(height-(mybottom+spaceY*5);pDC->MoveTo(m_rowX+10,int(height-(mybottom+spaceY*8.4);pDC->LineTo(int(width),int(height-(mybottom+spaceY*8.4);pDC->SelectObject(pOldPen4);/绘制X,Y轴的变量名CFont font1;font1.CreateFont(15,6,0,0,FW_REGULAR,FALSE,FALSE,0,ANSI_CHARSET,

13、OUT_STROKE_PRECIS,CLIP_DEFAULT_PRECIS,PROOF_QUALITY,FIXED_PITCH | FF_SWISS,_T(Arial);CFont* def_font1=pDC->SelectObject(&font1);pDC->TextOut(width/2,height-20,_T(时间(h);pDC->TextOut(m_rowX-m_x_x-8,height-22,_T(A);pDC->TextOut(m_rowX-8,height-22,_T(V);pDC->SelectObject(def_font1);加性噪声一般指热噪声、散弹噪声等,它们与信号的关系是相加,不管有没有信号,噪声都存在。而乘性噪声一般由信道不理想引起,它们与信号的关系是相乘,信号在它在,信号不在他也就不在。一般通信中把加性随机性看成是系统的背景噪声; 而乘性随机性看成系统的时变性或者非线性所造成的。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号