簡體   English   中英

OpenLayers 矢量層最大特征數

[英]OpenLayers Vector Layer Maximum number of features

我想知道是否可以限制您在 vectorylayer 上繪制的功能數量。 如果我已經繪制了一個多邊形,然后再繪制另一個多邊形,它將刪除第一個要素。

如果不是,是否可以向矢量圖層添加一個偵聽器,以便在單擊繪制時可以擦除所有功能?

謝謝!!!

您不能在 Vector Layer 上設置最大功能數,但它有很多事件,您可以在其中注入自己的邏輯。 以下是可用事件:

"beforefeatureadded", "beforefeaturesadded",
"featureadded", "featuresadded", "beforefeatureremoved",
"beforefeaturesremoved", "featureremoved", "featuresremoved",
"beforefeatureselected", "featureselected", "featureunselected", 
"beforefeaturemodified", "featuremodified", "afterfeaturemodified",
"vertexmodified", "vertexremoved", "sketchstarted",
"sketchmodified", "sketchcomplete", "refresh"

例如,您可以使用“beforefeatureAdded”:

your_vectror_layer.events.on({'beforefeatureadded': function(){
  //Remove first feature or whatever you want to do
}});

你可以制作一個按鈕,當你點擊它時,它會刪除矢量圖層中的所有特征:

map.layers[1].removeAllFeatures();

這里 1 是我的層的 id(我的矢量圖層是 OSM 層之后的第二層)

祝你好運 !

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM