In addition to the usual updated data, this update fixes a number
of ICAO type designator errors in the FlightAware static data
export (notably for the A330).
Fixes#17
registrations.js would miscalculate the end of the address range
in these cases, causing the mapping to be skipped for addresses
that we could have handled.
This specifically affected German registrations beginning with
D-AP through D-AZ and D-BP through D-BZ
rather than blanking them out entirely.
This lets csv-to-json.py handle the case where an earlier input file has (e.g.)
a registration value which does not match the computed value, and then a later
input file has a value that does match. In this case we want to override the
older value with the newer value, then notice that the registration can be
omitted when writing the database. Previously in this case the older (incorrect)
value would be used.
When determining the color for a given altitude, don't check the current
altitude if it's ground but the altitude passed as an argument to the
function.
Without this fix, when clicking an aircraft on ground, its entire trail
is drawn in the color for ground.
When loading the history, the check for stale aircraft tracks is done
differently.
This results in lots of dotted/stale track after opening the web page.
Improve this by using the same 5 second timeout stale criterion to
postions loaded from history. Add an additional check to better detect
stale tracks when loading history positions that are spaced 30 seconds
apart.
Make aircraft trail handling more consistent and the code hopefully
easier to understand.
Fix position comparison (comparing array references does not work).
When initially loading the SkyView webpage, there are sometimes gaps in
the aircraft trails when the trail transitions from estimated/dotted to
known/solid track.
Fix elastic band style to handle estimated segments properly.
Right now all of these commands are in plaintext in a single line. Splitting them in a code block makes it more readable and easier to copy and paste directly into a terminal.
Rescale penalties so badly inconsistent messages will tend to get
the same penalty in all formats, so the ambiguity check kicks in.
With this final change the HEADING_SPEED and TRACK_TURN message rates
are almost identical, which is what we'd expect to see if the
interrogator is asking for both at about the same rate.
Before:
567 AMBIGUOUS
7445 GICB_CAPS
19173 EMPTY_RESPONSE
75252 UNKNOWN
76469 AIRCRAFT_IDENT
127603 ACAS_RA
212654 HEADING_SPEED
223068 DATALINK_CAPS
229807 TRACK_TURN
269267 VERTICAL_INTENT
466 "suspicious"
After:
7445 GICB_CAPS
17432 AMBIGUOUS
19173 EMPTY_RESPONSE
75252 UNKNOWN
76469 AIRCRAFT_IDENT
127603 ACAS_RA
212718 HEADING_SPEED
212878 TRACK_TURN
223068 DATALINK_CAPS
269267 VERTICAL_INTENT
328 "suspicious"