一、CRS源码解析
CRS的定义就几个函数:
没错。你看出来了,其实这玩意就是提供了wgs84坐标系与目标坐标系之间转换的一种算法。因为leaflet内部都是用经纬度坐标系表达的坐标,所以leaflet内部表达所用的坐标系都是wgs84,也就是EPSG:4326。所以啊。不管是计算瓦片行列号,计算瓦片最终在地图上的位置,都需要对应的坐标系的定义进行转换。L.CRS就是定义了这样的一种转换算法。我们来看一下L.CRS.latLngToPoint内部实现: 没错。调用了this.projection.project()这个函数。那this.projection的定义呢?没错。单独使用L.CRS这个是无法实现坐标转换的。这只是一个模板,是一个壳,真正做转换的其实是this.projection做的事情。于是我们往下看,Leaflet到底在这个L.CRS里做了什