习题解 余敦辉 湖北大学数计学院
习 题 解 答 余敦辉 湖北大学 数计学院
习题解答 1、试用 liang- bar sky算法裁剪图中的线段AB。 A(33) 窗口 X B(-2,-1)
习题解答 窗口 B(-2,-1) A(3,3) x y 1、试用liang-barsky算法裁剪图中的线段AB
3. Li ang-Bar sky算法 分析:P1(x1,y1)和P2(x2,y2) 左 右 上 p p 将线段看成由方向性:外到内内到外
3. Liang-Barsky算法 分析:P1(x1,y1)和P2(x2,y2) 将线段看成由方向性:外到内 内到外 p1 p2 p1 p1 左 右 下 上
3. Liang- Barsky算法 任意直线段(X1,Y1)J(ⅨX2,Y2)的参数方程: x=x1+u(x2-X1) y=y1+uy2y1)0≤u≤1 给定裁剪窗口: wyt 窗 wy WXP X
3. Liang-Barsky算法 x=x1+u·(x2-x1) y=y1+u·(y2-y1) 0 ≤ u ≤ 1 任意直线段I(X1,Y1)J(X2,Y2)的参数方程: x y o wyt wyb wxl wxr 窗口 给定裁剪窗口:
wy 窗 3. Liang- Barsky算法 wyb- 如果任一点()在窗口内则 u(X1-×2)≤X1-Wx左边界 Wxx2+u(x2x1)≤Wxru(x2x)≤WXr-x1右边界 Wyb≤y1+u(y2y1)≤Wytu(y1y2)≤y1-Wyb下边界 u(y2-y1)≤Wyt-y1上边界 p1=×1×2q1=X1-WX 2 2×1q2=WXr-X1 pk≤qk=1,2,3, p3= y1-y2 q3= y1-wyb P4= y2-y1 g4=wyt-y1 ◇取“=”时求得的u对应的是直线与窗口边界的交点 ☆1、2、3、4分别对应左、右、下、上边界裁剪后的两端点是哪些点? 今U0和时分别对应直线的起点和中点
3. Liang-Barsky算法 wxl≤ x1+u·(x2-x1) ≤ wxr wyb≤y1+u·(y2-y1) ≤ wyt u·(x1-x2) ≤ x1 – wxl 左边界 u·(x2-x1) ≤ wxr – x1 右边界 u·(y1-y2) ≤ y1 – wyb 下边界 u·(y2-y1) ≤ wyt – y1 上边界 p1 = x1-x2 p2 = x2-x1 p3 = y1-y2 p4 = y2-y1 令: q1 = x1 – wxl q2 = wxr – x1 q3 = y1 – wyb q4 = wyt – y1 u·pk≤qk k=1,2,3,4 如果任一点()在窗口内则: ❖ 取“=”时求得的u对应的是直线与窗口边界的交点 ❖ 1、2、3、4分别对应左、右、下、上边界 ❖ U=0和1时分别对应直线的起点和中点 x y o wyt wyb wxl wxr 窗口 裁剪后的两端点是哪些点?