激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - js教程 - mapboxgl實現帶箭頭軌跡線的代碼

mapboxgl實現帶箭頭軌跡線的代碼

2021-12-27 15:48GIS兵器庫 js教程

這篇文章主要介紹了mapboxgl實現帶箭頭軌跡線的代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

最近在使用mapboxgl實現軌跡展示時,想實現類似高德地圖導航軌跡效果,然而并未在網上找到類似示例。經一番研究與嘗試,最終解決,效果如下。

mapboxgl實現帶箭頭軌跡線的代碼

添加箭頭核心代碼如下,只需在配置layout中添加symbol-placementsymbol-spacing屬性即可:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// 添加箭頭圖層
function addArrowlayer() {
  map.addLayer({
    'id': 'arrowLayer',
    'type': 'symbol',
    'source': {
      'type': 'geojson',
      'data': routeGeoJson //軌跡geojson格式數據
    },
    'layout': {
      'symbol-placement': 'line',
      'symbol-spacing': 50, // 圖標間隔,默認為250
      'icon-image': 'arrowIcon', //箭頭圖標
      'icon-size': 0.5
    }
  });
}

然而,為實現上述效果,確走了不少彎路。曾嘗試集成Leaflet.PolylineDecorator插件核心算法,通過對線的處理,計算每個箭頭所在位置以及角度,也能實現上述效果。不過該方案在地圖傾斜旋轉后,有時會有箭頭偏移的bug。

在解決此bug過程中,不經意間看到道路標注都是沿道路線方向,突然有了新的靈感。

重新查看mapboxgl API,發現將layout中的symbol-placement設置為line,即可實現沿著線的方向繪制箭頭。

注意:

1.我所用圖標為右側方向箭頭,結果與實際方向相符,如果圖標為向上箭頭,需修改icon-rotate為90。

2.只把symbol-placement設置為line,箭頭間距過于稀疏;需要設置下symbol-spacing參數,symbol-spacing默認值為250,修改為50即可實現文章首頁圖片效果。

在線示例

在線示例:http://gisarmory.xyz/blog/index.html?demo=MapboxGLPolylineDecorator

代碼地址:http://gisarmory.xyz/blog/index.html?source=MapboxGLPolylineDecorator

原文地址:http://gisarmory.xyz/blog/index.html?blog=MapboxGLPolylineDecorator。

到此這篇關于mapboxgl實現帶箭頭軌跡線的文章就介紹到這了,更多相關mapboxgl實現帶箭頭軌跡線內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://www.cnblogs.com/gisarmory/p/14218071.html

延伸 · 閱讀

精彩推薦
  • js教程在HTML中使用JavaScript的兩種方法

    在HTML中使用JavaScript的兩種方法

    這篇文章主要介紹了在HTML中使用JavaScript的兩種方法,幫助大家更好的理解和制作網頁,感興趣的朋友可以了解下...

    itbsl9212021-12-18
  • js教程mustache.js實現首頁元件動態渲染的示例代碼

    mustache.js實現首頁元件動態渲染的示例代碼

    這篇文章主要介紹了mustache.js實現首頁元件動態渲染的示例代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可...

    code2roc4212021-12-21
  • js教程JS實現選項卡插件的兩種寫法(jQuery和class)

    JS實現選項卡插件的兩種寫法(jQuery和class)

    這篇文章主要為大家詳細介紹了JS實現選項卡插件的兩種寫法:jQuery和class,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參...

    南柯Seven11942021-12-22
  • js教程微信小程序實現購物車小功能

    微信小程序實現購物車小功能

    這篇文章主要為大家詳細介紹了微信小程序實現購物車小功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    小王同學Max5412021-12-22
  • js教程如何在JavaScript中正確處理變量

    如何在JavaScript中正確處理變量

    這篇文章主要介紹了如何在JavaScript中正確處理變量,幫助大家更好的理解和使用JavaScript,感興趣的朋友可以了解下...

    瘋狂的技術宅10672021-12-20
  • js教程微信小程序實現登錄注冊功能

    微信小程序實現登錄注冊功能

    這篇文章主要介紹了微信小程序實現登錄注冊功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    保護我方豆豆5112021-12-22
  • js教程js事件模型與自定義事件實例解析

    js事件模型與自定義事件實例解析

    JavaScript一個最簡單的事件模型,需要有事件綁定與觸發,還有事件刪除。本文將對其具體實現代碼進行解析,需要的朋友一起來看下吧...

    caihg5612021-12-15
  • js教程微信小程序實現下拉加載更多商品

    微信小程序實現下拉加載更多商品

    這篇文章主要為大家詳細介紹了微信小程序實現下拉加載更多商品,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    保護我方豆豆8102021-12-22
主站蜘蛛池模板: 91性高湖久久久久久久久网站 | 99极品视频 | 午夜精品在线视频 | 日韩精品中文字幕在线观看 | 亚洲国产高清视频 | 激情91| 成人福利视频导航 | 姑娘第四集免费看视频 | 99这里有精品 | 国产精品视频二区不卡 | 亚洲精品久久久久www | 国产精品免费久久久久 | 精品国产一区二区三区在线观看 | 免费毛片在线视频 | 欧美日本免费一区二区三区 | 亚洲日色 | 一级片a| 一级观看免费完整版视频 | 久草影音| 欧美成人三级大全 | 亚洲人成网在线观看 | 亚洲成年人免费网站 | 欧美日韩亚州综合 | 中文字幕视频在线播放 | 在线看免费观看av | 久久中文一区 | 久久精品国产99国产精品澳门 | 亚洲精品无码不卡在线播放he | 久久国产经典 | 国产亚洲精品久久午夜玫瑰园 | 777sesese| 欧美爱爱一区二区 | 在线播放污 | 色七七久久影院 | 国产精品久久在线观看 | 牛牛碰在线 | 亚洲一区二区三区在线免费观看 | 国产91片| 九一免费在线观看 | hd极品free性xxx护士人 | 久久国产免费视频 |