手绘地图制作如何实现“图层覆盖”
1、确认地图开放平台接口。
这是首要的关键点。如今百度地图平台,有开放的接口。通过这些开放接口,便可实现让手绘图覆盖到地图平台上。

2、手绘地图覆盖到地图平台的方式。
百度地图开放平台提供了多种把手绘地图覆盖到平台的实现方式,可以实现自定义图层覆盖到地图平台:可以把整张手绘地图切为瓦片图来覆盖到地图平台之上,达到用户使用时按需加载的效果。

3、更复杂和完善的手绘地图覆盖的效果。
TileLayer.Flexible接口有一个参数,便是success这个函数。在createTile方法里,其实还可以自定义更加复杂的内容,然后传入success这个函数,地图会自动把传入的对象渲染到瓦片里。
根据这个原理,可以实现更加复杂的需求。

4、手绘地图覆盖到平台的关键技术点。
手绘地图要覆盖到平台,最关键的点就在于瓦片图的层级、x/y坐标。而这一点,其本质又是手绘地图所在区域的经纬度所决定的。
因此,在下载地图底图的时候,系统已知地图的经纬度,因此系统在对完成的手绘地图进行切片的时候,就会从默认记忆的经纬度开始计算,通过地球的经纬度、墨卡托坐标、像素偏移三者的转换关系,计算出当前手绘图层的第一张瓦片的偏移位置。找到此关键之后,后面切图就非常简单,只需要以256像素为依据,进行累加切图即可。

5、更好的图层加载体验。
因为手绘地图打开之后,要加载的瓦片图很多,即便是只加载可视区域内的瓦片图,数量也是不少。因此,为了用户在使用手绘地图时有更好的放大、缩小查看的体验,可以使用预加载瓦片图方案。

6、结尾。
手绘地图覆盖到底图的方式,其实还有更多,因此不再过多赘述。最后实现的效果如图所示。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:131
阅读量:49
阅读量:97
阅读量:46
阅读量:172