计算机图形学实验报告(例文)


    计算机图形学实验报告(例文)
     计算机图形学实验报告
      0900213 38 8 郭佩佩
     实验
     建立计图实验环境 1. 实验目 体现面象程序设计思想实验采基 Visual C 十十集成环境 MFC 编程方法开发 windows 应程序角度建立菜单交互式绘图基环境续实验基础
     2. 实验容 1)
     建立菜单交互式绘图基环境工程文件 Vcad运行图:
      2)绘图菜单拉子菜单菜单项:
      直线
     弹性线方法输入直线起止点调 bresenham 算法换原
      movetolineto 算法画直线
     圆圆弧
      该菜单选择分画圆圆弧
     直线段裁剪 输入矩形域左角右角产生裁剪区域然输入干条直线段矩形域作裁剪域裁剪
     面区填充
      输入边形干顶点调面区填充算法边形域部填充
     
      贝塞尔曲线 输入四顶点调三次贝塞尔曲线生成算法生成贝塞尔曲线
     实验二
     园园弧绘制算法
     1 实验目 通园椭圆弧生成算法机调试掌握:
     1)
     VC++图形函数方法 2)
     圆椭圆弧生成原理
     2.实验容 1)函数形式编写圆生成算法然 VCAD 绘图系统中绘图圆子菜单找合适程序修改点实验求编写画圆算法插入工程文件中通调试验证编写画圆算法正确性
     2)
     函数形式编写角度 DDA 椭圆弧生成算法然 VCAD 绘图系统中绘图圆弧子菜单找合适程序修改点实验求编写画圆弧算法插入工程文件中通调试验证编写画圆弧算法正确性
      Arc(int xcint ycdoubli rdouble tsdouble te) {
     double radts1teldegdtetactst
     int xynI
      rad00174533
     tslts*rad
     telte*rad
     if(r508)
      deg0015
     else
      if(r762)
     deg006
      else
     if(r254)
     deg0075
     else
      deg015
     dtedeg*254r
     if(teltsl)
      tel+628319
     n(int)((teltsl)dte+05) if(n0)
     n(int)(628319dte+05)
      tatsl
      xxc+r*cos(tsl)
      yyc+r*sin(tsl)
      moveto(xy)
      for(i1ini+++)
     { ta+dte ctcos(ta) stsin(ta) xxc+r*ct yyc+r*st lineto(xy) }
      xxc+r*cos(tel)
      yyc+r*sin(tel)
      lineto(xy)
      return(0) }
      实验三
     直线裁剪( 编码裁剪算法)
     1. 实验目 通编码裁剪算法设计调试解二维线段裁剪程提高程序设计力机调试力达理实践机结合目注:实验已运行中点裁剪算法作参考实例做实验时中点裁剪算法换编写编码裁剪算法
     2. 实验容 1)
     函数形式编写编码裁剪算法相关子算法
     Var xlxrybytreal procedure clip(x1y1x2y2real) labelreturn type edge(LRBT)
     outcodeset of edge Var cc1c2outcodexyreal Procedure
      code(xyrealVar
     coutcode)
     Begin c[ ]
     If xxl then c[L]
      Else if xxr then c[R]
     If yyb then cc+[B]
      Else if yyt then cc+[T]
     End {end of code} Begin {main}
     Code(x1y1c1)code(x2y2c2) While (c1[]) or (c2[]) do
      Begin
     if c1*c2[] then return{显然见}
      cc1if c[] then cc2
      If L in c then begin
      xxlyend{左边界求交}
      If R in c then begin
      xxryend {右边界求交}
      If B in c then begin
     xyyb end {底边界求交}
      If T in c then begin
     xyyt end {顶边界求交} If cc1 then begin
      x1xy1y
      code(xyc1) end
     Else begig
      x2xy2y
     code(xyc2) end End{End of while} Line(x1y1x2y2)
     Return end {end of clip}
     2)
     交互产生矩形裁剪框输入斜率直线段始终点先画出直线段然调裁剪算法画出裁剪保留见线段部分
     3)
      VCAD 绘图系统中绘图直线裁剪子菜单找合适修改点实验求编写编码裁剪算法换掉工程文件中中点裁剪算法通调试验证编写编码裁剪算法正确性
     实验四
     面区填充(YX 算法)
     1. 实验目 通 YX 面区填充算法调试掌握:
     1)
     边形面区填充算法数组织 2)
     利相关性提高算法效率 3)
     奇异点处理方法 4)
     提高程序设计力
     2. 实验容 1)
     函数形式编写 YX 面区填充算法 2)
      VCAD 绘图系统中绘图面区填充子菜单找合适修改点实验求编写面区填充算法插入工程文件中通调试验证编写面区填充算法正确性操作时鼠标交互出边形干顶点画出边形然调编写 YX 面区填充算法填充选颜色填充边形
     实验五
     贝塞尔曲线生成算法设计调试
     实验目 掌握曲线曲面数学理基础通调试绘制 Bezier 曲线加深学 数学理理解通二条 Bezier 曲线拼接设计掌握曲线拟合方法
      二容求
     3
     1三次 Bezier 曲线公式:P(t)P i
     B i3 (t)
     出发编写生成 Bezier
     i0 曲线程序求:
     a)
     鼠标输入特征边形四点然调 Bezier 曲线生成算法绘出曲线
     b)
     重复步 34 遍验证编写算法正确性
     typedef cptype float[4][4] float cc (int nint i) 计算 n(i(ni))
     {int j
      float a
      a1
      for(ji+1jnj++) a*j
      for(j2jnij++) aj
      return a
     }
     float b_lend(Int iint nfloat t2) 计算 B in (t)
     {float v
      vcc(ni) for(j 1jij++) v*t2
      for(j1jnij++) v*(1t2)
      return v
     } void bezier(float x0float y0float z0float t0int ncptype cp2)定 t0计算 f(t0) {int i
     float b1g
     for(i0ini++) {b1b_lend(int0)
      x0x0+cp2[i1]*b1 y0y0+cp2[i2]*b1 z0z0+cp2[i3]*b1 }} void draw_curv(int kcptype cp1) t 分成 k 等份循环迭代绘出曲线
     {int ijx1y1z1
     float xyzdelt
     delt10k
     t0
     for(i1iki++)
     {xyz0
      bezier(xyzt3cp1)
      if(t0) moveto(xy)
     else lineto(xy)
      t+delt }}
     2特征边形改五控制点修改程序绘出四次曲线
     3实现二条三次 Bezier 拼接连接点处保持阶连续
     实验结:
     实验程辛苦特处理量数量时变量容易出错需极耐心计算时例DDA 算法画圆时需强制类型转换数遗漏导致程序出许奇怪错误调试久发现外贝塞尔曲线算法编写中数学函数调复杂常常翻阅 API 文档
     困难该图形系统熟悉导致处理鼠标操作时遇难题仔细解决
     通次实验整图形系统较透彻解时数学函数次加深印象更重掌握许实计算机图形学算法 MFC 提升
     次实验中积累验软件开发中受益匪浅
     2021 年 1 月 3 日




    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 20 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    计算机图形学实验报告

    计算机图形学实验报告 一、 实验题目:利用计算机编程语言绘制图形,主要实现以下内容:(1)、中点算法生成任意斜率直线,并设置线型线宽。(2)、中点算法生...

    2年前   
    430    0

    计算机图形学实验报告

    《计算机图形学》实验报告姓 名: 学 号: 班 级: 计算机班 ...

    6个月前   
    200    0

    计算机病毒及其防范技术实验报告(例文)

    计算机病毒及其防范技术实验报告(例文)   计算机病毒及其防范技术 课程实验报告   项目名称:  对于特定病毒的查杀程序  姓名:  雷雨诗   日期:  2021...

    2年前   
    880    0

    计算机实验报告

    计算机实验报告  课程:大学计算机基础         班级 : *****          学号:**       姓名:***  组别:        同组者姓名:           ...

    10年前   
    611    0

    计算机图形学模拟试卷和答案

    北京语言大学网络教育学院《计算机图形学》模拟试卷一注意: 1.试卷保密,考生不得将试卷带出考场或撕页,否则成绩作废。请监考老师负责监督。2.请各位考生注意考试纪律,考试作弊全部成绩以零分计算。...

    3年前   
    1163    0

    计算机基本组成实验报告

    电 子 科 技 大 学 实验报告   学生姓名:                           学 号:   一、     实验室名称:  计算机学院硬件实验室   二、 ...

    12年前   
    12509    0

    计算机应用基础实验报告

    目的:理解微型计算机的结构和工作原理,掌握组装一台微型计算机所需的硬件由几分钟组成,并学会配置微机硬件配置。

    6年前   
    3376    0

    计算机组成原理实验报告 (2)

    计 算 机 组 成 原 理 实 验 报 告Computer Organization Lab Reports__________________________________________...

    1年前   
    474    0

    计算机组成原理实验报告

    计算机组织与体系结构实 验 报 告评 语:成绩教 师: 年 月 日班 级: ________学 号: __________...

    1年前   
    433    0

    计算机网络实验报告

    1.理解电子邮件的工作原理;2.掌握电子邮件的申请方法;3.掌握电子邮件的使用方法。

    3年前   
    651    0

    计算机网络实验报告

    (1)理解远程登录的工作原理;(2)掌握远程登录的设置方法;(3)熟悉远程桌面的使用方法;(4)理解端口的含义。

    3年前   
    624    0

    计算机组成原理实验报告 (1)

    郑州航空工业管理学院计算机科学与应用系实验报告课 程 名: 计算机组成原理 学 号: 姓 名: ...

    1年前   
    386    0

    计算机网络实验报告

    1、观察教学机房,了解计算机网络结构,并画出计算机网络拓扑结构图。 2、了解计算机网络中的网络设备,并了解每台计算机上使用的网络标识、网络协议。 3、制作2根直通双绞线和2根交叉线,并测试。 4...

    4年前   
    1628    0

    计算机图形学期末考试题库

    计算机图形学期末考试题库  一、单项选择题1.  计算机图形显示器一般使用什么颜色模型?(B)A)RGB; B)CMY; C)HSV ; D)HLS     2.  哪一个不是国际标准化...

    3年前   
    1161    0

    计算机学习培训总结例文

    计算机学习培训总结例文  计算机培训总结范文  首先,在这培训期间认识了很多同行的朋友,和教育专家,从和他们的交谈中我学到很多的新的理念和教育的方法,从中受益匪浅,让我知道作为一个中职的教师的...

    10年前   
    416    0

    大学微型计算机原理及应用本科实验报告

    本科实验报告课程名称: 微型计算机原理及应用 实验项目: 多位十进制数相加 实验地点: 博学馆四层微机实验室 专业班级: ...

    1年前   
    393    0

    《计算机网络基础》课内实验报告

    《计算机网络基础》课内实验学 部: 经济与管理学院 专 业: 市场营销(网络营销) 班 级: 学 号: ...

    2年前   
    326    0

    计算机操作系统内存分配实验报告

    计算机操作系统内存分配实验报告一、实验目的熟悉主存的分配与回收。理解在不同的存储管理方式下,如何实现主存空间的分配与回收。掌握动态分区分配方式中的数据结构和分配算法及动态分区存储管理方式及其实...

    3年前   
    604    0

    计算机上机实验内容及实验报告要求

    计算机上机实验内容及实验报告要求  一、《软件技术基础》上机实验内容  1.顺序表的建立、插入、删除。  2.带头结点的单链表的建立(用尾插法)、插入、删除。  二、提交到个人10m硬盘空间的...

    12年前   
    767    0

    XX大学计算机网络实验报告

    计算机网络实验报告册实验一 交换机基本配置实验学时:2学时实验类型:验证实验要求:必修一、实验目的1.掌握桌面网络组建方法2.掌握 Quidway S系列中低端交换机几种常见配置方法二、实验...

    3年前   
    587    0

    文档贡献者

    z***i

    贡献于2022-01-01

    下载需要 20 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档