YY. GeometryHelper
经纬度格式化工具
creation
constructor()
example
js
const lnglatStr =
"121.926497,29.924371;121.925041,29.928137;121.927124,29.931158;121.931917,29.935118;121.938482,29.940122;121.946513,29.945618;121.949044,29.9476;121.949465,29.947661;121.950765,29.949551;121.952897,29.950732;121.9633,29.955263;121.967995,29.956524;121.971021,29.95549;121.972691,29.95206;121.976189,29.949471;121.977965,29.949819;121.980089,29.949141;121.981725,29.947032;121.982482,29.944304;121.984397,29.937623;121.985555,29.936808;121.988367,29.936339;121.992607,29.935874;121.994523,29.934582;121.99548,29.932879;121.997195,29.92811;121.998214,29.926474;122.000138,29.925458;122.002899,29.923184;122.003708,29.919964;122.002979,29.910532;122.002979,29.903199;122.003463,29.899009;122.005161,29.893373;122.007181,29.891687;122.009768,29.891131;122.015427,29.891389;122.031187,29.892241;122.038521,29.891181;122.065521,29.891786;122.073171,29.890295;122.076586,29.890573;122.080139,29.892623;122.092698,29.903002;122.096249,29.905052;122.099929,29.905324;122.10334,29.905324;122.107166,29.905597;122.109613,29.906414;122.116708,29.90996;122.121069,29.909957;122.125838,29.908861;122.137008,29.903527;122.140136,29.90175;122.142726,29.895741;122.143817,29.888643;122.143678,29.883732;122.14308,29.877714;122.135914,29.872279;122.119973,29.865678;122.102219,29.859664;122.096106,29.855312;122.090515,29.850942;122.084782,29.844526;122.077537,29.841107;122.066473,29.836452;122.048566,29.826047;122.044186,29.822518;122.04017,29.817898;122.037594,29.813735;122.036381,29.806627;122.031834,29.801324;122.024254,29.788228;122.023114,29.785859;122.019422,29.780596;122.017761,29.775042;122.015983,29.771931;122.003152,29.762266;121.997896,29.760158;121.989739,29.758832;121.979639,29.754577;121.966681,29.751706;121.959205,29.750007;121.946678,29.749666;121.940996,29.749131;121.937608,29.748538;121.925554,29.741261;121.906451,29.719231;121.895312,29.708927;121.894168,29.716566;121.893483,29.720521;121.89246,29.724528;121.891584,29.727626;121.890639,29.730542;121.88907,29.735689;121.887813,29.738034;121.886426,29.73871;121.883392,29.739841;121.882274,29.739888;121.879059,29.741126;121.875887,29.742879;121.872854,29.744183;121.871641,29.744716;121.870289,29.745311;121.869345,29.745529;121.867864,29.745869;121.865958,29.745857;121.865291,29.7466;121.864893,29.747745;121.862857,29.747782;121.861281,29.747835;121.859444,29.74776;121.857738,29.748324;121.856543,29.749922;121.854698,29.750713;121.852524,29.751157;121.850879,29.752697;121.84829,29.756007;121.846178,29.758231;121.844723,29.759312;121.842887,29.758956;121.841641,29.758947;121.840385,29.760319;121.837909,29.764886;121.836506,29.767636;121.834455,29.770318;121.832853,29.772086;121.831277,29.773337;121.829294,29.774524;121.827641,29.77572;121.826126,29.777197;121.825251,29.779375;121.823935,29.779599;121.823017,29.779818;121.822091,29.780616;121.820307,29.78164;121.82016,29.784047;121.820186,29.787431;121.820091,29.790354;121.820265,29.792474;121.81881,29.793962;121.816888,29.796186;121.813857,29.797191;121.813069,29.797186;121.811813,29.797926;121.811086,29.799353;121.810601,29.801191;121.807215,29.805289;121.803309,29.808768;121.801135,29.810015;121.798961,29.811199;121.796579,29.81239;121.793425,29.81351;121.790202,29.814061;121.786068,29.814543;121.784942,29.815517;121.786996,29.81943;121.788157,29.820585;121.789067,29.821793;121.789249,29.823229;121.788314,29.825062;121.786199,29.826478;121.783955,29.827895;121.781242,29.829532;121.77728,29.831339;121.778061,29.832437;121.778182,29.833179;121.777064,29.833981;121.774108,29.833721;121.770492,29.833688;121.767595,29.834476;121.764699,29.835252;121.76377,29.83564;121.762183,29.836546;121.761714,29.837859;121.76103,29.840036;121.760023,29.842039;121.758635,29.842658;121.757394,29.841779;121.755824,29.841764;121.754956,29.843019;121.754479,29.844223;121.753672,29.845417;121.751832,29.845408;121.750001,29.845328;121.748213,29.84623;121.746694,29.84662;121.746538,29.848856;121.74646,29.850056;121.746191,29.850972;121.742701,29.850883;121.740278,29.850173;121.73862,29.851474;121.737691,29.852268;121.737543,29.853068;121.738586,29.854569;121.740418,29.855902;121.741121,29.857409;121.741347,29.860675;121.740245,29.864679;121.73962,29.86783;121.739733,29.86949;121.738344,29.870739;121.736364,29.87135;121.734253,29.871735;121.731995,29.8732;121.729815,29.873925;121.727904,29.87385;121.72581,29.872854;121.723994,29.870479;121.722491,29.869436;121.718884,29.867963;121.71699,29.866569;121.714191,29.86459;121.706663,29.859924;121.703515,29.858398;121.703532,29.857414;121.701568,29.856599;121.699716,29.856406;121.697472,29.856777;121.69622,29.856762;121.694063,29.855024;121.691838,29.854249;121.690124,29.854463;121.689133,29.854965;121.68808,29.854032;121.686376,29.853499;121.684932,29.853084;121.68348,29.853357;121.68261,29.854545;121.682254,29.856148;121.681576,29.85815;121.680175,29.860307;121.679619,29.862485;121.678932,29.864541;121.678654,29.866261;121.677054,29.867901;121.675314,29.869206;121.673932,29.869588;121.672679,29.869347;121.671897,29.869562;121.672131,29.871405;121.673758,29.873258;121.674262,29.874923;121.673793,29.876468;121.672637,29.879323;121.673141,29.881223;121.673785,29.882377;121.674168,29.883643;121.673889,29.884443;121.673731,29.884786;121.673679,29.885269;121.672184,29.886319;121.671527,29.887146;121.671316,29.887241;121.670734,29.887272;121.670012,29.887474;121.669583,29.887499;121.66929,29.887676;121.668887,29.888122;121.668693,29.888185;121.667928,29.888024;121.666475,29.887895;121.666504,29.888165;121.666352,29.888472;121.66583,29.889523;121.665285,29.890324;121.664845,29.891133;121.667893,29.893883;121.668159,29.894143;121.668111,29.894262;121.666779,29.897071;121.666258,29.898015;121.666026,29.898631;121.665636,29.899371;121.665273,29.900122;121.665049,29.900486;121.664268,29.900278;121.66384,29.900804;121.663396,29.90045;121.661967,29.902974;121.661829,29.903218;121.660392,29.902657;121.660231,29.903117;121.659531,29.902872;121.659351,29.903158;121.659248,29.9032;121.658224,29.902736;121.657917,29.903224;121.658619,29.903721;121.658493,29.904101;121.658666,29.904227;121.658565,29.904452;121.658242,29.904309;121.657442,29.905606;121.657169,29.905823;121.65672,29.905797;121.656462,29.906036;121.656071,29.906309;121.655972,29.906157;121.655046,29.906823;121.652698,29.907535;121.654559,29.910374;121.656328,29.912403;121.65805,29.913866;121.65989,29.915141;121.663571,29.916066;121.667581,29.916686;121.671918,29.917219;121.676475,29.918399;121.680354,29.919952;121.682972,29.920958;121.685726,29.923032;121.687608,29.924964;121.689687,29.927513;121.691365,29.931394;121.692879,29.934785;121.694125,29.937742;121.696013,29.941053;121.697925,29.943552;121.699738,29.944778;121.702452,29.945668;121.704982,29.94601;121.707824,29.945819;121.711876,29.945053;121.715611,29.94477;121.718847,29.945066;121.721836,29.94629;121.724982,29.948958;121.726954,29.951686;121.728836,29.955312;121.730414,29.959382;121.732495,29.962687;121.735188,29.965319;121.737673,29.966999;121.740759,29.968508;121.744794,29.970096;121.74987,29.971504;121.756291,29.972666;121.766438,29.976578;121.771666,29.979794;121.775056,29.982116;121.777466,29.983796;121.780977,29.986059;121.788396,29.990799;121.804033,29.981131;121.814371,29.974349;121.835197,29.957945;121.859971,29.943983;121.901799,29.92368;121.909633,29.922612;121.919531,29.920819;121.923491,29.922459;121.926497,29.924371";
//经纬度字符串转为经纬度数组
var lnglatsArrayList = YY.GeometryHelper.strToLngLatArray(lnglatStr);
//二维数组
console.log(lnglatsArrayList);
//经纬度数组转为经纬度字符串
console.log(YY.GeometryHelper.lngLatArrayToStr(lnglatsArrayList));
//multipolygon 用 | 进行分隔
//经度和纬度用 , 进行分隔
//经纬度用 ; 进行分隔
//经纬度串之间用 # 进行分隔
//点 一般为 x,y
//线为 x,y;x,y;x,y;................
//多线为 x,y;x,y;x,y;................# x,y;x,y;x,y;.......#...........
//面为,其中 #后面的表示洞 x,y;x,y;x,y;................# x,y;x,y;x,y;.......#...........
//多面为 #后面的表示洞 x,y;x,y;x,y;................# x,y;x,y;x,y;.......#...........| x,y;x,y;x,y;................# x,y;x,y;x,y;.......#...........|...........
method
TIP
static 表示静态方法, 即对象直接访问, 无需new
static
strToLngLatArray(str)
- 经纬度字符串转为经纬度数组
- 参数
- {String} str :
- 返回值:
Array[]
数组,二维数组,三维数组, 四维数组
static
strToArray(str)
- 等价于 strToLngLatArray
static
lngLatArrayToStr(lnglat)
- 经纬度数组转为经纬度字符串
- 参数
- {Array} lnglat : 数组(Point),二维数组(Line),三维数组(Polygon),四维数组
- 返回值:
String
static
arrayToStr(lnglat)
- 等价于 lngLatArrayToStr
static
encode(lnglat)
- 经纬度字符串编码, 编码可以大大压缩数据的大小,加快传输速度
- 参数
- {String} lnglat : '120,31;121,32;....';
- 返回值:
String
js
YY.GeometryHelper.encode("121.580896,31.162570");
//result "qgaeVame}D"
static
decode(lnglat)
- 经纬度字符串解码
- 参数
- {String} lnglat : '';
- 返回值:
String
static
encodeGeoJSON(input)
- 对 geojson 进行压缩编码
- 参数
- {GeoJSON} input : '';
- 返回值:
GeoJSON
static
decodeGeoJSON(input)
- 对 geojson 进行编码解压
- 参数
- {GeoJSON} input : '';
- 返回值:
GeoJSON