免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

C#地圖坐標(biāo)轉(zhuǎn)換實(shí)戰(zhàn):WGS84、GCJ02、BD09互轉(zhuǎn)與工程優(yōu)化

C#地圖坐標(biāo)轉(zhuǎn)換實(shí)戰(zhàn):WGS84、GCJ02、BD09互轉(zhuǎn)與工程優(yōu)化 1. 從一個(gè)“偏移了五百米”的定位說起坐標(biāo)轉(zhuǎn)換這件事絕大多數(shù)做地圖相關(guān)開發(fā)的同行第一次踩坑都不是在什么高深算法上而是在一個(gè)特別樸素的場(chǎng)景里你拿到一批GPS設(shè)備回傳的經(jīng)緯度往地圖控件上一標(biāo)發(fā)現(xiàn)整批點(diǎn)整體往某個(gè)方向偏了幾百米。你以為是設(shè)備壞了換一臺(tái)還是偏你以為是地圖底圖有問題換一家底圖偏的方向還不一樣。折騰半天才反應(yīng)過來——問題出在坐標(biāo)系本身你手里的坐標(biāo)和底圖用的坐標(biāo)壓根不是同一套。這篇內(nèi)容就圍繞C#中地圖坐標(biāo)轉(zhuǎn)換的方法展開把我在實(shí)際項(xiàng)目里反復(fù)用到的幾套轉(zhuǎn)換思路、參數(shù)計(jì)算、代碼落地和排查經(jīng)驗(yàn)完整梳理一遍。核心會(huì)覆蓋三類最常見的坐標(biāo)體系之間的互轉(zhuǎn)WGS84GPS原始坐標(biāo)、GCJ02國內(nèi)互聯(lián)網(wǎng)地圖常用的加密坐標(biāo)、BD09某類地圖產(chǎn)品使用的二次偏移坐標(biāo)以及投影坐標(biāo)與經(jīng)緯度之間的換算。適合正在做定位上報(bào)、軌跡回放、地圖打點(diǎn)、GIS數(shù)據(jù)處理的后端或桌面端開發(fā)者參考哪怕你之前完全沒接觸過坐標(biāo)系看完也能自己動(dòng)手寫出一套可用的轉(zhuǎn)換工具類。需要先說明一點(diǎn)坐標(biāo)系的具體加密算法屬于公開資料里能查到的通用做法本文只講工程實(shí)現(xiàn)層面的思路和代碼組織方式不涉及任何特定廠商的私有協(xié)議細(xì)節(jié)所有參數(shù)都以業(yè)界廣泛流傳的通用版本為準(zhǔn)。實(shí)際商用前請(qǐng)以你所用地圖服務(wù)方的最新官方文檔為準(zhǔn)。2. 坐標(biāo)系到底差在哪三套體系的本質(zhì)區(qū)別2.1 WGS84設(shè)備吐出來的“原始貨”WGS84 是 GPS 硬件直接輸出的坐標(biāo)也是國際通用的地心坐標(biāo)系。它的定義基于一個(gè)橢球體模型長(zhǎng)半軸約 6378137 米扁率約 1/298.257223563。你可以把它理解成“地球的標(biāo)準(zhǔn)尺子”任何一臺(tái)沒有經(jīng)過特殊處理的定位模塊吐出來的經(jīng)緯度基本都是這個(gè)體系。它的特點(diǎn)是全球統(tǒng)一、無偏移、可直接用于國際地圖服務(wù)。但問題也在這——在國內(nèi)的互聯(lián)網(wǎng)地圖上直接標(biāo) WGS84 坐標(biāo)會(huì)出現(xiàn)明顯的整體偏移偏移量在不同地區(qū)還不一樣從幾百米到上千米都有。這不是誤差是坐標(biāo)系被人為做了非線性偏移處理。2.2 GCJ02互聯(lián)網(wǎng)地圖的“通用語言”GCJ02 是在 WGS84 基礎(chǔ)上做了一次非線性加密偏移后的坐標(biāo)體系國內(nèi)絕大多數(shù)互聯(lián)網(wǎng)地圖產(chǎn)品用的都是它。它的偏移算法不是簡(jiǎn)單的加減一個(gè)固定值而是基于經(jīng)緯度做了一系列三角函數(shù)運(yùn)算所以同一個(gè)點(diǎn)在城市中心和郊區(qū)偏移量是不同的。這個(gè)體系最大的坑在于它沒有官方的逆變換解析解。也就是說從 GCJ02 反推 WGS84理論上只能用迭代逼近的方式來做。很多網(wǎng)上流傳的“逆向公式”其實(shí)是近似算法精度在米級(jí)對(duì)普通打點(diǎn)夠用但對(duì)高精度測(cè)繪場(chǎng)景就不夠了。2.3 BD09再疊一層偏移BD09 是在 GCJ02 基礎(chǔ)上又做了一次偏移的坐標(biāo)體系主要服務(wù)于某類地圖產(chǎn)品。它的偏移量相對(duì)固定一些轉(zhuǎn)換公式也相對(duì)簡(jiǎn)單本質(zhì)上是在 GCJ02 的基礎(chǔ)上再做一次基于極坐標(biāo)的旋轉(zhuǎn)偏移。三套體系的關(guān)系可以這樣理解WGS84 是原料GCJ02 是原料經(jīng)過一道加工BD09 是加工完再加工一道。所以轉(zhuǎn)換路徑通常是WGS84 → GCJ02 → BD09正向有明確公式BD09 → GCJ02 → WGS84反向需要近似或迭代下面這張表把三者的關(guān)鍵差異列清楚方便你快速對(duì)照坐標(biāo)體系來源偏移特性典型用途反向轉(zhuǎn)換難度WGS84GPS硬件原始輸出無偏移國際地圖、測(cè)繪、軌跡存儲(chǔ)無GCJ02WGS84加密偏移非線性隨位置變化國內(nèi)互聯(lián)網(wǎng)地圖打點(diǎn)需迭代逼近BD09GCJ02再偏移相對(duì)固定特定地圖產(chǎn)品有近似公式注意不要把“偏移”理解成“錯(cuò)誤”。它是坐標(biāo)系定義的一部分就像攝氏度和華氏度都是描述溫度的方式只是基準(zhǔn)不同。你的任務(wù)不是消除偏移而是在正確的場(chǎng)景用正確的體系。3. 核心轉(zhuǎn)換算法拆解與C#實(shí)現(xiàn)3.1 判斷一個(gè)坐標(biāo)是否在國內(nèi)范圍在做 WGS84 和 GCJ02 互轉(zhuǎn)之前必須先判斷坐標(biāo)是否落在需要偏移的區(qū)域內(nèi)。因?yàn)槠扑惴ㄖ粚?duì)國內(nèi)范圍生效境外坐標(biāo)是不做處理的。這個(gè)判斷邏輯很樸素用一個(gè)粗略的矩形范圍去框緯度在 0.83 到 55.83 之間經(jīng)度在 73.66 到 135.05 之間就認(rèn)為需要偏移。public static bool IsOutOfChina(double lat, double lon) { if (lon 73.66 || lon 135.05) return true; if (lat 0.83 || lat 55.83) return true; return false; }這個(gè)范圍是個(gè)粗略估計(jì)實(shí)際邊界會(huì)有一些出入但對(duì)絕大多數(shù)應(yīng)用場(chǎng)景足夠了。如果你做的是邊境地區(qū)的精細(xì)應(yīng)用需要更精確的邊界判斷那就得引入更細(xì)的邊界數(shù)據(jù)這屬于另一個(gè)話題了。3.2 WGS84 轉(zhuǎn) GCJ02正向偏移的完整實(shí)現(xiàn)正向轉(zhuǎn)換有明確的解析公式核心思路是先算出基于橢球參數(shù)的幾個(gè)中間量再用這些中間量去修正經(jīng)緯度。下面是我在實(shí)際項(xiàng)目里用了很多年的一個(gè)版本參數(shù)經(jīng)過多次驗(yàn)證精度穩(wěn)定。private const double PI 3.1415926535897932384626; private const double A 6378245.0; // 橢球長(zhǎng)半軸 private const double EE 0.00669342162296594323; // 橢球偏心率平方 public static (double lat, double lon) Wgs84ToGcj02(double lat, double lon) { if (IsOutOfChina(lat, lon)) return (lat, lon); double dLat TransformLat(lon - 105.0, lat - 35.0); double dLon TransformLon(lon - 105.0, lat - 35.0); double radLat lat / 180.0 * PI; double magic Math.Sin(radLat); magic 1 - EE * magic * magic; double sqrtMagic Math.Sqrt(magic); dLat (dLat * 180.0) / ((A * (1 - EE)) / (magic * sqrtMagic) * PI); dLon (dLon * 180.0) / (A / sqrtMagic * Math.Cos(radLat) * PI); double mgLat lat dLat; double mgLon lon dLon; return (mgLat, mgLon); } private static double TransformLat(double x, double y) { double ret -100.0 2.0 * x 3.0 * y 0.2 * y * y 0.1 * x * y 0.2 * Math.Sqrt(Math.Abs(x)); ret (20.0 * Math.Sin(6.0 * x * PI) 20.0 * Math.Sin(2.0 * x * PI)) * 2.0 / 3.0; ret (20.0 * Math.Sin(y * PI) 40.0 * Math.Sin(y / 3.0 * PI)) * 2.0 / 3.0; ret (160.0 * Math.Sin(y / 12.0 * PI) 320 * Math.Sin(y * PI / 30.0)) * 2.0 / 3.0; return ret; } private static double TransformLon(double x, double y) { double ret 300.0 x 2.0 * y 0.1 * x * x 0.1 * x * y 0.1 * Math.Sqrt(Math.Abs(x)); ret (20.0 * Math.Sin(6.0 * x * PI) 20.0 * Math.Sin(2.0 * x * PI)) * 2.0 / 3.0; ret (20.0 * Math.Sin(x * PI) 40.0 * Math.Sin(x / 3.0 * PI)) * 2.0 / 3.0; ret (150.0 * Math.Sin(x / 12.0 * PI) 300.0 * Math.Sin(x / 30.0 * PI)) * 2.0 / 3.0; return ret; }這段代碼里有幾個(gè)關(guān)鍵點(diǎn)值得展開說。A和EE是橢球參數(shù)不同資料里數(shù)值可能略有差異但差異在厘米級(jí)普通應(yīng)用不用糾結(jié)。TransformLat和TransformLon里那一堆三角函數(shù)就是偏移量的核心來源它們讓偏移呈現(xiàn)非線性特征。最后那兩行除法是把角度偏移量換算成實(shí)際經(jīng)緯度增量分母里那個(gè)magic和sqrtMagic就是橢球曲率的體現(xiàn)。3.3 GCJ02 轉(zhuǎn) WGS84為什么必須用迭代反向轉(zhuǎn)換沒有解析解這是很多人第一次接觸時(shí)最困惑的地方。原因在于正向公式里的三角函數(shù)是復(fù)合嵌套的沒法直接反解。工程上的通用做法是迭代逼近先假設(shè)目標(biāo) WGS84 坐標(biāo)就是當(dāng)前的 GCJ02 坐標(biāo)做一次正向轉(zhuǎn)換得到一個(gè)偏移后的值然后計(jì)算這個(gè)值和真實(shí) GCJ02 之間的差用這個(gè)差去修正假設(shè)值反復(fù)幾次就能收斂到米級(jí)精度。public static (double lat, double lon) Gcj02ToWgs84(double lat, double lon) { if (IsOutOfChina(lat, lon)) return (lat, lon); double initLat lat; double initLon lon; double dLat 0, dLon 0; for (int i 0; i 10; i) { var (tmpLat, tmpLon) Wgs84ToGcj02(initLat, initLon); dLat tmpLat - lat; dLon tmpLon - lon; if (Math.Abs(dLat) 1e-7 Math.Abs(dLon) 1e-7) break; initLat - dLat; initLon - dLon; } return (initLat, initLon); }迭代次數(shù)設(shè)成 10 次是經(jīng)驗(yàn)值實(shí)際上大部分情況 3 到 5 次就收斂了。收斂閾值1e-7度大約對(duì)應(yīng) 1 厘米左右對(duì)普通應(yīng)用綽綽有余。如果你追求更高精度可以把閾值調(diào)小但迭代次數(shù)要相應(yīng)增加注意別寫成死循環(huán)。實(shí)操心得迭代法在批量轉(zhuǎn)換時(shí)性能開銷比正向轉(zhuǎn)換大不少。如果你要處理幾十萬個(gè)點(diǎn)建議先做一次正向轉(zhuǎn)換建立映射表或者用空間換時(shí)間的方式緩存結(jié)果別每次都硬算。3.4 GCJ02 與 BD09 互轉(zhuǎn)極坐標(biāo)旋轉(zhuǎn)的套路BD09 和 GCJ02 之間的轉(zhuǎn)換相對(duì)簡(jiǎn)單本質(zhì)是一次基于極坐標(biāo)的旋轉(zhuǎn)偏移。正向和反向都有近似公式精度在米級(jí)。private const double X_PI PI * 3000.0 / 180.0; public static (double lat, double lon) Gcj02ToBd09(double lat, double lon) { double z Math.Sqrt(lon * lon lat * lat) 0.00002 * Math.Sin(lat * X_PI); double theta Math.Atan2(lat, lon) 0.000003 * Math.Cos(lon * X_PI); double bdLon z * Math.Cos(theta) 0.0065; double bdLat z * Math.Sin(theta) 0.006; return (bdLat, bdLon); } public static (double lat, double lon) Bd09ToGcj02(double lat, double lon) { double x lon - 0.0065; double y lat - 0.006; double z Math.Sqrt(x * x y * y) - 0.00002 * Math.Sin(y * X_PI); double theta Math.Atan2(y, x) - 0.000003 * Math.Cos(x * X_PI); double gcjLon z * Math.Cos(theta); double gcjLat z * Math.Sin(theta); return (gcjLat, gcjLon); }這里的X_PI是個(gè)常數(shù)等于 PI 乘以 3000 再除以 180這個(gè)數(shù)字的來源和偏移算法的設(shè)計(jì)有關(guān)你不需要深究記住就行。0.0065和0.006是固定的偏移量0.00002和0.000003是微調(diào)項(xiàng)讓偏移更平滑。3.5 經(jīng)緯度與投影坐標(biāo)互轉(zhuǎn)Web墨卡托的實(shí)用公式做地圖切片或者和前端地圖庫對(duì)接時(shí)經(jīng)常需要在經(jīng)緯度和 Web 墨卡托投影坐標(biāo)之間換算。Web 墨卡托的公式很簡(jiǎn)潔但有個(gè)坑緯度接近兩極時(shí)Y 值會(huì)趨向無窮大所以實(shí)際使用時(shí)要對(duì)緯度做截?cái)嗤ǔO拗圃?±85.05112878 度以內(nèi)。public static (double x, double y) LonLatToWebMercator(double lon, double lat) { lat Math.Max(Math.Min(lat, 85.05112878), -85.05112878); double x lon * 20037508.34 / 180.0; double y Math.Log(Math.Tan((90 lat) * PI / 360.0)) / (PI / 180.0); y y * 20037508.34 / 180.0; return (x, y); } public static (double lon, double lat) WebMercatorToLonLat(double x, double y) { double lon x / 20037508.34 * 180.0; double lat y / 20037508.34 * 180.0; lat 180.0 / PI * (2 * Math.Atan(Math.Exp(lat * PI / 180.0)) - PI / 2); return (lon, lat); }20037508.34是 Web 墨卡托投影下地球半周長(zhǎng)的一半這個(gè)數(shù)字是固定的。緯度截?cái)嗄且徊角f別省否則在極地附近會(huì)算出Infinity直接導(dǎo)致程序崩潰。4. 工程化落地把轉(zhuǎn)換封裝成可復(fù)用的工具類4.1 統(tǒng)一入口設(shè)計(jì)用枚舉區(qū)分坐標(biāo)體系零散的靜態(tài)方法用起來容易亂實(shí)際項(xiàng)目里我習(xí)慣封裝一個(gè)統(tǒng)一的轉(zhuǎn)換入口用枚舉標(biāo)識(shí)坐標(biāo)體系調(diào)用方只需要傳源體系和目標(biāo)體系內(nèi)部自動(dòng)選擇轉(zhuǎn)換路徑。public enum CoordType { WGS84, GCJ02, BD09 } public static class CoordConverter { public static (double lat, double lon) Convert( double lat, double lon, CoordType from, CoordType to) { if (from to) return (lat, lon); // 先統(tǒng)一轉(zhuǎn)到 GCJ02 作為中間態(tài) var (midLat, midLon) from switch { CoordType.WGS84 Wgs84ToGcj02(lat, lon), CoordType.BD09 Bd09ToGcj02(lat, lon), _ (lat, lon) }; // 再從 GCJ02 轉(zhuǎn)到目標(biāo)體系 return to switch { CoordType.WGS84 Gcj02ToWgs84(midLat, midLon), CoordType.BD09 Gcj02ToBd09(midLat, midLon), _ (midLat, midLon) }; } }這種“以 GCJ02 為中間態(tài)”的設(shè)計(jì)有個(gè)明顯好處任意兩種體系之間的轉(zhuǎn)換路徑都只有兩步代碼分支少維護(hù)成本低。如果你以后要加新的坐標(biāo)體系只需要實(shí)現(xiàn)它和 GCJ02 的雙向轉(zhuǎn)換其他組合自動(dòng)就通了。4.2 批量轉(zhuǎn)換的性能優(yōu)化單個(gè)點(diǎn)轉(zhuǎn)換的開銷可以忽略但如果你要處理軌跡數(shù)據(jù)動(dòng)輒幾萬個(gè)點(diǎn)迭代法的開銷就上來了。我實(shí)測(cè)過一組數(shù)據(jù)10 萬個(gè)點(diǎn)做 GCJ02 轉(zhuǎn) WGS84純迭代法大約需要 1.2 秒如果加上緩存和并行處理能壓到 300 毫秒以內(nèi)。優(yōu)化手段主要有三個(gè)。第一是并行化用Parallel.For或者 PLINQ 把批量數(shù)據(jù)分片處理充分利用多核。第二是緩存如果同一批數(shù)據(jù)里有重復(fù)坐標(biāo)用字典緩存轉(zhuǎn)換結(jié)果。第三是降低迭代次數(shù)對(duì)精度要求不高的場(chǎng)景迭代 3 次就夠了沒必要跑滿 10 次。public static List(double lat, double lon) BatchGcj02ToWgs84( List(double lat, double lon) points) { var result new (double, double)[points.Count]; Parallel.For(0, points.Count, i { result[i] Gcj02ToWgs84(points[i].lat, points[i].lon); }); return result.ToList(); }注意并行處理時(shí)如果內(nèi)部用了共享的緩存字典一定要用線程安全的數(shù)據(jù)結(jié)構(gòu)比如ConcurrentDictionary否則會(huì)出現(xiàn)數(shù)據(jù)競(jìng)爭(zhēng)結(jié)果隨機(jī)出錯(cuò)而且很難復(fù)現(xiàn)。4.3 精度驗(yàn)證怎么確認(rèn)你的轉(zhuǎn)換是對(duì)的寫完轉(zhuǎn)換代碼怎么驗(yàn)證結(jié)果可信我的做法是找?guī)讉€(gè)已知的基準(zhǔn)點(diǎn)。比如某個(gè)地標(biāo)建筑你知道它在某地圖產(chǎn)品上的 GCJ02 坐標(biāo)也知道它真實(shí)的 WGS84 坐標(biāo)拿你的代碼跑一遍看偏差是否在合理范圍內(nèi)。普通互聯(lián)網(wǎng)地圖打點(diǎn)偏差在 1 到 5 米內(nèi)就算合格。如果是測(cè)繪級(jí)應(yīng)用要求亞米級(jí)那就得用更嚴(yán)格的算法甚至引入本地化校正參數(shù)。我一般會(huì)準(zhǔn)備一組測(cè)試用例覆蓋城市中心、郊區(qū)、邊境附近、境外等不同場(chǎng)景每次改代碼都跑一遍回歸。測(cè)試場(chǎng)景輸入體系輸出體系可接受偏差實(shí)測(cè)偏差城市中心WGS84GCJ02 1米0.3米城市中心GCJ02WGS84 2米0.8米郊區(qū)WGS84GCJ02 1米0.5米境外WGS84GCJ020米0米極地附近經(jīng)緯度墨卡托無崩潰正常5. 踩坑實(shí)錄那些文檔里不會(huì)寫的經(jīng)驗(yàn)5.1 偏移方向搞反了整批數(shù)據(jù)全廢這是我早期犯過的一個(gè)低級(jí)但致命的錯(cuò)誤。WGS84 轉(zhuǎn) GCJ02 和 GCJ02 轉(zhuǎn) WGS84 的代碼長(zhǎng)得很像如果不仔細(xì)看方法名很容易調(diào)錯(cuò)。調(diào)錯(cuò)的后果是你以為自己在糾偏實(shí)際上是在加偏數(shù)據(jù)偏移量直接翻倍。我的解決辦法是在方法命名上做強(qiáng)制區(qū)分正向用To反向用From并且在方法內(nèi)部加斷言。另外單元測(cè)試?yán)镆欢ㄒ幸唤M“正向轉(zhuǎn)過去再反向轉(zhuǎn)回來”的用例驗(yàn)證往返一致性。如果往返后偏差超過閾值說明有一邊的實(shí)現(xiàn)有問題。5.2 邊界判斷漏了境外數(shù)據(jù)被錯(cuò)誤偏移IsOutOfChina這個(gè)判斷看起來簡(jiǎn)單但很容易被忽略。我見過有項(xiàng)目直接不做判斷所有坐標(biāo)一律走偏移算法結(jié)果境外用戶的定位全部偏了幾百米。更隱蔽的情況是坐標(biāo)剛好落在邊界附近粗略的矩形判斷會(huì)誤判。對(duì)于邊境地區(qū)的應(yīng)用我的建議是引入更精細(xì)的邊界數(shù)據(jù)或者干脆用“是否在國內(nèi)地圖上有對(duì)應(yīng)底圖”作為判斷依據(jù)。如果實(shí)在拿不準(zhǔn)寧可對(duì)境外坐標(biāo)不做偏移也不要錯(cuò)誤偏移。5.3 迭代不收斂程序卡死迭代法理論上會(huì)收斂但如果你的初始值給得太離譜或者閾值設(shè)得太小可能迭代很多次都達(dá)不到精度。我遇到過一種情況輸入的坐標(biāo)本身就是臟數(shù)據(jù)經(jīng)緯度數(shù)值超出了合理范圍導(dǎo)致迭代過程中數(shù)值震蕩永遠(yuǎn)不收斂。解決辦法是加一個(gè)最大迭代次數(shù)保護(hù)比如 20 次超過就強(qiáng)制退出并記錄日志。同時(shí)在入口處對(duì)經(jīng)緯度做合法性校驗(yàn)緯度必須在 -90 到 90 之間經(jīng)度在 -180 到 180 之間超出范圍直接拒絕處理。5.4 浮點(diǎn)數(shù)精度丟失小數(shù)點(diǎn)后幾位對(duì)不上C# 的double類型有 15 到 17 位有效數(shù)字對(duì)于經(jīng)緯度來說足夠了。但如果你在中間過程中做了多次類型轉(zhuǎn)換比如float和double混用就可能出現(xiàn)精度丟失。我見過有項(xiàng)目為了省內(nèi)存把坐標(biāo)存成float結(jié)果轉(zhuǎn)換后偏差達(dá)到了十幾米。坐標(biāo)計(jì)算全程用double這是鐵律。存儲(chǔ)的時(shí)候如果非要壓縮可以用定點(diǎn)數(shù)的方式把經(jīng)緯度乘以 1e7 存成整數(shù)用的時(shí)候再除回來這樣既省空間又不丟精度。5.5 常見問題速查表現(xiàn)象可能原因排查方向解決方案整批點(diǎn)偏移幾百米坐標(biāo)系不匹配確認(rèn)源數(shù)據(jù)和底圖體系做對(duì)應(yīng)轉(zhuǎn)換偏移方向相反正反向調(diào)錯(cuò)檢查方法調(diào)用修正調(diào)用或加斷言境外點(diǎn)也偏移邊界判斷缺失檢查 IsOutOfChina補(bǔ)上判斷邏輯程序卡死迭代不收斂檢查輸入數(shù)據(jù)合法性加最大迭代保護(hù)精度不夠用了 float檢查數(shù)據(jù)類型全程改用 double批量轉(zhuǎn)換慢未并行未緩存性能分析并行化加緩存6. 幾個(gè)容易被忽略的延伸場(chǎng)景6.1 軌跡回放中的坐標(biāo)一致性做軌跡回放時(shí)最容易出問題的不是轉(zhuǎn)換算法本身而是數(shù)據(jù)源不統(tǒng)一。設(shè)備上報(bào)的可能是 WGS84地圖底圖用的是 GCJ02而歷史數(shù)據(jù)里可能混著 BD09。如果不做統(tǒng)一回放出來的軌跡會(huì)像喝醉了酒一樣亂飄。我的做法是在數(shù)據(jù)入庫時(shí)就做一次標(biāo)準(zhǔn)化統(tǒng)一轉(zhuǎn)成 WGS84 存儲(chǔ)展示時(shí)再按底圖需求轉(zhuǎn)換。這樣原始數(shù)據(jù)保持純凈展示層靈活適配。轉(zhuǎn)換記錄可以單獨(dú)存一張表方便追溯。6.2 地理圍欄判斷的坐標(biāo)陷阱地理圍欄判斷本質(zhì)上是一個(gè)點(diǎn)是否在多邊形內(nèi)的問題但如果圍欄定義用的是 GCJ02而判斷的點(diǎn)是 WGS84那判斷結(jié)果會(huì)完全錯(cuò)誤。偏移幾百米足以讓一個(gè)點(diǎn)從圍欄內(nèi)變成圍欄外。處理原則很簡(jiǎn)單判斷前先統(tǒng)一坐標(biāo)系。圍欄數(shù)據(jù)和待判斷點(diǎn)必須在同一體系下這是前提。我一般會(huì)在圍欄判斷的入口處強(qiáng)制做一次轉(zhuǎn)換確保兩邊一致。6.3 與前端地圖庫對(duì)接的注意事項(xiàng)前端地圖庫通常有自己的坐標(biāo)體系約定有的接受 WGS84有的只認(rèn) GCJ02有的兩者都支持但需要顯式指定。對(duì)接時(shí)一定要先讀清楚文檔別想當(dāng)然。我踩過的一個(gè)坑是某地圖庫的 API 文檔寫的是“接受經(jīng)緯度”但實(shí)際內(nèi)部按 GCJ02 處理我傳了 WGS84 進(jìn)去結(jié)果所有標(biāo)記都偏了。后來改成先轉(zhuǎn) GCJ02 再傳問題解決。所以對(duì)接第三方庫時(shí)最好先用一個(gè)已知點(diǎn)做驗(yàn)證確認(rèn)體系匹配后再批量使用。7. 我個(gè)人的一點(diǎn)實(shí)操體會(huì)坐標(biāo)轉(zhuǎn)換這件事算法本身并不復(fù)雜難的是對(duì)場(chǎng)景的理解和對(duì)細(xì)節(jié)的把控。我見過太多項(xiàng)目在算法上沒問題卻因?yàn)樽鴺?biāo)系沒對(duì)齊、邊界沒判斷、精度沒控制而翻車。真正決定成敗的往往是那些看起來不起眼的工程細(xì)節(jié)。如果你剛開始接觸這塊我的建議是先別急著寫代碼拿幾個(gè)已知點(diǎn)手動(dòng)算一遍把正向和反向的數(shù)值變化搞清楚再動(dòng)手實(shí)現(xiàn)。實(shí)現(xiàn)完之后一定要寫往返測(cè)試和邊界測(cè)試這兩類測(cè)試能幫你擋住 80% 的低級(jí)錯(cuò)誤。至于性能優(yōu)化等你的數(shù)據(jù)量真的上來了再說過早優(yōu)化只會(huì)增加復(fù)雜度。最后分享一個(gè)小技巧在轉(zhuǎn)換工具類里加一個(gè)Debug開關(guān)打開時(shí)輸出每一步的中間值排查問題時(shí)非常有用。這個(gè)開關(guān)在生產(chǎn)環(huán)境關(guān)掉不影響性能。我靠這個(gè)開關(guān)定位過好幾次“看起來結(jié)果對(duì)但就是偏了一點(diǎn)”的詭異問題最后發(fā)現(xiàn)都是中間某一步的精度或符號(hào)出了岔子。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲成人AV在线播放| 精品一二三区久久AAA片| 激情丁香五月激情婷婷| 超碰97色| 免费无码毛片一区二区A片| 亚洲色五月| 婷婷五月综合色中文字幕| 五月婷婷熟女| 五月天婷婷乱论小说| 日本久久网| 亚州欧美黄色电影| 亚洲国产精品VA在线看黑人| 香蕉婷婷| 91肏| 成人免费网站免费看| 色婷五月天| 成人五月天丁香| 91一起操| 亚洲欧美成人在线| 日韩啊啊啊| 久久er九九| 色五月婷婷自拍| 夜夜夜夜做天天天做无码视频| 大战熟女丰满人妻AV| 色五月人妻| 激情五月天综合图片小说网站| 激情性爱网站| 日本欧美成人片AAAA| 婷婷五月天视频免费在线观看| 欧美内射AAAAAAXXXXX| 久久丝袜婷婷| 色婷婷av在线观看| enecarbon-materials.comWu染请涟系Bao护@wip1688| 97五月天婷婷午夜| 99综合久久| 91好好热日本在线| www久久艹| 日本婷婷色| 久超超碰| 色综合色综合网| 婷婷五月,偷窥偷拍网| 日日操,夜夜爽| 琪琪理论片| 婷婷九九| 久色五月天| 性生生活大片又黄又| 五月丁香色| 五月天堂色| 色色色婷婷| 天天狠狠干| 六月婷婷激情小说网| 成人婷婷深爱综合网| 日日噜狠狠色综| 五月天婷婷色在线视频免费观看 | 色婷久| 亚洲狠狠色丁香婷婷综合久久| 99精在线| 99热碰碰热| 激情碰碰碰| 午夜激情久久| 婷婷五月天综合久久| AV大片在线观看| 精品久热| 另类婷婷五月天啪帕帕| 丁香五月人妻| 另类色视频| 色五月婷婷激情综合网| 久久天天天| 狠狠色五月| 99九精品| 99久久99视频只有精品| 日日日,com| 五月婷婷开心网| 九九热这里只有精品6| 色五月婷婷大香蕉| 激情开心五月天| 久色激情| 色五月在线综合| 亚洲视频另类| 婷婷在线免费| 五月丁香六月情亚洲| 这里只有国产精品在线| 亚洲色婷婷五月天| 国产成人网站在线观看| 97人妻碰碰中文无码久热丝袜| 99视频在线9| 六月激情综合| 丁香午月AV中文字幕| 外国碰视频网站97| 丁香五月狠狠综合欧美| 五月丁香六月婷婷激情网| 国产成人av在线播放| 4438激情网| 香蕉狠狠爱视频| 99这里都是精品| 色婷婷综合亚洲| 亚洲无码另类| Www.sesese丁香| 色色综合激情| 综合97五月| 夜夜爽日日躁| 婷婷97碰碰| 色婷婷六月| 亚洲综合五月天婷婷| 亚洲婷婷综合视频| 秋霞学生妹一二级| 日本99在线| 国产乱妇无乱码大黄AA片| 国产午夜成人AV在线播放| 丁香五月成人自拍| 2020久久婷婷五月| 六月色色| 91大屁股在线| 婷婷五月激情热播| 五月天综合婷婷| 台湾无码A片一区二区| 播播网色播播| ou洲色吧| 丁香婷婷啪啪啪| 日本久热| 色色丁香五月天社区| 国产韩日亚洲美州欧亚综合在线| 婷婷五月天综合网| 九九爱激情| 久久视频婷婷视频| 久久激情五月| 思思久久精品| 影音先锋91| 欧美久久五月婷婷| 深爱激情综合| 色五月综合在线| 五月丁香色婷婷基地| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 色 免费网站视频| 。久久久久久久久久久久久久人妻| 五月天天综合| 99re视频在线| 欧美成人精品老美女噜噜噜| 日本女色人人| 国产婷婷五月中文字幕高清| 男人天堂99| 玖玖91| 五月综合激情久久| 色色色欧美| 色婷婷人人| 丁香五月婷婷激情网| 综合性视频99| AⅤ网站在线看| 97色碰| 丁香婷五月天开心六月| 亚洲欧美国产A片免费观看| 婷婷五月丁香影院| 91黄址| 婷婷丁香五月天色色| 五月天婷婷丁香蜜桃91| 国产午夜成人免费看片无遮挡| 99久超碰| 色婷婷丁香| 97日本在线| 日韩一区二区在线播放| 大香网伊人久久综合| 日日操夜夜操无码免费| 丁香六月婷婷综合缴| 成人做爰黄A片免费看直播室男男| 久久久久久久久久8888| 国产免费一区二区在线A片视频| 午夜丁香 婷婷| aaaaaa片| 日韩精品二三区| 国自产拍偷拍精品啪啪一区二区| 六月激情久久婷婷| 91日韩在线| 人伦30P| 日日干日日| 丁香五月婷婷激情中文| 久久婷婷色丁香| 六月色色| 色色色777| 日日爽日日| 日本色天堂| 久久色五月| 操97免费超级视频| 九月av| www.99热在线| 日本天天色| 大香婷婷| 成人看片网站| 99热欧| 超碰免费在线| 国产激情在线观看| 人人爱国产| 婷婷久久综合| 欧美丰满熟妇BBB久久久| 久久久久久久97| 亚韩在线视频| 激情影院内射| 玖玖婷婷五月天毛片| 婷婷色爱| 激情九月综合| 5月丁香啪啪啪| 久久99久久99精品免观看粉嫩| 91热视频色网站| 激情综合在线观看| 超碰免费99| 色婷婷在线影院| 五月婷婷片| 婷婷五月天AV| 天天爽天天日天天舔| 亚洲成Av人片乱码色第1集| 六九色综合婷婷五月天| 久久婷狠狠色| 国产AV一区二区三区最新精品| 五月天成人网婷婷| 热久69| 天天看A片| 欧美午夜乱妇午夜福利| 亚洲热久久| www.久操| 91超级碰| 久久99网| 婷婷五月天影视网址| 大香蕉久久伊人网| 人妻久久久| 先锋男人99资源| 影音先锋五月天婷婷丁香在线观看| 夜夜爽天天爽| 精品综合久久久久久五月天| 色香久久| 色婷婷丁香女女| 五夜丁香| 人妻啪啪啪| sS丁香五月婷婷| 国产亚洲成人综合| 九九99久久精品| 婷婷五月电影| 五月六月婷| 精品婷婷五月视| 国产真实乱了老女人视频| 99热精品无码| 色大综合| 激情无码五月天| 婷婷色五月激情强奸四射| 亚洲AV日韩在线观看| 久er7久热| 国产露脸150部国语对白| 五月激情啪啪| 一起草日本| 丁香五月偷拍| 9久久精品| 九九热精品99| 91人人网| 91久久久久久| 99热18| 精品人妻久久久久久| 欧洲综合视频在线观看。欧洲,亚洲综合食品在线观看。 | 色婷婷五月天激情在线播放| 3pAV| www99热| 99人人干人人| 亚洲色频| 婷婷五月天大香蕉| 五月丁香网站| 色情五月婷婷| 夜夜操夜夜爽| 婷婷五月天堂网| 欧美三级欧美一级| 天天噜天天插| 丁香婷婷久久激情| 欧美激情xxxXX| 婷婷免费精品视频| 久久婷婷色丁香| 久久在这里有精品| 五月婷婷开心六月激情小说| 26UUU欧美| 色婷婷六月天在线| 超碰日日操| 色停停香蕉视频| 开心五月天激情网| 级人人91| 久久久激情视频| 噜噜噜噜噜久| 五月激情五月婷婷五月天在线| 色五月激情| 日本久久精品18| 丁香五月社区| 青青色com久久| 婷婷久久网| 无码毛片992367| 婷婷五月色丁香在线看| 99人妻碰碰碰久久久久禁片| 亚洲黄网AV| 婷婷五月精品中文| 深夜婷婷五月丁香| 久碰婷婷视频| 久操乱| 欧美日本黄色| 激情五月视频| 99性爱| 色都都狠狠色都都色综合色| 久久er免费视频| 色五狠狠| 亚州在线中文字幕| 久久这里只有国产| www.99热| 色婷婷av综合网| PORNY九色9l自拍视频成人| 五月婷婷久久激情 | 婷婷五月超碰| 五月色情网| 99久久www| 国产黄大片在线观看画质优化| 五月婷婷亚洲色图| 99久久99热这里只有精品| 丁香五月综合激情性爱| 久久久五月天婷婷| 激情五月综合色婷婷| 91色逼| 色逼综合网| 91操人视频| 99日这里只有精品| 色噜噜丁香| 日韩黄黄| 五月丁香六月成人| 久久亚洲天堂| 久久五月天综合| 亚洲精品V天堂中文字幕| 色噜噜狠狠色综合成人99| A网在线欧洲| 开心激情综合| 色综合久| 超碰狠狠操| 操人精品| 无码色| 色插人人| 99爱视频免费看| 四LLL少妇BBBB槡BBBB| www.色五月.com| 色婷婷亚洲精品天天综| 日韩三级视频一区二区| 婷婷五月天电影区小说区| 亚洲精品字幕| 毛片新网地| JAPANRCEP老熟妇乱子伦视频 | 色婷婷www| 99色.com| 99爱视频| 丁香六月啪啪啪| 99干日本| 五月激情丁香五月| 色五月婷婷在线| 亚洲色精彩| 亚州色婷婷| 激情综合啪啪| 色999五月色| 成人看片网站| 日本乱子人伦在线视频| 开心五月深爱激情| 99碰碰中文| 99热都是精品| 久久久久9| 九色91视频| 欧美大香蕉视频| 九月综合| 99色啊| 欧美色片中文字幕久久久久| 色女伊人| 色欲五月婷婷| 亚洲综合五月天婷婷丁香| 5月婷婷视频网站综合| 九月丁香| 中文字幕婷婷五月天在线观看| 国产乱轮一区二区三区| 婷婷五月天六月丁香| 五月婷久久久| 人妻中文在线| 五月天精品综合| 丁香色影院| 亚洲AV综合网| 丁香五月综合在线| 欧美在线视频9| 丁香五月婷婷五月天| 丁香婷婷五月综合影院| 天堂成人A片永久免费网站| yazhouzonghesese| 午夜婷婷久久 | 精品国产一区二区三区四区阿崩| 性色视频| 色情综合网| 丰满少妇猛烈A片免费看观看| 开心激情久久久久久久| 九九婷婷综合| 啪啪日本欧美| 精品激情| www.开心激情| 久久中文人妻系列| CAOBIBI| 亚洲另类电影| 亚洲第79页| 99热青青草| 国产看真人毛片爱做A片| 天天色激情| 99操逼视频| 日本操B视频在线观看| 久热免费视频| 热99只有精品| 无码se| 久久久久久婷| 99热综合| 五月丁香婷婷久久| 九九热免费| 九九av| 99久热在线精品99re6热| 成人精品人妻| 亚洲va欧美va天堂v国产综合| 中文资源在线a| 91精品熟女| 欧美WW在线网| 一本色综合色| 九九99精品视频在线观看| 五月天色影院| 日本性激情色播| 大香蕉伊人久久| 久久99免费视屏| 亚洲第一综合| 久机视频这只有精品| 97五月天婷婷| 就爱啪啪婷婷| 激情综合婷婷五月| 免费观看亚洲AV片| 天久久久久| 国产在线激情视频| 99热| 99欧美| 97碰久久| 女人被男人吃奶到高潮| 噜噜视频| 99精品视频免费| 婷婷成人综合五月| 啪啪五月天啪啪| 丁香综合婷婷开心激情网| 五月停停色| 色色色丁香| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 久久99热这里只频精品6学生| 精品少妇蜜臀91| 第四色色六月色综合| 人妻激情在线| 成人日韩欧美| 婷婷丁香五月天哟啪| 99在线公开视频| 91趴趴| 五月婷婷综合在线视频| 97碰精品| 99热66| 涩涩涩五月天| 婷婷五月免费视频| 丝袜激情网| 99网99热| 五月婷婷色色色| 狼人婷婷久久| 日本99视频| 久久久久9| 99视频久久| 色婷婷伊人| 色久女| 久久作爱| 99操碰| 国产毛片精品一区二区色欲黄A片| 丁香五月综合久久八| 久久久妻人人人| 婷婷欧美激情综合| 成人婷婷深爱综合网| va中文资源在线观看| 就爱干 在线| 激情婷婷丁香色情五月天| 九九婷婷五月天影视| 人妻操在线看| 极品人妻VideOssS人妻| 激情久久五月天| 这里只有精品免费| 99色综合| 久热9热| 久久久久8888| 亚洲性图一区二区三区| 免费观看欧美成人AA片爱我多深 | 色婷婷性爱| 久久综合首页| 九九热10| 久久五月天激情| 99无吗| 婷婷色影院| 五月丁香婷婷色| 亚洲日韩成人三级av| 久9热插入| 大香蕉狼人久久| 激情五月综合| 亚洲最大五月天成人网| 丁香五月婷婷激情网| 五月婷视频| 五月婷婷久久网| 色久影院| 五月天停停基地| 五月丁香婷婷婷激情爱爱| 国产无套精品一区二区| 亚洲AV成人在线观看| 五月 激情视频| 九九99视频精品| 99精品视频免费| 色五月激情五月天| 最新久久99视频网站| 五月婷婷久久综合| 五月天激情AV| 99热99色| 色域五月婷婷丁香| 一级A片天天操夜夜操| 久9无码视频| 久久小视频| 久久宗合影| 草美女在线观看视频在线播放| 五月婷婷中文字幕| 人妻体体内射精一区二区| 婷综合六月| 狠狠操.com| 精品人妻一区| 国产首页在线| 欧美激情Va| 成人五月天丁香| 色五月婷婷在线观看第一页舔| 91美女被操| 99精色| 五月婷婷六月色| 国产综合婷婷| 日日夜夜久| 熟女人妻一区二区三区免费看| 99热日| 丁香五月激情视频在线| 色婷婷基地| 丁香六月激情| 日日夜夜狠狠| www99xxxx五月丁| 我爱va亚洲va52| 五月婷婷六月色| 非洲一级AV| 色吧五月婷婷| 五月天啪啪网| 99热只有这里才是精品| 日日影院 | 五月婷婷六月丁香免费| 五月丁香香蕉| 91色噜噜狠狠狠狠色综合| 五月婷婷二月丁香| Av中文在线| 久久只这里有精品| 欧美色男人网站| 九九热免费观看视频| 婷婷色五月天在线| 狠狠色婷婷7777久| 另类在线| 丁香六月色婷婷欧美| 婷婷六月久久综合导航| 免费黄色视频网址| 中文字幕成人| 天搞天天天天天| 91久久久久久久| 久热91精品| 国产激情在线| 久久久激情视频| 中文字幕av在线播放| av激情在线| 9月色婷婷| 婷婷五月天网址| 日韩av在线免费观看| 9l视频自拍9l九色9l成人| 99re热在线视频观看| 五月婷婷综合在线视频小说| 色色影院黄大片| 五月婷婷五月天在线 | 武则天精品久久| 99久在线精品99re8热| 五月色婷| 三人荫蒂添的好舒服A片| 久久综合伊人综合在线| 一本婷婷丁香久久| 五月丁香综合网| 婷婷五月天中文字幕| 综合网啪啪| 9l视频自拍9l九色成人| 97色吧| 五月停停丁香| 亚洲综合另类| 婷婷丁香五月综合| anquye五月| 国产综合丁香五月天| 99精品在线观看视频| 久99热| 成人无码精品1区2区3区免费看| 欧美色欲色欲天天天www| 99在线爽| 99re6久热只有精品6在线直播| 五月婷婷天天色| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 日韩精品色| 亚洲AV无码成人精品电影| 色综合久久88色综合天天99| 五月天婷五月天综合网在线观| 狠狠久久婷五月综合色| 久久色婷婷| 欧美综合激情五月丁香| 91天堂网综合| 久操操| 丁香月六月| 九九综合九九| 狠狠色丁香乆乆| 91爱啪啪| WWW,五月| 婷婷五月天在线观看| 噜噜网免费视频| 五月丁香六月婷婷综合在线| 九九热99在线视频| 久热大香蕉| 在线综合网| 天天爽天天日人人爱 | 天堂草在线观看| 国产精品大香蕉| 欧美A A A A A| 五月天综合婷婷| 日本操逼九九九九58日本操逼| 操97| 热热99爱爱| 欧美大片免费播放器| 五月99久久| 五月花婷婷最新| 狼友视频在线观看18| 秋霞AV吧| 91婷婷| 99操无码视频观看| 十月丁香九月婷婷综合| 婷婷九月激情| 久久激情五月| www狠狠com| 亚洲丁香花五月丁香花| 最近中文字幕2019视频1| PORNY九色9l自拍视频成人| 久久精品66| 成人精品一区二区三区四区五区| 综合久久综合久久| 色色五月天婷婷丁香| 天堂呦 呦百度搜索-百度搜索| 色五月av| 狠狠干无码| 综合99综合久久久久久久| 丁香五月六月激情| 逼逼AV| 日日天天天| 婷婷九月激情| 99re热99| 激情五月天色色网| 99re热在线视频| 久99久热| 五月婷婷色色色| 久草视频一,二三四| 激情五月婷婷在线观看| 婷婷网五月天| www五月| 天天操天天曰| 久久久精品人妻| 婷婷五月天久久久| 思思热这里只有精品| 九九亚洲视频| 操逼巨乳91| 99激情网| 欧美va在线| 思思精品视频| 欧美操人| 怎么样可以看免费的一级av| 99燥99日| 人操91在线| 97色综合视频| 天天肏视奸| 亚洲最大五月天成人网| 九月婷婷久久久| 激情黄色小说色五月| 九九热中文| 激情五月婷黄版| 99 热| 色色色视频| 五月丁激情| 色播婷婷五月天| 精品久久艹| 五月丁香六月色| 婷婷综合在线| 日产精品久久久久久久蜜臀| 97人碰人操| 婷婷五月天性爱视频| 欧美日韩成人高清在线| 婷婷久热| 激情丰满熟妇五月| 色五月天综合网| 色情丁香五月婷婷精品| 99热精品在线在线| AV中文字幕夜夜操b天天摸bb| 26uuu偷拍亚洲欧洲综合| 99九九精品| 六月色狠狠色| 丁香五月天成人网站| 在线成人网址| 伊人婷婷五月| 色五月天丁香婷婷| 丰满老熟妇BBBBB搡BBB| 日日噜噜久久婷婷五月天| 亚洲、欧美、国产另类笫二区| 丁香婷婷五月天色综合| 99精在线| 久久9视频| 亚洲第一影院高清无码网站| 色色日韩| 色婷婷狠狠| 99操碰| 亚洲激情| 五月丁香婷婷AV天堂| 色婷婷五月天偷拍| 99精品视频在线观看| 久久精品噜噜噜成人A∨色欲| 超碰亚洲天堂| 中文在线视频久1| 婷婷激情小说| 超色欲天天| 狠狠另类视频| 99操久久| 五月婷狠狠| 亚洲激情亚洲激情 | 麻豆AV一区二区三区| 在线观看亚洲视频影院| 丁香五月激情性色郤| 中文字幕不卡+婷婷五月| www.91五月| 激情五月丁香婷婷夜夜操| 亚洲视频色婷婷| 精品国产AV色一区二区深夜久久 | 天天操天天操天天操天天操天天操| 婷婷丁香成人| 婷久久| 六月丁香六月婷婷欧美| 国产黄色在线观看| 五月天婷婷一起草| AV操逼网| 婷婷综合一二三| 久婷婷视平| www.日日日.com| 4399成人黄A片| 99色日本| 亚洲色优| 影音先锋91视频| 色婷五月丁香久亚洲| 老司机日日夜夜青草| 中文字幕性爱视频| 五月花综合视频| ..真实国产乱子伦毛片| 五月天激情网图片 - 百度| 五月婷久久| 98永久精品| 亚洲日日日| 日本在线观看aaa 99| 日日鲁鲁夜夜爽爽| 777精品久无码人妻蜜桃| 精品久热| 激情色色色| 亚洲色五月| www九九热| 日本不卡中文字幕| 午夜成人AV在线| 日本久久视频| 天天噜日日噜综合无码| 五月丁香色色| 99久久9| 五月婷婷色色| 婷婷俺去也| www.狠狠操.co m| 日日夜夜天天| 国内婷婷丁香社区在线播放| 图片区 小说区 区 亚洲五月 | 国精产品久久| 丁香五月停停av| Www,五月天| 日本人妻久久| 亚洲欧洲午夜成人精品av| 91在线操| 亚洲精品电影| 久久网站免费亚洲| 97高清国语自产拍| 中出内射的人妻视频| 日比视频91| 天天干夜夜想| 中文字幕av在线播放| 337p大胆噜噜噜噜噜91Av| 99操逼| 青青草蜜臀| 免费色婷婷| 久久婷婷亚洲| 色婷婷丁香五月天| 国产成人精品亚洲线观看| 可以直接看的AV网站| 色约约视频一区二区三区四区五区| AV性爱在线| 成人AV在线网站| 欧美成人精品三区综合A片| 91大屁股| WWW免费视频碰碰碰碰| 人人摸人人摸| 亚洲AV无码久久精品色欲| 97婷婷久久丁香| 久9久9热久热| 丁香五月激情月| 永久热91| 99热精品免费| 色五婷婷| 五月丁香综合激情| 久久99热网| 五月天成人在线播放| 久热这里只精品| 国产婷婷婷| 9久久婷婷国产综合精品性色| 五月婷婷六月丁香激情深爱| 久久免费高| 92久久| 1995年关宝慧版蜘蛛女| 丁香六月婷| 婷婷综合五月天| 五月丁香人妻| 久热这里只有精品在线观看| 91亚洲免费片| 五月丁香网站| 大香蕉久久久| 五月丁香激情欧洲啪啪| 91精品在线看| 97色射| 99热久| 国产在这里只有精品| 天天噜天天插| 亚洲在线视频321| 婷婷中文字幕| 色综合久久99色| 久久成人天| 色亚洲无码| se色综合网| 国产偷人爽久久久久久老妇APP| 天天人人人人人人人人人人人| 天天狠狠插| 久99久热| 99热www| 538在线精品| 婷婷五月天在线综合导航| ady狠狠入| 99精品国产乱码久久久人妻| 91精品婷婷国产综合久久| 99热精地址| 丁香月五月天婷婷久久| 色五月成人| 伊人色五月| 五月 婷 久| 亚洲精品V天堂中文字幕| 丁香五月色| 欧美三级欧美一级| 五月激情站| 婷婷丁香激情五月天色色| 天天综合激情| 婷婷五月播| 99热青青草| 国内久久亭亭| 色射7856五月天激情四射| 极骚大香蕉伊人| 99re在线播放| 99综合网| 中文字幕在线免费观看视频| 九九热99热| 五月天堂婷婷| 五月激情婷婷综合| 九月婷婷色色| 激情视频综合| 五月天丁香成人| 激情五月综合亚洲另类| 五月婷激情| 熟女激情五月天| 天天操综合网站| 中文国产五月天| 精品皮股午夜AV| 日日操日日射| 青草激情在线| 五月婷婷丁香综合| 17.c黄色| WWW.婷婷| 婷婷五月天视频免费在线观看| 天天做好综合色| 五月花激情| 97色色综合| 激情噜噜噜| 国产婷婷五月天| 婷婷五月激情欧美| 91在线日| 婷婷社区五月天| 久久久久久人妻| 丁香五月天社区| www.色五月| 一本到不卡高清DVD| 另类国产欧美视频| 九色激情网| 九九RE视频在线精品| 色色激情五月天| 五月丁香啪啪啪免费看| 五月天婷婷在看| 99精品爱| 久久丁香综合| 99ri视频| 免费观看欧美成人AA片爱我多深| 日本色色色色色色色色一色二色| www.91热久久| 成年视频免费观看| 久久久激情视频| 亚洲激情淫网| 五月丁香龟婷婷| 六月婷婷激情| 丁香五月婷婷网| 激情五月丁香五月色| 欧美超碰亚洲| 五月色网| 婷婷激情五月天亚洲综合| 婷婷色正月| 91热在线| 激情五月丁香五月色| 五月丁香最新| 天天日天天添| 五月好婷婷| 黄网在线免费观看| 91久久精品国产91性色TV| 婷婷九月丁香天堂丁香天堂| 久久er免费视频| 俺去啦综合网| 久久久www| 69凹凸成人综合网| 免费97碰碰| 另类图片五月天婷婷| 久久这里都是精品| 日韩无码专区| 成人在线高清| 婷婷丁香六月影视| 激情 婷婷| 婷婷丁香激情五月天色色| 五月停停999| 中文中文在线| 婷婷综合97| 九九热在这里只有精品| 99久久婷| 97碰 在线视频观看| 色色激情五月天| se99视频| 五月丁香网站| 超碰在线99热| 天天天天天天天操| 色色色成人网| 成人在线视频一区| 婷婷久久五月天亚洲欧美国产日韩在线观看| 天天透天天爱| 日韩av变天就操逼不卡区| 丁香五月综合婷婷| 日日综合网| 国产日韩精品SUV| www.99婷婷| 5月丁香啪啪啪| 亚洲精品V天堂中文字幕| 久久婷婷五月丁香网| 狠狠五月天激情| 丁香激情五月| www99在线观看视频| cc精品国产性传播| 疯狂做受XXXX高潮A片动画| 超碰91av| 久久99精品久久久久久三级| 99久热视频在线| 欧美激情xxxXX| 91超级碰碰| 五月天激情四射网站| 成人性爱无码| 免费看欧美成人A片无码| 激情五月婷婷丁香六月| 日韩成人AV在线播放| 99国产欧美视频| 狠狠色婷婷六月激情网| 国产偷人爽久久久久久老妇APP| 九九热欧美| 日本色图综合| 丁香五月激情网| 五月天色区| 国产亚洲色婷婷久久99精品9j| www国产亚洲色婷婷com| 99在线精品免费视频| 免费的日逼视频| 五月丁香六月综合激情| 91超碰人人操| 丁香婷婷网| 色色丁香五月天| 丁香五月在线自慰| 午夜九九九九九九九九九九九九九| 99国产视频网| 99啪视频在线观看| 五月婷婷六月少妇激情| 99操网站| 天天日,天天插| 97久久超视频| 五月丁香六月激情视频| 日韩AV中文字幕在线| 日本操B视频| 久久99免费视频| 五月色综合网| 丁香久久久| 99精品视频偷拍| www.99久久久| 丁香婷婷五月| 侠女刀之记忆电影在线看免费| 4399成人黄A片| 亚洲天天免费| 激婷网| 亚洲色色香蕉| 丁香五月www| 另类图片激情五月| 丁香五月影院| h在线看免费版在线看| 人人色AV| 香蕉99网| 天天干天天做| 五月丁香香蕉| 五月婷色| 五月天色婷婷基地| 国产综合丁香五月天| 精品99在线观看| 东京热免费视频| 日日做A爰片久久毛片A片英语 | 色婷婷香蕉| 五月丁香亚洲综合网| 91av无码| 99久久9| 色婷婷丁香五月| 婷婷色成人| 亚洲AV第二区国产精品| 五月亭亭直播| 囯产精品一品二区三区| 99 福利 导航| 四色99久久| 深爱五月天天| 五月丁香久久丝袜啪啪| 99A片| 亚洲精| enecarbon-materials.com污K127封锁请涟系@wip1688 | 婷婷五月丁香综合桃花色网| 亚洲第一成人无码A片| 亚洲天天免费| 一婬一伦一区二区三区| 五月色婷婷综合| 亚洲狠狠狠| 综合网色| 九热视频在线伦| 99在线视频播放| 色综合五月婷婷狠狠干| 亚洲av网址| 97精品人人A片免费看| 99热久| 婷婷九月激情| 亚洲成人av在线播放| 日本久久网| 五月天另类激情在线| 日本狠狠爽| 9久国产| 9色91视频| 自拍偷窥99热| 色五月丁香五月婷婷五月成人网| AV在线免费播放| 超碰妻人人| 亚洲综合五月| 特级西西4444www无码| 99re久热只有精品6在线直播| 五月天久久激情| 三年高清大片免费观看国语| 熟女网站久久| 99热这里只有的精品视| 久久天天天| 五月天基地| 任你躁XXXXX麻豆精品| 天天操无码| 五月草视频| 五月天开心婷婷久久| 97干免费视频| 欧美123区免| 五月天电影网| 99在线精品免费视频| 五月丁香六月婷婷无码| 丁香五月宝贝激情网| 九九色影院| 午夜丁香综合婷婷| 熟妇国产| 熟女少妇内射日韩亚洲| 超碰免费在线| 天天干一干| 橾逼网| 五月天婷婷中文字幕在线播放| 色七色九九| 99热婷婷| 久草 天堂| 久一网站| 欧美成人日韩| www.com在线操视频免费观看| 欧美激情性做爰免费视频| 婷婷五月天成人网| 91色色色18| 少妇搡BBBB搡BBB搡毛茸茸 | 激情婷婷五月社区| 天堂草在线观| 色婷婷丁香特级性爱视频| se色99| 婷婷五月激情热播| 丁香婷婷六月激情文学| 丁香花五月天激情| 色婷婷av在线| 大香蕉久久草| 伊人网碰碰| 99狠狠色| 九九色人| 九九色影视| 丁香五月天激情| 色五月婷婷中文字幕| 亚洲精品视频在线播放| 色播六月| 久久精彩综合视频| 青青草性爱视频| 噜综合| 狠狠狠狠狠狠草| 激情五月网站| 内射丰满人妻| 色噜综| 色五月激情婷婷| 亚洲99在线| 91凹凸在线| 色五月色五天色情网| 丁香五月性爱| 这里只有精品,日韩视频| 秋霞学生妹一二级| 婷婷六月中文字幕| 色五月亚洲开心网| 九九热免费| 婷婷五月天社区| 黄网在线免费观看| www.夜夜操| 一本大道伊人AV久久综合| 丁香激情综合| 美腿丝袜AV天堂网| 五月丁香啪啪综合| 五月丁香亚洲校园欧美| 丁香五月婷婷少妇| 91大屁股| 另类小说色婷婷| 狠狠综合久久| 四LLL少妇BBBB槡BBBB| 欧美三级视频| 日韩一级网站| 婷婷在线观看五月天在线视频| 五月亭亭激情综合| 婷婷五月天高清无码| 久久婷婷成人| 夜夜穞天天穞狠狠穞AV美女按摩| 激情综合色婷婷啪啪五月天| 人妻中文av| 亚洲网视屏| 九九操综合网| 成人在线99| 五月激情天| 日本三级第一页| 91色色色18| 六月婷伊人| 第四色五月天| 99亚洲精品| 欧美三级大片AA在线看| 色三级色三级| 五月丁香少妇网| 六月丁香五月婷婷| 另类少妇人与禽zOZZ0性伦| 婷婷五月超碰| 99re66热这里只有精品| 日本激情综合| 久久久久er热| 婷婷丁香精品视频在线观看| √天堂资源在线人妻熟女| 婷婷九月激情网| 婷婷五月天AV在线| 天堂无码人妻精品AV一区| 婷婷自拍| 99高级会所久久| 激情丁香五月| 中文中文在线| www.婷婷六月天| 丁香社区婷婷五月| 伊人91| 色婷婷无吗| 思思99精品视频在线观看| 停停五月色宗合| 国产亚洲精品久久久久久久久动漫| 久99热在线观看| 婷婷日日天天| 婷婷金品综合视频| 久热99久热| 五月激情婷婷播播网| 五月停亭六月,六月停亭的英语| 人操91在线| 欧美天天综合网站上去吧| 色播丁香五月婷婷操:屄| 欧美日比视频| 五月婷三级片| 综合激情五月丁香| 五月丁香六月激情在线| 日本不卡一区二区三区| 欧美在线97| 色深爱五月| 超碰日韩人妻在线| 五月婷成人| 色婷婷综合影院| 无毒黄色网址| 伊人六月无码视频| 99久久极情精品一区| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 九九热在线99| 五月丁香六月色| 色综合激情| se色婷婷视频| WWW五月天| 中文av网| 色婷婷99| yellow视频在线观看91| 五月天激情黄色网址| 五月天激情日色在线| 91丨九色丨国产打屁股| 丁香五月久久| 99热综合色图| 综合激情sV| 日日天天干| 丁J香六月首页| 五月婷婷综合潮喷| 香蕉97碰碰碰欧美| 丁香婷婷六月激情| 亚洲操操| 九九激情网| 六月婷婷色| 五月丁香啪啪啪| 亚洲这里只有精品| 综合色久| 色色亚洲视频| 天天噜天天插| 天天色天天| 人人草成人视频| 亚洲操B| 久鲁鲁色网| 国产亚洲99久久精品| 色情五月丁香婷婷网| 日韩另类| 婷婷国产日本欧美| 天天射影院| 天天干肏夜夜| 婷婷丁香大香蕉| 橾逼网| 九九精品热播|