Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Реализация карты: как связать широту-долготу с координатной плоскостью? (https://javascript.ru/forum/misc/74636-realizaciya-karty-kak-svyazat-shirotu-dolgotu-s-koordinatnojj-ploskostyu.html)

NoobFindAnswer 25.07.2018 23:57

Реализация карты: как связать широту-долготу с координатной плоскостью?
 
Здравствуйте. У меня есть карта России(svg). Не знаю еще как точно буду реализовывать, возможно с помощью canvas'a. Но суть в том, что мне нужно отмечать на ней точки, имея входные данные широту и долготу. То есть у меня есть какие-то геокоординаты мне нужно пропустить их через какую-то функцию и получить их координаты xy для того, чтобы разместить эту точку на плоскости. Понимаю, что тут не все просто и возможно потребуется сервисы какие-то подключать. Я не знаю еще какие технологии буду использовать, поэтому если есть готовые решение, то подскажите. Либо же в какую сторону копать, может кто сталкивался с таким? Буду рад любому совету. Заранее спасибо

Alexandroppolus 26.07.2018 00:28

NoobFindAnswer,
может, просто использовать какие-нибудь карты? яндексовые, гугловые, 2gis, mapbox. ...
там по координатам просто маркеры ставить надо, только и всего.

Или у тебя там какая-то проекция, и надо на ней всё делать?

NoobFindAnswer 26.07.2018 01:05

Нет, не проекция. Вообще задача такова:
взять отдельно карту России и иметь возможность ставить на неё точки, при нажатии на которые всплывает окно с фото и данными. Обычные карты ведь не подлежат такой кастомизации? Да еще и дизайн самой карты нужен свой

NoobFindAnswer 26.07.2018 01:46

Для самого скрипта. Есть база, она обновляется периодически. Там лежит широта и долгота этих точек. При загрузке страницы они должны спроецироваться на эту карту, ну и обладать интерактивностью, которую я описал

NoobFindAnswer 26.07.2018 01:48

Вообще, суть даже не в том, что они делают, кто их ставит и как это выглядит. А в этом: как зная широту и долготу, мне верно разместить их на карте. Ну или если есть какие-то карты, которые имеют широкие возможности кастомизации, то тоже было бы неплохо

Alexandroppolus 26.07.2018 01:56

NoobFindAnswer,
То что ты описал - типовая задача карточных движков, о которых я говорил. Прям вот настолько типовая, что банальней не придумаешь.
Точки - это маркеры, по ним можно кликать, всплывают балуны с контентом... Для размещения маркера просто указываешь широту и долготу как есть.

MallSerg 26.07.2018 02:17

Это называется полярная система координат тынц

NoobFindAnswer 26.07.2018 02:21

Цитата:

Сообщение от Alexandroppolus (Сообщение 491006)
NoobFindAnswer,
То что ты описал - типовая задача карточных движков, о которых я говорил. Прям вот настолько типовая, что банальней не придумаешь.
Точки - это маркеры, по ним можно кликать, всплывают балуны с контентом... Для размещения маркера просто указываешь широту и долготу как есть.

Что-то я сейчас погуглил мануал движка яндекса, походу так и есть, спасибо) А отдельно карту страны там можно вытащить, не знаешь?

NoobFindAnswer 26.07.2018 02:40

Цитата:

Сообщение от Rise (Сообщение 491009)
Посмею предположить, что если узнать где-то реальные координаты (широта и долгота) четырех точек, соответствующих границам прямоугольника карты, конечно если карта не совсем примерная, то относительно их рассчитать местоположение маркера дело техники.

Допустим за 0, 0 можно взять по широте долготе двух крайних точек страны. Да, тогда это дело техники, если бы земля была сферическая я бы даже посидел бы, формулу повыводил(хотя такие есть явно, но ради интереса). Но она не такая, а карта должна быть очень точной.

NoobFindAnswer 26.07.2018 02:43

Цитата:

Сообщение от Rise (Сообщение 491009)
Широта и долгота на прямоугольной плоскости это оси y и x, или нет?

Типа того, но они изменяются по разному. Единичный отрезок широты имеет больший размер чем долготы(это я условно, на самом деле хз как на самом деле). Тут нужно проецировать, не все так просто


Часовой пояс GMT +3, время: 00:46.