Я следовал этой статье https://docs.microsoft.com/en-us/ef/core/modeling/spatial, но не работает.
var seattle = new Point(-122.333056, 47.609722) { SRID = 4326 };
var redmond = new Point(-122.123889, 47.669444) { SRID = 4326 };
var distance = seattle.ProjectTo(2855).Distance(redmond.ProjectTo(2855));
Этот код возвращает расстояние = 17062 метра
С сайтов Калькулятор расстояния I ' м получая расстояние = 17,02 километра
Расстояние примерно такое же для примера в статье.
Но если я выберу следующие координаты:
var seattle = new Point(1.230469, 19.973349) { SRID = 4326 };
var redmond = new Point(17.753906, 19.642588) { SRID = 4326 };
var distance = seattle.ProjectTo(2855).Distance(redmond.ProjectTo(2855));
Этот код расстояние возврата = 1926891 метров
С веб-сайтов расстояние = 1728 километров
Разница составляет около 200 метров прибл. Я тестировал в других местах, и результаты хуже
В статье есть комментарий: // Для разных данных требуется другая система координат.
Что это значит? Должен ли я использовать другую систему координат, чем 2855? Какой?