首页 / 浏览问题 / WebGIS / 问题详情
加载wmtsLayer时,地图是偏移,怎么处理
10EXP 2023年09月08日

这个是效果图

这个是代码

1个回答

您好,

1、根据您的代码来看,您加载的点是地图的中心点坐标,可以从iserver的地图列表中点击地图名,查看地图的中心点坐标是否设置正确;

2、您的wmtsLayer数据是什么坐标系的呢?您没有定义坐标系,iClient for Leaflet默认支持EPSG:4326,EPSG:3857、平面无投影坐标系;如果是加载其他坐标系的数据需要自己定义坐标系才能正确加载地图,可以参考这篇文章:SuperMap iClient加载地图之坐标系问题详解_supermap iclient for cesium加载4548投影坐标系-CSDN博客

希望对您有所帮助!

1,090EXP 2023年09月08日

增加了crs: L.CRS.EPSG4326,位置偏移更大了

您好,

1、您在定义坐标系的时候有没有设置范围呢,例如: origin: [-180.0, 90.0],
bounds: L.bounds([-180.0 , -90.0], [180.0 , 90.0])

2、可能是您加载的图层数据有问题,我这边本地测试自己发布的wmts服务,坐标点定位是没问题的,请检查您加载的图层是不是4326坐标系。我的测试代码如下:

var map = L.map('map', {
        center: [40.39,124.54],
        maxZoom: 18,
        zoom: 7,
        crs: new L.supermap.Proj.CRS("EPSG:4326",
            {
                origin: [-180.0, 90.0],
                bounds: L.bounds([-180.0 , -90.0], [180.0 , 90.0])
            })
    });
    new L.supermap.WMTSLayer("https://iserver.supermap.io/iserver/services/maps/wmts100",
        {
            layer: "世界地图_Day",
            style: "default",
            tilematrixSet: "Custom_世界地图_Day",
            format: "image/png",
            requestEncoding: 'REST',
            attribution: "Map Data <span>© <a href='http://support.supermap.com.cn/product/iServer.aspx' target='_blank'>SuperMap iServer</a></span>"
        }
    ).addTo(map);
var marker = L.marker([40.39,124.54]).addTo(map);

2、可以把这个图层加载到标准的4326底图中进行测试,看看是否出现偏移。

...