计算机图形学第3章ppt课件.ppt

计算机图形学第3章ppt课件.ppt

ID:59268234

大小:1.51 MB

页数:50页

时间:2020-09-27

计算机图形学第3章ppt课件.ppt_第1页
计算机图形学第3章ppt课件.ppt_第2页
计算机图形学第3章ppt课件.ppt_第3页
计算机图形学第3章ppt课件.ppt_第4页
计算机图形学第3章ppt课件.ppt_第5页
资源描述:

《计算机图形学第3章ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章图形程序设计图形程序样例通用图形程序典型绘图方法动画程序设计图案程序样例金刚石图案肾形图案海绵图案金刚石图案图案生成思路:把半径为R的圆周n等分,然后用直线将各等分点两两连接,即形成金刚石图案。肾形图案将一个半径为R的圆周等分成2n份,然后以等分点为圆心,以等分点到对称分割该圆的直径的距离为半径画圆,即形成肾形图案。海绵图案主体是绘制三角形,还需要连接三角形三边的中点绘制另外的三角形。2通用图形程序的设计方法在设计和绘图工作中,各个专业领域都有自己常用的图形符号和图形。为了减少重复性工作及方便绘图,一般均把这些常用图形的绘制设计成独

2、立的通用功能模块,也就是图形子程序或图形函数,并组成图形库,供用户在绘图时选用。构造功能模块的基本原则要做到通用和方便使用,这些程序就应模块化。模块是组建大规模结构化程序的基础和主要组成部分。因此,按照什么样的原则来构造模块是一个十分重要的问题。一般来说,这些基本原则有以下四条:独立性原则模块的独立性是指:每个模块都要具有其自身独立的含义,模块与模块之间的关系要明确简单,尽量避免隐含的关系,这不仅是为了保证模块的正确与安全,也是为了便于模块之间的组合。抽象性原则最通常的抽象性是参数化。这种抽象性能扩大模块的适应能力,从而发挥模块自身更大的

3、作用。开放性原则应能方便地对模块的部分属性和功能进行修改和扩充,从而使得模块是可维护的,这种可维护性是延长模块生命周期的重要手段。继承性原则即当模块在维护中部分属性发生了变化,但这种变化不会影响原模块在软件中的作用,以维护软件不同版本之间的兼容性。正多边形程序下面我们以生成任意正多边形子程序的设计过程,来说明建立这种功能模块的一般方法。(1)建立模型明确目标-画什么(功能)分析最起码的初始条件(定形:边数、边长;定位:定位点、方向。)(2)初始条件的给定方式及图形数据的确定(参数)直接以多边形顶点定位定位顶点Ps始边倾角边数n边长a

4、给定了定形和定位参数,就可以唯一地确定一个正多边形。但在图形程序中,必须给出具体的绘图数据(即各顶点坐标),才能绘图。这些顶点坐标可通过初始条件计算求得:Ps:(xs,ys)P1:x1=xs+a•cosy1=ys+a•sinP2:x2=x1+a•cos(+)y2=y1+a•sin(+)…Pi:Xi=X(i-1)+a•cos(+(i-1)•)Yi=Y(i-1)+a•sin(+(i-1)•)其中:=2/n(正多边形的外角)(3)程序设计以顶点定位的多边形为例,来说明程序设计的过程:设计程序流程编写程序n3?(Y)

5、出错信息=2/n;=•/180移当前点至(x0,y0);x=x0,y=y0I=1~n-1循环x=x+a•cos,y=y+a•sin画线至(x,y);=+画线至(x0,y0);结束if(n3)return;theta=6.28318/n;(每次旋转角度)alpha=alpha*0.0174533;moveto(x0,y0);x=x0;y=y0;for(i=1;in;i++){x=x+a*cos(alpha);y=y+a*sin(alpha);lineto(x,y);alpha=alpha+theta;}lineto(

6、x0,y0);以外接圆圆心定位的正多边形定形参数:边数n和外接圆半径R;定位参数:外接圆圆心坐标(x0,y0)和起始点半径的倾角;P1:x1=x0+R•cosy1=y0+R•sinP2:x2=x0+R•cos(+∆)y2=y0+R•sin(+∆)Pi:xi=x0+R•cos(+(i-1)∆)yi=y0+R•sin(+(i-1)∆)图案程序的设计方法计算机善于做重复性的工作。所以利用它的这一特长,可以让它绘制一些我们难以作业的重复繁琐的图形。例如,一个正方形螺旋图案,看起来外貌很复杂,但是实际上,它只不过是由一个正方形

7、通过不断旋转和缩小组成的。图形分析由16个相似的方块拼接而成;每个方块是由正方形螺旋变化形成;每个相邻方块的螺旋方向相反。每个正方形螺旋块,是由正方形的旋转和缩小组成,且经过变换后的正方形新顶点刚好在原正方形的边上。见图。在三角形PQS中:QS=a2•sinPS=a2•cosQS+PS=a1=a2•(sin+cos)在图中,我们设两个正方形的外接圆半径分别为R1和R2,边长为a1和a2,旋转角为。则两个正方形间的缩小系数为:f=a2/a1因此,根据图形关系可得到缩小系数f的值为:f=a2/a1=1/(sin+cos)考虑

8、到转角可以有取正值(逆时针旋转)或者负值(顺时针旋转)两种情况,但缩小系数f总是正值,所以在计算时用转角的绝对值。即:f=a2/a1=1/(sin

9、

10、+cos

11、

12、)并且,R2=R1•f

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。