The stance that puts a parent clearance above the horizon.
toParent is the displacement from this body's center to the parent's,
not a direction, and the distinction is the whole of the arithmetic. Treating
it as a direction from the eye is the version everybody writes first, and it
is wrong by up to asin((R + h)/d) — 0.28° for Earth from Luna, which sounds
survivable until you notice the clearance being solved for is 3°. It is 9% of
the answer, and on a closer pair it is all of it: Phobos sits 6,000 km from
Mars' center and is 11 km across, so the eye's own offset moves the parent's
elevation by 0.1°.
The solve, in one line: the eye sits at angular distance θ from the sub-parent point, and
sin α = (d·cos θ − r) / √(d² + r² − 2·d·r·cos θ)is the parent's elevation above the local horizontal from there, with
r = radius + height. The horizon is acos(r_ground/r) below that horizontal,
so the clearance asked for fixes α, and the quadratic in cos θ closes:
cos θ = (r·cos²α ± |sin α|·√(d² − r²·cos²α)) / dBoth roots satisfy the squared equation and only one satisfies the original —
the sign of d·cos θ − r has to match the sign of sin α, and taking the
wrong one puts the eye on the far side of the body with the parent under its
feet.
Which great circle is a free choice, and it is made eastward. The plane through the sub-parent point is unconstrained by the picture: the sky is empty except for the parent, so every choice makes the same frame and a different place underfoot. East keeps the stance on the sub-parent point's own parallel — the leading or trailing limb, which is where the Apollo orbits were — where poleward would walk over the pole for any clearance asked below about 20°.
- radiusnumber
- Undocumented
- toParentVec3
- Undocumented
- heightnumber
- Undocumented
- clearancenumber
- Undocumented
- fovDegnumber
- Undocumented