鍍金池/ 問(wèn)答/PHP  網(wǎng)絡(luò)安全/ 獲得在1km范圍內(nèi)隨機(jī)經(jīng)緯度,不疊加

獲得在1km范圍內(nèi)隨機(jī)經(jīng)緯度,不疊加

  • lng X坐標(biāo) 1000米范圍系數(shù) , 0.010520
  • lat Y坐標(biāo) 1000米范圍系數(shù) , 0.009000
  • 500米=1000米系數(shù)除以2 注意系數(shù)精度,四舍五入
  • 2000米=1000米系數(shù)乘以2
  • 3000米=1000米系數(shù)乘以3
  • 5000米=5000米系數(shù)乘以5

比如說(shuō)當(dāng)前經(jīng)緯度A 115.016818,36.532544 加上那個(gè)系數(shù)范圍就是得到的一組經(jīng)緯度B 距離A的經(jīng)緯度距離在1000m范圍內(nèi), 我想獲得幾組隨機(jī)的經(jīng)緯度,相互距離不要太稠密,請(qǐng)教一下大家這個(gè)應(yīng)該怎么做,之前采用的是隨機(jī)的形式,但是得到幾組經(jīng)緯度相互距離之間太多稠密,想要每組經(jīng)緯度相互距離之間差起來(lái)200多米,

回答
編輯回答
澐染

一個(gè)比較簡(jiǎn)單的辦法是,首先將確定的范圍分成n個(gè)小區(qū)間,然后在每一區(qū)間中用隨機(jī)數(shù)獲取一個(gè)點(diǎn),這樣會(huì)相對(duì)稀疏一些。給區(qū)間加一個(gè)padding可以避免兩個(gè)點(diǎn)過(guò)于靠近

2017年11月15日 05:03
編輯回答
局外人

之前采用隨機(jī)數(shù)的形式,方式錯(cuò)誤,后來(lái)采用了先獲得最大最小經(jīng)緯度,然后取每個(gè)最大最小經(jīng)緯度的小數(shù)后面部分,擴(kuò)大N倍隨機(jī),然后縮小N倍得到一組隨機(jī)的經(jīng)緯度

2018年9月17日 22:49
編輯回答
淺淺

我能想到的思路是,如果你需要獲得N組經(jīng)緯度,那么首先把當(dāng)前經(jīng)緯度[x, y]方圓1公里的圓形,看怎么給平均分割出來(lái)N個(gè)部分,然后找出N個(gè)部分的中心點(diǎn),在這N個(gè)中心點(diǎn)上再進(jìn)行隨機(jī)。

希望能幫助到你。

2017年11月2日 04:38
編輯回答
真難過(guò)

隨機(jī)必然有重復(fù),所謂“不重復(fù)的隨機(jī)”實(shí)際上是洗牌。

2018年3月29日 04:30