Please enable JavaScript to view this site.

 

int = PlanetNode(nDate, nSunSourceIndex, nPlanetID)

 

This macro function calculates the time, on nDate, when the orbit of the planet of planetary index nPlanetID crosses the celestial equator (declination zero).

 

•The allowed values for nPlanetID range from n_SUN to n_PLUTO.

•The sign of the result is positive if the planet is crossing the plane from south to north, and negative if the planet is crossing the plane from north to south, 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).

•A resulting time component that truncates to zero is represented by +1 or -1.

 

The macro code below checks if any of the planets, or the Moon, cross the celestial equator, on the date of the incoming macro token.

sResult = ''
for nPlanetID = n_MOON to n_PLUTO step 1
    sBuffer = ''
    nCurResIdx = PlanetNode(n_TokenDate, 1, nPlanetID)
    if nCurResIdx > 0
        sBuffer = PlanetName(nPlanetID) + ' northward equator crossing'
    endif
    if nCurResIdx < 0
        sBuffer = PlanetName(nPlanetID) + ' southward equator crossing'
    endif
    // add the time it occurs in parentheses
    if nCurResIdx <> 0
       sBuffer = sBuffer + FormatTime('" ("hh:nn")"', Abs(nCurResIdx), true)
    endif
    if sBuffer <> ''
       if sResult <> ''
          sResult = sResult + ', '
       endif
       sResult = sResult + sBuffer
    endif
endfor

This is an event that is independent of the position of an observer on the Earth although the selected time zone still determines the result's local date and time.

 

See also: planetary macro functions.

 


Topic 180020, last updated on 12-Oct-2026