国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

實(shí)現(xiàn)地圖遮罩 leaflet

這篇具有很好參考價(jià)值的文章主要介紹了實(shí)現(xiàn)地圖遮罩 leaflet。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1 前言

在地圖中加載的底圖是瓦片服務(wù)(固定大小的規(guī)則矩形),底圖的范圍很大,鋪滿了整個(gè)div,但是我們的感興趣的部門可能只是其中一部分,如何在整個(gè)屏幕中突出感興趣的部分-- 地圖遮罩(遮擋圖像中不感興趣的部分)。最常見的用處是突出行政區(qū)內(nèi)部區(qū)域。
實(shí)現(xiàn)地圖遮罩 leaflet

圖1 湖南省遮罩

2 實(shí)現(xiàn)方法

地圖遮罩實(shí)現(xiàn)思路:在大范圍區(qū)域的內(nèi)部挖洞(感興趣部分),矩形中挖出行政區(qū)邊界
在leaflet中常用L.polygon來實(shí)現(xiàn)面中挖洞,上代碼

var latlngs = [
  [[-91, -181], [ 91, -181], [91, 181], [-90, 181]], // 外環(huán)
  [[37, -109.05],[41, -109.03],[41, -102.05],[37, -102.04]], // 洞
];
var polygon = L.polygon(latlngs, { style: {fillColor: '#000',
    stroke: false,
    fillOpacity: 0.5,
    color: '#000000',
    weight: 1 }}).addTo(map)
map.setView([38, -107], 7)

坐標(biāo)數(shù)組latlngs:第一元素是外環(huán)的坐標(biāo)數(shù)組,是整個(gè)世界范圍,第二個(gè)元素就是洞的坐標(biāo)數(shù)組
實(shí)現(xiàn)地圖遮罩 leaflet

圖二 簡單遮罩實(shí)例

3 重點(diǎn)討論

上面用L.polygon實(shí)現(xiàn)了在簡單的遮罩(挖了一個(gè)矩形洞),針對具有飛地、復(fù)雜邊界線的行政區(qū)
例如湖南 整個(gè)湖南省境內(nèi)(指的是最外圍、最大的邊界線內(nèi))有多個(gè)屬于外省的飛地,同時(shí)在外省也有多個(gè)飛地
圖三選取懷化部分區(qū)域,有一個(gè)在貴州的飛地A(亮),同時(shí)懷化境內(nèi)有一塊屬于貴州的飛地B(暗)
實(shí)現(xiàn)地圖遮罩 leaflet

圖三 懷化部分區(qū)域
繪制準(zhǔn)確的湖南省地圖遮罩,需要滿足這兩個(gè)條件:1 有多個(gè)洞 2 洞中有洞
實(shí)現(xiàn)方法:** **L.geoJSON + GeoJSON Multipolygon數(shù)據(jù)
GeoJSON數(shù)據(jù)中的每個(gè)Multipolygon由一個(gè)外環(huán)和零個(gè)或多個(gè)內(nèi)環(huán)(洞)組成。外環(huán)定義了整個(gè)多邊形的邊界,而內(nèi)環(huán)定義了洞的邊界,洞也可以是外環(huán)和洞組成(嵌套)。每個(gè)環(huán)都是由一組經(jīng)緯度坐標(biāo)構(gòu)成的閉合路徑。數(shù)據(jù)格式如下:

{
  "type": "Feature",
  "geometry": {
    "type": "MultiPolygon",
    "coordinates": [
      // 第一個(gè)Multipolygon
      [
        // 外環(huán)1
        [
          [longitude1, latitude1],
          [longitude2, latitude2],
          ...
        ],
        // 內(nèi)環(huán)1(洞1)
        [
          [
            [longitude_hole1_1, latitude_hole1_1],
            [longitude_hole1_2, latitude_hole1_2],
            ...
          ]
        ],
        // 內(nèi)環(huán)2(洞2)
        [
          [
            [longitude_hole2_1, latitude_hole2_1],
            [longitude_hole2_2, latitude_hole2_2],
            ...
          ],
          // 內(nèi)環(huán)2的洞
    			...
        ]
      ],
      // 更多Multipolygon...
    ]
  },
  "properties": {
    // 可選的屬性
  }
}

代碼文章來源地址http://www.zghlxwxcb.cn/news/detail-627100.html

// 準(zhǔn)備 geojson 數(shù)據(jù)

L.geoJSON(geojson, {style: function (feature) {
  return {
    fillColor: '#000',
    stroke: false,
    fillOpacity: 0.5,
    color: '#000000',
    weight: 1
  }
}).addTo(map)

到了這里,關(guān)于實(shí)現(xiàn)地圖遮罩 leaflet的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • antV L7 無底圖模式 和 地圖3D樣式的使用

    antV L7 無底圖模式 和 地圖3D樣式的使用

    下方為設(shè)計(jì)圖樣式,主要實(shí)現(xiàn)地圖3D且去除底圖 ?這次使用的是由螞蟻金服 AntV 數(shù)據(jù)可視化團(tuán)隊(duì)推出antV L7,練習(xí)的時(shí)候使用四川的地圖json數(shù)據(jù),通過DataV.GeoAtlas地理小工具系列就可以下載各個(gè)地方的地圖數(shù)據(jù)(只能精確到縣),下面開始正文 一、創(chuàng)建地圖 根據(jù)官網(wǎng)給出的使用

    2024年02月06日
    瀏覽(158)
  • Leaflet 調(diào)用百度瓦片地圖服務(wù)

    Leaflet 調(diào)用百度瓦片地圖服務(wù)

    在使用 leaflet 調(diào)用第三方瓦片地圖服務(wù)的項(xiàng)目,主要谷歌地圖、高德地圖、百度地圖和 OSM 地圖,與其他三種地圖對比,百度地圖的瓦片組織方式是不同的。百度從中心點(diǎn)經(jīng)緯度(0,0)度開始計(jì)算瓦片,而谷歌地圖是從左上角經(jīng)緯度(-180,90)度開始計(jì)算瓦片;如果直接使用百度瓦片

    2024年02月08日
    瀏覽(97)
  • leaflet-uniapp 縮放地圖的同時(shí) 顯示當(dāng)前縮放層級

    leaflet-uniapp 縮放地圖的同時(shí) 顯示當(dāng)前縮放層級

    記錄實(shí)現(xiàn)過程: 需求為移動端用戶在使用地圖時(shí),縮放地圖的同時(shí),可以獲知地圖此時(shí)縮放的級別。 效果圖如下:此時(shí)縮放地圖級別為13 map.on(\\\'\\\') 有對應(yīng)的諸多行為 查看官網(wǎng)即可,這里根據(jù)需要為--zoomstart zoom zoomend 代碼如下: ?

    2024年02月14日
    瀏覽(23)
  • QGraphicsView實(shí)現(xiàn)簡易地圖4『局部加載-地圖漫游』

    QGraphicsView實(shí)現(xiàn)簡易地圖4『局部加載-地圖漫游』

    前文鏈接:QGraphicsView實(shí)現(xiàn)簡易地圖3『局部加載-地圖縮放』 當(dāng)鼠標(biāo)拖動地圖移動時(shí),需要實(shí)時(shí)增補(bǔ)和刪減瓦片地圖,大致思路是計(jì)算地圖從各方向移動時(shí)進(jìn)出視口的瓦片坐標(biāo)值,根據(jù)變化后的瓦片坐標(biāo)值來增減地圖瓦片,以下將提供實(shí)現(xiàn)此需求的核心代碼。 1、動態(tài)演示效果

    2024年02月13日
    瀏覽(44)
  • 141:vue+leaflet 利用高德逆地理編碼,點(diǎn)擊地圖標(biāo)記marker,popup地址信息

    141:vue+leaflet 利用高德逆地理編碼,點(diǎn)擊地圖標(biāo)記marker,popup地址信息

    第141個(gè) 點(diǎn)擊查看專欄目錄 本示例的目的是介紹演示如何在vue+leaflet中利用高德逆地理編碼,點(diǎn)擊地圖標(biāo)記marker,popup地址信息 。主要利用高德地圖的api將坐標(biāo)轉(zhuǎn)化為地址,然后在點(diǎn)擊的位置,彈出彈窗,在里面顯示出地址信息。 直接復(fù)制下面的 vue+leaflet源代碼,操作2分鐘即

    2024年01月24日
    瀏覽(30)
  • 高德地圖通過畫面中的一個(gè)覆蓋物設(shè)置圖中心點(diǎn)和zoom

    需要將這個(gè)覆蓋物置于地圖中間且不超過地圖邊界的放至最大 計(jì)算覆蓋物中心點(diǎn),定為地圖中心點(diǎn) 計(jì)算覆蓋物的最大經(jīng)緯度,和最小經(jīng)緯度,測算出實(shí)際最長距離,根據(jù)距離與zoom對應(yīng)關(guān)系設(shè)置zoom

    2024年02月09日
    瀏覽(27)
  • leaflet使用L.geoJSON加載文件,參數(shù)pointToLayer的使用方法(130)

    leaflet使用L.geoJSON加載文件,參數(shù)pointToLayer的使用方法(130)

    第130個(gè) 點(diǎn)擊查看專欄目錄 本示例的目的是介紹演示如何在vue+leaflet中加載geojson文件,這里介紹pointToLayer的使用方法。 點(diǎn)的處理方式不同于折線和多邊形。默認(rèn)情況下,簡單標(biāo)記使用為GeoJSON點(diǎn)繪制。在創(chuàng)建GeoJSON涂層時(shí),我們可以通過pointToLayer在GeoJSON選項(xiàng)對象中傳遞函數(shù)來改

    2023年04月09日
    瀏覽(33)
  • orb_slam3實(shí)現(xiàn)保存/加載地圖功能and發(fā)布位姿功能

    先說方法:在加載的相機(jī)參數(shù)文件.yaml的最前面加上下面兩行就行。 第一行表示從本地加載名為\\\"MH01_to_MH05_stereo_inertial.osa\\\"的地圖文件,第二行表示保存名為\\\"MH01_to_MH05_stereo_inertial.osa\\\"的地圖到本地。第一次運(yùn)行建圖時(shí)注釋掉第一行,只使用第二行,加載地圖重定位時(shí)反過來,

    2024年02月15日
    瀏覽(23)
  • [Webgis][地圖加載]OpenLayer加載多種形式地圖

    [Webgis][地圖加載]OpenLayer加載多種形式地圖

    描述在前 書接上回,作為打工人,學(xué)習(xí)還是要以項(xiàng)目為導(dǎo)向。由于領(lǐng)導(dǎo)想看衛(wèi)星地圖顯示,這次我們記錄下,如何使用OpenLayer 加載顯示常見的幾種二維地圖,包括普通地圖,衛(wèi)星地圖,和衛(wèi)星路網(wǎng)混合地圖。還是以高德地圖為例,下面我們直接上代碼,從實(shí)例入手學(xué)習(xí)。 代

    2024年02月01日
    瀏覽(53)
  • Leaflet結(jié)合Echarts實(shí)現(xiàn)遷徙圖

    Leaflet結(jié)合Echarts實(shí)現(xiàn)遷徙圖

    效果圖如下:

    2024年02月04日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包