2012-01-31 89 views
0

我试图将某个城市划分为几个街区,分别代表北部,西北部,东北部,南部......等等。我只需要区域边界的坐标(例如:北在X和Y纬度之间以及Z和T经度之间),以便我可以检查我的应用程序中某个点是否属于某个区域或另一个区域。这些区域不应该依赖于某个缩放级别的边界,并且它们不需要具有相同的大小(也许城市的北部比南部的大一点)。在Google地图中将城市划分为区域

任何想法如何“绘制”这些区域边界?谢谢!

+0

不确定你问的问题,你在寻找该地区的边界数据还是实际上如何在地图上绘制边界? – 2012-02-01 01:52:50

+0

两者。我想绘制边界,然后获得它们的坐标。 – linkyndy 2012-02-01 08:35:10

回答

1

对于边界数据,您必须执行搜索。取决于城市和国家。在美国,许多城市通过城市或国家的网站直接提供这些数据。一般来说,它将采用GIS数据格式,例如shapefile。您有许多不同的选项可以通过编程方式使用GIS数据格式。我推荐使用GDAL libraries, ,特别是ogr2ogr。一旦获得了边界数据,就可以使用polyline覆盖图在地图上绘制它,或者使用gdal_rasterize创建数据的栅格图像。或者,您可以使用ogr2​​ogr将数据转换为KML,然后使用Google文档将其上传到Google Fusion Tables,并使用FusionTablesLayer覆盖它。

+0

难道不是更容易吗?我只需要这些一次,绘制区域的坐标,那么我就不会使用它们......对于这样一个微不足道的任务似乎很有用。 – linkyndy 2012-02-01 17:48:11

+0

您可以在http://google.com/fusiontables上搜索并搜索您所在城市的边界数据,有人可能已经在那里上传了这些数据。然后,您可以将其下载为KML文件,或者使用FusionTablesLayer将其覆盖。 – 2012-02-01 19:10:34

+0

很抱歉,没有任何与我的城市相关的数据。我最终画了一些圈子和两个bisectrices,以便我划分基本区域。然后,根据这些坐标和圆半径,我检查一个点是否属于某个区域或另一个区域。不过谢谢你的回答。当这个快速“黑客”还不够时,肯定会使用它。 – linkyndy 2012-02-01 20:00:19