4

什么是地理空间功能的好库?我的意思是像

  • 地球上两点之间的距离
  • 从特定点到给定半径的圆的坐标
  • 等等

如果有不同数据库表示地理位置的各种方式的接口,则会有好处。

我是一个地理新手(如果这个问题不明显),所以欢迎指向其他地理定位/地理空间资源的指针。

首选 C++ 和 Python,但欢迎所有指针。

4

5 回答 5

7

我很喜欢使用geopy。这是一个简单的库,可以在许多投影中找到大圆距离。Geopy 还为多个地理编码器(如 Google Maps 和 Microsoft Earth)提供单一界面,为您提供街道地址的坐标。

您可能对PyPi中的Topic :: Scientific/Engineering :: GIS部分感兴趣。

于 2009-02-19T22:15:32.943 回答
4

O'Reilly 网站上一篇有用的文章中的一些函数选项。文章中还有其他选项。

  1. GEOS开源 C++ 几何/拓扑引擎。可能适合你?

  2. PostGIS - 一个 PostgreSQL 数据库,也可以存储几何(空间)数据类型。这在 SQL 数据库环境中提供了类似 GIS 的功能,因此您可以通过 SQL 进行操作。

我不确定不同数据库的接口,但文章提到了许多在不同格式之间转换地理空间数据的库。您可能还对OGC标准感兴趣。如果您的所有目标数据库都支持WFS,您应该能够使用完全相同的代码访问它们。编辑:越来越多的 GIS 包支持 WFS,但我认为纯数据库不支持。

编辑:您还可以查看OSGeo,它是一项支持开源地理空间内容的合作项目。FDO可能会为不同的数据库做接口。

于 2009-02-19T22:01:10.527 回答
2

如果您使用带或不带导轨的 ruby​​,我会推荐 GeoKit gem:http ://geokit.rubyforge.org/

于 2009-02-19T21:31:09.927 回答
2

检查GDAL/OGR这是两个合二为一的库 - GDAL用于栅格数据,OGR用于矢量数据。OGR 部分提供 API 来操作几何图形 - 它使用GEOS库。

于 2010-01-25T23:17:36.147 回答
1

我在看类似的东西,我发现了Geolocator Library,它提供了一些距离计算功能。

于 2009-04-23T13:55:40.730 回答