失百度API的百度地图准确叠加和坐标转换的解决方案探究

腾讯云开发者实验室也开发者提供了一个零门槛的在线实验平台,开发者实验室提供的力:

章版权由作者李晓晖及新浪共有,若转载请让大庭广众处于标明出处:http://www.cnblogs.com/naaoveGIS/

  1. 零门槛扫码即可免费领实验机器,辅助下自有机器出席,实验成功后扶助保留实验成果;
  2. 在线 WEB IDE 帮忙 shell
    命令操作,襄助机器文件操作,协理文件实时编辑,结合交互式教学心得提供了不错的在线实验体验;
  3. 基于云的真实标准的尝试环境,确保实验的普适性;

1.背景

时下项目达到如果假定以百度地图,得加载百度的开发包,然后经百度提供的接口来调用百度地图和以待标记的接触来得在百度地图中等等。

其一方案在分明劣势:

a.对原来系的毁坏。一套于底部开发的系列,其地图的加载形式均是自最底层通过换算行列号来举行加载的。而百度地图也必须剥离此方案经过调用百度API来贯彻,破坏了所有体系的架,并且导致多依据原架构的效率无法利用。

b.自身发表之矢量服务等不可以运用。因为百度采用的是非曲直专业火星坐标,自己集的大度shp数据借使非纠及百度坐标系下,是心有余而力不足正确叠加到百度地图及之。这同时造成了,当大家以shp数据开展矢量宣布后,由于自百度获取的坐标不是该矢量服务对应之坐标系下的坐标,从而不可以举办精确之询问等效果。

c.要素彰显等职能不可以定制。要素体现等得使用百度API,将要素坐标等作为参数然后于百度地图上记出来。这限制了要素的定制显示。

d.其他诸多问题。由于要使百度开发包,限制了AGS JS或OL的可行行使。

这,大家是否能无利用百度API,实现百度地图的确切加载,以及落实我图层可以准确叠加到百度地图上,从而使我图层对应之矢量服务好正确使用?

脚我跟大家大致介绍下时本身和一个同事登时半宏观之商讨成果。

具体内容可以看录像:

2.化解方案

自从立篇稿子 ASP.NET 开发者 着手修 ASP.NET Core 2
好望,有
60%底同班发计划使用.NET Core 2.0; .NET Core
的异常重点的一个特征即是跨越平台,Windows 很多同班还会师,学习 Linux
已经改成一个.NET
程序员的不可或缺技能,因而自与腾讯云同事合作在腾讯云上提供了 2 只 CentOS 7.2
环境下之试验教程,结合腾讯云上别样 Linux
的课,这就是是一个非凡好的实现在线学习条件。

2.1 百度地图非API引用

设大家能算是有百度地图的地图级别、切图原点、瓦片大小。我们虽可不采纳百度的API来调用百度地图了。

经对百度代码的解析,以及针对性业内横轴墨卡托投影的研讨,大家成取了百度地图的一一参数。

腾讯云在线实验室时发 30 单学科,具体参看
试列表 。其中有 2
单试验是.NET Core 和 Mono 相关的。

2.2 坐标转换

大家以坐标转换分为了在线转换和离线转换,并开发了有关工具。

工具的法力是:将shp图层导入到工具后,能用shp图层转换成百度坐标系下的shp图层。

工具的法则是:建立控制点仓房,利用算法,实现坐标转换。

于 linux 基础初步到.net core
的入门的文山会海试验,出手实验的遵循使较纯粹的看著作的力量使好过多
,这里叫我们整理一下每当腾讯云学习的多元试验推荐。

3.果实展现

图片 1

                       

1、Linux
基础入门
:实验介绍中央的
Linux
操作与指令,如目录切换、文件操作、进程查看、端口查看、资源占用意况等等,实现从零起头操作
Linux 机器。具体可以参见我整理的一个文档 《.NET 跨平台(CentOS )
相关文档整理》

4.问题

时下欠成果还非就此到路被,有很多位置需要改善要么探讨或者实现:比如工具效用、精度毫米级上的晋级、自制的百渡过瓦片下载工具等。

并且手上均是将坐标转到百度地图坐标系下。通过算法,我们当是足以拿百度坐标转换来通用坐标系下,可是此地还要提到到咋样以百度地图瓦片(栅格图片)纠正及通用地图下,此难度相比只有的矢量数据易难坏多。

即便时用来拘禁,假设只要运百度地图,除我们GIS部分,需要手机组、MIS组、实景组等,均待保留之数码也百度坐标系下的坐标,如此各组对接起来才再一次便于。可是,此时封存的多寡为百度坐标系下之数据,该数据而假定被其他店铺利用,还得举行更反算为通用坐标系下坐标。

看得出,大项目落得行使仍旧爆发不便的。可是,这个题目是拔取百度地图的通用问题,跟我们是不是举办了失百度API化无关。

 

                                                                
 —–欢迎转载,但保留版权,请吃大庭广众处于标明出处:http://www.cnblogs.com/naaoveGIS/

                                                                          
假使你觉得本文确实帮了若,可以微信扫一扫,举办小额的打赏和鞭策,谢谢
^_^

                                  图片 2

2、搭建 .NET Core
开发条件
:本实验用带您读书搭建
.NET Core 和 Jexus 组成的 .NET Core Web 开发环境。参考著作:在 CentOS
上运 Jexus 托管运行
ZKEACMS

3、搭建 Mono 开发环境
:本实验带你加建筑 Mono 开发条件, 体验在 Linux 上描绘传统.NET
应用之条件,具体参考:Mono 新突破:CentOS 7.2 下安装 Mono
5.0