最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

openlayers6之地圖覆蓋物overlay詳解

 更新時間:2021年09月15日 11:41:18   作者:@必意玲  
overlay就是在地圖上以另外一種形式浮現在地圖上,常見的地圖覆蓋物為這三種類型,如:popup 彈窗、label標注信息、text文本信息等,接下來跟隨小編看下openlayers6之地圖覆蓋物overlay詳解,一起看看吧

1. overlay 簡述

overlay是覆蓋物的意思,顧名思義就是在地圖上以另外一種形式浮現在地圖上,這里很多同學會跟圖層layers搞混淆,主要是放置一些和地圖位置相關的元素,常見的地圖覆蓋物為這三種類型,如:popup 彈窗、label標注信息text文本信息等,而這些覆蓋物都是和html中的element等價的,通過overlay的屬性element和html元素綁定同時設定坐標參數——達到將html元素放到地圖上的位置,在平移縮放的時候html元素也會隨著地圖的移動而移動。

下面我們在看下官網的描述,其實map默認是存在這個屬性,跟前面寫的文章,圖層,控件,交互都一個性質,都是默認加載地圖的情況下是允許設置默認的overlay覆蓋物,也可以在某個事件或者方法觸發(fā)的時候去單獨添加覆蓋物。這里可以看下前面的文章描述,具體不進行詳細闡述。

在這里插入圖片描述

2. overlay 屬性

overlay初始化時可以接受很多的配置參數,這些配置參數是一個個的鍵值對,共同構成一個對象字面量(options),然后傳遞給其“構造函數”,如new ol.Overlay(options),此處的 options 便是參數鍵值對構成的對象字面量??膳渲玫逆I值對,定義如下:(紅色為常用屬性)

  • id,為對應的 overlay 設置一個 id,便于使用 ol.Map 的 getOverlayById 方法取得相應的 overlay;
  • element,overlay 包含的 DOM element;offset,偏移量,像素為單位,overlay 相對于放置位置(position)的偏移量,默認值是 [0, 0],正值分別向右和向下偏移;position,在地圖所在的坐標系框架下,overlay 放置的位置;
  • positioning,overlay 對于 position 的相對位置,可能的值包括 bottom-left、bottom-center、bottom-right 、center-left、center-center、center-right、top-left、top-center、top-right,默認是 top-left,也就是 element 左上角與 position 重合;
  • stopEvent,地圖的事件傳播是否停止,默認是 true,即阻止傳播,可能不太好理解,舉個例子,當鼠標滾輪在地圖上滾動時,會觸發(fā)地圖縮放事件,如果在 overlay 之上滾動滾輪,并不會觸發(fā)縮放事件,如果想鼠標在 overlay 之上也支持縮放,那么將該屬性設置為 false 即可;
  • insertFirst,overlay 是否應該先添加到其所在的容器(container),當 stopEvent 設置為 true 時,overlay 和 openlayers 的控件(controls)是放于一個容器的,此時將 insertFirst 設置為 true ,overlay 會首先添加到容器,這樣,overlay 默認在控件的下一層(CSS z-index),所以,當 stopEvent 和insertFirst 都采用默認值時,overlay 默認在 控件的下一層
  • autoPan,當觸發(fā) overlay setPosition 方法時觸發(fā),當 overlay 超出地圖邊界時,地圖自動移動,以保證 overlay 全部可見;
  • autoPanAnimation,設置 autoPan 的效果動畫,參數類型是 olx.animation.panOptions
  • autoPanMargin,地圖自動平移時,地圖邊緣與 overlay 的留白(空隙),單位是像素,默認是 20像素;

后面案例中使用。

2. overlay 事件

支持的事件主要是繼承 ol.Object 而來的 change 事件,當 overlay 相關屬性或對象變化時觸發(fā):

  • change,當引用計數器增加時,觸發(fā);
  • change:element,overlay 對應的 element 變化時觸發(fā);
  • change:map,overlay 對應的 map 變化時觸發(fā);
  • change:offset,overlay 對應的 offset 變化時觸發(fā);
  • change:position,overlay 對應的 position 變化時觸發(fā);
  • change:positioning,overlay 對應的 positioning 變化時觸發(fā);
  • propertychange,overlay 對應的屬性變化時觸發(fā);

那么怎么綁定相應的事件呢?openlayers 綁定事件遵循一般的 dom 事件綁定規(guī)則,包括 DOM 2 級事件綁定,以下是一個例子,這個例子說明了 overlay 的位置變化時在瀏覽器的控制臺輸出字符串的例子。

var overlay = new ol.Overlay({
    // 創(chuàng)建 overlay ...省略
});
// 事件
overlay.on("change:position", function(){
    console.log("位置改變!");
})

4. overlay 方法

支持的方法這里我們只介紹 overlay 特有的方法,就不介紹其繼承而來的方法了,主要是針對 overlay 的屬性及其相關聯(lián)對象的 getset方法。

  • getElement,取得包含 overlay 的 DOM 元素;
  • getId,取得 overlay 的 id;
  • getMap,獲取與 overlay 關聯(lián)的 map對象;
  • getOffset,獲取 offset 屬性;
  • getPosition,獲取 position 屬性;
  • getPositioning,獲取 positioning 屬性;
  • setElement;設置 overlay 的 element;
  • setMap,設置與 overlay 的 map 對象;
  • setOffset,設置 offset;
  • setPosition,設置 position 屬性;
  • setPositioning,設置 positioning 屬性。

5. 寫到最后

開篇我們提到了 overlay 有三種常見的用法 popup 彈窗label標注信息、text文本信息

詳細內容參考此篇文章 openlayers6【八】地圖覆蓋物overlay三種常用用法 popup彈窗,marker標注,text文本

到此這篇關于openlayers6之地圖覆蓋物overlay詳解的文章就介紹到這了,更多相關openlayer overlay地圖覆蓋內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • vue3.0列表頁面做緩存的方法代碼

    vue3.0列表頁面做緩存的方法代碼

    很多時候為了讓提高用戶的體驗感,在頁面上添加緩存,是十分有必要的,?下面這篇文章主要給大家介紹了關于vue3.0列表頁面做緩存的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-04-04
  • vue實現input輸入模糊查詢的三種方式

    vue實現input輸入模糊查詢的三種方式

    本文主要介紹了vue實現input輸入模糊查詢的三種方式嗎,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • vue項目中使用百度地圖的方法

    vue項目中使用百度地圖的方法

    這篇文章主要介紹了在vue項目中使用百度地圖的方法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒借鑒價值,需要的朋友可以參考下
    2018-06-06
  • 關于Vue的URL轉跳與參數傳遞方式

    關于Vue的URL轉跳與參數傳遞方式

    這篇文章主要介紹了關于Vue的URL轉跳與參數傳遞方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • vue element插件this.$confirm用法及說明(取消也可以發(fā)請求)

    vue element插件this.$confirm用法及說明(取消也可以發(fā)請求)

    這篇文章主要介紹了vue element插件this.$confirm用法及說明(取消也可以發(fā)請求),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • 詳解VUE前端按鈕權限控制

    詳解VUE前端按鈕權限控制

    這篇文章主要介紹了VUE前端按鈕權限控制,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • vue cli3中eslint報錯no-undef和eslint規(guī)則配置方式

    vue cli3中eslint報錯no-undef和eslint規(guī)則配置方式

    這篇文章主要介紹了vue cli3中eslint報錯no-undef和eslint規(guī)則配置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Vue+Element UI實現下拉菜單的封裝

    Vue+Element UI實現下拉菜單的封裝

    這篇文章主要為大家詳細介紹了Vue+Element UI實現下拉菜單的封裝代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Vue中正確使用jQuery的方法

    Vue中正確使用jQuery的方法

    這篇文章主要為大家詳細介紹了Vue中正確使用jQuery的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • vue3中element-plus?icon圖標的正確使用姿勢

    vue3中element-plus?icon圖標的正確使用姿勢

    element-plus官方提示,Icon圖標正在向SVG?Icon遷移,之前使用的Font?Icon即將被棄用,下面這篇文章主要給大家介紹了關于vue3中element-plus?icon圖標的正確使用姿勢,需要的朋友可以參考下
    2022-03-03

最新評論

永城市| 浑源县| 新乡县| 同仁县| 石景山区| 鄂托克前旗| 东城区| 玉门市| 平塘县| 白水县| 巴南区| 鱼台县| 增城市| 富阳市| 永宁县| 莱西市| 汉中市| 明溪县| 甘洛县| 西城区| 芮城县| 颍上县| 广宁县| 崇左市| 云龙县| 六盘水市| 体育| 如皋市| 广丰县| 河南省| 确山县| 禹城市| 南雄市| 泌阳县| 修水县| 颍上县| 阳泉市| 怀安县| 建平县| 酒泉市| 寿宁县|