0

我正在向谷歌地图添加 WAC 覆盖。

地图瓦片以 NAD83 (lcc) 投影,谷歌地图为 WGS84 (mercator)。

WAC 瓦片被分解成各自的区域,如下所示:http: //map.aeroplanner.com/mapping/chart/smartchart.cfm所以有相当多的瓦片。也就是说,我目前在定位单个瓷砖时遇到问题。

世界文件似乎已正确形成,因为 ArcGIS 使用关联的世界文件正确显示切片。

当使用 LCC 投影并设置它们预期填充的纬度/经度时,构成 WAC 扇区的南北瓷砖彼此正确对齐。

http://img716.imageshack.us/img716/1742/waclcc.jpg - 在这张图片中,您可以看到 CF16 A&B 和 CF17 A&B。投影看起来工作正常,但位置错误。必须分配绝对纬度/经度,因为将它们排除在外会导致 MapServer 抛出定位错误。

这是生成上述输出的映射文件中的一段:

图层类型栅格名称“16_40_NORTH”组“wac”数据“/opt/fgs/www/htdocs/WAC/CF-16 WAC 40 North.tif”

    #projection of this layer
    PROJECTION
            "proj=lcc"
            "lat_2=49"
            "lat_1=44.5"
            "lat_0=40"
            "lon_0=-125"
            "x_0=0"
            "y_0=0"
            "ellps=GRS80"
            "datum=NAD83"
            "units=m"
            "no_defs"
    END

    OFFSITE 0 0 0
END


LAYER
    TYPE RASTER
    NAME "16_40_SOUTH"
    GROUP "wac"
    DATA "/opt/fgs/www/htdocs/WAC/CF-16 WAC 40 South.tif"

    #projection of this layer
    PROJECTION
            "proj=lcc"
            "lat_2=49"
            "lat_1=44.5"
            "lat_0=40"
            "lon_0=-125"
            "x_0=0"
            "y_0=0"
            "ellps=GRS80"
            "datum=NAD83"
            "units=m"
            "no_defs"
    END

    OFFSITE 0 0 0
END

其他类型的定位(例如 UTM)提供了不正确的投影(因为线不水平)并且类似地定位不正确。

为什么 MapServer 定位如此不正确,尽管给定了绝对值,ArcGIS 使用世界文件显示切片没有任何问题?

是不是 MapServer 的版本有问题,还是更可能是我们的 mapfile?

4

1 回答 1

0

我们在一个月前重新审视了这个问题,同时解决了一个完全不同的问题。

我们发现我们的旧版 JavaScript(使用 Google Maps API)没有正确计算边界框。我们认为它很好,因为它已经生产了几年没有问题。

我调查了包括leaflet.js在内的替代映射API ,并从头开始创建了一个示例解决方案。我们对我们的内部 JavaScript 功能进行了一些调整,并且能够正确地进行地图项目。

就个人而言,我发现 Leaflet.js 和 OSM 在尝试解决 Google 地图问题时非常宝贵。

于 2012-04-17T11:24:58.440 回答