@@ -3336,15 +3336,15 @@ function doTAKjson(p) {
33363336 d . lon = Number ( p . point . lon ) ;
33373337 d . layer = "TAK" ;
33383338 if ( p . type . indexOf ( 'a' ) === 0 ) {
3339- d . hdg = p . detail ?. track ?. course ;
3339+ d . track = p . detail ?. track ?. course ;
3340+ if ( d . track && d . track == 9999999 ) { delete d . track ; }
3341+ if ( d ?. track ) { d . track = Math . round ( d . track * 100 ) / 100 ; }
33403342 if ( p . detail ?. track ?. speed ) {
33413343 d . speed = Number ( p . detail ?. track ?. speed ) ;
33423344 if ( d . speed == 9999999 || d . speed == 0 ) { delete d . speed ; }
33433345 else {
33443346 d . speed = d . speed + " m/s" ;
3345- delete d . hdg ;
3346- d . course = p . detail ?. track ?. course ;
3347- d . options = { direction : d . course } ;
3347+ if ( d ?. track ) { d . options = { direction : d . track } } ;
33483348 }
33493349 }
33503350 if ( p . detail ?. __group ?. name ) {
@@ -3371,7 +3371,6 @@ function doTAKjson(p) {
33713371 d . alt = Number ( p . point . hae ) || 9999999 ;
33723372 if ( d ?. alt && parseInt ( d . alt ) == 9999999 ) { delete d . alt ; }
33733373 else { d . alt = d . alt + "m" ; }
3374- if ( d ?. hdg && parseInt ( d . hdg ) == 9999999 ) { delete d . hdg ; }
33753374 setMarker ( d ) ;
33763375 }
33773376 else {
@@ -3395,15 +3394,15 @@ function doTAKMCjson(p) {
33953394 d . type = p . type ;
33963395 d . uid = p . uid ;
33973396 d . name = p . detail ?. contact ?. callsign || p . uid ;
3398- d . hdg = p . detail ?. track ?. course ;
3397+ d . track = p . detail ?. track ?. course ;
3398+ if ( d ?. track && d . track == 9999999 ) { delete d . track ; }
3399+ if ( d ?. track ) { d . track = Math . round ( d . track * 100 ) / 100 ; }
33993400 if ( p . detail ?. track ?. speed ) {
34003401 d . speed = Number ( p . detail ?. track ?. speed ) ;
34013402 if ( d . speed == 9999999 || d . speed == 0 ) { delete d . speed ; }
34023403 else {
34033404 d . speed = d . speed + " m/s" ;
3404- delete d . hdg ;
3405- d . course = p . detail ?. track ?. course ;
3406- d . options = { direction : d . course } ;
3405+ if ( d ?. track ) { d . options = { direction : d . track } } ;
34073406 }
34083407 }
34093408 try {
@@ -3415,7 +3414,6 @@ function doTAKMCjson(p) {
34153414 d . alt = p . hae || 9999999 ;
34163415 if ( d . alt && d . alt == 9999999 ) { delete d . alt ; }
34173416 else { d . alt = d . alt + "m" ; }
3418- if ( d . hdg && d . hdg == 9999999 ) { delete d . hdg ; }
34193417 setMarker ( d ) ;
34203418 }
34213419 else {
0 commit comments