基于地图(位置A)中的给定角,我想通过在给定的纬度和经度上添加一些小的值(距离)来生成更多的朝向位置B的坐标。例如:
( 143.5689855, -38.328956999999996)
,如何为其余5个坐标创建坐标?我尝试过的:
from arcgis.gis import GIS
from arcgis.geocoding import geocode
from arcgis.geocoding import reverse_geocode
import pprint
# Create an anonymous connection to ArcGIS Online
gis = GIS()
#45-Stodart-St (given corner)
geocode_home = geocode(address="45 Stodart St, Colac VIC 3250")
location = [geocode_home[0]["location"]['x'], geocode_home[0]["location"]['y']]
pprint.pprint(location)
#Add some small numbers in origanal location. This will give us coordinates of next house i.e 43-Stodart-St
#43-Stodart-St
new_loc = [location[0]+0.0002215*1,location[1]*0.999999]
pprint.pprint(new_loc)
输出:
假设您拥有房屋A和房屋B的两个位置分别为loc_A
和loc_B
。假设您知道A和B的房子号码。->您知道房子的数目。
以下代码将迭代门牌号并创建位置列表:
longitude_diff = loc_B[0] - loc_A[0]
latitude_diff = loc_B[1] - loc_A[1]
house_locations = []
for i in range(1, house_number_B - house_number_A):
house_locations.append([loc_B[0] + i * longitude_diff/(house_number_B - house_number_A),
loc_B[1] + i * latitude_diff/(house_number_B - house_number_A)])