深入探索正交投影变换
空间解析几何的正交变换正交变换的性质与计算

空间解析几何的正交变换正交变换的性质与计算正交变换是一类在空间解析几何中具有重要地位的变换。
它是指在空间中既保持长度不变,又保持两向量之间的夹角不变的变换。
在此文章中,我们将探讨正交变换的性质与计算方法。
一、正交变换的定义与性质正交变换在空间解析几何中被广泛运用。
它是指一个线性变换,使得空间中的任意向量经过该变换后,向量的长度保持不变,并且向量之间的夹角也保持不变。
具体而言,设给定空间中的两个向量A和B,经过正交变换T后,它们的长度和夹角分别为A'和B'。
则有以下性质:1. 长度不变:经过正交变换T后,向量的长度保持不变,即|A|=|A'|,|B|=|B'|。
2. 夹角不变:经过正交变换T后,向量之间的夹角保持不变,即∠(A,B)=∠(A',B')。
3. 内积不变:经过正交变换T后,向量之间的内积保持不变,即A·B=A'·B'。
4. 正交性:若经过正交变换T后的向量A'与向量B'垂直(即A'⊥B'),则原始向量A与B也一定垂直(即A⊥B)。
二、正交变换的计算方法根据上述性质,我们可以利用矩阵来计算正交变换。
设空间中的向量A=[a₁, a₂, a₃],我们可以构造一个正交矩阵T,满足以下性质:1. T的行、列是正交单位向量2. T的行、列是长度为1的向量有了正交矩阵T,我们可以通过矩阵乘法来计算变换后的向量A':A' = T·A计算变换后的向量B'时,同样可以使用上述公式。
对于特定的正交变换,我们可以使用不同的矩阵来进行计算。
例如:1. 旋转变换:设给定一个旋转轴n和一个旋转角度θ,对于任意向量n,它的旋转变换可以表示为:R(θ) = [cosθ+nₓ²(1-cosθ), nₓnᵧ(1-cosθ)-n n sinθ, nₓn_z(1-cosθ)+n_ssinθ][nₓnᵧ(1-cosθ)+n_sn_z, nᵧ²(1-cosθ)+n n sinθ, nᵧn_z(1-cosθ)-n_ssinθ][nₓn_z(1-cosθ)-n_ssinθ, nᵧn_z(1-cosθ)+n_ssinθ, n_z²(1-cosθ)+nnsinθ]其中n = [nₓ, nᵧ, n_z]为旋转轴的单位向量,θ为旋转角度。
空间投影与正交变换

空间投影与正交变换空间投影与正交变换是数学中的重要概念和工具,用于描述空间中的几何变换和投影操作。
本文将简要介绍空间投影和正交变换的概念、应用以及相关的数学原理。
一、空间投影的概念和应用在几何学中,空间投影是指将一个点或一个物体映射到另一个平面或直线上的操作。
空间投影常被应用于计算机图形学、机器视觉等领域。
它可以用来创建三维模型、实现立体显示等。
空间投影的基本思想是利用一个中心投影点将三维空间中的点映射到一个平面上。
根据投影平面与投影中心的位置不同,可以得到不同类型的投影,如平行投影、透视投影等。
平行投影是指投影线与投影平面平行的投影方式,透视投影则是投影线通过一个中心点的投影方式。
在实际应用中,透视投影更为常见。
二、正交变换的概念和应用正交变换是指在三维空间中,通过旋转、平移和伸缩等操作将一个坐标系变换为另一个坐标系的线性变换。
正交变换具有保距离和保角度的特性,因此在几何学和物理学中得到广泛应用。
正交变换的基本操作包括旋转、平移和伸缩。
旋转是指将一个坐标系绕某一轴旋转一定角度;平移是指将坐标系沿着某个方向平移一定距离;伸缩是指通过缩放系数改变坐标系的比例关系。
正交变换在计算机图形学中扮演着重要的角色,它可以用来实现三维模型的变换、视点的变换等。
在物理学中,正交变换被广泛应用于刚体运动分析、光学现象研究等领域。
三、数学原理与公式推导空间投影和正交变换都涉及到一些数学原理和公式推导。
在此不展开详细推导,但是为了完整性,我将简要介绍一些基本的概念和公式。
1. 点到平面的投影距离公式:假设投影平面为 Ax+By+Cz+D=0,点 P=(x0,y0,z0) 到平面的投影点为 P'=(x',y',z'),则 P 到平面的距离为 d = (Ax0+By0+Cz0+D) / sqrt(A^2 + B^2 + C^2)。
2. 三维空间中的基本变换矩阵:对于一个三维点 P=(x,y,z),做正交变换可以表示为 P' = T * P,其中T 是一个 4x4 的变换矩阵。
正交投影与投影的应用

正交投影与投影的应用正交投影是一种常用的投影方式,广泛应用于多个领域,包括计算机图形学、建筑设计、工程制图等。
本文将从理论和应用两个方面来介绍正交投影及其应用。
一、正交投影的理论正交投影是指投影线与投影面垂直的一种投影方式。
在几何上,我们可以通过平行投影面、投影线与物体之间的相互关系来实现正交投影。
具体来说,我们选择一个投影面,并确保物体与投影面垂直,然后通过投影线将物体上各点连接到投影面上,得到物体在投影面上的投影图。
这种投影方式可以保持物体的形状和比例不变,但会损失深度信息。
二、正交投影的应用1. 计算机图形学在计算机图形学中,正交投影被广泛应用于三维物体的可视化和渲染。
通过将三维物体投影到二维屏幕上,我们可以实现虚拟场景的展示和交互。
正交投影可以确保物体在屏幕上的比例和形状与实际物体一致,从而提供更真实的视觉效果。
2. 建筑设计在建筑设计中,正交投影被用于制作平面图和立面图。
通过将建筑物的各个部分投影到水平投影面和侧面投影面上,我们可以观察到建筑物的布局、结构和外观。
正交投影在建筑设计中起到了重要的作用,帮助设计师理解和展示建筑物的各个方面。
3. 工程制图正交投影在工程制图中也有广泛的应用。
工程师使用正交投影来制作机械图、电路图、流程图等。
通过将三维物体的各个部分投影到不同的视图平面上,工程师可以清晰地展示物体的各个细节和构造,从而有助于制作和理解工程图纸。
总结正交投影作为一种常用的投影方式,被广泛应用于多个领域。
它通过投影线与投影面垂直的方式,保持物体的形状和比例不变,具有很好的可视化效果。
在计算机图形学、建筑设计和工程制图等领域,正交投影都发挥着重要的作用,帮助人们更好地理解和展示物体的特征和结构。
以上是对正交投影及其应用的简要介绍,希望能对您有所帮助。
正交投影作为一种重要的投影方式,其在不同领域的应用还有很多值得深入研究和探索的地方。
计算机图形学13投影变换

将坐标原点平移到点(a,b)。
01
平行投影
02
俯投影视图 将立体向xoy面作正投影,此时Z坐标取0;
03
投影变换 平行投影
使水平投影面绕X轴旋转-90,使与正投影面处于同一平面; 最后让图形沿Z轴平移dx=tx , dy=ty; 将x轴、y轴反向以与U、V两坐标轴方向一致; 将坐标原点平移至点O
不平行于投影面的平行线的投影会汇聚到一个点,这个点称为灭点(Vanishing Point)。 坐标轴方向的平行线在投影面上形成的灭点称作主灭点。 一点透视有一个主灭点,即投影面与一个坐标轴正交,与另外两个坐标轴平行。 两点透视有两个主灭点,即投影面与两个坐标轴相交,与另一个坐标轴平行。 三点透视有三个主灭点,即投影面与三个坐标轴都相交。
湖北大学 数计学院
1
讨论(续):
2
类似,若主灭点在 Y 轴或 X 轴上,变换矩阵可分别写为:
二点透视投影的变换矩阵
湖北大学 数计学院
在变换矩阵中,第四列的p,q,r起透视变换作用 当p、q、r中有两个不为0时的透视变换称为二点透视变换。假定p!=0, r!=0, q=0; 将空间上一点(x,y,z)进行变换,可得如下结果:
7.4 投影变换 7.4.2 平行投影 斜平行投影求法
知投影方向矢量为(xp,yp,zp)
设形体被投影到XOY平面上
形体上的一点(x,y,z)在xoy平面上投影后→(xs,ys)
∵投影方向矢量为(xp,yp,zp)
∴投影线的参数方程为:
01
03
02
04
05
7.4 投影变换 7.4.2 平行投影 斜平行投影求法 因为 所以 若令
则矩阵式为:
2-4.酉(正交)变换、正交投影

n
ur 是 L 的标准正交基,则:
u1 , u2 ,
ur , ur + 1 ,
un 是 C n的标准正交基。
n
定理2:n 阶矩阵 P为酉空间 C 正交投影的充分必 要条件是:
P=P =P
H
2
Department of Mathematics
Department of Mathematics
n阶酉(正交)矩阵,则
T : T ( x ) = Ax , x ∈ C n ( R n ) 为C n ( R n ) 上的酉(正交)变换
Department of Mathematics
二. 正交投影 定义: 设酉(欧氏)空间 V = L ⊕ M , L ⊥ M ,
T 为 V 的线性变换,
∀x ∈ V , x = x1 + x 2 ,
矩阵论电子教程
哈尔滨工程大学理学院应用数学系
Department of Mathematics
第 二 章
内积空间
Department of Mathematics
教学内容和基本要求
1.理解内积空间的概念,掌握正交基及子空间的正交关系. 2. 了解内积空间的同构的含义,掌握判断正交变换的判定 方法. 3. 理解酋空间的概念,会判定空间是否酋空间的方法, 4. 掌握正规矩阵的概念及判定定理和性质 重点: 难点: 内积空间的概念;正交基及子空间的正交关系 正交变换的判定方法
Department of Mathematics
§2.4 酉(正交)变换、正交投影 一, 酉变换与正交变换 1.酉变换的定义 定义: 设 V 是一个 n 维酉空间,T 是 V 的一个线 性变换,如果对任意的 x, y ∈ T 都有
深入探索3D拾取技术

深入探索3D拾取技术在游戏中,玩家需要通过点击2D屏幕来选择3D物体,这个过程就是拾取(picking)。
拾取是3D游戏必不可少的基本操作,它实现了玩家和游戏世界内对象的交互。
虽然拾取技术很基本,但它却迷惑了很多3D初学者。
很多朋友都问过我关于拾取的细节问题,这让我觉得很有必要具体探讨一下该技术。
其实,拾取之所以让很多开发者感到复杂,主要原因在于它跨域了流水线的多个阶段,并且是逆流水线上行。
另外,它是一个2D信息扩展到3D的过程,必须对信息做相应的扩展和额外的计算才能够得到正确的结果。
下面我门具体分析一下这个技术。
水流线主要阶段分析我们来直观地看一下从相机空间到viewport的变换相机空间中的一个顶点v,经过透视变换后进入了CVV中。
这个变换矩阵实际上完成了两个工作:1)将顶点从3D空间投影到2D的投影平面(Projection Plane)上。
2)将投影平面上的2D投影点通过线性插值变换到齐次裁剪空间CVV中。
这些变换都通过透视矩阵一次完成。
我之所以把这一步分解为两步,因为这对于分析拾取很重要。
顶点进入齐次裁剪空间并经过CVV裁剪,最终进行透视除法从4D齐次形式变回成3D形式。
然后经过一个线性插值(被封装在视口(viewport)变换中),变换到viewport中,多个点以三角形的形式经过光栅化后被玩家看到。
最后一步的点变换可以描述为:3)将CVV中的点通过线性插值变换到viewport中。
分析了这个变换过程之后,我们知道了从相机空间开始实际处理点位置信息的操作,就是上面的三个步骤。
这样,我们可以先把顶点从viewport中先变换回投影平面上,也就是我们可以先完成(2)和(3)的逆处理。
这里我们不用考虑裁剪和透视除法这些操作,因为反推的时候,处于视口中的点,已经是经过裁剪后留下的有效点了,必定处于CVV内,也必定处于projection plane内!而且从viewport逆变换到projection plane,点一直保持2D形式。
正交投影矩阵的特征值_解释说明以及概述

正交投影矩阵的特征值解释说明以及概述1. 引言1.1 概述正交投影矩阵是在三维几何中广泛应用的重要概念。
它通过将三维空间中的点映射到二维平面上,实现了几何对象在屏幕上的显示和处理。
正交投影矩阵的特征值是对该矩阵进行分析和解释时的关键指标。
本文将深入探讨正交投影矩阵的特征值,旨在帮助读者全面理解和应用正交投影矩阵。
1.2 文章结构本文将按以下结构展开讨论:- 引言:概述文章主题和结构;- 正交投影矩阵的特征值:定义、概念和性质;- 正交投影矩阵的特征值解释说明:详细解释特征值在几何学中的意义;- 正交投影矩阵的特征值计算方法:介绍常用计算方法、数值计算注意事项及优化方法;- 正交投影矩阵的特征值应用案例研究:背景介绍、目标与方法论概述、实验结果及数据分析讨论;- 结论与展望:对本文主要内容进行总结,并展望未来研究方向。
1.3 目的本文的目的在于:- 对正交投影矩阵的特征值进行详细解释和说明,使读者能够全面理解特征值在几何学中的应用;- 提供常用的正交投影矩阵特征值计算方法并介绍数值计算注意事项及优化方法,帮助读者在实际应用中更准确地计算特征值;- 运用实际案例展示正交投影矩阵特征值的应用场景和深入分析实验结果,为读者提供实操经验;- 总结全文,并对未来进一步研究方向进行展望,为相关领域的学者提供参考。
2. 正交投影矩阵的特征值2.1 正交投影矩阵的定义正交投影矩阵是指一个方阵,其满足以下两个条件:首先,它是一个正交矩阵,也就是说该矩阵的转置乘以它自身等于单位矩阵;其次,它是一个投影矩阵,即该矩阵平方等于它自身。
2.2 特征值的概念和性质在线性代数中,对于一个n×n的方阵A, 如果存在一个非零向量v使得Av=λv,其中λ为实数,则称λ为A的特征值,v称为对应于特征值λ的特征向量。
特征值和特征向量揭示了方阵变换行为中的重要信息。
一些常见的特征值性质包括:每个方阵都有特征值;方阵乘积的特征值与因子方阵的特征值相关;主对角线元素之和等于矩阵所有特征值之和。
4、投影变换(换面法)

b' a'
X
• i' a c i • b
H X1 V1
c'
•c ' 1
V O H O2 O1
•
c2
• a1' (i1')
•i 2
• a2
实形
• b1'
V1 H2
• b2
是以其中一直线为依据来选择,即将其中一条直线(一般 线)更换成平行线,投射线,其它元素跟着过来。另一种 是以其中一个平面为依据来选择新轴。即将一般面改换成 投射面、平行面。其它元素跟变换过来。
不动,设立新的投影面代替原有的投影面中的一个,使新
投影面与几何元素处于有利于解题的位置。
一、换面法的投影规律:
如图4-2中,先只看A点的投影。如图4-3 (a)所示。
a' V
A
a'1 x1
o
x ax a
V1
ax1 H a'1 V1
o1
图4-3 (a)
新的投影面必须垂直于原投影面体系中的一个投影面。 如 V1H ,这样 V1 与H才能构成一个新的两投影面体系。 a' a x Aa a1' a x1 展开时V不动, V1 摊平到与H在 由图可知 同一面上,然后H面连同 V1 一齐绕OX轴旋转到与V在同一 平面上。 画投影图时,为表示清楚,在OX以上标V,OX下标H,在 的一方标H,另一方标
工程上要解决的问题: (一) 定位问题:包括线面交点、两面交线、截交线、相 贯线
(二) 度量问题:包括求直线实长、平面实形、点线距、 点面距离、平行线间距、两交叉线距离、平行面距离、直 线及平面对投影面倾角、两面夹角、线面夹角等。 一、投影变换的目的:将原来处于一般位置的空间几何元 素,变换为有利于解题的位置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
深入探索正交投影变换
之前我们在《深入探索透视投影变换》以及《深入探索透视投影变换(续)》中研究了OpenGL、D3D以及M3G的透视投影变换的原理以及生成方法。
这些方法在当前的主流图形API 中得到了普遍使用。
但关于投影应用,还有一类经常使用的投影方式需要我们深入理解——正交投影,我们在本篇文章里面研究它(这里假设读者已经看过前两篇文章,并理解了绝大多数的理论,因为正交投影比透视投影的推导关系简单得多,因此我们的推导会非常得快,如果读者有任何的不解,请参考前两篇文章或者通过email联系我)。
在具体研究之前我觉得有必要把平面投影的分类简单介绍一下,目的是为了让大家有一个总体的认识,从而更好的理解这个知识体系。
请看下图:
平面投影分为平行投影和透视投影两种类型,后者我们在前两篇文章中介绍了。
平行投影则是具有矩形观察体的投影方式(透视投影则是视锥观察体),它不会根据物体离视点的远近缩放物体(透视投影则会)。
平行投影可以分成侧投影和正交投影两种类型。
这两种类型如何区分呢?我们继续看图吧:
上图中,v是投影平面,n是它的法线。
p和q是平面外两点,p’和q’分别是它们在平面上的投影点。
q的投影方向向量为Q = 单位化(q’-q),而p的投影方向向量为P = 单
位化(p’-p),其中Q不平行于n而P平行于n,则q的投影叫做侧投影,而p的投影叫做正交投影。
正交投影是我们今天的研究对象。
实际上上面对平面投影的分类还可以继续向下细分,比如透视投影可以分为一灭点、二灭点以及三灭点透视投影。
侧投影则可以继续分为散点侧投、斜二轴侧投等等。
而正交投影则可以分成轴侧投影以及多视点正交投影等等。
如果读者对此感兴趣,可以参考相关的图形学教程。
接下来我们研究正交投影。
分别介绍OpenGL、D3D以及M3G的。
我们的环境约定(左右手坐标系、行列向量乘法、CVV范围)仍然尊重相应API自己的设置。
OpenGL正交投影变换
下图是OpenGL的右手坐标系中观察空间的情形,我们看到的是正交投影的矩形观察体,原点是相机位置,n是近裁剪平面到相机平面的距离,f是远裁剪平面到相机平面的距离。
p是观察体中的一个点,p’是它投影之后的点。
投影之后我们有关系:
因为是正交投影,没有统一的投影射线目标点,因此投影之后的x和y不会变,而z 则永远地变成了-n,跑到了投影平面上(我们让投影平面和近裁剪平面重合),它已经没用了,则我们用这个没用的信息保存z(为了之后片元操作的时候用),写为:
从而在z方向上构建CVV,使得当z在近裁剪平面的时候,az+b=-1,而z在远裁剪平面的时候az+b=1(OpenGL的CVV的z范围是[-1,1],我已经说了三遍了,如果读者感到迷惑不解,强烈建议把前两篇文章理解)。
我们算出a和b
然后我们就通过当前的结果反推正交投影矩阵版本一
接着把x和y建立成CVV情形(简单的线性插值)
反推正交投影矩阵版本二(最终版本)
则右边的那个矩阵就是OpenGL的正交投影矩阵,它可以通过glOrtho创建出来。
如果你读过并理解了之前两篇文章,你会觉得我的推导越来越简洁利落了:)OpenGL的解决
了,下面是D3D的。
D3D正交投影变换
下图是D3D左手坐标系中观察空间的情形。
因为是左手坐标系,因此近裁剪平面在z = n平面,而远裁剪平面在z = f平面。
投影之后,有
用第三个没用的信息保存z,写为
使得(D3D的CVV的z范围是[0, 1])
反推正交投影矩阵版本一
对x和y进行CVV线性插值
分两种情况讨论(如果读者对此不清楚,请参考第二篇文章《深入探索透视投影变换(续)》):
(1)投影平面居中,销掉两边的1/2,然后反推正交投影矩阵
后面那个矩阵就是相应正交投影矩阵,这个也是D3DXMatrixOrthoLH方法所使用的情况。
(2)一般情况,投影平面不一定居中,直接通过投影结果反推正交投影矩阵
后面那个矩阵就是相应的正交投影矩阵,这个也是D3DXMatrixOrthoOffCenterLH方法所使用的情况。
好了,D3D的也介绍完毕,接下来是M3G的。
M3G正交投影变换
M3G是对OpenGL的封装,因此环境和OpenGL的相同,我们从对x和y的插值来看
M3G只使用居中的投影平面,因此可以销掉两边的1/2,得到
接着反推出正交投影矩阵
最后那个矩阵就是M3G的正交投影矩阵,也就是Camera.setParallel所使用的形式。
结束语
以上介绍了三个API所使用的正交投影矩阵的生成方法,三者的正交投影矩阵依然可以通过视野(FOV)以及投影平面的宽高比(Aspect Ratio)来设置,这里请读者自行推导,可以参考第二篇文章《深入探索透视投影变换(续)》。
正交投影矩阵和透视投影矩阵一样可以有无穷多个,但原理相同,不同的只是环境。
目前正交投影在3D引擎中有着和透视投影同样的地位,它至少是3D用户界面系统的基础。
因此,有必要清晰地理解正交投影矩阵和透视投影矩阵的原理,如此才能够真正创建、修改、使用好图形引擎。