2D Geometry refresher


The most common type of Geometry is known as Euclidean Geometry and it’s named after Euclid of Alexandria and he was a Greek who lived a long time ago in Egypt. Around 300 BC, he wrote a very, very famous book. In fact, a set of 13 books. It was called The Elements. And, this is the basis of the Geometry that you learned when you were at school. It’s the Geometry of things in a plane and of things in three-dimensional space. It’s Geometry about lines and triangles and circles. It’s based on a few axioms, if you like fundamental underlying principles. And, from these few axioms, all the other principles of Geometry can be derived. Importantly, there are no numbers in Euclidean Geometry. We have lines. We have letters. We talk about parallel lines and we talk about right angles, but there are no numbers in Euclidean Geometry and there are no coordinate frames either.

Rene Descartes was a very, very famous thinker in the 17th Century. He was a philosopher. He was a mathematician and he was even a part time mercenary in his younger days. He’s often referred to as the Father of Modern Philosophy and he was particularly famous for the translation from the original Latin of this quote, “I think, therefore I am.” There are many stories about Descartes’ life. One that I particularly like is the fact that he found that was very, very useful to lay in bed all through the morning and think. It was his thinking time. And, it’s a really great principle.

One morning, he was lying in bed, looking at the wall, and a fly came in, and it landed on the wall. And, he realized that he would be able to describe the position of the fly simply in terms of two numbers. So wherever the fly was on the wall, it could be described very succinctly using just two numbers. And, this is the basis of the Cartesian coordinate frame where we represent the position of something in the plane using two coordinates, two numbers. So, the very important thing that Descartes did was he added Algebra to Euclidean Geometry. And, that allowed us then to express shapes in terms of equations. We can express lines in terms of equation. We have the equations for two lines. We can work out how they intersect and what angle they intersect. It’s the fusion of Algebra with the ancient Geometry.

We refer to this as Cartesian Geometry or Analytic Geometry. It’s called Cartesian. That’s derived from his name in Latin which was Cartesius. So, he is the one who developed the coordinate system, a very, very familiar concept towards today, but it dates back to only the 17th Century. So, let’s look at a 2D coordinate frame. We have a pair of axes. Each of these is a real number line and they intersect at a point that we refer to as the origin. So, two axes form a 2D coordinate frame, an x-axis and a y-axis. Now, let’s describe a point using this two-dimensional coordinate frame. In order to do that, we drop a line down to the x-axis and its distance from the origin we refer to by the quantity a. And, we drop another line across to the y-axis and the distance along the y-axis from the origin we refer to as the distance b. So, the point P can be described very succinctly using a pair of numbers and we write them in brackets just like that.

A mathematician would say that a point is a location in an n-dimensional space. We would say that the point P is an element of, or belongs to, the set of real numbers to the power of n. In this case, it would be R squared. We can represent the point by a Cartesian coordinate. We can also refer to it as an n-tuple. That’s a group of n numbers. We number them from x1, x2, all the way up to xn. Again, in the simple two-dimensional case, n is simply equal to 2. We can think of a vector as an arrow from the origin of our coordinate frame to the point of interest. And, we denote vectors by lower case letters. Points by upper case letters, vectors by lower case letters. In this case, lower case p.

A vector has got two components. A horizontal component of length a, and a vertical component of length b. We write the vector p differently to the way we write the point P. We write it as a vector. That’s a stack of numbers, one above the other. In this case, a above b. So, it’s a two element vector. It’s also the same as a 2 by 1 matrix. That’s a matrix with two rows and one column. A mathematician would say that a vector is an element of an n-dimensional vector space and we'd write that as lower case p is an element of or belongs to the set of real numbers to the power of n. Once again, in this simple case, n is equal to 2 because it’s a two-dimensional coordinate frame. We can represent our vector, our arrow on the coordinate frame, as a mathematical n vector, a vector with two elements. And so, that’s the elements x1, x2, all the way up to xn and we apply the transpose operator. Here, I’ve written the vector as a row vector. The elements are next to each other horizontally. When I transpose it, it becomes a column vector, the elements one above the other, and this will become important later, when we start to multiply matrices and vectors together.

We can also consider that a vector is a relative displacement. It talks about a motion. How do we get from the origin to the point P? How do we get there? Well, we follow the path which is this vector, this arrow. Another important consideration is that this vector has a particular starting point. And so, we refer to this as a bound vector. So, this vector here shown in red is different to this vector here. Although they’ve got the same length and they’ve got the same angle, they are different vectors. Important to keep in mind that in this course, all of our vectors are bound. They have a particular starting point. They’re defined with respect to a particular coordinate frame.

Another way we can express this vector, lower case p, is in terms of unit vectors. So, let’s define two unit vectors. These are vectors with a length of 1 and I denote those with a hat symbol on top. So, we have the unit vector x hat and the unit vector y hat. Now, I can express my vector in terms of two components. One component is the distance a multiplied by the unit vector x hat, plus another vector, a vertical vector, which is the distance b multiplied by the unit vector y hat. So, this is a component representation of a vector and we’ll be using this notation later on in this lecture.

Importantly, points and vectors are different things. A point defines a location. We can’t add two points together. It makes no sense. And, neither can we multiply two points. It’s a meaningless concept. Vectors don’t define a location. They specify how to get from one location to another. Vectors are things that we can add and we can subtract. And, we can multiply a vector by a scalar. I can have a vector; I could multiply it by 2. Now, I have an arrow that’s twice as long but in the same direction and with the same beginning as the vector that I had before. The difference between two points is a vector. So, I can take the difference between two points and the result is no longer a point, the result is now a vector. And, similarly, I can define a point in terms of a vector displacement from an initial point. So for the two-dimensional case, a point is represented by two real numbers and a vector is also represented by two real numbers. But, points and vectors are different things.

We need to be careful when we create a coordinate frame. This is the standard way. It’s referred to as a right-handed coordinate frame. And, we swing from the x-axis through 90 degrees up to the y-axis. And, here is another example of a right-handed coordinate frame. If we were to flip the frame upside down, we now have the x-axis in this direction and the y-axis down. So, we would swing this in 90 degrees downwards in order to define the y-axis. Now, we need to be very consistent in the way we define the coordinate frames and we’re always going to use a right-handed coordinate frame. We will never use a coordinate frame like this, only frames that look like this.

When we construct a two-dimensional coordinate frame from two axes, there are in fact two different ways that we can construct that coordinate frame. A so called left-handed coordinate frame and a right-handed coordinate frame. Now, in this course, we’re only going to deal with right-handed coordinate frames. So, how do we construct a right-handed coordinate frame? Well, we start by drawing the x-axis first and the y-axis is created by swinging the x-axis 90 degrees in the counterclockwise direction. That gives us a right-handed coordinate frame. So, no matter what the orientation of the coordinate frame, the relative orientation of the x and y axes is really critical and it must follow this convention. Another important thing to keep in mind is that Euclidean Geometry only applies to planes. And, one of Euclid’s postulates or axioms is very, very clear about this, and that is that parallel lines never intersect and that is, of course, the case on a plane.

However, on something like sphere, for instance, the surface of our planet, this no longer holds true. Parallel lines at the equator will intersect at the poles. The rules of Euclidean Geometry do not apply on such a surface, but we would say that the surface of the Earth leads to a non-Euclidean Geometry. However, over a small area, the Euclidean Geometry is a very good approximation. So, over the scale of a room, maybe even over the scale of a city, Euclidean Geometry - the fact that parallel lines don’t intersect - is a pretty good assumption to make.

We revisit the fundamentals of geometry that you would have learned at school: Euclidean geometry, Cartesian or analytic geometry, coordinate frames, points and vectors.

Professor Peter Corke

Professor of Robotic Vision at QUT and Director of the Australian Centre for Robotic Vision (ACRV). Peter is also a Fellow of the IEEE, a senior Fellow of the Higher Education Academy, and on the editorial board of several robotics research journals.

Skill level

This content assumes an understanding of high school-level mathematics, e.g. trigonometry, algebra, calculus, physics (optics) and some knowledge/experience of programming (any language).

More information...

Rate this lesson


Check your understanding

Leave a comment