Agriculture-front-end/public/libs/mapv/2.0.62/mapv.min.js
2023-06-22 06:50:23 +08:00

1 line
119 KiB
JavaScript

!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e(t.mapv=t.mapv||{})}(this,function(t){"use strict";function E(t){t&&t.clearRect&&t.clearRect(0,0,t.canvas.width,t.canvas.height)}function n(){this._subscribers={}}n.prototype.on=function(t,e){var n=this._subscribers[t];n||(n=[],this._subscribers[t]=n),n.push({callback:e})},n.prototype.off=function(t,e){var n=this._subscribers[t];if(n)for(var i=0;i<n.length;i++)n[i].callback==e&&(n.splice(i,1),i--)},n.prototype._trigger=function(t,e,n){if("*"==t)throw new Error("Cannot trigger event *");var i=[];t in this._subscribers&&(i=i.concat(this._subscribers[t])),"*"in this._subscribers&&(i=i.concat(this._subscribers["*"]));for(var o=0,a=i.length;o<a;o++){var r=i[o];r.callback&&r.callback(t,e,n||null)}};var r={municipalities:[{n:"北京",g:"116.395645,39.929986|12"},{n:"上海",g:"121.487899,31.249162|12"},{n:"天津",g:"117.210813,39.14393|12"},{n:"重庆",g:"106.530635,29.544606|12"}],provinces:[{n:"安徽",g:"117.216005,31.859252|8",cities:[{n:"合肥",g:"117.282699,31.866942|12"},{n:"安庆",g:"117.058739,30.537898|13"},{n:"蚌埠",g:"117.35708,32.929499|13"},{n:"亳州",g:"115.787928,33.871211|13"},{n:"巢湖",g:"117.88049,31.608733|13"},{n:"池州",g:"117.494477,30.660019|14"},{n:"滁州",g:"118.32457,32.317351|13"},{n:"阜阳",g:"115.820932,32.901211|13"},{n:"淮北",g:"116.791447,33.960023|13"},{n:"淮南",g:"117.018639,32.642812|13"},{n:"黄山",g:"118.29357,29.734435|13"},{n:"六安",g:"116.505253,31.755558|13"},{n:"马鞍山",g:"118.515882,31.688528|13"},{n:"宿州",g:"116.988692,33.636772|13"},{n:"铜陵",g:"117.819429,30.94093|14"},{n:"芜湖",g:"118.384108,31.36602|12"},{n:"宣城",g:"118.752096,30.951642|13"}]},{n:"福建",g:"117.984943,26.050118|8",cities:[{n:"福州",g:"119.330221,26.047125|12"},{n:"龙岩",g:"117.017997,25.078685|13"},{n:"南平",g:"118.181883,26.643626|13"},{n:"宁德",g:"119.542082,26.656527|14"},{n:"莆田",g:"119.077731,25.44845|13"},{n:"泉州",g:"118.600362,24.901652|12"},{n:"三明",g:"117.642194,26.270835|14"},{n:"厦门",g:"118.103886,24.489231|12"},{n:"漳州",g:"117.676205,24.517065|12"}]},{n:"甘肃",g:"102.457625,38.103267|6",cities:[{n:"兰州",g:"103.823305,36.064226|12"},{n:"白银",g:"104.171241,36.546682|13"},{n:"定西",g:"104.626638,35.586056|13"},{n:"甘南州",g:"102.917442,34.992211|14"},{n:"嘉峪关",g:"98.281635,39.802397|13"},{n:"金昌",g:"102.208126,38.516072|13"},{n:"酒泉",g:"98.508415,39.741474|13"},{n:"临夏州",g:"103.215249,35.598514|13"},{n:"陇南",g:"104.934573,33.39448|14"},{n:"平凉",g:"106.688911,35.55011|13"},{n:"庆阳",g:"107.644227,35.726801|13"},{n:"天水",g:"105.736932,34.584319|13"},{n:"武威",g:"102.640147,37.933172|13"},{n:"张掖",g:"100.459892,38.93932|13"}]},{n:"广东",g:"113.394818,23.408004|8",cities:[{n:"广州",g:"113.30765,23.120049|12"},{n:"潮州",g:"116.630076,23.661812|13"},{n:"东莞",g:"113.763434,23.043024|12"},{n:"佛山",g:"113.134026,23.035095|13"},{n:"河源",g:"114.713721,23.757251|12"},{n:"惠州",g:"114.410658,23.11354|12"},{n:"江门",g:"113.078125,22.575117|13"},{n:"揭阳",g:"116.379501,23.547999|13"},{n:"茂名",g:"110.931245,21.668226|13"},{n:"梅州",g:"116.126403,24.304571|13"},{n:"清远",g:"113.040773,23.698469|13"},{n:"汕头",g:"116.72865,23.383908|13"},{n:"汕尾",g:"115.372924,22.778731|14"},{n:"韶关",g:"113.594461,24.80296|13"},{n:"深圳",g:"114.025974,22.546054|12"},{n:"阳江",g:"111.97701,21.871517|14"},{n:"云浮",g:"112.050946,22.937976|13"},{n:"湛江",g:"110.365067,21.257463|13"},{n:"肇庆",g:"112.479653,23.078663|13"},{n:"中山",g:"113.42206,22.545178|12"},{n:"珠海",g:"113.562447,22.256915|13"}]},{n:"广西",g:"108.924274,23.552255|7",cities:[{n:"南宁",g:"108.297234,22.806493|12"},{n:"百色",g:"106.631821,23.901512|13"},{n:"北海",g:"109.122628,21.472718|13"},{n:"崇左",g:"107.357322,22.415455|14"},{n:"防城港",g:"108.351791,21.617398|15"},{n:"桂林",g:"110.26092,25.262901|12"},{n:"贵港",g:"109.613708,23.103373|13"},{n:"河池",g:"108.069948,24.699521|14"},{n:"贺州",g:"111.552594,24.411054|14"},{n:"来宾",g:"109.231817,23.741166|14"},{n:"柳州",g:"109.422402,24.329053|12"},{n:"钦州",g:"108.638798,21.97335|13"},{n:"梧州",g:"111.305472,23.485395|13"},{n:"玉林",g:"110.151676,22.643974|14"}]},{n:"贵州",g:"106.734996,26.902826|8",cities:[{n:"贵阳",g:"106.709177,26.629907|12"},{n:"安顺",g:"105.92827,26.228595|13"},{n:"毕节地区",g:"105.300492,27.302612|14"},{n:"六盘水",g:"104.852087,26.591866|13"},{n:"铜仁地区",g:"109.196161,27.726271|14"},{n:"遵义",g:"106.93126,27.699961|13"},{n:"黔西南州",g:"104.900558,25.095148|11"},{n:"黔东南州",g:"107.985353,26.583992|11"},{n:"黔南州",g:"107.523205,26.264536|11"}]},{n:"海南",g:"109.733755,19.180501|9",cities:[{n:"海口",g:"110.330802,20.022071|13"},{n:"白沙",g:"109.358586,19.216056|12"},{n:"保亭",g:"109.656113,18.597592|12"},{n:"昌江",g:"109.0113,19.222483|12"},{n:"儋州",g:"109.413973,19.571153|13"},{n:"澄迈",g:"109.996736,19.693135|13"},{n:"东方",g:"108.85101,18.998161|13"},{n:"定安",g:"110.32009,19.490991|13"},{n:"琼海",g:"110.414359,19.21483|13"},{n:"琼中",g:"109.861849,19.039771|12"},{n:"乐东",g:"109.062698,18.658614|12"},{n:"临高",g:"109.724101,19.805922|13"},{n:"陵水",g:"109.948661,18.575985|12"},{n:"三亚",g:"109.522771,18.257776|12"},{n:"屯昌",g:"110.063364,19.347749|13"},{n:"万宁",g:"110.292505,18.839886|13"},{n:"文昌",g:"110.780909,19.750947|13"},{n:"五指山",g:"109.51775,18.831306|13"}]},{n:"河北",g:"115.661434,38.61384|7",cities:[{n:"石家庄",g:"114.522082,38.048958|12"},{n:"保定",g:"115.49481,38.886565|13"},{n:"沧州",g:"116.863806,38.297615|13"},{n:"承德",g:"117.933822,40.992521|14"},{n:"邯郸",g:"114.482694,36.609308|13"},{n:"衡水",g:"115.686229,37.746929|13"},{n:"廊坊",g:"116.703602,39.518611|13"},{n:"秦皇岛",g:"119.604368,39.945462|12"},{n:"唐山",g:"118.183451,39.650531|13"},{n:"邢台",g:"114.520487,37.069531|13"},{n:"张家口",g:"114.893782,40.811188|13"}]},{n:"河南",g:"113.486804,34.157184|7",cities:[{n:"郑州",g:"113.649644,34.75661|12"},{n:"安阳",g:"114.351807,36.110267|12"},{n:"鹤壁",g:"114.29777,35.755426|13"},{n:"焦作",g:"113.211836,35.234608|13"},{n:"开封",g:"114.351642,34.801854|13"},{n:"洛阳",g:"112.447525,34.657368|12"},{n:"漯河",g:"114.046061,33.576279|13"},{n:"南阳",g:"112.542842,33.01142|13"},{n:"平顶山",g:"113.300849,33.745301|13"},{n:"濮阳",g:"115.026627,35.753298|12"},{n:"三门峡",g:"111.181262,34.78332|13"},{n:"商丘",g:"115.641886,34.438589|13"},{n:"新乡",g:"113.91269,35.307258|13"},{n:"信阳",g:"114.085491,32.128582|13"},{n:"许昌",g:"113.835312,34.02674|13"},{n:"周口",g:"114.654102,33.623741|13"},{n:"驻马店",g:"114.049154,32.983158|13"}]},{n:"黑龙江",g:"128.047414,47.356592|6",cities:[{n:"哈尔滨",g:"126.657717,45.773225|12"},{n:"大庆",g:"125.02184,46.596709|12"},{n:"大兴安岭地区",g:"124.196104,51.991789|10"},{n:"鹤岗",g:"130.292472,47.338666|13"},{n:"黑河",g:"127.50083,50.25069|14"},{n:"鸡西",g:"130.941767,45.32154|13"},{n:"佳木斯",g:"130.284735,46.81378|12"},{n:"牡丹江",g:"129.608035,44.588521|13"},{n:"七台河",g:"131.019048,45.775005|14"},{n:"齐齐哈尔",g:"123.987289,47.3477|13"},{n:"双鸭山",g:"131.171402,46.655102|13"},{n:"绥化",g:"126.989095,46.646064|13"},{n:"伊春",g:"128.910766,47.734685|14"}]},{n:"湖北",g:"112.410562,31.209316|8",cities:[{n:"武汉",g:"114.3162,30.581084|12"},{n:"鄂州",g:"114.895594,30.384439|14"},{n:"恩施",g:"109.517433,30.308978|14"},{n:"黄冈",g:"114.906618,30.446109|14"},{n:"黄石",g:"115.050683,30.216127|13"},{n:"荆门",g:"112.21733,31.042611|13"},{n:"荆州",g:"112.241866,30.332591|12"},{n:"潜江",g:"112.768768,30.343116|13"},{n:"神农架林区",g:"110.487231,31.595768|13"},{n:"十堰",g:"110.801229,32.636994|13"},{n:"随州",g:"113.379358,31.717858|13"},{n:"天门",g:"113.12623,30.649047|13"},{n:"仙桃",g:"113.387448,30.293966|13"},{n:"咸宁",g:"114.300061,29.880657|13"},{n:"襄阳",g:"112.176326,32.094934|12"},{n:"孝感",g:"113.935734,30.927955|13"},{n:"宜昌",g:"111.310981,30.732758|13"}]},{n:"湖南",g:"111.720664,27.695864|7",cities:[{n:"长沙",g:"112.979353,28.213478|12"},{n:"常德",g:"111.653718,29.012149|12"},{n:"郴州",g:"113.037704,25.782264|13"},{n:"衡阳",g:"112.583819,26.898164|13"},{n:"怀化",g:"109.986959,27.557483|13"},{n:"娄底",g:"111.996396,27.741073|13"},{n:"邵阳",g:"111.461525,27.236811|13"},{n:"湘潭",g:"112.935556,27.835095|13"},{n:"湘西州",g:"109.745746,28.317951|14"},{n:"益阳",g:"112.366547,28.588088|13"},{n:"永州",g:"111.614648,26.435972|13"},{n:"岳阳",g:"113.146196,29.378007|13"},{n:"张家界",g:"110.48162,29.124889|13"},{n:"株洲",g:"113.131695,27.827433|13"}]},{n:"江苏",g:"119.368489,33.013797|8",cities:[{n:"南京",g:"118.778074,32.057236|12"},{n:"常州",g:"119.981861,31.771397|12"},{n:"淮安",g:"119.030186,33.606513|12"},{n:"连云港",g:"119.173872,34.601549|12"},{n:"南通",g:"120.873801,32.014665|12"},{n:"苏州",g:"120.619907,31.317987|12"},{n:"宿迁",g:"118.296893,33.95205|13"},{n:"泰州",g:"119.919606,32.476053|13"},{n:"无锡",g:"120.305456,31.570037|12"},{n:"徐州",g:"117.188107,34.271553|12"},{n:"盐城",g:"120.148872,33.379862|12"},{n:"扬州",g:"119.427778,32.408505|13"},{n:"镇江",g:"119.455835,32.204409|13"}]},{n:"江西",g:"115.676082,27.757258|7",cities:[{n:"南昌",g:"115.893528,28.689578|12"},{n:"抚州",g:"116.360919,27.954545|13"},{n:"赣州",g:"114.935909,25.845296|13"},{n:"吉安",g:"114.992039,27.113848|13"},{n:"景德镇",g:"117.186523,29.303563|12"},{n:"九江",g:"115.999848,29.71964|13"},{n:"萍乡",g:"113.859917,27.639544|13"},{n:"上饶",g:"117.955464,28.457623|13"},{n:"新余",g:"114.947117,27.822322|13"},{n:"宜春",g:"114.400039,27.81113|13"},{n:"鹰潭",g:"117.03545,28.24131|13"}]},{n:"吉林",g:"126.262876,43.678846|7",cities:[{n:"长春",g:"125.313642,43.898338|12"},{n:"白城",g:"122.840777,45.621086|13"},{n:"白山",g:"126.435798,41.945859|13"},{n:"吉林",g:"126.564544,43.871988|12"},{n:"辽源",g:"125.133686,42.923303|13"},{n:"四平",g:"124.391382,43.175525|12"},{n:"松原",g:"124.832995,45.136049|13"},{n:"通化",g:"125.94265,41.736397|13"},{n:"延边",g:"129.485902,42.896414|13"}]},{n:"辽宁",g:"122.753592,41.6216|8",cities:[{n:"沈阳",g:"123.432791,41.808645|12"},{n:"鞍山",g:"123.007763,41.118744|13"},{n:"本溪",g:"123.778062,41.325838|12"},{n:"朝阳",g:"120.446163,41.571828|13"},{n:"大连",g:"121.593478,38.94871|12"},{n:"丹东",g:"124.338543,40.129023|12"},{n:"抚顺",g:"123.92982,41.877304|12"},{n:"阜新",g:"121.660822,42.01925|14"},{n:"葫芦岛",g:"120.860758,40.74303|13"},{n:"锦州",g:"121.147749,41.130879|13"},{n:"辽阳",g:"123.172451,41.273339|14"},{n:"盘锦",g:"122.073228,41.141248|13"},{n:"铁岭",g:"123.85485,42.299757|13"},{n:"营口",g:"122.233391,40.668651|13"}]},{n:"内蒙古",g:"114.415868,43.468238|5",cities:[{n:"呼和浩特",g:"111.660351,40.828319|12"},{n:"阿拉善盟",g:"105.695683,38.843075|14"},{n:"包头",g:"109.846239,40.647119|12"},{n:"巴彦淖尔",g:"107.423807,40.76918|12"},{n:"赤峰",g:"118.930761,42.297112|12"},{n:"鄂尔多斯",g:"109.993706,39.81649|12"},{n:"呼伦贝尔",g:"119.760822,49.201636|12"},{n:"通辽",g:"122.260363,43.633756|12"},{n:"乌海",g:"106.831999,39.683177|13"},{n:"乌兰察布",g:"113.112846,41.022363|12"},{n:"锡林郭勒盟",g:"116.02734,43.939705|11"},{n:"兴安盟",g:"122.048167,46.083757|11"}]},{n:"宁夏",g:"106.155481,37.321323|8",cities:[{n:"银川",g:"106.206479,38.502621|12"},{n:"固原",g:"106.285268,36.021523|13"},{n:"石嘴山",g:"106.379337,39.020223|13"},{n:"吴忠",g:"106.208254,37.993561|14"},{n:"中卫",g:"105.196754,37.521124|14"}]},{n:"青海",g:"96.202544,35.499761|7",cities:[{n:"西宁",g:"101.767921,36.640739|12"},{n:"果洛州",g:"100.223723,34.480485|11"},{n:"海东地区",g:"102.085207,36.51761|11"},{n:"海北州",g:"100.879802,36.960654|11"},{n:"海南州",g:"100.624066,36.284364|11"},{n:"海西州",g:"97.342625,37.373799|11"},{n:"黄南州",g:"102.0076,35.522852|11"},{n:"玉树州",g:"97.013316,33.00624|14"}]},{n:"山东",g:"118.527663,36.09929|8",cities:[{n:"济南",g:"117.024967,36.682785|12"},{n:"滨州",g:"117.968292,37.405314|12"},{n:"东营",g:"118.583926,37.487121|12"},{n:"德州",g:"116.328161,37.460826|12"},{n:"菏泽",g:"115.46336,35.26244|13"},{n:"济宁",g:"116.600798,35.402122|13"},{n:"莱芜",g:"117.684667,36.233654|13"},{n:"聊城",g:"115.986869,36.455829|12"},{n:"临沂",g:"118.340768,35.072409|12"},{n:"青岛",g:"120.384428,36.105215|12"},{n:"日照",g:"119.50718,35.420225|12"},{n:"泰安",g:"117.089415,36.188078|13"},{n:"威海",g:"122.093958,37.528787|13"},{n:"潍坊",g:"119.142634,36.716115|12"},{n:"烟台",g:"121.309555,37.536562|12"},{n:"枣庄",g:"117.279305,34.807883|13"},{n:"淄博",g:"118.059134,36.804685|12"}]},{n:"山西",g:"112.515496,37.866566|7",cities:[{n:"太原",g:"112.550864,37.890277|12"},{n:"长治",g:"113.120292,36.201664|12"},{n:"大同",g:"113.290509,40.113744|12"},{n:"晋城",g:"112.867333,35.499834|13"},{n:"晋中",g:"112.738514,37.693362|13"},{n:"临汾",g:"111.538788,36.099745|13"},{n:"吕梁",g:"111.143157,37.527316|14"},{n:"朔州",g:"112.479928,39.337672|13"},{n:"忻州",g:"112.727939,38.461031|12"},{n:"阳泉",g:"113.569238,37.869529|13"},{n:"运城",g:"111.006854,35.038859|13"}]},{n:"陕西",g:"109.503789,35.860026|7",cities:[{n:"西安",g:"108.953098,34.2778|12"},{n:"安康",g:"109.038045,32.70437|13"},{n:"宝鸡",g:"107.170645,34.364081|12"},{n:"汉中",g:"107.045478,33.081569|13"},{n:"商洛",g:"109.934208,33.873907|13"},{n:"铜川",g:"108.968067,34.908368|13"},{n:"渭南",g:"109.483933,34.502358|13"},{n:"咸阳",g:"108.707509,34.345373|13"},{n:"延安",g:"109.50051,36.60332|13"},{n:"榆林",g:"109.745926,38.279439|12"}]},{n:"四川",g:"102.89916,30.367481|7",cities:[{n:"成都",g:"104.067923,30.679943|12"},{n:"阿坝州",g:"102.228565,31.905763|15"},{n:"巴中",g:"106.757916,31.869189|14"},{n:"达州",g:"107.494973,31.214199|14"},{n:"德阳",g:"104.402398,31.13114|13"},{n:"甘孜州",g:"101.969232,30.055144|15"},{n:"广安",g:"106.63572,30.463984|13"},{n:"广元",g:"105.819687,32.44104|13"},{n:"乐山",g:"103.760824,29.600958|13"},{n:"凉山州",g:"102.259591,27.892393|14"},{n:"泸州",g:"105.44397,28.89593|14"},{n:"南充",g:"106.105554,30.800965|13"},{n:"眉山",g:"103.84143,30.061115|13"},{n:"绵阳",g:"104.705519,31.504701|12"},{n:"内江",g:"105.073056,29.599462|13"},{n:"攀枝花",g:"101.722423,26.587571|14"},{n:"遂宁",g:"105.564888,30.557491|12"},{n:"雅安",g:"103.009356,29.999716|13"},{n:"宜宾",g:"104.633019,28.769675|13"},{n:"资阳",g:"104.63593,30.132191|13"},{n:"自贡",g:"104.776071,29.359157|13"}]},{n:"西藏",g:"89.137982,31.367315|6",cities:[{n:"拉萨",g:"91.111891,29.662557|13"},{n:"阿里地区",g:"81.107669,30.404557|11"},{n:"昌都地区",g:"97.185582,31.140576|15"},{n:"林芝地区",g:"94.349985,29.666941|11"},{n:"那曲地区",g:"92.067018,31.48068|14"},{n:"日喀则地区",g:"88.891486,29.269023|14"},{n:"山南地区",g:"91.750644,29.229027|11"}]},{n:"新疆",g:"85.614899,42.127001|6",cities:[{n:"乌鲁木齐",g:"87.564988,43.84038|12"},{n:"阿拉尔",g:"81.291737,40.61568|13"},{n:"阿克苏地区",g:"80.269846,41.171731|12"},{n:"阿勒泰地区",g:"88.137915,47.839744|13"},{n:"巴音郭楞",g:"86.121688,41.771362|12"},{n:"博尔塔拉州",g:"82.052436,44.913651|11"},{n:"昌吉州",g:"87.296038,44.007058|13"},{n:"哈密地区",g:"93.528355,42.858596|13"},{n:"和田地区",g:"79.930239,37.116774|13"},{n:"喀什地区",g:"75.992973,39.470627|12"},{n:"克拉玛依",g:"84.88118,45.594331|13"},{n:"克孜勒苏州",g:"76.137564,39.750346|11"},{n:"石河子",g:"86.041865,44.308259|13"},{n:"塔城地区",g:"82.974881,46.758684|12"},{n:"图木舒克",g:"79.198155,39.889223|13"},{n:"吐鲁番地区",g:"89.181595,42.96047|13"},{n:"五家渠",g:"87.565449,44.368899|13"},{n:"伊犁州",g:"81.297854,43.922248|11"}]},{n:"云南",g:"101.592952,24.864213|7",cities:[{n:"昆明",g:"102.714601,25.049153|12"},{n:"保山",g:"99.177996,25.120489|13"},{n:"楚雄州",g:"101.529382,25.066356|13"},{n:"大理州",g:"100.223675,25.5969|14"},{n:"德宏州",g:"98.589434,24.44124|14"},{n:"迪庆州",g:"99.713682,27.831029|14"},{n:"红河州",g:"103.384065,23.367718|11"},{n:"丽江",g:"100.229628,26.875351|13"},{n:"临沧",g:"100.092613,23.887806|14"},{n:"怒江州",g:"98.859932,25.860677|14"},{n:"普洱",g:"100.980058,22.788778|14"},{n:"曲靖",g:"103.782539,25.520758|12"},{n:"昭通",g:"103.725021,27.340633|13"},{n:"文山",g:"104.089112,23.401781|14"},{n:"西双版纳",g:"100.803038,22.009433|13"},{n:"玉溪",g:"102.545068,24.370447|13"}]},{n:"浙江",g:"119.957202,29.159494|8",cities:[{n:"杭州",g:"120.219375,30.259244|12"},{n:"湖州",g:"120.137243,30.877925|12"},{n:"嘉兴",g:"120.760428,30.773992|13"},{n:"金华",g:"119.652576,29.102899|12"},{n:"丽水",g:"119.929576,28.4563|13"},{n:"宁波",g:"121.579006,29.885259|12"},{n:"衢州",g:"118.875842,28.95691|12"},{n:"绍兴",g:"120.592467,30.002365|13"},{n:"台州",g:"121.440613,28.668283|13"},{n:"温州",g:"120.690635,28.002838|12"},{n:"舟山",g:"122.169872,30.03601|13"}]}],other:[{n:"香港",g:"114.186124,22.293586|11"},{n:"澳门",g:"113.557519,22.204118|13"},{n:"台湾",g:"120.961454,23.80406|8"}]};function a(t){var e=t.split("|");return e[0]=e[0].split(","),{lng:parseFloat(e[0][0]),lat:parseFloat(e[0][1])}}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var i={getProvinceNameByCityName:function(t){for(var e=r.provinces,n=0;n<e.length;n++)for(var i=e[n].n,o=e[n].cities,a=0;a<o.length;a++)if(o[a].n==t)return i;return null},getCenterByCityName:function(t){t=t.replace("市","");for(var e=0;e<r.municipalities.length;e++)if(r.municipalities[e].n==t)return a(r.municipalities[e].g);for(e=0;e<r.other.length;e++)if(r.other[e].n==t)return a(r.other[e].g);var n=r.provinces;for(e=0;e<n.length;e++){if(n[e].n==t)return a(n[e].g);for(var i=n[e].cities,o=0;o<i.length;o++)if(i[o].n==t)return a(i[o].g)}return null}},e=function(t,e,n){return e&&o(t.prototype,e),n&&o(t,n),t};function o(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function h(t,e,n){null===t&&(t=Function.prototype);var i=Object.getOwnPropertyDescriptor(t,e);if(void 0===i){var o=Object.getPrototypeOf(t);return null===o?void 0:h(o,e,n)}if("value"in i)return i.value;var a=i.get;return void 0!==a?a.call(n):void 0}function l(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function u(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}var b=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var n=[],i=!0,o=!1,a=void 0;try{for(var r,s=t[Symbol.iterator]();!(i=(r=s.next()).done)&&(n.push(r.value),!e||n.length!==e);i=!0);}catch(t){o=!0,a=t}finally{try{!i&&s.return&&s.return()}finally{if(o)throw a}}return n}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")};function T(t,e){n.bind(this)(),this._options=e||{},this._data=[],t&&this.add(t)}(T.prototype=Object.create(n.prototype)).add=function(t,e){if(Array.isArray(t)){for(var n=0,i=t.length;n<i;n++)if(t[n]){if(t[n].time&&14==t[n].time.length&&"20"==t[n].time.substr(0,2)){var o=t[n].time;t[n].time=new Date(o.substr(0,4)+"-"+o.substr(4,2)+"-"+o.substr(6,2)+" "+o.substr(8,2)+":"+o.substr(10,2)+":"+o.substr(12,2)).getTime()}this._data.push(t[n])}}else{if(!(t instanceof Object))throw new Error("Unknown dataType");this._data.push(t)}this._dataCache=JSON.parse(JSON.stringify(this._data))},T.prototype.reset=function(){this._data=JSON.parse(JSON.stringify(this._dataCache))},T.prototype.get=function(t){t=t||{};new Date;var e=this._data;new Date;if(t.filter){for(var n=[],i=0;i<e.length;i++)t.filter(e[i])&&n.push(e[i]);e=n}return t.transferCoordinate&&(e=this.transferCoordinate(e,t.transferCoordinate,t.fromColumn,t.toColumn)),e},T.prototype.set=function(t){this._set(t),this._trigger("change")},T.prototype._set=function(t){this.clear(),this.add(t)},T.prototype.clear=function(t){this._data=[]},T.prototype.remove=function(t){},T.prototype.update=function(t,e){for(var n=this._data,i=0;i<n.length;i++)if(e){var o=!0;for(var a in e)n[i][a]!=e[a]&&(o=!1);o&&t&&t(n[i])}else t&&t(n[i]);this._dataCache=JSON.parse(JSON.stringify(this._data)),this._trigger("change")},T.prototype.transferCoordinate=function(t,r,e,n){n=n||"_coordinates",e=e||"coordinates";for(var i=0;i<t.length;i++){var o=t[i].geometry,a=o[e];switch(o.type){case"Point":o[n]=r(a);break;case"LineString":for(var s=[],h=0;h<a.length;h++)s.push(r(a[h]));o[n]=s;break;case"MultiLineString":case"Polygon":s=c(a);o[n]=s;break;case"MultiPolygon":s=[];for(var l=0;l<a.length;l++){var u=c(u=a[l]);s.push(u)}o[n]=s}}function c(t){for(var e=[],n=0;n<t.length;n++){for(var i=t[n],o=[],a=0;a<i.length;a++)o.push(r(i[a]));e.push(o)}return e}return t},T.prototype.initGeometry=function(e){e?this._data.forEach(function(t){t.geometry=e(t)}):this._data.forEach(function(t){if(!t.geometry)if(t.lng&&t.lat)t.geometry={type:"Point",coordinates:[t.lng,t.lat]};else if(t.city){var e=i.getCenterByCityName(t.city);e&&(t.geometry={type:"Point",coordinates:[e.lng,e.lat]})}})},T.prototype.getMax=function(t){var e=this._data;if(e&&!(e.length<=0)){for(var n=parseFloat(e[0][t]),i=1;i<e.length;i++){var o=parseFloat(e[i][t]);n<o&&(n=o)}return n}},T.prototype.getSum=function(t){var e=this._data;if(e&&!(e.length<=0)){for(var n=0,i=0;i<e.length;i++)e[i][t]&&(n+=parseFloat(e[i][t]));return n}},T.prototype.getMin=function(t){var e=this._data;if(e&&!(e.length<=0)){for(var n=parseFloat(e[0][t]),i=1;i<e.length;i++){var o=parseFloat(e[i][t]);o<n&&(n=o)}return n}},T.prototype.getUnique=function(t){if((i=this._data)&&!(i.length<=0)){for(var e={},n=1;n<i.length;n++)e[i[n][t]]=!0;var i=[];for(var o in e)i.push(o);return i}};var x={drawDataSet:function(t,e,n){for(var i=e instanceof T?e.get():e,o=0,a=i.length;o<a;o++){var r=i[o];this.draw(t,r,n)}},draw:function(t,e,n){var i=e.geometry.type,o=e.geometry._coordinates||e.geometry.coordinates,a=e.symbol||n.symbol||"circle";switch(i){case"Point":var r=e._size||e.size||n._size||n.size||5;"circle"===a?("Point"===n.bigData&&t.moveTo(o[0],o[1]),t.arc(o[0],o[1],r,0,2*Math.PI)):"rect"===a?t.rect(o[0]-r/2,o[1]-r/2,r,r):"honeycomb"===a&&function(t,e,n,i){for(var o=0;o<6;o++){var a=(r={x:e,y:n},s=i,void 0,h=60*o+30,l=Math.PI/180*h,[r.x+s*Math.cos(l),r.y+s*Math.sin(l)]);t.lineTo(a[0],a[1])}var r,s,h,l}(t,o[0],o[1],r);break;case"LineString":this.drawLineString(t,o);break;case"MultiLineString":for(var s=0;s<o.length;s++){var h=o[s];this.drawLineString(t,h)}break;case"Polygon":this.drawPolygon(t,o);break;case"MultiPolygon":for(s=0;s<o.length;s++){var l=o[s];if(this.drawPolygon(t,l),n.multiPolygonDraw){var u=n.multiPolygonDraw();if(u)return u}}break;default:console.error("type"+i+"is not support now!")}},drawLineString:function(t,e){for(var n=0;n<e.length;n++){var i=e[n][0],o=e[n][1];0==n?t.moveTo(i,o):t.lineTo(i,o)}},drawPolygon:function(t,e){t.beginPath();for(var n=0;n<e.length;n++){var i=e[n];t.moveTo(i[0][0],i[0][1]);for(var o=1;o<i.length;o++)t.lineTo(i[o][0],i[o][1]);t.lineTo(i[0][0],i[0][1]),t.closePath()}}},c={draw:function(t,e,n){var i=e instanceof T?e.get():e;for(var o in t.save(),n)t[o]=n[o];if(n.bigData){t.save(),t.beginPath();for(var a=0,r=i.length;a<r;a++){var s=i[a];x.draw(t,s,n)}"Point"==(h=n.bigData)||"Polygon"==h||"MultiPolygon"==h?(t.fill(),t.lineDash&&t.setLineDash(t.lineDash),s.lineDash&&t.setLineDash(s.lineDash),(s.strokeStyle||n.strokeStyle)&&n.lineWidth&&t.stroke()):"LineString"!=h&&"MultiLineString"!=h||t.stroke(),t.restore()}else for(a=0,r=i.length;a<r;a++){s=i[a];t.save(),(s.fillStyle||s._fillStyle)&&(t.fillStyle=s.fillStyle||s._fillStyle),(s.strokeStyle||s._strokeStyle)&&(t.strokeStyle=s.strokeStyle||s._strokeStyle),t.lineDash&&t.setLineDash(t.lineDash),s.lineDash&&t.setLineDash(s.lineDash);var h=s.geometry.type;t.beginPath(),n.multiPolygonDraw=function(){t.fill(),(s.strokeStyle||n.strokeStyle)&&n.lineWidth&&t.stroke()},x.draw(t,s,n),"Point"==h||"Polygon"==h||"MultiPolygon"==h?(t.fill(),(s.strokeStyle||n.strokeStyle)&&n.lineWidth&&t.stroke()):"LineString"!=h&&"MultiLineString"!=h||((s.lineWidth||s._lineWidth)&&(t.lineWidth=s.lineWidth||s._lineWidth),t.stroke()),t.restore()}t.restore()}};function _(t,e){if("undefined"!=typeof document){var n=document.createElement("canvas");t&&(n.width=t),e&&(n.height=e)}return n}function D(t){t=t||{},this.gradient=t.gradient||{.25:"rgba(0, 0, 255, 1)",.55:"rgba(0, 255, 0, 1)",.85:"rgba(255, 255, 0, 1)",1:"rgba(255, 0, 0, 1)"},this.maxSize=t.maxSize||35,this.minSize=t.minSize||0,this.max=t.max||100,this.min=t.min||0,this.initPalette()}D.prototype.setMax=function(t){this.max=t||100},D.prototype.setMin=function(t){this.min=t||0},D.prototype.setMaxSize=function(t){this.maxSize=t||35},D.prototype.setMinSize=function(t){this.minSize=t||0},D.prototype.initPalette=function(){var t=this.gradient,e=new _(256,1),n=this.paletteCtx=e.getContext("2d"),i=n.createLinearGradient(0,0,256,1);for(var o in t)i.addColorStop(parseFloat(o),t[o]);n.fillStyle=i,n.fillRect(0,0,256,1)},D.prototype.getColor=function(t){var e=this.getImageData(t);return"rgba("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]/256+")"},D.prototype.getImageData=function(t){var e=this.paletteCtx.getImageData(0,0,256,1).data;if(void 0===t)return e;var n=this.max,i=this.min;n<t&&(t=n),t<i&&(t=i);var o=4*Math.floor((t-i)/(n-i)*255);return[e[o],e[1+o],e[2+o],e[3+o]]},D.prototype.getSize=function(t){var e=this.max,n=this.min,i=this.maxSize,o=this.minSize;return e<t&&(t=e),t<n&&(t=n),n<e?o+(t-n)/(e-n)*(i-o):i},D.prototype.getLegend=function(t){var e=this.gradient,n=t.width||20,i=t.height||180,o=new _(n,i),a=o.getContext("2d"),r=a.createLinearGradient(0,i,0,0);for(var s in e)r.addColorStop(parseFloat(s),e[s]);return a.fillStyle=r,a.fillRect(0,0,n,i),o};var p=("undefined"==typeof window?{}:window).devicePixelRatio||1;function w(t){return t.max||100}function k(t){return t.min||0}function v(a,t,r){var s=w(r),e=k(r),n=r._size;null==n&&null==(n=r.size)&&(n=13);var i,o,h,l,u,c=new D({gradient:r.gradient,max:s,min:e}),p=(l=new _(2*(h=(i=n)+(o=i/2)),2*h),(u=l.getContext("2d")).shadowBlur=o,u.shadowColor="black",u.shadowOffsetX=u.shadowOffsetY=1e4,u.beginPath(),u.arc(h-1e4,h-1e4,i,0,2*Math.PI,!0),u.closePath(),u.fill(),l),v=p.width/2,d=p.height/2,g=t,f={};for(var m in g.forEach(function(t,e){var n=void 0===t.count?1:t.count,i=Math.min(1,n/s).toFixed(2);f[i]=f[i]||[],f[i].push(t)}),f)if(!isNaN(m)){var y=f[m];a.beginPath(),r.withoutAlpha||(a.globalAlpha=m),a.strokeStyle=c.getColor(m*s),y.forEach(function(t,e){if(t.geometry){var n=t.geometry._coordinates||t.geometry.coordinates,i=t.geometry.type;if("Point"===i){var o=void 0===t.count?1:t.count;a.globalAlpha=o/s,a.drawImage(p,n[0]-v,n[1]-d)}else if("LineString"===i){o=void 0===t.count?1:t.count;a.globalAlpha=o/s,a.beginPath(),x.draw(a,t,r),a.stroke()}}})}}var d={draw:function(t,e,n){if(!(t.canvas.width<=0||t.canvas.height<=0)){var i=n.strength||.3;t.strokeStyle="rgba(0,0,0,"+i+")";var o=new _(t.canvas.width,t.canvas.height),a=o.getContext("2d");a.scale(p,p),n=n||{};var r=e instanceof T?e.get():e;t.save();var s=new D({gradient:n.gradient});if(v(a,r,n),!n.absolute){var h=a.getImageData(0,0,t.canvas.width,t.canvas.height);!function(t,e,n){var i=w(n),o=k(n),a=i-o,r=0,s=1024;(c=n.range||null)&&2===c.length&&(r=(c[0]-o)/a*1024),c&&2===c.length&&(s=(c[1]-o)/a*1024);for(var h,l=n.maxOpacity||.8,u=n.minOpacity||0,c=n.range,p=3,v=t.length;p<v;p+=4)h=4*t[p],t[p]/256>l&&(t[p]=256*l),t[p]/256<u&&(t[p]=256*u),h&&r<=h&&h<=s?(t[p-3]=e[h],t[p-2]=e[1+h],t[p-1]=e[2+h]):t[p]=0}(h.data,s.getImageData(),n),t.putImageData(h,0,0),t.restore()}o=s=null}}},g={draw:function(t,e,n){t.save();var i=e instanceof T?e.get():e,o={},a=n._size||n.size||50,r=!("enableCluster"in n)||n.enableCluster,s=n.offset||{x:0,y:0},h=new D({min:n.min||0,max:n.max||100,gradient:n.gradient});if(r){for(var l=0;l<i.length;l++){p=i[l].geometry._coordinates||i[l].geometry.coordinates;o[d=Math.floor((p[0]-s.x)/a)+","+Math.floor((p[1]-s.y)/a)]||(o[d]=0),o[d]+=~~(i[l].count||1)}for(var u in o)u=u.split(","),t.beginPath(),t.rect(u[0]*a+.5+s.x,u[1]*a+.5+s.y,a,a),t.fillStyle=h.getColor(o[u]),t.fill(),n.strokeStyle&&n.lineWidth&&t.stroke()}else{for(var c=0;c<i.length;c++){var p;o[d=(p=i[c].geometry._coordinates||i[c].geometry.coordinates).join(",")]=i[c].count||1}for(var v in o)v=v.split(","),t.beginPath(),t.rect(v[0]-a/2,v[1]-a/2,a,a),t.fillStyle=h.getColor(o[v]),t.fill(),n.strokeStyle&&n.lineWidth&&t.stroke()}if(n.label&&!1!==n.label.show)for(var d in t.fillStyle=n.label.fillStyle||"white",n.label.font&&(t.font=n.label.font),n.label.shadowColor&&(t.shadowColor=n.label.shadowColor),n.label.shadowBlur&&(t.shadowBlur=n.label.shadowBlur),o){var g=o[d=d.split(",")],f=t.measureText(g).width;r?t.fillText(g,d[0]*a+.5+s.x+a/2-f/2,d[1]*a+.5+s.y+a/2+5):t.fillText(g,d[0]-f/2,+d[1]+5)}t.restore()}};var f={draw:function(t,e,n){t.save();var i=e instanceof T?e.get():e;for(var o in n)t[o]=n[o];for(var a=n.offset||{x:10,y:10},r=n._size||n.size||40,s=2*(r=r/2/Math.sin(Math.PI/3))*Math.sin(Math.PI/3),h=1.5*r,l={},u=0;u<i.length;u++){var c=i[u].geometry._coordinates||i[u].geometry.coordinates,p=(c[1]-a.y)/h,v=Math.round(p),d=(c[0]-a.x)/s-(1&v?.5:0),g=Math.round(d),f=p-v;if(1<3*Math.abs(f)){var m=d-g,y=g+(d<g?-1:1)/2,x=v+(p<v?-1:1),_=d-y,w=p-x;_*_+w*w<m*m+f*f&&(g=y+(1&v?1:-1)/2,v=x)}var b=g+"-"+v,k=l[b];k?k.push(i[u]):((k=l[b]=[i[u]]).i=g,k.j=v,k.x=(g+(1&v?.5:0))*s,k.y=v*h)}var E,L,C,S,M=new D({max:n.max||100,maxSize:r,gradient:n.gradient});for(var o in l){var P=l[o];t.beginPath();for(var z=0;z<6;z++){var R=(E={x:P.x+a.x,y:P.y+a.y},L=r,void 0,C=60*z+30,S=Math.PI/180*C,[E.x+L*Math.cos(S),E.y+L*Math.sin(S)]);t.lineTo(R[0],R[1])}t.closePath();var A=0;for(u=0;u<P.length;u++)A+=P[u].count||1;P.count=A,t.fillStyle=M.getColor(A),t.fill(),n.strokeStyle&&n.lineWidth&&t.stroke()}if(n.label&&!1!==n.label.show)for(var o in t.fillStyle=n.label.fillStyle||"white",n.label.font&&(t.font=n.label.font),n.label.shadowColor&&(t.shadowColor=n.label.shadowColor),n.label.shadowBlur&&(t.shadowBlur=n.label.shadowBlur),l){var O=(P=l[o]).count;O=O<0?O.toFixed(2):~~O;var I=t.measureText(O).width;t.fillText(O,P.x+a.x-I/2,P.y+a.y+5)}t.restore()}};function m(t,e,n){var i=t.createShader(n);return t.shaderSource(i,e),t.compileShader(i),i}function C(t,e,n){var i=m(t,e,t.VERTEX_SHADER),o=m(t,n,t.FRAGMENT_SHADER),a=t.createProgram();return t.attachShader(a,i),t.attachShader(a,o),t.linkProgram(a),t.useProgram(a),a}function S(t){var e=document.createElement("canvas"),n=e.getContext("2d");return e.width=1,e.height=1,n.fillStyle=t,n.fillRect(0,0,1,1),n.getImageData(0,0,1,1).data}var M=["attribute vec4 a_Position;","void main() {","gl_Position = a_Position;","gl_PointSize = 30.0;","}"].join(""),z=["precision mediump float;","uniform vec4 u_FragColor;","void main() {","gl_FragColor = u_FragColor;","}"].join("");var y={draw:function(t,e,n){if(e){var i=C(t,M,z);t.enable(t.BLEND),t.blendFunc(t.SRC_ALPHA,t.ONE),t.clear(t.COLOR_BUFFER_BIT);var o=t.canvas.width/2,a=t.canvas.height/2,r=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,r);var s=t.getAttribLocation(i,"a_Position");t.vertexAttribPointer(s,2,t.FLOAT,!1,0,0),t.enableVertexAttribArray(s);var h=t.getUniformLocation(i,"u_FragColor"),l=S(n.strokeStyle||"red");t.uniform4f(h,l[0]/255,l[1]/255,l[2]/255,l[3]/255),t.lineWidth(n.lineWidth||1);for(var u=0,c=e.length;u<c;u++){for(var p=e[u].geometry._coordinates,v=[],d=0;d<p.length;d++){var g=p[d],f=(g[0]-o)/o,m=(a-g[1])/a;v.push(f,m)}var y=new Float32Array(v);t.bufferData(t.ARRAY_BUFFER,y,t.STATIC_DRAW),t.drawArrays(t.LINE_STRIP,0,p.length)}}}},R=["attribute vec4 a_Position;","attribute float a_PointSize;","void main() {","gl_Position = a_Position;","gl_PointSize = a_PointSize;","}"].join(""),A=["precision mediump float;","uniform vec4 u_FragColor;","void main() {","gl_FragColor = u_FragColor;","}"].join("");var O={draw:function(t,e,n){if(e){var i=C(t,R,A),o=t.getAttribLocation(i,"a_Position"),a=t.getAttribLocation(i,"a_PointSize"),r=t.getUniformLocation(i,"u_FragColor");t.clear(t.COLOR_BUFFER_BIT);for(var s=t.canvas.width/2,h=t.canvas.height/2,l=[],u=0,c=0;c<e.length;c++){var p=e[c].geometry._coordinates,v=(p[0]-s)/s,d=(h-p[1])/h;v<-1||1<v||d<-1||1<d||(l.push(v,d),u++)}var g=new Float32Array(l),f=u,m=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,m),t.bufferData(t.ARRAY_BUFFER,g,t.STATIC_DRAW),t.vertexAttribPointer(o,2,t.FLOAT,!1,0,0),t.enableVertexAttribArray(o),t.vertexAttrib1f(a,n._size);var y=S(n.fillStyle||"red");t.uniform4f(r,y[0]/255,y[1]/255,y[2]/255,y[3]/255),t.drawArrays(t.POINTS,0,f)}}};function I(t,e,n){n=n||2;var i,o,a,r,s,h,l,u=e&&e.length,c=u?e[0]*n:t.length,p=F(t,0,c,n,!0),v=[];if(!p)return v;if(u&&(p=function(t,e,n,i){var o,a,r,s,h,l=[];for(o=0,a=e.length;o<a;o++)r=e[o]*i,s=o<a-1?e[o+1]*i:t.length,(h=F(t,r,s,i,!1))===h.next&&(h.steiner=!0),l.push(V(h));for(l.sort(H),o=0;o<l.length;o++)q(l[o],n),n=B(n,n.next);return n}(t,e,p,n)),t.length>80*n){i=a=t[0],o=r=t[1];for(var d=n;d<c;d+=n)(s=t[d])<i&&(i=s),(h=t[d+1])<o&&(o=h),a<s&&(a=s),r<h&&(r=h);l=Math.max(a-i,r-o)}return U(p,v,n,i,o,l),v}function F(t,e,n,i,o){var a,r;if(o===0<it(t,e,n,i))for(a=e;a<n;a+=i)r=tt(a,t[a],t[a+1],r);else for(a=n-i;e<=a;a-=i)r=tt(a,t[a],t[a+1],r);return r&&J(r,r.next)&&(et(r),r=r.next),r}function B(t,e){if(!t)return t;e=e||t;var n,i=t;do{if(n=!1,i.steiner||!J(i,i.next)&&0!==G(i.prev,i,i.next))i=i.next;else{if(et(i),(i=e=i.prev)===i.next)return null;n=!0}}while(n||i!==e);return e}function U(t,e,n,i,o,a,r){if(t){!r&&a&&function(t,e,n,i){var o=t;for(;null===o.z&&(o.z=$(o.x,o.y,e,n,i)),o.prevZ=o.prev,o.nextZ=o.next,o=o.next,o!==t;);o.prevZ.nextZ=null,o.prevZ=null,function(t){var e,n,i,o,a,r,s,h,l=1;do{for(n=t,a=t=null,r=0;n;){for(r++,i=n,e=s=0;e<l&&(s++,i=i.nextZ);e++);for(h=l;0<s||0<h&&i;)0===s?(i=(o=i).nextZ,h--):0!==h&&i?n.z<=i.z?(n=(o=n).nextZ,s--):(i=(o=i).nextZ,h--):(n=(o=n).nextZ,s--),a?a.nextZ=o:t=o,o.prevZ=a,a=o;n=i}a.nextZ=null,l*=2}while(1<r)}(o)}(t,i,o,a);for(var s,h,l=t;t.prev!==t.next;)if(s=t.prev,h=t.next,a?j(t,i,o,a):Z(t))e.push(s.i/n),e.push(t.i/n),e.push(h.i/n),et(t),t=h.next,l=h.next;else if((t=h)===l){r?1===r?U(t=N(t,e,n),e,n,i,o,a,2):2===r&&W(t,e,n,i,o,a):U(B(t),e,n,i,o,a,1);break}}}function Z(t){var e=t.prev,n=t,i=t.next;if(0<=G(e,n,i))return!1;for(var o=t.next.next;o!==t.prev;){if(Y(e.x,e.y,n.x,n.y,i.x,i.y,o.x,o.y)&&0<=G(o.prev,o,o.next))return!1;o=o.next}return!0}function j(t,e,n,i){var o=t.prev,a=t,r=t.next;if(0<=G(o,a,r))return!1;for(var s=o.x<a.x?o.x<r.x?o.x:r.x:a.x<r.x?a.x:r.x,h=o.y<a.y?o.y<r.y?o.y:r.y:a.y<r.y?a.y:r.y,l=o.x>a.x?o.x>r.x?o.x:r.x:a.x>r.x?a.x:r.x,u=o.y>a.y?o.y>r.y?o.y:r.y:a.y>r.y?a.y:r.y,c=$(s,h,e,n,i),p=$(l,u,e,n,i),v=t.nextZ;v&&v.z<=p;){if(v!==t.prev&&v!==t.next&&Y(o.x,o.y,a.x,a.y,r.x,r.y,v.x,v.y)&&0<=G(v.prev,v,v.next))return!1;v=v.nextZ}for(v=t.prevZ;v&&v.z>=c;){if(v!==t.prev&&v!==t.next&&Y(o.x,o.y,a.x,a.y,r.x,r.y,v.x,v.y)&&0<=G(v.prev,v,v.next))return!1;v=v.prevZ}return!0}function N(t,e,n){var i=t;do{var o=i.prev,a=i.next.next;!J(o,a)&&Q(o,i,i.next,a)&&X(o,a)&&X(a,o)&&(e.push(o.i/n),e.push(i.i/n),e.push(a.i/n),et(i),et(i.next),i=t=a),i=i.next}while(i!==t);return i}function W(t,e,n,i,o,a){var r,s,h=t;do{for(var l=h.next.next;l!==h.prev;){if(h.i!==l.i&&(s=l,(r=h).next.i!==s.i&&r.prev.i!==s.i&&!function(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&Q(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(r,s)&&X(r,s)&&X(s,r)&&function(t,e){var n=t,i=!1,o=(t.x+e.x)/2,a=(t.y+e.y)/2;for(;n.y>a!=n.next.y>a&&o<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next,n!==t;);return i}(r,s))){var u=K(h,l);return h=B(h,h.next),u=B(u,u.next),U(h,e,n,i,o,a),void U(u,e,n,i,o,a)}l=l.next}h=h.next}while(h!==t)}function H(t,e){return t.x-e.x}function q(t,e){if(e=function(t,e){var n,i=e,o=t.x,a=t.y,r=-1/0;do{if(a<=i.y&&a>=i.next.y){var s=i.x+(a-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(s<=o&&r<s){if((r=s)===o){if(a===i.y)return i;if(a===i.next.y)return i.next}n=i.x<i.next.x?i:i.next}}i=i.next}while(i!==e);if(!n)return null;if(o===r)return n.prev;var h,l=n,u=n.x,c=n.y,p=1/0;i=n.next;for(;i!==l;)o>=i.x&&i.x>=u&&Y(a<c?o:r,a,u,c,a<c?r:o,a,i.x,i.y)&&((h=Math.abs(a-i.y)/(o-i.x))<p||h===p&&i.x>n.x)&&X(i,t)&&(n=i,p=h),i=i.next;return n}(t,e)){var n=K(e,t);B(n,n.next)}}function $(t,e,n,i,o){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)/o)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-i)/o)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function V(t){for(var e=t,n=t;e.x<n.x&&(n=e),(e=e.next)!==t;);return n}function Y(t,e,n,i,o,a,r,s){return 0<=(o-r)*(e-s)-(t-r)*(a-s)&&0<=(t-r)*(i-s)-(n-r)*(e-s)&&0<=(n-r)*(a-s)-(o-r)*(i-s)}function G(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function J(t,e){return t.x===e.x&&t.y===e.y}function Q(t,e,n,i){return!!(J(t,e)&&J(n,i)||J(t,i)&&J(n,e))||0<G(t,e,n)!=0<G(t,e,i)&&0<G(n,i,t)!=0<G(n,i,e)}function X(t,e){return G(t.prev,t,t.next)<0?0<=G(t,e,t.next)&&0<=G(t,t.prev,e):G(t,e,t.prev)<0||G(t,t.next,e)<0}function K(t,e){var n=new nt(t.i,t.x,t.y),i=new nt(e.i,e.x,e.y),o=t.next,a=e.prev;return(t.next=e).prev=t,(n.next=o).prev=n,(i.next=n).prev=i,(a.next=i).prev=a,i}function tt(t,e,n,i){var o=new nt(t,e,n);return i?(o.next=i.next,(o.prev=i).next.prev=o,i.next=o):(o.prev=o).next=o,o}function et(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function nt(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function it(t,e,n,i){for(var o=0,a=e,r=n-i;a<n;a+=i)o+=(t[r]-t[a])*(t[a+1]+t[r+1]),r=a;return o}I.deviation=function(t,e,n,i){var o=e&&e.length,a=o?e[0]*n:t.length,r=Math.abs(it(t,0,a,n));if(o)for(var s=0,h=e.length;s<h;s++){var l=e[s]*n,u=s<h-1?e[s+1]*n:t.length;r-=Math.abs(it(t,l,u,n))}var c=0;for(s=0;s<i.length;s+=3){var p=i[s]*n,v=i[s+1]*n,d=i[s+2]*n;c+=Math.abs((t[p]-t[d])*(t[1+v]-t[1+p])-(t[p]-t[v])*(t[1+d]-t[1+p]))}return 0===r&&0===c?0:Math.abs((c-r)/r)},I.flatten=function(t){for(var e=t[0][0].length,n={vertices:[],holes:[],dimensions:e},i=0,o=0;o<t.length;o++){for(var a=0;a<t[o].length;a++)for(var r=0;r<e;r++)n.vertices.push(t[o][a][r]);0<o&&(i+=t[o-1].length,n.holes.push(i))}return n};var ot=["attribute vec4 a_Position;","void main() {","gl_Position = a_Position;","gl_PointSize = 30.0;","}"].join(""),at=["precision mediump float;","uniform vec4 u_FragColor;","void main() {","gl_FragColor = u_FragColor;","}"].join("");var rt={draw:function(t,e,n){if(e){t.clear(t.COLOR_BUFFER_BIT),t.viewport(0,0,t.canvas.width,t.canvas.height);var i=C(t,ot,at);t.enable(t.BLEND),t.blendFunc(t.SRC_ALPHA,t.ONE);var o=t.canvas.width/2,a=t.canvas.height/2;t.bindBuffer(t.ARRAY_BUFFER,t.createBuffer()),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,t.createBuffer());var r=t.getAttribLocation(i,"a_Position");t.vertexAttribPointer(r,2,t.FLOAT,!1,0,0),t.enableVertexAttribArray(r);var s=t.getUniformLocation(i,"u_FragColor"),h=S(n.fillStyle||"red");t.uniform4f(s,h[0]/255,h[1]/255,h[2]/255,h[3]/255),t.lineWidth(n.lineWidth||1);for(var l=[],u=[],c=0,p=0,v=e.length;p<v;p++){var d=I.flatten(e[p].geometry._coordinates||e[p].geometry.coordinates),g=d.vertices;c=l.length/2;for(var f=0;f<g.length;f+=2)g[f]=(g[f]-o)/o,g[f+1]=(a-g[f+1])/a;65536<(l.length+g.length)/2&&(t.bufferData(t.ARRAY_BUFFER,new Float32Array(l),t.STATIC_DRAW),t.bufferData(t.ELEMENT_ARRAY_BUFFER,new Uint16Array(u),t.STATIC_DRAW),t.drawElements(t.TRIANGLES,u.length,t.UNSIGNED_SHORT,0),l.length=0,c=u.length=0);for(f=0;f<g.length;f++)l.push(g[f]);var m=I(g,d.holes,d.dimensions);for(f=0;f<m.length;f++)u.push(m[f]+c)}t.bufferData(t.ARRAY_BUFFER,new Float32Array(l),t.STATIC_DRAW),t.bufferData(t.ELEMENT_ARRAY_BUFFER,new Uint16Array(u),t.STATIC_DRAW),t.drawElements(t.TRIANGLES,u.length,t.UNSIGNED_SHORT,0),t.bindBuffer(t.ARRAY_BUFFER,null),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null)}}},st={draw:function(t,e,n){var i=e instanceof T?e.get():e;0<i.length&&("LineString"==i[0].geometry.type?y.draw(t,i,n):"Polygon"==i[0].geometry.type||"MultiPolygon"==i[0].geometry.type?rt.draw(t,i,n):O.draw(t,i,n))}};function ht(t,e,n){if(!t||!e)return null;function i(t){return 1-2*t+t*t}function o(t){return 2*t-2*t*t}function a(t){return t*t}var r,s,h,l,u,c,p=[],v=(n=n||40,0),d=0;if(void 0!==e){var g=parseFloat(t.lat),f=parseFloat(e.lat),m=parseFloat(t.lng),y=parseFloat(e.lng);for(m<y&&180<parseFloat(y-m)&&m<0&&(m=parseFloat(360+m),y=parseFloat(360+y)),c=0,s=f==g?(r=0,m-y):y==m?(r=Math.PI/2,g-f):(r=Math.atan((f-g)/(y-m)),(f-g)/Math.sin(r)),0==c&&(c=r+Math.PI/5),u=(h=s/2)*Math.cos(c)+m,l=h*Math.sin(c)+g,v=0;v<n+1;v++){var x=m*i(d)+u*o(d)+y*a(d),_=g*i(d)+l*o(d)+f*a(d),w=t.lng,b=e.lng;p.push([w<0&&0<b?x-360:x,_]),d+=1/n}return p}void 0!==p&&(p=[])}var lt={getPoints:function(t,e){e=e||{};for(var n=[],i=0;i<t.length-1;i++){var o=ht(t[i],t[i+1],e.count);o&&0<o.length&&(n=n.concat(o))}return n}};function ut(t){this.splitList=t||{other:1}}function ct(t){this.splitList=t||[{start:0,value:"red"}]}ut.prototype.get=function(t){var e=this.splitList,n=e.other;for(var i in e)if(t==i){n=e[i];break}return n},ut.prototype.generateByDataSet=function(t,e){var n=e||["rgba(255, 255, 0, 0.8)","rgba(253, 98, 104, 0.8)","rgba(255, 146, 149, 0.8)","rgba(255, 241, 193, 0.8)","rgba(110, 176, 253, 0.8)","rgba(52, 139, 251, 0.8)","rgba(17, 102, 252, 0.8)"],i=t.get();this.splitList={};for(var o=0,a=0;a<i.length&&(void 0===this.splitList[i[a].count]&&(this.splitList[i[a].count]=n[o],o++),!(n.length-1<=o));a++);this.splitList.other=n[n.length-1]},ut.prototype.getLegend=function(t){var e=this.splitList,n=document.createElement("div");n.style.cssText="background:#fff; padding: 5px; border: 1px solid #ccc;";var i="";for(var o in e)i+='<div style="line-height: 19px;" value="'+o+'"><span style="vertical-align: -2px; display: inline-block; width: 30px;height: 19px;background:'+e[o]+';"></span><span style="margin-left: 3px;">'+o+"<span></div>";return n.innerHTML=i,n},ct.prototype.get=function(t){for(var e=this.splitList,n=!1,i=0;i<e.length;i++)if((void 0===e[i].start||void 0!==e[i].start&&t>=e[i].start)&&(void 0===e[i].end||void 0!==e[i].end&&t<e[i].end)){n=e[i].value;break}return n},ct.prototype.generateByDataSet=function(t){var e=t.getMin("count"),n=t.getMax("count");this.generateByMinMax(e,n)},ct.prototype.generateByMinMax=function(t,e){var n=["rgba(255, 255, 0, 0.8)","rgba(253, 98, 104, 0.8)","rgba(255, 146, 149, 0.8)","rgba(255, 241, 193, 0.8)","rgba(110, 176, 253, 0.8)","rgba(52, 139, 251, 0.8)","rgba(17, 102, 252, 0.8)"],i=Number((e-t)/7);e=Number(e);var o=Number(t);this.splitList=[];for(var a=0;o<e;)this.splitList.push({start:o,end:o+i,value:n[a]}),a++,o+=i},ct.prototype.getLegend=function(t){this.splitList};var pt=(e(vt,[{key:"addLayer",value:function(t,e){if("baidu"==this.type)return new mapv.baiduMapLayer(this.map,dataSet,e)}},{key:"getMap",value:function(){return this.map}}]),vt);function vt(t,e,n){if(s(this,vt),!t||!e)return console.warn("id 和 type 为必填项"),!1;if("baidu"==e){if(!BMap)return console.warn("请先引入百度地图JS API"),!1}else console.warn("暂不支持你的地图类型");this.type=e;var i=n&&n.center?n.center:[106.962497,38.208726],o=n&&n.zoom?n.zoom:5,a=this.map=new BMap.Map(t,{enableMapClick:!1});a.centerAndZoom(new BMap.Point(i[0],i[1]),o),a.enableScrollWheelZoom(!0),a.setMapStyle({style:"light"})}function dt(t){this.options=t||{},this.paneName=this.options.paneName||"mapPane",this.context=this.options.context||"2d",this.zIndex=this.options.zIndex||0,this.mixBlendMode=this.options.mixBlendMode||null,this.enableMassClear=this.options.enableMassClear,this._map=t.map,this._lastDrawTime=null,this.show()}var gt="undefined"==typeof window?{}:window,ft=gt.BMap||gt.BMapGL;ft&&((dt.prototype=new ft.Overlay).initialize=function(t){this._map=t;var e=this.canvas=document.createElement("canvas");e.style.cssText="position:absolute;left:0;top:0;z-index:"+this.zIndex+";user-select:none;",e.style.mixBlendMode=this.mixBlendMode,this.adjustSize();var n=t.getPanes()[this.paneName];(n=n||t.getPanes().floatShadow).appendChild(e);var i=this;return t.addEventListener("resize",function(){i.adjustSize(),i._draw()}),t.addEventListener("update",function(){i._draw()}),this.options.updateImmediate&&setTimeout(function(){i._draw()},100),this.canvas},dt.prototype.adjustSize=function(){var t=this._map.getSize(),e=this.canvas,n=this.devicePixelRatio=gt.devicePixelRatio||1;e.width=t.width*n,e.height=t.height*n,"2d"==this.context&&e.getContext(this.context).scale(n,n),e.style.width=t.width+"px",e.style.height=t.height+"px"},dt.prototype.draw=function(){var t=this;this.options.updateImmediate?t._draw():(clearTimeout(t.timeoutID),t.timeoutID=setTimeout(function(){t._draw()},15))},dt.prototype._draw=function(){var t=this._map,e=t.getSize(),n=t.getCenter();if(n){var i=t.pointToOverlayPixel(n);this.canvas.style.left=i.x-e.width/2+"px",this.canvas.style.top=i.y-e.height/2+"px",this.dispatchEvent("draw"),this.options.update&&this.options.update.call(this)}},dt.prototype.getContainer=function(){return this.canvas},dt.prototype.show=function(){this.canvas||this._map.addOverlay(this),this.canvas.style.display="block"},dt.prototype.hide=function(){this.canvas.style.display="none"},dt.prototype.setZIndex=function(t){this.zIndex=t,this.canvas.style.zIndex=this.zIndex},dt.prototype.getZIndex=function(){return this.zIndex});var mt,yt,xt=xt||(mt=[],{getAll:function(){return mt},removeAll:function(){mt=[]},add:function(t){mt.push(t)},remove:function(t){var e=mt.indexOf(t);-1!==e&&mt.splice(e,1)},update:function(t,e){if(0===mt.length)return!1;var n=0;for(t=void 0!==t?t:xt.now();n<mt.length;)mt[n].update(t)||e?n++:mt.splice(n,1);return!0}});"undefined"==typeof window&&"undefined"!=typeof process?xt.now=function(){var t=process.hrtime();return 1e3*t[0]+t[1]/1e6}:"undefined"!=typeof window&&void 0!==window.performance&&void 0!==window.performance.now?xt.now=window.performance.now.bind(window.performance):void 0!==Date.now?xt.now=Date.now:xt.now=function(){return(new Date).getTime()},xt.Tween=function(t){var l,u=t,c={},p={},v={},d=1e3,g=0,f=!1,n=!1,m=!1,y=0,x=null,_=xt.Easing.Linear.None,w=xt.Interpolation.Linear,b=[],k=null,E=!1,L=null,C=null,e=null;this.to=function(t,e){return p=t,void 0!==e&&(d=e),this},this.start=function(t){for(var e in xt.add(this),E=!(n=!0),x=void 0!==t?t:xt.now(),x+=y,p){if(p[e]instanceof Array){if(0===p[e].length)continue;p[e]=[u[e]].concat(p[e])}void 0!==u[e]&&(c[e]=u[e],c[e]instanceof Array==!1&&(c[e]*=1),v[e]=c[e]||0)}return this},this.stop=function(){return n&&(xt.remove(this),n=!1,null!==e&&e.call(u,u),this.stopChainedTweens()),this},this.end=function(){return this.update(x+d),this},this.stopChainedTweens=function(){for(var t=0,e=b.length;t<e;t++)b[t].stop()},this.delay=function(t){return y=t,this},this.repeat=function(t){return g=t,this},this.repeatDelay=function(t){return l=t,this},this.yoyo=function(t){return f=t,this},this.easing=function(t){return _=t,this},this.interpolation=function(t){return w=t,this},this.chain=function(){return b=arguments,this},this.onStart=function(t){return k=t,this},this.onUpdate=function(t){return L=t,this},this.onComplete=function(t){return C=t,this},this.onStop=function(t){return e=t,this},this.update=function(t){var e,n,i;if(t<x)return!0;for(e in!1===E&&(null!==k&&k.call(u,u),E=!0),i=_(n=1<(n=(t-x)/d)?1:n),p)if(void 0!==c[e]){var o=c[e]||0,a=p[e];a instanceof Array?u[e]=w(a,i):("string"==typeof a&&(a="+"===a.charAt(0)||"-"===a.charAt(0)?o+parseFloat(a):parseFloat(a)),"number"==typeof a&&(u[e]=o+(a-o)*i))}if(null!==L&&L.call(u,i),1!==n)return!0;if(0<g){for(e in isFinite(g)&&g--,v){if("string"==typeof p[e]&&(v[e]=v[e]+parseFloat(p[e])),f){var r=v[e];v[e]=p[e],p[e]=r}c[e]=v[e]}return f&&(m=!m),x=void 0!==l?t+l:t+y,!0}null!==C&&C.call(u,u);for(var s=0,h=b.length;s<h;s++)b[s].start(x+d);return!1}},xt.Easing={Linear:{None:function(t){return t}},Quadratic:{In:function(t){return t*t},Out:function(t){return t*(2-t)},InOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)}},Cubic:{In:function(t){return t*t*t},Out:function(t){return--t*t*t+1},InOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)}},Quartic:{In:function(t){return t*t*t*t},Out:function(t){return 1- --t*t*t*t},InOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)}},Quintic:{In:function(t){return t*t*t*t*t},Out:function(t){return--t*t*t*t*t+1},InOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)}},Sinusoidal:{In:function(t){return 1-Math.cos(t*Math.PI/2)},Out:function(t){return Math.sin(t*Math.PI/2)},InOut:function(t){return.5*(1-Math.cos(Math.PI*t))}},Exponential:{In:function(t){return 0===t?0:Math.pow(1024,t-1)},Out:function(t){return 1===t?1:1-Math.pow(2,-10*t)},InOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))}},Circular:{In:function(t){return 1-Math.sqrt(1-t*t)},Out:function(t){return Math.sqrt(1- --t*t)},InOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)}},Elastic:{In:function(t){return 0===t?0:1===t?1:-Math.pow(2,10*(t-1))*Math.sin(5*(t-1.1)*Math.PI)},Out:function(t){return 0===t?0:1===t?1:Math.pow(2,-10*t)*Math.sin(5*(t-.1)*Math.PI)+1},InOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?-.5*Math.pow(2,10*(t-1))*Math.sin(5*(t-1.1)*Math.PI):.5*Math.pow(2,-10*(t-1))*Math.sin(5*(t-1.1)*Math.PI)+1}},Back:{In:function(t){return t*t*(2.70158*t-1.70158)},Out:function(t){return--t*t*(2.70158*t+1.70158)+1},InOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((1+e)*t-e)*.5:.5*((t-=2)*t*((1+e)*t+e)+2)}},Bounce:{In:function(t){return 1-xt.Easing.Bounce.Out(1-t)},Out:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},InOut:function(t){return t<.5?.5*xt.Easing.Bounce.In(2*t):.5*xt.Easing.Bounce.Out(2*t-1)+.5}}},xt.Interpolation={Linear:function(t,e){var n=t.length-1,i=n*e,o=Math.floor(i),a=xt.Interpolation.Utils.Linear;return e<0?a(t[0],t[1],i):1<e?a(t[n],t[n-1],n-i):a(t[o],t[n<o+1?n:o+1],i-o)},Bezier:function(t,e){for(var n=0,i=t.length-1,o=Math.pow,a=xt.Interpolation.Utils.Bernstein,r=0;r<=i;r++)n+=o(1-e,i-r)*o(e,r)*t[r]*a(i,r);return n},CatmullRom:function(t,e){var n=t.length-1,i=n*e,o=Math.floor(i),a=xt.Interpolation.Utils.CatmullRom;return t[0]===t[n]?(e<0&&(o=Math.floor(i=n*(1+e))),a(t[(o-1+n)%n],t[o],t[(o+1)%n],t[(o+2)%n],i-o)):e<0?t[0]-(a(t[0],t[0],t[1],t[1],-i)-t[0]):1<e?t[n]-(a(t[n],t[n],t[n-1],t[n-1],i-n)-t[n]):a(t[o?o-1:0],t[o],t[n<o+1?n:o+1],t[n<o+2?n:o+2],i-o)},Utils:{Linear:function(t,e,n){return(e-t)*n+t},Bernstein:function(t,e){var n=xt.Interpolation.Utils.Factorial;return n(t)/n(e)/n(t-e)},Factorial:(yt=[1],function(t){var e=1;if(yt[t])return yt[t];for(var n=t;1<n;n--)e*=n;return yt[t]=e}),CatmullRom:function(t,e,n,i,o){var a=.5*(n-t),r=.5*(i-e),s=o*o;return(2*e-2*n+a+r)*(o*s)+(-3*e+3*n-2*a-r)*s+a*o+e}}};var _t={},wt={draw:function(t,e,n){var i="http://huiyan.baidu.com/github/tools/gis-drawing/static/images/direction.png";n.arrow&&n.arrow.url&&(i=n.arrow.url),_t[i]||(_t[i]=null);var o=_t[i];if(!o){var a=Array.prototype.slice.call(arguments),r=new Image;return r.onload=function(){_t[i]=r,wt.draw.apply(null,a)},void(r.src=i)}var s=e instanceof T?e.get():e;for(var h in t.save(),n)t[h]=n[h];for(var l,u,c,p,v,d,g,f=[],m=null,y=0,x=s.length;y<x;y++){var _=s[y];t.save(),(_.fillStyle||_._fillStyle)&&(t.fillStyle=_.fillStyle||_._fillStyle),(_.strokeStyle||_._strokeStyle)&&(t.strokeStyle=_.strokeStyle||_._strokeStyle);var w=_.geometry.type;if(t.beginPath(),"LineString"===w)for(var b=_.geometry._coordinates||_.geometry.coordinates,k=void 0!==n.arrow.interval?n.arrow.interval:1,E=0;E<b.length;E+=k)if(b[E]&&b[E+1]){var L=b[E];if(m&&(d=L,g=m,Math.sqrt(Math.pow(d[0]-g[0],2)+Math.pow(d[1]-g[1],2))<30))continue;t.save();var C=(l=b[E],u=b[E+1],v=void 0,c=u[0]-l[0],p=u[1]-l[1],v=360*Math.atan(p/c)/(2*Math.PI),u[0]<l[0]&&(v+=180),v);t.translate(L[0],L[1]),t.rotate(C*Math.PI/180),t.drawImage(o,-o.width/2/2,-o.height/2/2,o.width/2,o.height/2),t.restore(),f.push(L),m=L}t.restore()}t.restore()}};var bt=function(t,e,n){var i=e instanceof T?e.get():e;t.save(),t.fillStyle=n.fillStyle||"rgba(0, 0, 0, 0.5)",t.fillRect(0,0,t.canvas.width,t.canvas.height),n.multiPolygonDraw=function(){t.save(),t.clip(),E(t),t.restore()};for(var o=0,a=i.length;o<a;o++)t.beginPath(),x.drawDataSet(t,[i[o]],n),t.save(),t.clip(),E(t),t.restore();t.restore()},kt={},Et={},Lt={draw:function(t,e,n){t.save();for(var i=e instanceof T?e.get():e,o=0;o<i.length;o++){var a=i[o],r=a.geometry._coordinates||a.geometry.coordinates;if(t.beginPath(),a.properties&&a.properties.cluster){if(t.arc(r[0],r[1],a.size,0,2*Math.PI),t.fillStyle=a.fillStyle,t.fill(),n.label&&!1!==n.label.show){t.fillStyle=n.label.fillStyle||"white",n.label.font&&(t.font=n.label.font),n.label.shadowColor&&(t.shadowColor=n.label.shadowColor),n.label.shadowBlur&&(t.shadowBlur=n.label.shadowBlur);var s=a.properties.point_count,h=t.measureText(s).width;t.fillText(s,r[0]+.5-h/2,r[1]+.5+3)}}else this.drawIcon(a,n,t)}t.restore()},drawIcon:function(t,e,n){function i(){n.beginPath(),n.arc(r,s,e.size||5,0,2*Math.PI),n.fillStyle=e.fillStyle||"red",n.fill()}var o=t.geometry._coordinates||t.geometry.coordinates,a=b(o,2),r=a[0],s=a[1],h=Object.assign({},e.iconOptions,t.iconOptions);if(h.url){var l=h.width,u=h.height,c=h.offset||{x:0,y:0};r=r-~~l/2+c.x,s=s-~~u/2+c.y;var p,v,d,g,f,m,y,x,_=window.encodeURIComponent(h.url),w=kt[_];w?"error"===w?i():l&&u?n.drawImage(w,r,s,l,u):n.drawImage(w,r,s):(Et[_]||(Et[_]=[],f=_,m=function(e,t){Et[t]&&Et[t].forEach(function(t){return t(e)}),Et[t]=null,kt[t]=e},y=function(e){Et[e]&&Et[e].forEach(function(t){return t("error",e)}),Et[e]=null,kt[e]="error",i()},(x=new Image).onload=function(){m&&m(x,f)},x.onerror=function(){y&&y(f)},x.src=window.decodeURIComponent(f)),Et[_].push((p=r,v=s,d=l,g=u,function(t){"error"===t?i():d&&g?n.drawImage(t,p,v,d,g):n.drawImage(t,p,v)})))}else i()}};var Ct=function(t,e,n){var i=e instanceof T?e.get():e;for(var o in t.save(),n)t[o]=n[o];var a=[],r=n._size||n.size;r?t.font="bold "+r+"px Arial":r=12;var s=n.textKey||"text";if(n.textAlign||(t.textAlign="center"),n.textBaseline||(t.textBaseline="middle"),n.avoid)for(var h=0,l=i.length;h<l;h++){var u=i[h].offset||n.offset||{x:0,y:0},c=(y=i[h].geometry._coordinates||i[h].geometry.coordinates)[0]+u.x,p=y[1]+u.y,v=i[h][s],d=t.measureText(v).width,g=c-d/2,f=p-r/2,m={sw:{x:g,y:f+r},ne:{x:g+d,y:f}};St(a,m)||(a.push(m),g+=d/2,f+=r/2,t.fillText(v,g,f))}else for(h=0,l=i.length;h<l;h++){var y;u=i[h].offset||n.offset||{x:0,y:0},c=(y=i[h].geometry._coordinates||i[h].geometry.coordinates)[0]+u.x,p=y[1]+u.y,v=i[h][s];t.fillText(v,c,p)}t.restore()};function St(t,e){for(var n=0;n<t.length;n++)if(Mt(t[n],e))return!0;return!1}function Mt(t,e){var n=Math.min(t.ne.x,e.ne.x),i=Math.min(t.sw.y,e.sw.y),o=Math.max(t.sw.x,e.sw.x),a=Math.max(t.ne.y,e.ne.y);return o<n&&a<i}var Pt={},zt={},Rt=function(s,t,h){for(var l=t instanceof T?t.get():t,e=function(){var t,e,n,i,o=l[u];if(o.geometry)if("string"==typeof(c=o.icon||h.icon)){var a=window.encodeURIComponent(c),r=Pt[a];r?At(r,h,s,o):(zt[a]||(zt[a]=[],t=a,e=function(e,t){zt[t]&&zt[t].forEach(function(t){return t(e)}),zt[t]=null,Pt[t]=e},n=function(t){zt[t]&&zt[t].forEach(function(t){return t("error")}),zt[t]=null,Pt[t]="error"},(i=new Image).onload=function(){e&&e(i,t)},i.onerror=function(){n&&n(t)},i.src=window.decodeURIComponent(t)),zt[a].push(function(t){At(t,h,s,o)}))}else At(c,h,s,o)},u=0,n=l.length;u<n;u++){var c;e()}};function At(t,e,n,i){n.save();var o=i.geometry._coordinates||i.geometry.coordinates,a=o[0],r=o[1],s=e.offset||{x:0,y:0},h=i.width||e._width||e.width,l=i.height||e._height||e.height;if(a=a-~~h/2+s.x,r=r-~~l/2+s.y,"string"==typeof t)return n.beginPath(),n.arc(a,r,e.size||5,0,2*Math.PI),n.fillStyle=e.fillStyle||"red",void n.fill();var u=i.deg||e.deg;u&&(n.translate(a,r),n.rotate(u*Math.PI/180),n.translate(-a,-r)),e.sx&&e.sy&&e.swidth&&e.sheight&&e.width&&e.height?n.drawImage(t,e.sx,e.sy,e.swidth,e.sheight,a,r,h,l):h&&l?n.drawImage(t,a,r,h,l):n.drawImage(t,a,r),n.restore()}function Ot(t,e,n,i,o,a){if(!(o-i<=n)){var r=i+o>>1;!function t(e,n,i,o,a,r){for(;o<a;){if(600<a-o){var s=a-o+1,h=i-o+1,l=Math.log(s),u=.5*Math.exp(2*l/3),c=.5*Math.sqrt(l*u*(s-u)/s)*(h-s/2<0?-1:1),p=Math.max(o,Math.floor(i-h*u/s+c)),v=Math.min(a,Math.floor(i+(s-h)*u/s+c));t(e,n,i,p,v,r)}var d=n[2*i+r],g=o,f=a;for(It(e,n,o,i),n[2*a+r]>d&&It(e,n,o,a);g<f;){for(It(e,n,g,f),g++,f--;n[2*g+r]<d;)g++;for(;n[2*f+r]>d;)f--}n[2*o+r]===d?It(e,n,o,f):It(e,n,++f,a),f<=i&&(o=f+1),i<=f&&(a=f-1)}}(t,e,r,i,o,a%2),Ot(t,e,n,i,r-1,a+1),Ot(t,e,n,1+r,o,a+1)}}function It(t,e,n,i){Tt(t,n,i),Tt(e,2*n,2*i),Tt(e,2*n+1,2*i+1)}function Tt(t,e,n){var i=t[e];t[e]=t[n],t[n]=i}function Dt(t,e,n,i){var o=t-n,a=e-i;return o*o+a*a}function Ft(t){return t[0]}function Bt(t){return t[1]}function Ut(t,e,n,i,o){void 0===e&&(e=Ft),void 0===n&&(n=Bt),void 0===i&&(i=64),void 0===o&&(o=Float64Array),this.nodeSize=i;for(var a=(this.points=t).length<65536?Uint16Array:Uint32Array,r=this.ids=new a(t.length),s=this.coords=new o(2*t.length),h=0;h<t.length;h++)s[2*(r[h]=h)]=e(t[h]),s[2*h+1]=n(t[h]);Ot(r,s,i,0,r.length-1,0)}Ut.prototype.range=function(t,e,n,i){return function(t,e,n,i,o,a,r){for(var s,h,l=[0,t.length-1,0],u=[];l.length;){var c=l.pop(),p=l.pop(),v=l.pop();if(p-v<=r)for(var d=v;d<=p;d++)s=e[2*d],h=e[2*d+1],n<=s&&s<=o&&i<=h&&h<=a&&u.push(t[d]);else{var g=Math.floor((v+p)/2);s=e[2*g],h=e[2*g+1],n<=s&&s<=o&&i<=h&&h<=a&&u.push(t[g]);var f=(c+1)%2;(0===c?n<=s:i<=h)&&(l.push(v),l.push(g-1),l.push(f)),(0===c?s<=o:h<=a)&&(l.push(g+1),l.push(p),l.push(f))}}return u}(this.ids,this.coords,t,e,n,i,this.nodeSize)};function Zt(t){this.options=$t(Object.create(jt),t),this.trees=new Array(this.options.maxZoom+1)}var jt={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!(Ut.prototype.within=function(t,e,n){return function(t,e,n,i,o,a){for(var r=[0,t.length-1,0],s=[],h=o*o;r.length;){var l=r.pop(),u=r.pop(),c=r.pop();if(u-c<=a)for(var p=c;p<=u;p++)Dt(e[2*p],e[2*p+1],n,i)<=h&&s.push(t[p]);else{var v=Math.floor((c+u)/2),d=e[2*v],g=e[2*v+1];Dt(d,g,n,i)<=h&&s.push(t[v]);var f=(l+1)%2;(0===l?n-o<=d:i-o<=g)&&(r.push(c),r.push(v-1),r.push(f)),(0===l?d<=n+o:g<=i+o)&&(r.push(v+1),r.push(u),r.push(f))}}return s}(this.ids,this.coords,t,e,n,this.nodeSize)}),generateId:!1,reduce:null,map:function(t){return t}};function Nt(t){return{type:"Feature",id:t.id,properties:Wt(t),geometry:{type:"Point",coordinates:[360*(t.x-.5),(e=t.y,n=(180-360*e)*Math.PI/180,360*Math.atan(Math.exp(n))/Math.PI-90)]}};var e,n}function Wt(t){var e=t.numPoints,n=1e4<=e?Math.round(e/1e3)+"k":1e3<=e?Math.round(e/100)/10+"k":e;return $t($t({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:n})}function Ht(t){return t/360+.5}function qt(t){var e=Math.sin(t*Math.PI/180),n=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return n<0?0:1<n?1:n}function $t(t,e){for(var n in e)t[n]=e[n];return t}function Vt(t){return t.x}function Yt(t){return t.y}Zt.prototype.load=function(t){var e=this.options,n=(e.log,e.minZoom),i=e.maxZoom,o=e.nodeSize;t.length;this.points=t;for(var a,r,s,h,l,u=[],c=0;c<t.length;c++)t[c].geometry&&u.push((a=t[c],r=c,void 0,s=a.geometry.coordinates,h=s[0],l=s[1],{x:Ht(h),y:qt(l),zoom:1/0,index:r,parentId:-1}));this.trees[i+1]=new Ut(u,Vt,Yt,o,Float32Array);for(var p=i;n<=p;p--){Date.now();u=this._cluster(u,p),this.trees[p]=new Ut(u,Vt,Yt,o,Float32Array)}return this},Zt.prototype.getClusters=function(t,e){var n=((t[0]+180)%360+360)%360-180,i=Math.max(-90,Math.min(90,t[1])),o=180===t[2]?180:((t[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,t[3]));if(360<=t[2]-t[0])n=-180,o=180;else if(o<n){var r=this.getClusters([n,i,180,a],e),s=this.getClusters([-180,i,o,a],e);return r.concat(s)}for(var h=this.trees[this._limitZoom(e)],l=[],u=0,c=h.range(Ht(n),qt(a),Ht(o),qt(i));u<c.length;u+=1){var p=c[u],v=h.points[p];l.push(v.numPoints?Nt(v):this.points[v.index])}return l},Zt.prototype.getChildren=function(t){var e=this._getOriginId(t),n=this._getOriginZoom(t),i="No cluster with the specified id.",o=this.trees[n];if(!o)throw new Error(i);var a=o.points[e];if(!a)throw new Error(i);for(var r=this.options.radius/(this.options.extent*Math.pow(2,n-1)),s=[],h=0,l=o.within(a.x,a.y,r);h<l.length;h+=1){var u=l[h],c=o.points[u];c.parentId===t&&s.push(c.numPoints?Nt(c):this.points[c.index])}if(0===s.length)throw new Error(i);return s},Zt.prototype.getLeaves=function(t,e,n){e=e||10,n=n||0;var i=[];return this._appendLeaves(i,t,e,n,0),i},Zt.prototype.getTile=function(t,e,n){var i=this.trees[this._limitZoom(t)],o=Math.pow(2,t),a=this.options,r=a.extent,s=a.radius/r,h=(n-s)/o,l=(n+1+s)/o,u={features:[]};return this._addTileFeatures(i.range((e-s)/o,h,(e+1+s)/o,l),i.points,e,n,o,u),0===e&&this._addTileFeatures(i.range(1-s/o,h,1,l),i.points,o,n,o,u),e===o-1&&this._addTileFeatures(i.range(0,h,s/o,l),i.points,-1,n,o,u),u.features.length?u:null},Zt.prototype.getClusterExpansionZoom=function(t){for(var e=this._getOriginZoom(t)-1;e<=this.options.maxZoom;){var n=this.getChildren(t);if(e++,1!==n.length)break;t=n[0].properties.cluster_id}return e},Zt.prototype._appendLeaves=function(t,e,n,i,o){for(var a=0,r=this.getChildren(e);a<r.length;a+=1){var s=r[a],h=s.properties;if(h&&h.cluster?o+h.point_count<=i?o+=h.point_count:o=this._appendLeaves(t,h.cluster_id,n,i,o):o<i?o++:t.push(s),t.length===n)break}return o},Zt.prototype._addTileFeatures=function(t,e,n,i,o,a){for(var r=0,s=t;r<s.length;r+=1){var h=e[s[r]],l=h.numPoints,u={type:1,geometry:[[Math.round(this.options.extent*(h.x*o-n)),Math.round(this.options.extent*(h.y*o-i))]],tags:l?Wt(h):this.points[h.index].properties},c=void 0;l?c=h.id:this.options.generateId?c=h.index:this.points[h.index].id&&(c=this.points[h.index].id),void 0!==c&&(u.id=c),a.features.push(u)}},Zt.prototype._limitZoom=function(t){return Math.max(this.options.minZoom,Math.min(+t,this.options.maxZoom+1))},Zt.prototype._cluster=function(t,e){for(var n=[],i=this.options,o=i.radius,a=i.extent,r=i.reduce,s=i.minPoints,h=o/(a*Math.pow(2,e)),l=0;l<t.length;l++){var u=t[l];if(!(u.zoom<=e)){u.zoom=e;for(var c=this.trees[e+1],p=c.within(u.x,u.y,h),v=u.numPoints||1,d=v,g=0,f=p;g<f.length;g+=1){var m=f[g],y=c.points[m];y.zoom>e&&(d+=y.numPoints||1)}if(s<=d){for(var x=u.x*v,_=u.y*v,w=r&&1<v?this._map(u,!0):null,b=(l<<5)+(e+1)+this.points.length,k=0,E=p;k<E.length;k+=1){var L=E[k],C=c.points[L];if(!(C.zoom<=e)){C.zoom=e;var S=C.numPoints||1;x+=C.x*S,_+=C.y*S,C.parentId=b,r&&r(w=w||this._map(u,!0),this._map(C))}}u.parentId=b,n.push({x:x/d,y:_/d,zoom:1/0,id:b,parentId:-1,numPoints:d,properties:w})}else if(n.push(u),1<d)for(var M=0,P=p;M<P.length;M+=1){var z=P[M],R=c.points[z];R.zoom<=e||(R.zoom=e,n.push(R))}}}return n},Zt.prototype._getOriginId=function(t){return t-this.points.length>>5},Zt.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},Zt.prototype._map=function(t,e){if(t.numPoints)return e?$t({},t.properties):t.properties;var n=this.points[t.index].properties,i=this.options.map(n);return e&&i===n?$t({},i):i},"undefined"!=typeof window&&requestAnimationFrame(function t(e){requestAnimationFrame(t);xt.update(e)});var Gt=(e(Jt,[{key:"refreshCluster",value:function(t){t=t||this.options,this.supercluster=new Zt({maxZoom:t.maxZoom||19,radius:t.clusterRadius||100,minPoints:t.minPoints||2,extent:t.extent||512}),this.supercluster.load(this.dataSet.get()),this.supercluster.trees.forEach(function(t){var e=0,n=1/0;t.points.forEach(function(t){e=Math.max(t.numPoints||0,e),n=Math.min(t.numPoints||1/0,n)}),t.max=e,t.min=n}),this.clusterDataSet=new T}},{key:"getDefaultContextConfig",value:function(){return{globalAlpha:1,globalCompositeOperation:"source-over",imageSmoothingEnabled:!0,strokeStyle:"#000000",fillStyle:"#000000",shadowOffsetX:0,shadowOffsetY:0,shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0)",lineWidth:1,lineCap:"butt",lineJoin:"miter",miterLimit:10,lineDashOffset:0,font:"10px sans-serif",textAlign:"start",textBaseline:"alphabetic"}}},{key:"initDataRange",value:function(){var t=this;if(t.intensity=new D({maxSize:t.options.maxSize,minSize:t.options.minSize,gradient:t.options.gradient,max:t.options.max||this.dataSet.getMax("count")}),t.category=new ut(t.options.splitList),t.choropleth=new ct(t.options.splitList),void 0===t.options.splitList&&t.category.generateByDataSet(this.dataSet,t.options.color),void 0===t.options.splitList){var e=t.options.min||this.dataSet.getMin("count"),n=t.options.max||this.dataSet.getMax("count");t.choropleth.generateByMinMax(e,n)}}},{key:"getLegend",value:function(t){return this.options.draw,"intensity"==this.options.draw||"heatmap"==this.options.draw?this.intensity.getLegend(t):"category"==this.options.draw?this.category.getLegend(t):void 0}},{key:"processData",value:function(t){var e=this,n=e.options.draw;if("bubble"==n||"intensity"==n||"category"==n||"choropleth"==n||"simple"==n)for(var i=0;i<t.length;i++){var o=t[i];"bubble"==e.options.draw?t[i]._size=e.intensity.getSize(o.count):t[i]._size=void 0;var a="_fillStyle";"LineString"!==t[i].geometry.type&&"stroke"!==e.options.styleType||(a="_strokeStyle"),"intensity"==e.options.draw?t[i][a]=e.intensity.getColor(o.count):"category"==e.options.draw?t[i][a]=e.category.get(o.count):"choropleth"==e.options.draw&&(t[i][a]=e.choropleth.get(o.count))}}},{key:"isEnabledTime",value:function(){var t=this.options.animation;return t&&!(!1===t.enabled)}},{key:"argCheck",value:function(t){"heatmap"==t.draw&&t.strokeStyle&&console.warn("[heatmap] options.strokeStyle is discard, pleause use options.strength [eg: options.strength = 0.1]")}},{key:"drawContext",value:function(t,e,n,i){var o=this;switch(o.options.draw){case"heatmap":d.draw(t,e,o.options);break;case"grid":case"cluster":case"honeycomb":o.options.offset={x:i.x,y:i.y},"grid"===o.options.draw?g.draw(t,e,o.options):"cluster"===o.options.draw?Lt.draw(t,e,o.options):f.draw(t,e,o.options);break;case"text":Ct(t,e,o.options);break;case"icon":Rt(t,e,o.options);break;case"clip":bt(t,e,o.options);break;default:"webgl"==o.options.context?st.draw(o.canvasLayer.canvas.getContext("webgl"),e,o.options):c.draw(t,e,o.options)}o.options.arrow&&!1!==o.options.arrow.show&&wt.draw(t,e,o.options)}},{key:"isPointInPath",value:function(t,e){var n;t=this.canvasLayer.canvas.getContext(this.context),n="cluster"===this.options.draw&&(!this.options.maxClusterZoom||this.options.maxClusterZoom>=this.getZoom())?this.clusterDataSet.get():this.dataSet.get();for(var i=0;i<n.length;i++){t.beginPath();var o=this.options,a=e.x*this.canvasLayer.devicePixelRatio,r=e.y*this.canvasLayer.devicePixelRatio;if(o.multiPolygonDraw=function(){if(t.isPointInPath(a,r))return n[i]},x.draw(t,n[i],o),-1<(n[i].geometry&&n[i].geometry.type).indexOf("LineString")){if(t.isPointInStroke&&t.isPointInStroke(a,r))return n[i]}else if(t.isPointInPath(a,r))return n[i]}}},{key:"getClusterPoints",value:function(t){var e=this;return"Feature"!==t.type?[]:this.supercluster.getChildren(t.id).map(function(t){return"Feature"===t.type?e.getClusterPoints(t):t}).flat()}},{key:"clickEvent",value:function(t,e){if(this.options.methods){var n=this.isPointInPath(this.getContext(),t);if(n){if("cluster"===this.options.draw){var i=this.getClusterPoints(n);n.children=i}this.options.methods.click(n,e)}else this.options.methods.click(null,e)}}},{key:"mousemoveEvent",value:function(t,e){if(this.options.methods){var n=this.isPointInPath(this.getContext(),t);if(n){if("cluster"===this.options.draw){var i=this.getClusterPoints(n);n.children=i}this.options.methods.mousemove(n,e)}else this.options.methods.mousemove(null,e)}}},{key:"tapEvent",value:function(t,e){if(this.options.methods){var n=this.isPointInPath(this.getContext(),t);if(n){if("cluster"===this.options.draw){var i=this.getClusterPoints(n);n.children=i}this.options.methods.tap(n,e)}else this.options.methods.tap(null,e)}}},{key:"update",value:function(t,e){var n=t.options,i=this.options;for(var o in n)i[o]=n[o];this.init(i),!1!==e&&this.draw()}},{key:"setOptions",value:function(t){this.dataSet.reset(),this.init(t),this.draw()}},{key:"set",value:function(t){var e=this.getContext(),n=this.getDefaultContextConfig();for(var i in n)e[i]=n[i];this.init(t.options),this.draw()}},{key:"destroy",value:function(){this.unbindEvent(),this.hide()}},{key:"initAnimator",value:function(){var t=this,e=t.options.animation;if("time"==t.options.draw||t.isEnabledTime()){e.stepsRange||(e.stepsRange={start:this.dataSet.getMin("time")||0,end:this.dataSet.getMax("time")||0}),this.steps={step:e.stepsRange.start},t.animator=new xt.Tween(this.steps).onUpdate(function(){t._canvasUpdate(this.step)}).repeat(1/0),this.addAnimatorEvent();var n=1e3*e.duration||5e3;t.animator.to({step:e.stepsRange.end},n),t.animator.start()}else t.animator&&t.animator.stop()}},{key:"addAnimatorEvent",value:function(){}},{key:"animatorMovestartEvent",value:function(){var t=this.options.animation;this.isEnabledTime()&&this.animator&&(this.steps.step=t.stepsRange.start,this.animator.stop())}},{key:"animatorMoveendEvent",value:function(){this.isEnabledTime()&&this.animator&&this.animator.start()}}]),Jt);function Jt(t,e,n){s(this,Jt),e instanceof T||(e=new T(e)),this.dataSet=e,this.map=t,"cluster"===n.draw&&this.refreshCluster(n)}var Qt="undefined"==typeof window?{}:window,Xt=Qt.BMap||Qt.BMapGL,Kt=(l(te,Gt),e(te,[{key:"draw",value:function(){this.canvasLayer.draw()}},{key:"init",value:function(t){var e=this;e.options=t,this.initDataRange(t),this.context=e.options.context||"2d",e.options.zIndex&&this.canvasLayer&&this.canvasLayer.setZIndex(e.options.zIndex),e.options.max&&this.intensity.setMax(e.options.max),e.options.min&&this.intensity.setMin(e.options.min),this.initAnimator()}},{key:"transferToMercator",value:function(){var n,i=this.map,t=i.getMapType();if(n=t.getProjection?t.getProjection():{lngLatToPoint:function(t){var e=i.lnglatToMercator(t.lng,t.lat);return{x:e[0],y:e[1]}}},"bd09mc"!==this.options.coordType){var e=this.dataSet.get();e=this.dataSet.transferCoordinate(e,function(t){var e=n.lngLatToPoint({lng:t[0],lat:t[1]});return[e.x,e.y]},"coordinates","coordinates_mercator"),this.dataSet._set(e)}}},{key:"_canvasUpdate",value:function(){var t=this.ctx;if(t){var e,n,i,o=this.map;o.getMapType().getProjection?n=(e=o.getMapType().getProjection()).lngLatToPoint(o.getCenter()):(-180<(n={x:o.getCenter().lng,y:o.getCenter().lat}).x&&n.x<180&&(n={x:(n=o.lnglatToMercator(n.x,n.y))[0],y:n[1]}),e={lngLatToPoint:function(t){var e=o.lnglatToMercator(t.lng,t.lat);return{x:e[0],y:e[1]}}}),i=e.getZoomUnits?e.getZoomUnits(o.getZoom()):Math.pow(2,18-o.getZoom());var a=new Xt.Pixel(n.x-o.getSize().width/2*i,n.y+o.getSize().height/2*i);E(t);var r={fromColumn:"bd09mc"==this.options.coordType?"coordinates":"coordinates_mercator",transferCoordinate:function(t){if(t)return[(t[0]-a.x)/i,(a.y-t[1])/i]}};this.data=this.dataSet.get(r),this.processData(this.data),this.drawAnimation()}}},{key:"drawAnimation",value:function(){var t=this.ctx,e=this.data;if(e){t.save(),t.globalCompositeOperation="destination-out",t.fillStyle="rgba(0, 0, 0, .1)",t.fillRect(0,0,t.canvas.width,t.canvas.height),t.restore(),t.save(),this.options.shadowColor&&(t.shadowColor=this.options.shadowColor),this.options.shadowBlur&&(t.shadowBlur=this.options.shadowBlur),this.options.globalAlpha&&(t.globalAlpha=this.options.globalAlpha),this.options.globalCompositeOperation&&(t.globalCompositeOperation=this.options.globalCompositeOperation);for(var n=this.options,i=0;i<e.length;i++)if("Point"===e[i].geometry.type){t.beginPath();var o=e[i].size||this.options.size,a=e[i].minSize||this.options.minSize||0;void 0===e[i]._size&&(e[i]._size=a),t.arc(e[i].geometry._coordinates[0],e[i].geometry._coordinates[1],e[i]._size,0,2*Math.PI,!0),t.closePath(),e[i]._size++,e[i]._size>o&&(e[i]._size=a),t.lineWidth=1,t.strokeStyle=e[i].strokeStyle||e[i]._strokeStyle||n.strokeStyle||"yellow",t.stroke(),(l=e[i].fillStyle||e[i]._fillStyle||n.fillStyle)&&(t.fillStyle=l,t.fill())}else if("LineString"===e[i].geometry.type){t.beginPath();var r=e[i].size||this.options.size||5;a=e[i].minSize||this.options.minSize||0,void 0===e[i]._index&&(e[i]._index=0);var s=e[i]._index;t.arc(e[i].geometry._coordinates[s][0],e[i].geometry._coordinates[s][1],r,0,2*Math.PI,!0),t.closePath(),e[i]._index++,e[i]._index>=e[i].geometry._coordinates.length&&(e[i]._index=0);var h=e[i].strokeStyle||n.strokeStyle,l=e[i].fillStyle||n.fillStyle||"yellow";t.fillStyle=l,t.fill(),h&&n.lineWidth&&(t.lineWidth=n.lineWidth||1,t.strokeStyle=h,t.stroke())}t.restore()}}},{key:"animate",value:function(){this.drawAnimation();var t=this.options.animateTime||100;this.timeout=setTimeout(this.animate.bind(this),t)}},{key:"start",value:function(){this.stop(),this.animate()}},{key:"stop",value:function(){clearTimeout(this.timeout)}},{key:"unbindEvent",value:function(){}},{key:"hide",value:function(){this.canvasLayer.hide(),this.stop()}},{key:"show",value:function(){this.start()}},{key:"clearData",value:function(){this.dataSet&&this.dataSet.clear(),this.update({options:null})}},{key:"destroy",value:function(){this.stop(),this.unbindEvent(),this.clearData(),this.map.removeOverlay(this.canvasLayer),this.canvasLayer=null}}]),te);function te(t,e,n){s(this,te);var i=u(this,(te.__proto__||Object.getPrototypeOf(te)).call(this,t,e,n));i.map=t,i.options=n||{},i.dataSet=e;var o=new dt({map:t,zIndex:i.options.zIndex,update:i._canvasUpdate.bind(i)});i.init(i.options),i.canvasLayer=o,i.transferToMercator();var a=i;return e.on("change",function(){a.transferToMercator(),o.draw()}),i.ctx=o.canvas.getContext("2d"),i.start(),i}var ee="undefined"==typeof window?{}:window,ne=ee.BMap||ee.BMapGL,ie=(l(oe,Gt),e(oe,[{key:"clickEvent",value:function(t){var e=t.pixel;h(oe.prototype.__proto__||Object.getPrototypeOf(oe.prototype),"clickEvent",this).call(this,e,t)}},{key:"mousemoveEvent",value:function(t){var e=t.pixel;h(oe.prototype.__proto__||Object.getPrototypeOf(oe.prototype),"mousemoveEvent",this).call(this,e,t)}},{key:"tapEvent",value:function(t){var e=t.pixel;h(oe.prototype.__proto__||Object.getPrototypeOf(oe.prototype),"tapEvent",this).call(this,e,t)}},{key:"bindEvent",value:function(){this.unbindEvent();var t=this.map,e=0,n=this;this.options.methods&&(this.options.methods.click&&(t.setDefaultCursor("default"),t.addEventListener("click",this.clickEvent)),this.options.methods.mousemove&&t.addEventListener("mousemove",this.mousemoveEvent),"ontouchend"in window.document&&this.options.methods.tap&&(t.addEventListener("touchstart",function(t){e=new Date}),t.addEventListener("touchend",function(t){new Date-e<300&&n.tapEvent(t)})))}},{key:"unbindEvent",value:function(){var t=this.map;this.options.methods&&(this.options.methods.click&&t.removeEventListener("click",this.clickEvent),this.options.methods.mousemove&&t.removeEventListener("mousemove",this.mousemoveEvent))}},{key:"transferToMercator",value:function(t){t=t||this.dataSet;var n,i=this.map,e=i.getMapType();if(n=e.getProjection?e.getProjection():{lngLatToPoint:function(t){var e=i.lnglatToMercator(t.lng,t.lat);return{x:e[0],y:e[1]}}},"bd09mc"!==this.options.coordType){var o=t.get();o=t.transferCoordinate(o,function(t){if(t[0]<-180||180<t[0]||t[1]<-90||90<t[1])return t;var e=n.lngLatToPoint({lng:t[0],lat:t[1]});return[e.x,e.y]},"coordinates","coordinates_mercator"),t._set(o)}}},{key:"getContext",value:function(){return this.canvasLayer.canvas.getContext(this.context)}},{key:"_canvasUpdate",value:function(n){if(this.canvasLayer){var t,e,i,o=this,a=this.options.animation,r=this.canvasLayer._map;r.getMapType().getProjection?e=(t=r.getMapType().getProjection()).lngLatToPoint(r.getCenter()):(-180<(e={x:r.getCenter().lng,y:r.getCenter().lat}).x&&e.x<180&&(e={x:(e=r.lnglatToMercator(e.x,e.y))[0],y:e[1]}),t={lngLatToPoint:function(t){var e=r.lnglatToMercator(t.lng,t.lat);return{x:e[0],y:e[1]}}}),i=t.getZoomUnits?t.getZoomUnits(r.getZoom()):Math.pow(2,18-r.getZoom());var s=new ne.Pixel(e.x-r.getSize().width/2*i,e.y+r.getSize().height/2*i),h=this.getContext();if(this.isEnabledTime()){if(void 0===n)return void E(h);"2d"==this.context&&(h.save(),h.globalCompositeOperation="destination-out",h.fillStyle="rgba(0, 0, 0, .1)",h.fillRect(0,0,h.canvas.width,h.canvas.height),h.restore())}else E(h);if("2d"==this.context)for(var l in this.options)h[l]=this.options[l];else h.clear(h.COLOR_BUFFER_BIT);if(!(this.options.minZoom&&r.getZoom()<this.options.minZoom||this.options.maxZoom&&r.getZoom()>this.options.maxZoom)){var u=1;"2d"!=this.context&&(u=this.canvasLayer.devicePixelRatio);var c,p={fromColumn:"bd09mc"==this.options.coordType?"coordinates":"coordinates_mercator",transferCoordinate:function(t){return[(t[0]-s.x)/i*u,(s.y-t[1])/i*u]}};void 0!==n&&(p.filter=function(t){var e=a.trails||10;return!!(n&&t.time>n-e&&t.time<n)});var v=this.getZoom();if("cluster"===this.options.draw&&(!this.options.maxClusterZoom||this.options.maxClusterZoom>=v)){var d=this.map.getBounds(),g=d.getNorthEast(),f=d.getSouthWest(),m=this.supercluster.getClusters([f.lng,f.lat,g.lng,g.lat],v);this.pointCountMax=this.supercluster.trees[v].max,this.pointCountMin=this.supercluster.trees[v].min;var y={},x=null,_=null;this.pointCountMax===this.pointCountMin?(x=this.options.fillStyle,_=this.options.minSize||8):y=new D({min:this.pointCountMin,max:this.pointCountMax,minSize:this.options.minSize||8,maxSize:this.options.maxSize||30,gradient:this.options.gradient});for(var w=0;w<m.length;w++){var b=m[w];b.properties&&b.properties.cluster_id?(m[w].size=_||y.getSize(b.properties.point_count),m[w].fillStyle=x||y.getColor(b.properties.point_count)):m[w].size=o.options.size}this.clusterDataSet.set(m),this.transferToMercator(this.clusterDataSet),c=o.clusterDataSet.get(p)}else c=o.dataSet.get(p);this.processData(c);var k=r.pointToPixel(new ne.Point(0,0));"m"==o.options.unit?(o.options.size&&(o.options._size=o.options.size/i),o.options.width&&(o.options._width=o.options.width/i),o.options.height&&(o.options._height=o.options.height/i)):(o.options._size=o.options.size,o.options._height=o.options.height,o.options._width=o.options.width),this.drawContext(h,c,o.options,k),o.options.updateCallback&&o.options.updateCallback(n)}}}},{key:"init",value:function(t){var e=this;e.options=t,this.initDataRange(t),this.context=e.options.context||"2d",e.options.zIndex&&this.canvasLayer&&this.canvasLayer.setZIndex(e.options.zIndex),e.options.max&&this.intensity.setMax(e.options.max),e.options.min&&this.intensity.setMin(e.options.min),this.initAnimator(),this.bindEvent()}},{key:"getZoom",value:function(){return this.map.getZoom()}},{key:"addAnimatorEvent",value:function(){this.map.addEventListener("movestart",this.animatorMovestartEvent.bind(this)),this.map.addEventListener("moveend",this.animatorMoveendEvent.bind(this))}},{key:"show",value:function(){this.map.addOverlay(this.canvasLayer),this.bindEvent()}},{key:"hide",value:function(){this.unbindEvent(),this.map.removeOverlay(this.canvasLayer)}},{key:"draw",value:function(){this.canvasLayer&&this.canvasLayer.draw()}},{key:"clearData",value:function(){this.dataSet&&this.dataSet.clear(),this.update({options:null})}},{key:"destroy",value:function(){this.unbindEvent(),this.clearData(),this.map.removeOverlay(this.canvasLayer),this.canvasLayer=null}}]),oe);function oe(t,e,n){s(this,oe);var i=u(this,(oe.__proto__||Object.getPrototypeOf(oe)).call(this,t,e,n)),o=i;n=n||{},i.clickEvent=i.clickEvent.bind(i),i.mousemoveEvent=i.mousemoveEvent.bind(i),i.tapEvent=i.tapEvent.bind(i),o.init(n),o.argCheck(n),o.transferToMercator();var a=i.canvasLayer=new dt({map:t,context:i.context,updateImmediate:n.updateImmediate,paneName:n.paneName,mixBlendMode:n.mixBlendMode,enableMassClear:n.enableMassClear,zIndex:n.zIndex,update:function(){o._canvasUpdate()}});return e.on("change",function(){o.transferToMercator(),"cluster"===n.draw&&o.refreshCluster(),a.draw()}),i}function ae(t){this.isAdded_=!1,this.isAnimated_=!1,this.paneName_=ae.DEFAULT_PANE_NAME_,this.updateHandler_=null,this.resizeHandler_=null,this.topLeft_=null,this.centerListener_=null,this.resizeListener_=null,this.needsResize_=!0,this.requestAnimationFrameId_=null;var e=document.createElement("canvas");function n(t,e){return function(){e.apply(t)}}e.style.position="absolute",e.style.top=0,e.style.left=0,e.style.pointerEvents="none",this.canvas=e,this.canvasCssWidth_=300,this.canvasCssHeight_=150,this.resolutionScale_=1,this.repositionFunction_=n(this,this.repositionCanvas_),this.resizeFunction_=n(this,this.resize_),this.requestUpdateFunction_=n(this,this.update_),t&&this.setOptions(t)}var re="undefined"==typeof window?{}:window;re.google&&re.google.maps&&(ae.prototype=new google.maps.OverlayView,ae.DEFAULT_PANE_NAME_="overlayLayer",ae.CSS_TRANSFORM_=function(){for(var t=document.createElement("div"),e=["transform","WebkitTransform","MozTransform","OTransform","msTransform"],n=0;n<e.length;n++){var i=e[n];if(void 0!==t.style[i])return i}return e[0]}(),ae.prototype.requestAnimFrame_=re.requestAnimationFrame||re.webkitRequestAnimationFrame||re.mozRequestAnimationFrame||re.oRequestAnimationFrame||re.msRequestAnimationFrame||function(t){return re.setTimeout(t,1e3/60)},ae.prototype.cancelAnimFrame_=re.cancelAnimationFrame||re.webkitCancelAnimationFrame||re.mozCancelAnimationFrame||re.oCancelAnimationFrame||re.msCancelAnimationFrame||function(t){},ae.prototype.setOptions=function(t){void 0!==t.animate&&this.setAnimate(t.animate),void 0!==t.paneName&&this.setPaneName(t.paneName),void 0!==t.updateHandler&&this.setUpdateHandler(t.updateHandler),void 0!==t.resizeHandler&&this.setResizeHandler(t.resizeHandler),void 0!==t.resolutionScale&&this.setResolutionScale(t.resolutionScale),void 0!==t.map&&this.setMap(t.map)},ae.prototype.setAnimate=function(t){this.isAnimated_=!!t,this.isAnimated_&&this.scheduleUpdate()},ae.prototype.isAnimated=function(){return this.isAnimated_},ae.prototype.setPaneName=function(t){this.paneName_=t,this.setPane_()},ae.prototype.getPaneName=function(){return this.paneName_},ae.prototype.setPane_=function(){if(this.isAdded_){var t=this.getPanes();if(!t[this.paneName_])throw new Error('"'+this.paneName_+'" is not a valid MapPane name.');t[this.paneName_].appendChild(this.canvas)}},ae.prototype.setResizeHandler=function(t){this.resizeHandler_=t},ae.prototype.setResolutionScale=function(t){"number"==typeof t&&(this.resolutionScale_=t,this.resize_())},ae.prototype.setUpdateHandler=function(t){this.updateHandler_=t},ae.prototype.onAdd=function(){this.isAdded_||(this.isAdded_=!0,this.setPane_(),this.resizeListener_=google.maps.event.addListener(this.getMap(),"resize",this.resizeFunction_),this.centerListener_=google.maps.event.addListener(this.getMap(),"center_changed",this.repositionFunction_),this.resize_(),this.repositionCanvas_())},ae.prototype.onRemove=function(){this.isAdded_&&(this.isAdded_=!1,this.topLeft_=null,this.canvas.parentElement.removeChild(this.canvas),this.centerListener_&&(google.maps.event.removeListener(this.centerListener_),this.centerListener_=null),this.resizeListener_&&(google.maps.event.removeListener(this.resizeListener_),this.resizeListener_=null),this.requestAnimationFrameId_&&(this.cancelAnimFrame_.call(re,this.requestAnimationFrameId_),this.requestAnimationFrameId_=null))},ae.prototype.resize_=function(){if(this.isAdded_){var t=this.getMap(),e=t.getDiv().offsetWidth,n=t.getDiv().offsetHeight,i=e*this.resolutionScale_,o=n*this.resolutionScale_,a=this.canvas.width,r=this.canvas.height;a===i&&r===o||(this.canvas.width=i,this.canvas.height=o,this.needsResize_=!0,this.scheduleUpdate()),this.canvasCssWidth_===e&&this.canvasCssHeight_===n||(this.canvasCssWidth_=e,this.canvasCssHeight_=n,this.canvas.style.width=e+"px",this.canvas.style.height=n+"px")}},ae.prototype.draw=function(){this.repositionCanvas_()},ae.prototype.repositionCanvas_=function(){var t=this.getMap(),e=t.getBounds().getNorthEast().lat(),n=t.getCenter(),i=Math.pow(2,t.getZoom()),o=n.lng()-180*this.canvasCssWidth_/(256*i);this.topLeft_=new google.maps.LatLng(e,o);var a=this.getProjection().fromLatLngToDivPixel(n),r=-Math.round(this.canvasCssWidth_/2-a.x),s=-Math.round(this.canvasCssHeight_/2-a.y);this.canvas.style[ae.CSS_TRANSFORM_]="translate("+r+"px,"+s+"px)",this.scheduleUpdate()},ae.prototype.update_=function(){this.requestAnimationFrameId_=null,this.isAdded_&&(this.isAnimated_&&this.scheduleUpdate(),this.needsResize_&&this.resizeHandler_&&(this.needsResize_=!1,this.resizeHandler_()),this.updateHandler_&&this.updateHandler_())},ae.prototype.getTopLeft=function(){return this.topLeft_},ae.prototype.scheduleUpdate=function(){this.isAdded_&&!this.requestAnimationFrameId_&&(this.requestAnimationFrameId_=this.requestAnimFrame_.call(re,this.requestUpdateFunction_))});var se=(l(he,Gt),e(he,[{key:"clickEvent",value:function(t){var e=t.pixel;h(he.prototype.__proto__||Object.getPrototypeOf(he.prototype),"clickEvent",this).call(this,e,t)}},{key:"mousemoveEvent",value:function(t){var e=t.pixel;h(he.prototype.__proto__||Object.getPrototypeOf(he.prototype),"mousemoveEvent",this).call(this,e,t)}},{key:"bindEvent",value:function(){var t=this.map;this.options.methods&&(this.options.methods.click&&(t.setDefaultCursor("default"),t.addListener("click",this.clickEvent)),this.options.methods.mousemove&&t.addListener("mousemove",this.mousemoveEvent))}},{key:"unbindEvent",value:function(){var t=this.map;this.options.methods&&(this.options.methods.click&&t.removeListener("click",this.clickEvent),this.options.methods.mousemove&&t.removeListener("mousemove",this.mousemoveEvent))}},{key:"getContext",value:function(){return this.canvasLayer.canvas.getContext(this.context)}},{key:"_canvasUpdate",value:function(n){if(this.canvasLayer){var t=this,i=t.options.animation,e=this.getContext();if(t.isEnabledTime()){if(void 0===n)return void E(e);"2d"==this.context&&(e.save(),e.globalCompositeOperation="destination-out",e.fillStyle="rgba(0, 0, 0, .1)",e.fillRect(0,0,e.canvas.width,e.canvas.height),e.restore())}else E(e);if("2d"==this.context)for(var o in t.options)e[o]=t.options[o];else e.clear(e.COLOR_BUFFER_BIT);if(!(t.options.minZoom&&r.getZoom()<t.options.minZoom||t.options.maxZoom&&r.getZoom()>t.options.maxZoom)){var a=1;"2d"!=this.context&&(a=this.canvasLayer.devicePixelRatio);var r=this.map,s=r.getProjection(),h=(a=Math.pow(2,r.zoom)*resolutionScale,s.fromLatLngToPoint(this.canvasLayer.getTopLeft())),l={transferCoordinate:function(t){var e=new google.maps.LatLng(t[1],t[0]),n=s.fromLatLngToPoint(e),i={x:(n.x-h.x)*a,y:(n.y-h.y)*a};return[i.x,i.y]}};void 0!==n&&(l.filter=function(t){var e=i.trails||10;return!!(n&&t.time>n-e&&t.time<n)});var u=t.dataSet.get(l);this.processData(u);var c=new google.maps.LatLng(0,0),p=s.fromLatLngToPoint(c),v={x:(p.x-h.x)*a,y:(p.y-h.y)*a};"m"==t.options.unit&&t.options.size?t.options._size=t.options.size/zoomUnit:t.options._size=t.options.size,this.drawContext(e,new T(u),t.options,v),t.options.updateCallback&&t.options.updateCallback(n)}}}},{key:"init",value:function(t){this.options=t,this.initDataRange(t),this.context=this.options.context||"2d",this.options.zIndex&&this.canvasLayer&&this.canvasLayer.setZIndex(this.options.zIndex),this.initAnimator()}},{key:"addAnimatorEvent",value:function(){this.map.addListener("movestart",this.animatorMovestartEvent.bind(this)),this.map.addListener("moveend",this.animatorMoveendEvent.bind(this))}},{key:"show",value:function(){this.map.addOverlay(this.canvasLayer)}},{key:"hide",value:function(){this.map.removeOverlay(this.canvasLayer)}},{key:"draw",value:function(){self.canvasLayer.draw()}}]),he);function he(t,e,n){s(this,he);var i=u(this,(he.__proto__||Object.getPrototypeOf(he)).call(this,t,e,n)),o=i;n=n||{},o.init(n),o.argCheck(n);var a={map:t,animate:!1,updateHandler:function(){o._canvasUpdate()},resolutionScale:resolutionScale};i.canvasLayer=new ae(a);return i.clickEvent=i.clickEvent.bind(i),i.mousemoveEvent=i.mousemoveEvent.bind(i),i.bindEvent(),i}var le,ue,ce=void 0;if("undefined"!=typeof maptalks){ue=maptalks.Layer,l(de,ue),e(de,[{key:"_initBaseLayer",value:function(t){var e=this.baseLayer=new Gt(null,this.dataSet,t);this.init(t),e.argCheck(t)}},{key:"clickEvent",value:function(t){if(this.baseLayer){var e=t.containerPoint;this.baseLayer.clickEvent(e,t.domEvent)}}},{key:"mousemoveEvent",value:function(t){if(this.baseLayer){var e=t.containerPoint;this.baseLayer.mousemoveEvent(e,t.domEvent)}}},{key:"getEvents",value:function(){return{click:this.clickEvent,mousemove:this.mousemoveEvent}}},{key:"init",value:function(t){var e=this.baseLayer;e.options=t,e.initDataRange(t),e.context=e.options.context||"2d",e.initAnimator()}},{key:"addAnimatorEvent",value:function(){this.map.addListener("movestart",this.animatorMovestartEvent.bind(this)),this.map.addListener("moveend",this.animatorMoveendEvent.bind(this))}}]),ce=de;var pe=(le=maptalks.renderer.CanvasRenderer,l(ve,le),e(ve,[{key:"needToRedraw",value:function(){return!!this.layer.baseLayer.isEnabledTime()||h(ve.prototype.__proto__||Object.getPrototypeOf(ve.prototype),"needToRedraw",this).call(this)}},{key:"draw",value:function(){var t=this.layer.baseLayer;this.canvas&&t.isEnabledTime()&&!this._shouldClear||(this.prepareCanvas(),this._shouldClear=!1),this._update(this.gl||this.context,this._mapvFrameTime),delete this._mapvFrameTime,this.completeRender()}},{key:"drawOnInteracting",value:function(){this.draw(),this._shouldClear=!1}},{key:"onSkipDrawOnInteracting",value:function(){this._shouldClear=!0}},{key:"_canvasUpdate",value:function(t){this.setToRedraw(),this._mapvFrameTime=t}},{key:"_update",value:function(t,n){if(this.canvas){var e=this.layer.baseLayer,i=e.options.animation,o=this.getMap();if(e.isEnabledTime()){if(void 0===n)return void E(t);"2d"==e.context&&(t.save(),t.globalCompositeOperation="destination-out",t.fillStyle="rgba(0, 0, 0, .1)",t.fillRect(0,0,t.canvas.width,t.canvas.height),t.restore())}else E(t);if("2d"==e.context)for(var a in e.options)t[a]=e.options[a];else t.clear(t.COLOR_BUFFER_BIT);var r=new maptalks.Coordinate(0,0),s={fromColumn:"bd09mc"===e.options.coordType?"coordinates_mercator":"coordinates",transferCoordinate:function(t){return r.x=t[0],r.y=t[1],o.coordToContainerPoint(r)._multi(1).toArray()}};void 0!==n&&(s.filter=function(t){var e=i.trails||10;return!!(n&&t.time>n-e&&t.time<n)});var h=e.dataSet.get(s);e.processData(h),"m"==e.options.unit?(e.options.size&&(e.options._size=e.options.size/zoomUnit),e.options.width&&(e.options._width=e.options.width/zoomUnit),e.options.height&&(e.options._height=e.options.height/zoomUnit)):(e.options._size=e.options.size,e.options._height=e.options.height,e.options._width=e.options.width);var l=new maptalks.Point(0,0),u=o._pointToContainerPoint(l)._multi(1);e.drawContext(t,h,e.options,u),e.options.updateCallback&&e.options.updateCallback(n)}}},{key:"createCanvas",value:function(){if(!this.canvas){var t=this.getMap(),e=t.getSize(),n=t.getDevicePixelRatio?t.getDevicePixelRatio():maptalks.Browser.retina?2:1,i=n*e.width,o=n*e.height;this.canvas=maptalks.Canvas.createCanvas(i,o,t.CanvasClass),"2d"===this.layer.baseLayer.context?(this.context=this.canvas.getContext("2d"),this.layer.options.globalCompositeOperation&&(this.context.globalCompositeOperation=this.layer.options.globalCompositeOperation),"heatmap"!==this.layer.baseLayer.options.draw&&1!==n&&this.context.scale(n,n)):this.gl=this.canvas.getContext("webgl",{alpha:!0,preserveDrawingBuffer:!0,antialias:!1}),this.onCanvasCreate(),this._bindToMapv(),this.layer.fire("canvascreate",{context:this.context,gl:this.gl})}}},{key:"_bindToMapv",value:function(){var t=this.layer.baseLayer,e=this.getMap();this.devicePixelRatio=e.getDevicePixelRatio?e.getDevicePixelRatio():maptalks.Browser.retina?2:1,t.canvasLayer=this,t._canvasUpdate=this._canvasUpdate.bind(this),t.getContext=function(){var t=self.getRenderer();return t.gl||t.context}}}]),ve);ce.registerRenderer("canvas",pe)}function ve(){return s(this,ve),u(this,(ve.__proto__||Object.getPrototypeOf(ve)).apply(this,arguments))}function de(t,e,n){s(this,de);var i=u(this,(de.__proto__||Object.getPrototypeOf(de)).call(this,t,n));return i.options_=n,i.dataSet=e,i._initBaseLayer(n),i}var ge=ce,fe=(l(me,Gt),e(me,[{key:"init",value:function(t){if(!t)throw new Error("not map object");this.map=t,this.context=this.options.context||"2d",this.getCanvasLayer()}},{key:"_canvasUpdate",value:function(t){this.render(this.canvasLayer.canvas,t)}},{key:"render",value:function(t,n){if(t){var i=this.map,e=t.getContext(this.context),o=this.options.animation;if(this.isEnabledTime()){if(void 0===n)return E(e),this;"2d"===this.context&&(e.save(),e.globalCompositeOperation="destination-out",e.fillStyle="rgba(0, 0, 0, .1)",e.fillRect(0,0,e.canvas.width,e.canvas.height),e.restore())}else E(e);if("2d"===this.context)for(var a in this.options)e[a]=this.options[a];else e.clear(e.COLOR_BUFFER_BIT);var r={transferCoordinate:function(t){var e=i.lngLatToContainer(new AMap.LngLat(t[0],t[1]));return[e.x,e.y]}};void 0!==n&&(r.filter=function(t){var e=o.trails||10;return!!(n&&t.time>n-e&&t.time<n)});var s=this.dataSet.get(r);return this.processData(s),"m"===this.options.unit?(this.options.size&&(this.options._size=this.options.size/zoomUnit),this.options.width&&(this.options._width=this.options.width/zoomUnit),this.options.height&&(this.options._height=this.options.height/zoomUnit)):(this.options._size=this.options.size,this.options._height=this.options.height,this.options._width=this.options.width),this.drawContext(e,new T(s),this.options,{x:0,y:0}),this.options.updateCallback&&this.options.updateCallback(n),this}}},{key:"getCanvasLayer",value:function(){if(!this.canvasLayer.canvas&&!this.layer_){var t=this.canvasFunction(),e=this.map.getBounds();this.layer_=new AMap.CanvasLayer({canvas:t,bounds:this.options.bounds||e,zooms:this.options.zooms||[0,22]}),this.layer_.setMap(this.map),this.map.on("mapmove",this.canvasFunction,this),this.map.on("zoomchange",this.canvasFunction,this)}}},{key:"canvasFunction",value:function(){var t=[this.map.getSize().width,this.map.getSize().height],e=t[0],n=t[1];if(this.canvasLayer.canvas){this.canvasLayer.canvas.width=e,this.canvasLayer.canvas.height=n;var i=this.map.getBounds();this.layer_&&this.layer_.setBounds(this.options.bounds||i)}else this.canvasLayer.canvas=function(t,e,n){if("undefined"==typeof document)return new n(t,e);var i=document.createElement("canvas");return i.width=t,i.height=e,i}(e,n);return this.render(this.canvasLayer.canvas),this.canvasLayer.canvas}},{key:"removeLayer",value:function(){this.map&&(this.unEvents(),this.map.removeLayer(this.layer_),delete this.map,delete this.layer_,delete this.canvasLayer.canvas)}},{key:"getContext",value:function(){return this.canvasLayer.canvas.getContext(this.context)}},{key:"clickEvent",value:function(t){var e=t.pixel;h(me.prototype.__proto__||Object.getPrototypeOf(me.prototype),"clickEvent",this).call(this,e,t)}},{key:"mousemoveEvent",value:function(t){var e=t.pixel;h(me.prototype.__proto__||Object.getPrototypeOf(me.prototype),"mousemoveEvent",this).call(this,e,t)}},{key:"addAnimatorEvent",value:function(){this.map.on("movestart",this.animatorMovestartEvent,this),this.map.on("moveend",this.animatorMoveendEvent,this)}},{key:"onEvents",value:function(){var t=this.map;this.unEvents(),this.options.methods&&(this.options.methods.click&&t.on("click",this.clickEvent,this),this.options.methods.mousemove&&t.on("mousemove",this.mousemoveEvent,this))}},{key:"unEvents",value:function(){var t=this.map;this.options.methods&&(this.options.methods.click&&t.off("click",this.clickEvent,this),this.options.methods.mousemove&&t.off("mousemove",this.mousemoveEvent,this))}}]),me);function me(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:null,e=arguments[1],n=arguments[2];s(this,me);var i=u(this,(me.__proto__||Object.getPrototypeOf(me)).call(this,t,e,n));return i.options=n,i.canvasLayer={canvas:null,devicePixelRatio:window.devicePixelRatio},i.layer_=null,i.initDataRange(n),i.initAnimator(),i.onEvents(),t.on("complete",function(){this.init(t,n),this.argCheck(n)},i),i}var ye=(l(xe,Gt),e(xe,[{key:"init",value:function(t,e){if(!(t&&t instanceof ol.Map))throw new Error("not map object");this.$Map=t,this.context=this.options.context||"2d",this.getCanvasLayer(),this.initDataRange(e),this.initAnimator(),this.onEvents()}},{key:"_canvasUpdate",value:function(t){this.render(this.canvasLayer.canvas,t)}},{key:"render",value:function(t,n){var e=this.$Map,i=t.getContext(this.context),o=this.options.animation,a=this.options.hasOwnProperty("projection")?this.options.projection:"EPSG:4326",r=this.$Map.getView().getProjection().getCode();if(this.isEnabledTime()){if(void 0===n)return E(i),this;"2d"===this.context&&(i.save(),i.globalCompositeOperation="destination-out",i.fillStyle="rgba(0, 0, 0, .1)",i.fillRect(0,0,i.canvas.width,i.canvas.height),i.restore())}else E(i);if("2d"===this.context)for(var s in this.options)i[s]=this.options[s];else i.clear(i.COLOR_BUFFER_BIT);var h={};h.transferCoordinate=a===r?function(t){return e.getPixelFromCoordinate(t)}:function(t){return e.getPixelFromCoordinate(ol.proj.transform(t,a,r))},void 0!==n&&(h.filter=function(t){var e=o.trails||10;return!!(n&&t.time>n-e&&t.time<n)});var l=this.dataSet.get(h);return this.processData(l),"m"===this.options.unit?(this.options.size&&(this.options._size=this.options.size/zoomUnit),this.options.width&&(this.options._width=this.options.width/zoomUnit),this.options.height&&(this.options._height=this.options.height/zoomUnit)):(this.options._size=this.options.size,this.options._height=this.options.height,this.options._width=this.options.width),this.drawContext(i,new T(l),this.options,{x:0,y:0}),this.options.updateCallback&&this.options.updateCallback(n),this}},{key:"getCanvasLayer",value:function(){if(!this.canvasLayer.canvas&&!this.layer_){var t=this.getMapExtent();this.layer_=new ol.layer.Image({layerName:this.options.layerName,minResolution:this.options.minResolution,maxResolution:this.options.maxResolution,zIndex:this.options.zIndex,extent:t,source:new ol.source.ImageCanvas({canvasFunction:this.canvasFunction.bind(this),projection:this.$Map.getView().getProjection().getCode(),ratio:this.options.hasOwnProperty("ratio")?this.options.ratio:1})}),this.$Map.addLayer(this.layer_),this.$Map.un("precompose",this.reRender,this),this.$Map.on("precompose",this.reRender,this)}}},{key:"reRender",value:function(){if(this.layer_){var t=this.getMapExtent();this.layer_.setExtent(t)}}},{key:"canvasFunction",value:function(t,e,n,i){return this.canvasLayer.canvas?(this.canvasLayer.canvas.width=i[0],this.canvasLayer.canvas.height=i[1]):this.canvasLayer.canvas=function(t,e){if("undefined"!=typeof document){var n=document.createElement("canvas");return n.width=t,n.height=e,n}}(i[0],i[1]),this.render(this.canvasLayer.canvas),this.canvasLayer.canvas}},{key:"getMapExtent",value:function(){var t=this.$Map.getSize();return this.$Map.getView().calculateExtent(t)}},{key:"addTo",value:function(t){this.init(t,this.options)}},{key:"removeLayer",value:function(){this.$Map&&(this.unEvents(),this.$Map.un("precompose",this.reRender,this),this.$Map.removeLayer(this.layer_),delete this.$Map,delete this.layer_,delete this.canvasLayer.canvas)}},{key:"getContext",value:function(){return this.canvasLayer.canvas.getContext(this.context)}},{key:"clickEvent",value:function(t){var e=t.pixel;h(xe.prototype.__proto__||Object.getPrototypeOf(xe.prototype),"clickEvent",this).call(this,{x:e[0],y:e[1]},t)}},{key:"mousemoveEvent",value:function(t){var e=t.pixel;h(xe.prototype.__proto__||Object.getPrototypeOf(xe.prototype),"mousemoveEvent",this).call(this,{x:e[0],y:e[1]},t)}},{key:"addAnimatorEvent",value:function(){this.$Map.on("movestart",this.animatorMovestartEvent,this),this.$Map.on("moveend",this.animatorMoveendEvent,this)}},{key:"onEvents",value:function(){var t=this.$Map;this.unEvents(),this.options.methods&&(this.options.methods.click&&t.on("click",this.clickEvent,this),this.options.methods.mousemove&&t.on("pointermove",this.mousemoveEvent,this))}},{key:"unEvents",value:function(){var t=this.$Map;this.options.methods&&(this.options.methods.click&&t.un("click",this.clickEvent,this),this.options.methods.pointermove&&t.un("pointermove",this.mousemoveEvent,this))}},{key:"setDefaultCursor",value:function(t,e){if(this.$Map){var n=this.$Map.getTargetElement();e?n.style.cursor!==t&&(this.previousCursor_=n.style.cursor,n.style.cursor=t):void 0!==this.previousCursor_&&(n.style.cursor=this.previousCursor_,this.previousCursor_=void 0)}}},{key:"show",value:function(){this.$Map.addLayer(this.layer_)}},{key:"hide",value:function(){this.$Map.removeLayer(this.layer_)}}]),xe);function xe(){var t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:null,e=arguments[1],n=arguments[2];s(this,xe);var i=u(this,(xe.__proto__||Object.getPrototypeOf(xe)).call(this,t,e,n));return i.options=n,i.canvasLayer={canvas:null,devicePixelRatio:window.devicePixelRatio},i.layer_=null,i.previousCursor_=void 0,i.init(t,n),i.argCheck(n),i}var _e,we=(l(be,Gt),e(be,[{key:"clickEvent",value:function(t){var e=this.map.containerPointToLayerPoint([0,0]),n=this.devicePixelRatio=this.canvasLayer.devicePixelRatio=window.devicePixelRatio,i=t.layerPoint;h(be.prototype.__proto__||Object.getPrototypeOf(be.prototype),"clickEvent",this).call(this,L.point((i.x-e.x)/n,(i.y-e.y)/n),t)}},{key:"mousemoveEvent",value:function(t){var e=t.layerPoint;h(be.prototype.__proto__||Object.getPrototypeOf(be.prototype),"mousemoveEvent",this).call(this,e,t)}},{key:"bindEvent",value:function(){var t=this.map;this.options.methods&&(this.options.methods.click&&t.on("click",this.clickEvent),this.options.methods.mousemove&&t.on("mousemove",this.mousemoveEvent)),this.map.on("movestart",this._moveStartEvent),this.map.on("moveend",this._moveEndEvent),this.map.on("zoomstart",this._zoomStartEvent)}},{key:"destroy",value:function(){this.unbindEvent(),this.clearData(),this.animator&&this.animator.stop(),this.animator=null,this.canvasLayer=null}},{key:"unbindEvent",value:function(){var t=this.map;this.options.methods&&(this.options.methods.click&&t.off("click",this.clickEvent),this.options.methods.mousemove&&t.off("mousemove",this.mousemoveEvent)),this.map.off("movestart",this._moveStartEvent),this.map.off("moveend",this._moveEndEvent),this.map.off("zoomstart",this._zoomStartEvent)}},{key:"getContext",value:function(){return this.canvasLayer.getCanvas().getContext(this.context)}},{key:"addData",value:function(t,e){var n=t;t&&t.get&&(n=t.get()),this.dataSet.add(n),this.update({options:e})}},{key:"update",value:function(t){var e=t||{},n=e.data;n&&n.get&&(n=n.get()),null!=n&&this.dataSet.set(n),h(be.prototype.__proto__||Object.getPrototypeOf(be.prototype),"update",this).call(this,{options:e.options})}},{key:"getData",value:function(){return this.dataSet}},{key:"removeData",value:function(e){if(this.dataSet){var t=this.dataSet.get({filter:function(t){return null==e||"function"!=typeof e||!e(t)}});this.dataSet.set(t),this.update({options:null})}}},{key:"clearData",value:function(){this.dataSet&&this.dataSet.clear(),this.update({options:null})}},{key:"_canvasUpdate",value:function(n){if(this.canvasLayer){var i=this,o=i.options.animation,t=this.getContext(),a=this.map;if(i.isEnabledTime()){if(void 0===n)return void this.clear(t);"2d"===this.context&&(t.save(),t.globalCompositeOperation="destination-out",t.fillStyle="rgba(0, 0, 0, .1)",t.fillRect(0,0,t.canvas.width,t.canvas.height),t.restore())}else this.clear(t);if("2d"===this.context)for(var e in i.options)t[e]=i.options[e];else t.clear(t.COLOR_BUFFER_BIT);if(!(i.options.minZoom&&a.getZoom()<i.options.minZoom||i.options.maxZoom&&a.getZoom()>i.options.maxZoom)){var r=a.getBounds(),s=r.getEast()-r.getWest(),h=r.getNorth()-r.getSouth(),l=a.getSize(),u=s/l.x,c=h/l.y,p=this.canvasLayer.getTopLeft(),v=a.latLngToContainerPoint(p),d={transferCoordinate:function(t){var e,n={x:(e="2d"===i.context?a.latLngToContainerPoint(L.latLng(t[1],t[0])):{x:(t[0]-p.lng)/u,y:(p.lat-t[1])/c}).x-v.x,y:e.y-v.y};return[n.x,n.y]}};void 0!==n&&(d.filter=function(t){var e=o.trails||10;return n&&t.time>n-e&&t.time<n});var g=i.dataSet.get(d);this.processData(g),i.options._size=i.options.size;var f=a.latLngToContainerPoint(L.latLng(0,0)),m={x:f.x-v.x,y:f.y-v.y};this.drawContext(t,g,i.options,m),i.options.updateCallback&&i.options.updateCallback(n)}}}},{key:"init",value:function(t){this.options=t,this.initDataRange(t),this.context=this.options.context||"2d",this.options.zIndex&&this.canvasLayer&&this.canvasLayer.setZIndex(this.options.zIndex),this.initAnimator()}},{key:"addAnimatorEvent",value:function(){}},{key:"moveStartEvent",value:function(){var t=this.options.animation;this.isEnabledTime()&&this.animator&&(this.steps.step=t.stepsRange.start,this._hide())}},{key:"moveEndEvent",value:function(){this.canvasLayer.draw(),this._show()}},{key:"zoomStartEvent",value:function(){this._hide()}},{key:"clear",value:function(t){t&&t.clearRect&&t.clearRect(0,0,t.canvas.width,t.canvas.height)}},{key:"_hide",value:function(){this.canvasLayer.canvas.style.display="none"}},{key:"_show",value:function(){this.canvasLayer.canvas.style.display="block"}},{key:"draw",value:function(){this.canvasLayer.draw()}}]),be);function be(t,e,n,i){s(this,be);var o=u(this,(be.__proto__||Object.getPrototypeOf(be)).call(this,t,n,i));if(!Gt)return u(o);var a=o;return i=i||{},a.init(i),a.argCheck(i),o.canvasLayer=e,o.clickEvent=o.clickEvent.bind(o),o.mousemoveEvent=o.mousemoveEvent.bind(o),o._moveStartEvent=o.moveStartEvent.bind(o),o._moveEndEvent=o.moveEndEvent.bind(o),o._zoomStartEvent=o.zoomStartEvent.bind(o),o.bindEvent(),o}if("undefined"!=typeof L){var ke=L.Layer.extend({options:{attributionPrefix:null,attribution:""},initialize:function(t,e,n){n=n||{},this.dataSet=t||{},this.mapVOptions=e||{},this.render=this.render.bind(this),L.Util.setOptions(this,n),this.options.attributionPrefix&&(this.options.attribution=this.options.attributionPrefix+this.options.attribution),this.canvas=this._createCanvas(),L.stamp(this)},onAdd:function(t){this._map=t;var e=this.getPane(),n=this.container=L.DomUtil.create("div","leaflet-layer leaflet-zoom-animated",e);n.appendChild(this.canvas);var i=t.getSize();n.style.width=i.x+"px",n.style.height=i.y+"px",this.renderer=new we(t,this,this.dataSet,this.mapVOptions),this.draw(),this.fire("loaded")},onRemove:function(){L.DomUtil.remove(this.container),this.renderer.destroy()},addData:function(t,e){this.renderer.addData(t,e)},update:function(t){this.renderer.update(t)},getData:function(){return this.renderer&&(this.dataSet=this.renderer.getData()),this.dataSet},removeData:function(t){this.renderer&&this.renderer.removeData(t)},clearData:function(){this.renderer.clearData()},draw:function(){return this._reset()},setZIndex:function(t){this.canvas.style.zIndex=t},render:function(){this.renderer._canvasUpdate()},getCanvas:function(){return this.canvas},getContainer:function(){return this.container},getTopLeft:function(){var t,e=this._map;e&&(t=e.getBounds().getNorthWest());return t},_createCanvas:function(){var t=document.createElement("canvas");t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.style.pointerEvents="none",t.style.zIndex=this.options.zIndex||600;var e="undefined"==typeof window?{}:window,n=this.devicePixelRatio=e.devicePixelRatio;return this.mapVOptions.context&&"2d"!==this.mapVOptions.context||t.getContext("2d").scale(n,n),t},_resize:function(){var t=this.canvas;if(t){var e=this._map,n=e.getSize();t.width=n.x,t.height=n.y,t.style.width=n.x+"px",t.style.height=n.y+"px";var i=e.getBounds(),o=e.latLngToLayerPoint(i.getNorthWest());L.DomUtil.setPosition(t,o)}},_reset:function(){this._resize(),this._render()},redraw:function(){this._resize(),this._render()},_render:function(){this.render()}});_e=function(t,e,n){return new ke(t,e,n)}}var Ee,Le=_e,Ce=(l(Se,Gt),e(Se,[{key:"initDevicePixelRatio",value:function(){this.devicePixelRatio=window.devicePixelRatio||1}},{key:"clickEvent",value:function(t){var e=t.point;h(Se.prototype.__proto__||Object.getPrototypeOf(Se.prototype),"clickEvent",this).call(this,e,t)}},{key:"mousemoveEvent",value:function(t){var e=t.point;h(Se.prototype.__proto__||Object.getPrototypeOf(Se.prototype),"mousemoveEvent",this).call(this,e,t)}},{key:"addAnimatorEvent",value:function(){}},{key:"animatorMovestartEvent",value:function(){var t=this.options.animation;this.isEnabledTime()&&this.animator&&(this.steps.step=t.stepsRange.start)}},{key:"animatorMoveendEvent",value:function(){this.isEnabledTime()&&this.animator}},{key:"bindEvent",value:function(){this.map,this.options.methods&&(this.options.methods.click,this.options.methods.mousemove)}},{key:"unbindEvent",value:function(){var t=this.map;this.options.methods&&(this.options.methods.click&&t.off("click",this.clickEvent),this.options.methods.mousemove&&t.off("mousemove",this.mousemoveEvent))}},{key:"getContext",value:function(){return this.canvasLayer.canvas.getContext(this.context)}},{key:"init",value:function(t){this.options=t,this.initDataRange(t),this.context=this.options.context||"2d",this.options.zIndex&&this.canvasLayer&&this.canvasLayer.setZIndex(this.options.zIndex),this.initAnimator()}},{key:"_canvasUpdate",value:function(n){this.map;var i=this.scene;if(this.canvasLayer&&!this.stopAniamation){var o=this.options.animation,t=this.getContext();if(this.isEnabledTime()){if(void 0===n)return void this.clear(t);"2d"===this.context&&(t.save(),t.globalCompositeOperation="destination-out",t.fillStyle="rgba(0, 0, 0, .1)",t.fillRect(0,0,t.canvas.width,t.canvas.height),t.restore())}else this.clear(t);if("2d"===this.context)for(var e in this.options)t[e]=this.options[e];else t.clear(t.COLOR_BUFFER_BIT);var a={transferCoordinate:function(t){var e=Cesium.Cartesian3.fromDegrees(t[0],t[1]),n=Cesium.SceneTransforms.wgs84ToWindowCoordinates(i,e);return null==n?[-1,-1]:[n.x,n.y]}};void 0!==n&&(a.filter=function(t){var e=o.trails||10;return!!(n&&t.time>n-e&&t.time<n)});var r=this.dataSet.get(a);this.processData(r),"m"==this.options.unit&&this.options.size,this.options._size=this.options.size;var s=Cesium.SceneTransforms.wgs84ToWindowCoordinates(i,Cesium.Cartesian3.fromDegrees(0,0));this.drawContext(t,new T(r),this.options,s),this.options.updateCallback&&this.options.updateCallback(n)}}},{key:"updateData",value:function(t,e){var n=t;n&&n.get&&(n=n.get()),null!=n&&this.dataSet.set(n),h(Se.prototype.__proto__||Object.getPrototypeOf(Se.prototype),"update",this).call(this,{options:e})}},{key:"addData",value:function(t,e){var n=t;t&&t.get&&(n=t.get()),this.dataSet.add(n),this.update({options:e})}},{key:"getData",value:function(){return this.dataSet}},{key:"removeData",value:function(e){if(this.dataSet){var t=this.dataSet.get({filter:function(t){return null==e||"function"!=typeof e||!e(t)}});this.dataSet.set(t),this.update({options:null})}}},{key:"clearData",value:function(){this.dataSet&&this.dataSet.clear(),this.update({options:null})}},{key:"draw",value:function(){this.canvasLayer.draw()}},{key:"clear",value:function(t){t&&t.clearRect&&t.clearRect(0,0,t.canvas.width,t.canvas.height)}}]),Se);function Se(t,e,n,i){s(this,Se);var o=u(this,(Se.__proto__||Object.getPrototypeOf(Se)).call(this,t,e,n));return Gt?(o.map=t,o.scene=t.scene,o.dataSet=e,n=n||{},o.init(n),o.argCheck(n),o.initDevicePixelRatio(),o.canvasLayer=i,o.stopAniamation=!1,o.animation=n.animation,o.clickEvent=o.clickEvent.bind(o),o.mousemoveEvent=o.mousemoveEvent.bind(o),o.bindEvent(),o):u(o)}if("undefined"!=typeof Cesium){var Me=0,Pe=(e(ze,[{key:"initDevicePixelRatio",value:function(){this.devicePixelRatio=window.devicePixelRatio||1}},{key:"addInnerContainer",value:function(){this.container.appendChild(this.canvas)}},{key:"bindEvent",value:function(){var e=this;this.innerMoveStart=this.moveStartEvent.bind(this),this.innerMoveEnd=this.moveEndEvent.bind(this),this.scene.camera.moveStart.addEventListener(this.innerMoveStart,this),this.scene.camera.moveEnd.addEventListener(this.innerMoveEnd,this);var t=new Cesium.ScreenSpaceEventHandler(this.scene.canvas);t.setInputAction(function(t){e.innerMoveEnd()},Cesium.ScreenSpaceEventType.LEFT_UP),t.setInputAction(function(t){e.innerMoveEnd()},Cesium.ScreenSpaceEventType.MIDDLE_UP),this.handler=t}},{key:"unbindEvent",value:function(){this.scene.camera.moveStart.removeEventListener(this.innerMoveStart,this),this.scene.camera.moveEnd.removeEventListener(this.innerMoveEnd,this),this.scene.postRender.removeEventListener(this._reset,this),this.handler&&(this.handler.destroy(),this.handler=null)}},{key:"moveStartEvent",value:function(){this.mapvBaseLayer&&(this.mapvBaseLayer.animatorMovestartEvent(),this.scene.postRender.addEventListener(this._reset,this))}},{key:"moveEndEvent",value:function(){this.mapvBaseLayer&&(this.scene.postRender.removeEventListener(this._reset,this),this.mapvBaseLayer.animatorMoveendEvent(),this._reset())}},{key:"zoomStartEvent",value:function(){this._unvisiable()}},{key:"zoomEndEvent",value:function(){this._unvisiable()}},{key:"addData",value:function(t,e){null!=this.mapvBaseLayer&&this.mapvBaseLayer.addData(t,e)}},{key:"updateData",value:function(t,e){null!=this.mapvBaseLayer&&this.mapvBaseLayer.updateData(t,e)}},{key:"getData",value:function(){return this.mapvBaseLayer&&(this.dataSet=this.mapvBaseLayer.getData()),this.dataSet}},{key:"removeData",value:function(t){null!=this.mapvBaseLayer&&this.mapvBaseLayer&&this.mapvBaseLayer.removeData(t)}},{key:"removeAllData",value:function(){null!=this.mapvBaseLayer&&this.mapvBaseLayer.clearData()}},{key:"_visiable",value:function(){return this.canvas.style.display="block",this}},{key:"_unvisiable",value:function(){return this.canvas.style.display="none",this}},{key:"_createCanvas",value:function(){var t=document.createElement("canvas");t.id=this.mapVOptions.layerid||"mapv"+Me++,t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.style.pointerEvents="none",t.style.zIndex=this.mapVOptions.zIndex||0,t.width=parseInt(this.map.canvas.width),t.height=parseInt(this.map.canvas.height),t.style.width=this.map.canvas.style.width,t.style.height=this.map.canvas.style.height;var e=this.devicePixelRatio;return"2d"==this.mapVOptions.context&&t.getContext(this.mapVOptions.context).scale(e,e),t}},{key:"_reset",value:function(){this.resizeCanvas(),this.fixPosition(),this.onResize(),this.render()}},{key:"draw",value:function(){this._reset()}},{key:"show",value:function(){this._visiable()}},{key:"hide",value:function(){this._unvisiable()}},{key:"destroy",value:function(){this.remove()}},{key:"remove",value:function(){null!=this.mapvBaseLayer&&(this.removeAllData(),this.mapvBaseLayer.clear(this.mapvBaseLayer.getContext()),this.mapvBaseLayer=void 0,this.canvas.parentElement.removeChild(this.canvas))}},{key:"update",value:function(t){null!=t&&this.updateData(t.data,t.options)}},{key:"resizeCanvas",value:function(){if(null!=this.canvas&&null!=this.canvas){var t=this.canvas;t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.width=parseInt(this.map.canvas.width),t.height=parseInt(this.map.canvas.height),t.style.width=this.map.canvas.style.width,t.style.height=this.map.canvas.style.height}}},{key:"fixPosition",value:function(){}},{key:"onResize",value:function(){}},{key:"render",value:function(){null!=this.mapvBaseLayer&&this.mapvBaseLayer._canvasUpdate()}}]),ze);Ee=function(t,e,n,i){return new Pe(t,e,n,i)}}function ze(t,e,n,i){if(s(this,ze),this.map=t,this.scene=t.scene,this.mapvBaseLayer=new Ce(t,e,n,this),this.mapVOptions=n,this.initDevicePixelRatio(),this.canvas=this._createCanvas(),this.render=this.render.bind(this),i)this.container=i;else{var o=t.container.querySelector(".cesium-viewer-cesiumWidgetContainer");this.container=o||t.container}this.addInnerContainer(),this.bindEvent(),this._reset()}var Re=Ee,Ae={getDataSet:function(t){var e=[],n=t.features;if(n)for(var i=0;i<n.length;i++){var o=n[i],a=o.geometry,r=o.properties,s={};for(var h in r)s[h]=r[h];s.geometry=a,e.push(s)}return new T(e)}},Oe={CSVToArray:function(t,e){e=e||",";for(var n=new RegExp("(\\"+e+'|\\r?\\n|\\r|^)(?:"([^"]*(?:""[^"]*)*)"|([^"\\'+e+"\\r\\n]*))","gi"),i=[[]],o=null;o=n.exec(t);){var a,r=o[1];r.length&&r!==e&&i.push([]),a=o[2]?o[2].replace(new RegExp('""',"g"),'"'):o[3],i[i.length-1].push(a)}return i},getDataSet:function(t,e){for(var n=this.CSVToArray(t,e||","),i=[],o=n[0],a=1;a<n.length-1;a++){for(var r=n[a],s={},h=0;h<r.length;h++){var l=r[h];"geometry"==o[h]&&(l=JSON.parse(l)),s[o[h]]=l}i.push(s)}return new T(i)}};t.version="2.0.62",t.canvasClear=E,t.canvasResolutionScale=function(t){var e=window.devicePixelRatio||1;t.canvas.width=t.canvas.width*e,t.canvas.height=t.canvas.height*e,t.canvas.style.width=t.canvas.width/e+"px",t.canvas.style.height=t.canvas.height/e+"px",t.scale(e,e)},t.canvasDrawSimple=c,t.canvasDrawHeatmap=d,t.canvasDrawGrid=g,t.canvasDrawHoneycomb=f,t.webglDrawSimple=st,t.webglDrawPoint=O,t.webglDrawLine=y,t.webglDrawPolygon=rt,t.utilCityCenter=i,t.utilCurve=lt,t.utilForceEdgeBundling=function(){var d={},m=[],l=[],y=[],x=.1,u=.1,e=2,c=6,p=70,v=.6666667,g=.6,h=1e-8;function f(t){return{x:d[t.target].x-d[t.source].x,y:d[t.target].y-d[t.source].y}}function _(t){return Math.sqrt(Math.pow(d[t.source].x-d[t.target].x,2)+Math.pow(d[t.source].y-d[t.target].y,2))}function w(t){for(var e=0,n=1;n<y[t].length;n++){e+=b(y[t][n],y[t][n-1])}return e}function b(t,e){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function r(t,e){var n=Math.sqrt((e.target.x-e.source.x)*(e.target.x-e.source.x)+(e.target.y-e.source.y)*(e.target.y-e.source.y)),i=((e.source.y-t.y)*(e.source.y-e.target.y)-(e.source.x-t.x)*(e.target.x-e.source.x))/(n*n);return{x:e.source.x+i*(e.target.x-e.source.x),y:e.source.y+i*(e.target.y-e.source.y)}}function k(t,e){for(var n,i={x:0,y:0},o=l[t],a=0;a<o.length;a++){var r={x:y[o[a]][e].x-y[t][e].x,y:y[o[a]][e].y-y[t][e].y};if(Math.abs(r.x)>h||Math.abs(r.y)>h){var s=1/Math.pow((n={source:y[o[a]][e],target:y[t][e]},Math.sqrt(Math.pow(n.source.x-n.target.x,2)+Math.pow(n.source.y-n.target.y,2))),1);i.x+=r.x*s,i.y+=r.y*s}}return i}function E(t,e,n){for(var i,o,a,r,s,h,l,u,c=x/(_(m[t])*(e+1)),p=[{x:0,y:0}],v=1;v<e+1;v++){var d={x:0,y:0},g=(o=v,a=c,u=l=void 0,r=y[i=t][o-1],s=y[i][o+1],h=y[i][o],l=r.x-h.x+s.x-h.x,u=r.y-h.y+s.y-h.y,{x:l*=a,y:u*=a}),f=k(t,v);d.x=n*(g.x+f.x),d.y=n*(g.y+f.y),p.push(d)}return p.push({x:0,y:0}),p}function L(t){for(var e=0;e<m.length;e++)if(1==t)y[e].push(d[m[e].source]),y[e].push((u=m[e],{x:(d[u.source].x+d[u.target].x)/2,y:(d[u.source].y+d[u.target].y)/2})),y[e].push(d[m[e].target]);else{var n=w(e)/(t+1),i=n,o=[];o.push(d[m[e].source]);for(var a=1;a<y[e].length;a++){for(var r=b(y[e][a],y[e][a-1]);i<r;){var s=i/r,h=y[e][a-1].x,l=y[e][a-1].y;h+=s*(y[e][a].x-y[e][a-1].x),l+=s*(y[e][a].y-y[e][a-1].y),o.push({x:h,y:l}),r-=i,i=n}i-=r}o.push(d[m[e].target]),y[e]=o}var u}function C(t,e){var n=r(d[e.source],{source:d[t.source],target:d[t.target]}),i=r(d[e.target],{source:d[t.source],target:d[t.target]}),o={x:(n.x+i.x)/2,y:(n.y+i.y)/2},a={x:(d[t.source].x+d[t.target].x)/2,y:(d[t.source].y+d[t.target].y)/2};return Math.max(0,1-2*b(a,o)/b(n,i))}function S(t,e){var n,i,o,a,r,s,h,l,u,c,p,v;return u=t,c=e,Math.abs((p=f(u),v=f(c),(p.x*v.x+p.y*v.y)/(_(u)*_(c))))*(h=e,2/((l=(_(s=t)+_(h))/2)/Math.min(_(s),_(h))+Math.max(_(s),_(h))/l))*(a=e,(r=(_(o=t)+_(a))/2)/(r+b({x:(d[o.source].x+d[o.target].x)/2,y:(d[o.source].y+d[o.target].y)/2},{x:(d[a.source].x+d[a.target].x)/2,y:(d[a.source].y+d[a.target].y)/2})))*(n=t,i=e,Math.min(C(n,i),C(i,n)))}function n(){var t=u,e=p,n=1;!function(){for(var t=0;t<m.length;t++)y[t]=[]}(),function(){for(var t=0;t<m.length;t++)l[t]=[]}(),L(n),function(){for(var t=0;t<m.length-1;t++)for(var e=t+1;e<m.length;e++)t!=e&&(n=m[t],i=m[e],S(n,i)>=g&&(l[t].push(e),l[e].push(t)));var n,i}();for(var i=0;i<c;i++){for(var o=0;o<e;o++){for(var a=[],r=0;r<m.length;r++)a[r]=E(r,n,t);for(var s=0;s<m.length;s++)for(var h=0;h<n+1;h++)y[s][h].x+=a[s][h].x,y[s][h].y+=a[s][h].y}t/=2,e*=v,L(n*=2)}return y}return n.nodes=function(t){return 0==arguments.length?d:(d=t,n)},n.edges=function(t){return 0==arguments.length?m:(m=function(t){for(var e=[],n=0;n<t.length;n++)d[t[n].source].x!=d[t[n].target].x&&d[t[n].source].y!=d[t[n].target].y&&e.push(t[n]);return e}(t),n)},n.bundling_stiffness=function(t){return 0==arguments.length?x:(x=t,n)},n.step_size=function(t){return 0==arguments.length?u:(u=t,n)},n.cycles=function(t){return 0==arguments.length?c:(c=t,n)},n.iterations=function(t){return 0==arguments.length?p:(p=t,n)},n.iterations_rate=function(t){return 0==arguments.length?v:(v=t,n)},n.subdivision_points_seed=function(t){return 0==arguments.length?P:(P=t,n)},n.subdivision_rate=function(t){return 0==arguments.length?e:(e=t,n)},n.compatbility_threshold=function(t){return 0==arguments.length?compatbility_threshold:(g=t,n)},n},t.utilDataRangeIntensity=D,t.utilDataRangeCategory=ut,t.utilDataRangeChoropleth=ct,t.Map=pt,t.baiduMapCanvasLayer=dt,t.baiduMapAnimationLayer=Kt,t.baiduMapLayer=ie,t.googleMapCanvasLayer=ae,t.googleMapLayer=se,t.MaptalksLayer=ge,t.AMapLayer=fe,t.OpenlayersLayer=ye,t.leafletMapLayer=Le,t.cesiumMapLayer=Re,t.DataSet=T,t.geojson=Ae,t.csv=Oe,Object.defineProperty(t,"__esModule",{value:!0})});