2

我们有一个交付地址的数据库。它由以下数据组成;

StreetName
NumberFrom
NumberTo
ZipcodeId (points to seperate table with zipcodes, which holds cityName)
StoreId

是否可以在 GoogleMaps(首选)、Bing、OpenStreetMap 等地图上突出显示所有这些地址?

我知道如何添加折线,并且过去曾对地址进行过地理编码。

数据的一个可能问题是,它涵盖了他们实践的整条街道,只是将 NumberTo 设置为 9999。如果我用“StreetName 999,City”将地址绘制到谷歌地球中,它将把点放在中间街道的长度。

还尝试了一个随机数,它将标记放置在建筑物上而不是街道上。

我不知道GoogleMaps是否有所不同..

更新

我认为 GoogleMaps API 中的 DirectionsService 是要走的路,现在我只需要弄清楚是否以及如何在地图上多次使用它。

4

3 回答 3

3

成功!

我能够遍历所有地址,对每个地址执行 DirectionsService 请求,从街道开始到街道结束。提取 DirectionsDisplay 使用的 GeoPoints,将其存储到数据库中,现在可以在地图上为每条道路绘制折线。

每次显示地图时,我都可以遍历地址(仅限内部使用)。但这仍然是一个性能问题,并且也不确定谷歌每天会处理多少个请求。通过将它存储在数据库中,我只需要谷歌计算一次。

于 2011-06-15T13:41:34.813 回答
0

它可以,但仅限于世界的某些地区——例如美国

但是你需要准备你的地址 - 让我们在 div/spans 中说 - 然后在 onload 文档上,你调用 API

我使用 Garmin Edge 中的 Lat/Lng 进行了此操作 - 不同之处在于您需要将地址转换为 lat/lng,然后才能将它们放置在地图画布上。

麦克风

于 2011-06-15T10:55:14.810 回答
0

是的,您可以将地址转换为地理点,然后在地图上绘制地理点。从这里开始

于 2011-06-15T10:58:20.880 回答