我们提供了一个地址数据库。它由以下数据组成;
StreetName
NumberFrom
NumberTo
ZipcodeId (points to seperate table with zipcodes, which holds cityName)
StoreId
是否有可能在GoogleMaps(首选),Bing,OpenStreetMap等地图上突出显示所有这些地址?
我知道如何添加折线,并且过去曾为地址做过地理编码。
数据的一个可能问题是,它覆盖整个街道,他们的做法是将NumberTo设置为9999.如果我使用'StreetName 999,City'将地址绘制到Google地球中,它将把点放在中间的街道长度。
还尝试了一个随机数字,它将标记放在建筑物而不是街道上。
我不知道GoogleMaps是否有所不同。
更新
我认为GoogleMaps API中的DirectionsService是要走的路,现在我只需要弄清楚我是否以及如何在地图上多次使用它。
答案 0 :(得分:3)
成功!
我能够遍历所有地址,为每个地址做一个DirectionsService请求,从街道的开始到街道的结束。提取DirectionsDisplay使用的GeoPoints,将其存储到数据库中,现在可以在地图上为每条道路绘制折线。
我可以迭代地图显示的地址(仅限内部使用)。但这仍然是性能问题,也不确定Google每天会处理多少请求。通过将其存储在DB中,我只需要Google计算一次。
答案 1 :(得分:0)
它可以,但仅限于世界的某些地区 - 例如美国
但是你需要准备你的地址 - 让我们说div / spans - 然后在onload文档上,你调用API
我是使用Garmin Edge中的Lat / Lng做的 - 不同之处在于您需要将地址转换为lat / lng,然后才能将它们放置在地图画布上。
麦克
答案 2 :(得分:0)
是的,您可以将地址转换为GeoPoint,然后在地图上绘制GeoPoints。首先查看here