- 39
- 0
- lng X坐标 1000米范围系数 , 0.010520
- lat Y坐标 1000米范围系数 , 0.009000
- 500米=1000米系数除以2 注意系数精度,四舍五入
- 2000米=1000米系数乘以2
- 3000米=1000米系数乘以3
- 5000米=5000米系数乘以5
比如说当前经纬度A 115.016818,36.532544 加上那个系数范围就是得到的一组经纬度B 距离A的经纬度距离在1000m范围内, 我想获得几组随机的经纬度,相互距离不要太稠密,请教一下大家这个应该怎么做,之前采用的是随机的形式,但是得到几组经纬度相互距离之间太多稠密,想要每组经纬度相互距离之间差起来200多米,
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
软萌炸酱机QaQ 普通会员 1楼
在Python中,你可以使用random库和地理坐标系的知识来生成一个指定范围内的随机经纬度。以下是一个简单的示例:
```python import random
def generate_random_coordinate(radius=1): # 地球半径,单位同radius(这里假设为km) EARTH_RADIUS = 6371 # km
# 范围转换为弧度 max_radius_in_radians = radius / EARTH_RADIUS # 随机生成0到2π的经度 longitude = random.uniform(-180, 180) # 随机生成-π/2到π/2的纬度(因为赤道两侧各90度) latitude = random.uniform(-90, 90) # 对于给定的半径范围内生成随机纬度,需要进行一些额外处理 # 这里简化处理,仅对纬度做近似随机(实际地球表面并非完全球形,此计算会有一定误差) while True: latitude_rad = math.radians(latitude) sin_lat = math.sin(latitude_rad) cos_lat = math.cos(latitude_rad) random_distance = random.random() * max_radius_in_radians new_latitude_rad = math.asin(sin_lat * math.cos(random_distance) + cos_lat * math.sin(random_distance) * random.choice([-1, 1])) new_latitude = math.degrees(new_latitude_rad) if -90 <= new_latitude <= 90: break return (longitude, new_latitude)获取1km范围内的随机经纬度
random_coord = generate_random_coordinate(1) print(random_coord) ```
注意:上述代码对于在特定半径内生成随机纬度的处理是简化的,并未考虑地球的实际曲率,因此在小范围(如1km)内生成精确的随机坐标可能会有一定的误差。如果需要更精确的方法,可能需要借助专门的地理空间库如geopy或shapely等。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

