GIS获取特定bb盒/缩放级别的信息

时间:2011-10-09 03:26:27

标签: gis geocoding

请随意纠正这篇文章中任何遗漏的单词,因为我在这些方面不熟悉,我尽我所知使用单词,但它们可能是错误的。

所以这就是我想要做的事情:

孩子绑架和贩卖是一个相当严重的问题回到中国,我的一个朋友今天下午跟我说话,想在iOS和Android上单独的应用程序做这个任务,用户可以拍照,上传一起他们的GPS位置到数据库,应用程序还可以显示数据库中的信息,作为地图上的注释。

我的问题是:

在应用中,用户向数据库提交新帖子,其中包括照片,GPS位置,任何备注。

然后我们用户切换到地图视图,我们必须获取当前缩放级别/ bb框的信息,所以

我应该如何在db中存储这些信息?

是否有任何开源工具可以解析给定bb框/缩放级别的信息并返回一个xml文件,以便我可以使用它来显示信息?

- 我找到了GeoServer,有没有更适合我的用途?我真的只需要它来生成基于bb盒/缩放级别的xml文件。

我认为在Google App Engine / Amazon Ec2上托管该工具(它被称为地理编码器吗?)是最理想的,对db很不太了解,可能是Amazon Simple DB?

谢谢!

1 个答案:

答案 0 :(得分:1)

有许多开源工具可以提供帮助 - 例如,你可以查看GeoDjango,它可以使用PostGIS地理数据库 - 但老实说,对于这个应用程序,你不要需要任何地理特定的东西:

  • 您将接收纬度/经度的GPS坐标,因此您的数据库中可能会有一个包含两列latitudelongitude的表格。

  • 要进行边界框查找,您只需要经度和纬度的最小值/最大值(任何基于Web的地图都可以为您提供)。完成后,几乎所有SQL数据库都支持这样的查询:

    SELECT * FROM records 
        WHERE latitude >= $min_lat 
            AND latitude <= $max_lat
            AND longitude >=  $min_lon
            AND longitude <= $max_lon;
    

    这将为您提供一个包含在您的边界框内的记录列表。

  • 现在您可以使用您喜欢的任何中间件 - 像Django或Drupal这样的CMS系统,自定义PHP脚本等 - 将结果集转换为XML或JSON格式。

地理数据库做了许多关系数据库不容易做的事情,比如找到半径内的点或一组多边形内的点。但是您的应用程序不需要它 - 任何具有基本数据库查询功能的系统都应该为您提供所需的功能。