I'm trying to figure out how to calculate coordinates on a globe, and I would like to ask for some help.
Let's say I have POINT A on the globe with the following coordinates:
POINT A
Latitude 45° 27' 50.95" N
Longitude 9° 11' 23.98" E
Also I have POINT B which is the Antipode:
POINT B
Latitude 45° 27' 50.95" S
Longitude 170° 48' 36.02" W
Given we are on a sphere (globe), from Point A to Point B for example I can draw 360 great circles, one for each single degree of the sphere:
- and the distance to go from Point A to Point B is 180° (first semi-circle)
- and the distance to go back from Point B to Point A is also 180° (second semi-circle)
Now let's say I have POINT C with the following coordinates:
POINT C
Latitude 45° 26' 48.53" N
Longitude 9° 1' 58.11" E
Given these information, THERE IS ONLY ONE GREAT CIRCLE which:
START IN POINT A
GOES THROUGH POINT C
ARRIVE IN POINT B (completing the first semi-circle of 180°)
COME BACK IN POINT A (completing the second semi-circle of 180°)
My problem is to find the formula to calculate the coordinates of the 2 Points which are half-way (90°) from Point A to Point B.
Let's call these 2 Points as M and N:
START in POINT A
GOES THROUGH POINT C
PASS THROUGH POINT M (at 90°)
ARRIVE IN POINT B (completing the first semi-circle of 180°)
PASS TO POINT N (at 270°)
COME BACK IN POINT A (completing the second semi-circle of 180°)
--- Which is the formula to calculate M and N?
In a - plain surface - i would have used the simple proportion of triangles to calculate them, but given is a sphere I don't know the formula to be applied.
I did some online search but I find a kind of difficult to figure it out. I have been out of school from 15 years now, so I would like to ask if somebody can help me.
I hope my explanation is clear, thx a lot if you can help!!!
Cheers
This answer is not pretty, but it will get the job done. Also, there will be some error since the Earth is an ellipsoid and not a perfect sphere.
First, convert the points $A$ and $C$ from (longitude, latitude) to points on a sphere. Let $\theta$ be the angle that describes your longitude $\mathit{east}$ of the prime meridian. If your longitude is measured as west of the prime meridian, then make it negative. (For example, change $34^\circ$W to $-34^\circ$. Let $\phi$ be equal to $90^\circ$ minus your latitude $\mathit{north}$ of the equator or $90^\circ$ plus your latitude $\mathit{south}$ of the equator. You now have your points $A$ and $C$ described by two angles without the pesky NESW signifiers. $A = (\theta_A, \phi_A)$ and $C = (\theta_C, \phi_C)$.
Second, convert $A$ and $C$ to points in 3-dimensional space. To do this: $$A = \left< A_x, A_y, A_z \right> = \left< \cos \theta_A \sin \phi_A,\; \sin \theta_A \sin \phi_A,\; \cos \phi_A \right>$$ $$C = \left< C_x, C_y, C_z \right> = \left< \cos \theta_C \sin \phi_C,\; \sin \theta_C \sin \phi_C,\; \cos \phi_C \right>$$
Third, we find the 3-dimensional coordinates $M$ using the Gram-Schmidt process. To understand this process, you might want to check out vector dot product and vector norm. We will do this step in two parts. First, we will find $M'$, then we will scale it to find $M$. The vector formula for $M'$ is $$M' = C - (C \cdot A)A$$ Thus, the components of $M' = \left< M'_X, M'_Y, M'_Z \right>$ are $$M'_X = C_X - (C_XA_X + C_YA_Y + C_ZA_Z)A_X$$ $$M'_Y = C_Y - (C_XA_X + C_YA_Y + C_ZA_Z)A_Y$$ $$M'_Z = C_Z - (C_XA_X + C_YA_Y + C_ZA_Z)A_Z$$ Now we find $M$ by scaling each of these components by dividing by $||M'||$. For $M = \left< M_X, M_Y, M_Z \right>$ we have $$M_X = \frac{M'_X}{\sqrt{(M'_X)^2 + (M'_Y)^2 + (M'_Z)^2}}$$ $$M_Y = \frac{M'_Y}{\sqrt{(M'_X)^2 + (M'_Y)^2 + (M'_Z)^2}}$$ $$M_Z = \frac{M'_Z}{\sqrt{(M'_X)^2 + (M'_Y)^2 + (M'_Z)^2}}$$
Finally, we convert $M$ into longitude and latitude. $$\phi_M = \arccos(M_Z)$$ $$\tan \theta_M = \frac{M_Y}{M_X}$$ Be careful with $\theta_M$, it is either $\arctan \left(\frac{M_Y}{M_X}\right)$ or $\arctan \left(\frac{M_Y}{M_X}\right) + 180^\circ$. Then convert $\theta_M$ and $\phi_M$ into longitude and latitude respectively. The point $N$ is just the antipode of $M$.