深入探索正交投影变换
- 格式:docx
- 大小:157.90 KB
- 文档页数:7
空间解析几何的正交变换正交变换的性质与计算正交变换是一类在空间解析几何中具有重要地位的变换。
它是指在空间中既保持长度不变,又保持两向量之间的夹角不变的变换。
在此文章中,我们将探讨正交变换的性质与计算方法。
一、正交变换的定义与性质正交变换在空间解析几何中被广泛运用。
它是指一个线性变换,使得空间中的任意向量经过该变换后,向量的长度保持不变,并且向量之间的夹角也保持不变。
具体而言,设给定空间中的两个向量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. 工程制图正交投影在工程制图中也有广泛的应用。
工程师使用正交投影来制作机械图、电路图、流程图等。
通过将三维物体的各个部分投影到不同的视图平面上,工程师可以清晰地展示物体的各个细节和构造,从而有助于制作和理解工程图纸。
总结正交投影作为一种常用的投影方式,被广泛应用于多个领域。
它通过投影线与投影面垂直的方式,保持物体的形状和比例不变,具有很好的可视化效果。
在计算机图形学、建筑设计和工程制图等领域,正交投影都发挥着重要的作用,帮助人们更好地理解和展示物体的特征和结构。
以上是对正交投影及其应用的简要介绍,希望能对您有所帮助。
正交投影作为一种重要的投影方式,其在不同领域的应用还有很多值得深入研究和探索的地方。
深入探索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称为对应于特征值λ的特征向量。
特征值和特征向量揭示了方阵变换行为中的重要信息。
一些常见的特征值性质包括:每个方阵都有特征值;方阵乘积的特征值与因子方阵的特征值相关;主对角线元素之和等于矩阵所有特征值之和。
初中数学知识归纳正交投影与投影变换的概念与计算正交投影与投影变换是初中数学中的重要理论知识。
本文将对这两个概念进行归纳,并介绍它们的计算方法。
一、正交投影的概念与计算正交投影是指将一个立体图形在某个平面上的投影。
具体而言,对于一个三维空间中的点P(x, y, z),当它沿着某个法向量为n(a, b, c)的平面进行投影时,投影点P'的坐标可以通过以下计算方法得出:1. 计算投影向量的长度首先,需要计算投影向量的长度,即将平面法向量标准化。
设向量n的长度为d,即d = √(a^2 + b^2 + c^2)。
然后将a、b、c分别除以d,得到标准化后的法向量n',即n' = (a/d, b/d, c/d)。
2. 计算投影点的坐标接下来,需要计算点P在平面上的投影点P'的坐标。
根据向量投影的原理,可以得到以下计算公式:P' = P - Proj_n(P) = P - (P·n')n'其中,Proj_n(P)表示点P在向量n'上的投影,P·n'表示点P与向量n'的数量积。
二、投影变换的概念与计算投影变换是指将一个二维图形通过某种变换映射到另一个平面上的过程。
在数学中,通常使用矩阵的乘法运算来表示投影变换。
设原平面上的点为P(x, y),经过投影变换后的点为P'(x', y'),则有以下计算公式:x' = a*x + b*y + cy' = d*x + e*y + f其中,a、b、c、d、e、f为投影变换的参数,可以根据具体的变换要求进行确定。
这些参数可以表示平移、缩放、旋转等操作,从而实现对图形的不同变形效果。
三、实际应用举例正交投影和投影变换在几何学中应用广泛,下面以一些具体的应用举例说明:1. 工程制图在工程制图中,正交投影被广泛用于展示三维物体的平面图。
通过将三维物体沿着不同的方向进行投影,可以得到其俯视图、正视图、侧视图等平面图,便于工程师进行设计和分析。
深入探索正交投影变换之前我们在《深入探索透视投影变换》以及《深入探索透视投影变换(续)》中研究了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是远裁剪平面到相机平面的距离。
卡尔曼滤波算法推导⏹正交投影的定义与性质⏹算法的推导⏹算法总结假定x 为M ⨯1的随机矢量,z 为N ⨯1的随机矢量,它们都具有二阶矩,如果存在一个与x 同维的矢量,满足下列三个条件:ˆx(a )线性性,即可用z 线性表示,ˆxˆ=+x Az b (b )无偏性ˆ()()E E =xx (c )正交性ˆ[()]TE -=x x z 0则称为x 在z 上的正交投影,记为ˆx ˆˆ(|)E =xx z 1. 正交投影的定义与性质正交投影的定义:很显然,x 的线性最小均方估计符合以上三个条件,所以,正交投影是存在的。
反过来也可以证明,如果满足正交投影的三条性质,那么它作为x 的估计,其估计的均方误差是最小的。
因此,正交投影也是唯一的。
ˆx xzˆ(|)E x z ˆ(|)Ex x z 正交投影的几何解释:1ˆ(|)()[()]xz z E E E -=+-x z x P P z z {}[()][()]T xz E E E =--P x x z z {}[()][()]T z E E E =--P z z z z (1)其中:(2)ˆˆ(|)(|)E E =Ax z A x z 1212ˆˆˆ[()|](|)(|)E E E +=+x x z x z x z 也即,如果把正交投影看作为一个算子,那这是一个线性算子。
正交投影的性质:(3)设1[]k k k -⎡⎤=⎢⎥⎣⎦z z z 111ˆˆˆ(|)(|)(|[])ˆ(|)([]){([][])}[]k k k T T E E Ek E E k E k k k ---=+=+x z x z x z x z xz z z z 1ˆ[][]([]|)k k k E k -=-z z z z 1ˆ(|)k E -=-x x x z 其中证明留着习题。
z k-11ˆ[|]k E-x z z [k]x1ˆ[()|]k E k -z z 1ˆ[][]([]|)k k k E k -=-z z z z ˆ(|[])E k x z ˆ[|]k E x z ˆ[|()]E k x z 1ˆ[|]k E -=-x x x z 第三条性质的几何解释。
投影变换对称变换旋转变换正交变换投影变换、对称变换、旋转变换和正交变换是线性代数中的重要概念,它们在数学、物理、计算机图形学等领域都有广泛的应用。
本文将分别介绍这四种变换的概念、特点和应用,并对它们进行比较和联系。
一、投影变换投影变换是指将一个向量空间中的向量映射到另一个向量空间的操作。
具体而言,对于一个n维向量空间V和一个m维向量空间W,投影变换可以将V中的向量映射到W中的向量。
投影变换通常用一个矩阵表示,称为投影矩阵。
投影变换具有保持向量在某个方向上的长度和角度不变的特点,常用于计算机图形学中的三维投影和几何变换。
二、对称变换对称变换是指将一个向量空间中的向量映射到其自身的操作。
具体而言,对于一个n维向量空间V,对称变换可以将V中的向量映射到V中的向量。
对称变换通常用一个矩阵表示,称为对称矩阵。
对称变换具有保持向量长度和角度不变的特点,常用于计算机图形学中的镜像和仿射变换。
三、旋转变换旋转变换是指将一个向量绕某个中心点进行旋转的操作。
具体而言,对于一个n维向量空间V,旋转变换可以将V中的向量绕某个中心点旋转一定角度。
旋转变换通常用一个矩阵表示,称为旋转矩阵。
旋转变换具有保持向量长度不变但改变角度的特点,常用于计算机图形学中的三维旋转和空间定位。
四、正交变换正交变换是指将一个向量空间中的向量映射到另一个向量空间,并且保持向量之间的内积不变的操作。
具体而言,对于一个n维向量空间V和一个m维向量空间W,正交变换可以将V中的向量映射到W中的向量,并且满足向量之间的内积等于原始向量之间的内积。
正交变换通常用一个矩阵表示,称为正交矩阵。
正交变换具有保持向量长度和角度不变的特点,常用于计算机图形学中的坐标变换和旋转。
投影变换、对称变换、旋转变换和正交变换之间存在一定的联系和区别。
首先,它们都是线性变换,即满足线性组合和封闭性的特点。
其次,它们都可以用矩阵进行表示,通过矩阵相乘的方式进行计算。
然而,它们的作用对象和特点各不相同。
正交变换的几何意义
正交变换是指在平面或空间中对向量进行线性变换时,保持向量长度和相互垂直关系不变的变换。
它是一种非常重要的线性变换,因为它可以保持向量之间的几何关系和其长度不变,从而在许多应用中具有很大的优越性。
以下是正交变换的几何意义:
1. 保持长度不变
正交变换可以保持向量长度不变。
这意味着在进行正交变换后,向量仍然具有相同的大小和方向。
这种特性对于许多应用非常有用,比如在计算机图形学中,可以使用正交变换来旋转三维模型,而不会改变其大小。
2. 保持向量之间的垂直关系不变
正交变换可以保持向量之间的垂直关系不变。
这意味着在进行正交变换后,向量之间仍然保持垂直关系。
这种特性对于许多应用非常重要,比如在机器学习中,可以使用正交变换来减少特征之间的相关性,从而提高模型的精度。
3. 提供基变换
正交变换可以提供一组基变换。
这意味着可以使用正交变换将一组基向量变换为另一组基向量,从而使矩阵的表示更简单。
这种特性对于许多数学应用非常有用,比如在线性代数中,可以使用正交变换来将一个矩阵对角化。
总之,正交变换是一种非常有用的线性变换,它可以保持向量之间的几何关系和其长度不变。
在许多应用中,正交变换都具有很大的优越性,并且在数学和工程学科中都有广泛的应用。
深入探索正交投影变换
之前我们在《深入探索透视投影变换》以及《深入探索透视投影变换(续)》中研究了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用户界面系统的基础。
因此,有必要清晰地理解正交投影矩阵和透视投影矩阵的原理,如此才能够真正创建、修改、使用好图形引擎。