中国高校课件下载中心 》 教学资源 》 大学文库

浙江科技大学:《包装CAD》课程教学课件(PPT讲稿)第二章 计算机绘图与程序设计

文档信息
资源类别:文库
文档格式:PPT
文档页数:35
文件大小:530.5KB
团购合买:点击进入团购
内容简介
第一节 计算机图形学的概念 第二节 坐标系 第三节 基本图形的生成方法 第四节 Basic语言图形程序设计 第五节 C语言图形程序设计
刷新页面文档预览

第二章计算机绘图与程序设计

第二章 计算机绘图与程序设计

学习目标点、直线、园等图元生成的基本算法思想基本原理基本步骤图形程序设计·c语言

学习目标 点、直线、园等图元生成的 • 基本算法思想 • 基本原理 • 基本步骤 图形程序设计 • c语言

第一节计算机图形学的概念图形的描述计算机图形学中研究的图形就是从客观世界的物体中抽象出来的带有灰度或色彩及形状的图或形景物,照片、图片、工程图、设计图、美术画、数学方法描述的图形计算机表述图形的方法点阵表示用具有灰度或色彩的点阵来表示图形(强调图形由点构成)简称为图像(数字图像)参数表示由图形的形状参数(方程或分析表达式的系数,线段的端点坐标等)+属性参数(颜色、线型等)来表示图形简称为图形

第一节 计算机图形学的概念 一、图形的描述 计算机图形学中研究的图形就是从客观世界的物 体中抽象出来的带有灰度或色彩及形状的图或形: 景物,照片、图片、工程图、设计图、美术画、数学方 法描述的图形 计算机表述图形的方法 • 点阵表示 ◼ 用具有灰度或色彩的点阵来表示图形(强调图形由点构成) ◼ 简称为图像(数字图像) • 参数表示 ◼ 由图形的形状参数(方程或分析表达式的系数,线段 的端点坐标等)+属性参数(颜色、线型等)来表示图 形 ◼ 简称为图形:

二、计算机图形学的研究内容一如何用适当的硬件来实现图形处理功能如何设计好的图形软件图形处理所需的数学处理方法和算法一如何解决实际应用中的图形处理问题

二、计算机图形学的研究内容 ◼ 如何用适当的硬件来实现图形处理功能 ◼ 如何设计好的图形软件 ◼ 图形处理所需的数学处理方法和算法 ◼ 如何解决实际应用中的图形处理问题

第二节坐标系用户坐标系极坐标、球坐标、直角坐标用户原始应用的坐标系:、设备坐标系与设备有关的坐标系,一般是维有时是三维的(0,0)例IBMPC机坐标系,左上角为原点(0,0)(a.y)横坐标0,1,2...319(639),纵坐标0,12...199,即每一点对应一对整数表示的坐标图2-]屏幕坐标三、规格化坐标系与设备无关的图形系统,x、y轴取值范围[1.0,1.01

第二节 坐标系 一、用户坐标系 用户原始应用的坐标系:极坐标、球坐标、直角坐标 二、设备坐标系 与设备有关的坐标系,一般是二维,有时是三维的 例 IBM PC机坐标系,左上角为原点(0,0), 横坐标0,1,2.319(639),纵坐标0,1, 2.199,即每一点对应一对整数表示的坐标 三、规格化坐标系 与设备无关的图形系统,x、y轴取值范围[1.0,1.0]

四、三种坐标系间的关系用户坐标系中的一点(xHwy)转变为规格化坐标系(ry.)(I..)中的点(xn,y,)(Iw,w)(fw.Jw)1Ww[n =(xw-Xw)W设备垒标规格化设备坐标用户坐标三种坐标系的关系[yn =(yw -ybwYH,图2-2W.H为用户绘图空间的范围:Xwybw为用户原点坐标(xn =(xw)W.当(0,0)为用户坐标系原点时,规格化坐标为(y,- (yw)/H.[=639×x,=[639×xW]变换到屏幕坐标系时[y。=199×y, -[199×y./H]]、原点平移到(0,199)由于屏幕的坐标原点在左上角,须经x,=[639xx/W]2、绕x轴旋转1800变换,才能以习惯的形式显示(yb=[199×(1-yw/Hw)]

四、三种坐标系间的关系 ( ) ( )    = = n w w n w w y y /H x x /W ( ) ( )    = − = − n w bw w n w lw w y y y /H x x x /W        =  =  =  =  a n w w a n w w y 199 y 199 y /H x 639 x 639 x /W 用户坐标系中的一点(xw, yw)转变为规格化坐标系 中的点(xn , yn) Ww,Hw为用户绘图空间的范围;Xlw,ybw 为用户原点坐标 当(0,0)为用户坐标系原点时,规格化坐标为 变换到屏幕坐标系时 由于屏幕的坐标原点在左上角,须经 变换,才能以习惯的形式显示        =  − =  y 199 (1 y /H ) x 639 x /W b w w b w w 1、原点平移到(0,199) 2、绕x轴旋转1800

第三节基本图形的生成方法点平面上的一点P(r,y)1、由一对坐标P(X,Y)定义2、用矢量表示:P=(x,y)3、p到原点的距离和op与x轴的夹角xP|=Vx+ y图2-3直角坐标cosα = x/ /x2+1

第三节 基本图形的生成方法 一、点 平面上的一点 1、由一对坐标P(X,Y)定义 2、用矢量表示:P=(x, y) 3、p到原点的距离和op与x轴的夹角 2 2 2 2 cos x / x y P x y = + = + 

画点程序#includePoint(x,y,color)int X, Y, color;UnionREGSregsiif(×19911y319)returnregs.h.ah=12;/*drawingpoint*regs.h.al=colori:/*colornumber*regs.x.dx=x;regs.x.cx=yint86(0x10,&regs,&regs)

画点程序 #include Point (x,y,color) int x, y, color; Union REGS regs; if(x199 || y319) return; regs.h.ah=12; /*drawing point*/ regs.h.al=color;/*color number*/ regs.x.dx=x; regs.x.cx=y; int86(0x10, &regs, &regs);

直线段直线段的象素点的集合分布得越均匀,且象素点靠近直线段越近,画出的直线就越图2-4直线段的点生成平滑、精确。a-理想像素分布b-实际像素分布

二、直线段 直线段的象素点 的集合分布得越 均匀,且象素点 靠近直线段越近, 画出的直线就越 平滑、精确

逐点计算法假定直线的起点、终点分别为:PO(x0,yO)P1(xl,y1),且都为整数则直线的方程为(y-y0)/(x-x0)=(y1-y0)/(x1-x0)写成参数方程为X=x0+(x1-x0)t每画一个点就要(0≤t≤1)Y=y0+(y1-yo)t作一次加法和乘令t=ti-i/nn=0,1...n,可得到i点的方程法,存在工作量大的问题!!Xi=x0+(x1-x0)tiYi=y0+(y1-yo)ti (i=0, 1,...n)像素点为mi=(xiyi)(round(xi), round(yi)

假定直线的起点、终点分别为:P0(x0,y0), P1(x1,y1),且都为整数。 则直线的方程为 (y-y0)/(x-x0)=(y1-y0)/(x1-x0) 写成参数方程为 逐点计算法 X=x0+(x1-x0)t Y=y0+(y1-y0)t (0 ≤ t ≤ 1) 令t=ti=i/n n=0,1.n, 可得到i点的方程: Xi=x0+(x1-x0)ti {Yi=y0+(y1-y0)ti (i=0, 1,.n) 像素点为mi=(xi,yi) (round(xi), round(yi))! 每画一个点就要 作一次加法和乘 法,存在工作量 大的问题!!

刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档