如何为openlayers3中的每个功能设置最大分辨率

时间:2016-07-21 11:31:20

标签: openlayers-3

您好我正在尝试为不同的功能做不同的风格,我得到并且工作正常,现在我想为不同的功能设置不同的分辨率。我尝试这样做但不工作。可以请帮助吗?

<T, RP, SP>

1 个答案:

答案 0 :(得分:2)

您应该能够使用简单的布尔逻辑解决此问题。像这样:

style: function(feature, resolution) {
  var class = feature.get('class');
  if (resolution >= 200) {
    if (class == 'xx') {
      return style200xx;
    } else if (class == 'xy') {
      return style200xy;
    }
  } else if (resolution < 200) {
    if (class == 'xx') {
      return style0xx;
    } else if (class == 'xy') {
      return style0xy;
    }
  }
}

如果您有许多不同的情况,可能需要为每个分辨率范围定义单独的ol.layer.Vector,并对所有图层使用相同的source。在样式函数中,您只需处理要素类。