计算机图形剪裁程序说明,计算机图形学实验报告实验2裁剪算法实验
裁剪算法实验
一、 实验目的:
直线段的裁剪:编码裁剪算法,中点分割裁剪算法。
二、实验内容:
//BasicGraph.cpp
//请将下列裁剪程序补充完整,并用注释说明是何种裁剪算法
void Encode (int x,int y,int *code,int XL,int XR,int YB,int YT) {
//请将此程序补充完整
int c=0;
if(x
else if(x>XR) c=c|RIGHT;
if(y
else if(y>YT) c=c|TOP;
(*code)=c;
}
//编码裁剪算法:
void C_S_Line(POINT &p1,POINT &p2,int XL,int XR,int YB,int YT) {
//请将此程序补充完整
int x1,x2,y1,y2,x,y,code1,code2,code;
x1=p1.x; x2=p2.x; y1=p1.y; y2=p2.y;
Encode(x1,y1,&code1,XL,XR,YB,YT);
Encode(x2,y2,&code2,XL,XR,YB,YT);
while(code1!=0||code2!=0)
{
if((code1&code2)!=0) return;
code=code1;
if(code1==0) code=code2;
if((LEFT&code)!=0)
{x=XL;y=y1+(y2-y1)*(XL-x1)/(x2-x1);}
else if((RIGHT&code)!=0)
{x=XR;y=y1+(y2-y1)*(XR-x1)/(x2-x1);}
if((BOTTOM&code)!=0)
{y=YB;x=x1+(x2-x1)*(YB-y1)/(y2-y1);}
else if((TOP&code)!=0)
{y=YT;x=x1+(x2-x1)*(YT-y1)/(y2-y1);}
if(code==code1)
{x1=x;y1=y;Encode(x,y,&code1,XL,XR,YB,YT);}
else
{x2=x;y2=y;Encode(x,y,&code2,XL,XR,YB,YT);}
}
计算机图形剪裁程序说明,计算机图形学实验报告实验2裁剪算法实验相关推荐
- 计算机图形学实验报告 裁剪,计算机图形学-实验报告三-图形裁剪算法
<计算机图形学-实验报告三-图形裁剪算法>由会员分享,可在线阅读,更多相关<计算机图形学-实验报告三-图形裁剪算法(9页珍藏版)>请在人人文库网上搜索. 1.图形裁剪算法1. ...
- 《计算机图形学》实验报告 Cohen Sutherland裁剪算法
一.实验目的和要求 熟悉光栅图形学中的相关直线段裁剪算法.理解Cohen-Sutherland裁剪算法. 二.实验内容 实现Cohen-Sutherland编码线段裁剪算法,能看到裁剪前后的屏幕显示效 ...
- 计算机图形学 裁剪算法源代码,OpenGL计算机图形学梁友栋裁剪算法实验代码及运行结果.doc...
OpenGL计算机图形学梁友栋裁剪算法实验代码及运行结果.doc (10页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 14.9 积分 .<计算 ...
- 计算机图形学学习报告,计算机图形学学习报告.pdf
精选公文范文 计算机图形学学习 报告 篇一:计算机图形学学习心得体会 计算机图形学学习心得体会 计算机科学与技术与技术 班 学号: 1.计算机图形学 计算机图形学(Computer Graphics, ...
- 计算机图形学学习报告,计算机图形学学习报告.doc
计算机图形学学习报告 篇一:计算机图形学学习心得体会 计算机图形学学习心得体会 计算机科学与技术与技术 班 学号: 1.计算机图形学 计算机图形学(Computer Graphics,简称CG),狭义 ...
- 计算机微程序控制器实验报告,计算机组成原理实验报告三:微程序控制器实验.doc...
计算机组成原理实验报告三:微程序控制器实验.doc 微程序控制器实验报告一. 实验目的1 掌握微程序控制器的功能.组成知识.(2)掌握为程序的编制.写入.观察微程序的运行二.实验设备PC机一台,TD- ...
- 计算机操作系统存储管理实验报告,《操作系统》存储管理实验报告
<操作系统>存储管理实验报告 ____大学____学院实验报告课程名称: 计算机操作系统 实验名称: 存储管理实验 实验日期: 班级: 姓名: 学号: 仪器编号: XX 实验报告要求:1. ...
- 计算机组成原理算术运算实验报告,《计算机组成原理》实验报告---8位算术逻辑运算实验.doc...
<计算机组成原理>实验报告---8位算术逻辑运算实验 计算机专业类课程 实验报告课程名称:计算机组成原理 学 院:信息与软件工程学院 专 业:软件工程 学生姓名: 学 号: 指导教师:日 ...
- 《程序设计基础》实验报告(第6次实验)
<程序设计基础>实验报告(第6次实验) 学号 姓名 班级 实验名称:组合类.继承与多态 实验目的:掌握组合类.继承与多态的概念和使用 实验内容:(1)字符串类Mystring定义如下: c ...
最新文章
- 【转帖】Nginx优化use参数epoll,kqueue,rtsig,eventport,poll
- MySQL 插入数据时,中文乱码问题的解决
- Visual Studio 2019预览,净生产力
- 超赞!机器学习画图模板ML Visuals更新了
- 6.Java 面试题整理(XML)
- python跳出循环重新开始_python怎么跳出循环
- 【Tomcat】安装Tomcat服务器Tomcat的目录结构
- execl执行linux命令,Excel 调用Shell命令执行bash脚本和命令行代码
- 跟CSDN客服反馈的交流
- golang 如何通过cron 表达式解析出上一次触发时间
- 离散数学思维导图笔记
- 【点云阅读笔记】Learned Point Cloud Geometry Compression
- Birt报表开发工具及Birt runtime部署
- (自用随笔)PAT A1010
- 魅族手机里的便签怎么导出转移到新的手机上?
- R语言ggplot2可视化:使用patchwork包将两个ggplot2可视化结果图像垂直堆叠排列进行组合构图(vertically stack the plots)
- SCAU 18942 偏爱字母
- SQLserver主从同步报错:Message: 无法创建 AppDomain “mssqlsystemresource.dbo[runtime].
- VC2005断点进阶
- 联盟链和公有链混合架构如何实现?Hyperledger核心开发者陈昌访谈