【问题标题】:GEOS C API - calculating areas with WGS84 coords (SRID=4326)GEOS C API - 使用 WGS84 坐标计算面积 (SRID=4326)
【发布时间】:2014-01-30 11:25:13
【问题描述】:

我创建了一个多边形,其中每个 x/y 点都是 WGS84 格式 纬度/经度值。

多边形很好地近似于圆形和扇形 半径 R(每个圆周/弧点是投影的纬度/经度 距中心/顶点坐标的距离 R 值 - 我有 通过计算之间的Haversine距离验证是正确的 边缘和参考点并获得 R 的值)。

我使用 GEOSSetSRID(4326) 来指示坐标是 WGS84 格式。 GEOSGetSRID() 确认 SRID 已设置。

使用 GEOSArea 然后给出的值甚至远不接近 期望值。

我看不出我还能以编程方式做什么。

如果我以笛卡尔格式设置点,然后将 SRID 设置为 4326,GEOS会隐式转换多边形点到WGS84吗??

基本的 GEOS C API 不能做上述吗? SRID 对 API 没有任何意义吗??

任何正确使用/解决方案的信息/指针将不胜感激。

TIA。

【问题讨论】:

    标签: wgs84 geos


    【解决方案1】:

    给出的距离类似于两点之间的度数。实际上,GEOS API(至少是 C++ 接口)与单位无关;它给出的距离单位是基于你传入的。

    一般来说,将得到的结果乘以 111000 可以得到相当准确的测量值(以米为单位)。对于面积,你必须做 111000^2。

    【讨论】:

      猜你喜欢
      • 2012-06-09
      • 2015-08-29
      • 2016-09-30
      • 2015-04-13
      • 2018-02-19
      • 1970-01-01
      • 1970-01-01
      • 2014-08-19
      • 1970-01-01
      相关资源
      最近更新 更多