Предпочтительный слой для создания трека (линии) на открытых слоях

В настоящее время использую openlayers в качестве пользовательского интерфейса карты в моем веб-приложении. Проблема в том, что я запутался со многими различными типами слоев, поддерживаемыми Openlayers (кстати, это хорошо). Так кто-нибудь может предложить подходящий слой для этого?

Моя цель проста, я просто хочу создать слой, содержащий линию как «линию отслеживания» (давайте назовем ее «трек»), как то, что мы видим здесь: Пример OpenStreetMaps

Прямо сейчас в настоящее время я использую PointTrack и GeoRSS для отображения слоя отслеживания, также я рассматривал возможность использования слоя KML, так как он более универсален.

Соображение принять:

  1. Он должен быть достаточно быстрым для отображения во всех браузерах (особенно в IE8).
  2. Он загружает данные из другого источника (например, файл kml или xml)
  3. Обновляемый
  4. Styleable (размер, цвет и т. д.)

PS: приложите образец, если есть


person Dels    schedule 04.02.2011    source источник


Ответы (1)


Я бы предпочел использовать OpenLayers.Layer.Vector в этой ситуации. Он очень гибкий, когда дело доходит до функций стиля, и у вас есть полный контроль над содержимым слоя (обновляемый).

Неважно, в каком формате у вас есть данные, поскольку вы можете читать множество различных форматов с помощью классов OpenLayers.Format.*. Таким образом, вы используете любой формат, который вам нужен, для создания объектов и добавления, а затем добавляете их в свой векторный слой.

Насколько быстро он отображает данные, зависит от того, сколько данных у вас есть. IE имеет тенденцию работать плохо, когда вы добавляете на карту много векторных данных.

Вы можете увидеть базовый пример здесь

РЕДАКТИРОВАТЬ: Если вам нужно отобразить много данных на карте, вы, вероятно, рассмотрите возможность использования слоя WMS.

Аналогичная проблема и ее решение описаны здесь.

Ваши данные отображаются на сервере и отправляются клиенту в виде изображения. Однако вы теряете некоторую гибкость по сравнению с тем, когда вы делаете все на клиенте.

person igorti    schedule 04.02.2011
comment
данные для самого трека отправляются устройствами с интервалом в одну минуту ... за один день я мог получить более 800 позиций, так какой слой лучше всего подходит для этой задачи? - person Dels; 05.02.2011