计算机图形学 期末复习 微课版 孔令德 四、二维变换与裁剪 期末复习 您所在的位置:网站首页 区域经纬度坐标表示 计算机图形学 期末复习 微课版 孔令德 四、二维变换与裁剪 期末复习

计算机图形学 期末复习 微课版 孔令德 四、二维变换与裁剪 期末复习

2023-06-26 17:29| 来源: 网络整理| 查看: 265

二维变换 平移变换

平移变换用齐次坐标表示。对点P(x,y)作平移变换

image.png

比例变换

image.png 点的坐标在x方向放大为原先的Sx倍,在y方向放大为原先的Sy倍,这种变换称为比例变换

旋转变换

image.png (逆时针旋转)

反射变换

image.png

错切变换

image.png

image.png

齐次坐标

作用:将二维变换统一表示为一个矩阵,即用一种一致的乘法处理二维变换问题。

平移

image.png

比例

image.png

旋转

image.png 将两个sin的正负性互换 为顺时针

反射

image.png

错切

image.png

二维复合变换

复合变换是指图形做一次以上的几何变换。 M=MnMn-1…M2M1 M为复合变换矩阵,后面的为单次基本几何变换矩阵 变换方法:首先将参考点平移到坐标系原点,对坐标系原点进行比例变换或 旋转变换,然后再进行反平移,将参考点平移回原位置。

例4-1 一个由顶点P0(10,10),P1(30,10)和P2(20,25) 所定义的三角形,相对于点Q(10,25)逆时针旋转30°,求变 换后的三角形顶点坐标。 image.png 世界坐标系:三维直角世界坐标系可分为右手坐标系与左手坐标系两种,zw轴的指向按照右手螺旋法则或左手螺旋法则从xw轴转向yw轴确定。 image.png 用户坐标系(建模坐标系):建模坐标系,右手系,方便建模设置 观察坐标系:视点坐标系,左手系,从眼睛位置描述物体 屏幕坐标系:二维或三维坐标系,左手系 设备坐标系:设备坐标系,x轴向右,y轴向下可以规范化为规格化坐标系,x [0-1] ,y[0-1]。

窗口与视图

在观察坐标系中定义的确定图形显示内容的区域称为窗口。此时窗口内的图形是用户希望在屏幕上看到的,窗口是裁剪图形的标准参照物。 在设备坐标系中定义的输出图形的区域称为视区。视区和窗口常为矩形,大小可以不相同。一般情况下,用户把窗口内感兴趣的图形输出到屏幕上相应的视区内。

窗视变换

图形输出需要从窗口到视区的变换,只有位于窗口内的图形才能在视区中输出,并且输出的形状要根据视区的大小进行适当调整,这称为窗视变换 image.png image.png image.png

裁剪

image.png

ab:RC0=0000,RC1=0000 RC0|RC1=0000,“或”为零完全可见 cd:RC0=0100,RC1=0100 RC0&RC1=0100 ,“与”非零完全不可见 gh:RC0=1000,RC1=0010 RC0 & RC1=0000 “与”为零部分可见 ef: RC0=0001,RC1=0000 RC0 & RC1=0000 “与”为零部分可见 ij:RC0=0001,RC1=1000 RC0 & RC1=0000 “与”为零完全不可见 image.png

Cohen-Sutherland裁剪算法

如果一段直线的两个端点都位于窗口内,那么该段直线就完全位于窗口之内,应“简取” 。 如果一段直线的两个端点位于窗口的同一侧,那么该段直线就完全位于窗口之外,应“简弃”。 若不能将直线段“简取”或“简弃”,循环地用窗口的4条边界与直线段“求交”并检测是否“简取”或者“简弃”,直到剩余部分完全位于窗口之内或完全位于窗口之外。 image.png 算法: (1)若直线段的两个端点的区域编码都为0,即RC0|RC1=0(二者按位相或的结果为零,即RC0=0且RC1=0),说明直线段的两个端点都在窗口内,应“简取”。 (2)若直线段的两个端点的区域编码都不为0,即RC0&RC1≠0(二者按位相与的结果不为零,即RC0≠0且RC1≠0),即直线段位于窗外的同一侧,说明直线段的两个端点都在窗口外,应“简弃”。 (3)若直线段既不满足“简取”也不满足“简弃”的条件,则需要与窗口进行“求交”判断。这时,直线段必然与窗口边界或窗口边界的延长线相交,分两种情况处理。 算法关键点 P0:RC0=0001, P:RC1=0000 RC0&RC1=0000“与”为零, P0P不能直接抛弃。 处理方法:保证一个端点在窗口外(如P0),这样此端点 到交点之间的线段无需判断,可以直接抛弃。用交点来代 替该端点(P0=P)。

中点分割算法

采用二分算法的思想来逐次计算直线段的中点Pm以逼近窗口边界。在给定的 误差范围内,使用P0和Pm中点来近似交点。 算法简单地把起点为P0、终点为P1的直线等分为两段直线,对每一段重复“简取”和“简弃”处理,对不能处理的直线继续等分下去,直到完成裁剪工·作。 P=(P0+P1)/2 image.png

Liang-Barsky算法

起点为P0(x0,y0),终点为P1(x1,y1)直线的参数方程为 image.png 对于坐标为(wxl,wyb)、(wxr,wyt)的裁剪窗口,直线段裁剪条件: image.png image.png

n=1表示左边界;n=2表示右边界;n=3表示下边界;n=4表示上边界。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有