Projective Geometric Algebra 射影几何代数
参考并概括自 Geometric Algebra for Computer Graphics, Siggraph 2019 Course Notes, Charles G. Gunn 。
注:非翻译。跳过了第1, 2, 3的导入章节。本文图片均引用自参考文献。
Projective Geometric Algebra,射影几何代数,下面简称PGA,是欧式空间中处理几何关系的一套代数工具。几何的代数工具对于在现代工程学、CAD、VR、3D游戏、动画等各个相关领域非常重要。一般比较熟悉也是应用十分广泛的,是向量、线性代数、解析几何(Vector and Linear Algebra and Analytic Geometric, 简称VLAAG)的一套框架。而PGA是另一套现代方法,与传统的VLAAG方法有所不同,从另一个角度,另一个观点来求解欧式空间中的几何问题。
Chpt. 4 Immersive introduction to geometric algebra
几何代数的基本哲学就是:几何的运算都是数的运算(Geometric primitives behave like numbers)。在PGA中,基本形(geometric primitives. 点、直线、平面)等,由**外代数(exterior algebra)**中不同阶(grade)的向量表示,例如3D空间中:
- scalar: 0-vector
- plane: 1-vector
- lines : 2-vector
- point: 3-vector
每一阶的都构成一个向量代数空间(运算为加法和乘法)。几何代数的元素被称作多重向量(multivector),是k-vector的“和”。一个multivector M M M的k阶部分,记作 ⟨ M ⟩ k \langle M \rangle_k ⟨M⟩k。几何图元之间的关系通过**几何积(geometric product)**来表达。
下面举一些用PGA解决常见几何问题的形式化的例子,感受PGA方法的框架的运用。
Example 1. 3D空间中的点直线
目标任务:对三维欧式空间 E 3 E^3 E3中给定的一个点 P P P,一个不经过该点的直线 Π \Pi Π。找到唯一的直线 Σ \Sigma Σ经过 P P P点并和直线 Π \Pi Π正交。
一个直线 Π \Pi Π(2-vector),和一个点 P P P(3-vector),通过几何积 Π P \Pi P ΠP,包含了两个部分,一个1-vector,一个3-vector
Π P = ⟨ Π P ⟩ 1 + ⟨ Π P ⟩ 3 \Pi P=\langle \Pi P\rangle_1+\langle \Pi P \rangle_3 ΠP=⟨ΠP⟩1+⟨ΠP⟩3
- ⟨ Π P ⟩ 1 \langle \Pi P\rangle_1 ⟨ΠP⟩1 是垂直于直线 Π \Pi Π过点 P P P的平面,记作 Π ⋅ P \Pi \cdot P </