Hacker News new | ask | show | jobs
by p0nce 2797 days ago
Suppose you are standing anywhere on planet Earth, and you look at the horizon (not up, not down, so 360° of choice).

A normalized quaternion encodes your position on the planet + the direction you are looking at on the horizon.

It also encodes the rotation it would take to go from one such observer to another.

2 comments

Does this assume the earth is a sphere? Can you keep the elegance of this coordinate encoding with convenient transformation operations and define somewhere a mapping from the quaternarion encoding of position into a non-homogenous oblate spheroid encoding like WGS84 ...?
> Does this assume the earth is a sphere?

Of course, speaking about Earth is just for the mental image.

> Can you keep the elegance of this coordinate encoding with convenient transformation operations and define somewhere a mapping from the quaternarion encoding of position into a non-homogenous oblate spheroid encoding like WGS84 ...?

I don't understand the question.

So it's your position in space (3 numbers), your orientation (another 3 number vector), except instead of 6 numbers it can be reduced to 4? Stargate was wrong?
Encoding your whole orientation would require 3 numbers. You are restricted only to the horizon, so one number is enough.
Orientation is only two numbers, since a unit vector does the job? So, three numbers in total?
That's why it doesn't encode free orientation.