由 BG6RSH » 周四 3月 12, 2020 3:41 pm
由于国内地图不论是高德、百度、腾讯等,都不是直接使用的GPS坐标(WGS-84原始坐标系),而是使用的是GCJ-02坐标系,又名“火星坐标系”,百度坐标系的bd-09坐标系。因此直接在Traccar系统上用高德、百度地图,会存在偏移几百到几千米的距离。
目前国内有很多朋友想了很多好办法解决了这个问题,但我一直没找到一个适合我的方法,有些方法也没说的很清楚。
春节以来,武汉因新冠疫情,宅在家里已经一个月了,实在没事就将Traccar的最新源码V4.8拉了下来分析了一下,在Deepin系统上搭建了编译环境。经过几天的跟踪分析,直接将GPS坐标转高德地图坐标、将坐标转换为具体地址的功能内置到系统中。经过几天的测试,感觉还行。目前只适配了手机客户端Osmand、Gt30、Gt06、Gt02几种协议,且只在手机客户端上测试通过,其他几个协议没有设备,无法测试。欢迎大家下载测试。。。。
要更换成高德适配版一共要替换下面5个文件:
1)tracker-server.jar
2)./web/app.min.js
3)./web/l10n/zh.json
4)./web/app/view/map/BaseMap.js
5)./web/app/store/MapTypes.js
第一个文件是Traccar服务主程序,后面4个是WEB服务的页面文件,将这5个文件替换后,重启服务,清除浏览器缓存就行了,下面来说说更换方法。以群晖Docker中的Traccar来说明:(跟hass.io中安装的traccar的配置方法不一样)。
第一步,进入traccar系统终端:
- t12.PNG (21.11 KiB) 查看 1606 次
- t11.PNG (30.61 KiB) 查看 1606 次
- t10.PNG (25.73 KiB) 查看 1606 次
第二步,先将要替换的5个文件作备份:
mv tracker-server.jar tracker-server.jar.bak
mv ./web/app.min.js ./web/app.min.js.bak
mv ./web/l10n/zh.json ./web/l10n/zh.json.bak
mv ./web/app/view/map/BaseMap.js ./web/app/view/map/BaseMap.js.bak
mv ./web/app/store/MapTypes.js ./web/app/store/MapTypes.js.bak
- t13.PNG (30.14 KiB) 查看 1606 次
第三步、下载适配版的文件到原目录中
wget http://traccar.atoo.top:5080/downloads/tracker-server.jar
wget -O ./web/app.min.js http://traccar.atoo.top:5080/downloads/app.min.js
wget -O ./web/l10n/zh.json http://traccar.atoo.top:5080/downloads/zh.json
wget -O ./web/app/view/map/BaseMap.js http://traccar.atoo.top:5080/downloads/BaseMap.js
wget -O ./web/app/store/MapTypes.js http://traccar.atoo.top:5080/downloads/MapTypes.js
- t16.PNG (9.53 KiB) 查看 1606 次
- t15.PNG (3.69 KiB) 查看 1606 次
更新完后目录结构:
- t14.PNG (12.85 KiB) 查看 1606 次
第四步、重新启动Traccar服务:
再清除浏览器缓存
- t18.PNG (99.35 KiB) 查看 1606 次
- t17.PNG (21.14 KiB) 查看 1606 次
- t19.PNG (163.67 KiB) 查看 1604 次
大家也可在我的服务器上试用一下。
http://traccar.atoo.top:8082
[size=150] 由于国内地图不论是高德、百度、腾讯等,都不是直接使用的GPS坐标(WGS-84原始坐标系),而是使用的是GCJ-02坐标系,又名“火星坐标系”,百度坐标系的bd-09坐标系。因此直接在Traccar系统上用高德、百度地图,会存在偏移几百到几千米的距离。
目前国内有很多朋友想了很多好办法解决了这个问题,但我一直没找到一个适合我的方法,有些方法也没说的很清楚。
春节以来,武汉因新冠疫情,宅在家里已经一个月了,实在没事就将Traccar的最新源码V4.8拉了下来分析了一下,在Deepin系统上搭建了编译环境。经过几天的跟踪分析,直接将GPS坐标转高德地图坐标、将坐标转换为具体地址的功能内置到系统中。经过几天的测试,感觉还行。[color=#FF0000][b]目前只适配了手机客户端Osmand、Gt30、Gt06、Gt02几种协议[/b][/color],且只在手机客户端上测试通过,其他几个协议没有设备,无法测试。欢迎大家下载测试。。。。
要更换成高德适配版一共要替换下面5个文件:
[color=#FF0000] 1)tracker-server.jar
2)./web/app.min.js
3)./web/l10n/zh.json
4)./web/app/view/map/BaseMap.js
5)./web/app/store/MapTypes.js[/color]
第一个文件是Traccar服务主程序,后面4个是WEB服务的页面文件,将这5个文件替换后,[color=#FF0000]重启服务,清除浏览器缓存[/color]就行了,下面来说说更换方法。以群晖Docker中的Traccar来说明:(跟hass.io中安装的traccar的配置方法不一样)。
[b]第一步,进入traccar系统终端:[/b][/size]
[attachment=9]t10.PNG[/attachment]
[attachment=8]t11.PNG[/attachment]
[attachment=7]t12.PNG[/attachment]
[b][size=150]第二步,先将要替换的5个文件作备份:[/size][/b]
[Codebox=bash file=Untitled.bsh]
mv tracker-server.jar tracker-server.jar.bak
mv ./web/app.min.js ./web/app.min.js.bak
mv ./web/l10n/zh.json ./web/l10n/zh.json.bak
mv ./web/app/view/map/BaseMap.js ./web/app/view/map/BaseMap.js.bak
mv ./web/app/store/MapTypes.js ./web/app/store/MapTypes.js.bak
[/Codebox]
[attachment=6]t13.PNG[/attachment]
[b][size=150]第三步、下载适配版的文件到原目录中[/size][/b]
[Codebox=bash file=Untitled.bsh]
wget http://traccar.atoo.top:5080/downloads/tracker-server.jar
wget -O ./web/app.min.js http://traccar.atoo.top:5080/downloads/app.min.js
wget -O ./web/l10n/zh.json http://traccar.atoo.top:5080/downloads/zh.json
wget -O ./web/app/view/map/BaseMap.js http://traccar.atoo.top:5080/downloads/BaseMap.js
wget -O ./web/app/store/MapTypes.js http://traccar.atoo.top:5080/downloads/MapTypes.js
[/Codebox]
[attachment=5]t14.PNG[/attachment]
[attachment=4]t15.PNG[/attachment]
[size=150]更新完后目录结构:[/size]
[attachment=3]t16.PNG[/attachment]
[b][size=150]第四步、重新启动Traccar服务:[/size][/b]
[size=150]再清除浏览器缓存[/size]
[attachment=2]t17.PNG[/attachment]
[attachment=1]t18.PNG[/attachment]
[attachment=0]t19.PNG[/attachment]
大家也可在我的服务器上试用一下。
[size=150][color=#000080]http://traccar.atoo.top:8082[/color][/size]