欢迎来到天天文库
浏览记录
ID:48756996
大小:367.51 KB
页数:13页
时间:2020-01-22
《计算机图形学——Liang-Barsky.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Liang-Barsky裁剪算法Contents算法思想例题演示Contents1Contents2算法思想一条两端点为P1(x0,y0)、P2(x1,y1)的线段用参数方程表示为:x=x0+u(x1-x0)=x0+u∆xy=y0+u(y1-y0)=y0+u∆y;其中,0≤u≤1线段的参数方程与点裁剪条件结合,得到不等式xmin≤x0+u∆x≤xmaxymin≤y0+u∆y≤ymax算法思想用upK≤qK(k=1,2,3,4)表示上式,则参数p、q定义为:p1=-∆x,q1=x0-xminp2=∆x,q2=xmax-x0p3=-∆y,q3=y0-yminp4=∆y,q4=ymax-y0
2、算法思想根据pk的值判断线段的方向:pk=0线段平行于裁剪边界qk<0线段完全位于边界外qk≥0线段位于平行边界内pk<0线段从裁剪边界延长线的外到内pk>0反之算法思想pk≠0时,计算线段与边界k延长线的交点u值:对每条直线,计算u1和u2。算法思想u1----线段从外到内遇到的矩形边界决定(p<0)计算rk=qk/pku1=max{0,r}u2----线段从内到外遇到的矩形边界决定(p>0)计算rk=qk/pku2=min{r,1}算法思想若u1>u2,线段完全在裁剪窗口外;否则,由参数u1和u2计算出裁剪后的线段端点例题演示F1(1,-2)F2(6,3)(8,4)(0,0)yxS
3、tep1:写出参数方程,计算∆x和∆y。x=x0+u∆xy=y0+u∆y∆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=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=max{0,-1/5,2/5}=2/5u2=min{1,7/5,6/5}=1EdgepkqkrkLeft-51-1/5R
4、ight577/5Bottom-5-22/5Top566/5例题演示Step3:判断直线与裁剪窗口的关系。u1=2/5,u2=1由于u1
此文档下载收益归作者所有