2

我只是让自己熟悉 GIS,但我想事先知道以下内容是否适用于当前的 GIS 应用程序/工具...

  1. 我通过地理编码得到地址的要点。容易的部分。
  2. 现在,如果该点位于边界内(可能是城市/县/州),那么我需要获取与边界关联的数据(任何 id/标志)。
  3. 然后基于 id/flag 我应用一些业务逻辑。

我的问题是...

  1. 我如何定义边界?我应该使用什么工具?
  2. 我如何将边界定义存储在数据库中以检查该点是否在其中?这必须在后端完成,而不是在可视地图中完成,因为我们不打算显示/使用地图。
  3. 如何将我的自定义数据(id/flag)与上述边界定义相关联?

希望我对 GIS 的能力有正确的假设。我看到的大多数示例都是围绕人们试图用数据显示地图的,而这正是我想要的。另外请向我推荐一些有关此的工具/书籍。

4

1 回答 1

5

我如何定义边界?我应该使用什么工具?

边界可以是(也可能是)一个形状(多边形、多多边形),您可以以任何当前的 GIS 格式提供它。您将需要考虑您提供的投影和基准。

我如何将边界定义存储在数据库中以检查该点是否在其中?

使用PostGreSQL及其空间扩展 ( Postgis )。将 (1) 中的多边形导入数据库(例如使用FWTOOLS ogr2ogr)。这将在表格中为您生成一个不错的几何字段,您可以在该表格上以标准 SQL 方式使用漂亮的Postgis 几何函数(St_Intersects 在这里是合适的:找出该点在地理上是否与我们的多边形“相交”,或者您可以使用 ST_Within找出该点是否与多边形很好地吻合)

如何将我的自定义数据(id/flag)与上述边界定义相关联?

只需在存储 的表中添加一个额外的列geometry

于 2010-05-07T23:27:53.397 回答