scale - Openlayers 3-分辨率作为样式函数参数代表什么?

标签 scale resolution openlayers-3

我正在尝试使用传递给StyleFunction的分辨率来计算图像图标的大小。使用测试,在比例线为100m的缩放比例下,报告给样式功能的分辨率为2.3886。

我拍摄了比例尺的屏幕截图,并以像素为单位测量了其长度。 100m比例尺为68像素,或每像素1.4705米。

1.4705!== 2.3886,那么分辨率单位是多少? API文档没有说明它,只是说它是一个数字,但是如果没有单位的概念,就很难解决。

这是为了将图标准确缩放到现实世界的长度BTW。

使用此jsfiddle.net/dz9gL0g0/,我发现200m比例尺报告了2.38,但100m返回的值更少(1.19)。我是从上一个缩放级别获得的分辨率吗?如果我使用传入的分辨率或直接调用getResolution函数,则100m刻度线始终为我返回2.83,而不是我认为应该的1.19,尽管1.19 * 84最正确(示例中的刻度线比我的应用程序大,这会给我有一条100米长的68像素的比例尺线)。

移动窗口会更改分辨率-调整jsfiddle的大小,更改分辨率单位。我的100m比例尺仍然适合我用来测试的地理特征,但现在报告为2.38。

最佳答案

分辨率是以 map 单位为1像素的大小。假设您的 map 投影是EPSG:3857,单位是米。例如,如果当前分辨率为20000 m/px,则表示1 px表示20000m。

也许这也有助于查看此example

关于scale - Openlayers 3-分辨率作为样式函数参数代表什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30366777/

相关文章:

iphone - iPhone 3G 和 iPhone 4 设计图像时如何处理不同的分辨率

javascript - 如何使用 openlayers3 获得特定类型控制?

openlayers-3 - ol.animation.pan 不起作用

java - TextView 和缩放

css - 防止背景图像缩放

java - Libgdx画游戏逻辑

openlayers-3 - 点固定到 View (例如中心 View 的十字)

jquery - 使用矩阵 3d css 转换和 javascript

jquery - 使用变换后div内联 block 显示和正确位置: scale

css - 如何将固定的页脚背景图像调整为我想要的分辨率?