好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

计算机图形学基础教程习题课1(第二版)(孙家广-胡事民编著).doc

5页
  • 卖家[上传人]:cn****1
  • 文档编号:534384088
  • 上传时间:2023-12-01
  • 文档格式:DOC
  • 文档大小:1.08MB
  • / 5 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 备 注 教案用纸教 学 内 容1. 列举计算机图形学的主要研究内容计算机中图形的表示方法、图形的计算、图形的处理和图形的显示图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等2. 常用的图形输出设备是什么?显示器(CRT、LCD、等离子)、打印机、绘图仪等2. 常用的图形输入设备是什么?键盘、鼠标、跟踪球、空间球、数据手套、光笔、触摸屏、扫描仪等3. 列出3种图形软件工具AutoCAD、SolidWorks、UG、ProEngineer、CorelDraw、Photoshop、PaintShop、Visio、3DMAX、MAYA、Alias、Softimage等错误:CAD4. 写出|k|>1的直线Bresenham画线算法dddd设直线方程为:y=kx+b,即x=(y-b)/k,有xi+1=xi+(yi+1-yi)/k = xi+1/k,其中k=dy/dx 因为直线的起始点在象素中心,所以误差项d的初值d0=0y下标每增加1,d的值相应递增1/k,即d=d+1/k。

      一旦d≥1,就把它减去1,这样保证d在0、1之间l 当d≥0.5时,最接近于当前象素的右上方象素(xi+1,yi+1),x方向加1,d减去1;l 而当d<0.5时,更接近于上方象素(xi,yi+1)为方便计算,令e=d-0.5,e的初值为-0.5,增量为1/kl 当e≥0时,取当前象素(xi,yi)的右上方象素(xi+1,yi+1),e减小1;l 而当e<0时,更接近于上方象素(xi,yi+1)void Bresenhamline (int x0,int y0,int x1, int y1,int color){ int x, y, dx, dy; float k, e; dx = x1-x0, dy = y1-y0, k=dy/dx; e=-0.5, x=x0, y=y0; for (i=0; i£dy; i++) { drawpixel (x, y, color); y=y+1,e=e+1/k; if (e³0) { x++, e=e-1;} } }4. 写出|k|>1的直线中点画线算法。

      MP(xp,yp)P1P2QM1M2构造判别式:d=F(M)=F(xp+0.5,yp+1)=a(xp+0.5)+b(yp+1)+cl 当d<0,M在Q点左侧,取右上方P2为下一个象素;l 当d>0,M在Q点右侧,取上方P1为下一个象素;l 当d=0,选P1或P2均可,约定取P1为下一个象素;增量计算:l 若d³0,取正上方象素P1 (xp, yp+1),要判下一个象素位置,应计算d1= F(M1)=F(xp+0.5, yp+2)=a(xp+0.5)+b(yp+2)+c=d+b增量为bl 若d<0,取右上方象素P2 (xp+1, yp+1)要判断再下一象素,则要计算d2= F(M2)=F(xp+1.5, yp+2)=a(xp+1.5)+b(yp+2)+c=d+a+b 增量为a+bl d的初值 d0=F(x0+0.5, y0+1)=F(x0, y0)+0.5a+b =0.5a+b用2d代替d的算法:void Midpoint Line (int x0,int y0,int x1, int y1,int color){ int a, b, d1, d2, d, x, y; a=y0-y1, b=x1-x0, d=a+2*b; d1=2*b, d2=2*(a+b); x=x0, y=y0; drawpixel(x, y, color); while (y

      102345678123456P1(4,1)P2(2,3)P3(2,6)P4(5,4)P5(7,5)P6(8,2)4 -1 3 4 4 2 8 -1/3 5 2 0 6 5 -1.5 6 5 2 5 0123456P1P2P1P6P5P6P2P3P3P4P4P55. 写出下图中多边形的边表(新边表)102345678123456P1(4,1)P2(2,3)P3(2,6)P4(5,5)P5(7,6)P6(8,2)4 -1 3 4 4 2 8 -1/4 6 2 0 6 5 -3 6 5 2 6 0123456P1P2P1P6P5P6P2P3P3P4P4P56. 写出以原点为球心,半径为2的球体的旋转生成算法算法一:以点为基本图元for(j=0;j<72;j++){ 绕Y轴逆时针旋转5度,; //画出半圆画点(0,2,0);for(i=0;i<36;i++){ 将当前点绕Z轴逆时针旋转5度,; 画变换后的点;}} 算法二:以圆弧为基本图元for(j=0;j<72;j++){ 绕Y轴逆时针旋转5度,; 画半圆;} 第 5 页。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.