第四章
图形变换
图形变换是计算机图形学的基础内容之一。图形在计算机上的显示可以比喻为用假想的照相机对物体进行
拍照,并将产生的照片贴在显示屏上的指定位置进行观察的过程。三维物体要在屏幕上显示首先要做的就是投
影变换。此外,还要求能够对物体进行旋转、缩放、平移变换。绘图过程还要用窗口规定显示物体的哪个部分,
用视区来规定将窗口中的内容显示在屏幕上的什么位置。图形显示的过程见下图。
图
4.1
图形显示的坐标变换过程
在本章中,我们将实现二维图形的几何变换、三维图形的投影变换,以及对图形进行裁剪的算法。
4.1
变换的数学基础
在计算机图形学的图形变换过程中要大量的用到向量、矩阵以及它们之间的运算。本小节对这些知识做简
要介绍。
一、向量及向量运算
一个物理量,如果我们只关心其数值的大小(例如物体的质量、体积、密度)
,则这样的量统称为标量,如
果我们既关心其数值大小,
还关心其方向
(如速度)
,
则这样的两统称为向量。
标量一般用普通字体的英文字母
显示,而向量一般用黑体英文字母显示。
设向量
1
1
1
(
,
,
)
x
y
z
a
,
2
2
2
(
,
,
)
x
y
z
b
,有关的向量运算有:
(
1
)
两个向量的和、差运算
1
2
1
2
1
2
(
,
,
)
x
x
y
y
z
z
a
b
(
2
)
两个向量的点乘运算
1
1
2
2
3
3
x
y
x
y
x
y
a
b
(
3
)
两个向量的叉乘运算