Openlayers: загрузка координатных данных из запроса - PullRequest
0 голосов
/ 31 августа 2018

Я бы хотел загрузить Coordinate-Data из http-запроса и нарисовать его в виде строки.

Пока у меня есть:

var coordinates = [[30.433333,19.066667], [30.732778,19.704444],[30.832778,19.84444]]; 
var featurestreet=new ol.Feature({
   geometry: new ol.geom.LineString(coordinates),
   name: 'xyz'
});

Но теперь я хочу загрузить векторные данные из файла, подобного этому:

var stree = new ol.layer.Vector({
    source: new ol.source.Vector(
{
    url: 'points.txt',
        format: new ol.format.GPX(), //what format to use here?
        name:'stree'
    })

  }); 
map.addLayer(stree);

Какой правильный формат? Я хочу, чтобы он был очень простым и сжатым, поэтому я не хочу использовать взорванный xml-код в этих данных.

1 Ответ

0 голосов
/ 31 августа 2018

Вероятно, это лучше всего сделать, заключив координаты в GeoJSON:

{ "type": "FeatureCollection", "features": [ { "type": "Feature", "geometry": { "type": "LineString", "coordinates":
[[30.433333,19.066667], [30.732778,19.704444],[30.832778,19.84444]]
} } ] }

Если ваши файлы .txt просто содержат массив координат, вы можете использовать пользовательский загрузчик, как в http://openlayers.org/en/v4.6.5/apidoc/ol.source.Vector.html, и добавить строки заголовка и нижнего колонтитула GeoJSON в xhr.responseText в vectorSource.getFormat (). ReadFeatures ()

Чтобы включить имя в GeoJSON:

{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "name": "xyz" }, "geometry": { "type": "LineString", "coordinates":
[[30.433333,19.066667], [30.732778,19.704444],[30.832778,19.84444]]
} } ] }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...