如何使用高德地图展示基站信息

[复制链接]
发表于 : 2018-12-25 18:23:52 最新回复:2019-12-23 10:48:13
1808 2
TangSong
TangSong  新锐

一、需求背景

平时处理客服工单投诉时,使用的是Mapinfo软件,地图信息是安徽地图2010版本的,最新的地图版本没有,而且不能实时更新,这样在查找用户投诉位置信息时比较困难,如果是在在线地图上绘制基站地图信息,能够实现如下功能:

1.可以搜索基站位置,快速定位

2.点击地图获取用户投诉经纬度

3.点击基站,可用展示基站站号,方位角等信息

4.默认情况下,展示基站站名

5.展示基站方位角,2/3/4使用不同的颜色

6.加入测距功能,测量用户投诉位置与基站之间距离

7.点击网页按钮,可以自动隐藏2G或者3G

如果实现上述功能,处理客服工单投诉时候就能方便快捷多了,而且可代替使用Mapinfo软件。

二、准备工作

为实现这些需求,需要使用PythonDiango技术以及高德地图的JS接口服务,另外如何展示基站的方位角,因为基站只有一个经纬度也是需要解决的问题。开发这些功能,需要电脑安装Python3.XNode.js,开发环境选择PycharmWebStorm软件,下面来讲解如何实现这些功能。

三、功能实现

准备基站数据库,必需字段是经纬度、方位角、基站名称,另外基站信息根据自己处理客户投诉习惯需要查找的信息设定,比如4G这可我需要基站管理地址IP,方便远程登陆基站查看是否运行正常;基站站号Enb_id,方便根据站号提取基站指标判断是否有隐性故障;基站扇区长度dist(展示在地图上的大小)等等

注意数据库中的经纬度不能为空或#N/A,否制会出现错误。

由于平时基站数据库中经纬度是GPS格式,而高德地图上是使用的GCJ-02格式,所以还需要转换下经纬度,否制后面生成的基站在高德地图上会产生偏移。这个可以使用Python语言批量转换。具体代码如下:

另外,基站经纬度是一个点,但是如何展示基站的方位角呢?可以把基站扇区是由长度的,比如说100米,那么根据方位角和基站经纬度就可以计算出另外三个点的经纬度,再根据高德地图JS接口服务的连线功能连接起来,就可以实现展示方位角了。计算扇区经纬度的脚步如下:

还有,高德地图上使用前端JS无法读取本地静态文件,需要通过Node.js开启后台服务才行,这样的话就需要使用Webstorm来编写查看基站扇区的js文件,这个文件声明一个变量在Pycharm中调用

关键点是其中templates文件夹下的szmap.html文件如何编写如测距功能、点击基站获取提示信息等,这些实际上也比较简单,结合高德地图的js服务接口示例,高德地图 JS API 是一套 语言开发的的地图应用编程接口,移动端、PC端一体化设计,一套 API 兼容众多平台。目前 JS API 免费开放使用。JS API 提供了2D3D地图模式,满足绝大多数开发者对地图展示、地图自定义、图层加载、点标记添加、矢量图形绘制的需求,同时也提供了 POI 搜索、路线规划、地理编码、行政区查询、定位等众多开放服务接口。

   基于功能需要,这里使用到覆盖物、输入提示、事件系统示例,具体可以参考高德开放平台示例中心,注意需要申请高德地图key才能使用,网址如下:

https://lbs.amap.com/api/-api/example/input/get-input-data

 

 

通过开发小工具能帮助到日常工作中提升工作效率,我觉得还是很有必要的,希望兄弟地市的同事也能分享下工作中的好工具、好帮手,一起共同进步。

 

  • x
  • 常规:

点评 回复

跳转到指定楼层
hxft
hxft  精英 发表于 2018-12-25 19:16:17 已赞(0) 赞(0)

多谢分享!
  • x
  • 常规:

点评 回复

hilton
hilton   发表于 2019-12-23 10:48:13 已赞(0) 赞(0)

z正好有类似的需求,兄弟可以分享下代码吗?
  • x
  • 常规:

点评 回复

发表回复
您需要登录后才可以回帖 登录 | 注册

警告 内容安全提示:尊敬的用户您好,为了保障您、社区及第三方的合法权益,请勿发布可能给各方带来法律风险的内容,包括但不限于政治敏感内容,涉黄赌毒内容,泄露、侵犯他人商业秘密的内容,侵犯他人商标、版本、专利等知识产权的内容,侵犯个人隐私的内容等。也请勿向他人共享您的账号及密码,通过您的账号执行的所有操作,将视同您本人的行为,由您本人承担操作后果。详情请参看“隐私声明
如果附件按钮无法使用,请将Adobe Flash Player 更新到最新版本!
登录参与交流分享

登录参与交流分享

登录