
Отображение трека в OpenLayers
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 08 сен 2011, 06:46
- Репутация: 0
Отображение трека в OpenLayers
Здравствуйте, столкнулся с задачей отображения трека. Есть массив координат в php, как отобразить трек по этим координатам на OSM? Подскажите что почитать и если можно дайте пример
Пока только использую отображение координат в виде маркеров через OpenLayers.Layer.Text

- Denis Rykov
- Гуру
- Сообщения: 3376
- Зарегистрирован: 11 апр 2008, 21:09
- Репутация: 529
- Ваше звание: Author
- Контактная информация:
Re: Отображение трека в OpenLayers
Либо сохраняете ваши координаты GeoJSON формате в *.js файле:
и просто подключаете его на страницу своего проекта. Либо, пишете серверный скрипт, извлекающий данные из некоторого хранилища и отдающий клиенту в поддерживаемом формате, например в том же GeoJSON. Затем на клиенте создаете векторный слой и с помощью метода addFeatures добавляете все ваши точки. Вот пример как это делается вручную:
Код: Выделить всё
var points = /* представление данных в формате GeoJSON*/
Код: Выделить всё
buildingLayer = new OpenLayers.Layer.Vector("Points");
buildingLayer.addFeatures([
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-50.126, 36.755)),
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-100.196, 43.215)),
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-150.556, 56.615)),
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-170.423, 35.510))
]);
Spatial is now, more than ever, just another column- The Geometry Column.
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 08 сен 2011, 06:46
- Репутация: 0
Re: Отображение трека в OpenLayers
А можно трек нарисовать с момощью OpenLayers.Layer.PointTrack?? Если да
то можно примерчик 


- Denis Rykov
- Гуру
- Сообщения: 3376
- Зарегистрирован: 11 апр 2008, 21:09
- Репутация: 529
- Ваше звание: Author
- Контактная информация:
Re: Отображение трека в OpenLayers
Можно и так:
Уже поднималась тема.
Немного поподробнее написал тут.
Код: Выделить всё
track = new OpenLayers.Layer.PointTrack("Points");
trackr.addNodes([
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-50.126, 36.755)),
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-100.196, 43.215)),
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-150.556, 56.615)),
new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(-170.423, 35.510))
]);
Немного поподробнее написал тут.
Spatial is now, more than ever, just another column- The Geometry Column.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя