2015-03-09 1 views
1

Поскольку вопрос государства, как я могу нарисовать ломаную линию или кривую между двумя точками на карте Google что-то вроде этого:Как можно рисовать полилинии или кривые в картах Google между двумя местоположениями, но избегать рисования на земле?

enter image description here

но избежать нанесения на любую линию между двумя точками.

Я хочу использовать эту функцию для рисования динамичных маршрутов круиза. Не принимайте во внимание очень сложные маршруты, что-то простое.

Например, предположим, что у меня есть такие места: Барселона, Марсель, Ницца, Генуя, Неаполь, Палермо и обратно в Барселону.

Если я рисовать прямые линии, это будет выглядеть следующим образом: http://prntscr.com/6eubrs Вместо этого я хотел бы добиться чего-то вроде этого: http://prntscr.com/6eucm9

Или есть способ использовать/доступ паромные и рисовать на них?

+2

вам нужны данные для суши, то в буфере, как далеко вы хотите быть в море. Вы найдете все совпадающие точки между вашими точками на основе буферизованной области и нарисуйте полилинию вдоль этих точек - это можно сделать, добавив все точки в массив и создав полилинию, используя это как ваш путь. Посмотрите на библиотеку GeoJson для управления вашими данными о земле, а затем добавьте их на уровень данных Google Maps. https://developers.google.com/maps/documentation/javascript/datalayer#load_geojson Более эффективный способ: получить API, который дает ваши маршруты доставки и использовать пространственные данные. –

+0

Спасибо за комментарий. Проблема в том, что коммерческие маршруты очень сильно отличаются от маршрутов круизов, плюс я нашел некоторые круизные маршруты, которые очень странные, например, остановка возле небольшого острова, на котором нет коммерческих маршрутов. –

+0

Но идея получения наземных данных и буферизации звучит как решение, которое стоит попробовать. Я попробую что-нибудь и посмотрю, работает ли это :) –

ответ

1

Вы можете использовать OpenStreetMap и импортировать данные паромы с одним из existing routing engines

+0

Я просто понял, что маршруты паром не в порядке. Если у меня есть круиз, который отправляется из Барселоны в Неаполь напрямую, маршрут паром, созданный Google или любым другим Maps api, будет иметь несколько перелетов в разных других местах, и это не нормально, так как он не будет рисовать прямой маршрут, который мне нужен это к. –

Смежные вопросы