【问题标题】:What is the purpose of attribute "population" in OpenLayer Features?OpenLayer Features 中属性“population”的用途是什么?
【发布时间】:2016-09-08 01:09:01
【问题描述】:

在功能用法example中,有两个属性分别称为population和rainfall。

...
var iconFeature = new ol.Feature({
    geometry: new ol.geom.Point([0, 0]),
    name: 'Null Island',
    population: 4000,
    rainfall: 500
});
...

这是什么意思?我四处寻找,没有找到任何信息。

【问题讨论】:

    标签: javascript openlayers-3


    【解决方案1】:

    这是一个将通用属性添加到您可以在其他地方使用的功能的示例。这个例子并没有让它变得非常明显。在该示例中,您可以添加另一个名为“numberOfDonkeys”的属性,其值为 20,然后您可以在触发弹出窗口的点击事件中使用它。

    例如,我可以将功能更改为这个。

    var iconFeature = new ol.Feature({
      geometry: new ol.geom.Point([0, 0]),
      name: 'Null Island',
      population: 4000,
      rainfall: 500,
      numberOfDonkeys: 20
    });
    

    并将地图点击事件更改为此。

    // display popup on click
    map.on('click', function(evt) {
      var feature = map.forEachFeatureAtPixel(evt.pixel,
          function(feature) {
            return feature;
          });
      if (feature) {
        var coordinates = feature.getGeometry().getCoordinates();
        popup.setPosition(coordinates);
        $(element).popover({
          'placement': 'top',
          'html': true,
          'content': feature.get('name') + ' Pop: ' + feature.get('population') + ' Donkeys: ' + feature.get('numberOfDonkeys')
        });
        $(element).popover('show');
      } else {
        $(element).popover('destroy');
      }
    });
    

    您会在弹出窗口中看到 Population 和 numberOfDonkeys 属性。

    jsFiddle 示例 - https://jsfiddle.net/6vd5gtho/

    最终你根本不需要这些属性,你可以去掉它们,它们只是你可以放置你想重用的属性的例子这边。

    【讨论】:

      【解决方案2】:

      这并不意味着什么。 Null Island 是一个虚构的特征,定义了一些属性,仅此而已。

      【讨论】:

      • @panoet 我住在那里,我可以确认我们不是 4000
      猜你喜欢
      • 2019-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-01
      • 2020-11-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多