我正在尝试使用Google Maps API生成随机街道地址
我目前在做什么?
我当前正在使用Google Maps API来获取城市的纬度和经度,然后我做一些数学运算以生成介于0和1之间的浮点数,然后将此数字添加到城市的经度和纬度中。因此,结果将是新的经度和纬度。。。我使用Google Maps API的反向地理编码将最后的经度和纬度转换为街道地址。
这是我目前正在做的数学:
$random_lat = $LatCity + mt_rand()/(float)mt_getrandmax()/10;
$random_lon = $LonCity + mt_rand()/(float)mt_getrandmax()/10;
其中$LatCity
是城市的纬度,$LonCity
是城市的经度。
出了什么问题?
我的问题是生成一个介于0到1之间的随机浮点数,有时这个数字很大,而有时候却很小-这有时使我的工具返回位于另一个城市的地址如果城市很小,倒数第二。
我的工具做什么?
我的工具通过输入城市名称来工作,然后为输入的城市名称生成街道地址。
答案 0 :(得分:-1)
1)您可以生成较小的偏移量
$random_lat = $LatCity + mt_rand()/(float)mt_getrandmax()/100;
$random_lon = $LonCity + mt_rand()/(float)mt_getrandmax()/100;
2)您首先可以尝试使用当前偏移量,获得地址后,如果地址在城市之外,则使用一半偏移量,然后重试