概述
忙中偷闲,给大家写一个API接口,用来判断经纬度点与路线,围栏之间的关系。
由于接口资源有限,所以对请求频率做了限制,不提供免费商用,谢谢!
1.接口地址及请求方式
api.public.jointcontrols.cn:58001/GISApi/GISAnalysis
请求方式Post,返回数据格式:json
2. 经纬度点与点之间的距离
其实这个用百度,高德地图的api就可以做到,但是如果真正用作GIS分析,百度与高德地图API的方式肯定是不行的,毕竟调用次数不允许我们海量数据分析。
自测试截图(测试工具Postman):
传入参数:
lonlat1:经纬度点1,经度在前,纬度在后,用英文半角逗号隔开
lonlat2:经纬度点2,经度在前,纬度在后,用英文半角逗号隔开
FAction:GetPointDistance(方法名)
返回结果:
Result: 接口状态码;200成功,105失败,102,方法名不存在
Message:接口状态信息(可忽略)
FObject:接口返回数据集
distance:表示两点之间的距离,单位是米。
3. 经纬度点是否在路线上
该接口可以用来判断定位设备当前是否在某条路线上,这个实际用处比较广泛,判断车辆道路超速,车辆进入受限道路等等
自测试截图:
传入参数:
lonlat:经纬度点;经度在前,纬度在后,用英文半角逗号隔开
line:路线的经纬度点集合;经度在前,纬度在后,用英文半角逗号隔开;每个经纬度点之间用英文半角逗号隔开
buffer:道路的宽度
FAction:GetPointOnTheLine(方法名)
返回结果:
Result: 接口状态码;200成功,105失败,102,方法名不存在
Message:接口状态信息(可忽略)
FObject:接口返回数据集
status:true表示车辆在道路上,false车辆不在道路上
4.经纬度点是否在电子围栏中
该接口是GIS分析中最常用的接口,在实际生产过程中,车辆进入某个区域并给出提示,就比如干线运输,车辆是否到达目的地,是否离开出发点等等
这里的围栏是多边形围栏,而且需要组成一个闭合的围栏,即area第一个点与最后一个点是一个点。如果是圆形围栏,则只需要判断车辆与中心点之间的距离与圆形围栏进行比较就可以了,使用2.就可以实现。
自测试截图:
传入参数:
lonlat:经纬度点;经度在前,纬度在后,用英文半角逗号隔开
area:围栏的经纬度点集合;经度在前,纬度在后,用英文半角逗号隔开;每个经纬度点之间用英文半角逗号隔开
FAction:GetPointOnTheLine(方法名)
返回结果:
Result: 接口状态码;200成功,105失败,102,方法名不存在
Message:接口状态信息(可忽略)
FObject:接口返回数据集
status:true表示车辆在围栏内,false车辆不在围栏内
5.获取路线长度
也可以通过百度,高德地图的API获取到,应用不是很广泛
自测试截图:
传入参数:
line:路线的经纬度点集合;经度在前,纬度在后,用英文半角逗号隔开;每个经纬度点之间用英文半角逗号隔开
FAction:GetLineLength(方法名)
返回结果:
Result: 接口状态码;200成功,105失败,102,方法名不存在
Message:接口状态信息(可忽略)
FObject:接口返回数据集
length:路线长度,单位米
6.总结
以上是几个基础用法,通过这些基础用法可以进行拓展,如:获取路线是否经过某个电子围栏,两条路线是否有交叉,电子围栏是否有交叉等等。
合理应用这些GIS分析方法,给客户更加全面丰富的报表输出,使得我们的平台更有竞争力!
最后
以上就是丰富流沙为你收集整理的判断经纬度点,路线,围栏之间的关系1.接口地址及请求方式2. 经纬度点与点之间的距离3. 经纬度点是否在路线上4.经纬度点是否在电子围栏中5.获取路线长度6.总结的全部内容,希望文章能够帮你解决判断经纬度点,路线,围栏之间的关系1.接口地址及请求方式2. 经纬度点与点之间的距离3. 经纬度点是否在路线上4.经纬度点是否在电子围栏中5.获取路线长度6.总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复