Describing position in 3D


We are now going to consider an object which moves in three-dimensional space, for instance this airplane but it could be a flying robot, it could be an underwater robot. I want to describe its position within the world. And we are going to use the same process that we did for two dimensions. We’re going to introduce a reference coordinate frame. Now, for the three-dimensional case, this is a three-dimensional coordinate frame. It’s got an x-axis, a y-axis and a z-axis. And, I’m going to put it at an arbitrary place in the world and that is going to be our reference coordinate frame.

In three dimensions, we used a coordinate frame that looks like this and there are a lot of similarities to the 2D coordinate frame we looked at in the last lecture. There are three axes. They are x, y and z and they meet at angles of 90 degrees to each other. The point where they all intersect is referred to as the origin. So, these three axes together form what we call a three-dimensional coordinate frame.

Let’s introduce a point now and we want to describe the point with respect to the 3D coordinate frame. We do this by dropping a line down to the XY plane and measuring the displacement A along the x-axis, the displacement B along the y-axis and the displacement C along the z-axis. So, we can represent the point by three numbers. We call this a tuple, a 3-tuple, and that’s basically a group of three numbers, the numbers A, B and C and they are the coordinates of the point. So, we can consider a point is a location in an n-dimensional space. A mathematician would write that as P belonging to the set of real numbers to the power of n. And in this particular case, n is equal to three. In the most general sense, we can represent the coordinate as a group or a tuple of n numbers. Again, in this case, n equals three, so it represents a point by a coordinate which comprises three numbers.

We can describe a vector in terms of three components: a component A parallel to the x-axis, component B parallel to the y-axis, and a component C parallel to the z-axis. And, we represent the vector P using the lower case symbol p and a column vector. That’s a stack of numbers one above the other: the distance A, the distance B and the distance C. A vector is an element of an n-dimensional vector space. A mathematician would say that lower case p belongs to the set of real numbers to the power of n. Again, in this case, n equals 3. We can also represent a vector by an n element column vector. That’s n numbers stacked one above the other.

We can consider a vector as a relative displacement. That’s how we get from the origin, our reference point, to the point p in a straight line. All the vectors that we’re going to consider start at the origin, so we refer to these as bound vectors. They have a particular starting point. And, that means that the vector shown here in red is different to this vector shown here even though it has got the same length and the same orientation in space.

Another way we can describe vectors is in terms of a set of orthogonal unit vectors. Let’s introduce the unit vectors, x-hat, y-hat and z-hat. Now, each of these vectors has got a length of one and they are parallel to the coordinate axes, x, y and z. Now, we can represent our vector lower case p in terms of the unit vectors. A time x-hat, B times y-hat, plus C times z-hat.

There are some similarities, but some important differences between points and vectors. Points define a location. It’s not possible. It doesn’t make any sense to add or multiply points. Vectors do not define location. They specify how to get from one location to another or from one point to another. Now, we can add and subtract vectors, that makes perfect sense and we can multiply a vector by a scalar. We can make the vector longer or shorter while maintaining its direction.

The difference between two points is a vector. And a point can be defined as a vector with respect to another point and that point is typically the origin of the coordinate frame. Points and vectors are both represented by a group of n real numbers. N, in our case, is three because we’re talking about three-dimensional space. A point is typically represented as a row vector, a list of numbers inside parenthesis, whereas a vector is typically represented as a stack of the n numbers one above the other and typically in square brackets.

Now, I can describe the position of the airplane with respect to this coordinate system. I need to define a reference point on the airplane. I need to describe one particular location. So, let’s say the tip of the airplane’s nose. Now, I can measure that distance. Roughly, I’d say it’s about 35 centimetres in the X direction and it might be something like 18 centimetres in the Y direction and it’s something like 13 centimetres in the Z direction. So, I can describe the position of this particular point in the 3-dimensional world by those three numerical coordinates.


There is no code in this lesson.

We revisit the fundamentals of 3D geometry that you would have learned at school: 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 high school level mathematics and requires an understanding of undergraduate-level mathematics; for example, linear algebra - matrices, vectors, complex numbers, vector calculus and MATLAB programming.

More information...

Rate this lesson


Check your understanding


  1. Agus Arif says:

    Something wrong with the correct answer of this question: I have chosen “three numbers” since in fact we use three number [a, b, c]’ to describe a vector within a 3D Cartesian system; but it turned out to be incorrect choice. Why?

    1. Peter Corke says:

      Your answer is correct. I just tried that answer and it is marked as correct. Can you try it again.

Leave a comment