计算机图形学——Liang-Barsky_第1页
计算机图形学——Liang-Barsky_第2页
计算机图形学——Liang-Barsky_第3页
计算机图形学——Liang-Barsky_第4页
计算机图形学——Liang-Barsky_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Liang-Barsky 裁剪算法裁剪算法Contents算法思想算法思想 例题演示例题演示Contents 1Contents 2算法思想算法思想一条两端点为一条两端点为P1(x0,y0)、P2(x1,y1)的线段用的线段用参数方程参数方程表示为:表示为:x=x0+u(x1-x0)=x0+uxy=y0+u(y1-y0)=y0+uy;其中,;其中,0u 1线段的参数方程与点裁剪条件结合,得到不等式线段的参数方程与点裁剪条件结合,得到不等式 xminx0+uxxmax yminy0+uyymax算法思想算法思想用用upKqK(k=1,2,3,4)表示上式,则参数表示上式,则参数p、q定义为:定义

2、为:p1=-x, q1=x0-xminp2=x, q2=xmax-x0p3=-y, q3=y0-yminp4=y, q4=ymax-y0算法思想算法思想根据根据pk的值判断线段的方向:的值判断线段的方向: pk=0 线段线段平行平行于裁剪边界于裁剪边界qk0 线段完全位于线段完全位于边界外边界外qk0 线段位于平行线段位于平行边界内边界内 pk0 反之反之算法思想算法思想pk0时,计算线段与边界时,计算线段与边界k延长线的交点延长线的交点u值:值:对每条直线,计算对每条直线,计算u1和和u2。kkpqu 算法思想算法思想u1-线段从外到内遇到的矩形边界决定(线段从外到内遇到的矩形边界决定(p0

3、)计算计算rk=qk/pku2=minr,1算法思想算法思想若若u1u2,线段完全在裁剪,线段完全在裁剪窗口外窗口外;否则,由参数否则,由参数u1和和u2计算计算出裁剪后的线段端点出裁剪后的线段端点例题演示例题演示F1(1,-2)F2(6,3)(8,4)(0,0)yxStep1: 写出参数方程,计算写出参数方程,计算x和和y。 x=x0+ux y=y0+uy x=5 y=5例题演示例题演示Step2:计算:计算pk、qk和和rk的值,并确定的值,并确定u1、u2的值。的值。p1=-x=-5, q1=x0-xmin=1, r1=q1/p1=-1/5p2=x=5, q2=xmax-x0=7, r2

4、=q2/p2=7/5p3=-y=-5, q3=y0-ymin=-2, r3=q3/p3=2/5p4=y=5, q4=ymax-y0=6, r4=q4/p4=6/5例题演示例题演示 将上面的计算列入表格:将上面的计算列入表格: 故:故: u1=max0,-1/5,2/5=2/5 u2=min1,7/5,6/5=1EdgepkqkrkLeft-51-1/5Right577/5Bottom-5-22/5Top566/5例题演示例题演示Step3:判断直线与裁剪窗口的关系。:判断直线与裁剪窗口的关系。u1=2/5, u2=1 由于由于u1u2,则有,则有xA=x0+u1x=3; yA=y0+u1y=0 xB=6; yB=3 故,线段故,线段F1F2中(中(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论