




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题目: VB实现画图小工具 VB实现画图小工具一、计算机图形学1.1计算机图形学的发展1950年,第一台图形显示器作为美国麻省理工学院(MIT)旋风I号(Whirlwind I)计算机的附件诞生了。该显示器用一个类似于示波器的阴极射线管(CRT)来显示一些简单的图形。1958年美国Calp公司由联机的数字记录仪发展成滚筒式绘图仪,GerBer公司把数控机床发展成为平板式绘图仪。在整个50年代,只有电子管计算机,用机器语言编程,主要应用于科学计算,为这些计算机配置的图形设备仅具有输出功能。计算机图形学处于准备和酝酿时期,并称之为:“被动式”图形学。到50年代末期,MIT的林肯实验室在“旋风”计算机上开发SAGE空中防御体系,第一次使用了具有指挥和控制功能的CRT显示器,操作者可以用笔在屏幕上指出被确定的目标。与此同时,类似的技术在设计和生产过程中也陆续得到了应用,它预示着交互式计算机图形学的诞生。 1962年,MIT林肯实验室的Ivan E.Sutherland 发表了一篇题为“Sketchpad:一个人机交互通信的图形系统”的博士,他在中首次使用了计算机图形学“puter Graphics”这个术语,证明了交互计算机图形学是一个可行的、有用的研究领域,从而确定了计算机图形学作为一个崭新的科学分支的独立地位。他在中所提出的一些基本概念和技术,如交互技术、分层存储符号的数据结构等至今还在广为应用。1964年MIT的教授Steven A. Coons提出了被后人称为超限插值的新思想,通过插值四条任意的边界曲线来构造曲面。同在60年代早期,法国雷诺汽车公司的工程师Pierre Bzier发展了一套被后人称为Bzier曲线、曲面的理论,成功地用于几何外形设计,并开发了用于汽车外形设计的UNISURF系统。Coons方法和Bzier方法是CAGD最早的开创性工作。值得一提的是,计算机图形学的最高奖是以 Coons的名字命名的,而获得第一届(1983)和第二届(1985) Steven A.Coons 奖的,恰好是Ivan E.Sutherland和Pierre Bzier,这也算是计算机图形学的一段佳话。 70年代是计算机图形学发展过程中一个重要的历史时期。由于光栅显示器的产生,在60年代就已萌芽的光栅图形学算法,迅速发展起来,区域填充、裁剪、消隐等基本图形概念、及其相应算法纷纷诞生,图形学进入了第一个兴盛的时期,并开始出现实用的CAD图形系统。又因为通用、与设备无关的图形软件的发展,图形软件功能的标准化问题被提了出来。1974年,美国国家标准化局(ANSI)在ACM SIGGRAPH的一个与“与机器无关的图形技术”的工作会议上,提出了制定有关标准的基本规则。此后ACM专门成立了一个图形标准化委员会,开始制定有关标准。该委员会于1977、1979年先后制定和修改了“核心图形系统”(Core Graphics System)。ISO随后又发布了计算机图形接口CGI(puter Graphics Interface)、计算机图形元文件标准CGM(puter Graphics Metafile)、计算机图形核心系统GKS(Graphics Kernel system)、面向程序员的层次交互图形标准 PHIGS(Programmers Hierarchical Interactive Graphics Standard)等。这些标准的制定,为计算机图形学的推广、应用、资源信息共享,起到了重要作用。 70年代,计算机图形学另外两个重要进展是真实感图形学和实体造型技术的产生。1970年Bouknight提出了第一个光反射模型,1971年Gourand提出“漫反射模型插值”的思想,被称为Gourand明暗处理。1975年Phong提出了著名的简单光照模型-Phong模型。这些可以算是真实感图形学最早的开创性工作。另外,从1973年开始,相继出现了英国剑桥大学CAD小组的Build系统、美国罗彻斯特大学的PADL-1系统等实体造型系统。 1980年Whitted提出了一个光透视模型-Whitted模型,并第一次给出光线跟踪算法的范例,实现Whitted模型;1984年,美国Cornell大学和日本广岛大学的学者分别将热辐射工程中的辐射度方法引入到计算机图形学中,用辐射度方法成功地模拟了理想漫反射表面间的多重漫反射效果;光线跟踪算法和辐射度算法的提出,标志着真实感图形的显示算法已逐渐成熟。从80年代中期以来,超大规模集成电路的发展,为图形学的飞速发展奠定了物质基础。计算机的运算能力的提高,图形处理速度的加快,使得图形学的各个研究方向得到充分发展,图形学已广泛应用于动画、科学计算可视化、CAD/CAM、影视娱乐等各个领域。 最后,我们以SIGGRAPH会议的情况,来结束计算机图形学的历史回顾。ACM SIGGRAPH会议是计算机图形学最权威的国际会议,每年在美国召开,参加会议的人在50,000人左右。世界上没有第二个领域每年召开如此规模巨大的专业会议,SIGGRAPH会议很大程度上促进了图形学的发展。SIGGRAPH会议是由Brown大学教授Andries van Dam (Andy) 和IBM公司Sam Matsa在60年代中期发起的,全称是“the Special Interest Group on puter Graphics and Interactive Techniques”。1974年,在Colorado大学召开了第一届SIGGRAPH 年会,并取得了巨大的成功,当时大约有600位来自世界各地的专家参加了会议。到了1997年,参加会议的人数已经增加到48,700。因为每年只录取大约50篇,在puter Graphics杂志上发表,因此的学术水平较高,基本上代表了图形学的主流方向。1.2计算机图形学的应用 计算机图形学是随着计算机及其外围设备而产生和发展起来的,作为计算机科学与技术学科的一个独立分支已经历了近40年的发展历程。一方面,作为一个学科,计算机图形学在图形基础算法、图形软件与图形硬件三方面取得了长足的进步,成为当代几乎所有科学和工程技术领域用来加强信息理解和传递的技术和工具。另一方面,计算机图形学的硬件和软件本身已发展成为一个巨大的产业。1.计算机图形学活跃理论及技术(1)分形理论及应用分形理论是当今世界十分活跃的新理论。作为前沿学科的分形理论认为,大自然是分形构成的。大千世界,对称、均衡的对象和状态是少数和暂时的,而不对称、不均衡的对象和状态才是多数和长期的,分形几何是描述大自然的几何学。作为人类探索复杂事物的新的认知方法,分形对于一切涉及组织结构和形态发生的领域,均有实际应用意义,并在石油勘探、地震预测、城市建设、癌症研究、经济分析等方面取得了不少突破性的进展。分形的概念是美籍数学家曼德布罗特(B.B.Mandelbrot)率先提出的。1967年他在美国科学杂志上发表了题为英国的海岸线有多长?的著名。海岸线作为曲线,其特征是极不规则、极不光滑的,呈现极其蜿蜒复杂的变化。它无法用常规的、传统的几何方法描述。我们不能从形状和结构上区分这部分海岸与那部分海岸有什么本质的不同,这种几乎同样程度的不规则性和复杂性,说明海岸线在形貌上是自相似的,也就是部局形态和整体形态的相似。在没有建筑物或其他东西作为参照物时,在空中拍摄的100公里长的海岸线与放大了的10公里长海岸线的两张照片,看上去十分相似。曾有人提出了这样一个显然是荒谬的命题:“英国的海岸线的长度是无穷大。”其论证思路是这样的:海岸线是破碎曲折的,我们测量时总是以一定的尺度去量得某个近似值,例如,每隔100米立一个标杆,这样,我们测得的是一个近似值,是沿着一条折线计算而得出的近似值,这条折线中的每一段是一条长为100米的直线线段。如果改为每10米立一个标杆,那么实际量出的是另一条折线的长度,它的每一个片段长10米。显然,后一次量出的长度将大于前一次量出的长度。如果我们不断缩小尺度,所量出的长度将会越来越大。这样一来,海岸线的长度不就成为无穷大了吗?为什么会出现这样的结论呢?曼德布罗特提出了一个重要的概念:分数维,又称分维。一般来说,维数都是整数,直线线段是一维的图形,正方形是二维的图形。在数学上,把欧氏空间的几何对象连续地拉伸、压缩、扭曲,维数也不变,这就是拓扑维数。然而,这种维数观并不能解决海岸线的长度问题。曼德布罗特是这样描述一个绳球的维数的:从很远的距离观察这个绳球,可看作一点(零维);从较近的距离观察,它充满了一个球形空间(三维);再近一些,就看到了绳子(一维);再向微观深入,绳子又变成了三维的柱,三维的柱又可分解成一维的纤维。那么,介于这些观察点之间的中间状态又如何呢?显然,并没有绳球从三维对象变成一维对象的确切界限。英国的海岸线为什么测不准?因为欧氏一维测度与海岸线的维数不一致。根据曼德布罗特的计算,英国海岸线的维数为1.26。有了分维的概念,海岸线的长度就可以确定了。1975年,曼德布罗特发现:具有自相似性的形态广泛存在于自然界中,如连绵的山川、飘浮的云朵、岩石的断裂口、布朗粒子运动的轨迹、树冠、花菜、大脑皮层曼德布罗特把这些部分与整体以某种方式相似的形体称为分形(Fractal),这个单词由拉丁语Frangere衍生而成,该词本身具有“破碎”、“不规则”等含义。曼德布罗特的研究中最精彩的部分是1980年他发现的并以他的名字命名的集合,他发现整个宇宙以一种出人意料的方式构成自相似的结构。Mandelbrot集合图形的边界处,具有无限复杂和精细的结构。在此基础上,形成了研究分形性质及其应用的科学,称为分形理论(Fractal theory)或分形几何学(Fractal geometry)。分形的特点和理论贡献数学上的分形有以下几个特点: (1)具有无限精细的结构; (2)比例自相似性;(3)一般它的分数维大于它的拓扑维数;(4)可以由非常简单的方法定义,并由递归、迭代产生等。 (1)(2)两项说明分形在结构上的内在规律性。自相似性是分形的灵魂,它使得分形的任何一个片段都包含了整个分形的信息。第(3)项说明了分形的复杂性,第(4)项则说明了分形的生成机制。我们把传统几何的代表欧氏几何与以分形为研究对象的分形几何做一比较,可以得到这样的结论:欧氏几何是建立在公理之上的逻辑体系,其研究的是在旋转、平移、对称变换下各种不变的量,如角度、长度、面积、体积,其适用范围主要是人造的物体;而分形由递归、迭代生成,主要适用于自然界中形态复杂的物体,分形几何不再以分离的眼光看待分形中的点、线、面,而是把它们看成一个整体。我们可以从分形图案的特点去理解分形几何。分形图案有一系列有趣的特点,如自相似性、对某些变换的不变性、内部结构的无限性等。此外,分形图案往往和一定的几何变换相联系,在一些变化下,图案保持不变,从任意的初始状态出发,经过若干次的几何变换,图形将固定在这个特定的分形图案上,而不再发生变化。自相似原则和迭代生成原则是分形理论的重要原则。 分形理论发展了维数的概念。在发现分数维以前,人们习惯于将点定义为零维,直线为一维,平面为二维,空间为三维,爱因斯坦在相对论中引入时间维,就形成四维时空。对某一问题给予多方面的考虑,可建立高维空间,但都是整数维。分形是20世纪涌现出的新的科学思想和对世界认识的新视角。从理论上讲,它是数学思想的新发展,是人类对于维数、点集等概念的理解的深化与推广。同时它又与现实的物理世界紧密相连,成为研究混沌(Chaos)现象的重要工具。众所周知,对混沌现象的研究正是现代理论物理学的前沿和热点之一。由于分形的研究,人们对于随机性和确定性的辩证关系有了进一步的理解。同样对于过程和状态的联系,对于宏观和微观的联系,对于层次之间的转化,对于无限性的丰富多采,也都产生了有益的影响。分形理论还是非线性科学的前沿和重要分支,作为一种方法论和认识论,其启示是多方面的:一是分形整体与局部形态的相似,启发人们通过认识局部来认识整体,从有限中认识无限;二是分形揭示了介于整体与部分、有序与无序、复杂与简单之间的新形态和秩序;三是分形从特定层面揭示了世界普遍联系和统一的图景。分形学的应用领域除了理论上的意义之外,在实际应用中,分形也显示了巨大的潜力,它已经在许多领域中得到有效的应用,其应用范围之广、效益之明显远远超过了十几年前的任何预测。目前大量分形方法的应用案例层出不穷。这些案例涉及的领域包括:生命过程进化,生态系统,数字编码和解码,数论,动力系统,理论物理(如流体力学和湍流) 等方面,此外,还有人利用分形学做城市规则和地震预报。二、设计要点2.1设置当前绘图点设置当前绘图点:在 VB 中,可以通过设置窗体或图形框的 CurrentX 与 CurrentY 属性来设置当前绘图点。CurrentX 与 CurrentY 决定了绘制或显示的起始坐标,在设计时,这两个属性不可用。2.2绘制点、线、面的方法绘制点、线、面的方法:1、点的绘制法:在指定对象(如窗体、图形框)上的指定位置处绘制点,还可以为点指定颜色,语法如下:冒险岛外挂,地下城与勇士,官方,辅助工具,讨论,发快发网,一粒米,冒险小猪哥,YUKE,吸怪,傻挂,加速,热门游戏社区,仙剑奇侠传,梦幻西游,劲舞团,诛仙,彩虹岛Online,跑跑卡丁车,魔兽争霸,QQ,非主流,8k8e,tkxxd f % x, |7 u, e, f! J对象名.Pset (X,Y),Color 冒险岛,地下城与勇士,CE,ME,游戏,官网,辅助工具,8k8e- 开放注册中! P. d& X9 j0 p+ fX ,Y 分别为点的水平与垂直坐标,Color 为点的颜色,是可选项。 2、直线的绘制法: 冒险岛,地下城与勇士,CE,ME,游戏,官网,辅助工具,8k8e- 开放注册中5 D P2 U, q( p3 U; ) J9 y在对象上绘制直线,语法如下: 对象名.Line (X1,y1) - (X2,Y2), Color (X1,Y1) 是直线的起点,(X2,Y2)是直线的终点,Color 为可选项。 如图一: 冒险岛,地下城与勇士,CE,ME,游戏,官网,辅助工具,8k8e- 开放注册中0 k4 K/ O) M0 u m3 d6 W1 a2、图形框的代码是:天空小小岛! * Z, X( . t# N% W/ F: uPrivate Sub Picture1_Click()bbs.tkxxd$ Q+ h4 6 D ?0 J8 Picture1.Line (350, 1020)-(2050, 1020)End Sub bbs.tkxxd& x6 U0 $ ?1 Z5 A p3 |2 L+ j7 Q3、绘制矩形:用 Line 方法还可以绘制矩形,语法如下: 冒险岛,地下城与勇士,CE,ME,游戏,官网,辅助工具,8k8e- 开放注册中5 m$ ) Z7 t% t* a对象名.Line (X1,Y1) - (X2,Y2), Color, B ,F 冒险岛外挂,地下城与勇士,官方,辅助工具,讨论,发快发网,一粒米,冒险小猪哥,YUKE,吸怪,傻挂,加速,热门游戏社区,仙剑奇侠传,梦幻西游,劲舞团,诛仙,彩虹岛Online,跑跑卡丁车,魔兽争霸,QQ,非主流,8k8e,tkxxd# p8 _3 F4 C2 i其中,(X1,Y1) 是矩形的左上角座标,(X2,Y2)是矩形右下角座标,Color 为矩形边框的颜色,使用参数 B 而不用 F ,那么矩形用当前的填充色(FillColor)与填充方式(FillStyle)对矩形进行填充;如果使用了参数 F ,那么矩形以边框的颜色进行填充。如图二: 特别注意,用 Line 画矩形框,如果不用其他参数,那么 B 与坐标(X2,Y2)之间应该有两个逗点,一个是紧跟坐标2,一个表示 Color 省略了,如:Picture1.Line (500,500) - (1000,1000),B- h% u6 ; W2 o; Z q! 4、绘制圆、椭圆、弧:2 Z6 m% G0 I& S- ? I4 R用 Circle 方法可以绘制圆、椭圆与弧,语法如下: 对象名.Circle (X,Y), Radius, Color,start,end,aspect 其中,(X,Y)是圆、椭圆或弧的圆心坐标,Radius 是半径,这两个参数是必须项;Color 是圆的轮廓色,Start 与 End 是弧的起点与终点位置。其范围是 -2 2Pi ;Aspect 是圆的纵横尺寸比,默认值是 1 即圆,如图三: 冒险岛,地下城与勇士,CE,ME,游戏,官网,辅助工具,8k8e- 开放注册中7 a. B. S, * X% b2.3颜色、前景与背景色的设置颜色、前景与背景色的设置:1 1 k+ O+ a; d L1、颜色函数 RGB()在前面关于卷动条控件(综合示例五)的讲解中,我们讲述了色彩的设置问题,而这正是 RGB 颜色函数的原理所在。色彩设置的方法如下: RGB(Red,Green,Blue)bbs.tkxxd, |6 6 B% f d2 H& |不要忘了,Red、Green、Blue 每种色彩各有 0255 种成份,三种色彩不同参数的搭配,就产生了丰富多采的现实世界。 2、前景色的设置:通过对 ForeColor(前景色属性)的设置,可以返回或设置对象的前景色。3、背景色的设置:对 BackColor 属性进行设置,就可以返回或设置对象的背景色。3.VB画图程序设计Sub EditColor_Click() monDialog1.Action = 3 Picture2.ForeColor = monDialog.ColorEnd SubPrivate Sub Exit_Click() EndEnd SubSub picture2_Load() drawstate = FalseEnd SubSub picture2_mousedown(button As Integer, shift As Integer, X As Single, Y As Single) If button = 1 Thendrawstate = True PreX = X PreY = Y End If If button = 2 Then Circle (X, Y), 280 End IfEnd SubSub picture2_mousemove(button As Integer, shift As Integer, X As Single, Y As Single)If drawstate = True Then Line (PreX, PreY)-(X, Y) PreX = X PreY = YEnd IfEnd SubSub picture2_mouseup(button As Integer, shift As Integer, X As Single, Y As Single) If button = 1 Then drawstate = False End IfEnd SubSub New_Click() Picture2 = End SubSub Open_Click() monDialog1.Action = 1End SubSub Print_Click() monDialog1.Action = 5 For i = 1 To monDialog1.Copies Printer.Print Picture2 Next i Printer.EndDocEnd SubSub SaveAs_Click() monDialog1.FileName = *.drw monDialog1.DefaultExt = drw monDialog1.Action = 2 Open monDialog1.FileName For Output As #1 Print #1, Picture2 Close #1End SubPrivate Sub Toolbar1_ButtonClick(ByVal button As MSCtlLib
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业园区设备的节能减排措施与计划
- 工业废弃地再开发与环保协同策略
- 工业旅游与文化产业发展
- 工业机器人与自动化技术结合的实践
- 工业污染防治与效果评估
- 工业用高分子材料的性能与市场分析
- 工业机器人技术的发展及其在制造中的应用
- 工业污染防治的技术与挑战
- 工业节能与绿色制造技术
- 工业环境下的智能决策支持系统研究
- 复旦大学课件
- 2025广西三支一扶真题
- 物业电路排查方案范本
- 肝动脉栓塞化疗术护理
- 2025年第六届全国国家版图知识竞赛题库及答案(中小学组)
- 自然保护地勘界立标技术指引
- 《论文写作》课件 第1章 论文写作的基本概念
- 广东省省级政务信息化服务预算编制标准(运维服务分册)
- 心肺复苏课件2024
- 2025年1月福建省普通高中学业水平合格性考试语文仿真模拟卷02(春季高考适用)(考试版)
- PMCAD(V31)用户手册标准版
评论
0/150
提交评论