计算机图形学二维变换.
窗口到视区(viewport)的转换 —实例推导
(VXR,VYT) (WXR,WYT) (Xv,Yv)
(Xw,Yw)
(WXL,WYB)
(VXL,VYB)
窗口区定义为(WXL,WXR,WYB,WYT),
视区定义为( VXL,VXR,VYB,VYT )
根据相似性原理,得出计算公式:
xw WXL xV VXL WXR WXL VXR VXL Yw WYB yV VYB WYT WYB VYT VYB
4.设备坐标系
(左手法则)
显示器以分辨率确定坐标单位, 原点在左下角或左上角。
如屏幕坐标系: 在显示器上指定窗口和视区,必须进行由NDC到物理设备坐标变 换。
5.规格化设备坐标系(NDC)
• 为了使图形处理过程做到与设备无关,通常采用一种虚拟设备 的方法来处理,其结果是按照一种虚拟设备的坐标规定来输出 的。这种设备坐标规定为0≤X≤1,0≤Y≤1,这种坐标系称之 为规格化设备坐标系。 • 在世界坐标系(WC)与设备坐标系(DC)之间定义的一个与设 备无关的规格化设备坐标系(按左手法则)。取值范围: (0.0,0.0,0.0)~(1.0,1.0,1.0)
计算机图形学基础
第4章 二维变换
本章主要内容
• 窗口与视区
– 坐标系、窗口与视区
• 图形变换的数学基础 • 二维几何变换
– 基本变换、复合(组合)变换
• 二维图形的生成程序实现
目前为止,掌握的基本技能
• 基本绘图函数的使用:
– pDC->SetPixel – Cpen类(线型与线宽的设置)等
• • • • •
4.2 图形变换的数学基础
• 矢量运算 • 行列式 • 矩阵
特别注意: 矩阵相乘不适合交换律
• 矩阵运算
• 单位矩阵 • 逆矩阵 • 转置矩阵
上机编程:实现矩阵的输入与输出; 实现两个矩阵相乘。
变换的数学基础(1/4)
• 矢量
u x U u y u z
vx V v y vz
• 例5-1:
设窗口区为window(0.0,1.0,0.0,1.0) (已规格化) , 视图区为viewport(100,400,100,400),有用户 坐标点Xw,Yw为(0.5,0.3),求其对应的屏幕坐标 Xv,Yv。 解题步骤: (1)绘制其坐标示意图; (2)写出(推导)计算公式; (3)算出对应坐标值。
• 性质
U V V U U V 0 U V U U 0 U 0
变换的数学基础(3/4)
– 矢量的长度
• 单位矢量 • 矢量的夹角
2 2 U U U ux u y uz 2
U V cos q U V
– 矢量的叉积
i U V ux vx
j uy vy
k uz vz
变换的数学基础(4/4)
• 矩阵 – m n
– – – – – – – – –
阶矩阵
n阶方阵 零矩阵 行向量与列向量 单位矩阵 矩阵的加法 矩阵的数乘 矩阵的乘法 矩阵的转置 矩阵的逆
4.3 二维基本几何变换
• 点的变换:
– – – – – – 恒等变换 平移变换 比例变换 旋转变换 对称变换 错切变换
• 计算机图形场景中所有图形对象的空间定位和定义,包括观 察者的位置视线等,是其它坐标系的参照。
2.模型坐标系(Modeling Coordinate System,也称局部坐标系)
• 物体的局部坐标系,物体的表示简单。
世界坐标系xoy
模型坐标系x’o’y’
3.用户坐标系(UCS) :
• 为了方便交互绘图操作,根据用户的观察需要而设定的坐标, 可以变换角度、方向等。
直线、圆生成算法的实现 多边形扫描转换与填充 颜色的改变,线型与线宽的设置 简单平面图形的设计 **简单动画设计
例如
• 奥运五环绘制与填充; • 字符的绘制与填充;
图形变换述
• 图形变换是计算机图形学的基础内 容。 • 作用:
1. 二维图形的生成 2. 复杂的图形的生成(由简单图形变换) 3. 三维物体的二维表示
2. 视区
– 在设备坐标系(屏幕或绘图纸)上指定的矩形区域 , 用来指定窗口内的图形在屏幕上显示的大小及位置。
3. 窗口到视区的变换
“取景器”=窗 口
视区1 视区2 (viewport)
4.1 坐标系、窗口与视区(续)
4.1.4规格化变换 从窗口到视区的变换,称为规格化变换。 (Normalization Transformation) y wyT wyB o wxL wxR x y W(窗口区) (wx,wy) vyB o vx L vxR vyT (vx,vy) x V(视图区)
– 矢量和
u x vx U V u v y y u z vz
变换的数学基础(2/4)
– 矢量的数乘
kux k U ku y kuz
– 矢量的点积
U V u x vx u y v y u z vz
• 包括:
• •
1. 二维、三维图形的平移、旋转、变比、对称等变换; 2. 级联(复合)变换
——相对于某点的比例变换、旋转变换 ——相对于某直线的对称变换
图形变换概述
包括: --几何变换:改变几何形状和位置 --非几何变换:改变图形的颜色、线型等属性
基本几何变换(二维、三维)
几何变换
投影变换(三维)
坐标变换
用户域
窗口区
4.1.2坐标的转换
用户Y
用户坐标
观察坐标
(X0, Y0)
0
用户X
观察坐标到用户坐标的变换矩阵(写出):
将观察坐标原点平移;旋转观察坐标与用户坐标重叠
4.1 坐标系、窗口与视区(续) 4.1.3什么是窗口、视区?
1. 窗口
–
在世界坐标系(WCS)中指定的矩形区域 , 用来指定要显示的图形 。
平行投影 透视投影
二维变换举例
旋转变换
y
(x’, y’) 对称变换
q
( x, y)
f
x
平行投影变换:三视图、轴测图
透视变换:透视图
二维图形的显示流程图
4.1 坐标系、窗口与视区
• 4.1.1坐标系:建立了图形与数之间的对应联系。 1.世界坐标系(World Coordinate System)