Every Visible pass of the Satellite over the Observer that overlaps the
interval: exactly findPasses(...) keeping the Visible ones, the same
Passes to the bit, found by searching only the Observer's Nights.
A Visible window needs the Observer in Night, so every Visible pass holds
an instant of Night. That instant lies in one of the interval's Nights
(nightsOver), whose search reports the Pass in full; or before the
interval, and then the Pass is in progress at its start; or after it,
and then the Pass is in progress at its end. The two ends are searched
as empty intervals, which report only a Pass in progress there. A
crossing is refined on a fixed grid (Sky.crossing), so the Pass one of
these searches finds is the one the whole interval's search finds, and a
Pass two of them find is kept once. Nothing is lost and nothing differs:
the daylight hours are simply never walked, and no Pass in them has its
window searched, which is where most of a low orbit's search goes. The
bound on a Pass's length holds the same: a Satellite that stays up longer
than LONGEST_PASS_MS has no Pass in either search, whichever interval's
walk meets it.
Every Visible pass of the Satellite over the Observer that overlaps the interval: exactly
findPasses(...)keeping the Visible ones, the same Passes to the bit, found by searching only the Observer's Nights.A Visible window needs the Observer in Night, so every Visible pass holds an instant of Night. That instant lies in one of the interval's Nights (
nightsOver), whose search reports the Pass in full; or before the interval, and then the Pass is in progress at its start; or after it, and then the Pass is in progress at its end. The two ends are searched as empty intervals, which report only a Pass in progress there. A crossing is refined on a fixed grid (Sky.crossing), so the Pass one of these searches finds is the one the whole interval's search finds, and a Pass two of them find is kept once. Nothing is lost and nothing differs: the daylight hours are simply never walked, and no Pass in them has its window searched, which is where most of a low orbit's search goes. The bound on a Pass's length holds the same: a Satellite that stays up longer thanLONGEST_PASS_MShas no Pass in either search, whichever interval's walk meets it.