openlayers添加Overlay坐标偏移(改变position无效)

前言:学习webgis的时候老师让我们尝试制作专题地图,结合Echarts在地图上加载统计图表。本人尝试添加一个饼状图,坐标中心设置为北京市的经纬度。

使用ol.overlay的时候,按照网上的示例如下:

    var pt = [116.42,39.95];
    var pie = new ol.Overlay({
        position:pt,
        positioning: 'center-center',
        element: document.getElementById('overlay')
    });
    map.addOverlay(pie);

但是我得到的结果就很奇怪,如下图:
在这里插入图片描述
同时修改position的坐标值发现饼状图位置几乎没有变化,后来将代码修改如下:

        var gdp=new ol.Overlay({
            position:ol.proj.transform([116.42,39.95], 'EPSG:4326', 'EPSG:3857'),
            //position:[116.42,39.95],
            positioning: 'center-center',
            element: document.getElementById('piegdp'),
            stopEvent:false
        });
        map.addOverlay(gdp);

这样就成功了,效果如下:
在这里插入图片描述
总结:应该是投影的问题,但是经过尝试将position设置为投影坐标3857位置还是错误的。同时,本人在网上看到一种修改方法是:
position:ol.geom.Point([,])
本人尝试是错误的,因为position属性需要一个ol.Coordinate的返回值,ol.geom返回的是geometry

一个小问题解决了还是很开心的,希望能对大家起到一点点帮助嘻嘻嘻~~

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值