parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

DD.DDDD -> DD MM SS (60-ичная система исчисления)

AK666 16.07.2020 05:15 / 16.07.2020 05:33

намалевал преобразовалку координат в "человекоглазопонятньійконтурньій" вариант
но есть некоторьіе заскоки при нулевьіх секундах и минутах
	$LatDD(^math:trunc($Lat))
	$LatMM(^math:trunc(($Lat - $LatDD) * 60))
	$LatSS(^math:frac(($Lat - $LatDD) * 60) * 60)
	$LatL[^if($Lat<0){S}{N}]

	$LonDD(^math:trunc($Lon))
	$LonMM(^math:trunc(($Lon - $LonDD) * 60))
	$LonSS(^math:frac(($Lon - $LonDD) * 60) * 60)
	$LonL[^if($Lat<0){W}{E}]

$lResult[
 ^eval(^math:abs($LatDD))[%02.0f]°
 ^eval(^math:abs($LatMM))[%02.0f]'
 ^eval(^math:abs($LatSS))[%02.0f]"$LatL

 ^eval(^math:abs($LonDD))[%02.0f]°
 ^eval(^math:abs($LonMM))[%02.0f]'
 ^eval(^math:abs($LonSS))[%02.0f]"$LonL
]
$Lat(45.933333)
$Lon(36.633333)

-> 45°55'60"N 36°37'60"E

а 60" єто ж 1' :)
тобто правильньій ответ по идее 45°56'00"N 36°38'00"E

всю голову уже сломал :(