Introduction to Geometric Algebra Lecture 1 Why Geometric Algebra? Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Lecture notes available in http://www.ic.uff.br/~laffernandes/teaching/2011.2/topicos_ag Geometric Problems Geometric data Lines, planes, circles, spheres, etc. Transformations, translation, scaling, etc. Other operations Intersection, basis orthogonalization, etc. Linear Algebra is the standard framework 2 1
Using Vectors to Encode Geometric Data Directions Points 3 Using Vectors to Encode Geometric Data Directions Points Drawback HOMEWORK The semantic difference between a direction vector and a point vector is not encoded in the vector type itself. R. N. Goldman (1985), Illicit expressions in vector algebra, ACM Trans. Graph., vol. 4, no. 3, pp. 223 243. 4 2
Assembling Geometric Data Straight lines Point vector Direction vector Planes Normal vector Distance from origin Spheres Center point Radius 5 Assembling Geometric Data Straight lines Point vector Direction vector Planes Normal vector Distance from origin Spheres Center point Radius 6 3
Assembling Geometric Data Straight lines Point vector Direction vector Planes Normal vector Distance from origin Spheres Center point Radius 7 Assembling Geometric Data Straight lines Point vector Direction vector Planes Normal vector Distance from origin Spheres Center point Radius Drawback The factorization of geometric elements prevents their use as computing primitives. 8 4
Intersection of Two Geometric Elements A specialized equation for each pair of elements Straight line Straight line Straight line Plane Straight line Sphere Plane Sphere etc. Special cases must be handled explicitly Straight line Circle may return o Empty set o One point o Points pair 9 Intersection of Two Geometric Elements A specialized equation for each pair of elements Straight line Straight line Straight line Plane Straight line Sphere Plane Sphere etc. Special cases must be handled explicitly Straight line Circle may return o Empty set o One point o Points pair Plücker Coordinates Linear Algebra Extension An alternative to represent flat geometric elements Points, lines and planes as elementary types Allow the development of more general solution Not fully compatible with transformation matrices J. Stolfi (1991) Oriented projective geometry. Academic Press Professional, Inc. 10 5
Using Matrices do Encode Transformations Projective Affine Similitude Isotropic Scaling Linear Scaling Reflection Shear Perspective 11 Rigid Body / Euclidean Transforms Preserves distances Preserves angles 12 6
Similitudes / Similarity Transforms Preservers angles Similitudes Isotropic Scaling 13 Linear Transformations L(p + q) = L(p) + L(q) L(α p) = α L(p) Similitudes Isotropic Scaling Linear Scaling Reflection Shear 14 7
Affine Transformations Preserves parallel lines Affine Similitudes Isotropic Scaling Linear Scaling Reflection Shear 15 Projective Transformations Preserves lines Projective Affine Similitudes Isotropic Scaling Linear Scaling Reflection Shear Perspective 16 8
Using Matrices do Encode Transformations Projective Affine Similitude Isotropic Scaling Linear Scaling Reflection Shear Perspective 17 Drawbacks of Transformation Matrices Non-uniform scaling affects point vectors and normal vectors differently HOMEWORK 90 > 90 1.5 X 18 9
Drawbacks of Transformation Matrices Non-uniform scaling affects point vectors and normal vectors differently matrices Not suitable for interpolation Encode the rotation axis and angle in a costly way 19 Drawbacks of Transformation Matrices Non-uniform scaling affects point vectors and normal vectors differently matrices Not suitable for interpolation Quaternion Encode the rotation axis and angle in a costly way Linear Algebra Extension Represent and interpolate rotations consistently Can be combined with isotropic scaling Not well connected with other transformations Not compatible with Plücker coordinates Defined only in 3-D W. R. Hamilton (1844) On a new species of imaginary quantities connected with the theory of quaternions. In Proc. of the Royal Irish Acad., vol. 2, pp. 424-434. 20 10
Linear Algebra Standard language for geometric problems Well-known limitations Aggregates different formalisms to obtain complete solutions Matrices Plücker coordinates Quaternion Jumping back and forth between formalisms requires custom and ad hoc conversions 21 Geometric Algebra High-level framework for geometric operations Geometric elements as primitives for computation Naturally generalizes and integrates Plücker coordinates Quaternion Complex numbers Extends the same solution to Higher dimensions All kinds of geometric elements 22 11
Motivational Example 1. Create the circle through points c 1, c 2 and c 3 2. Create a straight line L through points a 1 and a 2 3. Rotate the circle around the line and show n rotation steps 4. Create a plane through point p and with normal vector n Dual plane Adapted from L. Dorst, D. Fontijine, S. Mann. Geometric algebra for computer science. Morgan Kaufmann Publishers, 2007. 5. Reflect the whole situation with the line and the circlers in the plane 23 Motivational Example 1. Create the circle through points c 1, c 2 and c 3 2. Create a straight line L through points a 1 and a 2 3. Rotate the circle around the line and show n rotation steps The reflected line becomes a circle. The reflected rotation becomes a scaled rotation around the circle. Adapted from L. Dorst, D. Fontijine, S. Mann. Geometric algebra for computer science. Morgan Kaufmann Publishers, 2007. 4. Create a plane sphere through point pp and with normal center cvector n The only thing that is different is that the plane was changed Dual sphere plane by the sphere. 5. Reflect the whole situation with the line and the circlers in the plane sphere 24 12
Why I never heard about GA before? Geometric algebra is a new formalism Paul Dirac (1902-1984) William R. Hamilton (1805-1865) Hermann G. Grassmann (1809-1877) William K. Clifford (1845-1879) David O. Hestenes (1933-) Wolfgang E. Pauli (1900-1958) 1840s 1877 1878 1980s, 1920s 2001 D. Hestenes (2001) Old wine in new bottles..., in Geometric algebra with applications in science and engineering, chapter 1, pp. 3-17, Birkhäuser, Boston. 25 Differences Between Algebras Clifford algebra Developed in nongeometric directions Permits us to construct elements by a universal addition Arbitrary multivectors may be important Geometric algebra The geometrically significant part of Clifford algebra Only permits exclusively multiplicative constructions o The only elements that can be added are scalars, vectors, pseudovectors, and pseudoscalars Only blades and versors are important 26 13