首页 / 浏览问题 / WebGIS / 问题详情
加载得iserver 地图偏移
zbb
11EXP 2023年07月17日

使用的是10i

我加载了http://localhost:8090/iserver/services/map-china400/wmts-china(安装好自带得那个)

iserver得这个瓦片貌似偏了,我在下面叠了高德得瓦片是ok得

我不太懂这个瓦片得规则,麻烦问问这个怎么搞

下面是我加载得代码(最近问题有点多呀)

var resolutions = new Array(17);

var matrixIds = new Array(17);

for (var z = 0; z < 17; ++z) {

    resolutions[z] = 156543.033928041 / Math.pow(2, z);

    matrixIds[z] = z;

}

var projectionExtent = ol.proj.get('EPSG:3857').getExtent()



var map = new ol.Map({

    target: 'map',

    view: new ol.View({

        // projection: 'EPSG:4326',//投影类别

        // center: ([120, 30]),

        center: ol.proj.transform([120, 30], 'EPSG:4326', 'EPSG:3857'),

        zoom: 12,

        // multiWorld: true

    }),

    layers: [

        new ol.layer.Tile({

            title: 'gaode',

            source: new ol.source.XYZ({

                url: 'http://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}'

            })

        }),

        new ol.layer.Tile({

            opacity: 0.9,

            source: new ol.source.WMTS({

                url: "http://localhost:8090/iserver/services/map-china400/wmts-china",

                layer: 'China',

                matrixSet: 'ChinaPublicServices_China',

                format: 'image/png',

                // projection: 'EPSG:4326', //数据的投影坐标系

                tileGrid: new ol.tilegrid.WMTS({

                    origin: ol.extent.getTopLeft(projectionExtent),

                    // extent: [-180.0, -85.05112877980652, 180.0, 85.05112877980646],

                    resolutions: resolutions,

                    matrixIds: matrixIds

                }),

                style: 'default',

                attributions: "Map Data <span>© <a href='http://support.supermap.com.cn/product/iServer.aspx' target='_blank'>SuperMap iServer</a></span> with <span>© <a href='http://iclient.supermap.io' target='_blank'>SuperMap iClient</a></span>"

            })

        }),

    ]

});

1个回答

china400的数据原始坐标系是wgs84坐标系,未进行任何加密加偏;而高德地图的CGCS2000是经过加密加偏的坐标系。

所以两者叠加后有偏移属于正常现象。如果要解决偏移,需要将原始数据从WGS84地理坐标系转换成CGCS2000。
杨兵
1
1,430EXP 2023年07月17日
我记得高德地图只偏一点(这都差了半个地球),而且我地图加了点击事件,就我截图鼠标那里,转换成4326坐标118,34,看起来确实是那个地方
从现象和代码分析原因应该是底图的坐标系与高德地图坐标系不一样导致,底图是3857投影,高德是2000地理坐标系,需要统一两个坐标系一致
...