【问题标题】:GIS: use .tif on data layer for Google MapGIS:在 Google Map 的数据层上使用 .tif
【发布时间】:2015-10-14 11:57:51
【问题描述】:

我有三个文件应该用于 GIS 应用程序: map.aux、map.tfw、map.tif

.tif 文件是一个“图层”,可以突出显示地图上的某些建筑物。这些文件被地理参考到特定的坐标。

如何将这些信息(和“图像”)放在 Google 地图的图层上?任何想法?谢谢!

【问题讨论】:

  • 我不认为 Google Map 有一些 api 可以将 .tif 文件作为图层加载!

标签: android ios google-maps gis


【解决方案1】:

因为我从未测试过,所以我不能给你代码,但以下应该可以工作:

您可以使用来自 Gmaps 的地面覆盖对象: https://developers.google.com/android/reference/com/google/android/gms/maps/model/GroundOverlay

它允许您以“BitmapDescriptor”格式指定图像,并最终锚定和承载给定的 tif。

对您的好处是,如果您已经对文件进行了地理参考并且它位于默认的 Google 地图投影(900913 或 3857,墨卡托)中,则无需旋转数据。只需从 aux/tfw 文件中取出光栅的位置(应该有一行指定光栅的左上角坐标及其大小;从这些行中,您应该能够通过一些数学运算来获得初始化所需的 LatLng 边界groundOverlay。

唯一不确定的部分是从 tiff 创建 BitmapDescriptor。如果这不容易或不可能,只需将 tif 重新转换为 png,即可读取并放入 BitmapDescriptor。

也许不是代码给你的问题,但至少是一个起点!

【讨论】:

    【解决方案2】:

    使用 R 你可以做到

    library(raster)
    r <- raster('map.tif')
    KML(r, 'map.kml')
    

    在 Google 地球中打开 .kml 文件。

    查看包plotKML了解更多高级选项

    【讨论】:

      猜你喜欢
      • 2010-11-12
      • 2017-10-27
      • 1970-01-01
      • 2014-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多