A point is translated along the surface of a unit sphere. How do I determine the new spherical coordinates of the point?

239 Views Asked by At

A point on a unit sphere at ($\theta$ = 0, $\psi$ = $\pi$/2) moves over the surface on great circle by $\alpha$ radians at an angle $\gamma$ from "north" (the north pole being at $\psi$ = 0). How would I calculate the new spherical coordinates for the point using $\alpha$ and $\gamma$?

Diagram of the question.

For context, I am programming a simple game that takes place on a sphere.

2

There are 2 best solutions below

1
On

You have to also state the extra $\phi \text{ or } \psi$ you want to shift it to. If new $(\theta, \phi)$ are given in same coordinates, then,

$$ (x,y,z)= 1 {(\cos (\theta+ Delta; \theta), \sin (\theta+ \Delta \;\theta), \sin (\phi+ Delta \;\phi)}$$

0
On

This is a problem in spherical trigonometry.

Form a triangle with vertex $A$ at $\theta=0,\psi=\pi/2$, $N$at the North pole $\psi=0$, and $B$ at your unknown point which I label $\theta=y,\psi=x$.

We apply the Law of Cosines for Arcs. In this relation note that $AN$ measures $\pi/2$, so its cosine is $0$ and its sine is $1$. Thus we have a simplified form:

$\cos x = \sin\alpha\cos\gamma$

This has a unique root for $x$.

Next apply the Law of Sines:

$\sin y =\sin\alpha\sin\gamma/\sin x$

where division by zero is avoided everywhere except the poles. This gives two roots in the domain $0\le y<2\pi$, so you must choose. To do so note that $y$ will be an increasing function of $\alpha$ and that the two quantities must become equal at every multiple of $\pi/2$ (why the latter?).