GML
ファイルをベクター レイヤーに読み込み、マップ上にプロットしようとしています。解析されてベクター レイヤーに追加されますが、何らかの理由でフィーチャがマップに表示されません。
(ソースコードに小さな変更を加えた)GML
からのファイルで試してみましたが、問題なく消化できるようです。Geoserver
openlayers 3
GML
何か不足していますか、それともカスタム ファイルをサポートしていないパーサーに何かありますか?
コード:
(function() {} (
'use strict';
var map = new ol.Map({
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})
],
view: new ol.View({
center: ol.proj.transform([0, 30], 'EPSG:4326', 'EPSG:3857'),
zoom: 2
})
});
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "/echo/xml/", true);
xmlhttp.onload = function () {
var format = new ol.format.GML2();
var xmlDoc = xmlhttp.responseXML;
// Read and parse all features in XML document
var features = format.readFeatures(xmlDoc, {
featureProjection: 'EPSG:4326',
dataProjection: 'EPSG:3857'
});
var vector = new ol.layer.Vector({
source: new ol.source.Vector({
format: format
})
});
// Add features to the layer's source
vector.getSource().addFeatures(features);
map.addLayer(vector);
};
xmlhttp.send();
));
元のGML
ファイルは、IOC ステーション GMLで入手できます。を避けるために、ローカルにコピーを作成しましたCORS
。