读取 GML 文件时出现问题(未重新投影)

Problems reading GML file (not reprojected)

我正在尝试使用此代码读取 openlayers 3.4.0 文件中的 GML

var from = ol.proj.get("EPSG:4326");
var to = ol.proj.get("EPSG:3857");
var gml = new ol.source.StaticVector({
    format: new ol.format.GML2({dataProjection: from, 
                                featureProjection: to}),
    projection: 'EPSG:3857',
    url: 'test_4326.gml'
}); 
var vectorLayer = new ol.layer.Vector({
    source: gml
});
var map;
function init(){
    map = new ol.Map({
        layers: [vectorLayer],
        target: 'map',
        view: new ol.View({
            center: [0, 0],
            zoom: 2
        })
    });
}

它适用于 KML 或 GeoJSON(更改 ol.format 并删除相关参数)但不适用于 GML 文件(ol.format.GML2 中也没有参数),我尝试了不同的 gml文件,但没有任何工作。似乎在阅读阶段也没有重新投影坐标。 读取 GMl 文件的正确方法是什么?

考试时间在http://kili.aspix.it/ol/testGML.html

目前执行此操作的方法是使用普通 ol.source.Vector,手动使用 XHR 获取数据并直接对格式进行解析,这样您就可以为 readFeatures 函数指定所有选项。之后,您将向源添加功能。例如:

var vector = new ol.layer.Vector({
  source: new ol.source.Vector()
});
var format = new ol.format.GML2();
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "gml.xml", true);
xmlhttp.onload = function() {
  var xmlDoc = xmlhttp.responseXML;
  var features = format.readFeatures(xmlDoc, {
    featureProjection: 'EPSG:3857',
    dataProjection: 'EPSG:4326'
  });
  vector.getSource().addFeatures(features);
};
xmlhttp.send();