OpenLayers规模:单位大小是多少?

时间:2012-12-10 22:25:58

标签: gis openlayers postgis

我有一个平坦的游戏世界地图,我用gdal2tiles.py(-p raster,很明显,因为它没有地理位置信息)进行了rastered。将其显示为TMS图层就可以了。

我还有想要叠加的矢量数据。通过反复试验,我发现了一种几乎可行的配置:

var scales = [0.692, 1.384, 2.768, 5.536, 11.072];
var options = {
    controls: [],
    maxExtent: mapBounds,
    scales: scales,
    units: 'm'
};

但我想知道为什么价值观如此奇怪,如果它们真的是正确的。所以基本上问题是:OpenLayers地图的实际规模是多少?线串从0,0到1,0和多长到0,1多长时间?单位是什么?显然它不是米,文档也没有解释它。

如果重要,我的矢量数据存储在PostGIS数据库中。它是由任何现实世界的来源生成的。

1 个答案:

答案 0 :(得分:1)

天平是地面单位和屏幕单位之间的差异。 您可以看到当前地图比例分母已使用比例控制或通过调用

显示
var map = (OpenLayers.Map);
map.getScale();

如果您的矢量数据位于Postgis数据库中并存储为几何列,则它应具有正确的srid编号。您的矢量数据必须与地图srid代码匹配或转换为相同的srid。 通过以下调用完成渲染后检查地图投影:

var map = (OpenLayers.Map);
map.getProjection();

您的矢量数据srid必须与上面报告的值匹配。

难道您不会将这些比例值与分辨率混淆吗?