matlab课程设计.docx

上传人:b****4 文档编号:3696623 上传时间:2022-11-24 格式:DOCX 页数:15 大小:632.31KB
下载 相关 举报
matlab课程设计.docx_第1页
第1页 / 共15页
matlab课程设计.docx_第2页
第2页 / 共15页
matlab课程设计.docx_第3页
第3页 / 共15页
matlab课程设计.docx_第4页
第4页 / 共15页
matlab课程设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

matlab课程设计.docx

《matlab课程设计.docx》由会员分享,可在线阅读,更多相关《matlab课程设计.docx(15页珍藏版)》请在冰豆网上搜索。

matlab课程设计.docx

matlab课程设计

一设计题目1

二维图像演示系统

(一)1

二总体分析1

题目分析1

五个菜单2

功能2

结构设计2

三详细设计2

菜单2

模块一3

模块二3

模块三5

模块四5

模块五6

模块六6

模块七6

模块八7

四程序运行效果7

程序效果图7

操作过程12

五总结12

一设计题目

二维图像演示系统

(一)

二总体分析

题目分析:

建立一个图形用户界面(GUI)演示常见的二维函数图形,其中包含“绘制二维图像plot”、“option”“线形”“线宽”五个菜单,绘制的二维图形曲线包括:

sin函数、x=tsin(3t),y=tsin2t、y=2e-0.5xcos(πx)、四页玫瑰曲线x=r*cos(i)y=r*sin(i),r为一个变化的系数r=cos(2*i)、阿基米德螺旋曲线,参数方程x=i*sin(i)y=i*cos(i)、心形曲线,参数方程x=(a-b)*cos(i)+b*cos((a/b-1)*i)y=(a-b)*sin(i)-b*sin((a/b-1)*i)。

“option”菜单主要包括:

网格开关,图例开关,坐标边框开关,曲线线性菜单,曲线颜色菜单,通过各个菜单控制实现对所绘的图形的调整。

五个菜单:

一plot菜单,用来绘制二维图形曲线

二option菜单,用来控制给绘制图形加网格线和坐标边框。

三线形菜单,控制线形。

四线宽菜单,控制线的粗细

五quit菜单,离开图形用户界面。

功能:

首先建立图形用户界面,图形用户界面建立后,有五个菜单项,通过plot菜单绘制题目所要求的图形,再对图形进行调节,通过option菜单,线形菜单,线宽菜单,分别实现对所绘图形的加或去掉网格,调节图形曲线的线条颜色,图形界面颜色,线条形状,线条宽度,最后通过quit菜单,离开图形用户界面。

结构设计:

 

三详细设计

菜单:

菜单一plot菜单,用来绘制二维图形曲线,其中包含sin函数、x=tsin(3t),y=tsin2t、y=2e-0.5xcos(πx)、四页玫瑰曲线x=r*cos(i)y=r*sin(i),r为一个变化的系数r=cos(2*i)、阿基米德螺旋曲线,参数方程x=i*sin(i)y=i*cos(i)、心形曲线,参数方程x=(a-b)*cos(i)+b*cos((a/b-1)*i)y=(a-b)*sin(i)-b*sin((a/b-1)*i)。

菜单二option菜单,包括“gridon”加网格线,“gridoff”撤销网格线,“boxon”加边框线,“boxoff”撤销边框线

菜单三线形菜单,控制线条是虚线还是实线。

菜单四线宽菜单,控制线条的粗细。

菜单五quit菜单,离开图形用户界面。

模块一:

设置屏幕的分辨率,建立没有菜单项的“二维图形演示系统”用户界面。

>>screen=get(0,'ScreenSize');

W=screen(3);

H=screen(4);

figure('Color',[1,1,1],'Position',[0.2*H,0.2*H,0.6*W,0.6*H],'Name','二维图形演示系统

(一)','NumberTitle','off','MenuBar','none');%建立用户界面

模块二:

建立plot菜单项,绘制题目所要求的二维图形曲线并设置菜单项的可选性。

绘制的曲线有sin函数、x=tsin(3t),y=tsin2t、y=2e-0.5xcos(πx)、四页玫瑰曲线x=r*cos(i)y=r*sin(i),r为一个变化的系数r=cos(2*i)、阿基米德螺旋曲线,参数方程x=i*sin(i)y=i*cos(i)、心形曲线,参数方程x=(a-b)*cos(i)+b*cos((a/b-1)*i)y=(a-b)*sin(i)-b*sin((a/b-1)*i)。

%定义Plot菜单项

hplot=uimenu(gcf,'Label','&Plot');%建立菜单项

uimenu(hplot,'Label','sine函数','Call',['t=-pi:

pi/200:

pi;','plot(t,sin(t));','title(''sin函数曲线'');',...%绘制sine函数图形

'set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');',...

'set(hbon,''Enable'',''on'');','set(hboff,''Enable'',''on'');',...%设置菜单项可选性

'set(hlsDashed,''Enable'',''on'');',...%设置虚线菜单的可选性

'set(hlsReal,''Enable'',''on'');',...%设置实线菜单的可选性

'set(hlwWided,''Enable'',''on'');','set(hlwThin,''Enable'',''on'');',...%设置线宽的可选性

'set(hRed,''Enable'',''on'');',...

'set(hp,''Enable'',''on'');',...

'set(hg,''Enable'',''on'');',...

'set(hBlue,''Enable'',''on'');',...

'set(hYellow,''Enable'',''on'');',...

'set(hWhite,''Enable'',''on'');']);%设置颜色菜单可选性

uimenu(hplot,'Label','翅膀曲线','Call',['t=-pi:

pi/100:

pi;','x=t.*sin(3.*t);y=t.*(sin(t)).^2;','plot(x,y);',...

'set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');',...

'set(hbon,''Enable'',''on'');','set(hboff,''Enable'',''on'');',...%设置菜单项可选性

'set(hlsDashed,''Enable'',''on'');',...%设置虚线菜单的可选性

'set(hlsReal,''Enable'',''on'');',...%设置实线菜单的可选性

'set(hlwWided,''Enable'',''on'');',...'set(hlwThin,''Enable'',''on'');',...%设置线宽的可选性

'set(hRed,''Enable'',''on'');',...

'set(hp,''Enable'',''on'');',...

'set(hg,''Enable'',''on'');',...

'set(hBlue,''Enable'',''on'');',...

'set(hYellow,''Enable'',''on'');',...

'set(hWhite,''Enable'',''on'');']);%设置颜色菜单可选性

uimenu(hplot,'Label','衰减函数','Call',['x=-pi:

pi/200:

pi;','y=2*exp(-0.5.*x).*cos(pi.*x);','plot(x,y);','title(''y=2e{-0.5x}*cos(\pi*x)函数曲线'');',...

'set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');',...

'set(hbon,''Enable'',''on'');','set(hboff,''Enable'',''on'');',...%设置菜单项可选性

'set(hlsDashed,''Enable'',''on'');',...%设置虚线菜单的可选性

'set(hlsReal,''Enable'',''on'');',...%设置实线菜单的可选性

'set(hlwWided,''Enable'',''on'');',...'set(hlwThin,''Enable'',''on'');',...%设置线宽的可选性

'set(hRed,''Enable'',''on'');',...

'set(hp,''Enable'',''on'');',...

'set(hg,''Enable'',''on'');',...

'set(hBlue,''Enable'',''on'');',...

'set(hYellow,''Enable'',''on'');',...

'set(hWhite,''Enable'',''on'');']);%设置颜色菜单可选性

uimenu(hplot,'Label','四叶玫瑰曲线','Call',['z=-pi:

pi/100:

pi;','r=cos(2.*z);x=r.*cos(z);y=r.*sin(z);','plot(x,y);','title(''四叶玫瑰曲线'');',...

'set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');',...

'set(hbon,''Enable'',''on'');','set(hboff,''Enable'',''on'');',...%设置菜单项可选性

'set(hlsDashed,''Enable'',''on'');',...%设置虚线菜单的可选性

'set(hlsReal,''Enable'',''on'');',...%设置实线菜单的可选性

'set(hlwWided,''Enable'',''on'');',...'set(hlwThin,''Enable'',''on'');',...%设置线宽的可选性

'set(hRed,''Enable'',''on'');',...

'set(hp,''Enable'',''on'');',...

'set(hg,''Enable'',''on'');',...

'set(hBlue,''Enable'',''on'');',...

'set(hYellow,''Enable'',''on'');',...

'set(hWhite,''Enable'',''on'');']);%设置颜色菜单可选性

uimenu(hplot,'Label','阿基米德螺旋曲线','Call',['t=1:

0.1:

33;','x=t.*sin(t);y=t.*cos(t);','plot(x,y);','title(''阿基米德螺旋曲线'');',...

'set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');',...

'set(hbon,''Enable'',''on'');','set(hboff,''Enable'',''on'');',...%设置菜单项可选性

'set(hlsDashed,''Enable'',''on'');',...%设置虚线菜单的可选性

'set(hlsReal,''Enable'',''on'');',...%设置实线菜单的可选性

'set(hlwWided,''Enable'',''on'');',...

'set(hlwThin,''Enable'',''on'');',...

'set(hRed,''Enable'',''on'');',...

'set(hp,''Enable'',''on'');',...

'set(hg,''Enable'',''on'');',...

'set(hBlue,''Enable'',''on'');',...

'set(hYellow,''Enable'',''on'');',...

'set(hWhite,''Enable'',''on'');']);%设置颜色菜单可选性

uimenu(hplot,'Label','心形曲线','Call',['t=-pi:

pi/100:

pi;a=0.01;b=50;','x=(a-b).*cos(t)+b.*cos((a/b-1).*t);y=(a-b).*sin(t)-b.*sin((a/b-1).*t);',...

'plot(x,y);','title(''心形曲线'');',...

'set(hgon,''Enable'',''on'');','set(hgoff,''Enable'',''on'');',...

'set(hbon,''Enable'',''on'');','set(hboff,''Enable'',''on'');',...%设置菜单项可选性

'set(hlsDashed,''Enable'',''on'');',...%设置虚线菜单的可选性

'set(hlsReal,''Enable'',''on'');',...%设置实线菜单的可选性

'set(hlwWided,''Enable'',''on'');',...

'set(hlwThin,''Enable'',''on'');',...

'set(hRed,''Enable'',''on'');',...

'set(hp,''Enable'',''on'');',...

'set(hg,''Enable'',''on'');',...

'set(hBlue,''Enable'',''on'');',...

'set(hYellow,''Enable'',''on'');',...

'set(hWhite,''Enable'',''on'');']);%设置颜色菜单可选性

模块三:

定义option菜单项,实现对绘制图形曲线的加或撤销网格线和边框线,“gridon”加网格线,“gridoff”撤销网格线,“boxon”加边框线,“boxoff”撤销边框线。

%定义Option菜单项

hoption=uimenu(gcf,'Label','&option');

hgon=uimenu(hoption,'Label','&Gridon','Call','gridon','Enable','off');

hgoff=uimenu(hoption,'Label','&Gridoff','Call','gridoff','Enable','off');

hbon=uimenu(hoption,'Label','&Boxon','separator','on','Call','boxon','Enable','off');

hboff=uimenu(hoption,'Label','&Boxoff','Call','boxoff','Enable','off');

模块四:

定义用户界面背景颜色,可实现的背景颜色有,“蓝宝石”“紫色”“绿色”“红色”“蓝色”“黄色”“白色”。

%定义背景颜色选项

hwincor=uimenu(hoption,'Label','&WindowColor','Separator','on');

uimenu(hwincor,'Label','蓝宝石','Accelerator','s','Call','set(gcf,''Color'',[0.4910.6]);');

uimenu(hwincor,'Label','紫红','Accelerator','p','Call','set(gcf,''Color'',[0.80.20.9]);');

uimenu(hwincor,'Label','绿色','Accelerator','g','Call','set(gcf,''Color'',[010.3]);');

uimenu(hwincor,'Label','红色','Accelerator','r','Call','set(gcf,''Color'',''r'');');

uimenu(hwincor,'Label','蓝色','Accelerator','b','Call','set(gcf,''Color'',''b'');');

uimenu(hwincor,'Label','黄色','Accelerator','y','Call','set(gcf,''Color'',''y'');');

uimenu(hwincor,'Label','白色','Call','set(gcf,''Color'',''w'');');

模块五:

定义线形,调节虚线或实线的转换。

%定义线形选项

hLineStyle=uimenu(gcf,'Label','&线形','Separator','on');

hlsDashed=uimenu(hLineStyle,'Label','虚线','Call','set(findobj(gca,''Marker'',''none''),''LineStyle'','':

'');','Enable','off');

hlsReal=uimenu(hLineStyle,'Label','实线','Call','set(findobj(gca,''Marker'',''none''),''LineStyle'',''-'');','Enable','off');

模块六:

定义线宽,调节线条的粗细。

%定义线宽选项

hLineWidth=uimenu(gcf,'Label','&线宽');

hlwWided=uimenu(hLineWidth,'Label','加宽','Call','set(findobj(gca,''Marker'',''none''),''LineWidth'',2);','Enable','off');

hlwThin=uimenu(hLineWidth,'Label','变细','Call','set(findobj(gca,''Marker'',''none''),''LineWidth'',0.5);','Enable','off');

模块七:

定义线形颜色,可实现线条颜色有“红色”“紫色”“绿色”“蓝色”“黄色”“白色”

%定义线形颜色选项

hLincor=uimenu(hoption,'Label','&曲线颜色','Separator','on');

hRed=uimenu(hLincor,'Label','红色','Accelerator','r','Call','set(findobj(gca,''Marker'',''none''),''Color'',''r'');','Enable','off');

hp=uimenu(hLincor,'Label','紫色','Accelerator','p','Call','set(findobj(gca,''Marker'',''none''),''Color'',[0.80.20.9]);','Enable','off');

hg=uimenu(hLincor,'Label','绿色','Accelerator','r','Call','set(findobj(gca,''Marker'',''none''),''Color'',[010.3]);','Enable','off');

hBlue=uimenu(hLincor,'Label','蓝色','Accelerator','b','Call','set(findobj(gca,''Marker'',''none''),''Color'',''b'');','Enable','off');

hYellow=uimenu(hLincor,'Label','黄色','Accelerator','y','Call','set(findobj(gca,''Marker'',''none''),''Color'',''y'');','Enable','off');

hWhite=uimenu(hLincor,'Label','白色','Call','set(findobj(gca,''Marker'',''none''),''Color'',''w'');','Enable','off');

模块八

退出用户界面

%定义退出菜单项

uimenu(gcf,'Label','&退出','call','close(gcf)');

四程序运行效果

程序效果图

1sin函数曲线图无网格线,加边框,虚线,窗口颜色为白色,线条为蓝色。

增加加网格线,窗口颜色为蓝宝石,线条颜色为红色,

2翅膀函数曲线线形实线,线宽加粗,加网格线,窗口颜色为蓝宝石色,线条颜色为紫色3衰减函数曲线图,无网格线,加边框线,窗口颜色为蓝色,线条颜色为黄色。

3衰减函数,窗口颜色为白色,线条颜色为蓝色,无网格线,无线框。

衰减函数曲线图,无网格线,加边框线,窗口颜色为蓝色,线条颜色为黄色。

4四叶玫瑰曲线图,线形虚线,加网格线加边框线,窗口颜色为红色,线条颜色为蓝色。

阿基米德螺旋曲线图,加网格线,加边框线,实线窗口颜色为黄色,线条颜色为绿色。

阿基米德螺旋曲线图无网格线。

线形虚线,线宽加粗

心形曲线图形,加网格线,加边框线,窗口颜色为黄色,线条虚线,颜色为紫色。

 

无网格线,无边框线,窗口颜色为白色,线条实线,颜色为红色。

一设计题目2

二维图像演示系统

(一)2

二总体分析2

题目分析:

2

五个菜单:

2

功能:

2

结构设计:

3

三详细设计3

菜单:

3

模块一:

3

模块二:

4

模块三:

6

模块四:

6

模块五:

6

模块六:

7

模块七:

7

模块八7

四程序运行效果7

程序效果图7

操作过程:

13

五总结:

14

通过课程设计,进一步熟悉了MATLAB软件,的确感受到了MATLAB的强大,我所设计的题目,就是通过MATLAB此软件,建立一个图形用户界面,实现简单的二位图形曲线的绘制,一周的设计过程中,遇到了许多的困难,一次又一次的修改,暴露出了我的知识欠缺和经验不足,刚开始设计时,对MATLAB软件的基本操作和编程没掌握,慢慢的学会了基本的操作,收获不少,短短的一周,时间短暂,意义重大,最大的收获还算充分认识到自己的缺陷和不足,还有许多的东西要去学习,多加努力,学更多的东西。

这次课程设计虽然时间是短了点,但给了我们一次锻炼的机会,重新把课本看一遍,收获颇丰。

14

六参考文献:

14

操作过程:

程序运行可建立一个二维图形用户界面,界面上有五个菜单项,plot菜单,option菜单,线形菜单,线宽菜单,quite菜单,首先

(1)点击plot菜单,子菜单下有“函数曲线”,“翅膀曲线”“衰减曲线”“四叶玫瑰曲线”“阿基米德曲线”“心形曲线”选项,分别点击,可直接绘制相应的曲线,绘制曲线完成后,

(2)点击option菜单,点击其下子菜单实现加或撤销网格线和边框线,(3)点击子线形菜单,子菜单有虚线和实线选项,点击可实现对曲线的虚实调节,(4)点击线宽菜单,子菜单有加粗和变细选项,点击可实现对

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

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1