百度地图jsapi3.0覆盖物显示问题

经纬度坐标为-180到180,但地球是圆的,所以当覆盖物经度跨过180这个界限时(如170到190),这个190百度地图api处理不了,然后转换成-170,就变成了170到-170,会转到地球另一面(非大西洋这一面),难道就只能分割或者自己实现?

参考GPT和自己的思路:

对于这个问题,建议使用百度地图 API 提供的方法处理跨 180 度经线的覆盖物显示问题。

可以使用 BMap.Projection 类中的 lngLatToPoint()pointToLngLat() 方法来实现。

具体来说,你可以在初始化百度地图时,指定一个投影方式,比如 BMap.MercatorProjection,然后在创建覆盖物时使用 lngLatToPoint() 方法将经纬度坐标转换为像素坐标,然后根据需要进行调整,最后再使用 pointToLngLat() 方法将像素坐标转换回经纬度坐标。

以上就是解决这个问题的基本思路,具体实现细节还需要根据具体情况进行调整和优化。