-任意一元函数曲线的绘制任务书.doc_第1页
-任意一元函数曲线的绘制任务书.doc_第2页
-任意一元函数曲线的绘制任务书.doc_第3页
-任意一元函数曲线的绘制任务书.doc_第4页
-任意一元函数曲线的绘制任务书.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计任务书 编号:42河北理工大学软件设计基础(VB)课 程 设 计 任 务 书 学院 班级 设计人 成绩 一、 题目:一元数学函数图示器(参考设计如下图)二、目的与要求:1.目的:培养学生综合利用Visual Basic语言进行程序设计的能力,主要是培养学生利用VB的图片框控件进行作图技能。2.基本要求:欲完成此设计题目,要求必须熟练使用和掌握PictureBox控件的各种属性(如forecolor、backcolor、currentX、currentY,DrawWidth等)和方法(如Cls、Print、Line、Pset,Scale等)能够显示固定一元函数(例如示意图中的函数)的图形。可以设置常用的显示参数,包括显示范围,坐标轴、曲线、显示区底色,及刻度文字及线宽等特性,显示设置的范例可以参考右图。能够对图形进行缩放,并可以在显示区直接选取显示范围(窗口放大),可以对图形进行平移观察,平移的步长可以设置,当显示范围改变后,标尺刻度和网格密度应该能自动调整,以适应新的显示范围。如右图所示。支持鼠标点击图形上任意一点,显示出该处的x值和对应的函数值,可以用一个消息框来显示此信息(见右图)。程序界面美观,支持多个函数的叠加显示。3.创新要求:在基本要求达到后,进行创新设计,如进行任意一元函数(程序中直接输入函数)的图形显示,支持函数图形的打印(以打印机的分辨率进行打印,不是直接拷屏)。还可以实现一下窗口大小改变后程序自动调整图示区的范围等功能。三、设计方法和基本原理:1.问题描述: 程序界面见上,功能描述参见基本要求的内容。2.问题的解决方案: 设计程序界面。因为用的是常用控件,界面设计没有什么难度,照样子拼好就可以了。Picturebox控件中背景、曲线、网格轴的颜色选择。可以直接设置控件对应的属性来完成,因为要画不同类型的线,所以在一个过程中可能需要多次设置同一属性。显示分辩率的实现。所谓的分辩率就是用多少条直线来逼近所画的曲线,越大画的越精确,越小画的越快,本程序建议限定在100-1000之间。绘制曲线的实现。这也是本程序要实现的核心功能,主要包括的内容有: Picturebox控件中坐标系的初始化。然后利用Picturebox控件的Scale方法进行设置。图形区的坐标范围要有初始值,可以在form_load事件中设置各参数的初值。 绘制坐标轴及刻度网格线,并标上刻度值。坐标刻度(又称为网格)的显示可以采用每隔一定的间距画一条线来实现,刻度的文字标注同时进行,注意调整写字的位置,让字能写在刻度的居中位置,可以用类似下面的方法,其中TextWidth和TextHeight是求出给定文字在给定对象上的文字宽度和高度,只有得到此值才能将字写在准确位置。 For i = .l To .r Step st s = Trim(Str(i)将要写的文字转换成字串并去掉空格 P0.CurrentX = i - P0.TextWidth(s) / 2居中对齐方式 P0.CurrentY = .t写在显示区的顶部 P0.Print s; Next i 函数曲线主要是利用画直线的方法进行绘制,最左侧的点算出后,用Pset方法做出标记,以后每算出一个新的函数值,用Line-(x,y)画出一小段。直到画到显示范围的右侧。程序片段类下: (说明:.l,.r是显示区间的左边和右边的x值,.res为显示分辨率,fx求函数值) Picture1.PSet (.l, fx(fun1, .l) 绘出初始点 For i = .l To .r Step (.r - .l) / .res 共.res段直线构成曲线 Picture1.Line -(i, fx(fun1, i) 画出一小段Next I参数设置的实现为了使变量公用,在模块中用Public词句声明变量及自定义类型,这样在设置窗口的form_Load事件中就可以直接取得参数值了。Private Sub Form_Load() With Para txtL = .l: txtPS = .ps * 100 txtCW = .cw: txtAW = .aw BkColor.BackColor = .bc: AxisColor.BackColor = .ac GridColor.BackColor = .gc: Fun1Color.BackColor = .cc1End WithEnd Sub参数设置支持确定和取消,如果确定,将会重新按新的设置来显示,否则,保持原显示不变,代码类下:Private Sub cmdSettings_Click() DispSettings.Show vbModal If Para.ok Then DispFunEnd Sub参数设置的文本框处理较为简单,对于颜色的处理可以采用这样的方法(VB中的颜色可以存放在Long类型的变量中),下面示例了网格颜色的设置方法,其它雷同,其中的CD1是一个公共对话框控件(Common Dialog Control) CD1.Color = GridColor.BackColor CD1.ShowColor GriColor.BackCklor = CD1.Color四、主要技术问题描述:设置图牆的坐标范围用Scale方法,清除用Cls,作图用Line (x,y),写字用Print(这些都是图片对象现成的可用方法,改笔宽用DrawWidth属性,色彩用ForeColmr和BackColor,至于窗口放大(可以接受图片的MouseDown和MouseUp事件以确定用户选择的窗口范围(VB会将鼠标点击时的x,y座标报告给过程),然后重新设置显示范围和坐标系,再重新计算绘图即可,缩放和平移都是更改显示范围然后重绘即可。 为了处理参数方便,可以自定义类似于下面的自定义数据类型Type Settings l As Double left cc1 As Long curve 1 colorEnd Type这样,象放大缩小这样的操作就可以按这样的方法来处理了:Dim Para as Settings在Form_Load和其它相关过程中已经正确的设置了Para中的各参数Private Sub cmdZoomOut_Click()With Para .l = .l * .zs: .r = .r * .zs: .t = .t * .zs: .b = .b * .zsEnd WithDispFun按新的参数显示图形End Sub五、课程设计时间:2010年5月10日至2010年6月20日六、课程设计进行地点:学校机房 七、书写设计报告的要求: 设计报告中包含以下几个方面:1.设计题目2.设计思路划分功能模块确定各模块的算法3.用图示的方式给出过程或函数之间的调用关系4.列出程序清单,并加以必要的注释5.对该设计题目有何更完善的方案6.通过本次设计,有何收获及心得体会八、课程设计的考核方式及评分方法1.考核方式课程设计结束时,学生要提交课程设计报告(A4纸打印),并将电子文档和源程序上传至课程设计服务器中:ftp:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论