的图形用户界面GUI

上传人:公**** 文档编号:588099150 上传时间:2024-09-07 格式:PPT 页数:24 大小:1,002.03KB
返回 下载 相关 举报
的图形用户界面GUI_第1页
第1页 / 共24页
的图形用户界面GUI_第2页
第2页 / 共24页
的图形用户界面GUI_第3页
第3页 / 共24页
的图形用户界面GUI_第4页
第4页 / 共24页
的图形用户界面GUI_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《的图形用户界面GUI》由会员分享,可在线阅读,更多相关《的图形用户界面GUI(24页珍藏版)》请在金锄头文库上搜索。

1、控制系统仿真控制系统仿真 - -基于基于MATLABMATLAB语言语言主讲教师:张磊主讲教师:张磊中国海洋大学中国海洋大学 工程学院工程学院2024/9/7本次课程的主要内容本次课程的主要内容本次课程的主要内容本次课程的主要内容1 1 1 1、 MATLABMATLABMATLABMATLAB的图形用户界面的图形用户界面的图形用户界面的图形用户界面GUIGUIGUIGUI 1.11.11.11.1什么是什么是什么是什么是GUIGUIGUIGUI? 1.2MATIAB1.2MATIAB1.2MATIAB1.2MATIAB的的的的GUIDEGUIDEGUIDEGUIDE开发环境开发环境开发环境开

2、发环境 1.31.31.31.3回调函数及示例回调函数及示例回调函数及示例回调函数及示例2 2 2 2、复杂系统仿真概述、复杂系统仿真概述、复杂系统仿真概述、复杂系统仿真概述 2.1 2.1 2.1 2.1复杂系统建模复杂系统建模复杂系统建模复杂系统建模 2.2 2.2 2.2 2.2三维仿真软件三维仿真软件三维仿真软件三维仿真软件OpenGLOpenGLOpenGLOpenGL开发环境开发环境开发环境开发环境 2.3 2.3 2.3 2.3基于基于基于基于OpenGLOpenGLOpenGLOpenGL的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例9 MATLAB9

3、 MATLAB的图形用户界面的图形用户界面GUIGUI1.1.1.1.1.1.1.1.什么是什么是什么是什么是GUIGUIGUIGUI?主要内容:主要内容:主要内容:主要内容:GUIGUI开发环境开发环境开发环境开发环境GUIGUI界面的创建,交互组件界面的创建,交互组件界面的创建,交互组件界面的创建,交互组件GUIGUI菜单和存储菜单和存储菜单和存储菜单和存储句柄图形对象句柄图形对象句柄图形对象句柄图形对象- -回调函数回调函数回调函数回调函数 GUI(GraphicalGUI(Graphical User Interface) User Interface)图形用户界面,是在图形界图形用户

4、界面,是在图形界面下安排显示与用户交互的组件元素,用户可以只通过键盘、面下安排显示与用户交互的组件元素,用户可以只通过键盘、鼠标和前台界面下的组件发生交互,而所有的计算、绘图等内鼠标和前台界面下的组件发生交互,而所有的计算、绘图等内部操作都封装在内部,提高了终端用户使用部操作都封装在内部,提高了终端用户使用MATLABMATLAB程序的易用程序的易用性。性。9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI1.2. GUIDE1.2. GUIDE1.2. GUIDE1.2. GUIDE开发环境开发环境开发环境开发环境MATLABMATLAB主菜单主菜单主菜单主菜单-fil

5、e-new-GUI-file-new-GUI选择创建的模板类型选择创建的模板类型1 1、使用、使用空白模板空白模板创建创建GUIGUI2 2、使用带有组件的模、使用带有组件的模板创建板创建GUIGUI3 3、使用带有图形和菜、使用带有图形和菜单的模板创建单的模板创建GUIGUI4 4、使用对话框模板创、使用对话框模板创建建GUIGUIGUIDE操作演示操作演示9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUIGUIGUIGUIGUI界面的创建,交互组件界面的创建,交互组件界面的创建,交互组件界面的创建,交互组件1 1、按钮、按钮2 2、海绵按钮、海绵按钮3 3、下拉菜单、

6、下拉菜单4 4、单选按钮、单选按钮5 5、复选框、复选框6 6、文本框、文本框7 7、文本标签、文本标签8 8、滑动条、滑动条9 9、下拉列表框、下拉列表框1010、坐标轴、坐标轴9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI组件属性设置和排列组件属性设置和排列组件属性设置和排列组件属性设置和排列9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUIGUIGUIGUIGUI菜单和存储菜单和存储菜单和存储菜单和存储1 1、页面菜单、页面菜单2 2、右键弹出菜单、右键弹出菜单9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUIGUIG

7、UI菜单和存储菜单和存储1 1、二进制的、二进制的.fig.fig文件,保文件,保存存GUIGUI界面的组件、菜单的界面的组件、菜单的相关属性相关属性2 2、.m.m文件,保存文件,保存GUIGUI特定特定响应事件的函数响应事件的函数实际操作示例实际操作示例9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI1.31.3回调函数回调函数9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI1.3.1.3.回调函数回调函数% - Executes on button press in togglebutton1.function togglebutton1_

8、Callback(hObject, eventdata, handles)% hObject handle to togglebutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,Value) returns toggle state of togglebutton1num=5;den=1,5,4,0; numa,dena=

9、cloop(num,den);y,t = step(numa,dena)set(gcf,CurrentAxes,findobj(gcf,Type,Axes)plot(y)grid回调函数操作演示回调函数操作演示例:例:例:例:9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI1 1、使用简易绘图函数、使用简易绘图函数、使用简易绘图函数、使用简易绘图函数ezsurfezsurf( (绘制绘制绘制绘制)3)3三维图形三维图形三维图形三维图形2 2、使用、使用、使用、使用shadingshading实现实现实现实现3 3种绘制模式的切换(种绘制模式的切换(种绘制模式的切换(种绘

10、制模式的切换(flat:flat:片块模式,片块模式,片块模式,片块模式,faceted:faceted:切面模式,切面模式,切面模式,切面模式,interpinterp: :彩色模式)彩色模式)彩色模式)彩色模式)3 3、设置绘制和清空按钮、设置绘制和清空按钮、设置绘制和清空按钮、设置绘制和清空按钮4 4、设置简单菜单项完成绘制、清空和关闭命令、设置简单菜单项完成绘制、清空和关闭命令、设置简单菜单项完成绘制、清空和关闭命令、设置简单菜单项完成绘制、清空和关闭命令用户界面设计演示用户界面设计演示9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI6.6.6.6.句柄图形对象

11、句柄图形对象句柄图形对象句柄图形对象1 1)、三种模式之间相互切换:具有排)、三种模式之间相互切换:具有排他性他性2 2)、根据)、根据1 1)的模式定义设置绘图命令)的模式定义设置绘图命令3 3)、清空绘图区)、清空绘图区4 4)、设置菜单命令)、设置菜单命令9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI6.6.6.6.句柄图形对象句柄图形对象句柄图形对象句柄图形对象set(hObject,Value,get(hObject,Max)set(findobj(gcf,Tag,radiobutton2),Value,get(findobj(gcf,Tag,radiobu

12、tton1),Min)set(findobj(gcf,Tag,radiobutton3),Value,get(findobj(gcf,Tag,radiobutton2),Min)set(hObject,Value,get(hObject,Max)set(findobj(gcf,Tag,radiobutton1),Value,get(findobj(gcf,Tag,radiobutton1),Min)set(findobj(gcf,Tag,radiobutton3),Value,get(findobj(gcf,Tag,radiobutton2),Min)set(hObject,Value,get

13、(hObject,Max)set(findobj(gcf,Tag,radiobutton1),Value,get(findobj(gcf,Tag,radiobutton1),Min)set(findobj(gcf,Tag,radiobutton2),Value,get(findobj(gcf,Tag,radiobutton2),Min)单选按钮单选按钮单选按钮单选按钮1 1单选按钮单选按钮单选按钮单选按钮2 2单选按钮单选按钮单选按钮单选按钮3 39 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI6.6.6.6.句柄图形对象句柄图形对象句柄图形对象句柄图形对象hrf=fi

14、ndobj(gcf,Tag,radiobutton1);hri=findobj(gcf,Tag,radiobutton2);hrc=findobj(gcf,Tag,radiobutton3);set(gcf,CurrentAxes,findobj(gcf,Type,Axes)ezsurf(peaks)if(get(hrf,Value)=get(hrf,Max) shading flatelseif(get(hri,Value)=get(hri,Max) shading faceted elseif(get(hrc,Value)=get(hrc,Max) shading interpendcla

15、% %清空绘图区清空绘图区绘图按钮绘图按钮绘图按钮绘图按钮清空按钮清空按钮清空按钮清空按钮9 MATLAB9 MATLAB的图形用户界面的图形用户界面GUIGUI6.6.6.6.句柄图形对象句柄图形对象句柄图形对象句柄图形对象pushbutton1_Callbackcla% %清空绘图区清空绘图区菜单项菜单项菜单项菜单项绘图绘图绘图绘图菜单项菜单项菜单项菜单项清空清空清空清空close% %清空绘图区清空绘图区菜单项菜单项菜单项菜单项关闭关闭关闭关闭回调函数设置演示回调函数设置演示10 10 复杂系统仿真概述复杂系统仿真概述1.1.1.1.概述(复杂系统建模总框架)概述(复杂系统建模总框架)概

16、述(复杂系统建模总框架)概述(复杂系统建模总框架)先验知识先验知识演绎分析演绎分析模型构造模型构造可信性分析可信性分析最终模型最终模型目目标标协协调调归归纳纳程程序序目的目的数据数据10 10 复杂系统仿真概述复杂系统仿真概述1.1.1.1.概述(一般系统仿真流程)概述(一般系统仿真流程)概述(一般系统仿真流程)概述(一般系统仿真流程)系统建模仿真建模程序设计试验结果分析2. 2. 2. 2. 三维仿真软件三维仿真软件三维仿真软件三维仿真软件OpenGLOpenGLOpenGLOpenGL开发环境开发环境开发环境开发环境OPENGLOPENGLOPENGLOPENGL(Open Graphic

17、s LanguageOpen Graphics LanguageOpen Graphics LanguageOpen Graphics Language,开放式的图形语言),开放式的图形语言),开放式的图形语言),开放式的图形语言)SGISGISGISGI公司开发的一个多用途跨平台的图形应用程序编程接公司开发的一个多用途跨平台的图形应用程序编程接公司开发的一个多用途跨平台的图形应用程序编程接公司开发的一个多用途跨平台的图形应用程序编程接口(口(口(口(APIAPIAPIAPI)可以在任意操作系统上运行。)可以在任意操作系统上运行。)可以在任意操作系统上运行。)可以在任意操作系统上运行。基本特点

18、:基本特点:基本特点:基本特点: 工业标准,可靠性高(硬件要求低),工业标准,可靠性高(硬件要求低),工业标准,可靠性高(硬件要求低),工业标准,可靠性高(硬件要求低), 可扩展性(提供了较多的工具包),可扩展性(提供了较多的工具包),可扩展性(提供了较多的工具包),可扩展性(提供了较多的工具包), 方便易用(核心图形函数功能强大)方便易用(核心图形函数功能强大)方便易用(核心图形函数功能强大)方便易用(核心图形函数功能强大)主要操作:主要操作:主要操作:主要操作: 绘制物体,图形变换,光照处理,着色,三维图形融合,绘制物体,图形变换,光照处理,着色,三维图形融合,绘制物体,图形变换,光照处理

19、,着色,三维图形融合,绘制物体,图形变换,光照处理,着色,三维图形融合, 纹理映射,动画纹理映射,动画纹理映射,动画纹理映射,动画10 10 复杂系统仿真概述复杂系统仿真概述2. 2. 2. 2. 三维仿真软件三维仿真软件三维仿真软件三维仿真软件OpenGLOpenGLOpenGLOpenGL开发环境开发环境开发环境开发环境INCLUDE INCLUDE 里包含着所有用的里包含着所有用的头文件,里面定义了我们在头文件,里面定义了我们在程序中用到的各种函数。程序中用到的各种函数。MAIN.C MAIN.C 源程序是入口程序,源程序是入口程序,程序从这里开始。程序从这里开始。LAYER-B LAY

20、ER-B 文件夹包含了描述步态与路文件夹包含了描述步态与路径的源程序,径的源程序,MYLIB MYLIB 中描述中描述了我们在程序中用到的一些了我们在程序中用到的一些计算公式如计算三角形面积计算公式如计算三角形面积的公式等,的公式等,POSTURE POSTURE 中是有中是有关四足位置姿态的描述,关四足位置姿态的描述,SYSTEM SYSTEM 中包括初始化的程中包括初始化的程序序 10 10 复杂系统仿真概述复杂系统仿真概述3. 3. 3. 3. 基于基于基于基于OpenGLOpenGLOpenGLOpenGL的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例A.A.

21、建立仿真模型建立仿真模型1 1、坐标系、坐标系2 2、模型尺寸、模型尺寸3 3、各关节的位置、各关节的位置4 4、比例关系、比例关系5 5、足先位置和关节角度的、足先位置和关节角度的关系关系. . . .设置控制页面进行交互设置控制页面进行交互10 10 复杂系统仿真概述复杂系统仿真概述10 10 复杂系统仿真概述复杂系统仿真概述例:描绘四足机器人红色关节部分的函数void DrawLink1(void)GLfloat mat_ambient = 0.5, 0.2, 0.2, 1.0 ; GLfloat mat_diffuse = 0.5, 0.2, 0.2, 1.0 ; GLfloat ma

22、t_specular= 5.0, 1.0, 1.0, 1.0 ; GLfloat mat_shininess= 50.0 ; glPushMatrix(); glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient); glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse); glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular); glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS,

23、 mat_shininess); MySolidCylinder(SHOULDER_RADIUS, BODY_HEIGHT);开始的四个数组建立了环境光,漫反射光和镜面光的反射值的数据,这里的显示效果为红色。 glPushMatrix()函数的作用是让记住程序现在所在位置,接着调用glMaterialfv()函数定义物体正反面的材质属性。然后调用绘制圆柱体的函数MySolidCylinder()绘制该关节部分.3. 3. 3. 3. 基于基于基于基于OpenGLOpenGLOpenGLOpenGL的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例10 10 复杂系统仿真概述复杂系统仿真概述B.B.程序设计程序设计及实验及实验3. 3. 3. 3. 基于基于基于基于OpenGLOpenGLOpenGLOpenGL的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例的复杂系统仿真实例10 10 复杂系统仿真概述复杂系统仿真概述C.C.结果分析结果分析练习练习1:参考课件的实例练习使用:参考课件的实例练习使用MATLAB的图形用户界面的图形用户界面GUI 。课堂练习课堂练习

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

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