Проблема кривых треков решается сматчиванием трека с графом дорог. Так что если хотите более точных показаний расстояний то копайте в эту сторону. Вот ребята пилят удобный граф под это дело, но я читал по диагонали, не знаю насколько там завершено.
В давние в давние времена, когда команды в BASIC нужно было нумеровать, нумеровали их через 10, чтобы можно было вставить без проблем и не заниматься увеличением i+1. Так и вам стоит тогда делать не дробные числа, а через сотню. А когда где-то расстояния будет уже на исходе делать сново ребаланс.
А как определяют, что машина ворованная - машина есть, а прав на неё нету. Так и тут, используешь ПО, покажи разрешение.
Следы конечно останутся, но вряд ли так глубоко будут копать.
Мне вторая не понравилась организацией готовых библиотек, я остался на 1.х. А так они типа переосмыслили своё видение. Принципиально новых, сверх полезных фишек я там не нашёл.
А вам самому не кажется, что вы приводите слишком мало исходных данных. Это как есть сторона прямоугольника, как найти его периметр.
У вас есть ещё размеры картинки, широта и высота. Вам остаётся вычислить размер пикселя этой картинки. Это если научно. А так сами прикиньте где у вас левая граница картинки проходит, где верхняя и т.д. - тем самым вы её криво-косо но натяните на глобус :)
Или я чего-то не понял или у вас лыжи не едут. Нагуглить вхождении точки в многоугольник вроде должен мочь любой студент.
Если у вас всё в базе, так используйте spatial расширения для базы и считайте там.
Выше озвученные сервисы: для пользователя это лишь красивые картинки, а не геоданные.
То что вам нужно - это OpenStreetMap. Дальше конечно зависит от того, что вам там конкретно надо. Но пощупать вы уже можете найдя справа на сайте знак вопрос и ткнув куда нибудь.
Так там половина можно, но с разными условиями. Поэтому вопрос не понятен. Надо всё равно читать лицензию и выполнять условия.
Без задней мысли можно использовать только Public Domain.
Если остановки и на этих картах, то заранее в коде задать, что если ткнули сюда, то на карте создать маркеры в этих местах, а если туда, то в других местах.
Лучше писать то что есть, сидеть будет не так обидно :)
а) шифрование есть? Так и пиши - не предусмотрено.
б) база под паролем? пароль у админа? бекапы у Гугла? трансграничный доспуп? короче так и запиши, если что крайний и ответственный Петров.
Не, ну а что, зря что-ли приняли закон о забвении. Или их сайт пропадёт из выдачи или они удалят сообщения, это конечно если вы докажете в суде, что они верблюды ;)
Чтобы везде выглядели одинаково, приводите их к одному знаменателю, например к UTC+0.
Вообще вам на заметку.
All timezone-aware dates and times are stored internally in UTC. They are converted to local time in the zone specified by the TimeZone configuration parameter before being displayed to the client.