国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Mapbox GL線條樣式全解析:從line屬性配置到數(shù)據(jù)驅(qū)動動態(tài)渲染

Mapbox GL線條樣式全解析:從line屬性配置到數(shù)據(jù)驅(qū)動動態(tài)渲染 我最早接觸 Mapbox 的線樣式時第一反應是這玩意兒不就調(diào)個顏色和粗細嗎真正上手才知道線條樣式在 Mapbox GL 里對應的是一整套以line-開頭的 paint 屬性體系從基礎的線寬、顏色到虛線、漸變、描邊、偏移再到數(shù)據(jù)驅(qū)動樣式組合起來能玩的花樣非常多。如果你也在用 Mapbox 畫路線、邊界、等值線或者軌跡這篇就把線條樣式從配置到原理、從靜態(tài)到動態(tài)完整拆開講清楚順便把我踩過的坑也一并交代了。先說下這篇內(nèi)容的范圍以 Mapbox GL JS v2/v3 為主涉及addLayer添加line類型圖層、核心 paint 屬性的作用機制、GeoJSON 數(shù)據(jù)格式要求、樣式動態(tài)更新最后是幾個高頻問題的排查過程。適合剛接觸 Mapbox 的初學者也適合已經(jīng)能跑通基礎地圖、想在樣式細節(jié)上做深的朋友。1. 動手前的裝備Token 獲取與首次初始化很多人在 Mapbox 官網(wǎng)注冊賬號之后卡在了第一步到底去哪拿 token拿到之后又該放哪。這個環(huán)節(jié)看似基礎實際上后面所有圖層能否正常顯示都跟它直接相關所以先把這塊踩實。1.1 注冊與 Token 獲取的正確姿勢注冊流程沒什么特別的去 Mapbox 官網(wǎng)用郵箱注冊完成郵箱驗證后進入賬戶后臺。注意一個細節(jié)Mapbox 的 Access Token 分幾種包括默認的 public tokenpk.開頭和 secret tokensk.開頭。前端地圖渲染用的是 public token 就夠了secret token 千萬別寫進前端代碼里它泄露了相當于你的賬戶額度被人白嫖。在后臺的Account Tokens頁面可以創(chuàng)建新 token。創(chuàng)建時建議手動選擇一個 scope 集合至少要包含styles:read、fonts:read、tiles:read這幾個權限對應了加載樣式、字體和瓦片的基礎需求。Token 創(chuàng)建完成后有一串很長的字符串就是類似pk.eyJ1Ijoi...的長文本復制保存好。1.2 初始化地圖Token 放哪才不會被坑初始化地圖時 token 的注入方式有兩種一種是在引入 Mapbox GL JS 的 script 標簽之前直接給mapboxgl.accessToken賦值另一種是在new mapboxgl.Map()的構(gòu)造參數(shù)里通過accessToken字段傳入。推薦第一種代碼更清晰mapboxgl.accessToken pk.eyJ1Ijoi...; const map new mapboxgl.Map({ container: map, style: mapbox://styles/mapbox/streets-v12, center: [116.4, 39.9], zoom: 10 });這里有個常見的坑token 放到了 DOM 元素加載之前執(zhí)行。如果你把mapboxgl.accessToken ...寫在了#map這個 div 的前面而且用了document.getElementById(map)去拿容器大概率會報Container not found。反正我建議把地圖初始化代碼整體放在頁面底部或者用window.onload/DOMContentLoaded包起來順序問題就徹底沒了。初始化完成后如果你能看到 Mapbox 默認的街道底圖說明環(huán)境已經(jīng)通了。接下來所有線條相關操作都建立在這張底圖之上。2. line 圖層的骨架Source 數(shù)據(jù)格式與 addLayer 配置線條不是憑空畫出來的它必須先有數(shù)據(jù)源source再通過圖層layer定義怎么畫。Mapbox 的這套數(shù)據(jù)與樣式分離設計一開始可能會覺得繞但理解了之后會發(fā)現(xiàn)它特別適合做動態(tài)換膚和交互高亮。2.1 GeoJSON 里 LineString 的格式約束Mapbox 中最常用的 source 類型是 GeoJSON線條對應的幾何類型是LineString或MultiLineString。一個最簡單的線條數(shù)據(jù)長這樣{ type: FeatureCollection, features: [ { type: Feature, properties: { name: 路段A, speed: 80 }, geometry: { type: LineString, coordinates: [ [116.4, 39.9], [116.5, 39.92], [116.6, 39.88] ] } } ] }有幾點要提醒坐標順序是經(jīng)度在前、緯度在后寫反了線條會跑到地圖另一頭去我第一次就把這個順序搞反了折騰了半天才發(fā)現(xiàn)是經(jīng)緯度反了。另外LineString至少需要兩個坐標點MultiLineString則是多個LineString的數(shù)組適合表達一條整體邏輯線路的多段不連續(xù)幾何。properties 字段是自由擴展的它不會直接決定樣式但它是后面做數(shù)據(jù)驅(qū)動樣式的關鍵。比如你想根據(jù)道路的speed屬性給線條上不同顏色靠的就是 properties 里的字段。2.2 addLayer 的兩個核心參數(shù)source 與 paint給地圖添加線條圖層的完整代碼如下map.addLayer({ id: route-line, type: line, source: { type: geojson, data: geojsonData }, layout: { line-cap: round, line-join: round }, paint: { line-color: #ff6b6b, line-width: 4, line-opacity: 0.8 } });這里我會特別強調(diào)type: line這個字段。Mapbox GL 的圖層類型不止一種如果你把type寫成了fill那面的填充邏輯會覆蓋掉線的繪制邏輯線條直接消失。實際開發(fā)里我遇到過幾次圖層添加了但地圖上啥也沒有的情況排查到最后都是這種低級錯誤。layout和paint是兩個不同的屬性組layout 控制的是幾何層面的渲染方式比如線帽長什么樣、拐角怎么連接paint 控制的是視覺樣式比如顏色、寬度、透明度。在 Mapbox 文檔里這兩類屬性用不同的前綴標識line-開頭的屬性一部分歸 layout一部分歸 paint需要具體區(qū)分。我習慣記憶的方式是改顏色、寬度、透明度、模糊、偏移這類給人看的效果是 paint改端點形狀、連接形狀這些幾何構(gòu)造方式是 layout。2.3 直接內(nèi)聯(lián) source 與事先定義 source 的區(qū)別上面代碼里把 source 直接寫在了addLayer的source字段里這是 Mapbox GL JS 支持的一種快捷寫法數(shù)據(jù)會被隱式創(chuàng)建一個 source。但如果你需要多個圖層共用同一份數(shù)據(jù)——比如一套線數(shù)據(jù)既用來畫道路又用來畫道路兩側(cè)的描邊那最好顯式先添加 sourcemap.addSource(road-data, { type: geojson, data: geojsonData }); map.addLayer({ id: road-line, type: line, source: road-data, paint: { line-color: #333, line-width: 6 } }); map.addLayer({ id: road-outline, type: line, source: road-data, paint: { line-color: #fff, line-width: 2, line-offset: 3 } });這種一個 source 多個 layer的模式在實際項目里非常常見做道路網(wǎng)、地鐵線路圖時幾乎必用。原因是 Mapbox 允許同一條幾何數(shù)據(jù)用不同的 paint 參數(shù)渲染多遍疊加在一起就是描邊、發(fā)光、陰影等效果而不用復制數(shù)據(jù)。3. 線條樣式核心屬性從基礎到進階逐步拆解這節(jié)是全文的重頭戲。我把line-開頭的常用屬性按基礎三件套幾何形態(tài)控制進階視覺特效數(shù)據(jù)驅(qū)動四個層次來講每一層都給出可以直接抄的配置。3.1 基礎三件套顏色、寬度、透明度line-color是最直觀的屬性支持十六進制、rgb()、rgba()、hsl()等格式。特別注意如果使用了line-gradient線性漸變line-color會被忽略兩者不能同時生效。line-width的單位是像素但這里的像素是屏幕像素而非地理單位。當?shù)貓D縮放級別變化時默認為line-width不會隨縮放等比變化除非你手動做了interpolate表達式按 zoom 插值。這是一個地圖項目里非常常規(guī)的需求小比例尺時線細一點大比例尺時線粗一點如果直接固定一個值放大后線條會顯得過細縮小后又會糊成一團。line-opacity控制整體不透明度取值0到1。如果線條下面還有別的圖層需要露出下面的內(nèi)容就用 opacity 做半透明處理。我一般把 opacity 用在背景輔助線上比如行政區(qū)邊界疊加到底圖上半透明效果會讓主圖層更突出?;A三件套組合的最小配置paint: { line-color: #2b6cb0, line-width: 3, line-opacity: 0.9 }3.2 幾何形態(tài)線帽與拐角line-cap控制線頭形狀可選值有butt平頭、round圓頭、square方頭。默認是butt線條在端點處平直切斷。round是最常用的尤其在繪制道路、軌跡時圓頭看起來自然很多不會有被刀切了一刀的生硬感。line-join控制折線拐角處的連接方式可選值bevel斜切、round圓角、miter尖角。道路、河流這種自然元素首選round拐彎平滑如果是建筑輪廓、規(guī)劃紅線這類偏硬朗的圖形可以選miter或bevel。有個細節(jié)miter模式下如果拐角角度太小會出現(xiàn)尖角過長甚至超出預期繪制范圍的問題。Mapbox 為此提供了line-miter-limit屬性默認值2意思是當尖角長度超過線寬乘以該值的倍數(shù)時會自動切換為bevel渲染。你不需要經(jīng)常調(diào)它但知道這個機制后遇到尖角變形就不會慌了。3.3 虛線、點線與其他 patternline-dasharray是畫虛線用的屬性值為數(shù)字數(shù)組表示實線段和空白段的長度比例單位是線寬的倍數(shù)。例如line-dasharray: [4, 2]表示畫 4 倍線寬長度的實線、空 2 倍線寬長度的空白循環(huán)往復。這個倍數(shù)關系很重要——同一個 dasharray 數(shù)組在不同線寬下虛線的實際疏密會隨之變化。比如線寬 2 時[4, 2]的實線段是 8 像素線寬 10 時實線段就是 40 像素。如果希望虛線視覺疏密絕對一致需要結(jié)合 line-width 一起做 interpolate 調(diào)整否則會顯得很奇怪。Mapbox 的線帽和虛線有個聯(lián)動機制要留意當line-cap為butt時虛線段的端點會整齊切斷當line-cap為round時每個實線段的兩端會變成半圓形線段之間的視覺間距看起來略短。一個常見效果——鐵軌線就是round線帽加[2, 1]這種短周期 dasharray 產(chǎn)生的很適合用在跑步路線、規(guī)劃中的道路這類場景。3.4 進階視覺描邊、偏移與模糊line-offset可以把線條沿垂直方向平移一段像素正值為向右上偏移負值為向左下偏移。這個屬性的作用非常廣實現(xiàn)道路描邊、雙線道路、地鐵線路的平行線效果都靠它。一個典型的雙線道路做法先用一個line-offset: -4的圖層畫一條較寬的顏色甲線條再用line-offset: 4的圖層畫一條較窄的顏色乙線條。因為兩條線共用同一個 source幾何一致偏移方向相反視覺上就形成了道路中央分隔線的效果。line-blur給線條添加高斯模糊單位像素。配合較大的 line-width可以做出光帶效果常用于軌跡高亮、航線展示。要注意的是line-blur的模糊是向內(nèi)外兩側(cè)均勻擴散的模糊半徑超過線寬一半時線條中心會變淡出現(xiàn)空心感。我一般把 line-blur 設為線寬的 0.8 到 1.2 倍之間這樣既有光暈感又保留中心實體。line-gap-width是空心線的核心。它在線條內(nèi)部掏空一塊區(qū)域掏空寬度由該屬性決定。比如線寬 10、gap-width 4視覺上就是兩條各 3 像素的平行線夾著一條 4 像素的空白。做地鐵線路圖時一個線路圖層用 gap-width 配合深色背景就能畫出兩條平行軌道線再疊加一個白色小圓點圖層當車站標準的軌道效果就出來了。// 雙軌效果配置 const trackLayer { id: track, type: line, source: metro-line, paint: { line-color: #333, line-width: 8, line-gap-width: 5 } };3.5 線性漸變line-gradient 的使用邊界line-gradient允許線條顏色沿路徑方向漸變例如從起點到終點由綠變紅非常適合表達一條路徑的強度變化性能指標、擁堵程度等。它的使用機制和普通的 paint 屬性有很大不同必須配合line-gradient表達式且表達式需要一個[line-progress]作為輸入。paint: { line-width: 6, line-gradient: [ interpolate, [linear], [line-progress], 0, #2ecc71, 0.5, #f1c40f, 1, #e74c3c ] }[line-progress]是一個特殊變量取值從 0 到 1表示線段從頭到尾的進度比例。不能直接拿 properties 里的某個數(shù)值來做漸變的輸入只能用 line-progress。另外line-gradient生效時line-color完全失效且Mapbox 文檔里明確 line-gradient 不支持數(shù)據(jù)驅(qū)動也就是不能根據(jù)不同 feature 動態(tài)切換漸變規(guī)則它只能做全局統(tǒng)一的一條漸變管線??赡苡腥藭柲俏蚁虢o不同路段設置不同顏色而不是一條線上漸變該怎么做答案是回到數(shù)據(jù)驅(qū)動用line-color配合match或interpolate表達式按 properties 里的字段映射顏色。這才是按屬性區(qū)分顏色的正解。4. 動態(tài)改樣式與條件式渲染從靜態(tài)到交互靜態(tài)線條只能看動態(tài)改樣式才有靈魂。Mapbox 提供了setPaintProperty這個方法可以在運行時更新圖層樣式。這一步掌握之后懸停高亮、篩選顯示、主題切換都手到擒來。4.1 setPaintProperty 更新單屬性map.setPaintProperty(route-line, line-color, #e74c3c); map.setPaintProperty(route-line, line-width, 8);第一個參數(shù)是圖層 id第二個是 paint 屬性名第三個是新值。這個方法會以動畫方式更新樣式視覺上非常平滑。需要注意setPaintProperty 只能更新 paint 屬性不能更新 layout 屬性。如果你想換line-cap或line-join得用setLayoutPropertymap.setLayoutProperty(route-line, line-cap, butt);雖然 layout 屬性改動不觸發(fā) paint 的動畫過渡但也不會造成地圖整體重載所以不用擔心閃爍問題。4.2 數(shù)據(jù)驅(qū)動樣式match 和 interpolate 表達式的實際使用Mapbox 的樣式值支持表達式語法這意味著你可以在paint里寫一個函數(shù)而不只是一個常量。最常見的兩個場景場景一按類別給顏色假設 route 數(shù)據(jù)里有type字段值可能是expressway、local、footpath想分別顯示紅、黃、綠paint: { line-color: [ match, [get, type], expressway, #e74c3c, local, #f1c40f, footpath, #2ecc71, #95a5a6 // 默認兜底色 ], line-width: [ interpolate, [linear], [zoom], 8, 2, 12, 4, 16, 8 ] }match語法第一參是取值表達式后面是值-顏色成對出現(xiàn)的映射最后必須有一個兜底值不然匹配不到時會報錯。[get, type]表示從 feature 的 properties 里取 type 字段。場景二數(shù)值連續(xù)映射顏色如果屬性值是連續(xù)數(shù)值比如speed從 0 到 120想從綠色漸變到紅色paint: { line-color: [ interpolate, [linear], [get, speed], 0, #2ecc71, 60, #f1c40f, 120, #e74c3c ] }注意這里第一參是[linear]也可以用[exponential, 0.5]來做非線性插值但一般線性就夠用了。數(shù)據(jù)驅(qū)動樣式是 Mapbox 最強大的特性之一它的性能也足夠好Mapbox GL 通過分塊檢查 feature 的屬性值并按需重繪幾千個 feature 的樣式切換基本無感。4.3 鼠標懸停高亮與 feature-state 的結(jié)合懸停高亮經(jīng)常會用到feature-state這個機制比直接改源數(shù)據(jù)更高效。先在 source 上設置promoteId比如數(shù)據(jù)里每條 feature 有id字段map.addSource(route-data, { type: geojson, data: geojsonData, promoteId: id });然后在 paint 里用[feature-state, hover]作為條件paint: { line-color: [ case, [boolean, [feature-state, hover], false], #ff6b6b, #2b6cb0 ] }鼠標移動時通過setFeatureState更新狀態(tài)map.on(mousemove, route-line, (e) { if (e.features.length 0) { const featureId e.features[0].id; map.setFeatureState({ source: route-data, id: featureId }, { hover: true }); } }); map.on(mouseleave, route-line, () { map.removeFeatureState({ source: route-data, id: hoveredId }); });這套方案比setPaintProperty去逐條覆蓋顏色精準得多因為它按 feature 粒度管理狀態(tài)不會污染其他線條。如果數(shù)據(jù)里沒有 id 字段Mapbox 會基于坐標生成內(nèi)部 id但那個 id 不穩(wěn)定盡量保證數(shù)據(jù)里有穩(wěn)定的 id。5. 高頻坑與完整排查鏈路從線沒顯示到虛線不生效這里寫幾個我在實際項目中踩過、也幫別人排查過的典型問題。每個問題我都盡量還原完整的排查思路而不是直接丟結(jié)論因為排查思路本身比結(jié)論更有復用價值。5.1 坑一圖層加了但線完全看不見現(xiàn)象代碼不報錯地圖正常加載但 target 圖層區(qū)域空空如也。排查鏈路打開瀏覽器開發(fā)者工具在 Console 里看有沒有Unable to load source之類的報錯如果有先查 source 的 data URL 是否正確或者內(nèi)聯(lián) GeoJSON 是否格式非法。在 Console 執(zhí)行map.getLayer(route-line)返回undefined說明圖層壓根沒加上返回圖層對象但看不到說明數(shù)據(jù)或樣式有問題。執(zhí)行map.getSource(route-data)獲取 source 后調(diào)用getData()展開輸出的 JSON檢查 coordinates 數(shù)組里每個點是否[lng, lat]順序正確數(shù)值是否在合法范圍。檢查type是否為line。我見過有人把 GeoJSON 里的 geometry type 和 layer type 搞混geometry 是LineString但 layer 的type寫成了fill結(jié)果整個區(qū)域被填充而不是線條。檢查line-width是否被設成了0。說實話我有一段時間為了做只在某 zoom 級別顯示線用表達式把寬度設為 0后來忘了改回來排查了非常久。5.2 坑二虛線不生效顯示的還是實線現(xiàn)象設置了line-dasharray: [4, 2]但線條依然實線顯示。完整原因分析Mesh 層面有兩種可能。第一種是線條太短。Mapbox 的 dasharray 在短線上會因為 line-width 與比例關系導致虛線變化不明顯如果一條線只有幾個像素長虛線自然看不出效果。建議先拉長測試線排除數(shù)據(jù)長度因素。第二種原因是line-dasharray 與某些屬性不兼容。具體來說line-cap設置為round時虛線段的端點會繪制成圓頭如果 dasharray 數(shù)組的值較小圓頭和圓頭連在一起視覺上就會趨向于一條連續(xù)的粗線。另外line-gap-width與 dasharray 同時使用時虛線中的空隙區(qū)域表現(xiàn)會受 gap-width 影響出現(xiàn)實線段看起來被劈開、虛線間距消失的錯覺。排查方式先把 line-cap 改成 buttline-gap-width 改成 0看虛線是否恢復。如果恢復了就是這兩個屬性對 dasharray 的干擾。有一個隱藏很深的要求虛線渲染需要圖層是line類型且沒有開啟line-border之類的附加繪制某些舊版本 GL JS 在部分 GPU 驅(qū)動下對 dasharray 支持不完善會出現(xiàn)虛線渲染成實線或渲染成雪花點。遇到這種情況要么升級版本要么把 dasharray 轉(zhuǎn)成數(shù)據(jù)預處理——在 GeoJSON 層面生成多個線段配合實線-空白交替繪制不過這個方案復雜而且維護成本高非必要不建議做。5.3 坑三線寬隨縮放比例不對放大后鋸齒嚴重現(xiàn)象zoom 級別變大時線條沒有同步變粗且邊緣出現(xiàn)明顯鋸齒。原因分析地圖瓦片在放大時會進行插值縮放矢量數(shù)據(jù)的線條如果 line-width 沒有跟隨 zoom 變化就會出現(xiàn)縮放像素色塊導致的鋸齒。鋸齒感最直接的解決辦法是把line-width用 interpolate 表達式綁定 zoom讓線寬隨 zoom 平滑增加。paint: { line-width: [ interpolate, [linear], [zoom], 5, 1, 10, 3, 15, 8 ] }錨點zoom 值和線寬對應值不是隨便填的需要結(jié)合實際地圖場景調(diào)試。比如展示城市道路時zoom 5全國視野線寬 1px 比較合適zoom 10城市級3pxzoom 15街道級8px。這個沒有數(shù)學公式基本靠經(jīng)驗和視覺效果調(diào)。鋸齒還有一個來源是超長 LineString 在 WebGL 中被切割成多段繪制每段邊緣的抗鋸齒計算是獨立的導致接縫處出現(xiàn)拼接縫。這種情況可以通過減小單條 LineString 的長度拆分 feature來緩解或者用 GeoJSON 的tolerance字段在數(shù)據(jù)源端做幾何簡化。5.4 坑四Token 相關的 401 或樣式加載失敗雖然前面說了 token 獲取但每次都要強調(diào)地圖不顯示且 Console 里報Unauthorized或403第一個要查的就是 token 是否正確、是否超出配額。我在調(diào)試時經(jīng)常遇到一種情況有人把 Mapbox GL JS 的 CDN 地址復制錯了加載的是老版本 v1而 v1 和 v2 在 token 處理上存在差異。如果發(fā)現(xiàn)樣式一直掛在style.load事件不觸發(fā)檢查一下 script 引入的版本號和官網(wǎng)要求是否一致現(xiàn)在官方推薦直接用 v3 版本的 CDN 或 npm 包。還有一點如果你在本地開發(fā)用的是file://協(xié)議打開 HTML某些瀏覽器對跨域讀取本地 GeoJSON 文件有限制也會導致 source 加載失敗。開發(fā)階段建議用http-server、vite dev這類本地服務跑別直接雙擊 html 文件。6. 進階優(yōu)化與性能注意樣式不只是能顯示還要考慮性能尤其數(shù)據(jù)量上來之后。這一節(jié)不展開講所有性能優(yōu)化只講和線圖層直接相關的幾個點。6.1 大量線要素的性能隱患如果一次加載上萬條線比如全國的河流網(wǎng)、道路網(wǎng)每條線都有復雜的 LineString直接塞進 GeoJSON source 會讓地圖明顯卡頓。Mapbox 的矢量渲染效率已經(jīng)很高但過度復雜的幾何體仍然會在縮放時觸發(fā)大量 CPU/GPU 計算。常用策略是數(shù)據(jù)簡化simplify。發(fā)布前用工具降低坐標點密度保留幾何大輪廓即可。在 Mapbox 層面還能調(diào)整line-width的最小值、關閉line-blur之類耗性能的效果這些在小數(shù)據(jù)量時感覺不到大數(shù)據(jù)量時非常明顯。另外line-dasharray本身也會帶來額外的 GPU 紋理計算所以虛線圖層只加在必要的場景。如果整個地圖有幾百個虛線圖層幀率下降會很明顯。6.2 用 setData 更新數(shù)據(jù)與用 setStyle 的取舍動態(tài)更新線數(shù)據(jù)時可以直接操作 source 的setDatamap.getSource(route-data).setData(newGeoJSON);這個操作比整個setStyle輕量得多因為它只更新數(shù)據(jù)層不會重新加載底圖樣式和字體。但是有個注意事項setData后 source 上的promoteId、feature-state 等配置不會丟但已設置的 feature-state 會因數(shù)據(jù)更新而失效所以高亮狀態(tài)要在更新數(shù)據(jù)后重新設置。如果換了 token 或者想整體換底圖風格再考慮setStyle。6.3 與高德/Leaflet 線條樣式的差異是理解 Mapbox 的關鍵用過 Leaflet 或高德 JS API 的話你可能習慣直接給 polyline 設置color、weight、opacity。Mapbox 的思路不太一樣它把樣式按屬性拆得非常細并且允許每個屬性用表達式驅(qū)動。好處是復雜樣式的表達能力非常強壞處是初學階段需要多花點時間理解屬性體系。我自己的體會是一旦你習慣了 layout/paint 分離、表達式驅(qū)動、feature-state 這套模式再回去用 Leaflet 會覺得表達能力受限。Mapbox 的線樣式本質(zhì)上是聲明式的渲染管線你描述什么樣 Conditions 下畫成什么樣剩下的交給渲染引擎這和傳統(tǒng)命令式繪圖有本質(zhì)區(qū)別。7. 實用技巧與個人經(jīng)驗補充在收尾之前再分享幾個零散但非常實用的技巧都是我在實際項目中驗證過、覺得值得寫下來的。7.1 線條圖層的分層命名習慣圖層一多命名混亂是災難。我自己的習慣是{業(yè)務}_{類型}_{用途}比如road_line_main、road_line_outline、metro_line_track。這樣在代碼里查找和維護都方便也方便其他同事接手。同一個 source 的多層樣式之間用_main、_outline、_shadow這種后綴區(qū)分。7.2 在線的樣式調(diào)試工具Mapbox 官方提供的Mapbox Studio里可以可視化編輯樣式但它的樣式編輯器對表達式支持有限復雜的表達式仍然建議在代碼里維護。我更常用的調(diào)試方式是瀏覽器里開著開發(fā)者工具在 Console 里快速執(zhí)行map.setPaintProperty(...)反復調(diào)參顏色可以先用十六進制調(diào)到滿意再固化到代碼里。這個實時調(diào)參的流程比改代碼刷新頁面高效太多。7.3 巧用 opacity 疊加實現(xiàn)霓虹發(fā)光效果線條發(fā)光的實現(xiàn)不復雜一個線寬較大、透明度較低的圖層作為光暈層疊在上面再畫一條線寬較小、高亮顏色的主圖層兩者共用同一 source。光暈層用line-blur適當模糊不用單獨做漸變就能達到不錯的視覺效果。// 光暈層 map.addLayer({ id: route-glow, type: line, source: route-data, paint: { line-color: #ff6b6b, line-width: 12, line-opacity: 0.3, line-blur: 4 } }); // 主圖層 map.addLayer({ id: route-main, type: line, source: route-data, paint: { line-color: #ff2d2d, line-width: 3 } });注意圖層順序光暈層先 add主圖層后 add這樣主圖層壓在光暈層上方。如果順序反了主圖層的顏色會蓋住光暈效果。7.4 千萬別忽略 line-width 與 line-blur 的配合調(diào)line-blur時容易踩一個隱含邏輯blur 的值是像素但它是基于線寬繪制的紋理上做的。如果線寬只有 2pxblur 設成 20px那這條線會淡到幾乎看不見。我的經(jīng)驗是blur 的值不要超過 line-width 的 2 倍范圍否則調(diào)試時你會懷疑是不是透明度出了問題。最后再說一個個人體會。Mapbox 的線條樣式表看起來只是幾十個屬性但真正用好它考驗的是你對數(shù)據(jù)與渲染分離這一模型的理解。很多人在入門時急著去記 API 名字我卻建議先把 GeoJSON 結(jié)構(gòu)和屬性表達式搞明白數(shù)據(jù)里有什么字段、每條線代表什么含義、希望視覺上如何區(qū)分這些想清楚之后paint 屬性寫法水到渠成。如果遇到文檔里沒說透的細節(jié)比如某個屬性和另一個屬性打架、某個效果在不同縮放級別表現(xiàn)不一致別怕多試。拿一條簡單的測試線把可能的組合都調(diào)一遍比翻半天文檔更高效。你現(xiàn)在手上有項目的話挑一段真實路線數(shù)據(jù)把這篇文章里的配置依次鋪上去很快就能摸清 Mapbox 線條樣式的脾氣。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产亚州日韩欧美看片| 九九九九九九九精品视频| 国产无马视频| 婷婷香网站| 17c嫩草51久久91嫩草| 色婷亚洲五月在线观看| 欧美色道啊| 亚乱色| 97超碰热线| 亚洲高清视频在线免费观看| 亚洲国产97| 亚爽爽爽爽爽爽爽爽| 精品国产网站| 成人热久久精品| 91蜜臀在线久久久久| 强奸乱伦亚洲第一页| 青青免费在线视频一区| 日韩欧视频| 蜜乳性色无码专日粉嫩骚逼AV| 麻豆天美传媒毛片| 另类图片五月| 精品九九九九九九| 女优视频第10页| 蜜臀无码一区二区| 啪啪资源网| 91美女在线视频| 蜜乳视频网站| 超硑97精品| 色臀av| 日本午夜久久电影| 精品国产Av无码久久久伦古装| 91日本在线观看| 99久久综合| 亚洲日韩在线a不卡99精品 | 欧洲亚洲国产综合在线| 少妇极品熟妇人妻无码| 精品亚洲国产成人精品| 97精品视频在线| 亚洲天堂7777| 欧美性色欧美| 999狠狠综合| 日韩免费中文字幕视频| 日韩精品人妻中文字幕久久久| 免费国产电影一区二区| 东北操逼| 人人爽天天爽| 91丨九色丨国产丨人妻在线 | 岛国片国产成人亚洲播放| 欧美999999| 郑州宾馆老熟女露脸啪啪| 欧美综合777| 欧美性爱精品一区二区| 操熟女91| 91国精产品| 能直接看AV的网站| 欧美成人精品一区| 伊人久久大香线综合无码| 无码区蜜乳| 日日骚 av| 日韩免费看在线黄色片| 午夜精品久久久久久久| 激情四射婷婷四五月天| 久操免费在线| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 中日韩熟女| 女人香蕉久久毛毛片精品| 精品超碰中文在线| 草草网站影院白丝内射| 91岛国动作片| 人妻超碰青青草98| 国产精品一二三区福利| 国产日韩区| 亚洲色天堂九9| 操人妻丝袜高跟| 变态乱伦伪娘灌肠一区二区| 中文字幕青青草| 欧美熟爽综合| 日本精品高清一二区一本到| 精品视频一区二区| 深夜激情 | 丁香五月天婷婷姐| 午夜福利免费精品视频| 国产精品爆乳懂色蜜乳| 久草色在线观看| 暖暖精品二区三区观看| 操人无码| 天天干夜夜一操| 黑人娇小av在线播放| 欧美大战久久久伊人| 99久久婷婷| 久久av一级av少妇av高潮| 亚洲色婷婷综合久久久久中文| 不卡码视频| www色日本| 亚洲97成人在线观看| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 老外又粗又长一晚做五次| 欧美日韩不卡传媒| 美女干逼2| 少妇蜜汁| 91大胆欧美| 黄色小视频日本txt| 香一区二区三区| 黄色视频特级毛片| 乱伦图一区| 久久精品国内Av熟女高清| 久久免费9| 亚洲少妇自拍中文字幕懂色| 加勒比日本在线| 国产极品999| 亚洲福利中文字幕在线| 成人av影院在线观看| 欧美色图91| 亚洲国产青青| 一级黄碟在线看| 亚洲AV乱码专区国产噜噜亚洲 | 本道在线| 97超碰超欧美。| 久久久久久波多野吉衣高潮| 美女淫穴| 五月天伊人| 黄页大片在线观看| 99热免费| 国产伊人自拍| 野狼激情网| 超碰人人妻| www九九热| 九热视频| 亚洲男人的天堂亚洲| 九月婷婷久久| 黄片在线免费在线观看| 国产久久av| 欧美亚洲色图另类国产| 免费一级黄色录像影片| 日本免费人成视频播放120秒| 亚洲精品国语在线播放| 肏逼福利网站| 中国zzijzzijzzwww精品| 欧美成人性爱视频在线播放| 麻豆三极片| 91中出视频| 精品成人久久久人人亚洲| 亚洲AV不卡在线观看| 伦在线97| 久久9999 | 9九九国产| 加勒比少妇AV婷婷六月天超碰超碰| 日本熟妇精品九九| 蜜臀久久99精品久久久久久| 91欧美大片| 久久精品国产精品一区 | 91骚妇| 久久国模av| 青青欧美| 日韩本不卡视频在线观看| 国产成人精品网站| 欧美传媒| 精品亚洲国产成人精品| 色性综合| 国产肏屁眼视频| 蜜屁Av| 男人天堂无码| 天天做天天爱| 大香蕉一级黄色片久久| 国产在线综合网| 国产一区二区三区视频在线看| 日本操大逼| 亚洲精品成人| 久久婷婷在线观看视频| 精人妻无码一区二区三区伊人直播 | 天天日骚逼熟女| 欧美日韩一二三| 老熟女网站| 免费αV在线视频| 91三级理论片播放器| 国产97色在线| 日韩少妇丰满亚洲| 日本幼女18+| 亚洲**2021在线观看| 亚洲一区二区久久久久| 精品国产一区二区三区av在线资源| 一区二区首页| 蜜汁欧美| 日韩乱伦影音先锋| 日韩精品第3页| 丝袜视频网国产90| 免费家庭乱伦视频| 99热91| 久久一二区四| 美女十八禁| 亚洲欧美国产中文视频| 2024人人操人人摸| 亚洲黄日韩无码专区| 夜夜高潮夜夜爽国产伦精品| 亚洲 中文字幕 精品| 伊人黄色视频免费观看| 日日干夜夜操视频h| 97欧美色| 黄片免费久久久久久久| 18一区二区三区| 98福利在线视频| 超碰在线一区| 国产精品国产拍高清AV| 精久久久| 国产91会所女技师在线观看| 丁香五月天婷婷姐| 上床啊啊啊| 人妻81p| 婷婷综合在线观看| 偷拍盗拍亚洲色图图片| 欧美日本国产日韩激情视频| 爱射综合| 东京热毛片调教| 国产A v无码专区| 99热这里只有精| 亚欧操逼片在线观看 | 人妻一区二区三区四区视频 | 亚洲第一免费视频| 久久超碰亚洲人| 97国产中文| 午夜一区二区三区国产| 天天流夜夜操| 91视频综合网| 国产亚洲 中文欧美久久| 综合一区二区影视| 欧美综合娱乐久久| 久干网| 强奸乱伦AV一天堂网| 色婷婷丁香五月| 97天天插| 91人妻中文| 久久久久国产| 日韩在线一区二区| 欧美情色贴图| 狠日操| 日韩熟女精品无码专区一区二区| 久久综合97| 99日韩| 超碰综合97在线| 亚洲欧美中文一区二区三| 亚洲一区二区三区麻豆传媒| 影音先锋少妇| 东北老女人的激情视频| 性videos欧美熟妇hdx| 九九九午夜| 日韩av无码网站| 伊人天堂在线| 91无遮挡| 日本999精品| 国产高清26uuu| 欲女人妻性色av| av凤凰久久久| 大香蕉日韩欧美| 91黑人无码激情在线| 日本中文字幕熟妇| 亚洲AV永久无码一区仙野| 女人天堂网| 国内精品久久久久影院亚洲| 亚洲资源站| 电影69乱码96| 精品人妻免费观看| 午夜欧美神马久久久久| 精品人妻中文字幕4399| 伊人午夜福利视频| 久久久com| 激情一区二区| 久久久久久九九九九-美女久久久久久久-成人AV| 欧美日韩操逼动图| 91N综合在线| 操逼逼福利视频| 少妇精品久久久八区九区| 中文字幕aⅴ在线视频| 国产自啪精品视频网站黑丝| 日本免费亚洲欧美| 97爱爱| 久久111| 岛国大片在线观看网站入口| 超碰偷拍| 超AV色女| 逼逼逼逼操操操操操操操操操午夜剧场 | 人妻娇喘 激情视频| 中文字幕老熟妇黄色视频| 欧美黄色手机在线观看| 天天天堂影视日韩亚洲91| 中文字幕在线日亚洲9| 97碰久久| 高树玛利亚无码流出| 91丨九色丨国产丨人妻在线| 婷婷久草| 免费看毛片操穴| 国产一区二区三三视频| 久久婷婷苹果| 久久国产对白激情浪潮 | 操人91| 天天看夜夜看日日干| 男人网站婷婷| 久久人妻办公室视频| 欧美区亚洲区偷拍区| 91少妇通奸网站| 欧美视频在线第3页| 久久久久久99AV无码免费网站| 超碰97在线色男人??| 久久香蕉国产传媒一区剧情天美| 看一级特黄a大一片| 欧美97超碰| 中文字幕日韩人妻视频一区二区三区交换夫妻| 国产亚洲国产超碰| 色翁荡息又大又硬又粗又爽| 久久国产精品m码| 91欧美美女日韩国产婷婷| 色99在线| 日本欧美一区二区三区免费| 一区二区三区国产在线播放| 久热大香蕉网站| 嗯阿好爽好紧| 日韩有码免费视频| 黄色小视频日本txt| 91视频伊人| 97在线免费公开视频| AV老汉| 色五月婷婷麻豆在| 操屄不卡视频| 国产又操| 太久视频| 八人操人人摸人人看| 97色碰| 超碰97伊人| 97天天插| 制服中出中文人人精品| 西西美女视频网| 3571色综合一区二区二区| 国产综合网站在线播放| 亚洲一区操| 91天天综合| 一本大道久| 97爱碰| 久插综合| 国产亚卅97| 蜜臀AV一区二区三区激情综合| 中文字幕成人| 黄色片大香蕉| 激情五月天社区| 一牛影视成人片免费| 国产视频一区二区三区在线免费观看| 日产精品久久久一区二区| 伊人aaa| 蜜桃色院一区久久| 精品小视频在线| 三上制服丝AV| 久久久久久性爱视频| 亚洲天堂99| 情色大香蕉| 91少妇香蕉久久精品| 91网站18在线| 国产地址二三| 91处女在线视频| 劲爆欧美人妖三区91| 狠狠躁天天躁日日躁| 欧洲一区二区三区免费| 精品96久久| 97精品综合久久网| 国产噜噜噜噜噜久久久久久久久| 黄色片G G G| 99热国产| 日天天九九天堂666| 日本一二三免费久久| 国产激情在线| 高清有码一区二区| 日韩中文字幕国产| 国产女人高潮嗷嗷嗷叫小说| 91精品国产高清久久久久久,亚洲成人 | 日本一区二区不卡| 欧美日韩国产一区二区小黄片大全| 亚洲无992tv| 无码不卡八戒| 男人高清无码一区二区| 99热久| 欧美日本久久精品一区 | 超碰色综合| 亚洲九九视频| 97精品一区二区视频| 久久精品国产亚洲妲己影视| 嗯啊抽插大香蕉网页| 人人操人人大香蕉| 一区黄二区黄| 中国黄色特级精品一区二区三区片| 91碰碰| 精品一区二区三区蜜桃| www国产无码| 天天操天天干一区二区| 午夜免费福利视频一区| 蜜臀精品1区2区| 久久精品视频在线观看| 欧美日韩精品久久久久东北老熟妇| 欧美色图校园春色| 亚洲中字幕日本一区二区三区| 成人无码电影在线观看网| 国产成人bd在线观看| 日日狠狠久久偷偷色综合免费| juliaann精品熟女一区| 欧美91久久久久| 97综合激情| 无码人妻精品一区二区三区99不卡| 台湾成人无码AV| 翔田千里av一区二区三区| 久热69九色熟妇97| 久久久久久裸体| 美女久久久| 手机在线A片| 99色色网| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 岛国1区2区3区在线观看| 久久激情亚洲精品无码?V| 天天干少妇| 1204av韩国| 久久久性爱| 在线观看成人性爱免费小视频| 亚洲国产无码精品首页久久久| 色性荡荡荡荡视频| 久久精品综合| 在线色导航| 天天91~综合入口| A男人的天堂| 一区二区三| 亚洲一区二区性爱电影| 国色天香av| 无码九九| 亚洲色图欧美色图日韩色图| 97精品国产97久久久久久| 一本色道久久综合熟妇| 2018天天日天天日| 国产11页| 夜夜无码| 婷婷五月天激情网| 青娱乐大香蕉| 又大又大又大又粗爽高潮观看| 92人人操人人| 试看60秒| 欧美日韩不卡a片| 欧美少妇大量自拍视频在线观看| 久操电影网| 国产美女mm131爽爽爽爽| 人妻无码后入| 大色综合| 欧美熟妇视频| 天天肏视频| 十八禁啪啦拍视频无遮挡| 91丝袜激情在线| 天堂v无码免费视频| 色优久久| 玖玖久久久| 99久久综合网| 久久 久久国内精品亚洲| 天天色天天干天天爱| 91人妻视频在线| 日韩啪啪视频| 久久色人体| 最新制服中文第一页| 亚洲AV无码国产精品久久久久| 日产中文字幕2020| 国产精品一区二区手机看片| 日本天天人人狠狠在线日美女| 国产成人五月天丁香花| 无码免费精品高清| 欧美成人一区二区三区在线播放| 亚洲欧美一区二区不卡视频播放| 九九九只有精品| 亚洲丝袜二区在线| 操人妻丝袜高跟| 蜜臀久久久99久久久久 | 成人网欧美风情| 另类图片综合| 欧洲中文字幕| 精品国模无码| 东京成人一区| 久久riav中文精品| 久久久成人免费av电影| 99性视频| 国产精品久久久久久久久久久久久久吹 | 天堂日本亚洲欧美| 中出欧美| 欧美 青青草| 8x福利精品第一福利视频导航| 大吊色| 精品高清一区二区三区三州| 97天天在线| 国产乱人伦AVA麻豆软件.| 亚洲国产精品久久久久婷婷老年 | 操逼操网| 亚洲图片91| 欧美另类色| 白丝AV| 成人A片男人的天堂| 强奸国产在线| 日韩三级av片| 男人的天堂激情| 天天躁日日躁成人字幕aⅴ| 韩日巨乳美女免费视频在线观看| 久久五月视频| 日日骚中文字幕| 天天做天天爱天天爽AV| 日韩av一级黄片| 欧美宗合网| 黄色二级片网站| 国产曰批免费观看久久久| 少妇久久久免费| 久久午夜伦| 欧美性爱第一页久久| 亚洲天天影视综合网| 日韩人成网站在线播放| 欧美懂色综合网| 成人在线永久| 五十路三区在线| 欧美久久毛片基地| 立川理惠无码一区二区| 天天上日日上日韩精品| 热热色综合网| 后入内射蜜桃臀| 国产精品自拍欧美在线| 91美女在线观看| 日日妻色网| 天美传媒国产原创中文字幕亚洲欧美另类 | 久久精品无码不卡| 日韩AV中文字幕电影| 91精品人妻电影| 综合另类| 欧美中日韩XXXX| 国产男女无套97| www.丁香五月| 久久精品中文字幕无码l| 狠日欧美| 久久9免费视频| 97亚洲国产影视| 亚洲精品无码少妇久久| 精品人妻免费观看| 狠狠爱夜夜| 四虎在线播放| 精品久久久久黄少妇| 97色干| 国产精品探花视频| 无码久久国产| 亚洲精品九九九| 青草伊人久久| 99黄页网站| 欧美大码在线视频| 色五月婷婷网| 亚洲欧美日韩精品久久久一区二区| 无遮挡男女激烈动态图| 天天干夜夜鈤| 欧美日韩人妻婷婷一区| 日韩影片中文字幕一区二区三区| 99视频内射三四| 色呦呦呦在线观看视频| 日韩偷拍一区二区三区 | 欧美高清色| 亚洲图片视频小说| 97天天在线| 久久熟女久| 800zy一区二区| 亚洲欧美日韩精品久| 91美女色视频亚洲| 熟妇在线视频一区二区| www狠狠| 日本五十路熟女一区二区| 尹人免费观看视频在线| 中文字幕精品探花视频| 日本一区不卡| 成人怡红院| 日骚逼视频| 日本韩国五十路六十路七十路老熟女作爱视频网站 | 中文?日韩?免费?精品| 在线洲亚线| 208天天久久九九九| 啊啊啊啊啊啊啊啊要喷了| 日本天天干天天搞一区| 91扒丝袜综合在线| 妇女视频网站| 亚洲青青草| 另类图片五月天| 伊香蕉综合久久久久久久噜噜噜| 日韩熟女精一区二区三区不卡| 亚洲91在线| A级在线视频| 亚洲精品毛片在线观看| 久久riav中文精品| 天天插夜夜操| 国产精品欧美日韩久久| 午夜影美女日鸡鸡天天视频国产| 成人午夜小视频手机在线看| 免费中文在线| 亚洲精品视频在线播放| 欧美夜夜狠| 超碰 97国产熟女| 内射中出日韩在线观看视频| 中美日韩毛片| 91精品国久久久久久无码| 99精品久久久久久| 激情内射| 欧美 亚洲 在线| 中文字幕av亚洲精品| 色黄污美女啪啪啪免费网站| 老熟女乱子伦中文字幕一区二区| 黄色免费网页无码| 午夜婷婷| 国产60区。| 欧美日韩亚洲电影| 国产欧洲精品亚洲午夜拍精品| 亚洲久久天堂| 日韩无码极品| 成年女人黄网站| 久久婷婷热| 亚洲国产奇米影视久久| 国产91av在线播放| 国产免费一区在线观看| 香蕉一区二区三区在线视频| 亚洲欧美一区二区三区一猛片| 九九黄色网| 日韩av色图综合| 偷偷人人精品女女久久| 74成人在线| 激情小说五月天| 欧美亚州综合图片| 超碰97丝袜| 国产亚洲精品av一区| 久久黄色网址| 99最新日韩偷拍视频| 久9re热视频这里只有精品| 国产亚洲精品第一最新| 久久国产视频专区一二三| 夫妻AV网站| 特级特黄一级毛片免费| 婷婷五月影院| 碰人碰碰人人开房人肉| 久久性爱视频99| 九九在线精品| 欧美九一精品久久久熟妇| 成人性爱免费播放| 九九热精品视频在线观看| 国产一区二区三区,在线观看观看| 色姑娘综合网| 99热最新| AV色五月| 亚洲成人性| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 午夜激情成人在线观看| 久久婷婷一区二| 一本色道久久综合狠狠操| 午夜.DJ高清在线观看免费7| 天天影视网综合少妇| 九九这里只有精品| 自拍偷拍 高清无码| 天天弄欧美| 97综合网| 国产av尤物| 欧美成97爱| 丁香五月天激情网站| 97丝袜亚洲在线播放| 大屁股人妻女教师撅着屁股| 亚洲性综合9| 久久久不卡| 精品成人av一区二区三区在线| 国产成人bd在线观看| 欧美夜夜骑视频| 日韩黄片影院| 老熟女区| 日熟女| 天美一二三在线观看Av| 亚洲精品国语在线播放| 九久9热| 91超碰在线| 91蜜臀在线久久久久| 熟女人妻精品一区二区视频 | 国产51色综合久久免费| 极品粉嫩少妇视频| 国产乱色国产精品免费视| 老师充足的奶水小说| 91久久久亚洲| 一区二区三区四区五区高清无码永久视频| 97国产超碰| 久久久久久性爱片| 欧美成人免费在线观看| 99re这里只有精品3| 黄片免费日韩| 97超久碰| 久久av成人无码免费| 亚洲自拍欧美色综合| 思思热影视| 91 亚欧| 99∨VTV| 91精品国产91综合久久蜜臀| 日本天天人人狠狠在线日美女 | 91夜色| 97资源欧美| 国产高清无码一区三区二区| 啊啊啊好疼| 女人爽到高潮潮喷18禁网站| 国产sv美女内射| 欧美性天天影视| 亚洲97成人在线观看| 天天干天天中出av| 国产欧美日韩精品中文| 日韩精品人妻中文字幕不卡乱码| 丁香五月影院| 欧美性xxxxx狂欢| 久久久久久久久久久999| 亚洲精品第一| 亚洲人妻爽爽爽| 欧美一级欧美三级在线观看 | 九色精品视频导航1| 人妻天天爽夜夜爽2| 99爱精品| 久久男人精品| 亚洲AV永久无码精品成人调教| 日日狠狠久久偷偷色综合免费| 精品一区二区三区国产| 国产第二页| 亚洲色色色| 超碰国产精品无码| 91亚洲黄色网| 91色五月俺来也| 久久99午夜精品一区人妻| 啊v在线观看视频| 欧美 牲| 激情深爱五月天| 一级二级三级黑人无码| av影院十区| 六月丁操逼| 婷婷六月色开| 为用户提供免费看黄网址在线观看| 亚洲九九视频在线观看| 欧美成人9797| 亚洲国产麻豆一区二区三区| 久久久97| 青青草原成人| 97超碰热线| 99欧美| 天天搞在线综合网| 国产精品美女| 日本亚欧爱爱| 国产精品欧美激在线| 天天干天天插| 亚洲暴力强奸AV| 97超碰久久| 久久99久久99精品天美传媒棢·纸:. | 乱子伦一区二区三区国产精品| 久久一二三四五六七八九区区区| 麻花豆传媒剧国产MV出差| 蜜臀久久99精品久久久久久酒店 | 91中文字幕在线观看| 国精综合一二三区影视| 亚洲中文字幕97久久精品少妇| 日韩图区 偷拍| 女人天堂av在线播放| 亚洲区小说| 北条麻妃性愛视频| 欧美久久草熟女| 色丁香久久| 亚洲一级特黄大片在线播放91| 色网色网色网色网色网色| 欧美日韩亚洲国产中文永久天天看| 欧美成不卡网| A V少妇特黄三级| www.色操逼| 18禁网站在线播放| 老外又粗又长一晚做五次| 亚洲图片欧美| 亚洲狠| 激情婷婷黑人91| 嗯~啊~快点 死我视频免费看网站| 97色爱| 免费的av网| 无码9区| 色综合色| 99爱爱| 无码国产精品午夜不卡(| 太久视频| 中文字幕精品日韩中文字幕| 手机看片日韩人妻| 激情小说图片亚洲首页| 午夜性生活av免费在线看| 亚洲精品少妇| 国产综合久久久麻桃个 | 亚洲AV噜噜狠狠网址蜜桃动漫| 欧美不卡在线一区二区| 精品无码久久久久久久杏吧| 日韩人妻丝袜中文字幕| 国产精品网址| 久久无码精品| 亚州一区二区| 亚洲图片第一页| 97视频免费播放| 久艹日日日| 丁香九月婷婷| 2017av无码免费无线播| 秋霞Av理论一级在线| 翔田千里AV无码秘 三区| 五十路熟女人妻一区二区三区四区五| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 成人av动漫在线观看| 久久精品国产72国产精品福利 | 亚洲午夜未满十八勿入网站日本又色又爽又黄| 极品另类| 欧美日韩国产成人高清| 日本成人在线不卡一区二区三区| 国产真实子伦对白| 精品日韩人妻精品一二三区| 眼镜人妻101.com| 中文字幕乱在线伦视频中文字幕乱码在线| 岛国黄| 国产精品无码论坛| 亚洲啪啪性视频| 成功精品影院| 久久色激情一区二区三区| 校园春色欧美色图| 超碰在线97国产| 中文一区二区| 情色大香蕉| 97视频免费在线观看| 亚洲欧洲中文日韩女优乱码| 再深点灬舒服灬太大了添视频| 国产欧美一级在线观看| 岛国片在线观看视频亚洲| 五月婷婷色| 嫩草 人人网精品| 久久久久久久久久久久九| 超碰综合97在线| 欧美天天搞| 色哟哟综合| 色综合久久88色综合久久天天| 日本三级韩三级99久久| 天天综合AV| 天天综合网1| 国产精品69久久久久孕妇欧美| 91亚洲欧美激情| 妇女性内射冈站HDWWWCOM| 亚欧视频在线| 开心激情站| 另类av天堂| 91天天综合在线观看| 97综合| 93人人操人人| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 五十路六十路七十路熟婆| 国产熟女乱论| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 国产午夜无码片在线观看影视| 色婷婷久久| 九九九久久久久| 亚洲高清欧美总合| 午夜福利无毒不卡| 五月婷婷激情| 99精品久久久久久| 日本精品五区| 久久精视频美日韩在线视频| 中文字幕一区二区三区人妻少妇在线 | 中文字幕人乱码中文字的预防方法 | 久久激情婷婷| 免费看A片毛毛片在线播| 91xingse| 亚洲素人综合| 亚洲无码太久| 亚洲少妇色| 色香91| 操操逼视频| 色婷婷六月| 九九九精品一区二区无码| 免费国产视频| 小情侣高清国产在线视频| 人人污日韩一区二区| 东京热av影院| 欧美强奸乱| 天堂精品小草| 好属操| 色综合尤物| 亚州高清色综合| 亚洲影院成人| 九九热在线精品视频| 热的中文 热的有码 热的国产| 电家庭影院午夜69久久夜色精品国产69乱 | 色哟哟-国产专区| 日日夜夜骑| 蜜乳AV一区二区三区四| 久草资源欧美在线视频| 亚洲97超碰| 久久亚洲婷婷| 91n.欧美| 国产精品一级片在线看| 亚洲综合图文| 国产乱伦视频污| 一区二区 韩日AV| 亚州色图欧美色图| 欧美黄片欧美黄片xxx| 欧美色日本| 日韩有码 一区二区三区| 日韩欧美视频青青| AV色女综合| 国内精品伊人久久久久影院会| 久久同城AV| 又粗又长又爽在线观看| 99国产精品久久久久久久成人热 | 岛国大片在线观看网站入口| 女人一区| 国产兽交视频在线播放| 天天操女人| 国产熟女精品一区二区| 97资源制服丝袜| 性一级黄色录像片网站导航| 99热久| JuliaAnn丝袜熟女系列| 99热这里只有精品9| 伊人国产AV| 亚洲九区| 久久有码视频| 国产激情视频在线观看| av天堂加勒比| www.色婷婷.com| 日本不卡一二区| 天天日少妇逼AV| 96精品久久| 日韩亚洲美州欧洲综三区一品在线| 日本媚薬中文字幕在线| 色丁香五月婷婷| 91人妻人人澡人人爽人人精品| 色婷婷在线视频| 国产精品乱码久久| 欧美不卡在线美女| 超碰97人人cao| 天天干天天日天天射黄色片| 久久国产免费激情视频| 久色99999| 成人免费福利在线观看| 国产成人啪一区二区| 日本中文字幕在线电影| 人人澡人人干| 久草久热| 人人干黄色| 91处女在线视频| 爱我干综合| 97日韩| 91视频成人福利网站在线一区 | 欧美性爱三区二区| 91美女视频直播| 综合五月天| 午夜国产综合视频在线观看 | 久久大香蕉97| 嗯啊免费视频| 看免费的黄片| 精品一区99999| 五月天色五月| 成人av性爱电影在线观看| 欧美影音在线| 香蕉婷婷| 69国产对白刺激| 中文字幕人乱码中文字的预防方法 | 亚洲av乱伦色图网站| 丝袜美腿av女优在线| 99操| 深田咏美亚洲精品福利社| 色图综合| 啊啊啊好大好湿| 91九色精品熟女内射| 国产91精品在线免费| 国产地址二三| 五月丁香综合网| 日韩免费三级黄片电影| 色97综合中文字幕| 中文字幕二区日韩天堂| 91午夜无码| 夜夜性| 欧美97日韩精品| 99色视频| 久久久久人妻二区精品叶可怜| 99超碰网| 麻豆AV96熟妇人妻| 99久久9| 亚欧性爱无码| 热热色91| 日产成人久久| 日本青青草在线| 久久香蕉国产线看观看猫咪av| 狠狠操狠狠操操| 男人天堂久久精品不卡| 97干com| 日韩免费性爱视频在线观看| 亚洲无码精品AV久久久| 超碰在线成人电影| 久久久国产精品人妻丝袜| 999岛国大片| 国产极品精品美女视频| 一本色道久久综合精品婷婷| 综合欧美日韩在线| 国产农村妇女一区二区| 大伊香蕉在线视频免费| 国产亚洲色停停久久99精品91| 九九这里只有精品| 啊啊啊啊啊好大好舒服想要| 天天爽天天| 亚州AV无码国产精品| 欧美 精品国产制服第一页| 午夜亚洲| 日本免费一区二区不卡| 日本中文字幕高跟| 密桃99999| 图片区小说区| 超碰成人公开| 性色AV蜜色av色欲av| 欧美色另类| 久久r精品| 久久大陆| 99re8超碰| 久久五月份| 一块操欧美| 天天色播亚洲综合网站| 欧美黄色大片在线观看| 日韩性爱啪啪视频| 久久二| 性欧美999| com 首页 18岁 禁区 女优 免费 精选 同城 | 熟女色图在线| 97国产色综合| 中文字幕 人妻不满 在线视频| 亚洲色图欧美视频| 黄色电影观看久久9| av在线播放国产一区| 凹凸视频在线一区二区| 欧美黑人性猛交91| 久久五月天婷婷| 亚洲av乱伦色图网站| 免费在线观看国内色片网站网址 | 欧美日本久久精品一区| 亚洲最大91网| 少妇超碰在线| 亚洲中文字幕97久久精品少妇| 亚洲欧美成人在线| 综合色色婷婷| 亚洲天堂久久| 国产67194| av九九| 伊人五月天| 日本在线一二| 国产免费一区二区三区最新不卡| 五月婷视频| 婷婷99| 五月婷视频| 日韩欧美视频青青| 亚洲少妇色| 亚洲色图久久成人| 69人妻人人揉人人躁人人精品| 国产女人高潮视频| 青青草日本无码| 91亚洲精品青草| 久艹伊人精品综合在线| 色女综合| 91爱看| 日韩中文9| 91操熟妇| 偷拍视频青青草在线视频| 后入国产| 无遮挡男女激烈动态图| 日韩精品在线放| 交换娇妻呻吟声不停中文字幕| 成人性爱av.com| 中文字幕免费看大片| 这里都是精品在线观看| 丁香五月影院| 亚洲天堂另类美腿| 草久久久| 国产乱青青草久久| 四虎影视国产精品| 97超碰9| 大屁股人妻女教师撅着屁股| 人妻一二三区| 在线视频日韩欧美国产| www.五月天| 成 人 影视 一区 二区 三区 四区| 国产一区麻豆免费观看| 国产情色第一第二页在线观看| 超碰97综合网| 99999精品| 高潮的A片激情扒开一区| 粉嫩不卡一区二区性爱| 91操操| 综合激情97 | 综合久久久久久久综合网| 日韩性爱视频免费在线| av天堂影视中文在字幕在线中文| 日韩欧亚太美不卡| 日本黄页视频在线观看| 国产激情在线| 大屁股人妻女教师撅着屁股| 97在线播放| 9999久久久| 亚洲精品官网在线观看| 91九色网| 日少妇亚洲版| 亚洲成人在线资源| 在线日韩日本亚洲国产| 青青操综合网| 口爆综合网| 91天射| 亚洲综合20p| 天天躁日日躁xxxxx| 天天干一干| 国产日韩人人| 九热久| 一牛影视成人片免费| 精品国产一区二区三区av在线资源| 欧美曰韩国产精品| 色网亚洲人| 国产在线强奸视频| 97色色视频| 日韩精品大香蕉伊人在线| 9久久精品| 中文字幕精品日韩中文字幕| 91亚洲黑人| 亚洲麻豆18发?| 91精品人妻偷情| 日韩九区| 免费成人在线熟妇网| 久久九色| 乱伦系列一区二区| wwe 天天干.com| 天堂性色| 尤物一级在线免费观看| 日本丝袜美腿人妻九九| 国产尤物在线三区| 在线免费观看日韩一区| www.97在线| 无马一区二区| 福利在线观看一区二区| 丝袜狠狠草尤物 91| 精品一区二区亚洲国产| 人妻一区久久二区三区色播| 天堂网亚洲区手机版| 日韩一级特黄av毛片| 91色图片| 亚洲国产97| 国产伦精品一区二区三区在线观 | 无人区高清电影免费观看一区二区三 www.qmcai2.com | 国产少妇内射| 97精品久久| 五月综合色| 天天综合,91入口| 日韩A优精品在线观看| 午夜精品久久久99| 国产视频人人网| 97人人草| 中文字幕一区二区三区四五区| 精品亚洲国产成人av网站| 人人操天天爽| 另类图片综合| 国产欧美第五页| 变态综合色| 色色色999| 91蜜桃传媒精品久久久一区二区| a天堂视频| 大香蕉之青青草原| av天堂天堂av日韩| 91天美传媒在线观看| 五月天久久综合网|