Unity经纬度距离计算

作者:袖梨 2026-07-04

1、 null

2、 启动Unity,创建新项目,操作步骤所示。

img_6a4894b18b23230.webp

3、 在场景中创建一个画布,设置一张图片作为背景,添加一个按钮以及两个文本框,用于显示获取的经纬度信息及两点间距离,效果所示。

4、 保存场景后,在工程中创建新脚本,双击打开并编写代码以获取经纬度信息,同时实现两点间距离的计算,具体操作所示。

img_6a4894b18b23831.webp

5、 编写代码获取当前位置经纬度及距离信息,具体实现所示。

img_6a4894b18b23c32.webp

6、 接着计算当前位置与目标位置间的距离,具体算法所示。

img_6a4894b18b23f33.webp

7、 脚本代码如下所示

8、 首次设定位置

9、 {

10、 }

11、 点击按钮更新当前位置信息

12、 {

13、 测算距离

14、 当前位置到坐标22.72555, 114.2108的距离为:加上实际测距数值。

15、 }

16、 停止定位刷新以节省手机电量

17、 {

18、 }

19、 {

20、 通过Input.location可获取手持设备的地理位置信息,该属性为静态的位置服务,用于访问设备当前位置数据。

21、 检查用户是否在设置中开启了定位服务功能。

22、 {

23、 }

24、 启动位置服务更新,系统将获取当前位置坐标并持续跟踪,最后一次记录的位置信息会被保留使用。

25、 {

26、 暂停协程执行一秒钟

27、 }

28、 {

29、 }

30、 {

31、 }

32、 {

33、 }

34、 }

35、 计算两个经纬度坐标之间的距离

36、 计算两个位置点之间的距离,结果以米为单位返回。

37、 此公式由谷歌提供,定位误差不超过0.2米。

38、 第一个点的纬度坐标,用于地理计算中的位置标识。

39、 参数 lng1 表示第一个点的经度值,用于地理坐标计算中的经度输入。

40、 第二点的纬度值,用于计算两点间的地理距离或方位。

41、 第二个点的经度值,用于地理坐标计算中的位置确定。

42、 {

43、 }

44、 经纬度转换为弧度表示

45、 {

46、 }

47、 }

48、 脚本正确编译后,返回Unity界面,将其挂载至摄像机,并将相应Text赋值给脚本,同时为按钮添加updateGps函数,具体操作所示。

img_6a4894b18b24234.webpimg_6a4894b18b24535.webp

49、 将应用导出为iOS或Android版本并安装至手机,点击刷新信息按钮,即可获取当前位置的经纬度,并自动计算两地间距离,详情见下图所示。

img_6a4894b18b24836.webp

50、 若在iOS导出时未显示地理位置,可在Build前进入Player Settings,填写Location Usage Description字段以启用定位权限,具体设置方式所示。确保描述清晰,以便系统正确识别并请求用户授权位置信息访问。

img_6a4894b18b24c37.webp

51、 至此,关于快速计算两个经纬度间距离的Unity实用教程已全部分享完毕,感谢阅读与支持。

相关文章

精彩推荐