int = PlanetAtExtremalLatitude(nDate, nSunSourceIndex, nPlanetID)
This macro function calculates the time, on nDate, when the orbit of the planet of planetary index nPlanetID is at the highest or lowest latitude with respect to the plane of the solar system.
•The allowed values for nPlanetID range from n_MERCURY to n_PLUTO.
•The sign of the result is positive if the planet is highest, and negative if the planet is lowest on nDate. If the date nDate does not correspond to either case, then the function returns 0.
•The absolute value of the result is the time of the day expressed in one millionth of a day (less than 1/10th of a second).
The macro code below checks if any of the planets, including Pluto, have reached their highest or lowest latitude with respect to the plane of the solar system, on the date of the incoming macro token.
for nPlanetID = n_MERCURY to n_PLUTO step 1
sBuffer = ''
nCurResIdx = PlanetAtExtremalLatitude(n_TokenDate, 1, nPlanetID)
if nCurResIdx > 0
sBuffer = PlanetName(nPlanetID) + ' furthest south'
if nCurResIdx < 0
sBuffer = PlanetName(nPlanetID) + ' furthest north'
// add the time it occurs in parentheses
if nCurResIdx <> 0
sBuffer = sBuffer + FormatTime('" ("hh:nn")"', Abs(nCurResIdx), true)
This is an event that is independent of the position of an observer on the Earth and indeed is independent of the position of the Earth with respect to planet nPlanetID, as compared to PlanetAtExtremalUpperTransit which does depend on thee position of an observer on the Earth and indeed is independent of the position of the Earth.
See also: planetary macro functions.
Topic 180025, last updated on 18-Apr-2020