Openlayers 3 GeoJSON坐标显示错误的结果

时间:2016-03-18 08:14:21

标签: angularjs json openlayers-3 geojson coordinate-transformation

我正在使用angular-openlayers-directive来构建我的项目。

我尝试重写geojson部分的example因为我会动态获取点信息。所以我在内部创建了geojson的源代码,而不是从json文件加载。但是,我的代码的位置与我期望的完全不同。

结果假设在我设定的坐标处显示一个点。但重点在于[0,0]。如果我改变使用json文件中的加载,那将是有效的。

我不知道为什么坐标会发生这么大的变化。如果有人知道原因,请告诉我!我会很感激的。

以下是我的代码:

        source: {
            type: "GeoJSON",
            projection: 'EPSG:4326',
            geojson: {
                object: {
                    type: "FeatureCollection",

                    features: [{
                        type: "Feature",
                        id: "TWN",
                        properties: {
                            name: "Taiwan"
                        },
                        geometry: {
                            type: "Point",
                            coordinates: [25.038507, 121.525527]
                        }
                    }]
                }
            }
            //url: 'json/ESP.geo.json'
        }

2 个答案:

答案 0 :(得分:2)

您提供的GeoJSON无效。 GeoJSON坐标对采用经度/纬度的形式,而不是您用于台湾的纬度/经度。切换它们你就没事了。

答案 1 :(得分:0)

“投影”的展示位置错误。属性。下面的答案显示了正确的答案。

source: {
        type: "GeoJSON",
        geojson: {
            object: {
                type: "FeatureCollection",

                features: [{
                    type: "Feature",
                    id: "TWN",
                    properties: {
                        name: "Taiwan"
                    },
                    geometry: {
                        type: "Point",
                        coordinates: [25.038507, 121.525527]
                    }
                }]
            },

            projection: 'EPSG:4326',
        }

}