TwinFan / LiveTraffic

LiveTraffic is an X-Plane multiplayer plugin, which fills your sky with live air traffic based on public flight tracking data.
https://twinfan.gitbook.io/livetraffic/
Other
99 stars 24 forks source link

Planes with no model info and not matching default plane's flight model aren't displayed #212

Closed TwinFan closed 1 year ago

TwinFan commented 3 years ago

Describe the bug Planes with seemingly valid tracking data are still not displayed by LiveTraffic if the following is true:

As a result the live plane's tracking data is discarded one after the other due to invalid performance. With Debug-level logging these lines are produced:

LTFlightData.cpp:1604/IsPosOK: AB5E16 N831WS: Speed too low: <h 303,  2213m @  84kt,  294ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )

To Reproduce Using "A3202" as default plane go to a place with lots of GA and other smaller traffic. KLAX is a good spot also for that.

Expected behavior Live planes should appear.

However, they cannot reasonably appear as A320s. One problem is that currently we wait for as long as we can before applying the model_typecode.txt approach of resolving the plane's type: Until the aircraft is actually created. But if it never gets created because we through away the data then...well...we never get there.

Another problem might be that if we absolutely cannot determine the model, then there would be some new functionality required to cater for planes not matching the default plane. Suggestion to find a suitable model:

Technical Info:

Log.txt

1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A29405 N26504: Speed too low: <h 127,  6398m @  79kt,  152ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A3E846 N3508J: Speed too low: <h  73, 16266m @  85kt,  184ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A40D63 N360MD: Speed too low: <h 188, 13739m @  72kt,   10ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A76FA8 N5788Y: Speed too low: <h  17,  3421m @  35kt,  125ft/m> with headingDiff = 98 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A8E4C6 N672SR: Speed too low: <h 281, 17316m @  91kt,   -2ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A8EFFC N675TH: Speed too low: <h 159,  2984m @  84kt, -261ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A9BE79 N727KL: Speed too low: <h 263,   270m @   2kt,  -46ft/m> with headingDiff = 78 (speed = 50 - 280kn, max turn = 180, max vsi = 2500ft/min, )
1:12:32.614 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A9D4DA N7320J: Speed too low: <h 232,  6682m @  35kt,  -10ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
1:12:32.867 LiveTraffic DEBUG LTFlightData.cpp:1604/IsPosOK: A68FDA N5216L: Speed too low: <h 282,  1439m @   9kt, -139ft/m> with headingDiff = 0 (speed = 100 - 500kn, max turn = 180, max vsi = 3000ft/min, )
TwinFan commented 3 years ago

The previous commit makes sure that planes, for which no model can be derived, at least are shown (as IsPosOK always returns true if no model could be found), albeit as default plane.

The perfect solution would allow to define a "slow" and a "fast" default plane...or any even more flexible model.