1
$\begingroup$

Say I have a system with standard spherical coordinates. There's a man on that sphere and he's standing on the equator facing east. He chooses a random angle $0°-360°$ and turns that much in the clock wise direction. Then he starts walking. Assuming his body is always perpendicular to the surface, he should always make a full circle and come back to where he started if he keeps on moving, right?

Now the question is, if I know his current location and I know the random angle, how do I compute where his next location is in spherical coordinates? By next location I mean the coordinates he has when he takes another step. A step always moves him by a set amount of arc length.

$\endgroup$
7
  • $\begingroup$ Do you also know the starting coordinates? If not, the answer is that you can't: in almost all cases, the best you can do is to narrow it down to two possibilities, and in some cases there are infinitely many possibilities. $\endgroup$ – Peter Taylor Jun 18 '13 at 9:05
  • $\begingroup$ You do know the starting coordinates but I don't see why that matters if you already know the last coordinates. $\endgroup$ – Luka Horvat Jun 18 '13 at 9:09
  • $\begingroup$ If you know the starting coordinate and the angle in which he takes a step, isn't it the same idea as knowing a point in a plane, a direction, and the distance you go in that direction? It seems to me like you just have to compute sines and cosines to do the equivalent in spherical coordinates. $\endgroup$ – Patrick Da Silva Jun 18 '13 at 9:10
  • $\begingroup$ Probably but I don't really know how to "unwrap" the sphere into a plane and then wrap it into a sphere again. Also, I'm pretty sure that if I did that I'd end up always in one of the poles after some time. $\endgroup$ – Luka Horvat Jun 18 '13 at 9:12
  • $\begingroup$ I don't think that's right. He's not moving so that his spherical coordinates increase by the same delta, he's moving in a direction he chose at the start. The equivalent would be to stick an axis through the sphere so that it's parallel to the plane he's standing on and orthogonal to the direction he's looking in and going through the center of the sphere and then spin the sphere under his feet. Surely that will result in a circle. $\endgroup$ – Luka Horvat Jun 18 '13 at 9:16
0
$\begingroup$

Geodesics on the sphere are great circles, and a great circle is the intersection of a plane which passes through the centre of the sphere with the surface of the sphere.

In the general case (i.e. the random angle isn't a multiple of $90^\circ$), the man will cross the equator on the antipode of his starting point, because the intersection of the plane in which the equator lies with the plane of the circle he follows is a line passing through the centre of the sphere.

Suppose that his angle is between $0$ and $180^\circ$. Then he starts by going south of the equator, reaches a furthest point south after a quarter of his journey, carries on moving back to the equator and reaching it at the halfway point, etc. So for any latitude between the equator and the southmost point, he passes through two points at that latitude. This is why we need to know the starting point: without that, we don't know whether the current point is the first or the second point at that latitude which he reaches.

Given the start point and the angle, you can parameterise the great circle, and then given the current point you can calculate the current value of that parameter with arc-tan and quadrant considerations. You can also calculate the great circle distance between the start point and the current point by taking the arc-cos of their dot product, and you can extrapolate using SLERP.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.