真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線

這篇文章主要介紹了如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

目前創(chuàng)新互聯(lián)已為上千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計、遵化網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

通過對leaflet以及其插件的學習,我們了解到使用Leaflet.Path.DashFlow插件可實現(xiàn)軌跡動態(tài)展示、管道流向動態(tài)展示、河流流向動態(tài)展示等,達到增強可視化展示的效果。該插件使用方式非常簡單,只需在正常添加線的時候,加入dashArraydashSpeed參數(shù)即可。核心代碼如下:

如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線

注意,在dashSpeed為負時,線是正向流動。

效果如下:

如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線

但是在使用的過程中,發(fā)現(xiàn)該插件有個弊端,就是當使用Canvas方式繪制地圖(初始化地圖preferCanvas參數(shù)為true)時,動態(tài)效果不可用。那要如何解決這個問題呢?

通過對Leaflet.Path.DashFlow以及leaflet源碼的研究,發(fā)現(xiàn)動態(tài)線的效果主要是通過動態(tài)刷新dashOffset參數(shù)的值,以改變線的樣式來實現(xiàn)。

如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線

L.SVG_updateStyle的時候,更新了dashOffset參數(shù),但是L.Canvas_updateStyle時,并沒有更新dashOffset參數(shù)。這即是在Canvas方式繪制時沒有動態(tài)效果的原因。

L.SVG:

如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線

L.Canvas:

如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線

由此,我們找到了解決思路,即在L.Canvas_updateStyle方法中,參考L.SVG的處理方式,添加對dashOffset參數(shù)的控制。核心代碼如下:

如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線

為方便使用,我們將L.Path.DashFlow插件重新封裝,大家引用這個插件,即可在CanvasSVG兩種方式下使用此插件。

總結(jié)

  1. 使用Leaflet.Path.DashFlow插件可實現(xiàn)軌跡動態(tài)展示、管道流向動態(tài)展示等動態(tài)線效果。

  2. 默認插件在使用Canvas方式繪制地圖(初始化地圖preferCanvas參數(shù)為true)時,動態(tài)效果不可用。

  3. 通過修改L.Canvas中代碼,即可在Canvas方式時實現(xiàn)動態(tài)線效果。

  4. L.Path.DashFlow插件重新封裝,引用插件,即可在CanvasSVG兩種方式下實現(xiàn)動態(tài)線效果。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學習!


網(wǎng)站欄目:如何實現(xiàn)支持Canvas的Leaflet.Path.DashFlow動態(tài)流向線
標題來源:http://weahome.cn/article/pehpdc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部