У меня нет навигатора - мне нужно в программе расчёт сделать. Вот сам нашёл - весьма точно считает метод - погрешность 0,5%.Хорош для города где расстояния в пределах 100 км максимум.
'Name: great-cirlces.ave 'Function: Calculate distance and initial bearing between points basing on a sphere 'Author: Maxim Dubinin ' sim@gis-lab.info 'Created: 31.05.2006 'Last Update: 02.11.2006 'Notes: This script is also used in Argos-tools for distance calculation
'pnt1, pnt2 - точки между которыми вычисляются расстояния 'pi - число pi, rad - радиус сферы (Земли), num - количество знаков после запятой pi = 3.14159265358979 rad = 6372795
'вычисление начального азимута x = (cl1*sl2) - (sl1*cl2*cdelta) y = sdelta*cl2 z = (-y/x).ATan.AsDegrees if (x < 0) then z = z+180 end z = -(z + 180 mod 360 - 180).AsRadians anglerad2 = z - ((2*pi)*((z/(2*pi)).floor)) angledeg = (anglerad2*180)/pi
'возврат значений длины большого круга и начального азимута distlist = {dist, angledeg} return distlist
где φА и φB — широты, λА, λB — долготы данных пунктов, d — расстояние между пунктами, измеряемое в радианах длиной дуги большого круга земного шара. Расстояние между пунктами, измеряемое в километрах, определяется по формуле:
всё это очень умно, но не практично! а кто из вас пробовал всё это вычислить, а потом поверить точность этих вычислений? я пробовал и пришел к выводу, что для расстояний более 10 морских миль погрешность составит около 20 метров для любого способа вычислений. надо только учесть, что: 1. одна минута по широте равна одной морской миле, т. е. 1852 метра 2. расстояние по долготе нужно измерять широтными минутами. а далее - пифагоровы штаны...