hi-ucs/front/plotting/iclient-plot-leaflet/iclient-plot-leaflet-es6.mi...

11 lines
893 KiB
Vue

/*!
*
* iclient-plot-leaflet.(https://iclient.supermap.io)
* Copyright© 2000 - 2020 SuperMap Software Co.Ltd
* version: v10.1.0
*
*/!function(t){var e={};function o(i){if(e[i])return e[i].exports;var l=e[i]={i,l:!1,exports:{}};return t[i].call(l.exports,l,l.exports,o),l.l=!0,l.exports}o.m=t,o.c=e,o.d=function(t,e,i){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(o.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var l in t)o.d(i,l,function(e){return t[e]}.bind(null,l));return i},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=0)}([function(t,e,o){"use strict";o.r(e);var i=window.SuperMap=window.SuperMap||{},l=i.Plot=i.Plot||{},s=(window.SuperMapAlgoPlot=i.Plot||{},SuperMap.Plot.ArrowTailType={ARROWTAIL_NONE:0,ARROWTAIL_LINE:1,ARROWTAIL_CURVE:2,ARROWTAIL_COATTAIL:3,ARROWTAIL_COATTAIL_POLYBODY:4},SuperMap.Plot.ArrowHeadType={ARROWHEAD_POLYLINE:0,ARROWHEAD_TRIANGLE:1,ARROWHEAD_COATTAIL:2,ARROWHEAD_TRIANGLE_SOLID:3,ARROWHEAD_WITH_EAR:4,ARROWHEAD_WITHOUT_EAR:5,ARROWHEAD_COATTAIL_HOLLOW:6},SuperMap.Plot.ArrowBodyType={ARROWBODY_POLYLINE:0,ARROWBODY_POLYBEZIER:1,ARROWBODY_PARALLEL:2,ARROWBODY_TRAPEZOID:3,ARROWBODY_MULTIPOLYBEZIER:4,ARROWBODY_COATTAIL:5},SuperMap.Plot.SymbolType={DOTSYMBOL:1,ALGOSYMBOL:2,TEXTSYMBOL:34,ELLIPSESYMBOL:31,CIRCLESYMBOL:29,RECTANGLESYMBOL:26,ARBITRARYPOLYGONSYMBOL:32,POLYLINESYMBOL:24,PARALLELOGRAM:28,ARCSYMBOL:44,NEWARCSYMBOL:4401,REGULARPOLYGON:410,CHORDSYMBOL:370,PIESYMBOL:380,NEWPIESYMBOL:3801,KIDNEY:390,POLYBEZIERSYMBOL:590,PARALLELLINE:48,BRACESYMBOL:400,ANNOFRAMESYMBOL:320,ANNOFRAMESYMBOLM:321,TRAPEZOIDSYMBOL:350,POLYBEZIERCLOSESYMBOL:360,GROUPOBJECT:1e3,LINERELATION:1001,INTERFERENCEBEAM:1002,POLYGONREGION:1003,ARCREGION:1004,AIRROUTE:1005,NAVYROUTE:1006,MISSILEROUTE:1007,NAVYDEPLOYMENT:1008,AIRDEPLOYMENT:1009,SATELLITE:1010,SATELLITETIMEWINDOWS:1011,SYMBOLTEXT:1012,RUNWAY:1013,CURVEEIGHT:1014,ROUTENODE:1015,ARROWLINE:1016,PATHTEXT:1017,LITERATESIGN:1018,CONCENTRICCIRCLE:1019,FLAGGROUP:1020,SYMBOLTEXT1:1021,COMBINATIONALCIRCLE:1022,FREECURVE:1023,SYMBOLTEXTBOX:1024,NODECHAIN:1025,LINEMARKING:1026,AVOIDREGION:1027,WIRE:1028,LINEARARROW:1029,PICTURE:3e3}),n=SuperMap.Plot.LineRelationType={SOLID:0,DASH:1,ARROW:2},a=SuperMap.Plot.AlgoSurroundLineType={NONE:0,INNER:1,OUT:2,ALL:3},r=SuperMap.Plot.RouteNodeType={RENDEZVOUS:"RENDEZVOUS",EXPANDING:"EXPANDING",VOLLEY:"VOLLEY",STANDBY:"STANDBY",SUPPLY:"SUPPLY",TAKEOFF:"TAKEOFF",INITIAL:"INITIAL",VISUALINITAL:"VISUALINITAL",LANCH:"LANCH",TURNING:"TURNING",AIMING:"AIMING",COMMONROUTE:"COMMONROUTE",WEAPONLAUNCH:"WEAPONLAUNCH",TARGET:"TARGET",ATTACK:"ATTACK",SUPPRESS:"SUPPRESS",EIGHTSPIRAL:"EIGHTSPIRAL",HAPPYVALLEY:"HAPPYVALLEY"},p=SuperMap.Plot.RelLineText={ONLINE:0,ONLEFTLINE:1,ONRIGHTLINE:2,ONBOTHLINE:3},u=SuperMap.Plot.RadiusLineType={NONE:0,SOLID:1,ARROW:2},h=(SuperMap.Plot.Position={TOP:4,BOTTOM:5,LEFT:6,RIGHT:7},SuperMap.Plot.AnnoPosition={LEFTTOP:0,LEFTBOTTOM:1,RIGHTTOP:2,RIGHTBOTTOM:3,TOP:4,BOTTOM:5,LEFT:6,RIGHT:7,MIDDLE:8,ANCHOR:9}),g=SuperMap.Plot.ArrowLineType={DOUBLELINE:0,TRIANGLESOLID:1,NONE:2},c=SuperMap.Plot.TextBoxType={WITHTIPBOX:0,RECTBOX:1,LINEBOX:2,NONEBOX:3},y=SuperMap.Plot.PositionOffsetType={LINE:0,GRADIENTLINE:1},P=SuperMap.Plot.AlignType={LEFT:0,RIGHT:1,UP:2,DOWN:3,VERTICALCENTER:4,HORIZONTALCENTER:5},d=SuperMap.Plot.EditMode={ADDCONTROLPOINT:0,EDITCONTROLPOINT:1,EDITCIRCUMRECTANGLE:2,REMOVECONTROLPOINT:3};SuperMap.Plot.EqualLargeType={WIDTH:0,HEIGHT:1,SAME:2},SuperMap.Plot.UniformDistributionType={LEVEL:0,VERTICAL:1};SuperMap.Plot.TransactionType={CREATE:0,EDIT:1,REMOVE:2};var S=SuperMap.Plot.Event=SuperMap.Plot.Event||{};SuperMap.Plot.Event.beforefeatureadded="beforefeatureadded",SuperMap.Plot.Event.featureadded="featureadded",SuperMap.Plot.Event.beforefeaturesselected="beforefeaturesselected",SuperMap.Plot.Event.featuresselected="featuresselected",SuperMap.Plot.Event.beforefeaturesunselected="beforefeaturesunselected",SuperMap.Plot.Event.featuresunselected="featuresunselected",SuperMap.Plot.Event.beforefeaturesmodified="beforefeaturesmodified",SuperMap.Plot.Event.featuresmodified="featuresmodified",SuperMap.Plot.Event.beforefeaturesremoved="beforefeaturesremoved",SuperMap.Plot.Event.featuresremoved="featuresremoved",SuperMap.Plot.Event.beforefeaturesadded="beforefeaturesadded",SuperMap.Plot.Event.featuresadded="featuresadded",SuperMap.Plot.Event.movingtargetsselected="featuresselected",SuperMap.Plot.Event.movingtargetsunselected="featuresunselected",SuperMap.Plot.Event.movingtargetcontextmenu="featurecontextmenu",SuperMap.Plot.Event.initializecompleted="initializecompleted",SuperMap.Plot.Event.cachecompleted="cachecompleted",SuperMap.Plot.Event.reseteditmarkersvalues="reseteditmarkersvalues",SuperMap.Plot.Event.reseteditmarkers="reseteditmarkers";var f=SuperMap.Plot.GOAnimationType={ANIMATION_UNKNOWN:-1,ANIMATION_WAY:0,ANIMATION_BLINK:1,ANIMATION_ATTRIBUTE:2,ANIMATION_SHOW:3,ANIMATION_ROTATE:4,ANIMATION_SCALE:5,ANIMATION_GROW:6};SuperMap.Plot.BlinkAnimationBlinkStyle={Blink_Frequency:0,Blink_Number:1},SuperMap.Plot.BlinkAnimationReplaceStyle={Replace_NoColor:0,Replace_Color:1},SuperMap.Plot.RotateDirection={ClockWise:0,AntiClockWise:1},SuperMap.Plot.WayPathType={POLYLINE:0,CURVE:1},SuperMap.Plot.GOAnimationState={UNKNOWN:0,PLAYING:1,PAUSE:2,STOP:3,RESET:4};SuperMap.PlotCommonServiceBase=class extends SuperMap.CommonServiceBase{constructor(t,e){super(t,e),this.CLASS_NAME="SuperMap.PlotCommonServiceBase"}destroy(){super.destroy()}_commit(t){"POST"!==t.method&&"PUT"!==t.method||(t.params&&(t.url=SuperMap.Util.urlAppend(t.url,SuperMap.Util.getParameterString(t.params||{}))),t.params=t.data),SuperMap.FetchRequest.commit(t.method,t.url,t.params,{headers:t.headers,withCredentials:t.withCredentials,crossOrigin:t.crossOrigin,timeout:t.async?0:null,proxy:t.proxy}).then(function(t){return t.text()}).then(function(e){var o=(new SuperMap.Format.JSON).read(e);o||(o={error:e}),o.error?(t.scope?SuperMap.Function.bind(t.failure,t.scope):t.failure)(o.error):(o.succeed=void 0==o.succeed||o.succeed,(t.scope?SuperMap.Function.bind(t.success,t.scope):t.success)(o))})}};class m{constructor(t){t=t||{},this.method=t.method?t.method:"POST",this.sitData=t.sitData?t.sitData:null,this.smlFileName=t.smlFileName?t.smlFileName:"",this.isCover=!!t.isCover&&t.isCover,this.CLASS_NAME="SuperMap.EditSmlFileParameters"}destroy(){this.method="POST",this.sitData=null,this.isCover=!1,this.smlFileName=""}static toJsonParameters(t){if(t)return SuperMap.Plot.PlottingUtil.toJSON(t.sitData)}}SuperMap.EditSmlFileParameters=m;class M extends SuperMap.PlotCommonServiceBase{constructor(t,e){super(t,e),(e=e||{})&&SuperMap.Util.extend(this,e);var o=this;o.events=new SuperMap.Events(o,null,o.EVENT_TYPES,!0),o.eventListeners instanceof Object&&o.events.on(o.eventListeners),this.CLASS_NAME="SuperMap.EditSmlFileService"}destroy(){super.destroy()}processAsync(t){if(t){var e=this,o=t.method,i=e.url.substr(e.url.length-1,1);e.url+="/"==i?"smlInfos/":"/smlInfos/",e.url+=t.smlFileName+".json",e.url+="?isCover="+t.isCover;var l=null;t.method&&"POST"===t.method&&(l=SuperMap.EditSmlFileParameters.toJsonParameters(t)),e.request({method:o,data:l,scope:e,success:e.serviceProcessCompleted,failure:e.serviceProcessFailed})}}}SuperMap.EditSmlFileService=M;class b extends SuperMap.PlotCommonServiceBase{constructor(t,e){super(t,e),(e=e||{})&&SuperMap.Util.extend(this,e);var o;o=this.url.substr(this.url.length-1,1),this.url+="/"==o?"symbolLibs.json?":"/symbolLibs.json?",this.CLASS_NAME="SuperMap.GetLibIDsService"}destroy(){super.destroy()}processAsync(){this.request({method:"GET",data:null,scope:this,success:this.serviceProcessCompleted,failure:this.serviceProcessFailed})}}SuperMap.GetLibIDsService=b;class A{constructor(t){t=t||{},this.libID=t.libID,this.CLASS_NAME="SuperMap.GetLibInfoParameter"}destroy(){this.libID=null}}SuperMap.GetLibInfoParameter=A;class T extends SuperMap.PlotCommonServiceBase{constructor(t,e){super(t,e),(e=e||{})&&SuperMap.Util.extend(this,e);var o;o=this.url.substr(this.url.length-1,1),this.url+="/"==o?"symbolLibs/":"/symbolLibs/",this.CLASS_NAME="SuperMap.GetLibInfoService"}destroy(){super.destroy()}processAsync(t){var e=this;t&&null!==t.libID&&(e.libID=t.libID),e.url+=e.libID,e.url+=".json",e.request({method:"GET",data:null,scope:e,success:e.serviceProcessCompleted,failure:e.serviceProcessFailed})}}SuperMap.GetLibInfoService=T;class v{constructor(t){t=t||{},this.start=t.start,this.count=t.count?t.count:null,this.CLASS_NAME="SuperMap.GetSMLInfosParameters"}destroy(){this.start=null,this.count=null}static toUrlParameters(t){if(t){var e="";return null!==t.start&&(e="?start="+encodeURIComponent(t.start)),!t.count||null===t.count&&0===t.count||(e+="&count="+encodeURIComponent(t.count)),e}}}SuperMap.GetSMLInfosParameters=v;class _ extends SuperMap.PlotCommonServiceBase{constructor(t,e){super(t,e),(e=e||{})&&SuperMap.Util.extend(this,e);var o,i=this;i.events=new SuperMap.Events(i,null,i.EVENT_TYPES,!0),i.eventListeners instanceof Object&&i.events.on(i.eventListeners),o=i.url.substr(i.url.length-1,1),i.url+="/"==o?"smlInfos":"/smlInfos",i.url+=".json",this.CLASS_NAME="SuperMap.GetSMLInfosService"}destroy(){super.destroy()}processAsync(t){if(t){var e=this;e.url+=SuperMap.GetSMLInfosParameters.toUrlParameters(t),e.request({method:"GET",data:null,scope:e,success:e.serviceProcessCompleted,failure:e.serviceProcessFailed})}}}SuperMap.GetSMLInfosService=_;class x{constructor(t){t=t||{},this.libID=t.libID,this.code=t.code,this.inputPoints=t.inputPoints?t.inputPoints:null,this.symbolRank=t.symbolRank?t.symbolRank:0,this.negativeImage=!!t.negativeImage&&t.negativeImage,this.surroundLineType=t.surroundLineType?t.surroundLineType:0,this.subSymbols=t.subSymbols?t.subSymbols:null,this.scaleValues=t.scaleValues?t.scaleValues:null,this.scalePoints=t.scalePoints?t.scalePoints:null,this.newScalePoint=t.newScalePoint?t.newScalePoint:null,this.newScalePointIndex=t.newScalePointIndex?t.newScalePointIndex:0,this.CLASS_NAME="SuperMap.GetSymbolInfoParameters"}destroy(){var t=this;t.libID=null,t.code=null,t.inputPoints=null,t.symbolRank=null,t.negativeImage=null,t.surroundLineType=null,t.subSymbols=null,t.scaleValues=null,t.scalePoints=null,t.newScalePoint=null,t.newScalePointIndex=null}static toUrlParameters(t){if(t&&null!==t.libID&&null!==t.code){var e="libID="+encodeURIComponent(t.libID)+"&code="+encodeURIComponent(t.code);if(t.inputPoints&&null!==t.inputPoints&&0!==t.inputPoints.length){let o="[";for(let e=0;e<t.inputPoints.length;e++)e===t.inputPoints.length-1?o+='{"x":'+t.inputPoints[e].x+', "y":'+t.inputPoints[e].y+"}]":o+='{"x":'+t.inputPoints[e].x+', "y":'+t.inputPoints[e].y+"},";e+="&inputPoints="+encodeURIComponent(o)}if(t.scalePoints&&null!==t.scalePoints&&0!==t.scalePoints.length){let o="[";for(let e=0;e<t.scalePoints.length;e++)e===t.scalePoints.length-1?o+='{"x":'+t.scalePoints[e].x+', "y":'+t.scalePoints[e].y+"}]":o+='{"x":'+t.scalePoints[e].x+', "y":'+t.scalePoints[e].y+"},";e+="&scalePoints="+encodeURIComponent(o)}if(t.scaleValues&&null!==t.scaleValues&&0!==t.scaleValues.length){let o="[";for(let e=0;e<t.scaleValues.length;e++)e===t.scaleValues.length-1?o+=t.scaleValues[e]+"]":o+=t.scaleValues[e]+",";e+="&scaleValues="+encodeURIComponent(o)}if(t.subSymbols&&null!==t.subSymbols&&0!==t.subSymbols.length){let o="[";for(let e=0;e<t.subSymbols.length;e++)e===t.subSymbols.length-1?o+=t.subSymbols[e].code+"]":o+=t.subSymbols[e].code+",";e+="&subSymbols="+encodeURIComponent(o)}return t.newScalePoint&&null!==t.newScalePoint&&(e+="&newScalePoint="+encodeURIComponent('{"x":'+t.newScalePoint.x+', "y":'+t.newScalePoint.y+"}")),t.newScalePointIndex&&null!==t.newScalePointIndex&&(e+="&newScalePointIndex="+encodeURIComponent(t.newScalePointIndex)),t.symbolRank&&null!==t.symbolRank&&(e+="&symbolRank="+encodeURIComponent(t.symbolRank)),t.negativeImage&&null!==t.negativeImage&&(e+="&negativeImage="+encodeURIComponent(t.negativeImage)),t.surroundLineType&&null!==t.surroundLineType&&(e+="&surroundLineType="+encodeURIComponent(t.surroundLineType)),e}}}SuperMap.GetSymbolInfoParameters=x;class O extends SuperMap.PlotCommonServiceBase{constructor(t,e){super(t,e=e||{});var o;o=this.url.substr(this.url.length-1,1),this.url+="/"==o?"graphicObject.json?":"/graphicObject.json?",this.CLASS_NAME="SuperMap.GetSymbolInfoService"}destroy(){super.destroy()}processAsync(t){if(t){var e,o=this;e=SuperMap.GetSymbolInfoParameters.toUrlParameters(t),o.url+=e,t.dynamicToken&&(o.url+="&dynamicToken="+t.dynamicToken),"MSIE"===SuperMap.Browser.name.toUpperCase()&&(o.url=encodeURI(o.url)),o.request({method:"GET",params:null,scope:o,success:o.myServiceProcessCompleted,failure:o.serviceProcessFailed})}}myServiceProcessCompleted(t){null!=(t=SuperMap.Util.transformResult(t))&&null!=t.textStyle2D&&null!=t.textStyle2D.fontHeight&&(t.textStyle2D.fontHeight=3),this.events.triggerEvent("processCompleted",{result:t})}}SuperMap.GetSymbolInfoService=O;class w{constructor(t){t=t||{},this.lineColor=t.lineColor?t.lineColor:"#ff0000",this.lineWidth=t.lineWidth?t.lineWidth:2,this.lineType=t.lineType?t.lineType:0,this.lineOpacity=t.lineOpacity?t.lineOpacity:1,this.lineCap=t.lineCap?t.lineCap:"round",this.flagTextSize=t.flagTextSize?t.flagTextSize:60,this.maxScale=t.maxScale?t.maxScale:5,this.minScale=t.minScale?t.minScale:1,this.dotSymbolSize=t.dotSymbolSize?t.dotSymbolSize:40,this.dotTextSpace=t.dotTextSpace?t.dotTextSpace:7,this.scaleByMap=!!t.scaleByMap&&t.scaleByMap,this.fillColor=t.fillColor?t.fillColor:"#ff0000",this.fillOpacity=t.fillOpacity?t.fillOpacity:.31,this.fontColor=t.fontColor?t.fontColor:"#000000",this.fontOpacity=t.fontOpacity?t.fontOpacity:1,this.fontStroke=!!t.fontStroke&&t.fontStroke,this.fontStrokeColor=t.fontStrokeColor?t.fontStrokeColor:"#ff0000",this.fontStrokeWidth=t.fontStrokeWidth?t.fontStrokeWidth:"2px",this.fontBackground=!!t.fontBackground&&t.fontBackground,this.fontBackgroundColor=t.fontBackgroundColor?t.fontBackgroundColor:"#ff0000",this.fontShadow=!!t.fontShadow&&t.fontShadow,this.fontShadowColor=t.fontShadowColor?t.fontShadowColor:"#ff0000",this.fontShadowOffsetX=t.fontShadowOffsetX?t.fontShadowOffsetX:0,this.fontShadowOffsetY=t.fontShadowOffsetY?t.fontShadowOffsetY:0,this.fontSize=t.fontSize?t.fontSize:14,this.fontSpace=t.fontSpace?t.fontSpace:0,this.fontPercent=t.fontPercent?t.fontPercent:100,this.fontFamily=t.fontFamily?t.fontFamily:"微软雅黑",this.fontWeight=t.fontWeight?t.fontWeight:"bold",this.fontStyle=t.fontStyle?t.fontStyle:"",this.surroundLineType=t.surroundLineType?t.surroundLineType:0,this.surroundLineColor=t.surroundLineColor?t.surroundLineColor:"#ffff00",this.surroundLineWidth=t.surroundLineWidth?t.surroundLineWidth:4,this.surroundLineColorOpacity=t.surroundLineColorOpacity?t.surroundLineColorOpacity:1,this.fontStyle=t.fontStyle?t.fontStyle:"",this.fillBackColor=t.fillBackColor?t.fillBackColor:"#ff0000",this.fillBackOpacity=t.fillBackOpacity?t.fillBackOpacity:1,this.fillGradientMode=t.fillGradientMode?t.fillGradientMode:"NONE",this.fillCenterOffsetX=t.fillCenterOffsetX?t.fillCenterOffsetX:0,this.fillCenterOffsetY=t.fillCenterOffsetY?t.fillCenterOffsetY:0,this.fillAngle=t.fillAngle?t.fillAngle:0,this.fillSymbolID=t.fillSymbolID?t.fillSymbolID:1,this.defaultFlag=!!t.defaultFlag&&t.defaultFlag,this.CLASS_NAME="SuperMap.Plot.DefaultStyle",this.parserConfiguration()}parserConfiguration(){"undefined"!=typeof DefaultStyleConfiguration&&("undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.flagTextSize&&(this.flagTextSize=parseFloat(DefaultStyleConfiguration.flagTextSize)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.maxScale&&(this.maxScale=parseFloat(DefaultStyleConfiguration.maxScale)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.minScale&&(this.minScale=parseFloat(DefaultStyleConfiguration.minScale)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.dotSymbolSize&&(this.dotSymbolSize=parseFloat(DefaultStyleConfiguration.dotSymbolSize)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.dotTextSpace&&(this.dotTextSpace=parseFloat(DefaultStyleConfiguration.dotTextSpace)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.scaleByMap&&(this.scaleByMap=DefaultStyleConfiguration.scaleByMap),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.strokeWidth&&(this.lineWidth=parseFloat(DefaultStyleConfiguration.strokeWidth)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.strokeColor&&(this.lineColor=DefaultStyleConfiguration.strokeColor),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.strokeOpacity&&(this.lineOpacity=parseFloat(DefaultStyleConfiguration.strokeOpacity)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.strokeDashstyle&&(this.lineType=DefaultStyleConfiguration.strokeDashstyle),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.strokeLinecap&&(this.lineCap=DefaultStyleConfiguration.strokeLinecap),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillColor&&(this.fillColor=DefaultStyleConfiguration.fillColor),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillOpacity&&(this.fillOpacity=parseFloat(DefaultStyleConfiguration.fillOpacity)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontColor&&(this.fontColor=DefaultStyleConfiguration.fontColor),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontOpacity&&(this.fontOpacity=parseFloat(DefaultStyleConfiguration.fontOpacity)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontStroke&&(this.fontStroke=DefaultStyleConfiguration.fontStroke),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontStrokeColor&&(this.fontStrokeColor=DefaultStyleConfiguration.fontStrokeColor),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontStrokeWidth&&(this.fontStrokeWidth=parseFloat(DefaultStyleConfiguration.fontStrokeWidth)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontBackground&&(this.fontBackground=DefaultStyleConfiguration.fontBackground),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontBackgroundColor&&(this.fontBackgroundColor=DefaultStyleConfiguration.fontBackgroundColor),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontShadow&&(this.fontShadow=DefaultStyleConfiguration.fontShadow),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontShadowColor&&(this.fontShadowColor=DefaultStyleConfiguration.fontShadowColor),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontShadowOffsetX&&(this.fontShadowOffsetX=DefaultStyleConfiguration.fontShadowOffsetX),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontShadowOffsetY&&(this.fontShadowOffsetY=DefaultStyleConfiguration.fontShadowOffsetY),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontSpace&&(this.fontSpace=parseInt(DefaultStyleConfiguration.fontSpace)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontPercent&&(this.fontPercent=parseFloat(DefaultStyleConfiguration.fontPercent)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontSize&&(this.fontSize=parseFloat(DefaultStyleConfiguration.fontSize)),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontFamily&&(this.fontFamily=DefaultStyleConfiguration.fontFamily),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontWeight&&(this.fontWeight=DefaultStyleConfiguration.fontWeight),"undefined"==typeof DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fontStyle&&(this.fontStyle=DefaultStyleConfiguration.fontStyle),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.surroundLineType&&(this.surroundLineType=parseFloat(DefaultStyleConfiguration.surroundLineType)),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.surroundLineColor&&(this.surroundLineColor=DefaultStyleConfiguration.surroundLineColor),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.surroundLineWidth&&(this.surroundLineWidth=parseFloat(DefaultStyleConfiguration.surroundLineWidth)),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.surroundLineColorOpacity&&(this.surroundLineColorOpacity=parseFloat(DefaultStyleConfiguration.surroundLineColorOpacity)),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillBackColor&&(this.fillBackColor=DefaultStyleConfiguration.fillBackColor),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillBackOpacity&&(this.fillBackOpacity=parseFloat(DefaultStyleConfiguration.fillBackOpacity)),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillGradientMode&&(this.fillGradientMode=DefaultStyleConfiguration.fillGradientMode),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillAngle&&(this.fillAngle=parseFloat(DefaultStyleConfiguration.fillAngle)),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillCenterOffsetX&&(this.fillCenterOffsetX=parseFloat(DefaultStyleConfiguration.fillCenterOffsetX)),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillCenterOffsetY&&(this.fillCenterOffsetY=parseFloat(DefaultStyleConfiguration.fillCenterOffsetY)),DefaultStyleConfiguration&&void 0!==DefaultStyleConfiguration.fillSymbolID&&(this.fillSymbolID=parseFloat(DefaultStyleConfiguration.fillSymbolID)))}destroy(){this.lineColor=null,this.lineWidth=null,this.dotSymbolSize=null,this.lineType=null,this.defaultFlag=null,this.flagTextSize=null,this.maxScale=null,this.minScale=null,this.dotTextSpace=null,this.scaleByMap=null,this.lineOpacity=null,this.lineCap=null,this.fillColor=null,this.fillOpacity=null,this.fontColor=null,this.fontOpacity=null,this.fontSize=null,this.fontFamily=null,this.fontWeight=null,this.fontStyle=null,this.fontPercent=null,this.fontSpace=null,this.surroundLineType=null,this.surroundLineColor=null,this.surroundLineWidth=null,this.surroundLineColorOpacity=null,this.fillBackColor=null,this.fillBackOpacity=null,this.fillGradientMode=null,this.fillAngle=null,this.fillCenterOffsetX=null,this.fillCenterOffsetY=null,this.fillSymbolID=null}}SuperMap.Plot.DefaultStyle=w;class I{constructor(t){t=t||{},this.properties=t.properties?t.properties:[],this.CLASS_NAME="SuperMap.Plot.ExtendProperty"}addProperty(t,e){var o=this.findProperty(t);return null==o?this.properties.push(new SuperMap.Plot.Property(t,e)):o.setValue(e),!0}deleteProperty(t){for(var e=0;e<this.properties.length;e++)if(this.properties[e].key===t)return this.properties.slice(e,1),!0;return!1}findProperty(t){for(var e=0;e<this.properties.length;e++)if(this.properties[e].key===t)return this.properties[e];return null}getPropertyValue(t){for(var e=0;e<this.properties.length;e++)if(this.properties[e].key===t)return this.properties[e].value;return null}getPropertyByIndex(t){return t<this.properties.length?this.properties[t]:null}getPropertyCount(){return this.properties.length}destroy(){this.properties=null}}SuperMap.Plot.ExtendProperty=I;class C{constructor(t){t=t||{},this.layerName=t.layerName?t.layerName:null,this.spatialAnalystUrl=t.spatialAnalystUrl?t.spatialAnalystUrl:null,this.useCanvas2=!!t.useCanvas2&&t.useCanvas2,this.useCanvas=!!t.useCanvas&&t.useCanvas,this.features=t.features?t.features:null,this.CLASS_NAME="SuperMap.Plot.LayerDataStruct"}destroy(){this.layerName=null,this.spatialAnalystUrl=null,this.useCanvas2=null,this.useCanvas=null,this.features=null}toJSON(){for(var t=[],e=0;e<this.features.length;e++)t.push(this.features[e].getSymbolData());return'{"layerName":'+SuperMap.Plot.PlottingUtil.toJSON(this.layerName)+', "spatialAnalystUrl":'+SuperMap.Plot.PlottingUtil.toJSON(this.spatialAnalystUrl)+', "useCanvas2":'+SuperMap.Plot.PlottingUtil.toJSON(this.useCanvas2)+', "useCanvas":'+SuperMap.Plot.PlottingUtil.toJSON(this.useCanvas)+', "isEditable":'+SuperMap.Plot.PlottingUtil.toJSON(this.isEditable)+', "isLocked":'+SuperMap.Plot.PlottingUtil.toJSON(this.isLocked)+', "visibility":'+SuperMap.Plot.PlottingUtil.toJSON(this.visibility)+',"features":'+SuperMap.Plot.PlottingUtil.toJSON(t)+"}"}}SuperMap.Plot.LayerDataStruct=C;class E{constructor(t){t=t||{},this.zoom=t.zoom?t.zoom:null,this.centerX=t.centerX?t.centerX:null,this.centerY=t.centerY?t.centerY:null,this.CLASS_NAME="SuperMap.Plot.MapInfoStruct"}destroy(){this.zoom=null,this.centerX=null,this.centerY=null}fromJSON(t){void 0!==t.zoom&&(this.zoom=t.zoom),void 0!==t.centerX&&(this.centerX=t.centerX),void 0!==t.centerY&&(this.centerY=t.centerY)}toJSON(){return'{"zoom":'+SuperMap.Plot.PlottingUtil.toJSON(this.zoom)+',"centerX":'+SuperMap.Plot.PlottingUtil.toJSON(this.centerX)+',"centerY":'+SuperMap.Plot.PlottingUtil.toJSON(this.centerY)+"}"}}SuperMap.Plot.MapInfoStruct=E;class D{constructor(t,e,o,i,l){this.x=parseFloat(t),this.y=parseFloat(e),(o||0==o)&&(this.z=parseFloat(o)),i&&(this.number=i),l&&(this.time=l),this.CLASS_NAME="SuperMap.Plot.OrbitPoint"}destroy(){this.x=null,this.y=null,this.z=null,this.index=null,this.time=null}clone(t){return null==t&&(t=new SuperMap.Plot.OrbitPoint(this.x,this.y,this.z)),SuperMap.Util.applyDefaults(t,this),t}}SuperMap.Plot.OrbitPoint=D;class U{constructor(t,e){t&&(this.key=t),e&&(this.value=e),this.CLASS_NAME="SuperMap.Plot.Property"}setKey(t){this.key=t}getKey(){return this.key}setValue(t){this.value=t}getValue(){return this.value}destroy(){this.key=null,this.value=null}clone(){return new SuperMap.Plot.Property(this.key,this.value)}}SuperMap.Plot.Property=U;class N{constructor(t){t=t||{},this.id=t.id?t.id:SuperMap.Plot.PlottingUtil.generateUuid(),this.x=t.x?t.x:null,this.y=t.y?t.y:null,this.z=t.z?t.z:null,this.type=t.type?t.type:null,this.name=t.name?t.name:null,this.rotate=t.rotate?t.rotate:0,this.towardNodes=t.towardNodes?t.towardNodes:[],this.style=t.style?t.style:{},0===Object.keys(this.style).length&&(this.style=SuperMap.Util.cloneObject(L.supermap.plotting.PlottingObject.prototype._defaultStyle)),this.CLASS_NAME="SuperMap.Plot.RouteNode"}destroy(){this.type=null,this.position=null,this.name=null,this.id=null,this.rotate=null,this.towardNodes&&null!==this.towardNodes||(this.towardNodes=null);for(var t=0;t<this.towardNodes.length;t++)this.towardNodes[t].destroy();this.towardNodes=null}clone(){var t={id:this.id,type:this.type,name:this.name,rotate:this.rotate,towardNodes:this.towardNodes},e=new N(t);return e.positionPoint=this.positionPoint.clone(),e.style={},e.style=SuperMap.Util.copyAttributes(e.style,this.style),e}parseSymbolData(t){for(var e in this.id=t.id,this.type=t.type,this.name=t.name,this.rotate=t.rotate,t.positionPoint?(this.x=t.positionPoint.x,this.y=t.positionPoint.y,this.z=t.positionPoint.z):(this.x=t.x,this.y=t.y,this.z=t.z),this.style=SuperMap.Plot.AnalysisSymbol.getStyle(t,!0),t.towardNodes){var o=new SuperMap.Plot.TowardNode;this.towardNodes.push(o.parseSymbolData(t.towardNodes[e]))}return this}setSymbolData(){var t={};for(var e in t.id=this.id,t.type=this.type,t.name=this.name,t.rotate=this.rotate,t.x=this.x,t.y=this.y,t.z=this.z,SuperMap.Plot.AnalysisSymbol.setStyle(this.style,t,!0),t.towardNodes=[],this.towardNodes)t.towardNodes.push(this.towardNodes[e].setSymbolData());return t}}SuperMap.Plot.RouteNode=N;class R{constructor(t){t=t||{},this.smlInfo=t.smlInfo?t.smlInfo:null,this.mapInfo=t.mapInfo?t.mapInfo:null,this.layerDatas=t.layerDatas?t.layerDatas:null,this.CLASS_NAME="SuperMap.Plot.SitDataStruct"}destroy(){this.smlInfo=null,this.mapInfo=null,this.layerDatas=null}}SuperMap.Plot.SitDataStruct=R;class B{constructor(t){t&&(this.SMLName=t.SMLName,this.SMLDesc=t.SMLDesc,this.SMLSeclevel=t.SMLSeclevel,this.SMLDepat=t.SMLDepat,this.SMLAuthor=t.SMLAuthor,this.SMLTime=t.SMLTime),this.CLASS_NAME="SuperMap.Plot.SMLInfoStruct"}destroy(){this.SMLName="",this.SMLDesc="",this.SMLAuthor="",this.SMLSeclevel="",this.SMLDepat="",this.SMLTime=""}fromJSON(t){this.SMLName=t.SMLName,this.SMLDesc=t.SMLDesc,this.SMLSeclevel=t.SMLSeclevel,this.SMLDepat=t.SMLDepat,this.SMLAuthor=t.SMLAuthor,this.SMLTime=t.SMLTime}toJSON(){return'{"SMLName":'+SuperMap.Plot.PlottingUtil.toJSON(this.SMLName)+',"SMLDesc":'+SuperMap.Plot.PlottingUtil.toJSON(this.SMLDesc)+',"SMLSeclevel":'+SuperMap.Plot.PlottingUtil.toJSON(this.SMLSeclevel)+',"SMLDepat":'+SuperMap.Plot.PlottingUtil.toJSON(this.SMLDepat)+',"SMLAuthor":'+SuperMap.Plot.PlottingUtil.toJSON(this.SMLAuthor)+',"SMLTime":'+SuperMap.Plot.PlottingUtil.toJSON(this.SMLTime)+"}"}}SuperMap.Plot.SMLInfoStruct=B;class F{constructor(t,e,o){o=o||{},this.libID=t,this.code=e,this.symbolData=o.symbolData?o.symbolData:null,this.textContent=o.textContent?o.textContent:null,this.totalNum=o.totalNum?o.totalNum:null,this.CLASS_NAME="SuperMap.Plot.SubSymbol"}destroy(){this.libID=null,this.code=null,this.symbolData=null,this.totalNum=null}clone(){var t=new SuperMap.Plot.SubSymbol(this.libID,this.code);return t.symbolData={},t.symbolData=SuperMap.Util.copyAttributes(t.symbolData,this.symbolData),t.textContent=this.textContent,t.totalNum=this.totalNum,t}}SuperMap.Plot.SubSymbol=F;class k{constructor(t,e,o,i){i=i||{},this.textContent=t,this.textPosition=e,void 0!==this.textPosition&&null!==this.textPosition||(this.textPosition=0),this.offsetX=i.offsetX?i.offsetX:0,this.offsetY=i.offsetY?i.offsetY:0,this.border=null!=i.border&&i.border,this.showRelationLine=null==i.showRelationLine||i.showRelationLine,this.paddingX=i.paddingX?i.paddingX:0,this.paddingY=i.paddingY?i.paddingY:0,this.style={display:"display",color:"#ff0000",lineSymbolID:0,opacity:"1.00",weight:2,lineCap:"square",lineJoin:"square",surroundLineColor:"#ffff00",surroundLineColorOpacity:"1.00",surroundLineWidth:4,fillSymbolID:1,fillColor:"#ff0000",fillOpacity:"0.31",fillBackColor:"#ff0000",fillBackOpacity:"1.00",fillGradientMode:"NONE",fontColor:"#000000",fontFamily:"Microsoft YaHei",fontSize:"12",fontStroke:!1,fontStrokeColor:"#ff0000",fontStrokeWidth:"2px",fontBackground:!1,fontBackgroundColor:"#ff0000",fontShadow:!1,fontShadowColor:"#ff0000",fontShadowOffsetX:0,fontShadowOffsetY:0,fontSpace:0,fontPercent:100,sizeFixed:!0,labelAlign:"lt",labelRotation:-0,labelXOffset:0,labelYOffset:0,fillAngle:0,fillCenterOffsetX:0,fillCenterOffsetY:0},null!=o&&(this.style=SuperMap.Util.copyAttributes(this.style,o)),this.lineStyle={color:"#ff0000",lineSymbolID:0,opacity:1,weight:2},null!=i.lineStyle&&(this.lineStyle=SuperMap.Util.copyAttributes(this.lineStyle,i.lineStyle)),this.CLASS_NAME="SuperMap.Plot.SymbolText"}destroy(){this.textContent=null,this.textPosition=null,this.offsetX=null,this.offsetY=null,this.border=null,this.paddingX=null,this.paddingY=null,this.showRelationLine=null,this.style=null,this.lineStyle=null}clone(){var t={offsetX:this.offsetX,offsetY:this.offsetY,border:this.border,paddingX:this.paddingX,paddingY:this.paddingY,showRelationLine:this.showRelationLine},e={};e=SuperMap.Util.copyAttributes(e,this.style);var o=new SuperMap.Plot.SymbolText(this.textContent,this.textPosition,e,t),i={};return i=SuperMap.Util.copyAttributes(i,this.lineStyle),o.lineStyle=i,o}setSymbolData(){var t={};return t.textContent=this.textContent,t.textPosition=this.textPosition,t.offsetX=this.offsetX,t.offsetY=this.offsetY,t.border=this.border,t.paddingX=this.paddingX,t.paddingY=this.paddingY,t.showRelationLine=this.showRelationLine,null!=this.lineStyle&&(t.lineStyle={},null!=this.lineStyle.color&&(t.lineStyle.color=this.lineStyle.color),null!=this.lineStyle.lineSymbolID&&(t.lineStyle.lineSymbolID=this.lineStyle.lineSymbolID),null!=this.lineStyle.dashArray&&(t.lineStyle.dashArray=this.lineStyle.dashArray),null!=this.lineStyle.opacity&&(t.lineStyle.opacity=this.lineStyle.opacity),null!=this.lineStyle.weight&&(t.lineStyle.weight=this.lineStyle.weight)),SuperMap.Plot.AnalysisSymbol.setStyle(this.style,t,!0),t}parseSymbolData(t){return this.textContent=t.textContent,this.textPosition=t.textPosition,this.offsetX=t.offsetX,this.offsetY=t.offsetY,null!=t.border&&(this.border=t.border),null!=t.paddingX&&(this.paddingX=t.paddingX),null!=t.paddingY&&(this.paddingY=t.paddingY),null!=t.showRelationLine&&(this.showRelationLine=t.showRelationLine),null!=t.lineStyle&&(null==this.lineStyle&&(this.lineStyle=null),null!=t.lineStyle.color&&(this.lineStyle.color=t.lineStyle.color),null!=t.lineStyle.lineSymbolID&&(this.lineStyle.lineSymbolID=t.lineStyle.lineSymbolID),null!=t.lineStyle.dashArray&&(this.lineStyle.dashArray=t.lineStyle.dashArray),null!=t.lineStyle.opacity&&(this.lineStyle.opacity=t.lineStyle.opacity),null!=t.lineStyle.weight&&(this.lineStyle.weight=t.lineStyle.weight)),SuperMap.Plot.AnalysisSymbol.getStyle(t,!0),this}}SuperMap.Plot.SymbolText=k;SuperMap.Plot.BloodVolume=class{constructor(t,e,o,i){i=i||{},this.volume=t,this.position=e,void 0!==this.position&&null!==this.position||(this.position=SuperMap.Plot.Position.TOP),this.offsetX=i.offsetX?i.offsetX:0,this.offsetY=i.offsetY?i.offsetY:0,this.width=i.width?i.width:null,this.height=i.height?i.height:null,this.style={display:"display",color:"#808080",opacity:1,weight:4,remainingVolumeColor:"#00ff00",remainingVolumeOpacity:.8,consumeVolumeColor:"#000000",consumeVolumeOpacity:.8},null!=o&&(this.style=SuperMap.Util.copyAttributes(this.style,o)),this.CLASS_NAME="SuperMap.Plot.BloodVolume"}destroy(){this.volume=null,this.position=null,this.offsetX=null,this.offsetY=null,this.width=null,this.height=null,this.style=null}clone(){var t={offsetX:this.offsetX,offsetY:this.offsetY,width:this.width,height:this.height},e={};return e=SuperMap.Util.copyAttributes(e,this.style),new SuperMap.Plot.BloodVolume(this.volume,this.position,e,t)}setSymbolData(){var t={};return t.volume=this.volume,t.position=this.position,t.offsetX=this.offsetX,t.offsetY=this.offsetY,t.width=this.width,t.height=this.height,null!=this.style&&(t.style={},null!=this.style.display&&(t.style.display=this.style.display),null!=this.style.color&&(t.style.color=this.style.color),null!=this.style.opacity&&(t.style.opacity=this.style.opacity),null!=this.style.weight&&(t.style.weight=this.style.weight),null!=this.style.remainingVolumeColor&&(t.style.remainingVolumeColor=this.style.remainingVolumeColor),null!=this.style.remainingVolumeOpacity&&(t.style.remainingVolumeOpacity=this.style.remainingVolumeOpacity),null!=this.style.consumeVolumeColor&&(t.style.consumeVolumeColor=this.style.consumeVolumeColor),this.style.consumeVolumeOpacity&&(t.style.consumeVolumeOpacity=this.style.consumeVolumeOpacity)),t}parseSymbolData(t){return this.volume=t.volume,this.position=t.position,this.offsetX=t.offsetX,this.offsetY=t.offsetY,null!=t.width&&(this.width=t.width),null!=t.height&&(this.height=t.height),null!=t.style&&(null==this.style&&(this.style={}),null!=t.style.display&&(this.style.display=t.style.display),null!=t.style.color&&(this.style.color=t.style.color),null!=t.style.opacity&&(this.style.opacity=t.style.opacity),null!=t.style.weight&&(this.style.weight=t.style.weight),null!=t.style.remainingVolumeColor&&(this.style.remainingVolumeColor=t.style.remainingVolumeColor),null!=t.style.remainingVolumeOpacity&&(this.style.remainingVolumeOpacity=t.style.remainingVolumeOpacity),null!=t.style.consumeVolumeColor&&(this.style.consumeVolumeColor=t.style.consumeVolumeColor),t.style.consumeVolumeOpacity&&(this.style.consumeVolumeOpacity=t.style.consumeVolumeOpacity)),this}};SuperMap.Plot.PictureFrame=class{constructor(t,e,o){o=o||{},this.path=t,this.position=e,void 0!==this.position&&null!==this.position||(this.position=SuperMap.Plot.Position.TOP),this.offsetX=o.offsetX?o.offsetX:0,this.offsetY=o.offsetY?o.offsetY:0,this.width=o.width?o.width:32,this.height=o.height?o.height:32,this.CLASS_NAME="SuperMap.Plot.PictureFrame"}destroy(){this.path=null,this.position=null,this.offsetX=null,this.offsetY=null,this.width=null,this.height=null}clone(){var t={offsetX:this.offsetX,offsetY:this.offsetY,width:this.width,height:this.height};return new SuperMap.Plot.PictureFrame(this.path,this.position,t)}setSymbolData(){var t={};return t.path=this.path,t.position=this.position,t.offsetX=this.offsetX,t.offsetY=this.offsetY,t.width=this.width,t.height=this.height,t}parseSymbolData(t){return this.path=t.path,this.position=t.position,null!=t.offsetX&&(this.offsetX=t.offsetX),null!=t.offsetY&&(this.offsetY=t.offsetY),null!=t.width&&(this.width=t.width),null!=t.height&&(this.height=t.height),this}};SuperMap.Plot.Trajectory=class{constructor(t,e,o,i,l){l=l||{},this.latlngs=[],this.trajectoryLength=t,null==this.trajectoryLength&&(this.trajectoryLength=15),this.showTrackingLine=e,null==this.showTrackingLine&&(this.showTrackingLine=!0),this.showTrackingPoint=o,null==this.showTrackingPoint&&(this.showTrackingPoint=!1),this.saveTrackingPoint=null!=l.saveTrackingPoint&&l.saveTrackingPoint,this.trackingPointStyle=null!=l.trackingPointStyle?l.trackingPointStyle:0,this.trackingPointRadius=null!=l.trackingPointRadius?l.trackingPointRadius:2,this.style={color:"#ff0000",opacity:1,weight:1},null!=i&&(this.style=SuperMap.Util.copyAttributes(this.style,i)),this.CLASS_NAME="SuperMap.Plot.Trajectory"}addLatLng(t){this.latlngs.length>0&&SuperMap.Plot.PlottingUtil.equalFuzzy(t.lat,this.latlngs[this.latlngs.length-1].lat)&&SuperMap.Plot.PlottingUtil.equalFuzzy(t.lng,this.latlngs[this.latlngs.length-1].lng)||(!1===this.saveTrackingPoint&&-1!==this.trajectoryLength&&this.trajectoryLength>0?this.latlngs.length<this.trajectoryLength?this.latlngs.push(L.latLng(t.lat,t.lng)):(this.latlngs.splice(0,this.latlngs.length-this.trajectoryLength+1),this.latlngs.push(L.latLng(t.lat,t.lng))):-1!==this.trajectoryLength&&!0!==this.saveTrackingPoint||this.latlngs.push(L.latLng(t.lat,t.lng)))}getDisplayLatLngs(t){var e=[];if("none"===this.style.display)return e;let o=[],i=0;this.trajectoryLength>0&&this.latlngs.length>this.trajectoryLength&&(i+=this.latlngs.length-this.trajectoryLength);for(var l=i;l<this.latlngs.length&&!t.contains(this.latlngs[l]);l++)if(!0===this.showTrackingLine&&l!==this.latlngs.length-1){0===o.length&&(o.push(t.getNorthWest()),o.push(t.getNorthEast()),o.push(t.getSouthEast()),o.push(t.getSouthWest()),o.push(t.getNorthWest()));let e=!1;for(let t=0;t<o.length-1;t++)if(SuperMap.Plot.PlottingUtil.isCross(this.latlngs[l],this.latlngs[l+1],o[t],o[t+1])){e=!0;break}if(e)break}let s=i;for(l>i&&(s=l),l=s;l<this.latlngs.length;l++)e.push(this.latlngs[l]);return e}generateUuidKey(){return this.trackingPointStyle.toString()+"_"+this.trackingPointRadius.toString()+"_"+this.style.color+"_"+this.style.weight.toString()}destroy(){this.latlngs.length=0,this.trajectoryLength=null,this.showTrackingLine=null,this.showTrackingPoint=null,this.saveTrackingPoint=null,this.style=null}clone(){var t={saveTrackingPoint:this.saveTrackingPoint},e={};return e=SuperMap.Util.copyAttributes(e,this.style),new SuperMap.Plot.Trajectory(this.trajectoryLength,this.showTrackingLine,this.showTrackingPoint,e,t)}setSymbolData(){var t={};return t.trajectoryLength=this.trajectoryLength,t.showTrackingLine=this.showTrackingLine,t.showTrackingPoint=this.showTrackingPoint,t.saveTrackingPoint=this.saveTrackingPoint,SuperMap.Plot.AnalysisSymbol.setStyle(this.style,t,!0),t}parseSymbolData(t){return this.trajectoryLength=t.trajectoryLength,this.showTrackingLine=t.showTrackingLine,this.showTrackingPoint=t.showTrackingPoint,this.saveTrackingPoint=t.saveTrackingPoint,SuperMap.Plot.AnalysisSymbol.getStyle(symbolTextData,!0),this}};class V{constructor(t,e,o){this.startOrbitPoint=t,this.endOrbitPoint=e,this.type=o,this.CLASS_NAME="SuperMap.Plot.TimeWindowParameter"}destroy(){this.startOrbitPoint=null,this.endOrbitPoint=null,this.type=null}}SuperMap.Plot.TimeWindowParameter=V;class Y{constructor(t){t=t||{},this.routeNodeId=t.routeNodeId?t.routeNodeId:null,this.relLineText=t.relLineText?t.relLineText:SuperMap.Plot.RelLineText.ONLEFTLINE,this.index=t.index?t.index:0,this.textContent=t.textContent?t.textContent:null,this.offsetX=t.offsetX?t.offsetX:null,this.offsetY=t.offsetY?t.offsetY:null,this.style=t.style?t.style:{fontSize:12,fontFamily:"Microsoft YaHei"},this.CLASS_NAME="SuperMap.Plot.TowardNode"}destroy(){this.routeNodeId=null,this.relLineText=null,this.textContent=null,this.style=null}clone(){var t={routeNodeId:this.routeNodeId,relLineText:this.relLineText,textContent:this.textContent,style:SuperMap.Util.cloneObject(this.style)};return new Y(t)}parseSymbolData(t){return this.routeNodeId=t.routeNodeId,this.relLineText=t.relLineText,this.index=t.index,this.textContent=t.textContent,this.offsetX=t.offsetX,this.offsetY=t.offsetY,this.style=SuperMap.Plot.AnalysisSymbol.getStyle(t,!0),this}setSymbolData(){var t={};return t.routeNodeId=this.routeNodeId,t.relLineText=this.relLineText,t.index=this.index,t.textContent=this.textContent,t.offsetX=this.offsetX,t.offsetY=this.offsetY,SuperMap.Util.applyDefaults(this.style,L.supermap.plotting.PlottingObject.prototype._defaultStyle),SuperMap.Plot.AnalysisSymbol.setStyle(this.style,t,!0),t}}SuperMap.Plot.TowardNode=Y;SuperMap.Plot.Transaction=class{constructor(t){t=t||{},this.transType=t.transType?t.transType:SuperMap.Plot.TransactionType.EDIT,this.transInfos=[],this.CLASS_NAME="SuperMap.Plot.Transaction"}destroy(){this.transInfos=null,this.transType=null}};SuperMap.Plot.TransactionInfo=class{constructor(t){t=t||{},this.layer=t.layer?t.layer:null,this.feature=t.feature?t.feature:null,this.uuid=t.uuid?t.uuid:null,this.functionName=t.functionName?t.functionName:null,this.undoParams=t.undoParams?t.undoParams:null,this.redoParams=t.redoParams?t.redoParams:null,this.propertyName=t.propertyName?t.propertyName:null,this.undoValue=t.undoValue?t.undoValue:null,this.redoValue=t.redoValue?t.redoValue:null,this.CLASS_NAME="SuperMap.Plot.TransactionInfo"}};class z{constructor(t,e){this.feature=t,this._bounds=e}destroy(){this.feature=null}getContext(){return this.feature._map.getRenderer(this.feature.layer)._ctx}calculateObjectByBounds(){var t=this.feature._map.latLngToLayerPoint(L.latLng(this._bounds.getNorth(),this._bounds.getWest())),e=this.feature._map.latLngToLayerPoint(L.latLng(this._bounds.getSouth(),this._bounds.getEast())),o=this.feature._map.latLngToLayerPoint(L.latLng(this._bounds.getCenter()));if(t.x!==e.x||t.y!==e.y){var i=Math.max(t.x,e.x),l=Math.max(t.y,e.y),s=Math.min(t.x,e.x),n=Math.min(t.y,e.y);return{ptMinX:s,ptMinY:n,width:Math.abs(i-s),height:Math.abs(l-n),center:o,r:Math.abs(t.x-e.x)>Math.abs(e.y-e.y)?Math.abs(t.x-e.x):Math.abs(t.y-e.y)}}}createGradient(){var t=null;if(this.getContext()instanceof CanvasRenderingContext2D){var e=this.calculateObjectByBounds();if("LINEAR"===this.feature.style.fillGradientMode){var o=this.getGradientDirection(this.feature.style.fillAngle);if(t=this.getContext().createLinearGradient(e.ptMinX+e.width*o.x1,e.ptMinY+e.height*o.y1,e.ptMinX+e.width*o.x2,e.ptMinY+e.height*o.y2),0===this.feature.style.fillCenterOffsetX&&0===this.feature.style.fillCenterOffsetY)t.addColorStop(0,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillColor,this.feature.style.fillOpacity)),t.addColorStop(1,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillBackColor,this.feature.style.fillOpacity));else{var i=this.feature.style.fillAngle;0===i||180===i||90===i||270===i?(t.addColorStop(0,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillBackColor,this.feature.style.fillOpacity)),0!==i&&180!==i||t.addColorStop(this.feature.style.fillCenterOffsetX,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillColor,this.feature.style.fillOpacity)),90!==i&&270!==i||t.addColorStop(this.feature.style.fillCenterOffsetY,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillColor,this.feature.style.fillOpacity)),t.addColorStop(1,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillBackColor,this.feature.style.fillOpacity))):(t.addColorStop(0,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillBackColor,this.feature.style.fillOpacity)),t.addColorStop(this.feature.style.fillCenterOffsetX>=this.feature.style.fillCenterOffsetY?this.feature.style.fillCenterOffsetX:this.feature.style.fillCenterOffsetY*Math.cos(this.feature.style.fillAngle*Math.PI/180),SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillColor,this.feature.style.fillOpacity)),t.addColorStop(1,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillBackColor,this.feature.style.fillOpacity)))}}if("RADIAL"===this.feature.style.fillGradientMode){var l=this.feature.style.fillCenterOffsetX*e.r,s=this.feature.style.fillCenterOffsetY*e.r,n=e.r/Math.sqrt(2)+Math.abs(l)>e.r/Math.sqrt(2)+Math.abs(s)?e.r/Math.sqrt(2)+Math.abs(l):e.r/Math.sqrt(2)+Math.abs(s);(t=this.getContext().createRadialGradient(e.center.x+l,e.center.y-s,0,e.center.x+l,e.center.y-s,n)).addColorStop(0,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillColor,this.feature.style.fillOpacity)),this.feature.style.fillColor,this.feature.style.fillBackColor,t.addColorStop(1,SuperMap.Plot.PlottingUtil.colorRGBA(this.feature.style.fillBackColor,this.feature.style.fillOpacity))}return t}}createTextureFill(t){if(0!==t.length){var e=document.createElement("canvas");document.body.appendChild(e);var o=e.getContext("2d");e.width=8,e.height=8;var i=e.width,l=e.height,s=SuperMap.Plot.PlottingUtil.colorStringToRGB(t[0].color);o.strokeStyle=`rgba(${s.red},${s.green},${s.blue},${t[0].opacity})`,o.lineWidth=1;var n=SuperMap.Plot.PlottingUtil.colorStringToRGB(t[1].color);switch(o.fillStyle=`rgba(${n.red},${n.green},${n.blue},${t[1].opacity})`,o.fillRect(0,0,e.width,e.height),o.beginPath(),t[0].fillID){case 0:case 1:break;case 2:o.moveTo(0,l),o.lineTo(i,0);break;case 3:o.moveTo(0,0),o.lineTo(i,0),o.moveTo(0,0),o.lineTo(0,l);break;case 4:o.moveTo(0,l),o.lineTo(i,0),o.moveTo(0,0),o.lineTo(i,l);break;case 5:o.moveTo(0,0),o.lineTo(i,l);break;case 6:o.moveTo(0,0),o.lineTo(i,0);break;case 7:o.moveTo(0,0),o.lineTo(0,l)}o.closePath(),o.stroke(),o.fill();var a=o.createPattern(e,"repeat");return document.body.removeChild(e),a}}createFillMode(t){if(void 0!==this.feature.style.fillSymbolID)if(t.fill=this.feature.style.fill,t.fillSymbolID=this.feature.style.fillSymbolID,0===this.feature.style.fillSymbolID||1===this.feature.style.fillSymbolID||!0===this.feature.style.fill||!1===this.feature.style.fill)0===this.feature.style.fillSymbolID?t.fill=!0:1===this.feature.style.fillSymbolID&&(t.fill=!1),t.fillColor=this.feature.style.fillColor,t.fillOpacity=this.feature.style.fillOpacity;else if(this.feature.style.fillColor!==this.feature.style.fillBackColor||this.feature.style.fillBackOpacity>0&&this.feature.style.fillBackOpacity<1){var e=[];e.push({fillID:this.feature.style.fillSymbolID,color:this.feature.style.fillColor,opacity:this.feature.style.fillOpacity},{fillID:this.feature.style.fillSymbolID,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillBackOpacity}),t.fill=!0,t.fillColor=this.createTextureFill(e),t.fillOpacity=this.feature.style.fillColor}else t.fill=!0,t.fillColor=this.feature.style.fillColor,t.fillOpacity=this.feature.style.fillOpacity;else t.fill=this.feature.style.fill,t.fillColor=this.feature.style.fillColor,t.fillOpacity=this.feature.style.fillOpacity}getGradientDirection(t){var e=function(t){return{x:Math.cos(t),y:Math.sin(t)}},o=function(t){return t*Math.PI/180},i=e(o(180-t%360)),l=e(o(360-t%360)),s=Math.pow(2,-52);return(i.x<=0||Math.abs(i.x)<=s)&&(i.x=0),(i.y<=0||Math.abs(i.y)<=s)&&(i.y=0),(l.x<=0||Math.abs(l.x)<=s)&&(l.x=0),(l.y<=0||Math.abs(l.y)<=s)&&(l.y=0),{x1:i.x,y1:i.y,x2:l.x,y2:l.y}}}SuperMap.Plot.CalculateCanvasGradient=z;class G{constructor(t){this.feature=t}destroy(){this.feature=null}createGradient(){var t=!1;this.feature.layer._renderer._container.defs||(this.feature.layer._renderer._container.defs=L.SVG.create("defs"),t=!0);var e=null;"LINEAR"===this.feature.style.fillGradientMode&&(e=document.getElementById("linearGradient_"+this.feature.uuid)),"RADIAL"===this.feature.style.fillGradientMode&&(e=document.getElementById("radialGradient_"+this.feature.uuid));var o=this.createGradientDirection();for("LINEAR"===this.feature.style.fillGradientMode?((e=null===e?L.SVG.create("linearGradient"):e).setAttributeNS(null,"x1",o.x1),e.setAttributeNS(null,"y1",o.y1),e.setAttributeNS(null,"x2",o.x2),e.setAttributeNS(null,"y2",o.y2)):"RADIAL"===this.feature.style.fillGradientMode&&((e=null===e?L.SVG.create("radialGradient"):e).setAttributeNS(null,"cx",o.cx),e.setAttributeNS(null,"cy",o.cy),e.setAttributeNS(null,"fx",o.fx),e.setAttributeNS(null,"fy",o.fy),e.setAttributeNS(null,"r",o.r));e.hasChildNodes();)e.removeChild(e.firstChild);for(var i=0,l=o.colors.length;i<l;i++){var s=L.SVG.create("stop");s.setAttributeNS(null,"offset",o.colors[i].offset),s.setAttributeNS(null,"style","stop-color:"+SuperMap.Plot.PlottingUtil.colorRGBA(o.colors[i].color,o.colors[i].opacity)),e.appendChild(s)}return 0===e.id.length&&e.setAttributeNS(null,"id",e.tagName+"_"+this.feature.uuid),this.feature.layer._renderer._container.defs.appendChild(e),t&&this.feature.layer._renderer._container.appendChild(this.feature.layer._renderer._container.defs),e.id}createTextureFill(t){var e=!1;this.feature.layer._renderer._container.defs||(this.feature.layer._renderer._container.defs=L.SVG.create("defs"),e=!0);var o=document.getElementById("patternFill_"+this.feature.uuid);function i(t){var e="";return 2===t.fillID?e="rotate(-45)":3===t.fillID||6===t.fillID?e="rotate(0)":4===t.fillID||5===t.fillID?e="rotate(45)":7===t.fillID&&(e="rotate(90)"),e}function l(t,e,o){var i=L.SVG.create("path");i.setAttributeNS(null,"d",t),i.setAttributeNS(null,"stroke",o.color),i.setAttributeNS(null,"stroke-width","2"),i.setAttributeNS(null,"stroke-linecap","square"),i.setAttributeNS(null,"stroke-opacity",o.opacity),e.appendChild(i)}function s(t,e,o){var i=L.SVG.create("polygon");i.setAttributeNS(null,"points",t),i.setAttributeNS(null,"fill",o.color),i.setAttributeNS(null,"fill-opacity",o.opacity),e.appendChild(i)}return o?(o.setAttributeNS(null,"patternTransform",i(t[0]).toString()),3===t[0].fillID||6===t[0].fillID||7===t[0].fillID?(o.setAttributeNS(null,"width",7.3),o.setAttributeNS(null,"height",7.3),o.childNodes[0].setAttributeNS(null,"points","0 0 0 7.3 7.3 7.3 7.3 0"),o.childNodes[1].setAttributeNS(null,"d","M 7.3 0 L 0 0")):(o.setAttributeNS(null,"width",5.4),o.setAttributeNS(null,"height",5.4),o.childNodes[0].setAttributeNS(null,"points","0 0 0 5.4 5.4 5.4 5.4 0"),o.childNodes[1].setAttributeNS(null,"d","M 5.4 0 L 0 0")),o.childNodes[0].setAttributeNS(null,"fill",t[1].color),o.childNodes[0].setAttributeNS(null,"fill-opacity",t[1].opacity),o.childNodes[1].setAttributeNS(null,"stroke",t[0].color),o.childNodes[1].setAttributeNS(null,"stroke-opacity",t[0].opacity),3===t[0].fillID||4===t[0].fillID?(o.childNodes[2]&&(o.childNodes[2].setAttributeNS(null,"stroke",t[0].color),o.childNodes[2].setAttributeNS(null,"stroke-opacity",t[0].opacity)),3===t[0].fillID?null===o&&l("M 0 7.3 L 0 0",o,t[0]):4===t[0].fillID&&null===o&&l("M 0 5.4 L 0 0",o,t[0])):o.childNodes[2]&&o.removeChild(o.childNodes[2]),0===o.id.length&&o.setAttributeNS(null,"id","patternFill_"+this.feature.uuid),o.id):((o=null===o?L.SVG.create("pattern"):o).setAttributeNS(null,"x",0),o.setAttributeNS(null,"y",0),3===t[0].fillID||6===t[0].fillID||7===t[0].fillID?(o.setAttributeNS(null,"width",7.3),o.setAttributeNS(null,"height",7.3)):(o.setAttributeNS(null,"width",5.4),o.setAttributeNS(null,"height",5.4)),o.setAttributeNS(null,"patternUnits","userSpaceOnUse"),o.setAttributeNS(null,"patternTransform",i(t[0]).toString()),3===t[0].fillID||6===t[0].fillID||7===t[0].fillID?(s("0 0 0 7.3 7.3 7.3 7.3 0",o,t[1]),l("M 7.3 0 L 0 0",o,t[0])):(s("0 0 0 5.4 5.4 5.4 5.4 0",o,t[1]),l("M 5.4 0 L 0 0",o,t[0])),4===t[0].fillID?l("M 0 5.4 L 0 0",o,t[0]):3===t[0].fillID&&l("M 0 7.3 L 0 0",o,t[0]),this.feature.layer._renderer._container.defs.appendChild(o),e&&this.feature.layer._renderer._container.appendChild(this.feature.layer._renderer._container.defs),0===o.id.length&&o.setAttributeNS(null,"id","patternFill_"+this.feature.uuid),o.id)}createFillMode(t){if(void 0!==this.feature.style.fillSymbolID)if(t.fill=this.feature.style.fill,t.fillSymbolID=this.feature.style.fillSymbolID,0===this.feature.style.fillSymbolID||1===this.feature.style.fillSymbolID||!0===this.feature.style.fill||!1===this.feature.style.fill)0===this.feature.style.fillSymbolID?t.fill=!0:1===this.feature.style.fillSymbolID&&(t.fill=!1),t.fillColor=this.feature.style.fillColor,t.fillOpacity=this.feature.style.fillOpacity;else if(this.feature.style.fillColor!==this.feature.style.fillBackColor||this.feature.style.fillBackOpacity>0&&this.feature.style.fillBackOpacity<1){var e=[];e.push({fillID:this.feature.style.fillSymbolID,color:this.feature.style.fillColor,opacity:this.feature.style.fillOpacity},{fillID:this.feature.style.fillSymbolID,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillBackOpacity}),this.feature._map.getRenderer(this.feature.layer)instanceof L.SVG?(t.fillOpacity=1,t.fillColor="url(#"+this.createTextureFill(e)+")",t.fill=t.fillColor):new SuperMap.Plot.CalculateCanvasGradient(this.feature,this.feature.getBounds()).createTextureFill(e)}else t.fill=!0,t.fillColor=this.feature.style.fillColor,t.fillOpacity=this.feature.style.fillOpacity;else t.fill=this.feature.style.fill,t.fillColor=this.feature.style.fillColor,t.fillOpacity=this.feature.style.fillOpacity}createGradientDirection(){var t=[];if("LINEAR"===this.feature.style.fillGradientMode){if(null!==this.feature.style.fillCenterOffsetX&&void 0!==this.feature.style.fillCenterOffsetX&&(0===this.feature.style.fillAngle||180===this.feature.style.fillAngle?(t.push({offset:0,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillOpacity}),t.push({offset:this.feature.style.fillCenterOffsetX,color:this.feature.style.fillColor,opacity:this.feature.style.fillOpacity}),t.push({offset:1,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillOpacity})):90===this.feature.style.fillAngle||270===this.feature.style.fillAngle?(t.push({offset:0,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillOpacity}),t.push({offset:this.feature.style.fillCenterOffsetY,color:this.feature.style.fillColor,opacity:this.feature.style.fillOpacity}),t.push({offset:1,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillOpacity})):(t.push({offset:0,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillOpacity}),t.push({offset:this.feature.style.fillCenterOffsetX/2*(Math.sqrt(2)/2)*Math.abs(Math.sin(this.feature.style.fillAngle*Math.PI/180)),color:this.feature.style.fillColor,opacity:this.feature.style.fillOpacity}),t.push({offset:1,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillOpacity}))),this.feature.style.fillAngle>=360&&(this.feature.style.fillAngle=0),0===this.feature.style.fillAngle)return{x1:0,y1:0,x2:1,y2:0,colors:t};if(90===this.feature.style.fillAngle)return{x1:0,y1:1,x2:0,y2:0,colors:t};if(180===this.feature.style.fillAngle)return{x1:1,y1:0,x2:0,y2:0,colors:t};if(270===this.feature.style.fillAngle)return{x1:0,y1:0,x2:0,y2:1,colors:t};if(0<this.feature.style.fillAngle&&this.feature.style.fillAngle<=45)return{x1:0,y1:1,x2:1,y2:(1-Math.tan(this.feature.style.fillAngle*Math.PI/180))/2,colors:t};if(45<this.feature.style.fillAngle&&this.feature.style.fillAngle<90)return{x1:0,y1:1,x2:(1-Math.tan((this.feature.style.fillAngle-45)*Math.PI/180))/2,y2:0,colors:t};if(90<this.feature.style.fillAngle&&this.feature.style.fillAngle<=135)return{x1:1,y1:1,x2:Math.tan((this.feature.style.fillAngle-90)*Math.PI/180)/2,y2:0,colors:t};if(135<this.feature.style.fillAngle&&this.feature.style.fillAngle<180)return{x1:1,y1:1,x2:0,y2:Math.tan((this.feature.style.fillAngle-135)*Math.PI/180)/2,colors:t};if(180<this.feature.style.fillAngle&&this.feature.style.fillAngle<=225)return{x1:1,y1:0,x2:0,y2:Math.tan((this.feature.style.fillAngle-180)*Math.PI/180)/2,colors:t};if(225<this.feature.style.fillAngle&&this.feature.style.fillAngle<270)return{x1:1,y1:0,x2:Math.tan((this.feature.style.fillAngle-225)*Math.PI/180)/2,y2:0,colors:t};if(270<this.feature.style.fillAngle&&this.feature.style.fillAngle<=315)return{x1:0,y1:0,x2:1-Math.tan((this.feature.style.fillAngle-270)*Math.PI/180)/2,y2:1,colors:t};if(315<this.feature.style.fillAngle&&this.feature.style.fillAngle<360)return{x1:0,y1:0,x2:1,y2:Math.tan((this.feature.style.fillAngle-315)*Math.PI/180)/2,colors:t}}else if("RADIAL"===this.feature.style.fillGradientMode)if(null!==this.feature.style.fillCenterOffsetX&&void 0!==this.feature.style.fillCenterOffsetX&&null!==this.feature.style.fillCenterOffsetY&&void 0!==this.feature.style.fillCenterOffsetY&&(t.push({offset:0,color:this.feature.style.fillColor,opacity:this.feature.style.fillOpacity}),this.feature.style.fillColor,this.feature.style.fillBackColor,t.push({offset:1,color:this.feature.style.fillBackColor,opacity:this.feature.style.fillOpacity})),this.feature.style.fillCenterOffsetX<=.5&&this.feature.style.fillCenterOffsetX>=0||this.feature.style.fillCenterOffsetX<=0&&this.feature.style.fillCenterOffsetX>=-1){if(this.feature.style.fillCenterOffsetY>=0&&this.feature.style.fillCenterOffsetY<=.5||this.feature.style.fillCenterOffsetY>=-.5&&this.feature.style.fillCenterOffsetY<=0)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:.5*Math.sqrt(2),colors:t};if(this.feature.style.fillCenterOffsetY>=.5&&this.feature.style.fillCenterOffsetY<=.8||this.feature.style.fillCenterOffsetY>=-.8&&this.feature.style.fillCenterOffsetY<=-.5)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:.8*Math.sqrt(2),colors:t};if(this.feature.style.fillCenterOffsetY>=.8&&this.feature.style.fillCenterOffsetY<=1||this.feature.style.fillCenterOffsetY>=-1&&this.feature.style.fillCenterOffsetY<=-.8)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:Math.sqrt(2),colors:t}}else if(this.feature.style.fillCenterOffsetX<=.8&&this.feature.style.fillCenterOffsetX>.5||this.feature.style.fillCenterOffsetX<=-.5&&this.feature.style.fillCenterOffsetX>=-.8){if(this.feature.style.fillCenterOffsetY>=0&&this.feature.style.fillCenterOffsetY<=.5||this.feature.style.fillCenterOffsetY>=-.5&&this.feature.style.fillCenterOffsetY<=0)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:.8*Math.sqrt(2),colors:t};if(this.feature.style.fillCenterOffsetY>=.5&&this.feature.style.fillCenterOffsetY<=.8||this.feature.style.fillCenterOffsetY>=-.8&&this.feature.style.fillCenterOffsetY<=-.5)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:.8*Math.sqrt(2),colors:t};if(this.feature.style.fillCenterOffsetY>=.8&&this.feature.style.fillCenterOffsetY<=1||this.feature.style.fillCenterOffsetY>=-1&&this.feature.style.fillCenterOffsetY<=-.8)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:Math.sqrt(2),colors:t}}else if(this.feature.style.fillCenterOffsetX<=1&&this.feature.style.fillCenterOffsetX>.8||this.feature.style.fillCenterOffsetX<=-.8&&this.feature.style.fillCenterOffsetX>=-1){if(this.feature.style.fillCenterOffsetY>=0&&this.feature.style.fillCenterOffsetY<=.5||this.feature.style.fillCenterOffsetY>=-.5&&this.feature.style.fillCenterOffsetY<=0)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:Math.sqrt(2),colors:t};if(this.feature.style.fillCenterOffsetY>=.5&&this.feature.style.fillCenterOffsetY<=.8||this.feature.style.fillCenterOffsetY>=-.8&&this.feature.style.fillCenterOffsetY<=-.5)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:Math.sqrt(2),colors:t};if(this.feature.style.fillCenterOffsetY>=.8&&this.feature.style.fillCenterOffsetY<=1||this.feature.style.fillCenterOffsetY>=-1&&this.feature.style.fillCenterOffsetY<=-.8)return{cx:.5,cy:.5,fx:.5+this.feature.style.fillCenterOffsetX,fy:.5-this.feature.style.fillCenterOffsetY,r:Math.sqrt(2),colors:t}}}}SuperMap.Plot.CalculateSVGGradient=G;
/* Copyright© 2000 - 2018 SuperMap Software Co.Ltd. All rights reserved.
* This program are made available under the terms of the Apache License, Version 2.0
* which accompanies this distribution and is available at http://www.apache.org/licenses/LICENSE-2.0.html.*/
class W{constructor(t,e,o,i){this.x=parseFloat(t),this.y=parseFloat(e),this.tag=i||0==i?parseFloat(i):null,this.type=o||"Point",this.CLASS_NAME="SuperMapAlgoPlot"}clone(t){return null==t&&(t=new W(this.x,this.y)),SuperMap.Util.applyDefaults(t,this),t}calculateBounds(){this.bounds=new Bounds(this.x,this.y,this.x,this.y)}equals(t){var e=!1;return null!=t&&(e=this.x===t.x&&this.y===t.y||isNaN(this.x)&&isNaN(this.y)&&isNaN(t.x)&&isNaN(t.y)),e}move(t,e){this.x=this.x+t,this.y=this.y+e,this.clearBounds()}toShortString(){return this.x+", "+this.y}destroy(){this.x=null,this.y=null,this.tag=null,super.destroy()}getVertices(t){return[this]}}SuperMapAlgoPlot.Point=W;var j=SuperMapAlgoPlot.AnalysisSymbol=SuperMapAlgoPlot.AnalysisSymbol||{};SuperMapAlgoPlot.AnalysisSymbol.analysisBasicInfo=function(t){let e=new Object;return e.libID=t.libID,e.code=t.code,e.symbolType=t.symbolType,e.symbolName=t.symbolName,e.textContent=t.textContent,e.minEditPts=t.algoMinEditPts,e.maxEditPts=t.algoMaxEditPts,e.surroundLineType=t.surroundLineType,e},SuperMapAlgoPlot.AnalysisSymbol.analysisDotBasicInfo=function(t){let e=SuperMapAlgoPlot.PlottingUtil.DPI,o=new Object;o.anchorPoint=new SuperMapAlgoPlot.Point(t.anchorPoint.x,t.anchorPoint.y);let i=0,l=0;return void 0!==t.symbolSizeInLib?(i=Math.round(t.symbolSizeInLib.x*e/25.4/10),l=Math.round(t.symbolSizeInLib.y*e/25.4/10)):(i=Math.round(t.symbolSize.x*e/25.4/10),l=Math.round(t.symbolSize.y*e/25.4/10)),o.symbolSizeInLib=new SuperMap.Size(i,l),o.symbolSizeInLib.w=i,o.symbolSizeInLib.h=l,o.middleMarkBounds=new SuperMap.Bounds(t.middleMarkBounds.leftBottom.x,t.middleMarkBounds.leftBottom.y,t.middleMarkBounds.rightTop.x,t.middleMarkBounds.rightTop.y),o},SuperMapAlgoPlot.AnalysisSymbol.analysisAlgoBasicInfo=function(t,e){let o=new Object;if(o.subSymbols=[],o.scalePoints=[],o.scaleValues=[],e&&t.subSymbols)for(let e=0;e<t.subSymbols.length;e++)o.subSymbols.push(new SuperMapAlgoPlot.SubSymbol(t.libID,t.subSymbols[e]));if(t.scalePoints){o.scalePoints=[];for(let e=0;e<t.scalePoints.length;e++){let i=new SuperMapAlgoPlot.Point(t.scalePoints[e].x,t.scalePoints[e].y);i.tag=e,i.isScalePoint=!0,o.scalePoints.push(i)}}if(t.scaleValues)for(let e=0;e<t.scaleValues.length;e++)o.scaleValues.push(t.scaleValues[e]);return o},SuperMapAlgoPlot.AnalysisSymbol.analysisSymbolCells=function(t,e){let o=[];if(t&&(function(t,o){if(t.innerCells&&t.innerCells.length)for(let i=0;i<t.innerCells.length;i++){let l=t.innerCells[i];if(t.symbolIsCanFill&&l.type!==SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL){let i=new Object,s=SuperMapAlgoPlot.AnalysisSymbol.getStyle(t,e);i.type=32,i.style={fillSymbolID:s.fillSymbolID,fillColor:s.fillColor,fillOpacity:s.fillOpacity,strokeOpacity:0,strokeWidth:0,fillLimit:!1,lineColorLimit:!0,lineWidthLimit:!0},i.positionPoints=[];for(let t=0;t<l.positionPoints.length;t++){let e=new SuperMapAlgoPlot.Point(l.positionPoints[t].x,l.positionPoints[t].y);i.positionPoints.push(e)}o.push(i)}}}(t,o),t.innerCells)){let i=t.innerCells;if(0!==i.length)for(let t=0;t<i.length;t++)o.push(SuperMapAlgoPlot.AnalysisSymbol.analysisInnerCell(i[t],e))}return o},SuperMapAlgoPlot.AnalysisSymbol.analysisInnerCell=function(t,e){let o=new Object;if(o.positionPoints=[],t){if(void 0!==t.polybezierClose&&(o.polybezierClose=t.polybezierClose),o.type=t.type,o.surroundLineFlag=t.surroundLineFlag,o.textContent=t.textContent,o.style=SuperMapAlgoPlot.AnalysisSymbol.getStyle(t,e),null!=t.positionPoints){let e=t.positionPoints;for(let t=0;t<e.length;t++){let i=new SuperMapAlgoPlot.Point(e[t].x,e[t].y);o.positionPoints.push(i)}}if(o.style.lineColorLimit=t.lineColorLimit,o.style.lineTypeLimit=t.lineTypeLimit,o.style.lineWidthLimit=t.lineWidthLimit,o.style.fillLimit=t.fillLimit,o.style.fillColorLimit=t.fillColorLimit,o.style.fontColorLimit=t.fontColorLimit,o.style.surroundLineLimit=t.surroundLineLimit,o.style.surroundLineFlag=t.surroundLineFlag,o.style.surroundLineType=t.surroundLineType,34==t.type?o.style.fontColorLimit=!0:o.style.fontColorLimit=t.fontColorLimit,o.type===SuperMapAlgoPlot.SymbolType.RECTANGLESYMBOL){let t=o.positionPoints[0],e=o.positionPoints[1],i=t.clone(),l=new SuperMapAlgoPlot.Point(e.x,t.y),s=e.clone(),n=new SuperMapAlgoPlot.Point(t.x,e.y);o.positionPoints=[],o.positionPoints.push(i),o.positionPoints.push(l),o.positionPoints.push(s),o.positionPoints.push(n),o.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL}o.type===SuperMapAlgoPlot.SymbolType.TEXTSYMBOL&&(o.style.fontSizeLimit=!0)}return o},SuperMapAlgoPlot.AnalysisSymbol.getStyle=function(t,e){function o(t){let e=t.red.toString(16);e.length<2&&(e="0"+e);let o=t.green.toString(16);o.length<2&&(o="0"+o);let i=t.blue.toString(16);return i.length<2&&(i="0"+i),"#"+e+o+i}function i(t){return"TOPLEFT"===t?"lt":"TOPCENTER"===t?"ct":"TOPRIGHT"===t?"rt":"BOTTOMLEFT"===t?"lb":"BOTTOMCENTER"===t?"cb":"BOTTOMRIGHT"===t?"rb":"MIDDLELEFT"===t?"lm":"MIDDLECENTER"===t?"cm":"MIDDLERIGHT"===t?"rm":0===t?"lt":1===t?"ct":2===t?"rt":6===t?"lb":7===t?"cb":8===t?"rb":3===t?"lm":4===t?"cm":5===t?"rm":"lt"}var l=SuperMapAlgoPlot.PlottingUtil.DPI,s={};return t.style?(e?(s.fillSymbolID=t.style.fillSymbolID,s.fillSymbolID||(s.fill=t.style.fill)):(!1===t.style.fill?t.style.fillSymbolID=1:!0===t.style.fill&&(t.style.fillSymbolID=0),s.fillSymbolID=t.style.fillSymbolID),void 0!==t.style.strokeGradientMode&&null!=t.style.strokeGradientMode?1===t.style.strokeGradientMode?s.strokeGradientMode="LINEAR":2===t.style.strokeGradientMode?s.strokeGradientMode="RADIAL":"LINEAR"!==t.style.strokeGradientMode&&"RADIAL"!==t.style.strokeGradientMode&&(s.strokeGradientMode="NONE"):s.strokeGradientMode="NONE",t.style.strokeBackColor?void 0!==t.style.strokeBackColor.red?(s.strokeBackColor=o(t.style.strokeBackColor),s.strokeBackOpacity=(t.style.strokeBackColor.alpha/255).toFixed(2)):(s.strokeBackColor=t.style.strokeBackColor,s.strokeBackOpacity=t.style.strokeBackOpacity):t.style.fillBackColor&&(void 0!==t.style.fillBackColor.red?(s.strokeBackColor=o(t.style.fillBackColor),s.strokeBackOpacity=(t.style.fillBackColor.alpha/255).toFixed(2)):(s.strokeBackColor=t.style.strokeBackColor,s.strokeBackOpacity=t.style.strokeBackOpacity)),void 0!==t.style.fillGradientMode&&null!=t.style.fillGradientMode&&(1===t.style.fillGradientMode?s.fillGradientMode="LINEAR":2===t.style.fillGradientMode?s.fillGradientMode="RADIAL":"LINEAR"!==t.style.fillGradientMode&&"RADIAL"!==t.style.fillGradientMode&&(s.fillGradientMode="NONE")),null!=t.style.fillGradientAngle&&void 0!==t.style.fillGradientAngle?s.fillAngle=t.style.fillGradientAngle:void 0!==t.style.fillAngle&&null!=t.style.fillAngle&&(s.fillAngle=t.style.fillAngle),void 0!==t.style.fillGradientOffsetRatioX&&null!=t.style.fillGradientOffsetRatioX?s.fillCenterOffsetX=t.style.fillGradientOffsetRatioX/100:void 0!==t.style.fillCenterOffsetX&&null!=t.style.fillCenterOffsetX&&(s.fillCenterOffsetX=t.style.fillCenterOffsetX/100),void 0!==t.style.fillGradientOffsetRatioY&&null!=t.style.fillGradientOffsetRatioY?s.fillCenterOffsetY=t.style.fillGradientOffsetRatioY/100:void 0!==t.style.fillCenterOffsetY&&null!=t.style.fillCenterOffsetY&&(s.fillCenterOffsetY=t.style.fillCenterOffsetY/100),void 0!==t.style.fillForeColor&&(s.fillColor=o(t.style.fillForeColor)),void 0!==t.style.fillOpaqueRate&&(s.fillOpacity=(t.style.fillOpaqueRate/100).toFixed(2),100!==t.style.fillOpaqueRate||1===t.style.fillGradientMode&&2===t.style.fillGradientMode||(s.fillOpacity=(t.style.fillForeColor.alpha/255).toFixed(2))),void 0!==t.style.fillBackColor&&(void 0!==t.style.fillBackColor.red?s.fillBackColor=o(t.style.fillBackColor):s.fillBackColor=t.style.fillBackColor),0===t.style.fillBackOpaque?s.fillBackOpacity=0:t.style.fillBackColor&&t.style.fillBackColor.alpha?s.fillBackOpacity=(t.style.fillBackColor.alpha/255).toFixed(2):s.fillBackOpacity=t.style.fillBackOpacity,void 0!==t.style.lineColor&&(!0===e?(s.color=o(t.style.lineColor),s.opacity=(t.style.lineColor.alpha/255).toFixed(2)):(s.strokeColor=o(t.style.lineColor),s.strokeOpacity=(t.style.lineColor.alpha/255).toFixed(2))),!0===e?void 0!==t.style.lineWidth?s.weight=Math.ceil(t.style.lineWidth*l/25.4):s.weight=t.style.strokeWidth:void 0!==t.style.lineWidth?s.strokeWidth=Math.ceil(t.style.lineWidth*l/25.4):s.strokeWidth=t.style.strokeWidth,e?(s.lineSymbolID=t.style.lineSymbolID,s.lineSymbolID||(s.dashArray=t.style.dashArray),!s.dashArray&&t.style.strokeDashstyle&&("dash"===t.style.strokeDashstyle?s.lineSymbolID=1:"dot"===t.style.strokeDashstyle?s.lineSymbolID=2:"dashdot"===t.style.strokeDashstyle?s.lineSymbolID=3:s.lineSymbolID=0)):1===t.style.lineSymbolID?s.strokeDashstyle="dash":2===t.style.lineSymbolID?s.strokeDashstyle="dot":3===t.style.lineSymbolID?s.strokeDashstyle="dashdot":t.style.strokeDashstyle?s.strokeDashstyle=t.style.strokeDashstyle:s.strokeDashstyle="solid",t.textStyle2D&&null!=t.textStyle2D?(void 0!==t.textStyle2D.sizeFixed&&(s.sizeFixed=t.textStyle2D.sizeFixed),void 0!==t.textStyle2D.fontName&&(s.fontFamily=t.textStyle2D.fontName),void 0!==t.textStyle2D.fontHeight&&(s.fontSize=Math.ceil(t.textStyle2D.fontHeight*l/25.4)),void 0!==t.textStyle2D.foreColor&&(s.fontColor=o(t.textStyle2D.foreColor)),void 0!==t.textStyle2D.align&&(s.labelAlign=i(t.textStyle2D.align)),void 0!==t.textStyle2D.rotation&&(s.labelRotation=-t.textStyle2D.rotation),void 0!==t.textStyle2D.bold&&(s.fontWeight=-t.textStyle2D.bold),s.labelXOffset=0,s.labelYOffset=0):t.textStyle&&null!=t.textStyle&&(void 0!==t.textStyle.sizeFixed&&(s.sizeFixed=t.textStyle.sizeFixed),void 0!==t.textStyle.fontName&&(s.fontFamily=t.textStyle.fontName),void 0!==t.textStyle.fontHeight&&(s.sizeFixed?s.fontSize=Math.ceil(t.textStyle.fontHeight*l/25.4):s.fontSize=t.textStyle.fontHeight),void 0!==t.textStyle.foreColor&&(s.fontColor=o(t.textStyle.foreColor)),void 0!==t.textStyle.align&&(s.labelAlign=i(t.textStyle.align)),void 0!==t.textStyle.rotation&&(s.labelRotation=-t.textStyle.rotation),void 0!==t.textStyle.bold&&(s.fontWeight=-t.textStyle.bold),s.labelXOffset=0,s.labelYOffset=0),void 0!==t.style.fontOpacity&&(s.fontOpacity=t.style.fontOpacity),void 0!==t.style.fontStroke?s.fontStroke=t.style.fontStroke:t.textStyle2D&&void 0!==t.textStyle2D.outline&&(s.fontStroke=t.textStyle2D.outline),void 0!==t.style.fontStrokeColor?s.fontStrokeColor=t.style.fontStrokeColor:t.textStyle2D&&void 0!==t.textStyle2D.backColor&&(s.fontStrokeColor=o(t.textStyle2D.backColor)),void 0!==s.fontStrokeWidth&&(s.fontStrokeWidth=t.style.fontStrokeWidth),void 0!==t.style.fontBackground&&(s.fontBackground=t.style.fontBackground),void 0!==t.style.fontBackgroundColor&&(s.fontBackgroundColor=t.style.fontBackgroundColor),void 0!==t.style.fontShadow&&(s.fontShadow=t.style.fontShadow),void 0!==t.style.fontShadowColor&&(s.fontShadowColor=t.style.fontShadowColor),void 0!==t.style.fontShadowOffsetX&&(s.fontShadowOffsetX=t.style.fontShadowOffsetX),void 0!==t.style.fontShadowOffsetY&&(s.fontShadowOffsetY=t.style.fontShadowOffsetY),void 0!==t.style.fontSpace&&(s.fontSpace=t.style.fontSpace),void 0!==t.style.fontPercent&&(s.fontPercent=t.style.fontPercent),void 0!==t.style.fontWeight&&(s.fontWeight=t.style.fontWeight),void 0!==t.style.fontStyle&&(s.fontStyle=t.style.fontStyle),void 0!==t.surroundLineColor&&null!=t.surroundLineColor&&(s.surroundLineColor=o(t.surroundLineColor),s.surroundLineColorOpacity=(t.surroundLineColor.alpha/255).toFixed(2)),void 0!==t.surroundLineWidth2D&&null!=t.surroundLineWidth2D?s.surroundLineWidth=Math.round(t.surroundLineWidth2D*l/25.4):void 0!==t.surroundLineWidth&&null!=t.surroundLineWidth&&(s.surroundLineWidth=Math.round(t.surroundLineWidth*l/25.4)),null!=t.style.graphicWidth&&(s.graphicWidth=t.style.graphicWidth),null!=t.style.graphicHeight&&(s.graphicHeight=t.style.graphicHeight),null!=t.style.graphicOpacity&&(s.graphicOpacity=t.style.graphicOpacity),null!=t.style.graphicXOffset&&(s.graphicXOffset=t.style.graphicXOffset),null!=t.style.graphicYOffset&&(s.graphicYOffset=t.style.graphicYOffset),!1===t.visibility?s.display="none":s.display="display",s):s},SuperMapAlgoPlot.AnalysisSymbol.setStyle=function(t,e,o){let i=SuperMapAlgoPlot.PlottingUtil.DPI;if(null!=e)return e.style||(e.style={}),e.textStyle2D||(e.textStyle2D={}),o?(e.style.fillSymbolID=t.fillSymbolID,e.style.fillSymbolID||(e.style.fill=t.fill)):(!1===t.fill?t.fillSymbolID=1:!0===t.fill&&(t.fillSymbolID=0),e.style.fillSymbolID=t.fillSymbolID),t.fillGradientMode&&(e.style.fillGradientMode=t.fillGradientMode),t.fillGradientMode&&("LINEAR"===t.fillGradientMode?e.style.fillGradientMode=1:"RADIAL"===t.fillGradientMode?e.style.fillGradientMode=2:e.style.fillGradientMode=0),t.strokeGradientMode&&("LINEAR"===t.strokeGradientMode?e.style.strokeGradientMode=1:"RADIAL"===t.strokeGradientMode?e.style.strokeGradientMode=2:e.style.strokeGradientMode=0),t.strokeBackColor&&(e.style.strokeBackColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.strokeBackColor)),t.strokeBackOpacity&&(e.style.strokeBackColor.alpha=255*t.strokeBackOpacity),null!=t.fillAngle&&void 0!==t.fillAngle&&(e.style.fillAngle=t.fillAngle,e.style.fillGradientAngle=t.fillAngle),null!=t.fillCenterOffsetX&&void 0!==t.fillCenterOffsetX&&(e.style.fillCenterOffsetX=100*t.fillCenterOffsetX,e.style.fillGradientOffsetRatioX=100*t.fillCenterOffsetX),null!=t.fillCenterOffsetY&&void 0!==t.fillCenterOffsetY&&(e.style.fillCenterOffsetY=100*t.fillCenterOffsetY,e.style.fillGradientOffsetRatioY=100*t.fillCenterOffsetY),t.fillColor&&(e.style.fillForeColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.fillColor)),void 0!==t.fillOpacity&&null!=t.fillOpacity&&(e.style.fillOpaqueRate=100*t.fillOpacity,e.style.fillForeColor.alpha=255),t.fillBackColor&&(e.style.fillBackColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.fillBackColor)),void 0!==t.fillBackOpacity&&null!=t.fillBackOpacity&&(0===t.fillBackOpacity?(e.style.fillBackOpaque=0,e.style.fillBackColor.alpha=255):e.style.fillBackColor&&(e.style.fillBackOpaque=1,e.style.fillBackColor.alpha=255*t.fillBackOpacity)),!0===o&&t.color?e.style.lineColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.color):t.strokeColor&&(e.style.lineColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.strokeColor)),!0===o&&null!=t.opacity&&void 0!==t.opacity?(e.style.lineColor.alpha=255*t.opacity,e.style.lineColor.alpha<1&&(e.style.lineColor.alpha=1)):null!=t.strokeOpacity&&void 0!==t.strokeOpacity&&(e.style.lineColor.alpha=255*t.strokeOpacity,e.style.lineColor.alpha<1&&(e.style.lineColor.alpha=1)),!0===o&&t.weight?e.style.lineWidth=25.4*t.weight/i:t.strokeWidth&&(e.style.lineWidth=25.4*t.strokeWidth/i),o?(e.style.lineSymbolID=t.lineSymbolID,e.style.lineSymbolID||(e.style.dashArray=t.dashArray)):"dot"===t.strokeDashstyle?e.style.lineSymbolID=2:"dash"===t.strokeDashstyle||"longdash"===t.strokeDashstyle?e.style.lineSymbolID=1:"dashdot"===t.strokeDashstyle||"longdashdot"===t.strokeDashstyle?e.style.lineSymbolID=3:e.style.lineSymbolID=0,t.fontFamily&&(e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.fontName=t.fontFamily:e.textStyle&&null!=e.textStyle&&(e.textStyle.fontName=t.fontFamily)),null!=t.sizeFixed&&(e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.sizeFixed=t.sizeFixed:e.textStyle&&null!=e.textStyle&&(e.textStyle.sizeFixed=t.sizeFixed)),t.fontSize&&(e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.fontHeight=25.4*t.fontSize/i:e.textStyle&&null!=e.textStyle&&(t.sizeFixed?e.textStyle.fontHeight=25.4*t.fontSize/i:e.textStyle.fontHeight=t.fontSize)),t.fontWeight&&(e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.bold=t.fontWeight:e.textStyle&&null!=e.textStyle&&(e.textStyle.bold=t.fontWeight)),t.fontColor&&(e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.foreColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.fontColor):e.textStyle&&null!=e.textStyle&&(e.textStyle.foreColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.fontColor))),t.labelRotation&&(e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.rotation=-t.labelRotation:e.textStyle&&null!=e.textStyle&&(e.textStyle.rotation=-t.labelRotation)),void 0!==t.fontOpacity&&(e.style.fontOpacity=t.fontOpacity),void 0!==t.fontStroke&&(e.textStyle2D.outline=t.fontStroke),void 0!==t.fontStrokeColor&&(e.textStyle2D.backColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.fontStrokeColor)),void 0!==t.fontStrokeWidth&&(e.style.fontStrokeWidth=t.fontStrokeWidth),void 0!==t.fontBackground&&(e.style.fontBackground=t.fontBackground),void 0!==t.fontBackgroundColor&&(e.style.fontBackgroundColor=t.fontBackgroundColor),void 0!==t.fontShadow&&(e.style.fontShadow=t.fontShadow),void 0!==t.fontShadowColor&&(e.style.fontShadowColor=t.fontShadowColor),void 0!==t.fontShadowOffsetX&&(e.style.fontShadowOffsetX=t.fontShadowOffsetX),void 0!==t.fontShadowOffsetY&&(e.style.fontShadowOffsetY=t.fontShadowOffsetY),void 0!==t.fontSpace&&(e.style.fontSpace=t.fontSpace),void 0!==t.fontPercent&&(e.style.fontPercent=t.fontPercent),void 0!==t.fontWeight&&(e.style.fontWeight=t.fontWeight),void 0!==t.fontStyle&&(e.style.fontStyle=t.fontStyle),t.surroundLineColor&&(e.surroundLineColor=SuperMapAlgoPlot.PlottingUtil.colorStringToRGB(t.surroundLineColor)),null!=t.surroundLineColorOpacity&&void 0!==t.surroundLineColorOpacity&&(e.surroundLineColor.alpha=255*t.surroundLineColorOpacity),t.surroundLineWidth&&(e.surroundLineWidth2D=25.4*t.surroundLineWidth/i),void 0!==t.labelAlign&&("lt"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=0:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=0):"ct"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=1:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=1):"rt"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=2:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=2):"lb"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=6:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=6):"cb"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=7:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=7):"rb"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=8:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=8):"lm"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=3:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=3):"cm"===t.labelAlign?e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=4:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=4):"rm"===t.labelAlign&&(e.textStyle2D&&null!=e.textStyle2D?e.textStyle2D.align=5:e.textStyle&&null!=e.textStyle&&(e.textStyle.align=5))),null!=t.graphicWidth&&(e.style.graphicWidth=t.graphicWidth),null!=t.graphicHeight&&(e.style.graphicHeight=t.graphicHeight),null!=t.graphicOpacity&&(e.style.graphicOpacity=t.graphicOpacity),null!=t.graphicXOffset&&(e.style.graphicXOffset=t.graphicXOffset),null!=t.graphicYOffset&&(e.style.graphicYOffset=t.graphicYOffset),t.display&&"none"===t.display?e.visibility=!1:e.visibility=!0,t},SuperMapAlgoPlot.AnalysisSymbol.mergeDefaultStyleToFeature=function(t,e,o){let i,l;i=t.style,l=!0!==o?t.geometry:t,e&&!0===e.defaultFlag&&!1===l.isEdit&&(l.surroundLineType=e.surroundLineType,i.surroundLineColor=e.surroundLineColor,i.surroundLineWidth=e.surroundLineWidth,i.surroundLineColorOpacity=e.surroundLineColorOpacity,i.fillBackColor=e.fillBackColor,i.fillBackOpacity=e.fillBackOpacity,i.fillGradientMode=e.fillGradientMode,i.fillCenterOffsetX=e.fillCenterOffsetX,i.fillCenterOffsetY=e.fillCenterOffsetY,i.fillAngle=e.fillAngle,!0===o?(i.color=e.lineColor,i.weight=e.lineWidth,i.opacity=e.lineOpacity,i.lineSymbolID=e.lineType,i.lineCap=e.lineCap,i.lineJoin=e.lineJoin):(i.strokeColor=e.lineColor,i.strokeWidth=e.lineWidth,i.strokeOpacity=e.lineOpacity,i.strokeDashstyle=e.lineType,i.strokeLinecap=e.lineCap,i.strokeLinejoin=e.lineJoin),i.fillSymbolID=e.fillSymbolID,i.fillColor=e.fillColor,i.fillOpacity=e.fillOpacity,i.fontColor=e.fontColor,i.fontOpacity=e.fontOpacity,i.fontSize=e.fontSize,i.fontFamily=e.fontFamily,i.fontWeight=e.fontWeight,i.fontStyle=e.fontStyle,i.fontStroke=e.fontStroke,i.fontStrokeColor=e.fontStrokeColor,i.fontStrokeWidth=e.fontStrokeWidth,i.fontBackground=e.fontBackground,i.fontBackgroundColor=e.fontBackgroundColor,i.fontShadow=e.fontShadow,i.fontShadowColor=e.fontShadowColor,i.fontShadowOffsetX=e.fontShadowOffsetX,i.fontShadowOffsetY=e.fontShadowOffsetY,i.fontSpace=e.fontSpace,i.fontPercent=e.fontPercent,i.strokeGradientMode=e.strokeGradientMode,i.strokeBackColor=e.strokeBackColor,i.strokeBackOpacity=e.strokeBackOpacity)},SuperMapAlgoPlot.AnalysisSymbol.mergeSymbolDataAndServerData=function(t,e){t.hasOwnProperty("algoMinEditPts")||(t.algoMinEditPts=e.algoMinEditPts),t.hasOwnProperty("algoMaxEditPts")||(t.algoMaxEditPts=e.algoMaxEditPts),t.hasOwnProperty("innerCells")||(t.innerCells=SuperMap.Util.cloneObject(e.innerCells)),t.hasOwnProperty("symbolRanks")||(t.symbolRanks=SuperMap.Util.cloneObject(e.symbolRanks)),t.hasOwnProperty("symbolSizeInLib")||(t.symbolSizeInLib=SuperMap.Util.cloneObject(e.symbolSize)),t.hasOwnProperty("middleMarkExist")||(t.middleMarkExist=SuperMap.Util.cloneObject(e.middleMarkExist)),t.hasOwnProperty("middleMarkBounds")||(t.middleMarkBounds=SuperMap.Util.cloneObject(e.middleMarkBounds)),t.hasOwnProperty("anchorPoint")||(t.anchorPoint=SuperMap.Util.cloneObject(e.anchorPoint))},SuperMapAlgoPlot.AnalysisSymbol.setSymbolData=function(t,e,o){null==e&&(e={}),e.hasOwnProperty("type")||(e.type="GRAPHICOBJECT"),e.hasOwnProperty("version")||(e.version=2),e.isEdit=!0,e.uuid=t.uuid,e.associatedUuid=t.associatedUuid,e.hasOwnProperty("rotate2D")?e.rotate2D.x=t.dRotate:e.rotate2D={x:t.dRotate,y:0,z:0},e.hasOwnProperty("scale2D")?e.scale2D.x=t.dScale:e.scale2D={x:t.dScale,y:0,z:0},e.libID=t.libID,e.code=t.code,e.algoMaxEditPts=t.maxEditPts,e.algoMinEditPts=t.minEditPts,e.symbolType=t.symbolType,e.symbolName=t.symbolName,e.annotationPosition=t.annotationPosition?t.annotationPosition:t.textPosition,e.textContent=t.textContent,e.textDisplay=t.textDisplay,e.scaleByMap=t.scaleByMap,e.resolution=t.resolution,e.isLocked=t.isLocked,e.note=t.note,e.custom=t.custom,e.subSymbols=[];for(let o=0;o<t.subSymbols.length;o++){let i=t.subSymbols[o];e.subSymbols.push({libID:i.libID,code:i.code,symbolData:i.symbolData,textContent:i.textContent,totalNum:i.totalNum})}e.extendProperty=[];let i=t.getExtendProperty().getPropertyCount();for(let o=0;o<i;o++){let i=t.getExtendProperty().getPropertyByIndex(o);e.extendProperty.push({key:i.key,value:i.value})}e.avoidRegions=[];for(let i=0;i<t.avoidRegions.length;i++){let l={};o?SuperMapAlgoPlot.AnalysisSymbol.setStyle(t.avoidRegions[i].style,l,o):SuperMapAlgoPlot.AnalysisSymbol.setStyle(t.avoidRegions[i].feature.style,l,o),e.avoidRegions.push([t.avoidRegions[i].getSymbolData(),l])}if(!0===o?SuperMapAlgoPlot.AnalysisSymbol.setStyle(t.style,e,o):null!=t.feature&&SuperMapAlgoPlot.AnalysisSymbol.setStyle(t.feature.style,e),t.symbolType===SuperMapAlgoPlot.SymbolType.AIRROUTE||t.symbolType===SuperMapAlgoPlot.SymbolType.NAVYROUTE||t.symbolType===SuperMapAlgoPlot.SymbolType.MISSILEROUTE){for(var l in e.routeNodes=[],t.routeNodes)e.routeNodes.push(t.routeNodes[l].setSymbolData());e.arrRoutePts=t.arrRoutePts,o||SuperMapAlgoPlot.AnalysisSymbol.setStyle(t.lineStyle,e)}else if(t.symbolType===SuperMapAlgoPlot.SymbolType.GROUPOBJECT||t.symbolType===SuperMapAlgoPlot.SymbolType.FLAGGROUP||t.symbolType===SuperMapAlgoPlot.SymbolType.NAVYDEPLOYMENT||t.symbolType===SuperMapAlgoPlot.SymbolType.AIRDEPLOYMENT){if(e.subAssociatedUuids=t.subAssociatedUuids,e.subFeatures=[],o)for(var s=0;s<t.subObjects.length;s++)e.subFeatures.push(t.subObjects[s].getSymbolData());else for(let o=0;o<t.components.length;o++)e.subFeatures.push(t.components[o].geometry.getSymbolData());0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.FLAGGROUP?e.ratio=t.ratio:0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.AIRDEPLOYMENT?(e.colNum=t.colNum,e.speceDis=t.speceDis,e.isShowTooltip=t.isShowTooltip):0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.NAVYDEPLOYMENT&&(e.colNum=t.colNum,e.speceDis=t.speceDis)}else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SYMBOLTEXT){let o=[];for(let e in t.symbolTexts)o.push(t.symbolTexts[e].setSymbolData());e.symbolTexts=o,e.addFrame=t.addFrame}else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SYMBOLTEXT1)e.space=t.space,e.offsetX=t.offsetX,e.offsetY=t.offsetY;else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.TRAJECTORY)e.trajectoryType=t.trajectoryType,e.trajectoryLength=t.trajectoryLength,e.showTrackingLine=t.showTrackingLine,e.showTrackingPoint=t.showTrackingPoint,e.trackingPointRadius=t.trackingPointRadius,e.saveTrackingPoint=t.saveTrackingPoint;else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SATELLITE){if(e.hasOwnProperty("scaleValues"))for(let o=0;o<t.scaleValues.length;o++)e.scaleValues.length>o?e.scaleValues[o]=t.scaleValues[o]:e.scaleValues.push(t.scaleValues[o]);else e.scaleValues=[],e.scaleValues=t.scaleValues;e.visible=t.visible,e.orbitPoints=t.orbitPoints}else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SATELLITETIMEWINDOWS)e.timeWindows=t.timeWindows;else{let i;i=!0===o?L.Util.latLngsToSuperMapPoints(t.getLatLngs()):t.controlPoints,e.localePoints=[];let l=i.length;t.symbolType===SuperMapAlgoPlot.SymbolType.ELLIPSESYMBOL&&(l=3);for(let t=0;t<l;t++)e.localePoints.push({x:i[t].x,y:i[t].y,z:0});if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.LINERELATION)e.endAssociatedUuid=t.endAssociatedUuid,e.lineRelationType=t.lineRelationType,e.startAssociatedUuid=t.startAssociatedUuid,e.subSectionCount=t.subSectionCount;else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.PICTURE){if(e.path=t.path,e.symbolTexts=[],null!=t.symbolTexts&&0!=t.symbolTexts.length)for(let o=0;o<t.symbolTexts.length;o++)e.symbolTexts.push(t.symbolTexts[o].setSymbolData());if(e.bloodVolumes=[],null!=t.bloodVolumes&&0!=t.bloodVolumes.length)for(let o=0;o<t.bloodVolumes.length;o++)e.bloodVolumes.push(t.bloodVolumes[o].setSymbolData());null!=t.trajectory&&(e.trajectory=t.trajectory.setSymbolData()),null!=e.antoRotation&&(t.antoRotation=e.antoRotation)}else if(t.symbolType===SuperMapAlgoPlot.SymbolType.DOTSYMBOL){e.surroundLineType=t.surroundLineType,e.symbolRank=t.symbolRank,e.negativeImage=t.negativeImage,e.space=25.4*t.space*10/SuperMapAlgoPlot.PlottingUtil.DPI,e.flagTextSize=t.flagTextSize,e.maxScale=t.maxScale,e.minScale=t.minScale,e.actualScale=t.actualScale,void 0!==t.fontSize&&(e.fontSize=t.fontSize),void 0!==t.strokeWidth&&(e.strokeWidth=t.strokeWidth);let o=25.4*t.symbolSize.w*10/SuperMapAlgoPlot.PlottingUtil.DPI,i=25.4*t.symbolSize.h*10/SuperMapAlgoPlot.PlottingUtil.DPI;e.symbolSize={x:o,y:i};let l=25.4*t.symbolSizeInLib.w*10/SuperMapAlgoPlot.PlottingUtil.DPI,s=25.4*t.symbolSizeInLib.h*10/SuperMapAlgoPlot.PlottingUtil.DPI;if(e.symbolSizeInLib={x:l,y:s},e.positionOffset=t.positionOffset,e.positionOffsetType=t.positionOffsetType,e.positionOffsetX=t.positionOffsetX,e.positionOffsetY=t.positionOffsetY,!1===t.widthHeightLimit||!0===t.widthHeightLimit?e.limitWidthHeight=t.widthHeightLimit:e.limitWidthHeight=t.limitWidthHeight,e.symbolTexts=[],null!=t.symbolTexts&&0!=t.symbolTexts.length)for(let o=0;o<t.symbolTexts.length;o++)e.symbolTexts.push(t.symbolTexts[o].setSymbolData());if(e.bloodVolumes=[],null!=t.bloodVolumes&&0!=t.bloodVolumes.length)for(let o=0;o<t.bloodVolumes.length;o++)e.bloodVolumes.push(t.bloodVolumes[o].setSymbolData());if(e.pictureFrames=[],null!=t.pictureFrames&&0!=t.pictureFrames.length)for(let o=0;o<t.pictureFrames.length;o++)e.pictureFrames.push(t.pictureFrames[o].setSymbolData());null!=t.trajectory&&(e.trajectory=t.trajectory.setSymbolData()),null!=e.antoRotation&&(t.antoRotation=e.antoRotation)}else{if(e.surroundLineType=t.surroundLineType,e.hasOwnProperty("scaleValues"))for(let o=0;o<t.scaleValues.length;o++)e.scaleValues.length>o?e.scaleValues[o]=t.scaleValues[o]:e.scaleValues.push(t.scaleValues[o]);else e.scaleValues=[],e.scaleValues=t.scaleValues;e.subSymbolScaleValue=t.subSymbolScaleValue,e.baseScale=t.baseScale,e.strokeWidth=t.strokeWidth,e.polylineConnectLocationPoint=t.polylineConnectLocationPoint,22===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.ALGOSYMBOL?(e.arrowHeadType=t.arrowHeadType,e.arrowBodyType=t.arrowBodyType,e.arrowTailType=t.arrowTailType):0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.ARROWLINE?e.arrowAngle=t.arrowAngle:0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.COMBINATIONALCIRCLE?e.defaultRadius=t.defaultRadius:0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.CONCENTRICCIRCLE||(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.LINEMARKING?(e.islocationCircle=t.islocationCircle,e.textBoxType=t.textBoxType):0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SYMBOLTEXTBOX?(e.roundBox=t.roundBox,e.textBoxType=t.textBoxType):0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.PATHTEXT?(e.isAvoid=t.isAvoid,e.isCurve=t.isCurve,e.relLineText=t.relLineText,e.showPathLine=t.showPathLine,e.textToLineDistance=t.textToLineDistance,e.showPathLineArrow=t.showPathLineArrow):0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.ARCREGION&&(o?(e.centerPoint={x:t.centerPoint.lng,y:t.centerPoint.lat},e.circlePts=t.circlePts,e.spatialAnalystUrl=t.spatialAnalystUrl):e.centerPoint=t.centerPoint,e.endAngle=t.endAngle,e.radius=t.radius,e.radiusPosAngle=t.radiusPosAngle,e.startAngle=t.startAngle,e.textPosition=t.textPosition,e.radiusLineType=t.radiusLineType,e.radiusText=t.radiusText))}}t.symbolData=e},SuperMapAlgoPlot.AnalysisSymbol.parseSymbolData=function(t,e,o){if(null!=e){if(void 0!==e.isEdit&&(t.isEdit=e.isEdit),e.hasOwnProperty("version")&&(t.version=e.version),t.libID=parseInt(e.libID),t.code=parseInt(e.code),t.maxEditPts=parseInt(e.algoMaxEditPts),t.minEditPts=parseInt(e.algoMinEditPts),t.symbolType=e.symbolType,t.symbolName=e.symbolName,t.textContent=e.textContent,void 0!==e.dScale?t.dScale=e.dScale:void 0!==e.scale2D&&(t.dScale=e.scale2D.x),void 0!==e.dRotate?t.dRotate=e.dRotate:void 0!==e.rotate2D&&(t.dRotate=e.rotate2D.x),void 0!==e.resolution&&(t.resolution=e.resolution),void 0!==e.uuid&&(t.uuid=e.uuid),void 0!==e.associatedUuid&&(t.associatedUuid=e.associatedUuid),void 0!==e.textDisplay&&(t.textDisplay=e.textDisplay),void 0!==e.annotationPosition&&(o?t.annotationPosition=e.annotationPosition:t.textPosition=e.annotationPosition),void 0!==e.scaleByMap&&(t.scaleByMap=e.scaleByMap),void 0!==e.isLocked&&(t.isLocked=e.isLocked),void 0!==e.note&&(t.note=e.note),void 0!==e.custom&&(t.custom=e.custom),e.extendProperty)for(let o=0;o<e.extendProperty.length;o++){let i=e.extendProperty[o];t.extendProperty.addProperty(i.key,i.value)}if(e.hasOwnProperty("subSymbols")&&null!=e.subSymbols){t.subSymbols=[];for(let o=0;o<e.subSymbols.length;o++){let i=e.subSymbols[o].libID;void 0===i&&(i=t.libID);let l=e.subSymbols[o].code;if(void 0===l)continue;let s={};void 0!==e.subSymbols[o].textContent&&(s.textContent=e.subSymbols[o].textContent),void 0!==e.subSymbols[o].totalNum&&(s.totalNum=e.subSymbols[o].totalNum),void 0!==e.subSymbols[o].symbolData&&(s.symbolData=e.subSymbols[o].symbolData),t.subSymbols.push(new SuperMapAlgoPlot.SubSymbol(i,l,s))}}if(e.avoidRegions&&0!==e.avoidRegions.length)for(let i=0;i<e.avoidRegions.length;i++){let l={libID:0,code:SuperMapAlgoPlot.SymbolType.AVOIDREGION,map:t.map,symbolData:e.avoidRegions[i][0]},s=null;if(o)(s=L.AlgoPlotting.avoidRegion(0,SuperMapAlgoPlot.SymbolType.AVOIDREGION,[],l)).style=SuperMapAlgoPlot.AnalysisSymbol.getStyle(t.symbolData.avoidRegions[i][1],!0);else{s=new SuperMap.Geometry.AvoidRegion(l);let t=new SuperMap.Feature.Vector(s);t.style=SuperMapAlgoPlot.AnalysisSymbol.getStyle(e.avoidRegions[i][1],o),s.feature=t,s.calculateParts()}t.avoidRegions.push(s)}if(!0===o&&(t.style=SuperMapAlgoPlot.AnalysisSymbol.getStyle(e,!0)),t.symbolType===SuperMapAlgoPlot.SymbolType.AIRROUTE||t.symbolType===SuperMapAlgoPlot.SymbolType.NAVYROUTE||t.symbolType===SuperMapAlgoPlot.SymbolType.MISSILEROUTE){for(var i in t.routeNodes=[],e.routeNodes){var l=new SuperMapAlgoPlot.RouteNode;t.routeNodes.push(l.parseSymbolData(e.routeNodes[i]))}t.arrRoutePts=[];for(let i=0;i<e.arrRoutePts.length;i++){let l=[];for(let t=0;t<e.arrRoutePts[i].length;t++)e.arrRoutePts[i][t].hasOwnProperty("lat")&&e.arrRoutePts[i][t].hasOwnProperty("lng")?l.push(new SuperMapAlgoPlot.Point(e.arrRoutePts[i][t].lng,e.arrRoutePts[i][t].lat)):void 0===e.arrRoutePts[i][t].x&&void 0===e.arrRoutePts[i][t].y||l.push(new SuperMapAlgoPlot.Point(e.arrRoutePts[i][t].x,e.arrRoutePts[i][t].y));o&&(l=L.Util.superMapPointsToLatLngs(l)),t.arrRoutePts.push(l)}o||(t.lineStyle=SuperMapAlgoPlot.AnalysisSymbol.getStyle(e,!1))}else if(t.symbolType===SuperMapAlgoPlot.SymbolType.GROUPOBJECT||t.symbolType===SuperMapAlgoPlot.SymbolType.FLAGGROUP||t.symbolType===SuperMapAlgoPlot.SymbolType.NAVYDEPLOYMENT||t.symbolType===SuperMapAlgoPlot.SymbolType.AIRDEPLOYMENT){if(t.subAssociatedUuids=e.subAssociatedUuids,o){var s=[];for(let t=0;t<e.subFeatures.length;t++){let o=e.subFeatures[t];o.uuid=SuperMapAlgoPlot.PlottingUtil.generateUuid();let i=L.AlgoPlotting.PlottingObject.createSymbol(o.libID,o.code,null,{symbolData:o});s.push(i)}t.subObjects=s}else for(let o=0;o<e.subFeatures.length;o++){let i=e.subFeatures[o],l=SuperMap.Geometry.PlottingGeometry.createFeature(i.libID,i.code,null,{symbolData:i,map:t.map});l.geometry.ownGroupObj=t,t.components.push(l)}0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.FLAGGROUP?(t.ratio=e.ratio,t.subFeatures=e.subFeatures):0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.AIRDEPLOYMENT?(t.colNum=e.colNum,t.speceDis=e.speceDis,t.isShowTooltip=e.isShowTooltip):0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.NAVYDEPLOYMENT&&(t.colNum=e.colNum,t.speceDis=e.speceDis)}else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SYMBOLTEXT){t.addFrame=e.addFrame,t.symbolTexts=[];for(let o=0,i=e.symbolTexts.length;o<i;o++){let i=new SuperMapAlgoPlot.SymbolText;i.parseSymbolData(e.symbolTexts[o]),t.symbolTexts.push(i)}}else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SYMBOLTEXT1)void 0!==e.space&&(t.space=e.space),void 0!==e.offsetX&&(t.offsetX=e.offsetX),void 0!==e.offsetY&&(t.offsetY=e.offsetY);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.TRAJECTORY)void 0!==e.trajectoryType&&(t.trajectoryType=e.trajectoryType),void 0!==e.trajectoryLength&&(t.trajectoryLength=e.trajectoryLength),void 0!==e.showTrackingLine&&(t.showTrackingLine=e.showTrackingLine),void 0!==e.showTrackingPoint&&(t.showTrackingPoint=e.showTrackingPoint),void 0!==e.trackingPointRadius&&(t.trackingPointRadius=e.trackingPointRadius),void 0!==e.saveTrackingPoint&&(t.saveTrackingPoint=e.saveTrackingPoint);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SATELLITE){if(e.scaleValues&&0!==e.scaleValues.length){t.scaleValues=[];for(let o=0;o<e.scaleValues.length;o++)t.scaleValues.push(e.scaleValues[o])}if(e.subSymbol&&(t.subSymbols=[e.subSymbol]),t.visible=e.visible,e.orbitPoints){t.orbitPoints=[];for(let o=0;o<e.orbitPoints.length;o++)t.orbitPoints.push(new SuperMapAlgoPlot.OrbitPoint(e.orbitPoints[o].x,e.orbitPoints[o].y,e.orbitPoints[o].z,e.orbitPoints[o].number,e.orbitPoints[o].time))}}else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SATELLITETIMEWINDOWS){t.timeWindows=e.timeWindows;for(let o=0;o<t.timeWindows.length;o++)"Time"!==e.type&&"Number"!==e.type||(t.timeWindows[o].type=e.type)}else{if(e.localePoints){t.controlPoints=[];for(let o=0;o<e.localePoints.length;o++)t.controlPoints.push(new SuperMapAlgoPlot.Point(e.localePoints[o].x,e.localePoints[o].y));!0===o&&(t.latLngs=L.Util.superMapPointsToLatLngs(t.controlPoints),delete t.controlPoints)}if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.LINERELATION)t.endAssociatedUuid=e.endAssociatedUuid,t.lineRelationType=e.lineRelationType,t.startAssociatedUuid=e.startAssociatedUuid,t.subSectionCount=e.subSectionCount;else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.PICTURE){if(t.path=e.path,null!=e.symbolTexts&&0!==e.symbolTexts.length){t.symbolTexts=[];for(let o=0;o<e.symbolTexts.length;o++){let i=new SuperMapAlgoPlot.SymbolText;i.parseSymbolData(e.symbolTexts[o]),t.symbolTexts.push(i)}}if(null!=e.bloodVolumes&&0!==e.bloodVolumes.length){t.bloodVolumes=[];for(let o=0;o<e.bloodVolumes.length;o++){let i=new SuperMapAlgoPlot.BloodVolume;i.parseSymbolData(e.bloodVolumes[o]),t.bloodVolumes.push(i)}}if(null!=e.trajectory){let o=new SuperMapAlgoPlot.Trajectory;o.parseSymbolData(e.trajectory),t.trajectory=o}null!=e.antoRotation&&(t.antoRotation=e.antoRotation)}else if(t.symbolType===SuperMapAlgoPlot.SymbolType.DOTSYMBOL){t.surroundLineType=e.surroundLineType,t.symbolRank=e.symbolRank,t.negativeImage=e.negativeImage;let o=SuperMapAlgoPlot.AnalysisSymbol.analysisDotBasicInfo(e);if(t.anchorPoint=o.anchorPoint,t.symbolSizeInLib=o.symbolSizeInLib,t.middleMarkBounds=o.middleMarkBounds,void 0!==e.actualScale&&(t.actualScale=e.actualScale),void 0!==e.limitWidthHeight&&(t.limitWidthHeight=e.limitWidthHeight),void 0!==e.fontSize&&(t.fontSize=e.fontSize),void 0!==e.strokeWidth&&(t.strokeWidth=e.strokeWidth),void 0!==e.space&&(t.space=e.space*SuperMapAlgoPlot.PlottingUtil.DPI/25.4/10),void 0!==e.flagTextSize&&(t.flagTextSize=e.flagTextSize),void 0!==e.maxScale&&(t.maxScale=e.maxScale),void 0!==e.minScale&&(t.minScale=e.minScale),!1!==t.isEdit){let o={x:0,y:0};-1===e.symbolSize.x&&-1===e.symbolSize.x?(o.x=e.symbolSizeInLib.x*SuperMapAlgoPlot.PlottingUtil.DPI/25.4/10,o.y=e.symbolSizeInLib.y*SuperMapAlgoPlot.PlottingUtil.DPI/25.4/10):(o.x=e.symbolSize.x*SuperMapAlgoPlot.PlottingUtil.DPI/25.4/10,o.y=e.symbolSize.y*SuperMapAlgoPlot.PlottingUtil.DPI/25.4/10),t.setSymbolSize(o.x,o.y)}if(void 0!==e.positionOffset&&null!==e.positionOffset&&(t.positionOffset=e.positionOffset),void 0!==e.positionOffsetType&&null!==e.positionOffsetType&&(t.positionOffsetType=e.positionOffsetType),void 0!==e.positionOffsetX&&null!==e.positionOffsetX&&(t.positionOffsetX=e.positionOffsetX),void 0!==e.positionOffsetY&&null!==e.positionOffsetY&&(t.positionOffsetY=e.positionOffsetY),null!=e.symbolTexts&&0!==e.symbolTexts.length){t.symbolTexts=[];for(let o=0;o<e.symbolTexts.length;o++){let i=new SuperMapAlgoPlot.SymbolText;i.parseSymbolData(e.symbolTexts[o]),t.symbolTexts.push(i)}}if(null!=e.bloodVolumes&&0!==e.bloodVolumes.length){t.bloodVolumes=[];for(let o=0;o<e.bloodVolumes.length;o++){let i=new SuperMapAlgoPlot.BloodVolume;i.parseSymbolData(e.bloodVolumes[o]),t.bloodVolumes.push(i)}}if(null!=e.pictureFrames&&0!==e.pictureFrames.length){t.pictureFrames=[];for(let o=0;o<e.pictureFrames.length;o++){let i=new SuperMapAlgoPlot.PictureFrame;i.parseSymbolData(e.pictureFrames[o]),t.pictureFrames.push(i)}}if(null!=e.trajectory){let o=new SuperMapAlgoPlot.Trajectory;o.parseSymbolData(e.trajectory),t.trajectory=o}null!=e.antoRotation&&(t.antoRotation=e.antoRotation)}else{if(t.surroundLineType=e.surroundLineType,e.scaleValues&&0!==e.scaleValues.length){t.scaleValues=[];for(let o=0;o<e.scaleValues.length;o++)t.scaleValues.push(e.scaleValues[o])}if(void 0!==e.strokeWidth&&null!==e.strokeWidth&&(t.strokeWidth=e.strokeWidth),void 0!==e.baseScale&&null!==e.baseScale&&(t.baseScale=e.baseScale),void 0!==e.polylineConnectLocationPoint&&null!==e.polylineConnectLocationPoint&&(t.polylineConnectLocationPoint=e.polylineConnectLocationPoint),22===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.ALGOSYMBOL)void 0!==e.arrowHeadType&&null!==e.arrowHeadType&&(t.arrowHeadType=e.arrowHeadType),void 0!==e.arrowBodyType&&null!==e.arrowBodyType&&(t.arrowBodyType=e.arrowBodyType),void 0!==e.arrowTailType&&null!==e.arrowTailType&&(t.arrowTailType=e.arrowTailType);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.ARROWLINE)t.arrowAngle=e.arrowAngle,void 0!==e.arrowTypeStart&&(t.scaleValues[1]=e.arrowTypeStart),void 0!==e.arrowTypeEnd&&(t.scaleValues[2]=e.arrowTypeEnd);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.COMBINATIONALCIRCLE){if(e.radius&&0!==e.radius.length&&0===t.scaleValues.length)for(let o=0;o<e.radius.length;o++)t.scaleValues.push(e.radius[o])}else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.CONCENTRICCIRCLE)t.symbolData.hasOwnProperty("startAngle")&&(t.scaleValues[0]=t.symbolData.startAngle),t.symbolData.hasOwnProperty("endAngle")&&(t.scaleValues[1]=t.symbolData.endAngle);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.LINEMARKING)void 0!==e.islocationCircle&&null!==e.islocationCircle&&(t.islocationCircle=e.islocationCircle),void 0!==e.textBoxType&&null!==e.textBoxType&&(t.textBoxType=e.textBoxType),e.tipPoint&&(this.scaleValues[1]=e.tipPoint.x,this.scaleValues[2]=e.tipPoint.y);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.SYMBOLTEXTBOX)void 0!==e.roundBox&&null!==e.roundBox&&(t.roundBox=e.roundBox),void 0!==e.textBoxType&&null!==e.textBoxType&&(t.textBoxType=e.textBoxType),e.tipPoint&&(this.scaleValues[1]=e.tipPoint.x,this.scaleValues[2]=e.tipPoint.y);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOLM)e.tipPoint1&&(this.scaleValues[0]=e.tipPoint1.x,this.scaleValues[1]=e.tipPoint1.y),e.tipPoint2&&(this.scaleValues[2]=e.tipPoint2.x,this.scaleValues[3]=e.tipPoint2.y);else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.PATHTEXT)t.isAvoid=e.isAvoid,t.isCurve=e.isCurve,t.relLineText=e.relLineText,t.showPathLine=e.showPathLine,t.textToLineDistance=e.textToLineDistance,t.showPathLineArrow=e.showPathLineArrow;else if(0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.ARCREGION){if(o){if(t.centerPoint=L.latLng(e.centerPoint.y,e.centerPoint.x),t.symbolData.circlePts){for(var n=[],a=0;a<e.circlePts.length;a++)n.push(new SuperMapAlgoPlot.Point(e.circlePts[a].x,e.circlePts[a].y));0!==n.length&&(t.circlePts=n)}t.spatialAnalystUrl=e.spatialAnalystUrl}else t.centerPoint=new SuperMapAlgoPlot.Point(e.centerPoint.x,e.centerPoint.y);t.endAngle=e.endAngle,t.radius=e.radius,t.radiusPosAngle=e.radiusPosAngle,t.startAngle=e.startAngle,t.textPosition=e.textPosition,t.radiusLineType=e.radiusLineType,t.radiusText=e.radiusText}else 0===t.libID&&t.symbolType===SuperMapAlgoPlot.SymbolType.POLYGONREGION&&(t.symbolData.hasOwnProperty("textPosition")?t.scaleValues[1]=t.symbolData.textPosition:void 0===t.scaleValues[1]&&(t.scaleValues[1]=t.symbolData.annotationPosition))}}}};var X=SuperMapAlgoPlot.PlottingUtil=SuperMapAlgoPlot.PlottingUtil||{};SuperMapAlgoPlot.PlottingUtil.DEFAULT_PRECISION=14,SuperMapAlgoPlot.PlottingUtil.DPI=96,SuperMapAlgoPlot.PlottingUtil.RTOD=57.29577951308232,SuperMapAlgoPlot.PlottingUtil.DTOR=.017453292519943295,SuperMapAlgoPlot.PlottingUtil.dirAngle=function(t,e){let o,i,l,s,n,a;o=e.x,i=e.y,n=o-(l=t.x),a=i-(s=t.y);var r=Math.atan2(a,n);return r<0&&(r+=2*Math.PI),r},SuperMapAlgoPlot.PlottingUtil.generateUuid=function(){let t=[];for(let e=0;e<36;e++)t[e]="0123456789abcdef".substr(Math.floor(16*Math.random()),1);return t[14]="4",t[19]="0123456789abcdef".substr(3&t[19]|8,1),t[8]=t[13]=t[18]=t[23]="-",t.join("")},SuperMapAlgoPlot.PlottingUtil.cloneObject=function(t){return JSON.parse(JSON.stringify(t))},SuperMapAlgoPlot.PlottingUtil.colorRGBA=function(t,e){let o=t.substring(1,3),i=parseInt(o,16),l=t.substring(3,5),s=parseInt(l,16),n=t.substring(5);return"rgba("+i+","+s+","+parseInt(n,16)+","+e+")"},SuperMapAlgoPlot.PlottingUtil.colorRGBToString=function(t){let e=t.red.toString(16);e.length<2&&(e="0"+e);let o=t.green.toString(16);o.length<2&&(o="0"+o);let i=t.blue.toString(16);return i.length<2&&(i="0"+i),"#"+e+o+i},SuperMapAlgoPlot.PlottingUtil.colorStringToRGB=function(t){var e={};let o=t.substring(1,3);e.red=parseInt(o,16);let i=t.substring(3,5);e.green=parseInt(i,16);let l=t.substring(5);return e.blue=parseInt(l,16),e},SuperMapAlgoPlot.PlottingUtil.decimalToHex=function(t){let e=t.toString(16);for(;e.length<8;)e="0"+e;let o=e.substring(0,2),i=e.substring(2,4),l=e.substring(4,6);return{color:"#"+e.substring(6)+l+i,alpha:parseInt(o,16)/255}},SuperMapAlgoPlot.PlottingUtil.hexToDecimal=function(t,e){let o=t.substring(1,3),i=t.substring(3,5),l=t.substring(5),s=parseInt(l+i+o,16),n=Math.round(255*e).toString(16);return parseInt(n+"000000",16)+s},SuperMapAlgoPlot.PlottingUtil.getAlign=function(t){return"TOPLEFT"===t?"lt":"TOPCENTER"===t?"ct":"TOPRIGHT"===t?"rt":"BOTTOMLEFT"===t?"lb":"BOTTOMCENTER"===t?"cb":"BOTTOMRIGHT"===t?"rb":"MIDDLELEFT"===t?"lm":"MIDDLECENTER"===t?"cm":"MIDDLERIGHT"===t?"rm":"lt"},SuperMapAlgoPlot.PlottingUtil.trim=function(t){return null==t?"":t.replace(/(^\s*)|(\s*$)/g,"")},SuperMapAlgoPlot.PlottingUtil.getTextWidth=function(t,e){" "===e&&(e="_");let o=document.createElement("span");document.body.appendChild(o),o.style.width="auto",o.style.height="auto",t.fontSize&&(o.style.fontSize=new String(t.fontSize)+"px"),t.fontFamily&&(o.style.fontFamily=t.fontFamily),t.fontWeight&&(o.style.fontWeight=t.fontWeight),o.style.position="absolute",o.style.visibility="hidden",o.style.display="inline-block",o.innerHTML=e;var i=o.clientWidth,l=e.length;return void 0===t.fontSpace&&void 0===t.fontPercent||(0!==t.fontSpace&&100!==t.fontPercent&&void 0!==t.fontSpace||void 0!==t.fontPercent?i=t.fontPercent/100*i+t.fontSpace*(t.fontPercent/100)*(l-1):0===t.fontSpace&&100!==t.fontPercent&&void 0!==t.fontPercent?i=t.fontPercent/100*i:0!==t.fontSpace&&100===t.fontPercent&&void 0!==t.fontSpace&&(i+=t.fontSpace*(l-1))),document.body.removeChild(o),i},SuperMapAlgoPlot.PlottingUtil.getTextCount=function(t){let e=0,o=0;for(let i=0;i<t.length;i++)t.charCodeAt(i)>255?e++:o++;return e+o/2},SuperMapAlgoPlot.PlottingUtil.toJSON=function(t){var e=t;if(null==e)return null;switch(e.constructor){case String:return e=(e=(e=(e=(e=(e=(e='"'+e.replace(/(["\\])/g,"\\$1")+'"').replace(/\n/g,"\\n")).replace(/\r/g,"\\r")).replace("<","&lt;")).replace(">","&gt;")).replace(/%/g,"%2525")).replace(/&/g,"%26");case Array:let t=[];for(let o=0,i=e.length;o<i;o++)t.push(SuperMapAlgoPlot.PlottingUtil.toJSON(e[o]));return"["+t.join(",")+"]";case Number:return isFinite(e)?String(e):null;case Boolean:return String(e);case Date:return"{'__type':\"System.DateTime\",'Year':"+e.getFullYear()+",'Month':"+(e.getMonth()+1)+",'Day':"+e.getDate()+",'Hour':"+e.getHours()+",'Minute':"+e.getMinutes()+",'Second':"+e.getSeconds()+",'Millisecond':"+e.getMilliseconds()+",'TimezoneOffset':"+e.getTimezoneOffset()+"}";default:if(null!=e.toJSON&&"function"==typeof e.toJSON)return e.toJSON();if("object"==typeof e){if(e.length){let t=[];for(let o=0,i=e.length;o<i;o++)t.push(SuperMapAlgoPlot.PlottingUtil.toJSON(e[o]));return"["+t.join(",")+"]"}let t=[];for(let o in e)"function"!=typeof e[o]&&"CLASS_NAME"!==o&&"parent"!==o&&t.push('"'+o+'":'+SuperMapAlgoPlot.PlottingUtil.toJSON(e[o]));return t.length>0?"{"+t.join(",")+"}":"{}"}return e.toString()}},SuperMapAlgoPlot.PlottingUtil.copyFeature=function(t){var e=null;if(null!=t&&t.geometry){let o=t.geometry.clone();e=new SuperMap.Feature.Vector(o),t.style&&(e.style=SuperMapAlgoPlot.PlottingUtil.copyAttributes(e.style,t.style)),o.feature=e,o.calculateParts()}return e},SuperMapAlgoPlot.PlottingUtil.getSurroundLinePts=function(t,e){var o=[],i=[];for(let l=0;l<t.length-1;l++){let s,n,a=[];if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l].x,t[l+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l].y,t[l+1].y))continue;a.push(t[l]),a.push(t[l+1]);let r=SuperMapAlgoPlot.PlottingUtil.parallel(a,e);if(s=r[0],n=r[1],0!=o.length){let t=SuperMapAlgoPlot.PlottingUtil.intersectLines(s,n,o[0],o[1]);if(t.isIntersectLines){let e=t.intersectPoint,o=SuperMapAlgoPlot.PlottingUtil.distance(s,n);SuperMapAlgoPlot.PlottingUtil.distance(e,n)>2*o?i.push(n):(i[i.length-1]=e,i.push(n))}else i.push(n)}else i.push(s),i.push(n);(o=[]).push(i[i.length-2]),o.push(i[i.length-1])}if(t[0].x===t[t.length-1].x&&t[0].y===t[t.length-1].y&&1<i.length){let t=SuperMapAlgoPlot.PlottingUtil.intersectLines(i[0],i[1],i[i.length-2],i[i.length-1]);if(t.isIntersectLines){let e=t.intersectPoint;i[i.length-1]=e,i[0]=e}}return i},SuperMapAlgoPlot.PlottingUtil.copyFontStyle=function(t,e){void 0===t.labelAlign&&void 0!==e.labelAlign&&(t.labelAlign=e.labelAlign),!0!==t.fontSizeLimit&&(void 0!==e.fontSize&&(t.fontSize=e.fontSize),void 0!==e.fontWeight&&(t.fontWeight=e.fontWeight),void 0!==e.fontStyle&&(t.fontStyle=e.fontStyle),void 0!==e.fontSpace&&(t.fontSpace=e.fontSpace),void 0!==e.fontPercent&&(t.fontPercent=e.fontPercent)),t.strokeWidth=e.strokeWidth},SuperMapAlgoPlot.PlottingUtil.getDataFromServer=function(t,e,o,i,l,s,n,a){let r;if(void 0!==s&&(r=s),"undefined"!=typeof SuperMap&&void 0!==SuperMap.GetSymbolInfoService){let s=new SuperMap.GetSymbolInfoService(t);s.events.on({processCompleted:n,processFailed:a,scope:r});let p=new SuperMap.GetSymbolInfoParameters;p.libID=e,p.code=o,l&&SuperMapAlgoPlot.PlottingUtil.extend(p,l),i&&null!=i&&(SuperMapAlgoPlot.PlottingUtil.isArray(i)||(i=[i]),p.inputPoints=i),s.processAsync(p)}else if(void 0!==typeof SuperMap&&void 0!==typeof SuperMap.REST&&void 0!==typeof SuperMap.REST.GetSymbolInfoService){let s=new SuperMap.REST.GetSymbolInfoService(t);s.events.on({processCompleted:n,processFailed:a,scope:r});let p=new SuperMap.REST.GetSymbolInfoParameters;if(p.libID=e,p.code=o,l&&SuperMapAlgoPlot.PlottingUtil.extend(p,l),i&&null!=i&&(SuperMapAlgoPlot.PlottingUtil.isArray(i)||(i=[i]),p.inputPoints=i),l&&l.credential){let t=l.credential;s.processAsync(p,t)}else s.processAsync(p)}},SuperMapAlgoPlot.PlottingUtil.innerOutlineDir=function(t){function e(t,e){function o(t){let e=Math.atan2(t.y,t.x);return e<0&&(e+=2*Math.PI),e}let i=o(e)-o(t);return i<-Math.PI&&(i+=2*Math.PI),i>Math.PI&&(i-=2*Math.PI),i}if(t.length<3)return 1;let o=0,i={x:0,y:0},l={x:0,y:0};for(let s=2;s<t.length;s++)l.x=t[s].x-t[s-1].x,l.y=t[s].y-t[s-1].y,i.x=t[s-1].x-t[s-2].x,i.y=t[s-1].y-t[s-2].y,o+=e(i,l);return l.x=t[1].x-t[0].x,l.y=t[1].y-t[0].y,i.x=t[0].x-t[t.length-1].x,i.y=t[0].y-t[t.length-1].y,(o+=e(i,l))>=0?-1:1},SuperMapAlgoPlot.PlottingUtil.isNear=function(t,e){return e||(e=SuperMapAlgoPlot.PlottingUtil.TORLERANCE_STATIC),t<e&&t>-e},SuperMapAlgoPlot.PlottingUtil.equalFuzzy=function(t,e,o){return o||(o=1e-18),Math.abs(t-e)<=o},SuperMapAlgoPlot.PlottingUtil.intersectLines=function(t,e,o,i){var l={isIntersectLines:!1};if(t.x===e.x&&t.y===e.y||o.x===i.x&&o.y===i.y)return l;let s=e.x-t.x,n=e.y-t.y,a=i.x-o.x,r=i.y-o.y,p=s*r-a*n;if(SuperMapAlgoPlot.PlottingUtil.isNear(p))return l;let u=(s*(t.y-o.y)-n*(t.x-o.x))/p,h=new SuperMapAlgoPlot.Point(0,0);return h.x=u*a+o.x,h.y=u*r+o.y,l.isIntersectLines=!0,l.intersectPoint=h,l},SuperMapAlgoPlot.PlottingUtil.getEnvelopePoints=function(t){function e(t,e){if(t.length!==e.length)return!1;for(let o=0;o<t.length;o++)if(t[o].x!==e[o].x||t[o].y!==e[o].y)return!1;return!0}function o(t,e,o){for(let i=0;i<t.length;i++)if(t[i].containsPoint(e))return o.index=i,!0;return!1}function i(t,e,o){let i=t.components[0].components,l=new SuperMapAlgoPlot.Point(0,0);for(let t=0;t<i.length-1;t++)if(SuperMapAlgoPlot.PlottingUtil.intersectLineSegs(e,o,i[t],i[t+1],l))return l;return null}function l(t,e){if(0===t.length||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(e[0].x,e[e.length-1].x,.5)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(e[0].y,e[e.length-1].y,.5))return e;let o=e[e.length-1];for(let i=0;i<t.length;i++)if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[i][0].x,o.x,.5)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[i][0].y,o.y,.5)){e=e.concat(t[i]),t.splice(i,1);let o=l(t,e);if(void 0!==o&&0!==o.length)return o}else if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[i][t[i].length-1].x,o.x,.5)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[i][t[i].length-1].y,o.y,.5)){for(let o=t[i].length-1;o>=0;o--)e.push(t[i][o]);t.splice(i,1);let o=l(t,e);if(void 0!==o&&0!==o.length)return o}return e}if(SuperMapAlgoPlot.PlottingUtil.isArray(t)||(t=[t]),0===t.length)return[];if(1===t.length)return t[0];for(let o=0;o<t.length;o++)for(let i=o+1;i<t.length;)e(t[o],t[i])?t.splice(i,1):i++;let s=[];for(let e=0;e<t.length;e++)s.push(new SuperMap.Geometry.Polygon([new SuperMap.Geometry.LinearRing(t[e])]));let n=[];for(let e=0;e<t.length;e++){let l=[],a=[],r=-1,p=-1,u=s.slice();u.splice(e,1);let h={};for(let n=0;n<t[e].length;n++)if(o(u,t[e][n],h)){if(0!==a.length){let o=i(s[h.index],t[e][n-1],t[e][n]);o&&o!==t[e][n-1]&&o!==t[e][n]&&a.push(o),l.push(a),a=[]}}else{if(0===n&&(r=l.length),n===t[e].length-1&&(p=l.length),0===a.length&&void 0!==h.index){let o=i(s[h.index],t[e][n-1],t[e][n]);o&&o!==t[e][n-1]&&o!==t[e][n]&&a.push(o)}a.push(t[e][n].clone())}if(0!==a.length&&l.push(a),r<l.length&&p<l.length&&r!==p){for(let t=0;t<l[r].length;t++)l[p].push(l[r][t]);l.splice(r,1)}n=n.concat(l)}let a=[];for(;0!==n.length;){let t=n[0];n.splice(0,1);let e=l(n,t);void 0!==e&&(t=e),t.length>2&&a.push(t)}return a},SuperMapAlgoPlot.PlottingUtil.isRight=function(t,e,o){let i=e,l=o,s=e,n=t;return(l.x-i.x)*(n.y-s.y)-(n.x-s.x)*(l.y-i.y)<0},SuperMapAlgoPlot.PlottingUtil.radian=function(t,e){let o,i,l=0;return o=e.x-t.x,i=e.y-t.y,(l=Math.atan2(i,o))<0&&(l+=2*Math.PI),l},SuperMapAlgoPlot.PlottingUtil.findBisectorPoint=function(t,e,o,i){let l=SuperMapAlgoPlot.PlottingUtil.radian(e,t),s=(l+SuperMapAlgoPlot.PlottingUtil.radian(e,o))/2,n=Math.cos(s-l+Math.PI/2),a=i;SuperMapAlgoPlot.PlottingUtil.isNear(n,.15)||(a=i/n);let r=e.x+a*Math.cos(s),p=e.y+a*Math.sin(s);return new SuperMapAlgoPlot.Point(r,p)},SuperMapAlgoPlot.PlottingUtil.findPoint=function(t,e,o,i){if(t===e||Math.abs(o)<1e-18)return t;let l=SuperMapAlgoPlot.PlottingUtil.radian(t,e)+i*Math.PI/180;var s=t.x+o*Math.cos(l),n=t.y+o*Math.sin(l);return new SuperMapAlgoPlot.Point(s,n)},SuperMapAlgoPlot.PlottingUtil.isSameQuadrant=function(t,e,o,i){let l=(e.x-t.x)*(i.x-o.x),s=(e.y-t.y)*(i.y-o.y);return!(Math.abs(l)<1e-18&&Math.abs(s)<1e-18)&&((l>0||Math.abs(l)<1e-18)&&(s>0||Math.abs(s)<1e-18))},SuperMapAlgoPlot.PlottingUtil.isCross=function(t,e,o,i){let l=new SuperMapAlgoPlot.Point(0,0);return!(!SuperMapAlgoPlot.PlottingUtil.intersectLineSegs(t,e,o,i,l)||l==t||l===e||l===o||l==i)},SuperMapAlgoPlot.PlottingUtil.intersectLineSegs=function(t,e,o,i,l){if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.x,e.x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.y,e.y))return l.x=t.x,l.y=t.y,!1;if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(o.x,i.x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(o.y,i.y))return l.x=o.x,l.y=o.y,!1;let s=0,n=0;if(s=t.x>e.x?t.x:e.x,n=t.x<e.x?t.x:e.x,o.x-s>1e-16&&i.x-s>1e-16||o.x-n<-1e-16&&i.x-n<-1e-16)return!1;if(s=t.y>e.y?t.y:e.y,n=t.y<e.y?t.y:e.y,o.y-s>1e-16&&i.y-s>1e-16||o.y-n<-1e-16&&i.y-n<-1e-16)return!1;let a=e.x-t.x,r=e.y-t.y,p=i.x-o.x,u=i.y-o.y,h=t.x-o.x,g=t.y-o.y,c=a*u-p*r,y=c;if(Math.abs(a)>1e-18&&Math.abs(p)>1e-18&&(y/=a*p),Math.abs(y)<1e-18)return t===o?(l.x=t.x,l.y=t.y,!SuperMapAlgoPlot.PlottingUtil.isSameQuadrant(t,e,o,i)):e===i?(l.x=e.x,l.y=e.y,!SuperMapAlgoPlot.PlottingUtil.isSameQuadrant(t,e,o,i)):t===i?(l.x=t.x,l.y=t.y,SuperMapAlgoPlot.PlottingUtil.isSameQuadrant(t,e,o,i)):e===o&&(l.x=e.x,l.y=e.y,SuperMapAlgoPlot.PlottingUtil.isSameQuadrant(t,e,o,i));let P=(a*g-r*h)/c,d=(p*g-u*h)/c;return!(P<0&&(Math.abs(P*p)>1e-16||Math.abs(P*u)>1e-16))&&(!(P>1&&(Math.abs((P-1)*p)>1e-16||Math.abs((P-1)*u)>1e-16))&&(!(d<0&&(Math.abs(d*a)>1e-16||Math.abs(d*r)>1e-16))&&(!(d>1&&(Math.abs((d-1)*a)>1e-16||Math.abs((d-1)*r)>1e-16))&&(Math.abs(P)<1e-18?(l.x=o.x,l.y=o.y,!0):Math.abs(P-1)<1e-18?(l.x=i.x,l.y=i.y,!0):Math.abs(d)<1e-18?(l.x=t.x,l.y=t.y,!0):Math.abs(d-1)<1e-18?(l.x=e.x,l.y=e.y,!0):!(P<0&&(Math.abs(P*p)>1e-16||Math.abs(P*u)>1e-16))&&(!(P>1&&(Math.abs((P-1)*p)>1e-16||Math.abs((P-1)*u)>1e-16))&&(!(d<0&&(Math.abs(d*a)>1e-16||Math.abs(d*r)>1e-16))&&(!(d>1&&(Math.abs((d-1)*a)>1e-16||Math.abs((d-1)*r)>1e-16))&&(l.x=P*p+o.x,l.y=P*u+o.y,!0))))))))},SuperMapAlgoPlot.PlottingUtil.parallel=function(t,e){let o=[],i=t.length;if(!t||null==t||t.length<2)return o;let l=!1;t.length>3&&t[0].x===t[t.length-1].x&&t[0].y===t[t.length-1].y&&(l=!0),l?(o[0]=SuperMapAlgoPlot.PlottingUtil.findBisectorPoint(t[t.length-2],t[0],t[1],e),o[t.length-1]=o[0]):(o[0]=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],e,90),o[t.length-1]=SuperMapAlgoPlot.PlottingUtil.findPoint(t[t.length-1],t[t.length-2],-e,90));let s=t[0],n=t[1],a=t[1];for(let l=1;l<t.length-1;l++)if(n=t[l],t[l]!==t[l-1]&&(s=t[l-1]),t[l]!==t[l+1]){a=t[l+1];let i=SuperMapAlgoPlot.PlottingUtil.findBisectorPoint(s,n,a,e);SuperMapAlgoPlot.PlottingUtil.isCross(s,o[l-1],n,i)&&(i=o[l-1]),o[l]=i}else{let r=l;for(;r<i-1;){if(t[r]!==t[r+1]){a=t[r+1];break}r++}if(r<i-1){let t=SuperMapAlgoPlot.PlottingUtil.FindBisectorPoint(s,n,a,e);for(SuperMapAlgoPlot.PlottingUtil.isCross(s,o[l-1],n,t)&&(t=o[l-1]);l<r;)o[l]=t,l++;l=r-1}}return o},SuperMapAlgoPlot.PlottingUtil.distance=function(t,e){return Math.sqrt((t.x-e.x)*(t.x-e.x)+(t.y-e.y)*(t.y-e.y))},SuperMapAlgoPlot.PlottingUtil.projectPoint=function(t,e,o){if(e===o)return e;let i=new SuperMapAlgoPlot.Point(0,0),l=o.x-e.x,s=e.y-o.y,n=l*l,a=s*s,r=l*s,p=l*l+s*s;return i.x=(r*(e.y-t.y)+e.x*a+t.x*n)/p,i.y=(r*(e.x-t.x)+e.y*n+t.y*a)/p,i},SuperMapAlgoPlot.PlottingUtil.pointToLineDis=function(t,e,o){let i=SuperMapAlgoPlot.PlottingUtil.projectPoint(t,e,o);return SuperMapAlgoPlot.PlottingUtil.distance(t,i)},SuperMapAlgoPlot.PlottingUtil.pointToPloyLineDis=function(t,e,o){if(e===o)return SuperMapAlgoPlot.PlottingUtil.distance(t,e);let i=(e.x-t.x)*(e.x-t.x)+(e.y-t.y)*(e.y-t.y),l=(o.x-t.x)*(o.x-t.x)+(o.y-t.y)*(o.y-t.y),s=(e.x-o.x)*(e.x-o.x)+(e.y-o.y)*(e.y-o.y),n=(i+s-l)/(2*s);n<0?n=0:n>1&&(n=1);let a=(o.x-e.x)*n+e.x,r=(o.y-e.y)*n+e.y,p=(a-t.x)*(a-t.x)+(r-t.y)*(r-t.y);return Math.sqrt(p)},SuperMapAlgoPlot.PlottingUtil.isCounterClockwise=function(t,e,o){return(o.x-e.x)*(t.y-e.y)-(t.x-e.x)*(o.y-e.y)>0},SuperMapAlgoPlot.PlottingUtil.clearSamePts=function(t){let e=t.length;for(let o=0;o<e-1;)SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[o].x,t[o+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[o].y,t[o+1].y)?(t.splice(o,1),e--):o++;return t},SuperMapAlgoPlot.PlottingUtil.getBeizerCtrlPt=function(t){let e=[],o=t.length;if(o<3)for(let i=0;i<o;++i)e[i]=t[i].clone();else{let i=0;for(let l=0;l<3*o-2;l+=3)e[l]=t[i].clone(),e[l+1]=new SuperMapAlgoPlot.Point(0,0),e[l+2]=new SuperMapAlgoPlot.Point(0,0),i++;for(let i=1;i<o-1;i++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(8,3,t[i-1],t[i],t[i+1],e[3*i+1],e[3*i+2]);SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.6,e[0],e[3],e[4],e[2]),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.6,e[3*o-3],e[3*o-6],e[3*o-4],e[3*o-2]),e[1]=t[0].clone(),e[3*o-1]=t[o-1].clone()}return e},SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt=function(t,e){let o=t.slice();!0===e&&o.push(o[0]);let i=SuperMapAlgoPlot.PlottingUtil.getBeizerCtrlPt(o);return SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsWithCtrlPt(i)},SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsWithCtrlPt=function(t){let e=t.length,o=[];if(t.length<3)for(let i=0;i<e;i++)o[i]=t[i].clone();else for(let i=0;i<e;i+=3){if(i+4>=e)continue;let l=t[i].x,s=t[i].y,n=t[i+2].x,a=t[i+2].y,r=t[i+4].x,p=t[i+4].y,u=t[i+3].x,h=t[i+3].y;if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l,n,1e-10)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(s,a,1e-10)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(r,u,1e-10)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(p,h,1e-10))o.push(new SuperMapAlgoPlot.Point(l,s)),o.push(new SuperMapAlgoPlot.Point(r,p));else for(let t=0;t<=1;t+=.03125){let e,i,g,c,y=t*t,P=y*t;e=1-3*t+3*y-P,i=3*(t-2*y+P),g=3*(y-P),c=P;let d=new SuperMapAlgoPlot.Point(e*l+i*n+g*r+c*u,e*s+i*a+g*p+c*h);o.push(d)}}return o},SuperMapAlgoPlot.PlottingUtil.computeBeizerPoints0=function(t,e,o){let i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(e),l=[],s=[],n=[];if(t){s.push(e[0]);let t=o[0],a=o[1],r=e[0].x+i*t,p=e[0].y+i*a;s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p));for(let t=1;t<e.length-1;t++){let n=o[4*t-2],a=o[4*t-1],r=e[t].x+i*n,p=e[t].y+i*a;s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p)),s.push(new SuperMapAlgoPlot.Point(e[t].x,e[t].y)),n=o[4*t],a=o[4*t+1],r=e[t].x+i*n,p=e[t].y+i*a,s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p))}let u=e.length-1;t=o[4*u-2],a=o[4*u-1],r=e[u].x+i*t,p=e[u].y+i*a,s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p)),s.push(new SuperMapAlgoPlot.Point(e[u].x,e[u].y)),s.push(new SuperMapAlgoPlot.Point(e[u].x,e[u].y)),s.push(new SuperMapAlgoPlot.Point(e[u].x,e[u].y)),n=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsWithCtrlPt(s)}else{o=[];let t=(s=SuperMapAlgoPlot.PlottingUtil.getBeizerCtrlPt(e))[1].x-s[0].x,a=s[1].y-s[0].y,r=t/i,p=a/i;o.push(r),o.push(p),l.push(s[1]);for(let t=1;t<e.length-1;t++){let e=(s[3*t-1].x-s[3*t].x)/i,n=(s[3*t-1].y-s[3*t].y)/i;o.push(e),o.push(n),l.push(s[3*t-1]);let a=(s[3*t+1].x-s[3*t].x)/i,r=(s[3*t+1].y-s[3*t].y)/i;o.push(a),o.push(r),l.push(s[3*t+1])}t=s[3*(e.length-1)-1].x-s[3*(e.length-1)].x,a=s[3*(e.length-1)-1].y-s[3*(e.length-1)].y,r=t/i,p=a/i,o.push(r),o.push(p),l.push(s[3*(e.length-1)-1]),n=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsWithCtrlPt(s)}return{scalePoints:l,scaleValues:o,beizerPoints:n}},SuperMapAlgoPlot.PlottingUtil.computeBeizerPoints=function(t,e,o){let i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(e),l=[],s=[],n=[];if(t){s.push(new SuperMapAlgoPlot.Point(e[0].x,e[0].y)),s.push(new SuperMapAlgoPlot.Point(e[0].x,e[0].y));let t=o[0],a=o[1],r=e[0].x+i*t,p=e[0].y+i*a;s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p));for(let t=1;t<e.length-1;t++){s.push(new SuperMapAlgoPlot.Point(e[t].x,e[t].y));let n=o[4*t-2],a=o[4*t-1],r=e[t].x+i*n,p=e[t].y+i*a;s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p)),n=o[4*t],a=o[4*t+1],r=e[t].x+i*n,p=e[t].y+i*a,s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p))}let u=e.length-1;s.push(new SuperMapAlgoPlot.Point(e[u].x,e[u].y)),t=o[4*u-2],a=o[4*u-1],r=e[u].x+i*t,p=e[u].y+i*a,s.push(new SuperMapAlgoPlot.Point(r,p)),l.push(new SuperMapAlgoPlot.Point(r,p)),s.push(new SuperMapAlgoPlot.Point(e[u].x,e[u].y)),n=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsWithCtrlPt(s)}else{o=[];let t=(s=SuperMapAlgoPlot.PlottingUtil.getBeizerCtrlPt(e))[2].x-s[0].x,a=s[2].y-s[0].y,r=t/i,p=a/i;o.push(r),o.push(p),l.push(s[2]);for(let t=1;t<e.length-1;t++){let e=(s[3*t+1].x-s[3*t].x)/i,n=(s[3*t+1].y-s[3*t].y)/i;o.push(e),o.push(n),l.push(s[3*t+1]);let a=(s[3*t+2].x-s[3*t].x)/i,r=(s[3*t+2].y-s[3*t].y)/i;o.push(a),o.push(r),l.push(s[3*t+2])}t=s[3*(e.length-1)+1].x-s[3*(e.length-1)].x,a=s[3*(e.length-1)+1].y-s[3*(e.length-1)].y,r=t/i,p=a/i,o.push(r),o.push(p),l.push(s[3*(e.length-1)+1]),n=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsWithCtrlPt(s)}return{scalePoints:l,scaleValues:o,beizerPoints:n}},SuperMapAlgoPlot.PlottingUtil.getTrianglePoints=function(t,e,o,i,l,s,n){let a=o.x,r=o.y,p=i.x,u=i.y,h=l.x,g=l.y;SuperMapAlgoPlot.PlottingUtil.getPointsByTriangle(t,e,a,r,p,u,h,g,s,n)},SuperMapAlgoPlot.PlottingUtil.getPointsByTriangle=function(t,e,o,i,l,s,n,a,r,p){let u=l+(n-o),h=s+(a-i),g=0,c=0;if(o==n)g=o,c=h;else if(i==a)g=u,c=i;else{let t=1*(a-i)/(n-o),e=i-o*t;c=t*(g=(h+u/t-e)/(t+1/t))+e}let y=Math.sqrt(1*(l-u)*(l-u)+1*(s-h)*(s-h)),P=Math.sqrt(1*(o-l)*(o-l)+1*(i-s)*(i-s)),d=Math.sqrt(1*(l-n)*(l-n)+1*(s-a)*(s-a)),S=0;u=g+(u-g)*(S=P+d?1+(d-P)*t/(d+P):1),h=c+(h-c)*S,0==y&&(y=1),r.x=l+(l-u)*P/(e*y),r.y=s+(s-h)*P/(e*y),p.x=l+(u-l)*d/(e*y),p.y=s+(h-s)*d/(e*y)},SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints=function(t,e,o,i,l){let s=e.x,n=e.y,a=o.x,r=o.y,p=i.x,u=i.y;return SuperMapAlgoPlot.PlottingUtil.getPointsByTrapezoid(t,s,n,a,r,p,u,l)},SuperMapAlgoPlot.PlottingUtil.getPointsByTrapezoid=function(t,e,o,i,l,s,n,a){let r=0,p=0,u=0,h=0;if(0==Math.abs(o-l))r=e+i-s,p=n;else if(0==Math.abs(e-i))r=s,p=o+l-n;else{let t=1*(o-l)/(e-i),a=n-t*s;p=t*(r=((l+o)/2+(e+i)/(2*t)-a)/(t+1/t))+a,r=2*r-s,p=2*p-n}let g=Math.sqrt(1*(e-i)*(e-i)+1*(o-l)*(o-l)),c=Math.sqrt(1*(e-r)*(e-r)+1*(o-p)*(o-p));return g>0?(u=e+(i-e)*c/g,h=o+(l-o)*c/g):(u=e,h=o),a.x=u+(r-u)*t,a.y=h+(p-h)*t,a},SuperMapAlgoPlot.PlottingUtil.pointIsOnPolyLine=function(t,e,o){if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.x,e.x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.y,e.y)||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.x,o.x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.y,o.y))return!0;let i=t.x-e.x,l=t.y-e.y,s=t.x-o.x,n=t.y-o.y,a=(i*s+l*n)/(Math.sqrt(i*i+l*l)*Math.sqrt(s*s+n*n));return!!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(a,-1,.1)},SuperMapAlgoPlot.PlottingUtil.pointIsOnPolyLines=function(t,e){if(!e||0===e.length)return{isOnPolyLine:!1,index:-1};let o=!1,i=-1;for(let l=0;l<e.length-1;l++)if(o=SuperMapAlgoPlot.PlottingUtil.pointIsOnPolyLine(t,e[l],e[l+1])){i=l;break}return{isOnPolyLine:o,index:i}},SuperMapAlgoPlot.PlottingUtil.computePointToLineMinDis=function(t,e){let o=-1,i=-1;for(let l=0;l<e.length-1;l++){let s=e[l],n=e[l+1],a=SuperMapAlgoPlot.PlottingUtil.projectPoint(t,s,n);if(!SuperMapAlgoPlot.PlottingUtil.pointIsOnPolyLine(a,s,n))continue;let r=SuperMapAlgoPlot.PlottingUtil.distance(t,a);o<0?(o=r,i&&(i=l)):o>r&&(o=r,i=l)}return i&&o<0&&(i=-1),{minDis:o,index:i}},SuperMapAlgoPlot.PlottingUtil.findPointInLine=function(t,e,o){if(t===e||Math.abs(o)<1e-18)return t;let i=e.x-t.x,l=e.y-t.y,s=o/Math.sqrt(i*i+l*l),n=t.x+i*s,a=t.y+l*s;return new SuperMapAlgoPlot.Point(n,a)},SuperMapAlgoPlot.PlottingUtil.operateControlPoints=function(t){let e=t,o=e.length;if(3==o){let o=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(1,t[0],t[1],t[2],o),e.push(o)}if(o>4&&(e.splice(4,o-4),o=e.length),SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(t[0],t[1],e[2])){let t=e[0];e[0]=e[1],e[1]=t}if(!SuperMapAlgoPlot.PlottingUtil.pointIsRightToVerticle(e[0],e[1],e[2])){let t=e[2];e[2]=e[3],e[3]=t}return e},SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine=function(t,e,o){return(e.x-t.x)*(o.y-t.y)-(o.x-t.x)*(e.y-t.y)<0},SuperMapAlgoPlot.PlottingUtil.pointIsRightToVerticle=function(t,e,o){let i=new SuperMapAlgoPlot.Point(.5*(e.x+t.x),.5*(e.y+t.y)),l=new SuperMapAlgoPlot.Point(e.x-t.x,e.y-t.y),s=new SuperMapAlgoPlot.Point(o.x-i.x,o.y-i.y);return l.x*s.x+l.y*s.y>0},SuperMapAlgoPlot.PlottingUtil.linePnt=function(t,e,o){let i=SuperMapAlgoPlot.PlottingUtil.distance(t,e);if(0==i)return t;{let l=o/i;return SuperMapAlgoPlot.PlottingUtil.findPointOnLineByRatio(l,t,e)}},SuperMapAlgoPlot.PlottingUtil.findPointOnLineByRatio=function(t,e,o){let i=new SuperMapAlgoPlot.Point(0,0);return i.x=e.x+(o.x-e.x)*t,i.y=e.y+(o.y-e.y)*t,i},SuperMapAlgoPlot.PlottingUtil.rotateAngle=function(t,e,o){let i=e,l=Math.cos(i),s=Math.sin(i),n=o.x-t.x,a=o.y-t.y;return o.x=n*l-a*s+t.x,o.y=n*s+a*l+t.y,o},SuperMapAlgoPlot.PlottingUtil.resize=function(t,e,o){return o.x=t.x+e*(o.x-t.x),o.y=t.y+e*(o.y-t.y),o},SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine=function(t,e){if(e<0||t.length<2)return{index:-1,pt:null};if(Math.abs(e)<1e-18)return{index:0,pt:t[0]};let o=0;for(let i=0;i<t.length-1;i++)if((o+=SuperMapAlgoPlot.PlottingUtil.distance(t[i],t[i+1]))>e||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(o,e)){let l=o-e,s=t[i+1],n=t[i],a=l/SuperMapAlgoPlot.PlottingUtil.distance(s,n),r=new SuperMapAlgoPlot.Point(0,0);return r.x=s.x+(n.x-s.x)*a,r.y=s.y+(n.y-s.y)*a,{index:i,pt:r}}return{index:-1,pt:null}},SuperMapAlgoPlot.PlottingUtil.polylineDistance=function(t){if(0===t.length)return 0;let e=0;for(let o=0;o<t.length-1;o++)e+=SuperMapAlgoPlot.PlottingUtil.distance(t[o],t[o+1]);return e},SuperMapAlgoPlot.PlottingUtil.rotate=function(t,e,o,i){let l=i.x-t.x,s=i.y-t.y,n=l*e-s*o+t.x,a=l*o+s*e+t.y;return new SuperMapAlgoPlot.Point(n,a)},SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale=function(t,e,o){let i=e.x,l=e.y,s=o.x,n=o.y,a=Math.sqrt(1*(i-s)*(i-s)+1*(l-n)*(l-n)),r=0,p=0;return 0==a?(r=i,p=l):(r=i+(s-i)*t/a,p=l+(n-l)*t/a),new SuperMapAlgoPlot.Point(r,p)},SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale=function(t,e,o){let i=e.x,l=e.y,s=o.x,n=o.y,a=0,r=0,p=Math.sqrt(1*(i-s)*(i-s)+1*(l-n)*(l-n));return 0===p?(a=i,r=l):(a=i+(i-s)*t/p,r=l+(l-n)*t/p),new SuperMapAlgoPlot.Point(a,r)},SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine=function(t,e,o){let i=e.x,l=e.y,s=o.x,n=o.y,a=Math.sqrt(1*(i-s)*(i-s)+1*(l-n)*(l-n)),r=0,p=0;0==a?(p=0,r=t):(r=t*(i-s)/a,p=t*(l-n)/a);let u=-p+s,h=+r+n,g=+p+s,c=-r+n;return{pntLeft:new SuperMapAlgoPlot.Point(g,c),pntRight:new SuperMapAlgoPlot.Point(u,h)}},SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment=function(t,e,o){let i,l,s=0,n=0,a=0,r=1;if(n=e.x!==t.x?(e.y-t.y)/(e.x-t.x):1.7976931348623157e308,a=o.x!==t.x?(o.y-t.y)/(o.x-t.x):1.7976931348623157e308,s=o.y!==e.y?(o.x-e.x)/(e.y-o.y):1.7976931348623157e308,(i=e.x>=t.x&&e.y>=t.y?1:e.x<t.x&&e.y>t.y?2:e.x<=t.x&&e.y<=t.y?3:4)==(l=o.x>t.x&&o.y>t.y?1:o.x<t.x&&o.y>t.y?2:o.x<t.x&&o.y<t.y?3:4))(n<s&&a<s||n>s&&a>s)&&(r=0);else switch(i){case 1:(4==l&&n<s||2==l&&n>s)&&(r=0);break;case 2:(1==l&&n<s||3==l&&n>s)&&(r=0);break;case 3:(2==l&&n<s||4==l&&n>s)&&(r=0);break;case 4:(3==l&&n<s||1==l&&n>s)&&(r=0)}let p=new SuperMapAlgoPlot.Point(0,0);return SuperMapAlgoPlot.PlottingUtil.equalFuzzy(s-1.7976931348623157e308,0)?(p.x=t.x,p.y=e.y):SuperMapAlgoPlot.PlottingUtil.equalFuzzy(s,0)?(p.x=e.x,p.y=t.y):(p.x=(s*(e.y-t.y)+s*s*t.x+e.x)/(s*s+1),p.y=t.y+s*(p.x-t.x)),{isOnline:1===r,projectPoint:p}},SuperMapAlgoPlot.PlottingUtil.coordinateTrans=function(t,e,o){let i=SuperMapAlgoPlot.PlottingUtil.distance(new SuperMapAlgoPlot.Point(0,0),e),l=SuperMapAlgoPlot.PlottingUtil.radian(new SuperMapAlgoPlot.Point(0,0),e)+o*Math.PI/180,s=i*Math.cos(l)+t.x,n=i*Math.sin(l)+t.y;return new SuperMapAlgoPlot.Point(s,n)},SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen=function(t,e,o){let i,l,s=(o.x-e.x)*(o.x-e.x)+(o.y-e.y)*(o.y-e.y),n=Math.sqrt((t.x-e.x)*(t.x-e.x)+(t.y-e.y)*(t.y-e.y)),a=Math.sqrt((t.x-o.x)*(t.x-o.x)+(t.y-o.y)*(t.y-o.y));if(0==a||0==n)i=0,l=0;else if(0==s)i=n,l=0;else{let t=(n*n+a*a-s)/2/n/a,e=0;t>=1?(t=1,e=0):e=Math.sqrt(1-t*t),i=a*t,l=a*e}return{dLen1:i,dLen2:l}},SuperMapAlgoPlot.PlottingUtil.paraLine=function(t,e,o){let i=[];if(2>t.length)return i;if(o){let o=t[1].clone();o=SuperMapAlgoPlot.PlottingUtil.rotateAngle(t[0],Math.PI/2,o),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(t[0],o,e));for(let l=1;l<t.length-1;l++){if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l].x,t[l+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l].y,t[l+1].y))continue;let s=SuperMapAlgoPlot.PlottingUtil.radian(t[l],t[l+1]),n=SuperMapAlgoPlot.PlottingUtil.radian(t[l],t[l-1])-s;for(;n<0;)n+=2*Math.PI;let a,r=n/2;a=r>Math.PI/2?r-Math.PI/2:Math.PI/2-r;let p=e/Math.cos(a);o=t[l+1].clone(),o=SuperMapAlgoPlot.PlottingUtil.rotateAngle(t[l],r,o),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(t[l],o,p))}o=t[t.length-2].clone(),o=SuperMapAlgoPlot.PlottingUtil.rotateAngle(t[t.length-1],-1*Math.PI/2,o),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(t[t.length-1],o,e))}else{let o=t[1].clone();o=SuperMapAlgoPlot.PlottingUtil.rotateAngle(t[0],-Math.PI/2,o),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(t[0],o,e));for(let l=1;l<t.length-1;l++){if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l].x,t[l+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l].y,t[l+1].y))continue;let s=SuperMapAlgoPlot.PlottingUtil.radian(t[l],t[l+1]),n=SuperMapAlgoPlot.PlottingUtil.radian(t[l],t[l-1])-s;for(;n<0;)n+=2*Math.PI;let a,r=Math.PI-n/2;a=r>Math.PI/2?r-Math.PI/2:Math.PI/2-r;let p=e/Math.cos(a);o=t[l-1].clone(),o=SuperMapAlgoPlot.PlottingUtil.rotateAngle(t[l],r,o),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(t[l],o,p))}o=t[t.length-2].clone(),o=SuperMapAlgoPlot.PlottingUtil.rotateAngle(t[t.length-1],Math.PI/2,o),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(t[t.length-1],o,e))}return i},SuperMapAlgoPlot.PlottingUtil.circlePoint=function(t,e,o,i){i*=Math.PI/180;let l=t.x+e*Math.cos(i),s=t.y+o*Math.sin(i);return new SuperMapAlgoPlot.Point(l,s)},SuperMapAlgoPlot.PlottingUtil.getPolygonCenterPt=function(t){if(!t||0===t.length)return null;let e=0,o=0;for(let i=0;i<t.length;i++)e+=t[i].x,o+=t[i].y;return new SuperMapAlgoPlot.Point(e/t.length,o/t.length)},SuperMapAlgoPlot.PlottingUtil.ptIsInPolygon=function(t,e){if(!t||0===t.length)return!1;let o=0,i=t.length;for(let l=0;l<i;l++){let s=t[l],n=t[(l+1)%i];if(s.y===n.y)continue;let a=s.y<n.y?s.y:n.y,r=s.y>n.y?s.y:n.y;e.y<a||e.y>r||(e.y-s.y)*(n.x-s.x)/(n.y-s.y)+s.x>e.x&&o++}return o%2==1},SuperMapAlgoPlot.PlottingUtil.projectPtOnPolyLine=function(t,e){if(2>e.length)return{index:-1,pt:null};for(let o=0;o<e.length-1;o++){let i=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(t,e[o],e[o+1]);if(i.isOnline)return{index:o,pt:i.projectPoint}}return{index:-1,pt:null}},SuperMapAlgoPlot.PlottingUtil.isPloyClockwise=function(t){let e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),o=e.length;if(o<3)return;let i=e[0].y*(e[o-1].x-e[1].x);e.push(e[0].clone());for(let t=1;t<o;++t)i+=e[t].y*(e[t-1].x-e[t+1].x);return i>0?0:1},SuperMapAlgoPlot.PlottingUtil.isSamePt=function(t,e){return!(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.x,e.x)||!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t.y,e.y))},SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance=function(t,e){let o=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(e,t);return{index:o.index,pts:o.pt,bfind:-1!==o.index}},SuperMapAlgoPlot.PlottingUtil.ptInBounds=function(t,e){return t.x>e.left&&t.x<e.right&&t.y<e.top&&t.y>e.bottom},SuperMapAlgoPlot.PlottingUtil.InnerAngle=function(t,e,o){if(t==e||t==o)return 0;let i=SuperMapAlgoPlot.PlottingUtil.distance(t,e),l=SuperMapAlgoPlot.PlottingUtil.distance(t,o),s=SuperMapAlgoPlot.PlottingUtil.distance(e,o),n=(i*i+l*l-s*s)/(2*i*l);return n>1&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(n,1)?n=1:n<1&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(n,-1)&&(n=-1),Math.acos(n)},SuperMapAlgoPlot.PlottingUtil.plumbLineLen=function(t,e,o){return SuperMapAlgoPlot.PlottingUtil.distance(t,e)*Math.sin(SuperMapAlgoPlot.PlottingUtil.InnerAngle(e,t,o))},SuperMapAlgoPlot.PlottingUtil.paraPolygon=function(t,e,o){let i=[],l=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),s=l.length;if(s<2)return i;let n=new SuperMapAlgoPlot.Point(0,0);if(o){if(s<3)n=l[1].clone(),SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[0],Math.PI,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[0],n,e));else{let t=SuperMapAlgoPlot.PlottingUtil.radian(l[0],l[1]),o=SuperMapAlgoPlot.PlottingUtil.radian(l[0],l[l.length-1])-t;for(;o<0;)o+=2*Math.PI;let s,a=o/2;s=a>Math.PI/2?a-Math.PI/2:Math.PI/2-a;let r=e/Math.cos(s);n=l[1].clone(),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[0],a,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[0],n,r))}for(let t=1;t<s-1;t++){let o=SuperMapAlgoPlot.PlottingUtil.radian(l[t],l[t+1]),s=SuperMapAlgoPlot.PlottingUtil.radian(l[t],l[t-1])-o;for(;s<0;)s+=2*Math.PI;let a,r=s/2;a=r>Math.PI/2?r-Math.PI/2:Math.PI/2-r;let p=e/Math.cos(a);n=l[t+1].clone(),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[t],r,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[t],n,p))}if(s<3)n=l[s-2].clone(),SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[s-1],0,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[s-1],n,e));else{let t=SuperMapAlgoPlot.PlottingUtil.radian(l[s-1],l[0]),o=SuperMapAlgoPlot.PlottingUtil.radian(l[s-1],l[s-2])-t;for(;o<0;)o+=2*Math.PI;let a,r=o/2;a=r>Math.PI/2?r-Math.PI/2:Math.PI/2-r;let p=e/Math.cos(a);n=l[0].clone(),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[s-1],r,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[s-1],n,p))}}else{if(s<3){let t=l[1].clone();SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[0],0,t),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[0],t,e))}else{let t=SuperMapAlgoPlot.PlottingUtil.radian(l[0],l[1]),o=SuperMapAlgoPlot.PlottingUtil.radian(l[0],l[s-1])-t;for(;o<0;)o+=2*Math.PI;let a,r=Math.PI-o/2;a=r>Math.PI/2?r-Math.PI/2:Math.PI/2-r;let p=e/Math.cos(a);n=l[s-1].clone(),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[0],r,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[0],n,p))}for(let t=1;t<s-1;t++){let o=SuperMapAlgoPlot.PlottingUtil.radian(l[t],l[t+1]),s=SuperMapAlgoPlot.PlottingUtil.radian(l[t],l[t-1])-o;for(;s<0;)s+=2*Math.PI;let a,r=Math.PI-s/2;a=r>Math.PI/2?r-Math.PI/2:Math.PI/2-r;let p=e/Math.cos(a);n=l[t-1].clone(),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[t],r,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[t],n,p))}if(s<3)n=l[s-2].clone(),SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[s-1],Math.PI,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[s-1],n,e));else{let t=SuperMapAlgoPlot.PlottingUtil.radian(l[s-1],l[0]),o=SuperMapAlgoPlot.PlottingUtil.radian(l[s-1],l[s-2])-t;for(;o<0;)o+=2*Math.PI;let a,r=Math.PI-o/2;a=r>Math.PI/2?r-Math.PI/2:Math.PI/2-r;let p=e/Math.cos(a);n=l[s-2].clone(),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(l[s-1],r,n),i.push(SuperMapAlgoPlot.PlottingUtil.linePnt(l[s-1],n,p))}}return i},SuperMapAlgoPlot.PlottingUtil.getOutRectangleDis=function(t){if(2>t.length)return 0;let e=t[0].x,o=t[0].x,i=t[0].y,l=t[0].y;for(let s=1;s<t.length;s++)e<t[s].x&&(e=t[s].x),o>t[s].x&&(o=t[s].x),i<t[s].y&&(i=t[s].y),l>t[s].y&&(l=t[s].y);return SuperMapAlgoPlot.PlottingUtil.distance(new SuperMapAlgoPlot.Point(e,i),new SuperMapAlgoPlot.Point(o,l))},SuperMapAlgoPlot.PlottingUtil.clonePoints=function(t){let e=[];if(void 0===t||null===t)return e;if(SuperMapAlgoPlot.PlottingUtil.isArray(t)||(t=[t]),t&&null!=t)for(let o=0;o<t.length;o++)void 0!==t[o]&&null!==t[o]&&e.push(t[o].clone());return e},SuperMapAlgoPlot.PlottingUtil.extend=function(t,e){if("function"==typeof SuperMap.Util.extend)return SuperMap.Util.extend(t,e);if(t=t||{},e){for(let o in e){let i=e[o];void 0!==i&&(t[o]=i)}!("function"==typeof window.Event&&e instanceof window.Event)&&e.hasOwnProperty&&e.hasOwnProperty("toString")&&(t.toString=e.toString)}return t},SuperMapAlgoPlot.PlottingUtil.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)},SuperMapAlgoPlot.PlottingUtil.indexOf=function(t,e){if(null==t)return-1;if("function"==typeof t.indexOf)return t.indexOf(e);for(let o=0,i=t.length;o<i;o++)if(t[o]===e)return o;return-1},SuperMapAlgoPlot.PlottingUtil.copyAttributes=function(t,e){if(t=t||{},e)for(let o in e){let i=e[o];void 0!==i&&"CLASS_NAME"!==o&&"function"!=typeof i&&(t[o]=i)}return t},SuperMapAlgoPlot.PlottingUtil.cloneObject=function(t){if(null===t||"object"!=typeof t)return t;if(t instanceof Date){let e=new Date;return e.setTime(t.getTime()),e}if(t instanceof Array){return t.slice(0)}if(t instanceof Object){let e={};for(let o in t)t.hasOwnProperty(o)&&(e[o]=SuperMapAlgoPlot.PlottingUtil.cloneObject(t[o]));return e}throw new Error("Unable to copy obj! Its type isn't supported.")},SuperMapAlgoPlot.PlottingUtil.rad=function(t){return t*Math.PI/180},SuperMapAlgoPlot.PlottingUtil.deg=function(t){return 180*t/Math.PI},SuperMapAlgoPlot.PlottingUtil.VincentyConstants={a:6378137,b:6356752.3142,f:1/298.257223563},SuperMapAlgoPlot.PlottingUtil.distVincenty=function(t,e){var o,i,l,s=SuperMapAlgoPlot.PlottingUtil.VincentyConstants,n=s.a,a=s.b,r=s.f;"undefined"!=typeof L&&void 0!==L.LatLng&&t instanceof L.LatLng&&e instanceof L.LatLng?(o=SuperMapAlgoPlot.PlottingUtil.rad(e.lng-t.lng),i=Math.atan((1-r)*Math.tan(SuperMapAlgoPlot.PlottingUtil.rad(t.lat))),l=Math.atan((1-r)*Math.tan(SuperMapAlgoPlot.PlottingUtil.rad(e.lat)))):(o=SuperMapAlgoPlot.PlottingUtil.rad(e.lon-t.lon),i=Math.atan((1-r)*Math.tan(SuperMapAlgoPlot.PlottingUtil.rad(t.lat))),l=Math.atan((1-r)*Math.tan(SuperMapAlgoPlot.PlottingUtil.rad(e.lat))));for(var p=Math.sin(i),u=Math.cos(i),h=Math.sin(l),g=Math.cos(l),c=o,y=2*Math.PI,P=20;Math.abs(c-y)>1e-12&&--P>0;){var d=Math.sin(c),S=Math.cos(c),f=Math.sqrt(g*d*(g*d)+(u*h-p*g*S)*(u*h-p*g*S));if(0==f)return 0;var m=p*h+u*g*S,M=Math.atan2(f,m),b=Math.asin(u*g*d/f),A=Math.cos(b)*Math.cos(b),T=m-2*p*h/A,v=r/16*A*(4+r*(4-3*A));y=c,c=o+(1-v)*r*Math.sin(b)*(M+v*f*(T+v*m*(2*T*T-1)))}if(0==P)return NaN;var _=A*(n*n-a*a)/(a*a),x=_/1024*(256+_*(_*(74-47*_)-128));return(a*(1+_/16384*(4096+_*(_*(320-175*_)-768)))*(M-x*f*(T+x/4*(m*(2*T*T-1)-x/6*T*(4*f*f-3)*(4*T*T-3))))).toFixed(3)/1e3},SuperMapAlgoPlot.PlottingUtil.destinationVincenty=function(t,e,o){var i,l,s=SuperMapAlgoPlot.PlottingUtil,n=s.VincentyConstants,a=n.a,r=n.b,p=n.f;"undefined"!=typeof L&&void 0!==L.LatLng&&t instanceof L.LatLng?(i=t.lng,l=t.lat):(i=t.lon,l=t.lat);for(var u=o,h=s.rad(e),g=Math.sin(h),c=Math.cos(h),y=(1-p)*Math.tan(s.rad(l)),P=1/Math.sqrt(1+y*y),d=y*P,S=Math.atan2(y,c),f=P*g,m=1-f*f,M=m*(a*a-r*r)/(r*r),b=1+M/16384*(4096+M*(M*(320-175*M)-768)),A=M/1024*(256+M*(M*(74-47*M)-128)),T=u/(r*b),v=2*Math.PI;Math.abs(T-v)>1e-12;){var _=Math.cos(2*S+T),x=Math.sin(T),O=Math.cos(T);v=T,T=u/(r*b)+A*x*(_+A/4*(O*(2*_*_-1)-A/6*_*(4*x*x-3)*(4*_*_-3)))}var w=d*x-P*O*c,I=Math.atan2(d*O+P*x*c,(1-p)*Math.sqrt(f*f+w*w)),C=p/16*m*(4+p*(4-3*m)),E=Math.atan2(x*g,P*O-d*x*c)-(1-C)*p*f*(T+C*x*(_+C*O*(2*_*_-1)));return"undefined"!=typeof L&&void 0!==L.LatLng&&t instanceof L.LatLng?L.latLng(s.deg(I),i+s.deg(E)):new SuperMap.LonLat(i+s.deg(E),s.deg(I))};var H=SuperMapAlgoPlot.Primitives=SuperMapAlgoPlot.Primitives||{};SuperMapAlgoPlot.Primitives={nSegmentCount:72,initialize:function(t){t&&t.nSegmentCount&&(this.nSegmentCount=t.nSegmentCount)},polyline:function(t){return t},parallelline:function(t){if(t&&t.length>=3){let e=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]);SuperMapAlgoPlot.PlottingUtil.isRight(t[0],t[1],t[2])&&(e=-e);let o=[];for(let e=1;e<t.length;e++)o.push(t[e].clone());let i=SuperMapAlgoPlot.PlottingUtil.parallel(o,e);return t[0].x=i[0].x,t[0].y=i[0].y,[o,i]}return[]},kidney:function(t,e){if(t){let o=[];return o=e?this.getKendyShapePts(t):t,SuperMapAlgoPlot.PlottingUtil.clearSamePts(o),o}},bezier:function(t,e){if(t){let o=[];return o=e?SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(t):t,SuperMapAlgoPlot.PlottingUtil.clearSamePts(o),o}},loopbezier:function(t,e){if(t){t[0].x===t[t.length-1].x&&t[0].y===t[t.length-1].y||t.push(t[0]);let o=[];return o=e?SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(t):t,SuperMapAlgoPlot.PlottingUtil.clearSamePts(o),o}},parallelogram:function(t){if(t&&t.length>=3){let e=t[0].x+(t[2].x-t[1].x),o=t[0].y+(t[2].y-t[1].y),i=new SuperMapAlgoPlot.Point(e,o),l=[];return l.push.apply(l,t),l.push(i),l.push(l[0]),l}},polygon:function(t){if(t&&t.length>2)return t},circle:function(t){if(t&&2===t.length){let e=t[0],o=t[1],i=[],l=Math.sqrt((o.x-e.x)*(o.x-e.x)+(o.y-e.y)*(o.y-e.y)),s=360/this.nSegmentCount;for(let t=0;t<this.nSegmentCount;t++){let o=(t*s+1)*Math.PI/180,n=new SuperMapAlgoPlot.Point(Math.cos(o)*l+e.x,Math.sin(o)*l+e.y);i[t]=n}return i}},rectangle:function(t){if(t&&2===t.length){let e=t[0],o=t[1],i=e.clone();return[i,new SuperMapAlgoPlot.Point(o.x,e.y),o.clone(),new SuperMapAlgoPlot.Point(e.x,o.y),i]}},sector:function(t){if(t&&t.length>=3){let e=this.getArcInfo(t[0],t[1],t[2]);e.dStartAngle*=Math.PI/180,e.dEndAngle*=Math.PI/180;let o=(e.dEndAngle-e.dStartAngle)/this.nSegmentCount,i=this.getArcSpatialData(e.pntCenter,e.dRadius,e.dRadius,0,e.dStartAngle,e.dEndAngle,o);if(i.push(e.pntCenter),0!==i.length)return i}},lune:function(t){if(t&&t.length>=3){let e=this.getArcInfo(t[0],t[1],t[2]);e.dStartAngle*=Math.PI/180,e.dEndAngle*=Math.PI/180;let o=(e.dEndAngle-e.dStartAngle)/this.nSegmentCount,i=this.getArcSpatialData(e.pntCenter,e.dRadius,e.dRadius,0,e.dStartAngle,e.dEndAngle,o);if(0!==i.length)return i}},arc:function(t){if(t&&t.length>=3){let e=this.getArcInfo(t[0],t[1],t[2]);e.dStartAngle*=Math.PI/180,e.dEndAngle*=Math.PI/180;let o=(e.dEndAngle-e.dStartAngle)/this.nSegmentCount,i=this.getArcSpatialData(e.pntCenter,e.dRadius,e.dRadius,0,e.dStartAngle,e.dEndAngle,o);if(0!==i.length)return i}},ellipse:function(t,e,o,i,l){if(!0===o){if((!i||null==i)&&t&&t.length>=3&&(i=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1])),(!l||null==l)&&t&&t.length>=3){let e=SuperMapAlgoPlot.PlottingUtil.projectPoint(t[2],t[0],t[1]);l=SuperMapAlgoPlot.PlottingUtil.distance(e,t[2])}}else l=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[2]),i=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]);if(e&&null!=e?e*=Math.PI/180:e=SuperMapAlgoPlot.PlottingUtil.radian(t[0],t[1]),t&&t.length>0){let s=0,n=2*Math.PI,a=n/this.nSegmentCount,r=this.getArcSpatialData(t[0],i,l,e,s,n,a);if(!0===o){let o=Math.sin(e),i=Math.cos(e);t[2].x>t[1].x?(t[2].x=t[0].x-l*o,t[2].y=t[0].y+l*i):(t[2].x=t[0].x+l*o,t[2].y=t[0].y-l*i)}return r}},getArcSpatialData:function(t,e,o,i,l,s,n){let a=[];if(Math.abs(n)<1e-9)return a;for(;s<l;)s+=2*Math.PI;for(;s>l+2*Math.PI;)l+=2*Math.PI;let r=Math.cos(i)*e,p=Math.sin(i)*e,u=Math.cos(i)*o,h=Math.sin(i)*o,g=this.calcEllipseRadian(l,e,o),c=this.calcEllipseRadian(s,e,o);c-g<1e-5&&(c+=2*Math.PI);let y=Math.round(Math.abs((c-g)/n)+1);if(y<2)return a;for(var P=0;P<y-1;g+=n,P++){P===y-2&&(g=s);let e=t.x+r*Math.cos(g)-h*Math.sin(g),o=t.y+p*Math.cos(g)+u*Math.sin(g);a.push(new SuperMapAlgoPlot.Point(e,o))}return 0>a.length&&(a[a.length-1].x=t.x+r*Math.cos(c)-h*Math.sin(c),a[a.length-1].y=t.y+p*Math.cos(c)+u*Math.sin(c)),a},getArcInfo:function(t,e,o){let i={};i.pntCenter=new SuperMapAlgoPlot.Point(0,0),i.dRadius=0,i.dStartAngle=0,i.dEndAngle=0;let l=e.x-t.x,s=e.y-t.y;if(Math.abs(l)<1e-9){let l={},s={};l.x=(e.x+t.x)/2,l.y=(e.y+t.y)/2,s.x=(e.x+o.x)/2,s.y=(e.y+o.y)/2;let n=0;Math.abs(o.x-e.x)>=1e-9&&(n=(o.y-e.y)/(o.x-e.x)),i.pntCenter.y=l.y,Math.abs(n)<1e-9?i.pntCenter.x=s.x:i.pntCenter.x=s.x-n*(l.y-s.y)}else{let n={},a={};n.x=(e.x+t.x)/2,n.y=(e.y+t.y)/2,a.x=(e.x+o.x)/2,a.y=(e.y+o.y)/2;let r=s/l,p=1;Math.abs(r)<1e-9?(i.pntCenter.x=n.x,Math.abs(o.x-e.x<1e-9)?i.pntCenter.y=a.y:i.pntCenter.y=-(o.x-e.x)/(o.y-e.y)*(i.pntCenter.x-a.x)+a.y):Math.abs(o.x-e.x)<1e-9?(i.pntCenter.y=a.y,i.pntCenter.x=-r*(i.pntCenter.y-n.y)+n.x):(p=(o.y-e.y)/(o.x-e.x),i.pntCenter.x=(r*p*(n.y-a.y)+p*n.x-r*a.x)/(p-r),i.pntCenter.y=(a.x-n.x+p*a.y-r*n.y)/(p-r))}let n=Math.atan2(t.y-i.pntCenter.y,t.x-i.pntCenter.x),a=Math.atan2(o.y-i.pntCenter.y,o.x-i.pntCenter.x);if(SuperMapAlgoPlot.PlottingUtil.isCounterClockwise(t,e,o)){for(;n>=2*Math.PI;)n-=2*Math.PI;for(;n<0;)n+=2*Math.PI;for(;a>2*Math.PI;)a-=2*Math.PI;for(;a<n;)a+=2*Math.PI}else{for(;a>=2*Math.PI;)a-=2*Math.PI;for(;a<0;)a+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;for(;a>n;)n+=2*Math.PI;let t=n;n=a,a=t}return i.dRadius=Math.sqrt((i.pntCenter.x-t.x)*(i.pntCenter.x-t.x)+(i.pntCenter.y-t.y)*(i.pntCenter.y-t.y)),i.dEndAngle=180*a/Math.PI,i.dStartAngle=180*n/Math.PI,i},calcEllipseRadian:function(t,e,o){let i=t,l=e*Math.sin(t),s=o*Math.cos(t),n=Math.atan2(l,s);if(t>Math.PI)for(;i>Math.PI;)i-=2*Math.PI,n+=2*Math.PI;else if(t<-Math.PI)for(;i<-Math.PI;)i+=2*Math.PI,n-=2*Math.PI;return n},getKendyShapePts:function(t){let e=[];if(2>(t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length)return e;let o=this.calcShapePoints(t);if(12!=o.length)return e;o.push(o[0]),o.push(o[1]),o.splice(0,1);for(let t=0;t<o.length-3;t+=3){let i=[];i=this.getBezierPtsWithScalePts(o[t],o[t+1],o[t+2],o[t+3]),e=e.concat(i)}return e},calcShapePoints:function(t){let e=[],o=[],i=t.length;if(0===i)return;if(1===i)return void e.push(t[0]);if(2==i){let e=this.calcProtudeC3(t[0],t[1]);o.push(t[0]),o.push(t[1]),o.push(e)}else if(o.push(t[0]),o.push(t[1]),o.push(t[2]),(SuperMapAlgoPlot.PlottingUtil.isSamePt(t[0],t[2])||SuperMapAlgoPlot.PlottingUtil.isSamePt(t[1],t[2]))&&(e.push(t[0]),e.push(t[1])),SuperMapAlgoPlot.PlottingUtil.isSamePt(t[0],t[1]))return e.push(t[0]),void e.push(t[2]);o=this.reNormalizeKidneyCtrlPoints(o);let l=new SuperMapAlgoPlot.Point(0,0),s=new SuperMapAlgoPlot.Point(0,0);l.x=.5*(o[0].x+o[1].x),l.y=.5*(o[0].y+o[1].y),s.x=l.x-.1*(o[2].x-l.x),s.y=l.y-.1*(o[2].y-l.y);let n=this.GetPtsByTriangle(3,0,o[1],o[0],s);e.push(n.pr),e.push(s),e.push(n.pl);let a=this.GetPtsByTriangle(4,2,o[2],o[0],o[1]);e.push(a.pr),e.push(o[1]),e.push(a.pl);let r=this.GetPtsByTriangle(2,0,o[0],o[1],o[2]);e.push(r.pr),e.push(o[2]),e.push(r.pl);let p=this.GetPtsByTriangle(4,1,o[1],o[2],o[0]);return e.push(p.pr),e.push(o[0]),e.push(p.pl),e},calcProtudeC3:function(t,e){let o=new SuperMapAlgoPlot.Point(0,0),i=0;return o.x=.5*(t.x+e.x),o.y=.5*(t.y+e.y),i=SuperMapAlgoPlot.PlottingUtil.distance(e,t)/2.7,this.GetPointsOfNormal(i,t,o).pt3},GetPointsOfNormal:function(t,e,o){let i=new SuperMapAlgoPlot.Point(0,0),l=new SuperMapAlgoPlot.Point(0,0),s=new SuperMapAlgoPlot.Point(0,0),n=0;return 0==(n=SuperMapAlgoPlot.PlottingUtil.distance(e,o))?(s.y=0,s.x=t):(s.x=t*(e.x-o.x)/n,s.y=t*(e.y-o.y)/n),i.x=-s.y+o.x,i.y=s.x+o.y,l.x=s.y+o.x,l.y=-s.x+o.y,{pt3:i,pt4:l}},reNormalizeKidneyCtrlPoints:function(t){let e=[];e.push(new SuperMapAlgoPlot.Point(0,0)),e.push(new SuperMapAlgoPlot.Point(0,0)),e.push(new SuperMapAlgoPlot.Point(0,0));let o=t.length;if(o<2)return e;if(2==o)e[0]=t[0],e[1]=t[1],e[2]=this.calcProtudeC3(t[0],t[1]);else{let o=t[0],i=t[1],l=t[2],s=0,n=0,a=0;if(s=SuperMapAlgoPlot.PlottingUtil.distance(i,o),n=SuperMapAlgoPlot.PlottingUtil.distance(l,i),a=SuperMapAlgoPlot.PlottingUtil.distance(o,l),n>=s&&n>=a){let t=o.clone();o=l.clone(),l=t.clone()}else if(a>=s&&a>=n){let t=l.clone();l=i.clone(),i=t.clone()}if(!SuperMapAlgoPlot.PlottingUtil.isRight(l,o,i)){let t=o.clone();o=i.clone(),i=t.clone()}e[0]=o,e[1]=i,e[2]=l}return e},GetPtsByTriangle:function(t,e,o,i,l){let s=new SuperMapAlgoPlot.Point(0,0),n=0,a=0;return n=SuperMapAlgoPlot.PlottingUtil.distance(l,o),a=SuperMapAlgoPlot.PlottingUtil.distance(i,l),1==e&&(n*=2),2==e&&(a*=2),s.x=(n*i.x+a*o.x)/(n+a),s.y=(n*i.y+a*o.y)/(n+a),{pl:this.GetWhichPtOfNormal(t,o,s,l),pr:this.GetWhichPtOfNormal(t,i,s,l)}},GetWhichPtOfNormal:function(t,e,o,i){let l,s=0,n=0;n=SuperMapAlgoPlot.PlottingUtil.distance(i,e)/t;let a=this.GetPointsOfNormal(n,o,i);return l=(s=SuperMapAlgoPlot.PlottingUtil.distance(e,a.pt4))>=(n=SuperMapAlgoPlot.PlottingUtil.distance(e,a.pt3))?a.pt3:a.pt4},getBezierPtsWithScalePts:function(t,e,o,i){let l=[],s=t.x,n=t.y,a=e.x,r=e.y,p=o.x,u=o.y,h=i.x,g=i.y;if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(s,a,1e-10)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(n,r,1e-10)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(p,h,1e-10)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(u,g,1e-10))l.push(new SuperMapAlgoPlot.Point(s,n)),l.push(new SuperMapAlgoPlot.Point(p,u));else for(let t=0;t<=1;t+=.03125){let e,o,i,c,y=t*t,P=y*t;e=1-3*t+3*y-P,o=3*(t-2*y+P),i=3*(y-P),c=P;let d=new SuperMapAlgoPlot.Point(e*s+o*a+i*p+c*h,e*n+o*r+i*u+c*g);l.push(d)}return l},getSpatialData:function(t,e,o,i){switch(null==i&&(i=!0),t){case 24:return this.polyline(e);case 390:return this.kidney(e,i);case 590:return this.bezier(e,i);case 360:return this.loopbezier(e,i);case 28:return this.parallelogram(e);case 32:return this.polygon(e);case 29:return this.circle(e);case 26:return this.rectangle(e);case 380:return this.sector(e);case 370:return this.lune(e);case 44:return this.arc(e);case 31:return this.ellipse(e,o,i);case 48:return this.parallelline(e);default:return e}}};var Z=SuperMapAlgoPlot.RouteNodePrimitives=SuperMapAlgoPlot.RouteNodePrimitives||{};SuperMapAlgoPlot.RouteNodePrimitives={initialize:function(){},rendezvousPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let o=new Object;return o.type=SuperMapAlgoPlot.SymbolType.TEXTSYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),o.textContent="会",o.style={surroundLineFlag:!1,fontSize:14,fontSizeLimit:!0},o.style.labelAlign="cm",t.push(o),t.push(e),t},expandingPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let o=new Object;return o.type=SuperMapAlgoPlot.SymbolType.TEXTSYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),o.textContent="展",o.style={surroundLineFlag:!1,fontSize:14,fontSizeLimit:!0},o.style.labelAlign="cm",t.push(o),t.push(e),t},volleyPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let o=new Object;return o.type=SuperMapAlgoPlot.SymbolType.TEXTSYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),o.textContent="齐",o.style={surroundLineFlag:!1,fontSize:14,fontSizeLimit:!0},o.style.labelAlign="cm",t.push(o),t.push(e),t},standbyPoint_Outer:function(t,e){let o=[],i=new SuperMapAlgoPlot.Point(0,0),l=new SuperMapAlgoPlot.Point(0,30);t||(t=90);let s=new Object;s.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,s.positionPoints=[];for(let e=t+10;e<170+t;e+=10){let t=SuperMapAlgoPlot.PlottingUtil.findPoint(i,l,30,e);s.positionPoints.push(t)}s.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},o.push(s);let n=s.positionPoints[s.positionPoints.length-1],a=s.positionPoints[s.positionPoints.length-2],r=SuperMapAlgoPlot.PlottingUtil.findPoint(n,a,9,22.5),p=SuperMapAlgoPlot.PlottingUtil.findPoint(n,a,9,-22.5),u=new Object;u.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,u.positionPoints=[],u.positionPoints.push(r),u.positionPoints.push(n.clone()),u.positionPoints.push(p),u.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},o.push(u);let h=new Object;h.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,h.positionPoints=[];for(let e=190+t;e<350+t;e+=10){let t=SuperMapAlgoPlot.PlottingUtil.findPoint(i,l,30,e);h.positionPoints.push(t)}h.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},o.push(h);let g=h.positionPoints[h.positionPoints.length-1],c=h.positionPoints[h.positionPoints.length-2],y=SuperMapAlgoPlot.PlottingUtil.findPoint(g,c,9,22.5),P=SuperMapAlgoPlot.PlottingUtil.findPoint(g,c,9,-22.5),d=new Object;d.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,d.positionPoints=[],d.positionPoints.push(y),d.positionPoints.push(g.clone()),d.positionPoints.push(P),d.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},o.push(d);for(let t=0;t<o.length;t++)for(let l=0;l<o[t].positionPoints.length;l++){let s=e*(Math.PI/180);SuperMapAlgoPlot.PlottingUtil.rotateAngle(i,s,o[t].positionPoints[l])}return o},standbyPoint_Inner:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(-20,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(20,10)),e.positionPoints.push(new SuperMapAlgoPlot.Point(20,-10)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e);let o=new Object;o.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(-5,0)),o.positionPoints.push(new SuperMapAlgoPlot.Point(17,0)),o.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(o);let i=new Object;return i.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,i.positionPoints=[],i.positionPoints.push(new SuperMapAlgoPlot.Point(-2,1.5)),i.positionPoints.push(new SuperMapAlgoPlot.Point(-5,0)),i.positionPoints.push(new SuperMapAlgoPlot.Point(-2,-1.5)),i.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(i),t},supplyPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let o=new Object;return o.type=SuperMapAlgoPlot.SymbolType.TEXTSYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),o.textContent="",o.style={surroundLineFlag:!1,fontSize:14,fontSizeLimit:!0},o.style.labelAlign="cm",t.push(o),t.push(e),t},takeoffPoint:function(){let t=[],e=new Object;return e.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(-15,25)),e.positionPoints.push(new SuperMapAlgoPlot.Point(15,25)),e.positionPoints.push(new SuperMapAlgoPlot.Point(15,-25)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,-35)),e.positionPoints.push(new SuperMapAlgoPlot.Point(-15,-25)),e.positionPoints.push(new SuperMapAlgoPlot.Point(-15,25)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t},initialPoint:function(){let t=[],e=new Object;return e.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(-30,30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(30,30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(30,-30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(-30,-30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t},visualInitalPoint:function(){let t=[],e=new Object;return e.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(30,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,-30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(-30,0)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t},lanchPoint:function(){let t=[],e=new Object;return e.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(20,-30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(-20,-30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t},turningPoint:function(){let t=[],e=new Object;return e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t},aimingPoint:function(){let t=[],e=new Object;return e.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,-30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(20,30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(-20,30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t},targetPoint:function(){let t=[],e=new Object;return e.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(30,-30)),e.positionPoints.push(new SuperMapAlgoPlot.Point(-30,-30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t},eightSpiralPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(30,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let o=new Object;return o.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(-30,0)),o.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),o.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t.push(o),t},happyValleyPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(-30,20)),e.positionPoints.push(new SuperMapAlgoPlot.Point(30,20)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let o=new Object;o.type=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(30,-20)),o.positionPoints.push(new SuperMapAlgoPlot.Point(-30,-20)),o.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let i=new Object;i.type=SuperMapAlgoPlot.SymbolType.ARCSYMBOL,i.positionPoints=[],i.positionPoints.push(new SuperMapAlgoPlot.Point(-30,20)),i.positionPoints.push(new SuperMapAlgoPlot.Point(-50,0)),i.positionPoints.push(new SuperMapAlgoPlot.Point(-30,-20)),i.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let l=new Object;return l.type=SuperMapAlgoPlot.SymbolType.ARCSYMBOL,l.positionPoints=[],l.positionPoints.push(new SuperMapAlgoPlot.Point(30,20)),l.positionPoints.push(new SuperMapAlgoPlot.Point(50,0)),l.positionPoints.push(new SuperMapAlgoPlot.Point(30,-20)),l.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(e),t.push(o),t.push(i),t.push(l),t},attackPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.style={surroundLineFlag:!1,fillLimit:!0,fill:!1};let o=new Object;return o.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(0,20)),o.positionPoints.push(new SuperMapAlgoPlot.Point(20,-20)),o.positionPoints.push(new SuperMapAlgoPlot.Point(-20,-20)),o.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(o),t.push(e),t},suppressPoint:function(){let t=[],e=new Object;e.type=SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,e.positionPoints=[],e.positionPoints.push(new SuperMapAlgoPlot.Point(0,0)),e.positionPoints.push(new SuperMapAlgoPlot.Point(0,30)),e.style={surroundLineFlag:!1,fontSize:14};let o=new Object;return o.type=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,o.positionPoints=[],o.positionPoints.push(new SuperMapAlgoPlot.Point(-15,15)),o.positionPoints.push(new SuperMapAlgoPlot.Point(15,15)),o.positionPoints.push(new SuperMapAlgoPlot.Point(15,-15)),o.positionPoints.push(new SuperMapAlgoPlot.Point(-15,-15)),o.style={surroundLineFlag:!1,fillLimit:!0,fill:!1},t.push(o),t.push(e),t},getRouteNodeCells:function(t,e,o){switch(t){case SuperMapAlgoPlot.RouteNodeType.RENDEZVOUS:return this.rendezvousPoint();case SuperMapAlgoPlot.RouteNodeType.EXPANDING:return this.expandingPoint();case SuperMapAlgoPlot.RouteNodeType.VOLLEY:return this.volleyPoint();case SuperMapAlgoPlot.RouteNodeType.STANDBY:return e?this.standbyPoint_Inner():this.standbyPoint_Outer(null,o);case SuperMapAlgoPlot.RouteNodeType.SUPPLY:return this.supplyPoint();case SuperMapAlgoPlot.RouteNodeType.TAKEOFF:return this.takeoffPoint();case SuperMapAlgoPlot.RouteNodeType.INITIAL:return this.initialPoint();case SuperMapAlgoPlot.RouteNodeType.VISUALINITAL:return this.visualInitalPoint();case SuperMapAlgoPlot.RouteNodeType.LANCH:case SuperMapAlgoPlot.RouteNodeType.WEAPONLAUNCH:return this.lanchPoint();case SuperMapAlgoPlot.RouteNodeType.TURNING:case SuperMapAlgoPlot.RouteNodeType.COMMONROUTE:return this.turningPoint();case SuperMapAlgoPlot.RouteNodeType.AIMING:return this.aimingPoint();case SuperMapAlgoPlot.RouteNodeType.TARGET:return this.targetPoint();case SuperMapAlgoPlot.RouteNodeType.ATTACK:return this.attackPoint();case SuperMapAlgoPlot.RouteNodeType.SUPPRESS:return this.suppressPoint();case SuperMapAlgoPlot.RouteNodeType.EIGHTSPIRAL:return this.eightSpiralPoint();case SuperMapAlgoPlot.RouteNodeType.HAPPYVALLEY:return this.happyValleyPoint();default:return[]}},getRouteNodeNameByType:function(t){switch(t){case SuperMapAlgoPlot.RouteNodeType.RENDEZVOUS:return"会合点";case SuperMapAlgoPlot.RouteNodeType.EXPANDING:return"展开点";case SuperMapAlgoPlot.RouteNodeType.VOLLEY:return"齐射点";case SuperMapAlgoPlot.RouteNodeType.STANDBY:return"待机点";case SuperMapAlgoPlot.RouteNodeType.SUPPLY:return"补给点";case SuperMapAlgoPlot.RouteNodeType.TAKEOFF:return"起飞点";case SuperMapAlgoPlot.RouteNodeType.INITIAL:return"初始点";case SuperMapAlgoPlot.RouteNodeType.VISUALINITAL:return"可视化初始点";case SuperMapAlgoPlot.RouteNodeType.LANCH:return"发射点";case SuperMapAlgoPlot.RouteNodeType.WEAPONLAUNCH:return"武器发射点";case SuperMapAlgoPlot.RouteNodeType.TURNING:return"转弯点";case SuperMapAlgoPlot.RouteNodeType.COMMONROUTE:return"普通航路点";case SuperMapAlgoPlot.RouteNodeType.AIMING:return"目标瞄准点";case SuperMapAlgoPlot.RouteNodeType.TARGET:return"目标点";case SuperMapAlgoPlot.RouteNodeType.ATTACK:return"攻击点";case SuperMapAlgoPlot.RouteNodeType.SUPPRESS:return"压制点";case SuperMapAlgoPlot.RouteNodeType.EIGHTSPIRAL:return"八字盘旋点";case SuperMapAlgoPlot.RouteNodeType.HAPPYVALLEY:return"跑马圈点";default:return""}}};var J=SuperMapAlgoPlot.AddPoint_WayType={UNKNOWN:0,POLYLINE:1,CURVE:2};SuperMapAlgoPlot.Path2D=class{constructor(){this.m_pData=null,this.CLASS_NAME="SuperMapAlgoPlot.Path2D"}MoveTo(t){this.ensureData(),this.detach();var e=this.getDataPtr();if(e.require_StartNewFigure=!1,0==e.elements[e.elements.length-1].GetType())e.elements[e.elements.length-1].SetPosition(t.x,t.y);else{var o=new SuperMapAlgoPlot.Element(t.x,t.y,0);e.elements.push(o)}e.cStart=e.elements.length-1}LineTo(t){this.ensureData(),this.detach();var e=this.getDataPtr();if(e.MaybeStartNewFigure(),e.elements[e.elements.length-1].GetX()!=t.x||e.elements[e.elements.length-1].GetY()!=t.y){var o=new SuperMapAlgoPlot.Element(t.x,t.y,1);e.elements.push(o)}}CurveTo(t,e,o){this.ensureData(),this.detach();var i=this.getDataPtr();if(i.elements[i.elements.length-1].GetX()!=t.x||i.elements[i.elements.length-1].GetY()!=t.y||t.x!=e.x||t.y!=e.y||e.x!=o.x||e.y!=o.y){i.MaybeStartNewFigure();var l=new SuperMapAlgoPlot.Element(t.x,t.y,2),s=new SuperMapAlgoPlot.Element(e.x,e.y,3),n=new SuperMapAlgoPlot.Element(o.x,o.y,3);i.elements.push(l),i.elements.push(s),i.elements.push(n)}}CubicTo(t,e,o){this.ensureData(),this.detach();var i=this.getDataPtr();if(i.elements[i.elements.length-1].GetX()!=t.x||i.elements[i.elements.length-1].GetY()!=t.y||t.x!=e.x||t.y!=e.y||e.x!=o.x||e.y!=o.y){i.MaybeStartNewFigure();var l=new SuperMapAlgoPlot.Element(t.x,t.y,2),s=new SuperMapAlgoPlot.Element(e.x,e.y,3),n=new SuperMapAlgoPlot.Element(o.x,o.y,3);i.elements.push(l),i.elements.push(s),i.elements.push(n)}}ToSubPathPolygons(t){var e,o,i=this.getDataPtr();if(this.IsEmpty())return!1;var l=[],s=this.GetElementCount();for(let M=0;M<s;M++){var n=i.elements[M];switch(n.GetType()){case 0:l.length>1&&t.push(l),l=[],e=n.GetX(),o=n.GetY(),l.push(new SuperMapAlgoPlot.Point(e,o));break;case 1:e=n.GetX(),o=n.GetY(),l.push(new SuperMapAlgoPlot.Point(e,o));break;case 2:if(3!=i.elements[M+1].GetType()||3!=i.elements[M+1].GetType())break;var a=i.elements[M-1].GetX(),r=i.elements[M-1].GetY(),p=n.GetX(),u=n.GetY(),h=i.elements[M+1].GetX(),g=i.elements[M+1].GetY(),c=i.elements[M+2].GetX(),y=i.elements[M+2].GetY();for(let t=0;t<=1;t+=.03125){var P=t*t,d=P*t,S=1-3*t+3*P-d,f=3*(t-2*P+d),m=3*(P-d),L=d;l.push(new SuperMapAlgoPlot.Point(S*a+f*p+m*h+L*c,S*r+f*u+m*g+L*y))}M+=2}}return l.length>1&&t.push(l),!0}ensureData(){null==this.m_pData&&this.ensureData_helper()}ensureData_helper(){var t=new SuperMapAlgoPlot.Path2DData,e=new SuperMapAlgoPlot.Element(0,0,0);t.elements.push(e),null==this.m_pData||this.mtDeRef(this.m_pData.ref)||(this.m_pData=null),this.m_pData=t}detach(){1!=this.m_pData.ref&&this.detach_helper(),this.setBoundsDirty(!0)}detach_helper(){var t=new SuperMapAlgoPlot.Path2DData;null==this.m_pData||this.mtDeRef(this.m_pData.ref)||(this.m_pData=null),this.m_pData=t}setBoundsDirty(t){this.getDataPtr().isBoundsDirty=t}getDataPtr(){return this.m_pData}IsEmpty(){if(null==this.m_pData)return!0;var t=this.m_pData.elements.length;return 0==t||1==t&&0==this.m_pData.elements[0].GetType()}GetElementCount(){return null!=this.m_pData?this.m_pData.elements.length:0}static mtRef(t){return 0!=++t}static mtDeRef(t){return 0!=--t}};SuperMapAlgoPlot.Element=class{constructor(t,e,o){this.m_x=t,this.m_y=e,this.m_type=o,this.CLASS_NAME="SuperMapAlgoPlot.Element"}GetX(){return this.m_x}GetY(){return this.m_y}GetType(){return this.m_type}GetPosition(){return SuperMapAlgoPlot.Point(this.m_x,this.m_y)}SetPosition(t,e){this.m_x=t,this.m_y=e}SetType(t){this.m_type=t}IsCurveTo(){return 2==this.m_type}IsLineTo(){return 1==this.m_type}IsMoveTo(){return 0==this.m_type}Equal(t){return SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.m_x,t.m_x,1e-10)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.m_y,t.m_y,1e-10)&&this.m_type==t.m_type}clone(){return new SuperMapAlgoPlot.Path2D.Element(this.m_x,this.m_y,this.m_type)}};SuperMapAlgoPlot.Path2DData=class{constructor(t){if(t){this.cStart=t.cStart,this.fillRule=t.fillRule,this.require_StartNewFigure=t.require_StartNewFigure,this.isBoundsDirty=t.isBoundsDirty,this.bounds=new SuperMap.Bounds(t.bounds.left,t.bounds.bottom,t.bounds.right,t.bounds.top),this.ref=1,this.elements=[];for(let e=0;e<t.elements.length;e++)this.elements.push(t.elements[e].clone())}else this.ref=1,this.bounds=new SuperMap.Bounds(0,0,0,0),this.elements=[];this.CLASS_NAME="SuperMapAlgoPlot.Path2DData"}IsClosed(){var t=this.elements[this.cStart],e=this.elements[this.elements.length-1];return t.GetX()==e.GetX()&&t.GetY()==e.GetY()}Close(){this.require_StartNewFigure=!0;var t=this.elements[this.cStart],e=this.elements[this.elements.length-1];t!=e&&(t.Equal(e)?e.SetPosition(t.GetX(),t.GetY()):this.elements.push(new SuperMapAlgoPlot.Element(t.GetX(),t.GetY(),SuperMapAlgoPlot.ElementType.LineToElement)))}MaybeStartNewFigure(){if(this.require_StartNewFigure){var t=this.elements[this.elements.length-1].clone();t.SetType(0),this.elements.push(t),this.require_StartNewFigure=!1}}};SuperMapAlgoPlot.ArrowToolkit=SuperMapAlgoPlot.ArrowToolkit||{};SuperMapAlgoPlot.ArrowToolkit.ConstValue={MAX_ARRAY_SIZE:128,sv_AtScaleParameter:1.5,sv_AtLenDivAtWidth:1.35,sv_AtWidthDivAwWidth:.5,DUOJIANTOU_TAIL_RATE_1:8,DUOJIANTOU_TAIL_RATE_2:3,DUOJIANTOU_TAIL_RATE_3:.6},SuperMapAlgoPlot.ArrowToolkit.ArrowTailType={ARROWTAIL_NONE:0,ARROWTAIL_LINE:1,ARROWTAIL_CURVE:2,ARROWTAIL_COATTAIL:3,ARROWTAIL_COATTAIL_POLYBODY:4},SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType={ARROWHEAD_POLYLINE:0,ARROWHEAD_TRIANGLE:1,ARROWHEAD_COATTAIL:2,ARROWHEAD_TRIANGLE_SOLID:3,ARROWHEAD_COATTAIL_HOLLOW:6,ARROWHEAD_WITH_EAR:4,ARROWHEAD_WITHOUT_EAR:5},SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType={ARROWBODY_POLYLINE:0,ARROWBODY_POLYBEZIER:1,ARROWBODY_COATTAIL:5,ARROWBODY_PARALLEL:2,ARROWBODY_TRAPEZOID:3,ARROWBODY_MULTIPOLYBEZIER:4},SuperMapAlgoPlot.ArrowToolkit.parallel=function(t,e){var o={leftParallelPts:[],rightParallelPts:[]};return 1===t.length||2===t.length&&t[0].x===t[1].x&&t[0].y===t[1].y?o:(o.leftParallelPts=SuperMapAlgoPlot.PlottingUtil.parallel(t,e),o.rightParallelPts=SuperMapAlgoPlot.PlottingUtil.parallel(t,-e),o)},SuperMapAlgoPlot.ArrowToolkit.trapezoid=function(t,e,o){var i={leftParallelPts:[],rightParallelPts:[]};if(1===t.length||2===t.length&&t[0].x===t[1].x&&t[0].y===t[1].y)return i;for(let s=0;s<t.length-1;s++){t[s].x===t[s+1].x&&t[s].y===t[s+1].y&&(i.leftParallelPts.push(i.leftParallelPts[i.leftParallelPts.length-1]),i.rightParallelPts.push(i.rightParallelPts[i.rightParallelPts.length-1]));var l=t[s+1];l=SuperMapAlgoPlot.PlottingUtil.rotate(t[s],0,1,l),i.leftParallelPts.push(SuperMapAlgoPlot.PlottingUtil.findPointInLine(t[s],l,e)),l=t[s],l=SuperMapAlgoPlot.PlottingUtil.rotate(t[s+1],0,-1,l),i.leftParallelPts.push(SuperMapAlgoPlot.PlottingUtil.findPointInLine(t[s+1],l,o)),l=t[s+1],l=SuperMapAlgoPlot.PlottingUtil.rotate(t[s],0,-1,l),i.rightParallelPts.push(SuperMapAlgoPlot.PlottingUtil.findPointInLine(t[s],l,e)),l=t[s],l=SuperMapAlgoPlot.PlottingUtil.rotate(t[s+1],0,1,l),i.rightParallelPts.push(SuperMapAlgoPlot.PlottingUtil.findPointInLine(t[s+1],l,o))}return i},SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts=function(t,e,o){var i={};switch(o){case SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_PARALLEL:case SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_TRAPEZOID:var l=e[0],s=e[1],n=e[2],a=SuperMapAlgoPlot.PlottingUtil.equalFuzzy(n,0);if(!a&&t.length>2){var r=t.length;t.splice(2,r-2)}var p=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t);i.arrowTouLen=p*l;var u=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(t,p-i.arrowTouLen).pt,h=[],g=i.arrowTouLen*n,c=i.arrowTouLen*s,y=t.length-1;for(let e=0;e<y;e++)h.push(t[e]);h.push(u);var P={leftParallelPts:[],rightParallelPts:[]};P=!0===a?SuperMapAlgoPlot.ArrowToolkit.parallel(h,c):SuperMapAlgoPlot.ArrowToolkit.trapezoid(h,g,c);var d=t[t.length-1];t[t.length-1]=u,t.push(d);i.leftBodyPts=P.leftParallelPts,i.rightBodyPts=P.rightParallelPts,i.OpectrlPoints=null;break;case SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_MULTIPOLYBEZIER:{var S=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t);if(0==S)return;let o=SuperMapAlgoPlot.ArrowToolkit.OperateCtrlPts(t);var f=o.length;f--;var m=SuperMapAlgoPlot.ArrowToolkit.generateMultiBezier(o,f,e,S);t=[];for(let e=0;e<o.length;e++)t.push(o[e]);i.arrowTouLen=m.arrowTouLen,i.leftBodyPts=m.leftBodyPts,i.rightBodyPts=m.rightBodyPts,i.OpectrlPoints=o}}return i},SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts=function(t,e,o,i,l){var s=[];switch(l){case SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITH_EAR:case SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITHOUT_EAR:var n=o[0],a=o[1],r=0,p=0;3==o.length&&(r=o[2]),4==o.length&&(r=o[2],p=o[3]);var u=0;if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(r,0)&&!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(p,0)){var h=SuperMapAlgoPlot.PlottingUtil.clonePoints(t);h.splice(h.length-1,1),u=SuperMapAlgoPlot.PlottingUtil.polylineDistance(h)*r*p}var g=new SuperMapAlgoPlot.Point((e[0].x+e[1].x)/2,(e[0].y+e[1].y)/2);if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(a,0)){var c=i*n,y=t[t.length-1];return y=SuperMapAlgoPlot.PlottingUtil.rotate(g,0,1,y),s.push(SuperMapAlgoPlot.PlottingUtil.findPointInLine(g,y,c)),s.push(t[t.length-1]),y=t[t.length-1],y=SuperMapAlgoPlot.PlottingUtil.rotate(g,0,-1,y),s.push(SuperMapAlgoPlot.PlottingUtil.findPointInLine(g,y,c)),s}var P=i*a,d=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(P,g,t[t.length-1]);P=i*n,P+=u;var S=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(P,t[t.length-1],d),f=S.pntLeft,m=S.pntRight,L=t[t.length-1];return s.push(m),s.push(L),s.push(f),s}},SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine=function(t,e,o,i){var l=[];if(2>t.length)return l;var s,n=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t),a=SuperMapAlgoPlot.PlottingUtil.equalFuzzy(e,0);switch(o){case SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_POLYLINE:l=l.concat(t),i&&!a&&SuperMapAlgoPlot.PlottingUtil.distance(t[t.length-1],t[t.length-2])>e&&(s=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(t,n-e),l.splice(l.length-1,1),l.push(s.pt));break;case SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_POLYBEZIER:if(2==t.length)l=l.concat(t),i&&!a&&SuperMapAlgoPlot.PlottingUtil.distance(t[t.length-1],t[t.length-2])>e&&(s=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(t,n-e),l.splice(l.length-1,1),l.push(s.pt));else{var r=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(t);if(a)l=l.concat(r);else{var p=r[r.length-1];if(!a&&(e<SuperMapAlgoPlot.PlottingUtil.distance(t[t.length-1],t[t.length-2])||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(SuperMapAlgoPlot.PlottingUtil.distance(t[t.length-1],t[t.length-2]),e,1e-7))){for(var u=r.length-1;u>1;u--){if(!(e>SuperMapAlgoPlot.PlottingUtil.distance(p,r[u]))){var h=SuperMapAlgoPlot.PlottingUtil.findPoint(p,r[u],e,0);r.push(h),l=r;break}r.splice(u,1)}i||l.push(p)}else l=l.concat(r)}}break;case SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_COATTAIL:var g=e;if(g>n)return l;var c,y,P=Math.ceil(n/(1.4*g)),d=0,S=[];for(let e=0;e<P;e++)c=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(g*d,t),y=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(g*(d+1),t),c.bfind&&y.bfind&&(S.push(c.pts),S.push(y.pts)),d=1.4*(e+1);l=S}return l},SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePtsBySingleLine=function(t,e,o){var i=[];if(2>t.length)return i;switch(o){case SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_POLYLINE:{let o=t[0],l=t[1],s=SuperMapAlgoPlot.PlottingUtil.distance(o,l);if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(s,e,1e-7)||s>e){let s=SuperMapAlgoPlot.PlottingUtil.findPoint(o,l,e,0),n=e*Math.tan(.125*Math.PI),a=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(n,t[0],s);i.push(a.pntLeft),i.push(t[0]),i.push(a.pntRight)}break}case SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_TRIANGLE:break;case SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_TRIANGLE_SOLID:{let o=t[0],l=t[1],s=SuperMapAlgoPlot.PlottingUtil.distance(o,l);if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(s,e,1e-7)||s>e){let s=e*Math.tan(.125*Math.PI),n=SuperMapAlgoPlot.PlottingUtil.findPoint(o,l,e,0),a=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(s,t[0],n);i.push(a.pntLeft),i.push(o),i.push(a.pntRight),i.push(a.pntLeft)}break}case SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_COATTAIL:{let o=t[0],l=2*Math.sqrt(e*e/3),s=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]);if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l/2,s,1e-7)||s>l/2){let e=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],l,20),s=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],l,-20),n=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],l/2,0);i.push(o),i.push(e),i.push(n),i.push(s),i.push(o)}break}case SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_COATTAIL_HOLLOW:{var l=[];let o=t[0],h=2*Math.sqrt(e*e/3),g=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]);if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(h/1.4,g,1e-7)||g>h/1.4){let e=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],h,20),g=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],h,-20),c=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],h/1.4,0);l.push(o),l.push(e),l.push(c),l.push(g),l.push(o);var s=new SuperMapAlgoPlot.Point((l[0].x+l[1].x)/2,(l[0].y+l[1].y)/2),n=new SuperMapAlgoPlot.Point((l[3].x+l[4].x)/2,(l[3].y+l[4].y)/2),a=new SuperMapAlgoPlot.Point((s.x+n.x)/2,(s.y+n.y)/2),r=.75*SuperMapAlgoPlot.PlottingUtil.distance(s,n)/2,p=SuperMapAlgoPlot.PlottingUtil.findPointInLine(a,s,r),u=SuperMapAlgoPlot.PlottingUtil.findPointInLine(a,n,r);i.push(l[0]),i.push(p),i.push(l[1]),i.push(l[2]),i.push(l[3]),i.push(u),i.push(l[4])}break}}return i},SuperMapAlgoPlot.ArrowToolkit.generateArrowTailShapePts=function(t,e,o,i){var l=e.length,s=[],n=0;for(let e=0;e<t.length-1;e++)n+=SuperMapAlgoPlot.PlottingUtil.distance(t[e],t[e+1]);var a=n*o;switch(i){case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_NONE:break;case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_LINE:var r=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],a,90),p=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],a,-90);s.push(r),s.push(p);break;case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_CURVE:{let i=new SuperMapAlgoPlot.Point(.5*(e[0].x+e[l-1].x),.5*(e[0].y+e[l-1].y)),s=SuperMapAlgoPlot.PlottingUtil.distance(e[0],e[l-1]);var u=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(s*o,i,t[t.length-1]),h=new SuperMapAlgoPlot.Point(0,0),g=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(SuperMapAlgoPlot.ArrowToolkit.ConstValue.DUOJIANTOU_TAIL_RATE_1,SuperMapAlgoPlot.ArrowToolkit.ConstValue.DUOJIANTOU_TAIL_RATE_2,e[0],u,e[l-1],h,g);var c=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(SuperMapAlgoPlot.ArrowToolkit.ConstValue.DUOJIANTOU_TAIL_RATE_3,e[0],u,h,c);var y=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(SuperMapAlgoPlot.ArrowToolkit.ConstValue.DUOJIANTOU_TAIL_RATE_3,e[l-1],u,g,y)}break;case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_COATTAIL:var P=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],a,157.5),d=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],a,-157.5);s.push(P),s.push(t[0]),s.push(d);break;case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_COATTAIL_POLYBODY:{let t=new SuperMapAlgoPlot.Point(.5*(e[0].x+e[l-1].x),.5*(e[0].y+e[l-1].y)),i=SuperMapAlgoPlot.PlottingUtil.distance(e[0],e[l-1]);var S=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(i*o,e[0],t);s.push(e[l-1]),s.push(S.pntLeft),s.push(e[0])}}return s},SuperMapAlgoPlot.ArrowToolkit.generateArrowTailShapePtsBySingleLine=function(t,e,o){var i=[];switch(o){case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_NONE:break;case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_LINE:var l=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],e,90),s=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],e,-90);i.push(l),i.push(s);break;case SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_COATTAIL:var n=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],e,157.5),a=SuperMapAlgoPlot.PlottingUtil.findPoint(t[0],t[1],e,-157.5);i.push(n),i.push(t[0]),i.push(a)}return i},SuperMapAlgoPlot.ArrowToolkit.OperateCtrlPts=function(t){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t);if(3==e.length){var o=((e[0].x+e[1].x)/2+e[2].x)/2,i=((e[0].y+e[1].y)/2+e[2].y)/2,l=new SuperMapAlgoPlot.Point(o,i),s=e[2].clone();e[2]=l,e.push(s)}return e},SuperMapAlgoPlot.ArrowToolkit.generateMultiBezier=function(t,e,o,i){var l=0,s=[],n=[],a=[],r=[],p=[],u=[],h=o[0],g=o[1],c=(t[0].x+t[1].x)/2,y=(t[0].y+t[1].y)/2,P=Math.abs(c-t[2].x),d=Math.abs(y-t[2].y),S=0;if(P>0&&d>0){var f=1/(c-t[2].x),m=-1/(y-t[2].y),L=1*t[2].y/(y-t[2].y)-1*t[2].x/(c-t[2].x);S=Math.abs(f*t[0].x+m*t[0].y+L)/Math.sqrt(f*f+m*m)}else d<=1e-4?S=Math.abs(y-t[1].y):P<=1e-4&&(S=Math.abs(c-t[1].x));var M=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(S,t[2],new SuperMapAlgoPlot.Point(c,y)),b=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(t[1],t[2],t[0]);b?(s[1]=t[1],n[1]=t[0]):(s[1]=t[0],n[1]=t[1]),t[1]=new SuperMapAlgoPlot.Point((t[0].x+t[1].x)/2,(t[0].y+t[1].y)/2);var A=Math.sqrt((M.pntLeft.x-M.pntRight.x)*(M.pntLeft.x-M.pntRight.x)+(M.pntLeft.y-M.pntRight.y)*(M.pntLeft.y-M.pntRight.y))*SuperMapAlgoPlot.ArrowToolkit.ConstValue.sv_AtWidthDivAwWidth,T=(l=A*SuperMapAlgoPlot.ArrowToolkit.ConstValue.sv_AtLenDivAtWidth)*g;SuperMapAlgoPlot.PlottingUtil.equalFuzzy(h,0)||(T=(l=i*h)*g);var v,_,x=SuperMapAlgoPlot.PlottingUtil.distance(t[e],t[e-1]),O=2*l;x<O&&(T=(l=x/2)*g),t.push(t[e]),v=0,_=0;var w=0,I=[];for(w=2;w<=e;w++)v+=SuperMapAlgoPlot.PlottingUtil.distance(t[w],t[w-1]);for(v-=l,w=2;w<=e-1;w++)_+=SuperMapAlgoPlot.PlottingUtil.distance(t[w],t[w-1]),I[w]=T+(A-T)*Math.pow((v-_)/v,SuperMapAlgoPlot.ArrowToolkit.ConstValue.sv_AtScaleParameter);I[e]=T;var C,E,D=new SuperMapAlgoPlot.Point(0,0),U=new SuperMapAlgoPlot.Point(0,0),N=new SuperMapAlgoPlot.Point(0,0);for(w=2;w<=e-1;w++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,t[w-1],t[w],t[w+1],U,N),w==e-1&&SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,t[e],t[e-1],N,D),C=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I[w],U,t[w]),(b=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(N,U,C.pntRight))?(s[w]=new SuperMapAlgoPlot.Point(C.pntRight.x,C.pntRight.y),n[w]=new SuperMapAlgoPlot.Point(C.pntLeft.x,C.pntLeft.y)):(s[w]=new SuperMapAlgoPlot.Point(C.pntLeft.x,C.pntLeft.y),n[w]=new SuperMapAlgoPlot.Point(C.pntRight.x,C.pntRight.y));for(Math.sqrt(1*(t[e].x-D.x)*(t[e].x-D.x)+1*(t[e].y-D.y)*(t[e].y-D.y))>0&&(t[e]=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(l,t[e],D)),C=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(T,t[e+1],t[e]),(b=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(t[e],t[e+1],C.pntLeft))?(n[e]=new SuperMapAlgoPlot.Point(C.pntLeft.x,C.pntLeft.y),s[e]=new SuperMapAlgoPlot.Point(C.pntRight.x,C.pntRight.y)):(n[e]=new SuperMapAlgoPlot.Point(C.pntRight.x,C.pntRight.y),s[e]=new SuperMapAlgoPlot.Point(C.pntLeft.x,C.pntLeft.y)),w=2;w<e;w++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,s[w-1],s[w],s[w+1],U,N),a[w]=new SuperMapAlgoPlot.Point(U.x,U.y),r[w]=new SuperMapAlgoPlot.Point(N.x,N.y),SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,n[w-1],n[w],n[w+1],U,N),p[w]=new SuperMapAlgoPlot.Point(U.x,U.y),u[w]=new SuperMapAlgoPlot.Point(N.x,N.y),2==w&&(SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,s[1],s[2],a[2],D),r[1]=new SuperMapAlgoPlot.Point(D.x,D.y),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,n[1],n[2],p[2],D),u[1]=new SuperMapAlgoPlot.Point(D.x,D.y)),w==e-1&&(O=(x=SuperMapAlgoPlot.PlottingUtil.distance(s[e],s[e-1]))/3,(E=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(O,t[e],t[e+1])).x+=s[e].x-t[e].x,E.y+=s[e].y-t[e].y,O=(x=A-T)*Math.pow(O/v,SuperMapAlgoPlot.ArrowToolkit.ConstValue.sv_AtScaleParameter),C=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(O,s[e],E),a[e]=new SuperMapAlgoPlot.Point(C.pntLeft.x,C.pntLeft.y),O=(x=SuperMapAlgoPlot.PlottingUtil.distance(n[e],n[e-1]))/3,(E=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(O,t[e],t[e+1])).x+=n[e].x-t[e].x,E.y+=n[e].y-t[e].y,O=(x=A-T)*Math.pow(O/v,SuperMapAlgoPlot.ArrowToolkit.ConstValue.sv_AtScaleParameter),C=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(O,n[e],E),p[e]=new SuperMapAlgoPlot.Point(C.pntRight.x,C.pntRight.y));return{arrowTouLen:l,leftBodyPts:SuperMapAlgoPlot.ArrowToolkit.genArrowBody(e,s,a,r),rightBodyPts:SuperMapAlgoPlot.ArrowToolkit.genArrowBody(e,n,p,u)}},SuperMapAlgoPlot.ArrowToolkit.genArrowBody=function(t,e,o,i){var l=new SuperMapAlgoPlot.Path2D;if(!(t<2)){l.MoveTo(e[1]);for(let s=1;s<=t-1;s++)l.CubicTo(i[s],o[s+1],e[s+1]);var s=[];return l.ToSubPathPolygons(s),s[0]}};SuperMapAlgoPlot.AlgoSymbol=class{addScalePoint(t,e){if(null!=t){void 0!==e&&null!==e||(e=this.scalePoints.length);var o=new SuperMapAlgoPlot.Point(t.x,t.y);o.isScalePoint=!0,o.tag=e,this.scalePoints.push(o)}}setOptions(t){if(t)for(let e in this)t[e]&&(this[e]=t[e])}getAlgorithmResult(t){t.components=this.components,t.scalePoints=this.scalePoints,t.scaleValues=this.scaleValues}constructor(t){t=t||{},this.style=null,this.libID=t.libID?t.libID:0,this.code=t.code?t.code:0,this.maxEditPts=t.maxEditPts?t.maxEditPts:SuperMapAlgoPlot.AlgoSymbolFactory.getMaxEditPts(t.libID,t.code),this.minEditPts=t.minEditPts?t.minEditPts:SuperMapAlgoPlot.AlgoSymbolFactory.getMinEditPts(t.libID,t.code),this.isEdit=!!t.isEdit&&t.isEdit,this.controlPoints=t.controlPoints?t.controlPoints:[],this.scalePoints=t.scalePoints?t.scalePoints:[],this.scaleValues=t.scaleValues?t.scaleValues:[],this.subSymbols=t.subSymbols?t.subSymbols:SuperMapAlgoPlot.AlgoSymbolFactory.getDefaultSubSymbols(t.libID,t.code),this.polylineConnectLocationPoint=!!t.polylineConnectLocationPoint&&t.polylineConnectLocationPoint,this.style=t.style?t.style:SuperMapAlgoPlot.PlottingUtil.copyAttributes(this.style,SuperMapAlgoPlot.AlgoSymbolFactory.getDefaultStyle(t.libID,t.code)),this.textContent=t.textContent?t.textContent:"",this.map=t.map?t.map:null,this.scene=t.scene?t.scene:null,this.subSymbolDefaultPixelSize=t.subSymbolDefaultPixelSize?t.subSymbolDefaultPixelSize:30,this.components=[],this.symbolType=0===this.libID?this.code:2}destroy(){this.minEditPts=null,this.maxEditPts=null,this.controlPoints.length=0,this.controlPoints=null,this.scalePoints.length=0,this.scalePoints=null,this.scaleValues.length=0,this.scaleValues=null,this.subSymbols.length=0,this.subSymbols=null,this.subSymbolSize=0,this.components=null,this.style=null}init(){if(this.components.length=0,this.scalePoints.length=0,this.controlPoints.length>=2&&this.controlPoints.length<this.minEditPts&&this.calAssistantLine(),this.maxEditPts<this.controlPoints.length&&this.symbolType!==SuperMapAlgoPlot.SymbolType.ELLIPSESYMBOL){var t=this.controlPoints.shift(),e=this.controlPoints.pop();this.controlPoints=[],this.controlPoints.push(t,e)}}finish(){}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(this.controlPoints);if(t=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),this.controlPoints.length>=this.minEditPts){var e={textContent:this.textContent,type:this.symbolType,surroundLineFlag:!1,positionPoints:t,style:{}};if(e.type===SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL&&e.positionPoints.push(e.positionPoints[0]),this.symbolType===SuperMapAlgoPlot.SymbolType.PARALLELLINE){if(this.controlPoints&&this.controlPoints.length>=3){var o=!1;void 0!==this.controlPoints[0].z&&(o=!0);var i=SuperMapAlgoPlot.PlottingUtil.distance(this.controlPoints[0],this.controlPoints[1]);SuperMapAlgoPlot.PlottingUtil.isRight(this.controlPoints[0],this.controlPoints[1],this.controlPoints[2])&&(i=-i);var l=[];for(let t=1;t<this.controlPoints.length;t++)l.push(this.controlPoints[t].clone());var s=SuperMapAlgoPlot.PlottingUtil.parallel(l,i);if(this.controlPoints[0].x=s[0].x,this.controlPoints[0].y=s[0].y,o)for(let t=0;t<l.length;t++)s[t].z=l[t].z;this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,l),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,s)}}else this.components.push(e)}}modifyPoint(t,e){this.computeScaleValues(t,e),this.calculateParts()}computeScaleValues(){}getLonLatDistanceFromPixel(t){if(null===this.map)return 0;var e,o;if(this.map&&"undefined"!=typeof L&&void 0!==L.Map&&this.map instanceof L.Map){var i=this.map.layerPointToLatLng(L.point(0,0)),l=this.map.layerPointToLatLng(L.point(t,0));e=new SuperMapAlgoPlot.Point(i.lng,i.lat),o=new SuperMapAlgoPlot.Point(l.lng,l.lat)}else this.map&&"undefined"!=typeof SuperMap&&void 0!==SuperMap.Map&&this.map instanceof SuperMap.Map&&(i=this.map.getLonLatFromPixel(new SuperMap.Pixel(0,0)),l=this.map.getLonLatFromPixel(new SuperMap.Pixel(t,0)),e=new SuperMapAlgoPlot.Point(i.lon,i.lat),o=new SuperMapAlgoPlot.Point(l.lon,l.lat));return SuperMapAlgoPlot.PlottingUtil.distance(e,o)}getPixelDistanceFromLonLat(t){if(null===this.map)return 0;var e,o;if(this.map&&"undefined"!=typeof L&&void 0!==L.Map&&this.map instanceof L.Map){var i=this.map.latLngToLayerPoint(L.latLng(0,0)),l=this.map.latLngToLayerPoint(L.latLng(t,0));e=new SuperMapAlgoPlot.Point(i.x,i.y),o=new SuperMapAlgoPlot.Point(l.x,l.y)}else this.map&&"undefined"!=typeof SuperMap&&void 0!==SuperMap.Map&&this.map instanceof SuperMap.Map&&(i=this.map.getPixelFromLonLat(new SuperMap.LonLat(0,0)),l=this.map.getPixelFromLonLat(new SuperMap.LonLat(t,0)),e=new SuperMapAlgoPlot.Point(i.x,i.y),o=new SuperMapAlgoPlot.Point(l.x,l.y));return SuperMapAlgoPlot.PlottingUtil.distance(e,o)}getPixelFromLonLat(t,e){if(this.map&&"undefined"!=typeof L&&void 0!==L.Map&&this.map instanceof L.Map){var o=this.map.latLngToLayerPoint(L.latLng(e,t));return{x:o.x,y:o.y}}if(this.map&&"undefined"!=typeof SuperMap&&void 0!==SuperMap.Map&&this.map instanceof SuperMap.Map){var i=this.map.getPixelFromLonLat(new SuperMap.LonLat(t,e));return{x:i.x,y:i.y}}}getLonLatFromPixel(t,e){if(this.map&&"undefined"!=typeof L&&void 0!==L.Map&&this.map instanceof L.Map){var o=this.map.layerPointToLatLng(L.point(t,e));return{lon:o.lng,lat:o.lat}}if(this.map&&"undefined"!=typeof SuperMap&&void 0!==SuperMap.Map&&this.map instanceof SuperMap.Map){var i=this.map.getLonLatFromPixel(new SuperMap.Pixel(t,e));return{lon:i.lon,lat:i.lat}}}pixelBoundsToLonLat(t){var e=this.getLonLatFromPixel(t.left,t.top),o=this.getLonLatFromPixel(t.right,t.bottom);return new SuperMap.Bounds(e.lon,o.lat,o.lon,e.lat)}annotationContent(t,e,o,i){var l=this.textContent;if(0!==l.length){var s=l.split("\n");l="";var n=0,a={};SuperMap.Util.copyAttributes(a,this.style),a.fontSize<12&&(a.fontSize=12);for(var r=0;r<s.length;r++){n++;var p=s[r],u=SuperMapAlgoPlot.PlottingUtil.getTextWidth(a,p),h=this.getPixelFromLonLat(t,e),g=this.getPixelFromLonLat(o,i),c=parseFloat(Math.abs(g.x-h.x)),y=parseFloat(Math.abs(h.y-g.y)),P=0;if(a.weight?P=parseFloat(a.fontSize)+2*a.weight+.2*parseFloat(a.fontSize)+n:this.style.strokeWidth&&(P=parseFloat(a.fontSize)+2*a.strokeWidth+.2*parseFloat(a.fontSize)+n),P>y)break;if(u>=c){var d=p.split("");p="";var S="",f=d.length;for(let t=0;t<f;t++){if(S+=d[t],SuperMapAlgoPlot.PlottingUtil.getTextWidth(a,S)>=c){var m=d[t];if(d[t]="\n",n++,a.weight?P=parseFloat(a.fontSize)*n+n+2*a.weight+.2*parseFloat(a.fontSize):this.style.strokeWidth&&(P=parseFloat(a.fontSize)*n+n+2*a.strokeWidth+.2*parseFloat(a.fontSize)),!(P<y)){0===l.length?l=p:(l+="\n",l+=p);break}d[t]+=m,S=m}p+=d[t],t===f-1&&(0===l.length?l=p:(l+="\n",l+=p))}}else 0===l.length?l=p:(l+="\n",l+=p)}if(0!==l.length){var L=a.labelAlign,M=0,b=0;"l"===L[0]?M=t:"r"===L[0]?M=o:"c"===L[0]&&(M=(t+o)/2),"t"===L[1]?b=e:"b"===L[1]?b=i:"m"===L[1]&&(b=(e+i)/2);var A=new SuperMapAlgoPlot.Point(M,b),T={};T.positionPoints=[A],T.type=SuperMapAlgoPlot.SymbolType.TEXTSYMBOL,T.textContent=l,T.style={surroundLineFlag:!1,labelAlign:L},this.components.push(T)}}}addCell(t,e,o,i){if(t&&e){var l={};l.type=t,l.textContent=i,l.positionPoints=e,l.style=null==o?{surroundLineFlag:!1}:o,this.components.push(l)}}addText(t,e,o,i,l){if(t&&e){var s={};s.type=SuperMapAlgoPlot.SymbolType.TEXTSYMBOL,s.textContent=t,s.positionPoints=[e];var n=o/t.length/2;s.style={},s.style.surroundLineFlag=!1,s.style.labelRotation=-i,s.style.fontSize=n,s.style.fontColor=void 0===l?"#000000":l,s.style.fontSizeLimit=!0,s.style.sizeFixed=!1,s.style.labelAlign="cm",s.style.label=t,this.components.push(s)}}getLinePts(t,e,o){var i=new Object;if(e>.5)return i.startIndex=0,i.startPt=t[0],i.endIndex=t.length-1,i.endPt=t[t.length-1],i;null==o&&(o=.5);var l=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t),s=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(l*(o-e),t),n=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(l*(o+e),t);return i.startIndex=s.index,i.startPt=s.pts,i.endIndex=n.index,i.endPt=n.pts,i}computeDashLine(t,e,o){var i=[],l=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o);if(l<=0)return[];for(var s,n=o[0],a=1,r=0,p=!0,u=!0;r<l;){let l=[];var h;l.push(n),r+=t;var g=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(r,o);if(h=g.index,s=g.pts,!(p=g.bfind))break;if(a<h)for(let t=a;t<h;t++)l.push(o[t]);l.push(s),i.push(l),r+=e;var c=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(r,o);if(h=c.index,n=c.pts,a=h+1,!(u=c.bfind))break}if(!p){let t=[];t.push(n);for(let e=a;e<o.length;e++)t.push(o[e]);2===t.length&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]),0)||i.push(t)}if(!u){var y=o[o.length-1],P=SuperMapAlgoPlot.PlottingUtil.distance(s,y);if(P*=.01,!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(P,0)){var d=SuperMapAlgoPlot.PlottingUtil.linePnt(y,s,P);let t=[];t.push(d),t.push(y),i.push(t)}}return i}addArrow(t,e){if(t.length<2)return t;var o,i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(this.controlPoints);void 0===e&&(this.isEdit,e=.5*this.getSubSymbolScaleValue());var l=t.slice();o=i*e;var s,n=t[t.length-1],a=o*Math.cos(.125*Math.PI);if(t.length>2){var r=-1;for(let e=t.length-2;e>=0;e--)if(o<SuperMapAlgoPlot.PlottingUtil.distance(n,t[e])){r=e;break}t.splice(r+1,t.length-r),t.push(n)}if(t.length>1){SuperMapAlgoPlot.PlottingUtil.distance(t[t.length-1],t[t.length-2])>a&&(s=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(a,[t[t.length-1],t[t.length-2]])).bfind&&(t.splice(t.length-1,1),t.push(s.pts)),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,t);var p=t[t.length-1],u=n,h=o;if(void 0===p)return t;var g=SuperMapAlgoPlot.PlottingUtil.radian(p,u)*SuperMapAlgoPlot.PlottingUtil.RTOD,c=SuperMapAlgoPlot.PlottingUtil.circlePoint(u,h,h,g+157.5),y=SuperMapAlgoPlot.PlottingUtil.circlePoint(u,h,h,g+202.5),P={surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fill:!0,lineTypeLimit:!0,surroundLineLimit:!0,surroundLineType:SuperMapAlgoPlot.AlgoSurroundLineType.NONE};this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,[c,n,y],P)}else this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,l)}addDovetailArrow(t,e){if(t.length<2)return t;var o,i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(this.controlPoints);void 0===e&&(this.isEdit,e=.5*this.getSubSymbolScaleValue()),o=i*e;var l=t[t.length-1];if(t.length>2){var s=-1;for(let e=t.length-2;e>=0;e--)if(o<SuperMapAlgoPlot.PlottingUtil.distance(l,t[e])){s=e;break}t.splice(s+1,t.length-s),t.push(l)}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,t);var n=t[t.length-2],a=t[t.length-1],r=o;if(void 0===n)return t;if(!(SuperMapAlgoPlot.PlottingUtil.distance(n,a)<o)){var p=SuperMapAlgoPlot.PlottingUtil.radian(n,a)*SuperMapAlgoPlot.PlottingUtil.RTOD,u=SuperMapAlgoPlot.PlottingUtil.circlePoint(a,r,r,p+157.5),h=SuperMapAlgoPlot.PlottingUtil.circlePoint(a,r,r,p+202.5),g=SuperMapAlgoPlot.PlottingUtil.circlePoint(a,.5*r,.5*r,p+180),c=[];c.push(u),c.push(t[t.length-1]),c.push(h),c.push(g);var y={surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fill:!0,lineTypeLimit:!0,surroundLineLimit:!0,surroundLineType:SuperMapAlgoPlot.AlgoSurroundLineType.NONE};this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,c,y)}}getDefaultSubSymbolSize(){var t=0;if(this.map){var e=this.getLonLatFromPixel(0,0),o=this.getLonLatFromPixel(this.subSymbolDefaultPixelSize,0),i=new SuperMapAlgoPlot.Point(e.lon,e.lat),l=new SuperMapAlgoPlot.Point(o.lon,o.lat);t=SuperMapAlgoPlot.PlottingUtil.distance(i,l)}if(0===t){if(0!==this.subSymbolSize)return this.subSymbolSize;var s=0;for(let t=0;t<this.controlPoints.length-1;t++)s+=SuperMapAlgoPlot.PlottingUtil.distance(this.controlPoints[t],this.controlPoints[t+1]);t=.3*s}return t}getTextBounds(t,e){" "===e&&(e="_");var o=document.createElement("span");document.body.appendChild(o),o.style.width="auto",o.style.height="auto",t.fontSize&&(o.style.fontSize=new String(t.fontSize)+"px"),t.fontFamily&&(o.style.fontFamily=t.fontFamily),t.fontWeight&&(o.style.fontWeight=t.fontWeight),o.style.position="absolute",o.style.visibility="hidden",o.innerHTML=e;var i=new SuperMap.Bounds(o.clientLeft,o.clientTop+o.clientHeight-6,o.clientLeft+o.clientWidth,o.clientTop+4),l=this.pixelBoundsToLonLat(i);return document.body.removeChild(o),l}calAssistantLine(){var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);this.symbolType===SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOL&&(t.splice(1,0,new SuperMapAlgoPlot.Point(this.controlPoints[1].x,this.controlPoints[0].y)),t.push(new SuperMapAlgoPlot.Point(this.controlPoints[0].x,this.controlPoints[1].y)),t.push(new SuperMapAlgoPlot.Point(this.controlPoints[0].x,this.controlPoints[0].y)));var e={type:24,surroundLineFlag:!1,positionPoints:t,style:{color:"#0000ff",opacity:1,weight:1,dashArray:"5, 5",strokeColor:"#0000ff",strokeOpacity:1,strokeWidth:1,strokeDashstyle:"dash",lineColorLimit:!0,lineTypeLimit:!0,lineWidthLimit:!0,surroundLineFlag:!1}};this.components.push(e)}getSubSymbolScaleValue(t,e){var o=0;o=t&&!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t,0)?t:SuperMapAlgoPlot.PlottingUtil.polylineDistance(this.controlPoints);var i=this.getDefaultSubSymbolSize()/o;return void 0===e&&(e=.3),(i>e||i<=0)&&(i=e),i}computeSubSymbol(t,e,o,i,l,s){if(null==t.symbolData||null==t.symbolData.innerCells)return null;void 0===l&&(l=0),void 0===s&&(s=0);var n=SuperMapAlgoPlot.AnalysisSymbol.analysisSymbolCells(t.symbolData,!0),a=0,r=0,p=0,u=0;for(let t=0;t<n.length;t++){null!=n[t].polybezierClose&&(n[t].type===SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL||n[t].type===SuperMapAlgoPlot.SymbolType.POLYBEZIERCLOSESYMBOL?(n[t].type,SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL,n[t].positionPoints=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsWithCtrlPt(n[t].positionPoints),n[t].isClosed&&n[t].positionPoints[0]!==n[t].positionPoints[symbolCell.positionPoints.length-1]&&n[t].positionPoints.push(n[t].positionPoints[0])):n[t].type===SuperMapAlgoPlot.SymbolType.KIDNEY&&(n[t].positionPoints=SuperMapAlgoPlot.Primitives.getSpatialData(n[t].type,n[t].positionPoints)));var h=SuperMapAlgoPlot.Primitives.getSpatialData(n[t].type,n[t].positionPoints,n[t].textContent,0,n[t].isCalculate);for(let t=0,e=h.length;t<e;t++)a<h[t].x&&(a=h[t].x),r<h[t].y&&(r=h[t].y),p>h[t].x&&(p=h[t].x),u>h[t].y&&(u=h[t].y)}var g=new SuperMapAlgoPlot.Point(a,r),c=new SuperMapAlgoPlot.Point(p,u),y=(g.y-c.y)/o,P=(g.x-c.x)/o,d=P>y?P:y,S=new SuperMapAlgoPlot.Point(.5*(g.x+c.x),.5*(g.y+c.y));S.x+=l*(g.x-c.x),S.y+=s*(g.y-c.y);for(let t=0,o=n.length;t<o;t++){for(let o=0,l=n[t].positionPoints.length;o<l;o++)n[t].positionPoints[o].x-=S.x,n[t].positionPoints[o].y-=S.y,n[t].positionPoints[o].x/=d,n[t].positionPoints[o].y/=d,SuperMapAlgoPlot.PlottingUtil.rotateAngle(new SuperMapAlgoPlot.Point(0,0),i*Math.PI/180,n[t].positionPoints[o]),n[t].positionPoints[o].x+=e.x,n[t].positionPoints[o].y+=e.y;n[t].type===SuperMapAlgoPlot.SymbolType.TEXTSYMBOL&&(n[t].style.fontSize/=10*d,n[t].style.labelRotation=-i,n[t].style.sizeFixed=!1),n[t].isCalculate=!1,n[t].style.surroundLineType=0,n[t].style.surroundLineLimit=!0,this.components.push(n[t])}return n}ComputeZValue(t,e,o){var i=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(t,e,o),l=new SuperMapAlgoPlot.Point(i.projectPoint.x,i.projectPoint.y),s=SuperMapAlgoPlot.PlottingUtil.distance(e,o),n=SuperMapAlgoPlot.PlottingUtil.distance(e,t),a=SuperMapAlgoPlot.PlottingUtil.distance(o,t);if(!i.isOnline){if(n>=s)return o.z;if(a>=s)return e.z}return l.x!=e.x&&e.x!=o.x?e.z+(l.x-e.x)/(e.x-o.x)*(e.z-o.z):l.y!=e.y&&e.y!=o.y?e.z+(l.y-e.y)/(e.y-o.y)*(e.z-o.z):0==(n=SuperMapAlgoPlot.PlottingUtil.distance(e,l))?e.z:e.z-(e.z-o.z)*(n/s)}ComputeBeizerZValueByDis(t,e,o){if(t.length<2)return!1;var i=[];for(let e=0;e<t.length;e++)i.push({x:t[e].x,y:t[e].y});var l=SuperMapAlgoPlot.PlottingUtil.polylineDistance(i);if(0==l)return!1;var s=SuperMapAlgoPlot.PlottingUtil.polylineDistance(e),n=[];n.push(i[0]);var a=-1,r=0,p=e[0];for(let L=1;L<i.length;L++){n.push(i[L]);var u=SuperMapAlgoPlot.PlottingUtil.polylineDistance(n)/l,h=s*u,g=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(h,e),c=g.index,y=g.pts;if(g.bfind){var P=t[L-1].z,d=t[L].z,S=s*(u-r),f=0;for(let t=++a;t<=c;t++){var m=P+(d-P)*((f+=t==a?SuperMapAlgoPlot.PlottingUtil.distance(p,e[t]):SuperMapAlgoPlot.PlottingUtil.distance(e[t-1],e[t]))/S);o.push({x:e[t].x,y:e[t].y,z:m})}a=c}r=u,p=y}for(let i=a+1;i<e.length;i++)o.push({x:e[i].x,y:e[i].y,z:t[t.length-1].z});return!0}ComputeHeight(t,e,o,i){if(o!=i){if(0!=t.length)if(1==t.length)e.push({x:t[0].x,y:t[0].y,z:o});else if(2==t.length)e.push({x:t[0].x,y:t[0].y,z:o}),e.push({x:t[1].x,y:t[1].y,z:i});else{var l=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t);if(0!=l){var s=[];s.push(t[0]),e.push({x:t[0].x,y:t[0].y,z:o});for(let a=1;a<t.length-1;a++){s.push(t[a]);var n=o+(i-o)*SuperMapAlgoPlot.PlottingUtil.polylineDistance(s)/l;e.push({x:t[a].x,y:t[a].y,z:n})}e.push({x:t[t.length-1].x,y:t[t.length-1].y,z:i})}else for(let i=0;i<t.length;i++)e.push({x:t[i].x,y:t[i].y,z:o})}}else for(let i=0;i<t.length;i++)e.push({x:t[i].x,y:t[i].y,z:o})}};SuperMapAlgoPlot.ArrowLine=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.arrowAngle=t.arrowAngle?t.arrowAngle:45,0===this.scaleValues.length&&(this.scaleValues.push(.3),this.scaleValues.push(0),this.scaleValues.push(0)),this.CLASS_NAME="SuperMapAlgoPlot.ArrowLine"}calculateParts(){if(this.init(),!(null==this.controlPoints||this.controlPoints.length<this.minEditPts)){var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t);var e=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(t);e=SuperMapAlgoPlot.PlottingUtil.clearSamePts(e);var o=SuperMapAlgoPlot.PlottingUtil.polylineDistance(e);this.isEdit||(this.scaleValues[0]=.5*this.getSubSymbolScaleValue(o));var i,l=this.scaleValues[0]*o,s=this.arrowAngle*Math.PI/180/2,n=(i=e.length>2?SuperMapAlgoPlot.PlottingUtil.radian(e[e.length-1],e[e.length-2]):SuperMapAlgoPlot.PlottingUtil.radian(e[1],e[0]))-s,a=e[e.length-1].x+l*Math.cos(n),r=e[e.length-1].y+l*Math.sin(n),p=new SuperMapAlgoPlot.Point(a,r),u=i+s,h=e[e.length-1].x+l*Math.cos(u),g=e[e.length-1].y+l*Math.sin(u),c=new SuperMapAlgoPlot.Point(h,g),y=[];y.push(p),y.push(e[e.length-1].clone()),y.push(c);var P={surroundLineFlag:!1,fillLimit:!0,lineTypeLimit:!0},d=SuperMapAlgoPlot.PlottingUtil.radian(e[0],e[1]);n=d-s,a=e[0].x+l*Math.cos(n),r=e[0].y+l*Math.sin(n),p=new SuperMapAlgoPlot.Point(a,r),u=d+s,h=e[0].x+l*Math.cos(u),g=e[0].y+l*Math.sin(u),c=new SuperMapAlgoPlot.Point(h,g);var S=[];S.push(p),S.push(e[0].clone()),S.push(c);var f=this.scaleValues[1]===SuperMapAlgoPlot.ArrowLineType.DOUBLELINE?SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL:SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,m=this.scaleValues[2]===SuperMapAlgoPlot.ArrowLineType.DOUBLELINE?SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL:SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL;this.scaleValues[1]===SuperMapAlgoPlot.ArrowLineType.DOUBLELINE?this.addCell(f,S,P):this.scaleValues[1]===SuperMapAlgoPlot.ArrowLineType.TRIANGLESOLID&&this.addCell(f,S,P),this.scaleValues[2]===SuperMapAlgoPlot.ArrowLineType.DOUBLELINE?this.addCell(m,y,P):this.scaleValues[2]===SuperMapAlgoPlot.ArrowLineType.TRIANGLESOLID&&this.addCell(m,y,P),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,e),this.finish()}}};SuperMapAlgoPlot.RegularPolygon=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(1),this.CLASS_NAME="SuperMapAlgoPlot.RegularPolygon"}calculateParts(){if(this.init(),!(this.controlPoints.length<this.minEditPts)){var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),e=this.controlPoints.length+1,o=2*Math.PI/e;if(!this.isEdit){var i=this.controlPoints[this.controlPoints.length-1],l=new SuperMapAlgoPlot.Point(this.controlPoints[this.controlPoints.length-1].x,this.controlPoints[this.controlPoints.length-1].y);SuperMapAlgoPlot.PlottingUtil.rotateAngle(this.controlPoints[0],o,l),this.scaleValues[0]=SuperMapAlgoPlot.PlottingUtil.distance(t[0],this.calculateMidPt(i,l))/SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[t.length-1])}var s=[],n=this.controlPoints[this.controlPoints.length-1].clone();s.push(n.clone()),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(this.controlPoints[0],o/2,n);var a=SuperMapAlgoPlot.PlottingUtil.findPointOnLineByRatio(this.scaleValues[0],this.controlPoints[0],n);s.push(a);for(let t=1;t<e;t++)n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(this.controlPoints[0],o/2,n),s.push(n.clone()),n=SuperMapAlgoPlot.PlottingUtil.rotateAngle(this.controlPoints[0],o/2,n),a=SuperMapAlgoPlot.PlottingUtil.findPointOnLineByRatio(this.scaleValues[0],this.controlPoints[0],n),s.push(a);var r=s[1];this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s,{surroundLineFlag:!1,fill:!1}),this.addScalePoint(r),this.finish()}}calculateMidPt(t,e){return new SuperMapAlgoPlot.Point((t.x+e.x)/2,(t.y+e.y)/2)}modifyPoint(t,e){if(0===t&&!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.distance(this.controlPoints[0],this.controlPoints[this.controlPoints.length-1]),i=this.scalePoints[0],l=SuperMapAlgoPlot.PlottingUtil.projectPoint(e,this.controlPoints[0],i),s=SuperMapAlgoPlot.PlottingUtil.distance(this.controlPoints[0],l);this.scaleValues[0]=s/o}this.calculateParts()}};SuperMapAlgoPlot.Brace=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.1),this.scaleValues.push(.1)),this.CLASS_NAME="SuperMapAlgoPlot.Brace"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e=t[0],o=t[1],i=SuperMapAlgoPlot.PlottingUtil.distance(e,o);this.scaleValues.length<2&&(this.scaleValues=[],this.scaleValues.push(.1),this.scaleValues.push(.1));var l=this.scaleValues[0],s=this.scaleValues[1],n=new SuperMapAlgoPlot.Point(i*l,i*l),a=new SuperMapAlgoPlot.Point(i*(.5-s/2),0),r=new SuperMapAlgoPlot.Point(.5*i,-i*s),p=new SuperMapAlgoPlot.Point(i*(.5+s/2),0),u=new SuperMapAlgoPlot.Point(i*(1-l),i*l),h=[],g=180*Math.PI/180,c=270*Math.PI/180,y=3*Math.PI/180;for(let t=g;t<=c;t+=y){let e=new SuperMapAlgoPlot.Point(n.x+i*l,n.y);e=SuperMapAlgoPlot.PlottingUtil.rotateAngle(n,t,e),h.push(e)}h.push(a),h.push(r),h.push(p),g=270*Math.PI/180,c=360*Math.PI/180;for(let t=g;t<=c;t+=y){let e=new SuperMapAlgoPlot.Point(u.x+i*l,u.y);e=SuperMapAlgoPlot.PlottingUtil.rotateAngle(u,t,e),h.push(e)}var P=SuperMapAlgoPlot.PlottingUtil.radian(e,o),d=[];for(let t=0;t<h.length;t++){var S=new SuperMapAlgoPlot.Point(h[t].x+e.x,h[t].y+e.y);S=SuperMapAlgoPlot.PlottingUtil.rotateAngle(e,P,S),d.push(S)}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,d),this.scalePoints=[];var f=new SuperMapAlgoPlot.Point(i*l,0),m=new SuperMapAlgoPlot.Point(f.x+e.x,f.y+e.y);(m=SuperMapAlgoPlot.PlottingUtil.rotateAngle(e,P,m)).isScalePoint=!0,m.tag=0,this.addScalePoint(m);var L=new SuperMapAlgoPlot.Point(r.x+e.x,r.y+e.y);SuperMapAlgoPlot.PlottingUtil.rotateAngle(e,P,L),L.isScalePoint=!0,L.tag=1,this.addScalePoint(L)}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),i=SuperMapAlgoPlot.PlottingUtil.distance(o[0],o[1]);if(0==t){let t=SuperMapAlgoPlot.PlottingUtil.distance(o[0],e)/i;t>0&&t<.4&&(this.scaleValues[0]=t)}else if(1==t){var l=new SuperMapAlgoPlot.Point((o[0].x+o[1].x)/2,(o[0].y+o[1].y)/2);let t=SuperMapAlgoPlot.PlottingUtil.distance(e,l)/i;0<t&&.2>t&&(this.scaleValues[1]=t)}}this.calculateParts()}};SuperMapAlgoPlot.Trapezoid=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.CLASS_NAME="SuperMapAlgoPlot.Trapezoid"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<this.minEditPts)){var e=[],o=t[0],i=t[1],l=t[2],s=new SuperMapAlgoPlot.Point(0,0);this.GetPointsByTrapezoid(1,l,i,o,s),e.push(o),e.push(i),e.push(l),e.push(s);var n=SuperMapAlgoPlot.PlottingUtil.intersectLines(o,i,l,s),a=n.intersectPoint;n.isIntersectLines&&(a.x>o.x&&a.x<i.x||a.y>o.y&&a.y<i.y||a.x<o.x&&a.x>i.x||a.y<o.y&&a.y>i.y)&&(e[0]=s,e[3]=o),4==e.length&&this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e)}}GetPointsByTrapezoid(t,e,o,i,l){var s=e.x,n=e.y,a=o.x,r=o.y,p=i.x,u=i.y,h=0,g=0,c=0,y=0;if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(Math.abs(n-r),0))h=s+a-p,g=u;else if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(Math.abs(s-a),0))h=p,g=n+r-u;else{var P=1*(n-r)/(s-a),d=u-P*p;g=P*(h=((r+n)/2+(s+a)/(2*P)-d)/(P+1/P))+d,h=2*h-p,g=2*g-u}var S=Math.sqrt(1*(s-a)*(s-a)+1*(n-r)*(n-r)),f=Math.sqrt(1*(s-h)*(s-h)+1*(n-g)*(n-g));S>0?(c=s+(a-s)*f/S,y=n+(r-n)*f/S):(c=s,y=n);var m=c+(h-c)*t,L=y+(g-y)*t;l.x=m,l.y=L}};SuperMapAlgoPlot.GeoTooltipBox=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.126),this.CLASS_NAME="SuperMapAlgoPlot.GeoTooltipBox"}destroy(){super.destroy()}calculateParts(){this.init();var t=this.scaleValues[0];if(!(t<0||t>1)){if(t=(1-t)/2,this.controlPoints.length>=this.minEditPts){var e,o,i,l,s,n;this.controlPoints[2]&&(this.controlPoints[2].isFixedPos=!0),this.controlPoints[0].x<this.controlPoints[1].x?(e=this.controlPoints[0].x,i=this.controlPoints[1].x):(e=this.controlPoints[1].x,i=this.controlPoints[0].x),this.controlPoints[0].y<this.controlPoints[1].y?(l=this.controlPoints[0].y,o=this.controlPoints[1].y):(l=this.controlPoints[1].y,o=this.controlPoints[0].y),s=this.controlPoints[2].x,n=this.controlPoints[2].y;var a=0,r=(o-l)/(i-e);a=s<e?n>o?Math.abs((n-o)/(s-e))>r?2:1:n<l&&Math.abs((n-l)/(s-e))>r?4:1:s>i?n>o?Math.abs((n-o)/(s-i))>r?2:3:n<l&&Math.abs((n-l)/(s-i))>r?4:3:n>o?2:n<l?4:0,this.scalePoints=[];var p=[];switch(p.push(new SuperMapAlgoPlot.Point(e,l)),p.push(new SuperMapAlgoPlot.Point(e,o)),p.push(new SuperMapAlgoPlot.Point(i,o)),p.push(new SuperMapAlgoPlot.Point(i,l)),a){case 0:break;case 1:this.addScalePoint(new SuperMapAlgoPlot.Point(e,o-(o-l)*t)),p.splice(a,0,new SuperMapAlgoPlot.Point(e,o-(o-l)*t)),p.splice(a,0,this.controlPoints[2].clone()),p.splice(a,0,new SuperMapAlgoPlot.Point(e,l+(o-l)*t));break;case 2:this.addScalePoint(new SuperMapAlgoPlot.Point(i-(i-e)*t,o)),p.splice(a,0,new SuperMapAlgoPlot.Point(i-(i-e)*t,o)),p.splice(a,0,this.controlPoints[2].clone()),p.splice(a,0,new SuperMapAlgoPlot.Point(e+(i-e)*t,o));break;case 3:this.addScalePoint(new SuperMapAlgoPlot.Point(i,o-(o-l)*t)),p.splice(a,0,new SuperMapAlgoPlot.Point(i,l+(o-l)*t)),p.splice(a,0,this.controlPoints[2].clone()),p.splice(a,0,new SuperMapAlgoPlot.Point(i,o-(o-l)*t));break;case 4:this.addScalePoint(new SuperMapAlgoPlot.Point(i-(i-e)*t,l)),p.splice(a,0,new SuperMapAlgoPlot.Point(e+(i-e)*t,l)),p.splice(a,0,this.controlPoints[2].clone()),p.splice(a,0,new SuperMapAlgoPlot.Point(i-(i-e)*t,l))}this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,p),this.annotationContent(e,o,i,l)}this.finish()}}modifyPoint(t,e){if(!0===e.isScalePoint&&0==t){var o,i,l,s,n,a,r=this.scalePoints[0];this.controlPoints[0].x<this.controlPoints[1].x?(o=this.controlPoints[0].x,l=this.controlPoints[1].x):(o=this.controlPoints[1].x,l=this.controlPoints[0].x),this.controlPoints[0].y<this.controlPoints[1].y?(s=this.controlPoints[0].y,i=this.controlPoints[1].y):(s=this.controlPoints[1].y,i=this.controlPoints[0].y),n=this.controlPoints[2].x,a=this.controlPoints[2].y;var p=(i-s)/(l-o),u=.25;switch(n<o?a>i?Math.abs((a-i)/(n-o))>p?2:1:a<s&&Math.abs((a-s)/(n-o))>p?4:1:n>l?a>i?Math.abs((a-i)/(n-l))>p?2:3:a<s&&Math.abs((a-s)/(n-l))>p?4:3:a>i?2:a<s?4:0){case 1:case 3:var h=r.y+(e.y-r.y);h>i&&(h=i),h<(i+s)/2&&(h=(i+s)/2),u=1-2*(i-h)/(i-s);break;case 2:case 4:var g=r.x+(e.x-r.x);g>l&&(g=l),g<(o+l)/2&&(g=(o+l)/2),u=1-2*(l-g)/(l-o)}u<0&&(u=0),u>1&&(u=1),this.scaleValues[0]=u}this.calculateParts()}};SuperMapAlgoPlot.GeoTooltipBoxM=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(0),this.scaleValues.push(0),this.scaleValues.push(0),this.scaleValues.push(0)),this.CLASS_NAME="SuperMapAlgoPlot.GeoTooltipBoxM"}destroy(){super.destory()}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=this.minEditPts){var e,o,i,l;t[0].x<t[1].x?(e=t[0].x,i=t[1].x):(e=t[1].x,i=t[0].x),t[0].y<t[1].y?(l=t[0].y,o=t[1].y):(l=t[1].y,o=t[0].y),this.scalePoints=[];var s=[];s.push(new SuperMapAlgoPlot.Point(e,l)),s.push(new SuperMapAlgoPlot.Point(e,o)),s.push(new SuperMapAlgoPlot.Point(i,o)),s.push(new SuperMapAlgoPlot.Point(i,l)),this.isEdit||(this.scaleValues[0]=e,this.scaleValues[1]=l-.3*(o-l),this.scaleValues[2]=e+.5*(i-e),this.scaleValues[3]=l-.3*(o-l));var n=[],a=[];for(let t=0;t<this.scaleValues.length/2;t++)n.push(this.getAction(this.scaleValues[2*t],this.scaleValues[2*t+1],e,o,i,l)),a.push(new SuperMapAlgoPlot.Point(this.scaleValues[2*t],this.scaleValues[2*t+1]));var r,p,u,h,g=a.length,c=[],y=[],P=[],d=[],S=[];for(let t=0;t<n.length;t++)0===n[t]&&c.push(a[t]),1===n[t]&&y.push(a[t]),2===n[t]&&P.push(a[t]),3===n[t]&&d.push(a[t]),4===n[t]&&S.push(a[t]);var f=n.slice();f.sort();var m=new SuperMapAlgoPlot.Point(0,0);if(f[0]===f[f.length-1]&&0!==f[0]){var L=[];switch(f[0]){case 0:break;case 1:r=1/(2*y.length+1);var M=new SuperMapAlgoPlot.Point;for(let t=0;t<2*y.length;t++)M=new SuperMapAlgoPlot.Point(e,l+(o-l)*r*(t+1)),L.unshift(M);break;case 2:p=1/(2*P.length+1);var b=new SuperMapAlgoPlot.Point;for(let t=0;t<2*P.length;t++)b=new SuperMapAlgoPlot.Point(e+(i-e)*p*(t+1),o),L.unshift(b);break;case 3:u=1/(2*d.length+1);var A=new SuperMapAlgoPlot.Point;for(let t=0;t<2*d.length;t++)A=new SuperMapAlgoPlot.Point(i,l+(o-l)*u*(t+1)),L.push(A);break;case 4:h=1/(2*S.length+1);var T=new SuperMapAlgoPlot.Point;for(let t=0;t<2*S.length;t++)T=new SuperMapAlgoPlot.Point(e+(i-e)*h*(t+1),l),L.push(T)}for(let t=0;t<g;t++)for(let e=0;e<g;e++){let o=SuperMapAlgoPlot.PlottingUtil.intersectLineSegs(L[2*t+1],a[t],L[2*e],a[e],m);if(o&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.x,L[2*t+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.y,L[2*t+1].y)&&(o=!1),o){let o=a[e].clone();a[e]=a[t],a[t]=o}}for(let t=0;t<g;t++)s.splice(f[0],0,L[2*t]),s.splice(f[0],0,a[t]),s.splice(f[0],0,L[2*t+1])}else{var v,_,x=[],O=[],w=[],I=[];for(let t=0;t<n.length;t++)switch(n[t]){case 0:break;case 1:r=1/(2*y.length+1);for(let t=0;t<2*y.length;t++){var C=new SuperMapAlgoPlot.Point(e,l+(o-l)*r*(t+1));x.unshift(C)}for(let t=0;t<y.length;t++)for(let e=1;e<y.length;e++)(v=SuperMapAlgoPlot.PlottingUtil.intersectLineSegs(x[2*t+1],y[t],x[2*e],y[e],m))&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.x,x[2*t+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.y,x[2*t+1].y)&&(v=!1),v&&(_=y[e].clone(),y[e]=y[t],y[t]=_);break;case 2:p=1/(2*P.length+1);for(let t=0;t<2*P.length;t++){var E=new SuperMapAlgoPlot.Point(e+(i-e)*p*(t+1),o);O.unshift(E)}for(let t=0;t<P.length;t++)for(let e=1;e<P.length;e++)(v=SuperMapAlgoPlot.PlottingUtil.intersectLineSegs(O[2*t+1],P[t],O[2*e],P[e],m))&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.x,O[2*t+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.y,O[2*t+1].y)&&(v=!1),v&&(_=P[e].clone(),P[e]=P[t],P[t]=_);break;case 3:u=1/(2*d.length+1);for(let t=0;t<2*d.length;t++){var D=new SuperMapAlgoPlot.Point(i,l+(o-l)*u*(t+1));w.push(D)}for(let t=0;t<d.length;t++)for(let e=1;e<d.length;e++)(v=SuperMapAlgoPlot.PlottingUtil.intersectLineSegs(w[2*t+1],d[t],w[2*e],d[e],m))&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.x,w[2*t+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.y,w[2*t+1].y)&&(v=!1),v&&(_=d[e].clone(),d[e]=d[t],d[t]=_);break;case 4:h=1/(2*S.length+1);for(let t=0;t<2*S.length;t++){var U=new SuperMapAlgoPlot.Point(e+(i-e)*h*(t+1),l);I.push(U)}for(let t=0;t<S.length;t++)for(let e=1;e<S.length;e++)(v=SuperMapAlgoPlot.PlottingUtil.intersectLineSegs(I[2*t+1],S[t],I[2*e],S[e],m))&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.x,I[2*t+1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(m.y,I[2*t+1].y)&&(v=!1),v&&(_=S[e].clone(),S[e]=S[t],S[t]=_)}for(let t=0;t<S.length;t++)s.splice(4,0,I[2*t]),s.splice(4,0,S[t]),s.splice(4,0,I[2*t+1]);for(let t=0;t<d.length;t++)s.splice(3,0,w[2*t]),s.splice(3,0,d[t]),s.splice(3,0,w[2*t+1]);for(let t=0;t<P.length;t++)s.splice(2,0,O[2*t]),s.splice(2,0,P[t]),s.splice(2,0,O[2*t+1]);for(let t=0;t<y.length;t++)s.splice(1,0,x[2*t]),s.splice(1,0,y[t]),s.splice(1,0,x[2*t+1])}for(let t=0;t<a.length;t++)this.addScalePoint(a[t],t)}this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s),this.annotationContent(e,o,i,l),this.finish()}modifyPoint(t,e){!0===e.isScalePoint&&(null==t&&void 0===t||(this.scaleValues[2*t]=e.x,this.scaleValues[2*t+1]=e.y)),this.calculateParts()}getAction(t,e,o,i,l,s){var n=(i-s)/(l-o);return t<o?e>i?Math.abs((e-i)/(t-o))>n?2:1:e<s&&Math.abs((e-s)/(t-o))>n?4:1:t>l?e>i?Math.abs((e-i)/(t-l))>n?2:3:e<s&&Math.abs((e-s)/(t-l))>n?4:3:e>i?2:e<s?4:0}};SuperMapAlgoPlot.SymbolTextBox=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.roundBox=!!t.roundBox&&t.roundBox,this.textBoxType=t.textBoxType?t.textBoxType:SuperMapAlgoPlot.TextBoxType.WITHTIPBOX,0===this.scaleValues.length&&(this.scaleValues.push(.126),this.scaleValues.push(0),this.scaleValues.push(0)),this.CLASS_NAME="SuperMapAlgoPlot.SymbolTextBox"}destroy(){this.roundBox=null,this.textBoxType=null,super.destroy()}calculateParts(){this.init();var t=this.scaleValues[0];if(!(t<0||t>1)){if(t=(1-t)/2,this.controlPoints.length>=this.minEditPts){var e,o,i,l;this.scalePoints=[];var s=[];this.controlPoints[0].x<this.controlPoints[1].x?(e=this.controlPoints[0].x,i=this.controlPoints[1].x):(e=this.controlPoints[1].x,i=this.controlPoints[0].x),this.controlPoints[0].y<this.controlPoints[1].y?(l=this.controlPoints[0].y,o=this.controlPoints[1].y):(l=this.controlPoints[1].y,o=this.controlPoints[0].y);var n=1,a=2,r=3,p=4;if(this.roundBox){var u=Math.max(e,i),h=Math.min(e,i),g=Math.max(o,l),c=Math.min(o,l),y=.1*Math.min(Math.abs(e-i),Math.abs(o-l)),P=new SuperMapAlgoPlot.Point(h+y,c+y),d=new SuperMapAlgoPlot.Point(h+y,g-y),S=new SuperMapAlgoPlot.Point(u-y,g-y),f=new SuperMapAlgoPlot.Point(u-y,c+y),m=this.calculateArc(P,y,3*Math.PI/2,Math.PI,-1,180),L=this.calculateArc(d,y,Math.PI,Math.PI/2,-1,180),M=this.calculateArc(S,y,Math.PI/2,0,-1,180),b=this.calculateArc(f,y,2*Math.PI,3*Math.PI/2,-1,180);n=m.length,a=m.length+L.length,r=m.length+L.length+M.length,p=m.length+L.length+M.length+b.length,s=m.concat(L,M,b)}else s.push(new SuperMapAlgoPlot.Point(e,l)),s.push(new SuperMapAlgoPlot.Point(e,o)),s.push(new SuperMapAlgoPlot.Point(i,o)),s.push(new SuperMapAlgoPlot.Point(i,l));this.isEdit||(this.scaleValues[1]=e+.1*(i-e),this.scaleValues[2]=l+-.3*(o-l));var A=new SuperMapAlgoPlot.Point(this.scaleValues[1],this.scaleValues[2]),T=this.getAction(this.scaleValues[1],this.scaleValues[2],e,o,i,l);if(this.textBoxType===SuperMapAlgoPlot.TextBoxType.WITHTIPBOX)switch(this.addScalePoint(A,0),T){case 0:break;case 1:this.addScalePoint(new SuperMapAlgoPlot.Point(e,o-(o-l)*t)),s.splice(n,0,new SuperMapAlgoPlot.Point(e,o-(o-l)*t)),s.splice(n,0,A),s.splice(n,0,new SuperMapAlgoPlot.Point(e,l+(o-l)*t));break;case 2:this.addScalePoint(new SuperMapAlgoPlot.Point(i-(i-e)*t,o)),s.splice(a,0,new SuperMapAlgoPlot.Point(i-(i-e)*t,o)),s.splice(a,0,A),s.splice(a,0,new SuperMapAlgoPlot.Point(e+(i-e)*t,o));break;case 3:this.addScalePoint(new SuperMapAlgoPlot.Point(i,o-(o-l)*t)),s.splice(r,0,new SuperMapAlgoPlot.Point(i,l+(o-l)*t)),s.splice(r,0,A),s.splice(r,0,new SuperMapAlgoPlot.Point(i,o-(o-l)*t));break;case 4:this.addScalePoint(new SuperMapAlgoPlot.Point(i-(i-e)*t,l)),s.splice(p,0,new SuperMapAlgoPlot.Point(e+(i-e)*t,l)),s.splice(p,0,A),s.splice(p,0,new SuperMapAlgoPlot.Point(i-(i-e)*t,l))}0!==s.length&&(this.textBoxType===SuperMapAlgoPlot.TextBoxType.NONEBOX?this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s,{surroundLineFlag:!1,weight:0,lineWidthLimit:!0}):this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s))}else this.controlPoints.length>=2&&this.controlPoints.length<this.minEditPts&&this.addCell(SuperMapAlgoPlot.SymbolType.RECTANGLESYMBOL,this.controlPoints);this.annotationContent(e,o,i,l),this.finish()}}modifyPoint(t,e){if(!0===e.isScalePoint)if(0===t)this.scaleValues[1]=e.x,this.scaleValues[2]=e.y;else if(1===t){var o,i,l,s,n,a,r=this.scalePoints[0];this.controlPoints[0].x<this.controlPoints[1].x?(o=this.controlPoints[0].x,l=this.controlPoints[1].x):(o=this.controlPoints[1].x,l=this.controlPoints[0].x),this.controlPoints[0].y<this.controlPoints[1].y?(s=this.controlPoints[0].y,i=this.controlPoints[1].y):(s=this.controlPoints[1].y,i=this.controlPoints[0].y),n=this.scaleValues[1],a=this.scaleValues[2];var p=(i-s)/(l-o),u=.25;switch(n<o?a>i?Math.abs((a-i)/(n-o))>p?2:1:a<s&&Math.abs((a-s)/(n-o))>p?4:1:n>l?a>i?Math.abs((a-i)/(n-l))>p?2:3:a<s&&Math.abs((a-s)/(n-l))>p?4:3:a>i?2:a<s?4:0){case 1:case 3:var h=r.y+(e.y-r.y);h>i&&(h=i),h<(i+s)/2&&(h=(i+s)/2),u=1-2*(i-h)/(i-s);break;case 2:case 4:var g=r.x+(e.x-r.x);g>l&&(g=l),g<(o+l)/2&&(g=(o+l)/2),u=1-2*(l-g)/(l-o)}u<0&&(u=0),u>1&&(u=1),this.scaleValues[0]=u}this.calculateParts()}calculateArc(t,e,o,i,l,s){(!l||1!=l&&-1!=l)&&(l=-1),s||(s=360);var n=Math.PI/s/2,a=n*l,r=Math.abs(i-o),p=[];for(let i=o,l=0;l<r;l+=n){var u=new SuperMapAlgoPlot.Point(Math.cos(i)*e+t.x,Math.sin(i)*e+t.y);p.push(u),i=(i=(i+=a)<0?i+2*Math.PI:i)>2*Math.PI?i-2*Math.PI:i}return p}getAction(t,e,o,i,l,s){var n=(i-s)/(l-o);return t<o?e>i?Math.abs((e-i)/(t-o))>n?2:1:e<s&&Math.abs((e-s)/(t-o))>n?4:1:t>l?e>i?Math.abs((e-i)/(t-l))>n?2:3:e<s&&Math.abs((e-s)/(t-l))>n?4:3:e>i?2:e<s?4:0}};SuperMapAlgoPlot.ConcentricCircle=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),void 0===this.scaleValues[0]&&(this.scaleValues[0]=0),void 0===this.scaleValues[1]&&(this.scaleValues[1]=360),this.CLASS_NAME="SuperMapAlgoPlot.ConcentricCircle"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!(null==(t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t))||t.length<2)){for(2==t.length&&t.push(t[1].clone());this.scaleValues[0]>360;)this.scaleValues[0]-=360;for(;this.scaleValues[0]<0;)this.scaleValues[0]+=360;for(;this.scaleValues[1]>360;)this.scaleValues[1]-=360;for(;this.scaleValues[1]<0;)this.scaleValues[1]+=360;for(;this.scaleValues[1]<=this.scaleValues[0];)this.scaleValues[1]+=360;SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[1],this.scaleValues[0])&&(this.scaleValues[1]+=360);var e=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]),o=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[2]),i=[],l=[],s=Math.PI/180,n=(this.scaleValues[1]-this.scaleValues[0])/72;for(let h=this.scaleValues[0];h<this.scaleValues[1]+n/2;h+=n){var a=t[0].x+e*Math.cos(h*s),r=t[0].y+e*Math.sin(h*s),p=t[0].x+o*Math.cos(h*s),u=t[0].y+o*Math.sin(h*s);i.push(new SuperMapAlgoPlot.Point(a,r)),l.push(new SuperMapAlgoPlot.Point(p,u))}var h=[];for(let t=0;t<i.length;t++)h.push(i[t]);for(let t=l.length-1;t>=0;t--)h.push(l[t]);this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,h,{surroundLineFlag:!1,lineWidthLimit:!0,weight:0,strokeWidth:0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,i),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,l);var g=t[0].x+e/2*Math.cos(this.scaleValues[0]*s),c=t[0].y+e/2*Math.sin(this.scaleValues[0]*s),y=t[0].x+o/2*Math.cos(this.scaleValues[1]*s),P=t[0].y+o/2*Math.sin(this.scaleValues[1]*s),d=new SuperMapAlgoPlot.Point(g,c);d.isScalePoint=!0,d.tag=0,this.addScalePoint(d);var S=new SuperMapAlgoPlot.Point(y,P);S.isScalePoint=!0,S.tag=1,this.addScalePoint(S)}}modifyPoint(t,e){if(!0===e.isScalePoint){for(var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),i=180*SuperMapAlgoPlot.PlottingUtil.radian(o[0],e)/Math.PI;i>360;)i-=360;for(;i<0;)i+=360;0==t?this.scaleValues[0]=i:1==t&&(this.scaleValues[1]=i)}this.calculateParts()}};SuperMapAlgoPlot.CombinationalCircle=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.angleRange=[],this.defaultRadius=t.defaultRadius?t.defaultRadius:60,this.CLASS_NAME="SuperMapAlgoPlot.CombinationalCircle"}calculateParts(){if(this.init(),this.controlPoints=SuperMapAlgoPlot.PlottingUtil.clearSamePts(this.controlPoints),!(null==this.controlPoints||this.controlPoints.length<1)){var t=this.getCircleLonLat(this.controlPoints[0],this.defaultRadius);this.angleRange=[];for(let e=0;e<this.controlPoints.length;e++)null==this.scaleValues[e]&&(this.scaleValues[e]=t),this.angleRange.push([{Start:0,End:360}]);var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);for(let t=0;t<e.length;t++)if(0!==this.angleRange[t].length&&(0!==this.angleRange[t][0].Start||0!==this.angleRange[t][0].End))for(let p=t+1;p<e.length;p++)if(0!==this.angleRange[p].length&&(0!==this.angleRange[p][0].Start||0!==this.angleRange[p][0].End)){var o=SuperMapAlgoPlot.PlottingUtil.distance(e[t],e[p]);if(o<this.scaleValues[t]+this.scaleValues[p])if(o>Math.abs(this.scaleValues[t]-this.scaleValues[p]))for(let u=0;u<2;u++){var i,l,s;0==u?(s=t,i=SuperMapAlgoPlot.PlottingUtil.radian(e[t],e[p])*SuperMapAlgoPlot.PlottingUtil.RTOD,l=Math.acos((o*o+this.scaleValues[t]*this.scaleValues[t]-this.scaleValues[p]*this.scaleValues[p])/(2*o*this.scaleValues[t]))*SuperMapAlgoPlot.PlottingUtil.RTOD):(s=p,i=SuperMapAlgoPlot.PlottingUtil.radian(e[p],e[t])*SuperMapAlgoPlot.PlottingUtil.RTOD,l=Math.acos((o*o+this.scaleValues[p]*this.scaleValues[p]-this.scaleValues[t]*this.scaleValues[t])/(2*o*this.scaleValues[p]))*SuperMapAlgoPlot.PlottingUtil.RTOD);var n=i-l,a=i+l,r=n<0&&a>0||n>360||a>360;n=this.adjustAngle(n),a=this.adjustAngle(a);for(let t=this.angleRange[s].length-1;t>=0;t--)if(r){if(a>this.angleRange[s][t].End||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(a,this.angleRange[s][t].End)){this.angleRange[s].splice(t,1);continue}if(a>this.angleRange[s][t].Start&&(this.angleRange[s][t].Start=a),n<this.angleRange[s][t].Start||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(n,this.angleRange[s][t].Start)){this.angleRange[s].splice(t,1);continue}n<this.angleRange[s][t].End&&(this.angleRange[s][t].End=n)}else if(n<this.angleRange[s][t].Start&&a>this.angleRange[s][t].End)this.angleRange[s].splice(t,1);else if(n>this.angleRange[s][t].Start&&a<this.angleRange[s][t].End)this.angleRange[s].push({Start:this.angleRange[s][t].Start,End:n}),this.angleRange[s].push({Start:a,End:this.angleRange[s][t].End}),this.angleRange[s].splice(t,1);else{if(n>this.angleRange[s][t].End)continue;if(n>this.angleRange[s][t].Start&&(this.angleRange[s][t].End=n),a<this.angleRange[s][t].Start)continue;a<this.angleRange[s][t].End&&(this.angleRange[s][t].Start=a)}}else{if(this.scaleValues[t]<this.scaleValues[p]){this.angleRange[t][0].Start=0,this.angleRange[t][0].End=0;break}this.angleRange[p][0].Start=0,this.angleRange[p][0].End=0}}var p=[];for(let t=0;t<e.length;t++)if(0!==this.angleRange[t].length&&(0!==this.angleRange[t][0].Start||0!==this.angleRange[t][0].End))for(let o=this.angleRange[t].length-1;o>=0;o--){for(var u=this.adjustAngle(this.angleRange[t][o].Start),h=this.adjustAngle(this.angleRange[t][o].End);h<u;)h+=360;if(h-u==360)this.addCell(SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,[e[t],new SuperMapAlgoPlot.Point(e[t].x,e[t].y+this.scaleValues[t])]);else{var g=[],c=(h-u)/72;for(let o=u;o<h+c/2;o+=c){var y=e[t].x+this.scaleValues[t]*Math.cos(o*SuperMapAlgoPlot.PlottingUtil.DTOR),P=e[t].y+this.scaleValues[t]*Math.sin(o*SuperMapAlgoPlot.PlottingUtil.DTOR);g.push(new SuperMapAlgoPlot.Point(y,P))}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,g),p.push(g)}}for(var d=[];0!==p.length;){var S=p[0];p.splice(0,1),void 0!==(S=this.generatePolygon(p,S))&&d.push(S)}var f=[];for(let t=0;t<d.length;t++)f.push(d[t]);for(let t=f.length-1;t>=0;t--)for(let e=0;e<f[t].length;e++){for(let o in f)if(parseInt(o)!==t){var m=f[o];if(SuperMapAlgoPlot.PlottingUtil.ptIsInPolygon(m,f[t][e])){var L=t,M=parseInt(o);f[M].push(f[M][0]),f[L].push(f[L][0]),f[M]=f[M].concat(f[L]),f.splice(L,1);break}}if(!isNaN(L)&&!isNaN(M))break}for(let t=0;t<f.length;t++){var b={type:SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,positionPoints:f[t],style:{surroundLineFlag:!1,lineWidthLimit:!0,weight:0,strokeWidth:0}};this.components.splice(0,0,b)}for(let t=0;t<e.length;t++){var A=new SuperMapAlgoPlot.Point(e[t].x+this.scaleValues[t],e[t].y);A.isScalePoint=!0,A.tag=t,this.addScalePoint(A)}}}generatePolygon(t,e){if(0===t.length||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(e[0].x,e[e.length-1].x,1e-7)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(e[0].y,e[e.length-1].y,1e-7))return e;var o,i=e[e.length-1];for(let l=0;l<t.length;l++)if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l][0].x,i.x,1e-7)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l][0].y,i.y,1e-7)){if(e=e.concat(t[l]),t.splice(l,1),void 0!==(o=this.generatePolygon(t,e))&&0!==o.length)return o}else if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l][t[l].length-1].x,i.x,1e-7)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[l][t[l].length-1].y,i.y,1e-7)){for(let o=t[l].length-1;o>=0;o--)e.push(t[l][o]);if(t.splice(l,1),void 0!==(o=this.generatePolygon(t,e))&&0!==o.length)return o}}modifyPoint(t,e){if(!0===e.isScalePoint){if(t<0||t>=this.controlPoints.length)return;var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),i=SuperMapAlgoPlot.PlottingUtil.distance(o[t],e);this.scaleValues[t]=i}this.calculateParts()}adjustAngle(t){for(;t>360;)t-=360;for(;t<0;)t+=360;return t}getCircleLonLat(t,e){return null===this.map?2*this.getDefaultSubSymbolSize():this.map&&"undefined"!=typeof L&&void 0!==L.Map&&this.map instanceof L.Map?((o=this.map.latLngToLayerPoint(L.latLng(t.y,t.x))).x+=e,this.map.layerPointToLatLng(L.point(o.x,o.y)).lng-t.x):this.map&&"undefined"!=typeof SuperMap&&void 0!==SuperMap.Map&&this.map instanceof SuperMap.Map?((o=this.map.getPixelFromLonLat(new SuperMap.LonLat(t.x,t.y))).x+=e,this.map.getLonLatFromPixel(new SuperMap.Pixel(o.x,o.y)).lon-t.x):void 0;var o}};SuperMapAlgoPlot.FreeCurve=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.CLASS_NAME="SuperMapAlgoPlot.FreeCurve"}calculateParts(){if(this.init(),!(null==this.controlPoints||this.controlPoints.length<this.minEditPts)){this.scalePoints=[];var t=[];if(this.controlPoints.length<3)t.push(this.controlPoints[0]),t.push(this.controlPoints[1]);else{if(!this.isEdit){var e=this.getLonLatFromPixel(0,0),o=this.getLonLatFromPixel(100,100),i=Math.abs(e.lon-o.lon),l=this.reSample(this.controlPoints,i/50);l.length<3&&(l=this.controlPoints),this.controlPoints=[],this.controlPoints=this.controlPoints.concat(l)}var s=SuperMapAlgoPlot.PlottingUtil.computeBeizerPoints(this.isEdit,this.controlPoints,this.scaleValues);s.scalePoints=SuperMapAlgoPlot.PlottingUtil.clearSamePts(s.scalePoints),s.scaleValues=SuperMapAlgoPlot.PlottingUtil.clearSamePts(s.scaleValues),this.scaleValues=s.scaleValues;for(let t=0,e=s.scalePoints.length;t<e;t++){var n=s.scalePoints[t];n.isScalePoint=!0,n.tag=t,this.addScalePoint(n)}t=SuperMapAlgoPlot.PlottingUtil.clonePoints(s.beizerPoints)}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,t)}}modifyPoint(t,e){if(!0===e.isScalePoint){if(t<0||t>2*this.controlPoints.length-1)return;var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(2>o.length)return;var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),l=-1;l=t%2==0?Math.floor(t/2):Math.floor((t+1)/2);var s=(e.x-o[l].x)/i,n=(e.y-o[l].y)/i;this.scaleValues[2*t]=s,this.scaleValues[2*t+1]=n}this.calculateParts()}reSample(t,e){var o=[];if(null==t||e<0)return o;var i=t.length;if(i>2){var l=new SuperMapAlgoPlot.Point(0,0),s=0,n=0,a=0,r=2*Math.PI;l=t[0],o.push(l);var p=!1,u=!1,h=!1;for(let P=1;P<i;P++)if(n=Math.sqrt((t[P].y-l.y)*(t[P].y-l.y)+(t[P].x-l.x)*(t[P].x-l.x)),SuperMapAlgoPlot.PlottingUtil.equalFuzzy(0,n))p&&(l=t[P-1],P--,o.push(l),a=0,r=2*Math.PI,p=!1,u=!1,h=!1);else{var g=(t[P].x-l.x)/n,c=(t[P].y-l.y)/n;if(s=c>0||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(0,c)?Math.acos(g):2*Math.PI-Math.acos(g),r>2*Math.PI&&s+2*Math.PI<r?(s+=2*Math.PI,a<0&&(a+=2*Math.PI)):a<0&&s-2*Math.PI>a&&(s-=2*Math.PI,r>2*Math.PI&&(r-=2*Math.PI)),s>a&&s<r||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(0,s-a)||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(0,s-r)){var y=Math.atan(e/n);u?a<s-y&&(a=s-y):(u=!0,a=s-y),h?r>s+y&&(r=s+y):(h=!0,r=s+y),p=!0}else l=t[P-1],P--,o.push(l),a=0,r=2*Math.PI,p=!1,u=!1,h=!1}return o.push(t[i-1]),o}return o}reSampleByAngle(t,e){var o=[],i=t.length;if(null==t||i<=0||e<=0)return o;for(var l=t,s=i,n=!1;SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l[0].x,l[s-1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l[0].y,l[s-1].y);){if((s-=1)<=0)return o;n=!0}var a,r,p=[];for(a=0;a<s;a++)p.push(0);for(p[0]=1,p[s-1]=1,r=0,a=1;a<s-1;a++)if(SuperMapAlgoPlot.PlottingUtil.distance(l[r],l[a])>1e-10&&SuperMapAlgoPlot.PlottingUtil.distance(l[r],l[a+1])>1e-10){var u=180*SuperMapAlgoPlot.PlottingUtil.InnerAngle(l[a],l[r],l[a+1])/Math.PI;u>e&&u<180-e&&(p[a]=1,r++)}var h=0;for(a=0;a<s;a++)1==p[a]&&h++;if(h>0){for(n&&h++,o=[],r=0,a=0;a<s;a++)1==p[a]&&(o[r++]=l[a]);return n&&(o[r]=o[0]),o}return o}};SuperMapAlgoPlot.NodeChain=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(0),this.scaleValues[1]=.1),this.CLASS_NAME="SuperMapAlgoPlot.NodeChain"}destroy(){super.destroy()}calculateParts(){if(this.init(),this.controlPoints&&null!==this.controlPoints){var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,t),this.isEdit||(this.scaleValues[1]=.25*this.getSubSymbolScaleValue());var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t),o=e*this.scaleValues[0],i=e*this.scaleValues[1];if(0<this.subSymbols.length&&null!==this.subSymbols[0]&&void 0!==this.subSymbols[0])if(this.subSymbols[0].code>0)for(let e=0;e<t.length;e++){var l=new SuperMapAlgoPlot.Point(t[e].x,t[e].y+o);this.computeSubSymbol(this.subSymbols[0],l,2*i,0)}else this.addCircles(t,o,i);else this.addCircles(t,o,i);var s=new SuperMapAlgoPlot.Point(t[0].x,t[0].y+o);this.addScalePoint(s);var n=SuperMapAlgoPlot.PlottingUtil.circlePoint(s,i,i,90);this.addScalePoint(n)}}}addCircles(t,e,o){var i={surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fill:!0};for(let n=0;n<t.length;n++){var l=new SuperMapAlgoPlot.Point(t[n].x,t[n].y+e),s=this.getCirclePts(l,o);this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s,i)}}getCirclePts(t,e){var o=[];for(let l=0;l<=360;l+=12){var i=SuperMapAlgoPlot.PlottingUtil.circlePoint(t,e,e,l);o.push(i)}return o}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o)).length<this.minEditPts)return;var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o);if(0===t)this.scaleValues[0]=(e.y-o[0].y)/i;else if(1===t){var l=SuperMapAlgoPlot.PlottingUtil.distance(e,o[0]);this.scaleValues[1]=l/i}}this.calculateParts()}};SuperMapAlgoPlot.Runway=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.2),this.CLASS_NAME="SuperMapAlgoPlot.Runway"}destroy(){super.destroy()}calculateParts(){if(this.init(),this.controlPoints.length>=this.minEditPts){var t=this.controlPoints[0],e=this.controlPoints[1],o=SuperMapAlgoPlot.PlottingUtil.distance(t,e),i=this.scaleValues[0]*o,l=SuperMapAlgoPlot.PlottingUtil.parallel(this.controlPoints,i/2),s=SuperMapAlgoPlot.PlottingUtil.parallel(this.controlPoints,-i/2),n=180*SuperMapAlgoPlot.PlottingUtil.radian(t,e)/Math.PI,a=[];for(let e=n+90;e<=n+270;e+=10){var r=SuperMapAlgoPlot.PlottingUtil.circlePoint(t,i/2,i/2,e);a.push(r)}var p=[];for(let t=n-90;t<=n+90;t+=10){var u=SuperMapAlgoPlot.PlottingUtil.circlePoint(e,i/2,i/2,t);p.push(u)}var h=[];(h=(h=(h=(h=h.concat(a)).concat(s)).concat(p)).concat(l)).push(h[0]),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,h);var g=new SuperMapAlgoPlot.Point(a[0].x,a[0].y);this.addScalePoint(g)}}modifyPoint(t,e){if(!0===e.isScalePoint&&0==t){var o=SuperMapAlgoPlot.PlottingUtil.distance(e,this.controlPoints[0]),i=SuperMapAlgoPlot.PlottingUtil.distance(this.controlPoints[0],this.controlPoints[1]);this.scaleValues[0]=2*o/i}this.calculateParts()}};SuperMapAlgoPlot.CurveEight=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.CLASS_NAME="SuperMapAlgoPlot.CurveEight"}destroy(){super.destroy()}calculateParts(){if(this.init(),this.controlPoints&&null!==this.controlPoints&&!(this.minEditPts>this.controlPoints.length))if(2===this.controlPoints.length){let t=this.controlPoints[0].clone(),e=this.controlPoints[1].clone(),o=SuperMapAlgoPlot.PlottingUtil.distance(t,e)/2,i=180*SuperMapAlgoPlot.PlottingUtil.radian(t,e)/Math.PI,l=new SuperMapAlgoPlot.Point((t.x+e.x)/2,(t.y+e.y)/2),s=SuperMapAlgoPlot.PlottingUtil.circlePoint(l,o,o,i+90),n=SuperMapAlgoPlot.PlottingUtil.circlePoint(l,3*o,3*o,i+90);this.addCell(SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,[s,new SuperMapAlgoPlot.Point(s.x+o,s.y)]),this.addCell(SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,[n,new SuperMapAlgoPlot.Point(n.x+o,n.y)])}else{let n=this.controlPoints[0].clone(),a=this.controlPoints[1].clone(),r=this.controlPoints[2].clone(),p=0;p=SuperMapAlgoPlot.PlottingUtil.isRight(r,n,a)?180*SuperMapAlgoPlot.PlottingUtil.radian(a,n)/Math.PI+90:180*SuperMapAlgoPlot.PlottingUtil.radian(n,a)/Math.PI+90;let u=SuperMapAlgoPlot.PlottingUtil.distance(n,a)/2,h=new SuperMapAlgoPlot.Point((n.x+a.x)/2,(n.y+a.y)/2),g=SuperMapAlgoPlot.PlottingUtil.circlePoint(h,u,u,p),c=SuperMapAlgoPlot.PlottingUtil.plumbLineLen(r,n,a);if(c<=4*u){var t=SuperMapAlgoPlot.PlottingUtil.circlePoint(h,3*u,3*u,p);this.addCell(SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,[g,new SuperMapAlgoPlot.Point(g.x+u,g.y)]),this.addCell(SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,[t,new SuperMapAlgoPlot.Point(t.x+u,t.y)])}else{let t=SuperMapAlgoPlot.PlottingUtil.circlePoint(h,c-u,c-u,p),n=180*Math.acos(u/(c-2*u))/Math.PI,a=p-n,r=p-180+n,y=p-180-n+360;var e=[];for(let t=p+n-360;t<=a;t+=4){let o=SuperMapAlgoPlot.PlottingUtil.circlePoint(g,u,u,t);e.push(o)}var o=SuperMapAlgoPlot.PlottingUtil.circlePoint(g,u,u,a);e.push(o);var i=[];for(let e=r;e<y;e+=4){let o=SuperMapAlgoPlot.PlottingUtil.circlePoint(t,u,u,e);i.push(o)}var l=SuperMapAlgoPlot.PlottingUtil.circlePoint(t,u,u,y);i.push(l);var s=[];s=s.concat(e);for(let t=i.length-1;t>=0;t--)s.push(i[t]);this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s)}}}};SuperMapAlgoPlot.PathText=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.relLineText=t.relLineText?t.relLineText:0,this.showPathLine=!t.showPathLine||t.showPathLine,this.showPathLineArrow=!!t.showPathLineArrow&&t.showPathLineArrow,this.isCurve=!!t.isCurve&&t.isCurve,this.isAvoid=!!t.isAvoid&&t.isAvoid,this.textToLineDistance=t.textToLineDistance?t.textToLineDistance:0,this.CLASS_NAME="SuperMapAlgoPlot.PathText"}calculateParts(){if(this.init(),null!==this.controlPoints&&0!==this.controlPoints.length&&!(this.controlPoints.length<this.minEditPts)){SuperMap.Util.isArray(this.textContent)||(this.textContent=[this.textContent]);var t=[];if(t=this.isCurve?SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(this.controlPoints):SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),this.relLineText===SuperMapAlgoPlot.RelLineText.ONBOTHLINE){this.relLineText=SuperMapAlgoPlot.RelLineText.ONRIGHTLINE;var e=this.getTextPathPts(t,!1);this.computeText(e,this.textContent[0],t),this.relLineText=SuperMapAlgoPlot.RelLineText.ONLEFTLINE;var o=this.showPathLine;this.showPathLine=!1;var i=this.getTextPathPts(t,!0);this.textContent.length>1?this.computeText(i,this.textContent[1],t):this.computeText(i,this.textContent[0],t),this.relLineText=SuperMapAlgoPlot.RelLineText.ONBOTHLINE,this.showPathLine=o}else{var l=[];l=this.relLineText===SuperMapAlgoPlot.RelLineText.ONRIGHTLINE?this.getTextPathPts(t,!1):this.relLineText===SuperMapAlgoPlot.RelLineText.ONLEFTLINE?this.getTextPathPts(t,!0):t,this.computeText(l,this.textContent[0],t)}this.finish()}}getTextPathPts(t,e){t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t);var o=this.getLonLatDistanceFromPixel(this.textToLineDistance);if(0>=o)return SuperMapAlgoPlot.PlottingUtil.clonePoints(t);var i=SuperMapAlgoPlot.PlottingUtil.paraLine(t,o,e);return SuperMapAlgoPlot.PlottingUtil.clearSamePts(i)}computeText(t,e,o){if(!(t.length<2)){var i=e.length,l=t,s=l.length,n=0;for(let t=0;t<l.length-1;t++)n+=SuperMapAlgoPlot.PlottingUtil.distance(l[t],l[t+1]);var a={index:-1,pt:l[0]},r=0,p=0,u=0,h=180/Math.PI,g=this.getTextBounds(this.style,e),c="lm";c=this.relLineText===SuperMapAlgoPlot.RelLineText.ONLINE?"lm":this.relLineText===SuperMapAlgoPlot.RelLineText.ONLEFTLINE?"lb":"lt",(r=(n-g.getWidth())/2)<=0&&(r=0);var y=[];for(let t=0;t<i;t++){var P=this.getTextBounds(this.style,e.charAt(t));y.push(new SuperMap.Bounds(0,-g.getHeight(),P.getWidth(),0))}for(var d,S=!1,f=!1,m=0,L=0,M=[];p<=r&&u<s-1;)u++,p+=SuperMapAlgoPlot.PlottingUtil.distance(l[u-1],l[u]);var b=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(l,r),A=SuperMapAlgoPlot.PlottingUtil.radian(l[u-1],l[u])*h;A>180&&(A-=360),A<-180&&(A+=360),A>90&&A<=180?(m=-180,S=!0,f=!0):A>-180&&A<-90&&(m=180,S=!0,f=!0),0!=m?this.relLineText===SuperMapAlgoPlot.RelLineText.ONLINE||(c=this.relLineText===SuperMapAlgoPlot.RelLineText.ONLEFTLINE?"lt":"lb"):this.relLineText===SuperMapAlgoPlot.RelLineText.ONLINE||(c=this.relLineText===SuperMapAlgoPlot.RelLineText.ONLEFTLINE?"lb":"lt");for(let t=0;t<i&&!(r>n);t++){var T=t;for(f&&(T=i-t-1),L=(d=y[T]).getWidth(),S&&(r+=L);p<=r&&u<s-1;)u++,p+=SuperMapAlgoPlot.PlottingUtil.distance(l[u-1],l[u]);var v=(A=SuperMapAlgoPlot.PlottingUtil.radian(l[u-1],l[u])*h)+m;if((a=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(l,r)).index<0)break;d.add(a.pt.x,a.pt.y);var _=e.charAt(T),x={};x.type=SuperMapAlgoPlot.SymbolType.TEXTSYMBOL,x.textContent=_,x.positionPoints=[a.pt],x.style={surroundLineFlag:!1,labelAlign:c,labelRotation:-v},M.push(x),S||(r+=L)}var O=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(l,r);if(this.showPathLine){if(this.relLineText===SuperMapAlgoPlot.RelLineText.ONLINE&&this.isAvoid){if(b.index>=0){var w=[];for(let t=0;t<=b.index;t++)w.push(o[t]);w.push(b.pt),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,w)}if(O.index>=0){var I=[];I.push(O.pt);for(let t=O.index+1;t<o.length;t++)I.push(o[t]);this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,I)}}else this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o);this.showPathLineArrow&&this.addArrow(o)}for(let t=0;t<M.length;t++)this.components.push(M[t])}}addArrow(t){if(t.length<2)return t;var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(this.controlPoints)*(this.isEdit,null==this.getSubSymbolScaleValue()?.05:.5*this.getSubSymbolScaleValue()),o=t[t.length-1];if(t.length>2){var i=-1;for(let l=t.length-2;l>=0;l--)if(e<SuperMapAlgoPlot.PlottingUtil.distance(o,t[l])){i=l;break}t.splice(i+1,t.length-i),t.push(o)}var l=t[t.length-2],s=t[t.length-1],n=e;if(void 0===l)return t;if(!(SuperMapAlgoPlot.PlottingUtil.distance(l,s)<e)){var a=SuperMapAlgoPlot.PlottingUtil.radian(l,s)*SuperMapAlgoPlot.PlottingUtil.RTOD,r=SuperMapAlgoPlot.PlottingUtil.circlePoint(s,n,n,a+157.5),p=SuperMapAlgoPlot.PlottingUtil.circlePoint(s,n,n,a+202.5);this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,[r,t[t.length-1],p],{surroundLineFlag:!1,fillLimit:!0,lineTypeLimit:!0,fill:!0})}}};SuperMapAlgoPlot.LineMarking=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.islocationCircle=!!t.islocationCircle&&t.islocationCircle,this.textBoxType=t.textBoxType?t.textBoxType:SuperMapAlgoPlot.TextBoxType.RECTBOX,0===this.scaleValues.length&&(this.scaleValues.push(.126),this.scaleValues.push(0),this.scaleValues.push(0),this.scaleValues.push(4)),this.CLASS_NAME="SuperMapAlgoPlot.LineMarking"}destroy(){this.islocationCircle=null,this.textBoxType=null,super.destroy()}calculateParts(){this.init(),this.controlPoints=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),this.controlPoints=SuperMapAlgoPlot.PlottingUtil.clearSamePts(this.controlPoints);var t=this.scaleValues[0];if(!(t<0||t>1)){if(t=(1-t)/2,this.controlPoints.length>=this.minEditPts){var e,o,i,l;this.scalePoints=[];var s=[];this.controlPoints[0].x<this.controlPoints[1].x?(e=this.controlPoints[0].x,i=this.controlPoints[1].x):(e=this.controlPoints[1].x,i=this.controlPoints[0].x),this.controlPoints[0].y<this.controlPoints[1].y?(l=this.controlPoints[0].y,o=this.controlPoints[1].y):(l=this.controlPoints[1].y,o=this.controlPoints[0].y),s.push(new SuperMapAlgoPlot.Point(e,l)),s.push(new SuperMapAlgoPlot.Point(e,o)),s.push(new SuperMapAlgoPlot.Point(i,o)),s.push(new SuperMapAlgoPlot.Point(i,l)),!1===this.isEdit&&(this.scaleValues[1]=e+.1*(i-e),this.scaleValues[2]=l+-.3*(o-l));var n=this.getAction(this.scaleValues[1],this.scaleValues[2],e,o,i,l),a=new SuperMapAlgoPlot.Point(this.scaleValues[1],this.scaleValues[2]);if(this.textBoxType===SuperMapAlgoPlot.TextBoxType.RECTBOX||this.textBoxType===SuperMapAlgoPlot.TextBoxType.LINEBOX){var r=[];switch(n){case 0:this.addScalePoint(a);break;case 1:this.addScalePoint(a),r.push(new SuperMapAlgoPlot.Point(e,o-(o-l)*t)),r.push(a);break;case 2:this.addScalePoint(a),r.push(new SuperMapAlgoPlot.Point(i-(i-e)*t,o)),r.push(a);break;case 3:this.addScalePoint(a),r.push(new SuperMapAlgoPlot.Point(i,o-(o-l)*t)),r.push(a);break;case 4:this.addScalePoint(a),r.push(new SuperMapAlgoPlot.Point(i-(i-e)*t,l)),r.push(a)}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,r)}if(0!==s.length&&this.textBoxType===SuperMapAlgoPlot.TextBoxType.RECTBOX)this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s);else if(0!==s.length&&this.textBoxType===SuperMapAlgoPlot.TextBoxType.LINEBOX){var p=[];switch(n){case 0:break;case 1:p=(p=p.concat(s[0])).concat(s[1]);break;case 2:p=(p=p.concat(s[1])).concat(s[2]);break;case 3:p=(p=p.concat(s[2])).concat(s[3]);break;case 4:p=(p=p.concat(s[3])).concat(s[0])}0!==p.length?this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,p):this.addCell(SuperMapAlgoPlot.SymbolType.RECTANGLESYMBOL,this.controlPoints)}this.islocationCircle&&this.addCell(SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL,[a,new SuperMapAlgoPlot.Point(a.x-.05,a.y-.05)]),this.annotationContent(e,o,i,l)}else this.controlPoints.length>=2&&this.controlPoints.length<this.minEditPts&&this.addCell(SuperMapAlgoPlot.SymbolType.RECTANGLESYMBOL,this.controlPoints);this.finish()}}modifyPoint(t,e){!0===e.isScalePoint&&(this.scaleValues[1]=e.x,this.scaleValues[2]=e.y),this.calculateParts()}getAction(t,e,o,i,l,s){var n=(i-s)/(l-o);return t<o?e>i?Math.abs((e-i)/(t-o))>n?2:1:e<s&&Math.abs((e-s)/(t-o))>n?4:1:t>l?e>i?Math.abs((e-i)/(t-l))>n?2:3:e<s&&Math.abs((e-s)/(t-l))>n?4:3:e>i?2:e<s?4:0}};SuperMapAlgoPlot.LineRelation=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.subSectionCount=t.subSectionCount?t.subSectionCount:10,this.CLASS_NAME="SuperMapAlgoPlot.LineRelation"}destroy(){this.subSectionCount=null,super.destroy()}calculateParts(){this.init();for(let t=0;t<this.controlPoints.length;t++)this.controlPoints[t].tag=t;var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);null!==t&&t.length>=this.minEditPts&&this.computeLine(t)}computeLine(t){this.components.length=0;var e=t[0],o=t[t.length-1];this.subSectionCount<=1&&(this.subSectionCount=10);var i=SuperMapAlgoPlot.PlottingUtil.distance(e,o)/(2*this.subSectionCount-1);if(this.lineRelationType===SuperMapAlgoPlot.LineRelationType.SOLID)this.addCell(24,t,{surroundLineFlag:!1});else if(this.lineRelationType===SuperMapAlgoPlot.LineRelationType.DASH)for(let t=0;t<this.subSectionCount;t++){let l=SuperMapAlgoPlot.PlottingUtil.findPoint(e,o,2*t*i,0),s=SuperMapAlgoPlot.PlottingUtil.findPoint(e,o,(2*t+1)*i,0);this.addCell(24,[l,s],{surroundLineFlag:!1})}else if(this.lineRelationType===SuperMapAlgoPlot.LineRelationType.ARROW)for(let t=0;t<this.subSectionCount;t++){let l=SuperMapAlgoPlot.PlottingUtil.findPoint(e,o,2*t*i,0),s=SuperMapAlgoPlot.PlottingUtil.findPoint(e,o,(2*t+1)*i,0),n=SuperMapAlgoPlot.PlottingUtil.findPoint(s,l,i,60),a=SuperMapAlgoPlot.PlottingUtil.findPoint(s,l,i,-60);this.addCell(24,[n,s,a],{surroundLineFlag:!1})}}};SuperMapAlgoPlot.PolygonRegion=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),void 0===this.scaleValues[0]&&(this.scaleValues[0]=0),void 0===this.scaleValues[1]&&(this.scaleValues[1]=0),this.CLASS_NAME="SuperMapAlgoPlot.PolygonRegion"}destroy(){super.destroy()}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(null!=(t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t))&&t.length>=this.minEditPts){if(this.addCell(32,t,{surroundLineFlag:!1}),this.textContent&&null!=this.textContent&&this.textContent.length>0){var e=[];this.scaleValues[1]>t.length&&(this.scaleValues[1]=0);var o={labelRotation:0,surroundLineFlag:!1,labelAlign:"lt"};if(0===this.scaleValues[1])e=[SuperMapAlgoPlot.PlottingUtil.getPolygonCenterPt(t)];else{var i=null,l=null;this.scaleValues[1]===t.length?(i=t[t.length-1],l=t[0]):(i=t[this.scaleValues[1]-1],l=t[this.scaleValues[1]]),o.labelRotation=-SuperMapAlgoPlot.PlottingUtil.radian(i,l)/Math.PI*180;var s=this.scaleValues[0]*SuperMapAlgoPlot.PlottingUtil.distance(i,l);e=[SuperMapAlgoPlot.PlottingUtil.findPoint(i,l,s,0)]}this.addCell(34,e,o,this.textContent);var n=new SuperMapAlgoPlot.Point(e[0].x,e[0].y);n.isScalePoint=!0,n.tag=0,this.scalePoints=[],this.addScalePoint(n)}}else this.controlPoints.length>=2&&this.controlPoints.length<this.minEditPts&&this.calAssistantLine()}modifyPoint(t,e){if(!0===e.isScalePoint){var o=0,i=SuperMapAlgoPlot.PlottingUtil.distance(e,this.controlPoints[0]);for(let t=1;t<this.controlPoints.length;t++){var l=SuperMapAlgoPlot.PlottingUtil.distance(e,this.controlPoints[t]);l<i&&(i=l,o=t)}var s=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);(s=SuperMapAlgoPlot.PlottingUtil.clearSamePts(s)).push(s[0].clone());var n=SuperMapAlgoPlot.PlottingUtil.computePointToLineMinDis(e,s);if(-1===n.minDis)this.scaleValues[1]=o+1,this.offsetX=0,this.offsetY=0;else{var a=SuperMapAlgoPlot.PlottingUtil.projectPoint(e,s[n.index],s[n.index+1]),r=SuperMapAlgoPlot.PlottingUtil.distance(e,a),p=SuperMapAlgoPlot.PlottingUtil.getPolygonCenterPt(this.controlPoints),u=SuperMapAlgoPlot.PlottingUtil.distance(e,p);if(u<r&&u<i)this.scaleValues[1]=0,this.scaleValues[0]=0;else if(i<r&&i<u)this.scaleValues[1]=o+1,this.scaleValues[0]=0;else if(r<i&&r<u){this.scaleValues[1]=n.index+1;var h=null,g=null;this.scaleValues[1]===this.controlPoints.length?(h=this.controlPoints[this.controlPoints.length-1],g=this.controlPoints[0]):(h=this.controlPoints[this.scaleValues[1]-1],g=this.controlPoints[this.scaleValues[1]]);var c=SuperMapAlgoPlot.PlottingUtil.distance(a,h),y=SuperMapAlgoPlot.PlottingUtil.distance(h,g);this.scaleValues[0]=c/y}}}this.calculateParts()}parseSymbolData(){super.parseSymbolData(),this.symbolData&&(this.scaleValues[1]=this.symbolData.annotationPosition)}setSymbolData(){super.setSymbolData(),this.symbolData&&(this.symbolData.annotationPosition=this.scaleValues[1])}};SuperMapAlgoPlot.Wire=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.05),this.CLASS_NAME="SuperMapAlgoPlot.Wire"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){this.isEdit||(this.scaleValues[0]=2*this.getSubSymbolScaleValue());var e=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(t);e=SuperMapAlgoPlot.PlottingUtil.clearSamePts(e);var o=SuperMapAlgoPlot.PlottingUtil.polylineDistance(e);this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,e);var i=o*this.scaleValues[0],l=o*this.scaleValues[0]/2,s=SuperMapAlgoPlot.PlottingUtil.clonePoints(e),n=parseInt((o-l)/i);for(let t=0;t<=n&&!(l+i*t>o);t++){var a=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(s,l+i*t);if(-1!==a.index){var r=new SuperMapAlgoPlot.Point(a.pt.x,a.pt.y),p=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(i/2,e[a.index],r);this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[p.pntLeft,p.pntRight])}}this.finish()}}};SuperMapAlgoPlot.LinearArrow=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(15),this.scaleValues.push(7.5),this.scaleValues.push(0),this.scaleValues.push(15),this.scaleValues.push(7.5),this.scaleValues.push(0)),this.CLASS_NAME="SuperMapAlgoPlot.LinearArrow"}calculateParts(){if(this.init(),!(null==this.controlPoints||this.controlPoints.length<this.minEditPts)){var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){if(this.scalePoints=[],this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,t),!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[0],0)&&!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[1],0)){let e=this.scaleValues[0]*(this.style.weight||this.style.strokeWidth),o=this.scaleValues[1]*(this.style.weight||this.style.strokeWidth),i=this.getLonLatDistanceFromPixel(e),l=this.getLonLatDistanceFromPixel(o),s=SuperMapAlgoPlot.PlottingUtil.findPointInLine(t[0],t[1],i),n=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(l,t[1],s),a=[];if(a.push(n.pntLeft),a.push(t[0]),a.push(n.pntRight),this.addScalePoint(n.pntLeft,0),SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[2],0))this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,a,{fillLimit:!0,fill:!0}),this.addScalePoint(s,1);else if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[2],1))this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,a),this.addScalePoint(t[0],1);else{let e=i*this.scaleValues[2],o=SuperMapAlgoPlot.PlottingUtil.findPointInLine(s,t[0],e);a.push(o),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,a,{fillLimit:!0,fill:!0}),this.addScalePoint(o,1)}}if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[3],0)&&!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[4],0)){let e=this.scaleValues[3]*(this.style.weight||this.style.strokeWidth),o=this.scaleValues[4]*(this.style.weight||this.style.strokeWidth),i=this.getLonLatDistanceFromPixel(e),l=this.getLonLatDistanceFromPixel(o),s=SuperMapAlgoPlot.PlottingUtil.findPointInLine(t[1],t[0],i),n=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(l,t[0],s),a=[];if(a.push(n.pntLeft),a.push(t[1]),a.push(n.pntRight),this.addScalePoint(n.pntLeft,2),SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[5],0))this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,a,{fillLimit:!0,fill:!0}),this.addScalePoint(s,3);else if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.scaleValues[5],1))this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,a),this.addScalePoint(t[1],3);else{let e=i*this.scaleValues[5],o=SuperMapAlgoPlot.PlottingUtil.findPointInLine(s,t[1],e);a.push(o),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,a,{fillLimit:!0,fill:!0}),this.addScalePoint(o,3)}}this.finish()}}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o),0===t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,o[0],o[1]);if(t.isOnline){let i=this.scaleValues[0]*(this.style.weight||this.style.strokeWidth),l=this.getLonLatDistanceFromPixel(i),s=l*this.scaleValues[2],n=SuperMapAlgoPlot.PlottingUtil.findPointInLine(o[0],o[1],l),a=SuperMapAlgoPlot.PlottingUtil.findPointInLine(n,o[0],s);l=SuperMapAlgoPlot.PlottingUtil.distance(o[0],t.projectPoint),i=this.getPixelDistanceFromLonLat(l),this.scaleValues[0]=i/(this.style.weight||this.style.strokeWidth);let r=SuperMapAlgoPlot.PlottingUtil.distance(e,t.projectPoint),p=this.getPixelDistanceFromLonLat(r);this.scaleValues[1]=p/(this.style.weight||this.style.strokeWidth),s=SuperMapAlgoPlot.PlottingUtil.distance(a,t.projectPoint),this.scaleValues[2]=s/l}}else if(1===t){let t=this.scaleValues[0]*(this.style.weight||this.style.strokeWidth),i=this.getLonLatDistanceFromPixel(t),l=SuperMapAlgoPlot.PlottingUtil.findPointInLine(o[0],o[1],i),s=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,l,o[0]);if(s.isOnline){let t=SuperMapAlgoPlot.PlottingUtil.distance(l,s.projectPoint);this.scaleValues[2]=t/i,this.scaleValues[2]<0?this.scaleValues[2]=0:this.scaleValues[2]>1&&(this.scaleValues[2]=1)}}else if(2===t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,o[0],o[1]);if(t.isOnline){let i=this.scaleValues[3]*(this.style.weight||this.style.strokeWidth),l=this.getLonLatDistanceFromPixel(i),s=l*this.scaleValues[5],n=SuperMapAlgoPlot.PlottingUtil.findPointInLine(o[1],o[0],l),a=SuperMapAlgoPlot.PlottingUtil.findPointInLine(n,o[1],s);l=SuperMapAlgoPlot.PlottingUtil.distance(o[1],t.projectPoint),i=this.getPixelDistanceFromLonLat(l),this.scaleValues[3]=i/(this.style.weight||this.style.strokeWidth);let r=SuperMapAlgoPlot.PlottingUtil.distance(e,t.projectPoint),p=this.getPixelDistanceFromLonLat(r);this.scaleValues[4]=p/(this.style.weight||this.style.strokeWidth),s=SuperMapAlgoPlot.PlottingUtil.distance(a,t.projectPoint),this.scaleValues[5]=s/l}}else if(3===t){let t=this.scaleValues[3]*(this.style.weight||this.style.strokeWidth),i=this.getLonLatDistanceFromPixel(t),l=SuperMapAlgoPlot.PlottingUtil.findPointInLine(o[1],o[0],i),s=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,l,o[1]);if(s.isOnline){let t=SuperMapAlgoPlot.PlottingUtil.distance(l,s.projectPoint);this.scaleValues[5]=t/i,this.scaleValues[5]<0?this.scaleValues[5]=0:this.scaleValues[5]>1&&(this.scaleValues[5]=1)}}}this.calculateParts()}};SuperMapAlgoPlot.Polybezier=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t)}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){this.isEdit||(this.scaleValues=[]),this.scalePoints=[];var e=[];if(t.length<3)e.push(t[0]),e.push(t[1]);else{var o=SuperMapAlgoPlot.PlottingUtil.computeBeizerPoints(this.isEdit,t,this.scaleValues);this.scaleValues=o.scaleValues;for(let t=0;t<o.scalePoints.length;t++)this.addScalePoint(o.scalePoints[t]);e=o.beizerPoints}SuperMapAlgoPlot.PlottingUtil.clearSamePts(e),e.length<=0||(this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,e),this.finish())}}computeScaleValues(t,e){if(!0===e.isScalePoint){if(t<0||t>2*this.controlPoints.length-1)return;var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o),this.minEditPts>o.length)return;var i=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(o);i=SuperMapAlgoPlot.PlottingUtil.clearSamePts(i);var l=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),s=SuperMapAlgoPlot.PlottingUtil.polylineDistance(i);if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l,0)||SuperMapAlgoPlot.PlottingUtil.equalFuzzy(s,0))return;var n=-1;n=t%2==0?Math.floor(t/2):Math.floor((t+1)/2);var a=(e.x-o[n].x)/l,r=(e.y-o[n].y)/l;this.scaleValues[2*t]=a,this.scaleValues[2*t+1]=r}}};SuperMapAlgoPlot.NewPie=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.CLASS_NAME="SuperMapAlgoPlot.NewPie"}destroy(){super.destroy()}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=this.minEditPts){var e=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]),o=SuperMapAlgoPlot.PlottingUtil.radian(t[0],t[1]),i=SuperMapAlgoPlot.PlottingUtil.radian(t[0],t[2]),l=Math.abs(i-o)/72,s=[];s.push(t[0]),(s=s.concat(SuperMapAlgoPlot.Primitives.getArcSpatialData(t[0],e,e,0,o,i,l))).push(t[0]),0!==s.length&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,s)}}};SuperMapAlgoPlot.NewArc=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.CLASS_NAME="SuperMapAlgoPlot.NewArc"}destroy(){super.destroy()}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=this.minEditPts){var e=SuperMapAlgoPlot.PlottingUtil.distance(t[0],t[1]),o=SuperMapAlgoPlot.PlottingUtil.radian(t[0],t[1]),i=SuperMapAlgoPlot.PlottingUtil.radian(t[0],t[2]),l=Math.abs(i-o)/72,s=SuperMapAlgoPlot.Primitives.getArcSpatialData(t[0],e,e,0,o,i,l);0!==s.length&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,s)}}};SuperMapAlgoPlot.AlgoSymbol1001=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.1),this.scaleValues.push(.2),this.scaleValues.push(0),this.scaleValues.push(.3),this.scaleValues.push(.08)),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1001"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),e=(t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length;if(e>=this.minEditPts){this.scalePoints=[];var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),i=!1;void 0!==o[0].z&&(i=!0);var l=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(t,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_PARALLEL),s=l.arrowTouLen,n=l.leftBodyPts,a=l.rightBodyPts,r=[];r.push(n[n.length-1]),r.push(a[a.length-1]);var p=[];p.push(this.scaleValues[3]),p.push(this.scaleValues[4]),p.push(this.scaleValues[0]),p.push(this.scaleValues[1]);var u=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts(t,r,p,s,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITHOUT_EAR),h=[];if(i){var g=[],c=[],y=[];for(let t=0;t<e-1;t++)c.push({x:n[t].x,y:n[t].y,z:o[t].z}),y.push({x:a[t].x,y:a[t].y,z:o[t].z});var P={x:o[e-2].x,y:o[e-2].y,z:o[e-2].z},d={x:o[e-1].x,y:o[e-1].y,z:o[e-1].z},S=this.ComputeZValue(n[e-1],d,P);c.push({x:n[e-1].x,y:n[e-1].y,z:S});var f=this.ComputeZValue(a[e-1],d,P);y.push({x:a[e-1].x,y:a[e-1].y,z:f});for(let t=0;t<u.length;t++){var m=this.ComputeZValue(u[t],d,P);g.push({x:u[t].x,y:u[t].y,z:m})}h=(h=h.concat(c)).concat(g);for(let t=y.length-1;t>=0;t--)h.push(y[t]);let t=new SuperMapAlgoPlot.Point((r[0].x+r[1].x)/2,(r[0].y+r[1].y)/2),i=new SuperMapAlgoPlot.Point(t.x,t.y);i.isScalePoint=!0,i.tag=0,this.addScalePoint(i);let l=new SuperMapAlgoPlot.Point(n[n.length-1].x,n[n.length-1].y);l.isScalePoint=!0,l.tag=1,this.addScalePoint(l);let s=new SuperMapAlgoPlot.Point(u[0].x,u[0].y);s.isScalePoint=!0,s.tag=2,this.addScalePoint(s);for(let t=0;t<this.scalePoints.length;t++){let e=new SuperMapAlgoPlot.Point(this.scalePoints[t].x,this.scalePoints[t].y);this.scalePoints[t].z=this.ComputeZValue(e,d,P)}}else{h=(h=h.concat(n)).concat(u);for(let t=a.length-1;t>=0;t--)h.push(a[t]);let t=new SuperMapAlgoPlot.Point((r[0].x+r[1].x)/2,(r[0].y+r[1].y)/2),e=new SuperMapAlgoPlot.Point(t.x,t.y);e.isScalePoint=!0,e.tag=0,this.addScalePoint(e);let o=new SuperMapAlgoPlot.Point(n[n.length-1].x,n[n.length-1].y);o.isScalePoint=!0,o.tag=1,this.addScalePoint(o);let i=new SuperMapAlgoPlot.Point(u[0].x,u[0].y);i.isScalePoint=!0,i.tag=2,this.addScalePoint(i)}this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,h,{surroundLineFlag:!1,lineWidthLimit:!0,strokeWidth:0,weight:0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,h)}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=new SuperMapAlgoPlot.Point(this.scalePoints[0].x,this.scalePoints[0].y),i=new SuperMapAlgoPlot.Point(this.scalePoints[1].x,this.scalePoints[1].y),l=new SuperMapAlgoPlot.Point(this.scalePoints[2].x,this.scalePoints[2].y),s=this.scaleValues[0],n=SuperMapAlgoPlot.PlottingUtil.polylineDistance(this.controlPoints),a=n*s;if(0==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,this.controlPoints[this.controlPoints.length-2],this.controlPoints[this.controlPoints.length-1]),o=t.projectPoint;if(t.isOnline){let t=SuperMapAlgoPlot.PlottingUtil.distance(o,this.controlPoints[this.controlPoints.length-1]);this.scaleValues[0]=t/n}}else if(1==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,i,l).projectPoint,s=SuperMapAlgoPlot.PlottingUtil.distance(t,o);this.scaleValues[1]=s/a}else if(2==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,this.controlPoints[1],l).projectPoint,i=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(t,o,this.controlPoints[1]),s=i.projectPoint,n=SuperMapAlgoPlot.PlottingUtil.distance(s,o);!0===i.inOnline?this.scaleValues[4]=-n/a:this.scaleValues[4]=n/a}}this.calculateParts()}};SuperMapAlgoPlot.AlgoSymbol1002=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.MIN_GEOPT_COUNT=2,this.MAX_GEOPT_COUNT=1024,this.SV1_defaultATLenDivABLen=0,this.SV2_defaultAYPosScale=.65,this.SV_AJCtrl=.6,this.SV_ArrowWoCtrl=.6,this.SV2_DefaultAJWidDiviedByATLen=.148,this.SV3_DefaultAEWidDividedByATLen=.4,this.SV4_DefaultAELenDividedByATLen=.3,this.SV_ATScaleParameter=1.25,this.SV_ATLenDividedByATWid=1.35,this.SV_ATWidDividedByArrowWeiWid=.5,this.AB_VERTEX_COUNT=4,this.MIN_PTCOUNT_PERARROW=3,this.ATL_DIV_AWW=.7,this.ATL_DIV_ABL=.12,this.ATL_DIV_ABL_1=.18,this.DEFAULT_ARROW_TAIL_POS=.12,this.DUOJIANTOU_TAIL_RATE_1=8,this.DUOJIANTOU_TAIL_RATE_2=3,this.DUOJIANTOU_TAIL_RATE_3=.6,this.AB_CTRLPT_RATE1=0,this.AB_CTRLPT_RATE2=3,this.AB_CTRLPT_RATE3=.5,this.MIN_SCALEVALUE=.1,this.MAX_SCALEVALUE=1,this.m_scalePoints=null,this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1002"}calculateParts(){this.init(),this.m_scalePoints=[];var t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<this.minEditPts)){var e=this.operateCtrlPts(t),o=e.length,i=Math.floor(o/this.MIN_PTCOUNT_PERARROW),l=this.scaleValues.length;if(l<2*i-1){0==l&&(this.scaleValues.push(this.SV1_defaultATLenDivABLen),l++);var s=2*i-1-l;for(let t=0;t<s;t+=2)this.scaleValues.splice(l/2+1,0,this.SV1_defaultATLenDivABLen),this.scaleValues.splice(this.scaleValues.length,0,this.SV2_defaultAYPosScale)}else if(l>2*i-1){for(let t=0;t<i;t++)this.scaleValues.push(this.SV1_defaultATLenDivABLen);for(let t=0;t<i-1;t++)this.scaleValues.push(this.SV2_defaultAYPosScale)}var n=this.arrowMeshs(e);SuperMapAlgoPlot.PlottingUtil.clearSamePts(n.shapePts);var a=!1;if(void 0!==t[0].z&&(a=!0),a){var r=this.operateCtrlPts3D(t),p=n.arrLeftPts2D,u=n.arrRightPts2D,h=n.arrHeadPts2D;if(i!=p.length&&i!=u.length&&i!=h.length)return!1;var g=[];for(let t=0;t<i;t++){var c=[];for(let e=3*t;e<3*(t+1)&&e<r.length;e++)c.push(r[e]);g.push(c)}var y=[],P=[],d=[];for(let t=0;t<i;t++)if(!(2>g[t].length)){var S=p[t][p[t].length-1],f=u[t][0],m=new SuperMapAlgoPlot.Point(.5*(S.x+f.x),.5*(S.y+f.y)),L=g[t][g[t].length-1],M=g[t][g[t].length-2],b=this.ComputeZValue(m,L,M),A={x:m.x,y:m.y,z:b},T=[],v=[];for(let e=0;e<g[t].length-1;e++)if(0==t)v.push(g[t][e]);else{let o={x:g[t][e].x,y:g[t][e].y,z:.5*(g[t][e].z+g[t-1][e].z)};v.push(o)}v.push(A),this.ComputeBeizerZValueByDis(v,p[t],T),y.push(T),T=[];var _=[];_.push(A);for(let e=g[t].length-2;e>=0;e--)if(t==i-1)_.push(g[t][e]);else{let o={x:g[t][e].x,y:g[t][e].y,z:.5*(g[t][e].z+g[t+1][e].z)};_.push(o)}this.ComputeBeizerZValueByDis(_,u[t],T),P.push(T),T=[];var x=h[t];for(let t=0;t<x.length;t++){let e=this.ComputeZValue(x[t],L,M);T.push({x:x[t].x,y:x[t].y,z:e})}d.push(T)}var O=[];for(let t=0;t<i;t++)O=(O=(O=O.concat(y[t])).concat(d[t])).concat(P[t]);return SuperMapAlgoPlot.PlottingUtil.clearSamePts(O),n.shapePts.length>0&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,O,{surroundLineFlag:!1}),this.scalePoints=this.scalePoints.concat(this.m_scalePoints),!0}n.shapePts.length>0&&(this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,n.shapePts,{surroundLineFlag:!1,lineWidthLimit:!0,strokeWidth:0,weight:0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,n.shapePts,{surroundLineFlag:!1})),this.scalePoints=[];for(let t=0;t<this.m_scalePoints.length;t++)this.m_scalePoints[t].isScalePoint=!0,this.m_scalePoints[t].tag=t,this.addScalePoint(this.m_scalePoints[t])}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=this.operateCtrlPts(this.controlPoints),i=o.length,l=Math.floor(i/this.MIN_PTCOUNT_PERARROW),s=0;if(t<l){var n=[],a=t*this.MIN_PTCOUNT_PERARROW;n[0]=o[a],n[1]=o[a+1],n[2]=o[a+2];var r=SuperMapAlgoPlot.PlottingUtil.polylineDistance(n),p=new SuperMapAlgoPlot.Point(0,0),u=new SuperMapAlgoPlot.Point(0,0),h=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(this.AB_CTRLPT_RATE1,this.AB_CTRLPT_RATE2,n[0],n[1],n[2],p,u),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(this.AB_CTRLPT_RATE3,n[2],n[1],u,h),s=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(n[2],h,e).dLen1/(this.SV4_DefaultAELenDividedByATLen+1)/r}else{var g=[],c=[],y=(t-l)*this.MIN_PTCOUNT_PERARROW;g[0]=o[y],g[1]=o[y+1],g[2]=o[y+2];var P=(t-l+1)*this.MIN_PTCOUNT_PERARROW;c[0]=o[P],c[1]=o[P+1],c[2]=o[P+2];var d=new SuperMapAlgoPlot.Point(0,0),S=new SuperMapAlgoPlot.Point(0,0),f=new SuperMapAlgoPlot.Point(0,0);d.x=.5*(g[2].x+c[2].x),S.x=.5*(g[1].x+c[1].x),f.x=.5*(g[0].x+c[0].x),d.y=.5*(g[2].y+c[2].y),S.y=.5*(g[1].y+c[1].y),f.y=.5*(g[0].y+c[0].y);var m=SuperMapAlgoPlot.PlottingUtil.distance(d,S),L=SuperMapAlgoPlot.PlottingUtil.distance(f,S);let i=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(d,S,e),n=i.dLen1;s=n<m?n/(m+L):((n=(i=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(S,f,e)).dLen1)+m)/(m+L)}s>this.MAX_SCALEVALUE?s=this.MAX_SCALEVALUE:s<this.MIN_SCALEVALUE&&(s=this.MIN_SCALEVALUE),this.scaleValues[t]=s}this.calculateParts()}arrowMeshs(t){var e=[],o=[],i=[],l=new SuperMapAlgoPlot.Path2D,s=t.length,n=Math.floor(s/this.MIN_PTCOUNT_PERARROW),a=this.generateAWWidth(n,t),r=[],p=[],u=0,h=0,g=0,c=[];for(h=0,g=0;h<n;h++,g+=this.MIN_PTCOUNT_PERARROW){c[0]=t[g],c[1]=t[g+1],c[2]=t[g+2],u=this.scaleValues[h];var y=this.generateArrowBodyPts(c,a[h],u);u=y.dATLenDivABLen,r[h]=y.arrowBodyPts,p.push(u)}var P=[],d=0,S=0,f=0,m=[],L=[];for(h=0;h<n-1;h++,S+=this.MIN_PTCOUNT_PERARROW){f=S+this.MIN_PTCOUNT_PERARROW,m[0]=t[S],m[1]=t[S+1],m[2]=t[S+2],L[0]=t[f],L[1]=t[f+1],L[2]=t[f+2],d=this.scaleValues[n+h];var M=this.generateAYPts(m,r[h],L,r[h+1],d);P.push(M.arrowLeftYaoPts),P.push(M.arrowRightYaoPts)}var b=[],A=r[0],T=[],v=0,_=[];l.MoveTo(A[0]),l.CurveTo(A[1],A[2],A[3]),l.CurveTo(A[4],A[5],A[6]),l.ToSubPathPolygons(T),e.push(T[0]),v=T[0].length;for(let t=7;t<10;t++)l.LineTo(A[t]);for(T=[],l.ToSubPathPolygons(T);v<T[0].length;v++)_.push(T[0][v]);for(i.push(_),b.push(A[0]),b.push(t[0]),h=1,g=this.MIN_PTCOUNT_PERARROW;h<n;h++,g+=this.MIN_PTCOUNT_PERARROW){var x=r[h],O=h+h-2,w=P[O];for(l.LineTo(w[0]),l.CurveTo(w[1],w[2],w[3]),T=[],_=[],l.ToSubPathPolygons(T);v<T[0].length;v++)_.push(T[0][v]);o.push(_);var I=P[O+1];for(l.CurveTo(I[1],I[2],I[3]),T=[],_=[],l.ToSubPathPolygons(T);v<T[0].length;v++)_.push(T[0][v]);e.push(_);for(let t=7;t<10;t++)l.LineTo(x[t]);for(T=[],_=[],l.ToSubPathPolygons(T);v<T[0].length;v++)_.push(T[0][v]);i.push(_),b.push(t[g].clone())}var C=r[n-1];for(l.LineTo(C[10]),l.CurveTo(C[11],C[12],C[13]),l.CurveTo(C[14],C[15],C[16]),T=[],_=[],l.ToSubPathPolygons(T);v<T[0].length;v++)_.push(T[0][v]);o.push(_),b.push(C[16]);var E=[];return l.ToSubPathPolygons(E),{shapePts:E[0],arrLeftPts2D:e,arrRightPts2D:o,arrHeadPts2D:i}}operateCtrlPts(t){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),o=e.length,i=Math.floor(o/this.MIN_PTCOUNT_PERARROW),l=o%this.MIN_PTCOUNT_PERARROW,s=new SuperMapAlgoPlot.Point;if(2==l&&(s.x=.5*(e[o-2].x+e[o-1].x),s.y=.5*(e[o-2].y+e[o-1].y),s.x==e[o-1].x&&s.y==e[o-1].y||(e.push(e[o-1].clone()),e[o-1]=s,o++,i++)),o>3){var n=i-1;for(let t=0,o=n;t<n;o--,t++){var a=o*this.MIN_PTCOUNT_PERARROW;for(let t=0;t<a;t+=this.MIN_PTCOUNT_PERARROW)if(!SuperMapAlgoPlot.PlottingUtil.isRight(e[t+3],e[t+1],e[t+2])){var r=e[t];e[t]=e[t+3],e[t+3]=r,r=e[t+1],e[t+1]=e[t+4],e[t+4]=r,r=e[t+2],e[t+2]=e[t+5],e[t+5]=r}}}return e}operateCtrlPts3D(t){var e=t,o=e.length,i=Math.floor(o/this.MIN_PTCOUNT_PERARROW),l={x:0,y:0,z:0};if(2==o%3&&(l.x=.5*(e[o-2].x+e[o-1].x),l.y=.5*(e[o-2].y+e[o-1].y),l.z=.5*(e[o-2].z+e[o-1].z),l.x==e[o-1].x&&l.y==e[o-1].y&&l.z==e[o-1].z||(e.push(e[o-1]),e[o-1]=l,o++,i++)),o>3){var s=i-1;for(let t=0,o=s;t<s;o--,t++){var n=3*o;for(let t=0;t<n;t+=3)if(!SuperMapAlgoPlot.PlottingUtil.isRight(e[t+3],e[t+1],e[t+2])){var a=e[t];e[t]=e[t+3],e[t+3]=a,a=e[t+1],e[t+1]=e[t+4],e[t+4]=a,a=e[t+2],e[t+2]=e[t+5],e[t+5]=a}}}return e}generateAWWidth(t,e){var o=[];if(t>0)if(1==t)o.push(0);else{var i=SuperMapAlgoPlot.PlottingUtil.distance(e[0],e[this.MIN_PTCOUNT_PERARROW]);o.push(i);for(var l=1,s=this.MIN_PTCOUNT_PERARROW;l<t-1;l++,s+=this.MIN_PTCOUNT_PERARROW)i=.5*(SuperMapAlgoPlot.PlottingUtil.distance(e[s-this.MIN_PTCOUNT_PERARROW],e[s])+SuperMapAlgoPlot.PlottingUtil.distance(e[s],e[s+this.MIN_PTCOUNT_PERARROW])),o.push(i);i=SuperMapAlgoPlot.PlottingUtil.distance(e[s-this.MIN_PTCOUNT_PERARROW],e[s]),o.push(i)}return o}generateArrowBodyPts(t,e,o){var i=[],l=[],s=[],n=[],a=[],r=[],p=[],u=t.length-1;if(u<2)return{dATLenDivABLen:o=0,arrowBodyPts:i};var h=o,g=this.SV2_DefaultAJWidDiviedByATLen,c=this.SV3_DefaultAEWidDividedByATLen,y=this.SV4_DefaultAELenDividedByATLen,P=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),d=SuperMapAlgoPlot.PlottingUtil.polylineDistance(P),S=0==e?d*this.ATL_DIV_ABL_1:(d+e)*this.ATL_DIV_ABL,f=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(S,P[1],P[0]);l[1]=f.pntLeft.clone(),s[1]=f.pntRight.clone();var m=0;m=SuperMapAlgoPlot.PlottingUtil.equalFuzzy(h,0,1e-14)?S*this.ATL_DIV_AWW:d*h;var L=SuperMapAlgoPlot.PlottingUtil.distance(P[1],P[2]);m+m>L&&(m=.5*L);var M=m*g;P.push(P[u].clone());var b,A=0;b=d-m;var T=[],v=0;for(v=2;v<=u;v++)A+=SuperMapAlgoPlot.PlottingUtil.distance(P[v-1],P[v-2]),SuperMapAlgoPlot.PlottingUtil.equalFuzzy(b,0,1e-14)?T[v]=0:SuperMapAlgoPlot.PlottingUtil.equalFuzzy(b-A,0,1e-14)?T[v]=M:T[v]=M+(S-M)*Math.pow((b-A)/b,this.SV_ATScaleParameter);T[u+1]=M;var _=new SuperMapAlgoPlot.Point(0,0),x=new SuperMapAlgoPlot.Point(0,0),O=new SuperMapAlgoPlot.Point(0,0);for(v=2;v<=u;v++){SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(this.AB_CTRLPT_RATE1,this.AB_CTRLPT_RATE2,P[v-2],P[v-1],P[v],x,O),u==v&&SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(this.AB_CTRLPT_RATE3,P[u],P[u-1],O,_);let t=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(T[v],x,P[v-1]);s[v]=t.pntLeft,l[v]=t.pntRight}var w,I,C=_.clone();if(SuperMapAlgoPlot.PlottingUtil.distance(P[u],C)>0){var E=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(m,P[u],_);P[u]=E.clone()}for(f=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(M,P[u+1],P[u]),l[u+1]=f.pntLeft,s[u+1]=f.pntRight,v=2;v<=u;v++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(this.AB_CTRLPT_RATE2,this.AB_CTRLPT_RATE2,l[v-1],l[v],l[v+1],x,O),n[v]=x.clone(),a[v]=O.clone(),SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(this.AB_CTRLPT_RATE2,this.AB_CTRLPT_RATE2,s[v-1],s[v],s[v+1],x,O),r[v]=x.clone(),p[v]=O.clone();SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(this.AB_CTRLPT_RATE3,l[1],l[2],n[2],_),a[1]=_.clone(),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(this.AB_CTRLPT_RATE3,s[1],s[2],r[2],_),p[1]=_.clone(),I=SuperMapAlgoPlot.PlottingUtil.distance(l[u+1],l[u])*(1/3),(w=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,P[u],P[u+1])).x+=l[u+1].x-P[u].x,w.y+=l[u+1].y-P[u].y,I=(S-M)*Math.pow(I/b,this.SV_ATScaleParameter+.3),f=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,l[u+1],w),n[u+1]=f.pntLeft.clone(),I=SuperMapAlgoPlot.PlottingUtil.distance(s[u+1],s[u])*(1/3),(w=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,P[u],P[u+1])).x+=s[u+1].x-P[u].x,w.y+=s[u+1].y-P[u].y,I=(S-M)*Math.pow(I/b,this.SV_ATScaleParameter+.3),f=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,s[u+1],w),r[u+1]=f.pntRight.clone();var D=[],U=m*y,N=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(U,P[u],P[u+1]);this.m_scalePoints.push(N.clone()),U=m*c,f=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(U,P[u+1],N),D.push(f.pntRight),D.push(P[u+1]),D.push(f.pntLeft);var R=[];for(R.push(l[u+1]),v=u;v>=1;v--)R.push(n[v+1]),R.push(a[v]),R.push(l[v]);var B=[];for(v=1;v<=u;v++)B.push(s[v]),B.push(p[v]),B.push(r[v+1]);B.push(s[u+1]),i.push.apply(i,B),i.push.apply(i,D),i.push.apply(i,R),o=m/d;var F=[];for(v=R.length-1;v>=0;v--)F.push(R[v]);return{dATLenDivABLen:o,arrowBodyPts:i}}generateAYPts(t,e,o,i,l){var s=new SuperMapAlgoPlot.Point(.5*(t[2].x+o[2].x),.5*(t[2].y+o[2].y)),n=new SuperMapAlgoPlot.Point(.5*(t[1].x+o[1].x),.5*(t[1].y+o[1].y)),a=new SuperMapAlgoPlot.Point(.5*(t[0].x+o[0].x),.5*(t[0].y+o[0].y)),r=SuperMapAlgoPlot.PlottingUtil.distance(s,n),p=SuperMapAlgoPlot.PlottingUtil.distance(a,n),u=l*(r+p),h=new SuperMapAlgoPlot.Point(0,0),g=new SuperMapAlgoPlot.Point(0,0),c=new SuperMapAlgoPlot.Point(0,0);if(u>r){u=r+p-u,h=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(u,a,n);var y=SuperMapAlgoPlot.PlottingUtil.distance(t[1],t[0]),P=SuperMapAlgoPlot.PlottingUtil.distance(o[1],o[0]);y=y*u/p,g=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(y,t[0],t[1]),P=P*u/p,c=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(P,o[0],o[1])}else{h=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(u,s,n);var d=SuperMapAlgoPlot.PlottingUtil.distance(t[1],t[2]),S=SuperMapAlgoPlot.PlottingUtil.distance(o[1],o[2]);d=d*u/r,g=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(d,t[2],t[1]),S=S*u/r,c=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(S,o[2],o[1])}this.m_scalePoints.push(h.clone());var f=this.SV_ArrowWoCtrl*SuperMapAlgoPlot.PlottingUtil.distance(h,g),m=this.SV_ArrowWoCtrl*SuperMapAlgoPlot.PlottingUtil.distance(h,c),L=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(f,h,g),M=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(m,h,c),b=e[11].clone(),A=e[10].clone(),T=i[5].clone(),v=i[6].clone(),_=SuperMapAlgoPlot.PlottingUtil.intersectLines(A,b,h,g),x=SuperMapAlgoPlot.PlottingUtil.distance(_.intersectPoint,A),O=SuperMapAlgoPlot.PlottingUtil.distance(A,h);x=x>O?this.SV_AJCtrl*O:this.SV_AJCtrl*x;var w=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(x,A,b);b=w.clone(),e[11]=w.clone(),_=SuperMapAlgoPlot.PlottingUtil.intersectLines(v,T,h,c),x=(x=SuperMapAlgoPlot.PlottingUtil.distance(_.intersectPoint,v))>(O=SuperMapAlgoPlot.PlottingUtil.distance(v,h))?this.SV_AJCtrl*O:this.SV_AJCtrl*x,T=(w=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(x,v,T)).clone(),i[5]=w.clone();var I=[];I.push(A),I.push(b),I.push(L),I.push(h);var C=[];return C.push(h),C.push(M),C.push(T),C.push(v),{arrowLeftYaoPts:I,arrowRightYaoPts:C}}};SuperMapAlgoPlot.AlgoSymbol1003=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.3),this.scaleValues.push(.28),this.scaleValues.push(.433333),this.scaleValues.push(.53),this.scaleValues.push(0)),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1003"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints),e=(t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length;if(e>=this.minEditPts){if(SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.controlPoints[0].x,this.controlPoints[1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(this.controlPoints[0].y,this.controlPoints[1].y))return;var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),i=!1;void 0!==o[0].z&&(i=!0);var l=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(t,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_TRAPEZOID),s=l.arrowTouLen,n=l.leftBodyPts,a=l.rightBodyPts,r=[];r.push(n[n.length-1]),r.push(a[a.length-1]);var p=[];p.push(this.scaleValues[3]),p.push(this.scaleValues[4]),p.push(0),p.push(0);var u=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts(t,r,p,s,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITHOUT_EAR),h=[];h=(h=h.concat(n)).concat(u);for(let t=a.length-1;t>=0;t--)h.push(a[t]);if(h.push(n[0]),i){var g=[],c={x:o[1].x,y:o[1].y,z:o[1].z},y={x:o[0].x,y:o[0].y,z:o[0].z};for(let t=0;t<h.length;t++){let e=this.ComputeZValue(h[t],c,y);g.push({x:h[t].x,y:h[t].y,z:e})}let t=new SuperMapAlgoPlot.Point((r[0].x+r[1].x)/2,(r[0].y+r[1].y)/2),i=new SuperMapAlgoPlot.Point(t.x,t.y);i.isScalePoint=!0,i.tag=0,this.addScalePoint(i);let l=new SuperMapAlgoPlot.Point(n[n.length-1].x,n[n.length-1].y);l.isScalePoint=!0,l.tag=1,this.addScalePoint(l);let s=new SuperMapAlgoPlot.Point(u[0].x,u[0].y);s.isScalePoint=!0,s.tag=2,this.addScalePoint(s);var P={x:o[e-1].x,y:o[e-1].y,z:o[e-1].z},d={x:o[e-2].x,y:o[e-2].y,z:o[e-2].z},S=[];for(let t=0;t<this.scalePoints.length;t++){var f={x:this.scalePoints[t].x,y:this.scalePoints[t].y};let e=this.ComputeZValue(f,P,d);S.push({x:f.x,y:f.y,z:e})}this.scalePoints=S,this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,g)}else{let t=new SuperMapAlgoPlot.Point((r[0].x+r[1].x)/2,(r[0].y+r[1].y)/2),e=new SuperMapAlgoPlot.Point(t.x,t.y);e.isScalePoint=!0,e.tag=0,this.addScalePoint(e);let o=new SuperMapAlgoPlot.Point(n[n.length-1].x,n[n.length-1].y);o.isScalePoint=!0,o.tag=1,this.addScalePoint(o);let i=new SuperMapAlgoPlot.Point(u[0].x,u[0].y);i.isScalePoint=!0,i.tag=2,this.addScalePoint(i),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,h)}}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=new SuperMapAlgoPlot.Point(this.scalePoints[0].x,this.scalePoints[0].y),i=new SuperMapAlgoPlot.Point(this.scalePoints[1].x,this.scalePoints[1].y),l=new SuperMapAlgoPlot.Point(this.scalePoints[2].x,this.scalePoints[2].y),s=this.scaleValues[0],n=SuperMapAlgoPlot.PlottingUtil.polylineDistance(this.controlPoints),a=n*s;if(0==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,this.controlPoints[0],this.controlPoints[1]),o=t.projectPoint;if(t.isOnline){let t=SuperMapAlgoPlot.PlottingUtil.distance(o,this.controlPoints[1]);this.scaleValues[0]=t/n}}else if(1==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,i,l).projectPoint,s=SuperMapAlgoPlot.PlottingUtil.distance(t,o),n=a*this.scaleValues[1];this.scaleValues[1]=s/a,this.scaleValues[2]=(a*this.scaleValues[2]+s-n)/a}else if(2==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,this.controlPoints[1],l).projectPoint,i=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(t,o,this.controlPoints[1]),s=i.projectPoint,n=SuperMapAlgoPlot.PlottingUtil.distance(s,o);!0===i.inOnline?this.scaleValues[4]=-n/a:this.scaleValues[4]=n/a}}this.calculateParts()}};SuperMapAlgoPlot.AlgoSymbol1004=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.MAX_ARRAY_SIZE=128,this.sv1_DefaultAtLenDivAbLen=0,this.sv2_DefaultAjWidthDivAtLen=.148,this.sv3_DefaultAeWidthDivAtLen=.4,this.sv4_DefaultAeLenDivAtLen=.312,this.sv_AtScaleParameter=1.5,this.sv_AtLenDivAtWidth=1.35,this.sv_AtWidthDivAwWidth=.5,this.sv_defaultAwLenDivAbLen=.15,0===this.scaleValues.length&&(this.scaleValues.push(this.sv1_DefaultAtLenDivAbLen),this.scaleValues.push(this.sv2_DefaultAjWidthDivAtLen),this.scaleValues.push(this.sv3_DefaultAeWidthDivAtLen),this.scaleValues.push(this.sv4_DefaultAeLenDivAtLen)),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1004"}calculateParts(){this.init(),this.applyUse()}applyUse(){var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<this.minEditPts)){var e=this.arrowMeshs(t);SuperMapAlgoPlot.PlottingUtil.clearSamePts(e.shapePts);var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),i=o.length,l=!1;if(void 0!==o[0].z&&(l=!0),l){var s=e.leftBodyPts,n=e.rightBodyPts,a=e.arrowHeadPts,r=e.shapePts,p=[];for(let t=0;t<r.length;t++)p.push({x:r[t].x,y:r[t].y,z:0});if(0==r.length)return!1;var u=this.updateScalePoints(t);if(this.scalePoints=[],3!=u.length)u=[];else for(let t=0;t<u.length;t++)u[t].isScalePoint=!0,u[t].tag=t,this.addScalePoint(u[t]);var h=[],g={x:(o[0].x+o[1].x)/2,y:(o[0].y+o[1].y)/2},c={x:(s[s.length-1].x+n[0].x)/2,y:(s[s.length-1].y+n[0].y)/2},y=this.ComputeZValue(c,o[i-1],o[i-2]),P=0,d=0;s[0].x==o[0].x&&s[0].y==o[0].y?(P=o[0].z,d=o[1].z):(P=o[1].z,d=o[0].z),h.push({x:g.x,y:g.y,z:P});for(let t=2;t<i-1;t++)h.push(o[t]);h.push({x:c.x,y:c.y,z:y});var S=[];this.ComputeBeizerZValueByDis(h,s,S),(h=[]).push({x:c.x,y:c.y,z:y});for(let t=i-2;t>=2;t--)h.push(o[t]);h.push({x:g.x,y:g.y,z:d});var f=[];this.ComputeBeizerZValueByDis(h,n,f);var m=[];for(let t=0;t<a.length;t++){var L=this.ComputeZValue(a[t],o[i-1],o[i-2]);m.push({x:a[t].x,y:a[t].y,z:L})}if(S.length>0&&f.length>0&&m.length>0){p=(p=(p=(p=[]).concat(S)).concat(m)).concat(f),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,p,{surroundLineFlag:!1});var M=[];for(let t=0;t<u.length;t++){var b=this.ComputeZValue(u[t],o[i-1],o[i-2]),A=new SuperMapAlgoPlot.Point(u[t].x,u[t].y);A.z=b,M.push(A)}3!=u.length?this.scalePoints=[]:this.scalePoints=this.scalePoints.concat(M)}}else{if(0==e.shapePts.length)return;if(this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.shapePts,{surroundLineFlag:!1,lineWidthLimit:!0,strokeWidth:0,weight:0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,e.shapePts,{surroundLineFlag:!1}),u=this.updateScalePoints(t),this.scalePoints=[],3!=u.length)u=[];else for(let t=0;t<u.length;t++)u[t].isScalePoint=!0,u[t].tag=t,this.addScalePoint(u[t])}}}computeScaleValues(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o),this.scaleValues.length<4&&(this.scaleValues.push(this.sv1_DefaultAtLenDivAbLen),this.scaleValues.push(this.sv2_DefaultAjWidthDivAtLen),this.scaleValues.push(this.sv3_DefaultAeWidthDivAtLen),this.scaleValues.push(this.sv4_DefaultAeLenDivAtLen));var i=o.length;if(i<=2)return;var l,s,n,a,r=this.operateCtrlPts(o);i=r.length,i--;var p=this.calcScaleValueCount(o.length);if(this.scaleValues.length<p){var u=this.calcDefaultScaleValues(i);l=u[0],s=u[1],n=u[2],a=u[3]}else l=this.scaleValues[0],s=this.scaleValues[1],n=this.scaleValues[2],a=this.scaleValues[3];var h=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),g=[];for(let t=0;t<this.scalePoints.length;t++)g.push(this.scalePoints[t].clone());if(0==g.length)return;g[t]=e.clone();var c,y,P=i-1;c=i<=3?new SuperMapAlgoPlot.Point((r[0].x+r[1].x)/2,(r[0].y+r[1].y)/2):r[P-1].clone();var d,S,f,m,L,M,b=new SuperMapAlgoPlot.Point(0,0),A=new SuperMapAlgoPlot.Point(0,0),T=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,c,r[P],r[P+1],A,T),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,r[i],r[i-1],T,b),y=b.clone();var v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[2]);d=v.dLen1,v.dLen2,0==d&&(d=.1),S=d,l=(d/=a+1)/h,1==t?(m=(v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[1])).dLen1,n=(L=v.dLen2)/d,a=(m-d)/d):0==t?(d=(v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[0])).dLen1,s=(f=v.dLen2)/d,(M=SuperMapAlgoPlot.PlottingUtil.distance(r[i],r[i-1]))<2*d&&(d=.5*M),m=(v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[1])).dLen1,n=(L=v.dLen2)/d,(a=(S-d)/d)<.1&&(n=L/(d=S/(1+(a=.1))),s=f/d),l=d/h):2==t&&(l=d/h),f=d*s,(M=SuperMapAlgoPlot.PlottingUtil.distance(r[i],r[i-1]))<2*d&&(f=(d=.5*M)*s,l=d/h),this.scaleValues[0]=l,this.scaleValues[1]=s,this.scaleValues[2]=n,this.scaleValues[3]=a}}arrowMeshs(t){var e=[],o=[],i=[],l=[],s=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),n=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(s,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_MULTIPOLYBEZIER),a=n.arrowTouLen,r=n.leftBodyPts,p=n.rightBodyPts;if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(a,0)){var u=[];u.push(r[r.length-1]),u.push(p[p.length-1]);var h=[];h.push(this.scaleValues[2]),h.push(this.scaleValues[3]),h.push(0),h.push(0);var g=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts(s,u,h,a,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITH_EAR);for(let t=0;t<r.length;t++)e.push(r[t]),o.push(r[t]);for(let t=0;t<g.length;t++)e.push(g[t]),l.push(g[t]);for(let t=p.length-1;t>=0;t--)e.push(p[t]),i.push(p[t])}return{shapePts:e,leftBodyPts:o,rightBodyPts:i,arrowHeadPts:l}}updateScalePoints(t){var e=t.length,o=[];if(!(e<3)){var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t);if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(i,0)){var l=this.operateCtrlPts(t);e=l.length,e--;var s=[];for(let t=0;t<this.scaleValues.length;t++)s.push(this.scaleValues[t]);var n=this.genArrowBodyPts(i,l,s),a=n.ArrowBodyCenterPts,r=this.genAtPts(e,a,s,n.ArrowTouLen),p=this.calc3rdScalePt(e,a,s,n.ArrowTouLen);return o.push(new SuperMapAlgoPlot.Point(n.LeftBodyPtsTemp[e].x,n.LeftBodyPtsTemp[e].y)),o.push(new SuperMapAlgoPlot.Point(r[2].x,r[2].y)),o.push(new SuperMapAlgoPlot.Point(p.x,p.y)),o}}}operateCtrlPts(t){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t);if(3===e.length){var o=((e[0].x+e[1].x)/2+e[2].x)/2,i=((e[0].y+e[1].y)/2+e[2].y)/2,l=new SuperMapAlgoPlot.Point(o,i),s=e[2];e[2]=l,e.push(s)}return e}genArrowBodyPts(t,e,o){var i,l,s,n=[],a=[],r=[],p=[],u=[],h=[],g=e.length;if(g--,o.length<this.calcScaleValueCount(g)){var c=this.calcDefaultScaleValues(g);l=c[0],s=c[1]}else l=o[0],s=o[1];var y=SuperMapAlgoPlot.PlottingUtil.clonePoints(e),P=(y[0].x+y[1].x)/2,d=(y[0].y+y[1].y)/2,S=Math.abs(P-y[2].x),f=Math.abs(d-y[2].y),m=0;if(S>0&&f>0){var L=1/(P-y[2].x),M=-1/(d-y[2].y),b=1*y[2].y/(d-y[2].y)-1*y[2].x/(P-y[2].x);m=Math.abs(L*y[0].x+M*y[0].y+b)/Math.sqrt(L*L+M*M)}else f<=1e-4?m=Math.abs(d-y[1].y):S<=1e-4&&(m=Math.abs(P-y[1].x));var A=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(m,y[2],new SuperMapAlgoPlot.Point(P,d)),T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(y[1],y[2],y[0]);T?(n[1]=y[1],a[1]=y[0]):(n[1]=y[0],a[1]=y[1]),y[1]=new SuperMapAlgoPlot.Point((y[0].x+y[1].x)/2,(y[0].y+y[1].y)/2);var v=Math.sqrt((A.pntLeft.x-A.pntRight.x)*(A.pntLeft.x-A.pntRight.x)+(A.pntLeft.y-A.pntRight.y)*(A.pntLeft.y-A.pntRight.y))*this.sv_AtWidthDivAwWidth,_=(i=v*this.sv_AtLenDivAtWidth)*s;SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l,0)||(_=(i=t*l)*s);var x,O,w=SuperMapAlgoPlot.PlottingUtil.distance(y[g],y[g-1]),I=2*i;w<I&&(_=(i=w/2)*s),y.push(y[g].clone()),x=0,O=0;var C=0,E=[];for(C=2;C<=g;C++)x+=SuperMapAlgoPlot.PlottingUtil.distance(y[C],y[C-1]);for(x-=i,C=2;C<=g-1;C++)O+=SuperMapAlgoPlot.PlottingUtil.distance(y[C],y[C-1]),E[C]=_+(v-_)*Math.pow((x-O)/x,this.sv_AtScaleParameter);E[g]=_;var D,U,N=new SuperMapAlgoPlot.Point(0,0),R=new SuperMapAlgoPlot.Point(0,0),B=new SuperMapAlgoPlot.Point(0,0);for(C=2;C<=g-1;C++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,y[C-1],y[C],y[C+1],R,B),C==g-1&&SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,y[g],y[g-1],B,N),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(E[C],R,y[C]),(T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(B,R,D.pntRight))?(n[C]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y),a[C]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y)):(n[C]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),a[C]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y));for(Math.sqrt(1*(y[g].x-N.x)*(y[g].x-N.x)+1*(y[g].y-N.y)*(y[g].y-N.y))>0&&(y[g]=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(i,y[g],N)),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(_,y[g+1],y[g]),(T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(y[g],y[g+1],D.pntLeft))?(a[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),n[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y)):(a[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y),n[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y)),C=2;C<g;C++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,n[C-1],n[C],n[C+1],R,B),r[C]=new SuperMapAlgoPlot.Point(R.x,R.y),p[C]=new SuperMapAlgoPlot.Point(B.x,B.y),SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,a[C-1],a[C],a[C+1],R,B),u[C]=new SuperMapAlgoPlot.Point(R.x,R.y),h[C]=new SuperMapAlgoPlot.Point(B.x,B.y),2==C&&(SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,n[1],n[2],r[2],N),p[C]=new SuperMapAlgoPlot.Point(N.x,N.y),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,a[1],a[2],u[2],N),h[C]=new SuperMapAlgoPlot.Point(N.x,N.y)),C==g-1&&(I=(w=SuperMapAlgoPlot.PlottingUtil.distance(n[g],n[g-1]))/3,(U=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,y[g],y[g+1])).x+=n[g].x-y[g].x,U.y+=n[g].y-y[g].y,I=(w=v-_)*Math.pow(I/x,this.sv_AtScaleParameter),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,n[g],U),r[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),I=(w=SuperMapAlgoPlot.PlottingUtil.distance(a[g],a[g-1]))/3,(U=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,y[g],y[g+1])).x+=a[g].x-y[g].x,U.y+=a[g].y-y[g].y,I=(w=v-_)*Math.pow(I/x,this.sv_AtScaleParameter),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,a[g],U),u[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y));return{ArrowBodyCenterPts:SuperMapAlgoPlot.PlottingUtil.clonePoints(y),LeftBodyPtsTemp:n,RightBodyPtsTemp:a,LeftBodyPtsLeftCtrlPts:r,LeftBodyPtsRightCtrlPts:p,RightBodyPtsLeftCtrlPts:u,RightBodyPtsRightCtrlPts:h,ArrowTouLen:i}}calcScaleValueCount(){return 4}calcDefaultScaleValues(){var t=[];return t.push(this.sv1_DefaultAtLenDivAbLen),t.push(this.sv2_DefaultAjWidthDivAtLen),t.push(this.sv3_DefaultAeWidthDivAtLen),t.push(this.sv4_DefaultAeLenDivAtLen),t}genAtPts(t,e,o,i){var l=o[2],s=[],n=i*o[3],a=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(n,e[t],e[t+1]);n=i*l;var r=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(n,e[t+1],a);return s.push(new SuperMapAlgoPlot.Point(r.pntLeft.x,r.pntLeft.y)),s.push(e[t+1]),s.push(new SuperMapAlgoPlot.Point(r.pntRight.x,r.pntRight.y)),s}calc3rdScalePt(t,e,o,i){var l=i*o[3];return SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(l,e[t],e[t+1])}};SuperMapAlgoPlot.AlgoSymbol1005=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.1),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1005"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){this.scaleValues[0]=this.getSubSymbolScaleValue();var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t)*this.scaleValues[0],o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,e,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_POLYBEZIER,!1),i=[];i.push(o[o.length-1]),i.push(o[o.length-2]);var l=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePtsBySingleLine(i,e,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_POLYLINE);this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o),l.length>0&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,l)}}};SuperMapAlgoPlot.AlgoSymbol1006=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.QIANJI_RATE1=9,this.QIANJI_RATE2=20,this.QIANJI_RATE4=5,this.QIANJI_RATE3=1/3,this.QIANJI_TAIL_RATE1=8,this.QIANJI_TAIL_RATE2=3,this.QIANJI_TAIL_RATE3=.6,this.SV1_Default=.25,this.SV1_MinValue=0,this.SV1_MaxValue=.5,this.DEFAULT_ARROW_TAIL_POS=.4,this.SCALE_VALUE_COUNT=1,this.MIN_LEN_LeftToRightCenter=1e-7,this.SCALE_AT=1/3,this.SCALE_ATAJ=1/7,this.SCALE_ATAE=1/3,this.SCALE_AW=2/3,this.SCALE_ATAJctrlDefSide=.8,this.SCALE_ATAJctrlSameSide=2/3,this.SCALE_MM_LEFT=.25,this.SCALE_MM_RIGHT=.75,this.BEZIER_K1=1/3,this.QIANJI_OPERATE_RATE1=1,0===this.scaleValues.length&&this.scaleValues.push(this.SV1_Default),this.m_dMaxDis=0,this.m_bIsAnimation=!1,this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1006"}calculateParts(){this.init(),this.m_scalePoints=[];var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<this.minEditPts)){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),o=e.length,i=!1;void 0!==e[0].z&&(i=!0);var l=this.arrowMeshs(t);if(i){var s=[];for(let t=0;t<o;t++)s.push(e[t]);var n=l.LeftArowLeftBody,a=l.LeftArowHead,r=l.LeftArowRightBody,p=l.RightArowLeftBody,u=l.RightArowHead,h=l.RightArowRightBody;if(0==n.length)return!1;var g=[],c=[],y=[];if(3==s.length)n[0].x==s[0].x&&n[0].y==s[0].y?(c.push(s[0]),c.push(s[2]),y.push(s[1]),y.push(s[2])):(c.push(s[1]),c.push(s[2]),y.push(s[0]),y.push(s[2]));else{if(4!=s.length)return!1;n[0].x==s[0].x&&n[0].y==s[0].y?(c.push(s[0]),y.push(s[1])):(c.push(s[1]),y.push(s[0])),a[1].x==s[2].x&&a[1].y==s[2].y?(c.push(s[2]),y.push(s[3])):(c.push(s[3]),y.push(s[2]))}var P=new SuperMapAlgoPlot.Point;P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(n[n.length-1],{x:c[0].x,y:c[0].y},{x:c[1].x,y:c[1].y}).projectPoint;var d=this.ComputeZValue(P,c[1],c[0]),S=[];this.ComputeHeight(n,S,c[0].z,d),g=g.concat(S);for(let t=0;t<a.length;t++){P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(a[t],{x:c[0].x,y:c[0].y},{x:c[1].x,y:c[1].y}).projectPoint;var f=this.ComputeZValue(P,c[1],c[0]);g.push({x:a[t].x,y:a[t].y,z:f})}P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(r[0],{x:c[0].x,y:c[0].y},{x:c[1].x,y:c[1].y}).projectPoint,this.ComputeZValue(P,c[1],c[0]),P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(r[r.length-1],{x:c[0].x,y:c[0].y},{x:c[1].x,y:c[1].y}).projectPoint;var m=this.ComputeZValue(P,c[1],c[0]);P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(p[0],{x:y[0].x,y:y[0].y},{x:y[1].x,y:y[1].y}).projectPoint;var L=(this.ComputeZValue(P,y[1],y[0])+m)/2,M=[];this.ComputeHeight(r,M,d,L),g=g.concat(M),P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(p[p.length-1],{x:y[0].x,y:y[0].y},{x:y[1].x,y:y[1].y}).projectPoint;var b=this.ComputeZValue(P,y[1],y[0]),A=[];this.ComputeHeight(p,A,L,b),g=g.concat(A);for(let t=0;t<u.length;t++){P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(u[t],{x:y[0].x,y:y[0].y},{x:y[1].x,y:y[1].y}).projectPoint;var T=this.ComputeZValue(P,y[1],y[0]);g.push({x:u[t].x,y:u[t].y,z:T})}P=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(h[0],{x:y[0].x,y:y[0].y},{x:y[1].x,y:y[1].y}).projectPoint;var v=this.ComputeZValue(P,y[1],y[0]),_=[];this.ComputeHeight(h,_,v,y[0].z),(g=g.concat(_)).length>0&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,g,{surroundLineFlag:!1}),this.m_scalePoints.length>0&&(this.m_scalePoints[0]={x:this.m_scalePoints[0].x,y:this.m_scalePoints[0].y,z:L});for(let t=0;t<this.m_scalePoints.length;t++)this.m_scalePoints[t].isScalePoint=!0,this.m_scalePoints[t].tag=t,this.addScalePoint(this.m_scalePoints[t]);return!0}var x=l.shapePts;x.length>0&&(this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,x,{surroundLineFlag:!1,lineWidthLimit:!0,strokeWidth:0,weight:0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,x,{surroundLineFlag:!1})),this.scalePoints=[];for(let t=0;t<this.m_scalePoints.length;t++)this.m_scalePoints[t].isScalePoint=!0,this.m_scalePoints[t].tag=t,this.addScalePoint(this.m_scalePoints[t])}}modifyPoint(t,e){if(!0===e.isScalePoint){var o,i=SuperMapAlgoPlot.PlottingUtil.operateControlPoints(this.controlPoints),l=new SuperMapAlgoPlot.Point((i[0].x+i[1].x)/2,(i[0].y+i[1].y)/2),s=new SuperMapAlgoPlot.Point((i[2].x+i[3].x)/2,(i[2].y+i[3].y)/2),n=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,l,s);if(n.isOnline){var a=SuperMapAlgoPlot.PlottingUtil.distance(n.projectPoint,l),r=SuperMapAlgoPlot.PlottingUtil.distance(l,s);(o=SuperMapAlgoPlot.PlottingUtil.equalFuzzy(a,0)?this.SV1_MinValue:a/r)>this.SV1_MaxValue&&(o=this.SV1_MaxValue)}else o=SuperMapAlgoPlot.PlottingUtil.distance(n.projectPoint,l)<SuperMapAlgoPlot.PlottingUtil.distance(n.projectPoint,s)?this.SV1_MinValue:this.SV1_MaxValue;this.scaleValues=[],this.scaleValues.push(o)}this.calculateParts()}arrowMeshs(t){var e=new SuperMapAlgoPlot.Path2D,o=[];this.m_bIsAnimation&&4==t.length?o=SuperMapAlgoPlot.PlottingUtil.clonePoints(t):(o=SuperMapAlgoPlot.PlottingUtil.operateControlPoints(t),void 0!==t[0].z&&(o[o.length-1].z=o[o.length-2].z));var i=this.scaleValues[0],l=SuperMapAlgoPlot.PlottingUtil.distance(o[0],o[3]),s=SuperMapAlgoPlot.PlottingUtil.distance(o[1],o[2]),n=o[1].clone(),a=.5*(o[0].x+o[3].x),r=.5*(o[0].y+o[3].y),p=new SuperMapAlgoPlot.Point(a,r),u=.5*(o[1].x+o[2].x),h=.5*(o[1].y+o[2].y),g=new SuperMapAlgoPlot.Point(u,h),c=SuperMapAlgoPlot.PlottingUtil.distance(p,g);c<this.MIN_LEN_LeftToRightCenter&&(c=this.MIN_LEN_LeftToRightCenter),p.x=a+l*(a-u)/(c*this.QIANJI_RATE1),p.y=r+l*(r-h)/(c*this.QIANJI_RATE1),g.x=u+s*(u-a)/(c*this.QIANJI_RATE1),g.y=h+s*(h-r)/(c*this.QIANJI_RATE1);var y=new SuperMapAlgoPlot.Point(0,0),P=new SuperMapAlgoPlot.Point(0,0);y.x=a+l*(a-u)/(c*this.QIANJI_RATE2),y.y=r+l*(r-h)/(c*this.QIANJI_RATE2),P.x=u+s*(u-a)/(c*this.QIANJI_RATE2),P.y=h+s*(h-r)/(c*this.QIANJI_RATE2);var d=new SuperMapAlgoPlot.Point((o[0].x+o[1].x)/2,(o[0].y+o[1].y)/2),S=new SuperMapAlgoPlot.Point((o[2].x+o[3].x)/2,(o[2].y+o[3].y)/2),f=o[3].x-(o[3].x-p.x)*this.SCALE_AT,m=o[3].y-(o[3].y-p.y)*this.SCALE_AT,L=o[2].x-(o[2].x-g.x)*this.SCALE_AT,M=o[2].y-(o[2].y-g.y)*this.SCALE_AT,b=new SuperMapAlgoPlot.Point(0,0),A=new SuperMapAlgoPlot.Point(0,0),T=new SuperMapAlgoPlot.Point(0,0),v=new SuperMapAlgoPlot.Point(0,0);A.x=f-(m-o[3].y)*this.SCALE_ATAJ,A.y=m+(f-o[3].x)*this.SCALE_ATAJ,b.x=f+(m-o[3].y)*this.SCALE_ATAJ,b.y=m-(f-o[3].x)*this.SCALE_ATAJ,v.x=L-(M-o[2].y)*this.SCALE_ATAJ,v.y=M+(L-o[2].x)*this.SCALE_ATAJ,T.x=L+(M-o[2].y)*this.SCALE_ATAJ,T.y=M-(L-o[2].x)*this.SCALE_ATAJ;var _=new SuperMapAlgoPlot.Point(0,0),x=new SuperMapAlgoPlot.Point(0,0),O=new SuperMapAlgoPlot.Point(0,0),w=new SuperMapAlgoPlot.Point(0,0);_.x=3*b.x-2*f-(o[3].x-f)*this.SCALE_ATAE,_.y=3*b.y-2*m-(o[3].y-m)*this.SCALE_ATAE,x.x=3*A.x-2*f-(o[3].x-f)*this.SCALE_ATAE,x.y=3*A.y-2*m-(o[3].y-m)*this.SCALE_ATAE,O.x=3*T.x-2*L-(o[2].x-L)*this.SCALE_ATAE,O.y=3*T.y-2*M-(o[2].y-M)*this.SCALE_ATAE,w.x=3*v.x-2*L-(o[2].x-L)*this.SCALE_ATAE,w.y=3*v.y-2*M-(o[2].y-M)*this.SCALE_ATAE,p.x=a+l*(a-u)/(c*this.QIANJI_RATE4),p.y=r+l*(r-h)/(c*this.QIANJI_RATE4),g.x=u+s*(u-a)/(c*this.QIANJI_RATE4),g.y=h+s*(h-r)/(c*this.QIANJI_RATE4);var I=new SuperMapAlgoPlot.Point(0,0);I.x=o[0].x+(p.x-o[0].x)*this.SCALE_AW,I.y=o[0].y+(p.y-o[0].y)*this.SCALE_AW;var C=new SuperMapAlgoPlot.Point(0,0);C.x=o[1].x+(g.x-o[1].x)*this.SCALE_AW,C.y=o[1].y+(g.y-o[1].y)*this.SCALE_AW;var E=new SuperMapAlgoPlot.Point(0,0);E.x=b.x+(p.x-b.x)*this.SCALE_ATAJctrlSameSide,E.y=b.y+(p.y-b.y)*this.SCALE_ATAJctrlSameSide;var D=new SuperMapAlgoPlot.Point(0,0);D.x=v.x+(g.x-v.x)*this.SCALE_ATAJctrlSameSide,D.y=v.y+(g.y-v.y)*this.SCALE_ATAJctrlSameSide;var U=new SuperMapAlgoPlot.Point(0,0);U.x=A.x+(y.x-A.x)*this.SCALE_ATAJctrlDefSide,U.y=A.y+(y.y-A.y)*this.SCALE_ATAJctrlDefSide;var N=new SuperMapAlgoPlot.Point(0,0);N.x=T.x+(P.x-T.x)*this.SCALE_ATAJctrlDefSide,N.y=T.y+(P.y-T.y)*this.SCALE_ATAJctrlDefSide;var R=new SuperMapAlgoPlot.Point(0,0);R.x=d.x+(S.x-d.x)*i,R.y=d.y+(S.y-d.y)*i,this.m_scalePoints.push(new SuperMapAlgoPlot.Point(R.x,R.y));var B=new SuperMapAlgoPlot.Point(0,0),F=new SuperMapAlgoPlot.Point(0,0);B.x=o[0].x+(o[3].x-o[0].x)*i,B.y=o[0].y+(o[3].y-o[0].y)*i,F.x=o[1].x+(o[2].x-o[1].x)*i,F.y=o[1].y+(o[2].y-o[1].y)*i,B.x=B.x+(R.x-B.x)*this.QIANJI_RATE3,B.y=B.y+(R.y-B.y)*this.QIANJI_RATE3,F.x=F.x+(R.x-F.x)*this.QIANJI_RATE3,F.y=F.y+(R.y-F.y)*this.QIANJI_RATE3;var k=[];k.push(o[0].clone()),k.push(I.clone()),k.push(E.clone()),k.push(b.clone()),e.MoveTo(k[0]),e.CurveTo(k[1],k[2],k[3]);var V,Y,z=[],G=[],W=[],j=[],X=[],H=[];for(e.ToSubPathPolygons(H),V=H[0],Y=H[0].length,e.LineTo(_),e.LineTo(o[3]),e.LineTo(x),(k=[]).push(A),k.push(U),k.push(B),k.push(R),e.LineTo(k[0]),H=[],e.ToSubPathPolygons(H);Y<H[0].length;Y++)z.push(H[0][Y]);for(Y=H[0].length,e.CurveTo(k[1],k[2],k[3]),H=[],e.ToSubPathPolygons(H);Y<H[0].length;Y++)G.push(H[0][Y]);for(Y=H[0].length,(k=[]).push(F),k.push(N),k.push(T),e.CurveTo(k[0],k[1],k[2]),H=[],e.ToSubPathPolygons(H);Y<H[0].length;Y++)W.push(H[0][Y]);for(Y=H[0].length,e.LineTo(O),e.LineTo(o[2]),e.LineTo(w),(k=[]).push(v),k.push(D),k.push(C),k.push(n),e.LineTo(k[0]),H=[],e.ToSubPathPolygons(H);Y<H[0].length;Y++)j.push(H[0][Y]);for(Y=H[0].length,e.CurveTo(k[1],k[2],k[3]),H=[],e.ToSubPathPolygons(H);Y<H[0].length;Y++)X.push(H[0][Y]);return H=[],e.ToSubPathPolygons(H),{shapePts:H[0],LeftArowLeftBody:V,LeftArowHead:z,LeftArowRightBody:G,RightArowLeftBody:W,RightArowHead:j,RightArowRightBody:X}}};SuperMapAlgoPlot.AlgoSymbol1007=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.1),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1007"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e=!1;void 0!==t[0].z&&(e=!0),this.scaleValues[0]=this.getSubSymbolScaleValue();var o=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t)*this.scaleValues[0],i=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,o,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_POLYLINE,!0),l=[];l.push(t[t.length-1]),l.push(i[i.length-1]);var s=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePtsBySingleLine(l,o,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_TRIANGLE_SOLID);if(e){for(var n=t.length,a=[],r=[],p=0;p<n;++p)a.push({x:i[p].x,y:i[p].y,z:t[p].z});var u={x:t[n-1].x,y:t[n-1].y,z:t[n-1].z},h={x:t[n-2].x,y:t[n-2].y,z:t[n-2].z},g=this.ComputeZValue(i[n-1],u,h);a[n-1].z=g;for(var c=0;c<s.length;++c){var y=this.ComputeZValue(s[c],u,h);r.push({x:s[c].x,y:s[c].y,z:y})}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,a);let e={surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fill:!0};r.length>0&&this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,r,e)}else{this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,i);let t={surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fill:!0,lineTypeLimit:!0};s.length>0&&this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s,t)}}}};SuperMapAlgoPlot.AlgoSymbol1008=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.1),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1008"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){this.scaleValues[0]=this.getSubSymbolScaleValue();var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t)*this.scaleValues[0],o=Math.sqrt(e*e/3),i=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,o,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_POLYBEZIER,!0),l=[];l.push(t[t.length-1]),l.push(i[i.length-1]);var s=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePtsBySingleLine(l,e,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_COATTAIL);i.push(t[t.length-1]),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,i),s.length>0&&this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,s,{surroundLineFlag:!1,fillLimit:!0,fill:!0,lineTypeLimit:!0})}}};SuperMapAlgoPlot.AlgoSymbol1009=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.1),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1009"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e=!1;void 0!==t[0].z&&(e=!0),this.scaleValues[0]=this.getSubSymbolScaleValue();var o=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t)*this.scaleValues[0],i=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,0,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_POLYLINE,!1),l=[];l.push(i[i.length-1]),l.push(i[i.length-2]);var s=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePtsBySingleLine(l,o,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_POLYLINE),n=[];n.push(i[0]),n.push(i[1]);var a=SuperMapAlgoPlot.ArrowToolkit.generateArrowTailShapePtsBySingleLine(n,o,SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_COATTAIL);if(e){for(var r=t.length,p=[],u=[],h=[],g=0;g<r;++g)p.push({x:t[g].x,y:t[g].y,z:t[g].z});var c,y={x:t[r-1].x,y:t[r-1].y,z:t[r-1].z},P={x:t[r-2].x,y:t[r-2].y,z:t[r-2].z};c=this.ComputeZValue(i[r-1],y,P),p.push({x:i[r-1].x,y:i[r-1].y,z:c});for(var d=0;d<s.length;++d)c=this.ComputeZValue(s[d],y,P),u.push({x:s[d].x,y:s[d].y,z:c});for(var S={x:t[1].x,y:t[1].y,z:t[1].z},f={x:t[0].x,y:t[0].y,z:t[0].z},m=0;m<a.length;++m)c=this.ComputeZValue(a[m],S,f),h.push({x:a[m].x,y:a[m].y,z:c});let e={surroundLineFlag:!1};this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,p,e),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,u),0!==h.length&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,h)}else{let t={surroundLineFlag:!1};this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,i,t),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,s),0!==a.length&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,a)}}}};SuperMapAlgoPlot.AlgoSymbol1010=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(0),this.scaleValues.push(.148),this.scaleValues.push(.4),this.scaleValues.push(.312),this.scaleValues.push(.2)),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1010"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<this.minEditPts)){var e=this.arrowMeshs(t);if(SuperMapAlgoPlot.PlottingUtil.clearSamePts(e.shapePts),0!==e.shapePts.length){this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,e.shapePts,{surroundLineFlag:!1}),this.scalePoints=[];for(let t=0;t<e.m_scalePoints.length;t++)this.addScalePoint(e.m_scalePoints[t])}}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);this.scaleValues.length<4&&(this.scaleValues.push(0),this.scaleValues.push(.148),this.scaleValues.push(.4),this.scaleValues.push(.312),this.scaleValues.push(.2));var i,l,s,n,a=o.length;if(a<=2)return;this.scaleValues.length<4?(i=0,l=.148,s=.4,n=.312):(i=this.scaleValues[0],l=this.scaleValues[1],s=this.scaleValues[2],n=this.scaleValues[3]);var r=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),p=this.operateCtrlPts(o);a=p.length,a--;var u=[];for(let t=0;t<this.scalePoints.length;t++)u.push(this.scalePoints[t].clone());if(0===u.length)return;if(u[t]=e.clone(),3===t){var h=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(o,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_MULTIPOLYBEZIER),g=new SuperMapAlgoPlot.Point(.5*(h.leftBodyPts[0].x+h.rightBodyPts[0].x),.5*(h.leftBodyPts[0].y+h.rightBodyPts[0].y)),c=SuperMapAlgoPlot.PlottingUtil.distance(h.leftBodyPts[0],h.rightBodyPts[0]);this.scaleValues[4]=SuperMapAlgoPlot.PlottingUtil.distance(g,e)/c}else{var y,P,d=a-1;y=a<=3?new SuperMapAlgoPlot.Point((p[0].x+p[1].x)/2,(p[0].y+p[1].y)/2):p[d-1].clone();var S,f,m,L,M,b,A=new SuperMapAlgoPlot.Point(0,0),T=new SuperMapAlgoPlot.Point(0,0),v=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,y,p[d],p[d+1],T,v),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,p[a],p[a-1],v,A),P=A.clone();var _=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(p[a],P,u[2]);S=_.dLen1,_.dLen2,0===S&&(S=.1),f=S,i=(S/=n+1)/r,1===t?(L=(_=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(p[a],P,u[1])).dLen1,s=(M=_.dLen2)/S,n=(L-S)/S):0===t?(S=(_=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(p[a],P,u[0])).dLen1,l=(m=_.dLen2)/S,(b=SuperMapAlgoPlot.PlottingUtil.distance(p[a],p[a-1]))<2*S&&(S=.5*b),L=(_=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(p[a],P,u[1])).dLen1,s=(M=_.dLen2)/S,(n=(f-S)/S)<.1&&(s=M/(S=f/(1+(n=.1))),l=m/S),i=S/r):2===t&&(i=S/r),m=S*l,(b=SuperMapAlgoPlot.PlottingUtil.distance(p[a],p[a-1]))<2*S&&(m=(S=.5*b)*l,i=S/r),this.scaleValues[0]=i,this.scaleValues[1]=l,this.scaleValues[2]=s,this.scaleValues[3]=n}}this.calculateParts()}arrowMeshs(t){var e=[],o=[],i=[],l=[],s=[],n=[],a=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),r=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(a,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_MULTIPOLYBEZIER),p=r.arrowTouLen,u=r.leftBodyPts,h=r.rightBodyPts;if(a=r.OpectrlPoints,!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(p,0)){var g=[];g.push(u[u.length-1]),g.push(h[h.length-1]);var c=[];c.push(this.scaleValues[2]),c.push(this.scaleValues[3]),c.push(0),c.push(0);var y=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts(a,g,c,p,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITH_EAR),P=[];P.push(u[0]),P.push(h[0]);var d,S=SuperMapAlgoPlot.ArrowToolkit.generateArrowTailShapePts(t,P,this.scaleValues[4],SuperMapAlgoPlot.ArrowToolkit.ArrowTailType.ARROWTAIL_COATTAIL_POLYBODY);for(let t=0;t<u.length;t++)e.push(u[t]),o.push(u[t]);for(let t=0;t<y.length;t++)e.push(y[t]),l.push(y[t]);for(let t=h.length-1;t>=0;t--)e.push(h[t]),i.push(h[t]);for(let t=1;t<S.length;t++)e.push(S[t]),s.push(S[t]);var f=a.length;f-=2;var m=p*this.scaleValues[3];d=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(m,a[f],a[f+1]);var L=new SuperMapAlgoPlot.Point(o[o.length-1].x,o[o.length-1].y);L.isScalePoint=!0,L.tag=0,n.push(L),(L=new SuperMapAlgoPlot.Point(l[0].x,l[0].y)).isScalePoint=!0,L.tag=1,n.push(L),(L=new SuperMapAlgoPlot.Point(d.x,d.y)).isScalePoint=!0,L.tag=2,n.push(L),(L=new SuperMapAlgoPlot.Point(S[1].x,S[1].y)).isScalePoint=!0,L.tag=3,n.push(L)}return{shapePts:e,leftBodyPts:o,rightBodyPts:i,arrowHeadPts:l,arrowTailPts:s,m_scalePoints:n}}operateCtrlPts(t){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t);if(3===e.length){var o=((e[0].x+e[1].x)/2+e[2].x)/2,i=((e[0].y+e[1].y)/2+e[2].y)/2,l=new SuperMapAlgoPlot.Point(o,i),s=e[2];e[2]=l,e.push(s)}return e}};SuperMapAlgoPlot.AlgoSymbol1011=class extends SuperMapAlgoPlot.AlgoSymbol1004{constructor(t){super(t),this.sv1_DefaultAtLenDivAbLen=0,this.sv2_DefaultAjWidthDivAtLen=.148,this.sv3_DefaultAeWidthDivAtLen=.4,this.sv4_DefaultAeLenDivAtLen=.312,this.sv_arrowTailWidth=.05,5!==this.scaleValues.length&&(this.scaleValues=[],this.scaleValues.push(this.sv1_DefaultAtLenDivAbLen),this.scaleValues.push(this.sv2_DefaultAjWidthDivAtLen),this.scaleValues.push(this.sv3_DefaultAeWidthDivAtLen),this.scaleValues.push(this.sv4_DefaultAeLenDivAtLen),this.scaleValues.push(this.sv_arrowTailWidth)),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1011"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<2)){var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t);if(0!==e){var o=e*this.scaleValues[4],i=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(o,t[1],t[0]);void 0!==t[0].z&&(i.pntLeft.z=t[0].z,i.pntRight.z=t[0].z),this.controlPoints=[],this.controlPoints.push(i.pntLeft),this.controlPoints.push(i.pntRight);for(let e=1;e<t.length;e++)this.controlPoints.push(t[e].clone());var l=[];for(let t=0;t<this.scaleValues.length;t++)l.push(this.scaleValues[t]);this.scaleValues=[];for(let t=0;t<l.length-1;t++)this.scaleValues.push(l[t]);SuperMapAlgoPlot.AlgoSymbol1004.prototype.calculateParts.apply(this,arguments);var s=i.pntRight.clone();s.isScalePoint=!0,s.tag=3,this.addScalePoint(s),this.controlPoints=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),this.scaleValues=[];for(let t=0;t<l.length;t++)this.scaleValues.push(l[t])}}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(o.length<2)return;this.scaleValues.length<5&&(this.scaleValues=[],this.scaleValues.push(this.sv1_DefaultAtLenDivAbLen),this.scaleValues.push(this.sv2_DefaultAjWidthDivAtLen),this.scaleValues.push(this.sv3_DefaultAeWidthDivAtLen),this.scaleValues.push(this.sv4_DefaultAeLenDivAtLen),this.scaleValues.push(this.sv_arrowTailWidth));var i,l=o[0].clone(),s=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),n=s*this.scaleValues[4],a=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(n,o[1],o[0]);(o=[]).push(a.pntLeft),o.push(a.pntRight);for(let t=1;t<this.controlPoints.length;t++)o.push(this.controlPoints[t].clone());var r,p,u,h,g,c=o.length,y=this.operateCtrlPts(o);c=y.length,c--;var P=this.calcScaleValueCount(o.length);if(P++,this.scaleValues.length<P){var d=this.calcDefaultScaleValues(c);r=d[0],p=d[1],u=d[2],h=d[3],g=this.sv_arrowTailWidth}else r=this.scaleValues[0],p=this.scaleValues[1],u=this.scaleValues[2],h=this.scaleValues[3],g=this.scaleValues[4];i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o);var S=[];for(let t=0;t<this.scalePoints.length;t++)S.push(this.scalePoints[t].clone());if(0===S.length)return;S[t]=e.clone();var f,m,L=c-1;f=c<=3?new SuperMapAlgoPlot.Point((y[0].x+y[1].x)/2,(y[0].y+y[1].y)/2):y[L-1].clone();var M,b,A,T,v,_,x=new SuperMapAlgoPlot.Point(0,0),O=new SuperMapAlgoPlot.Point(0,0),w=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,f,y[L],y[L+1],O,w),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,y[c],y[c-1],w,x),m=x.clone();var I=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(y[c],m,S[2]);M=I.dLen1,I.dLen2,0===M&&(M=.1),b=M,r=(M/=h+1)/i,1===t?(T=(I=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(y[c],m,S[1])).dLen1,u=(v=I.dLen2)/M,h=(T-M)/M):0===t?(M=(I=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(y[c],m,S[0])).dLen1,p=(A=I.dLen2)/M,(_=SuperMapAlgoPlot.PlottingUtil.distance(y[c],y[c-1]))<2*M&&(M=.5*_),T=(I=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(y[c],m,S[1])).dLen1,u=(v=I.dLen2)/M,(h=(b-M)/M)<.1&&(u=v/(M=b/(1+(h=.1))),p=A/M),r=M/i):2===t?r=M/i:g=SuperMapAlgoPlot.PlottingUtil.distance(e,l)/s,A=M*p,(_=SuperMapAlgoPlot.PlottingUtil.distance(y[c],y[c-1]))<2*M&&(A=(M=.5*_)*p,r=M/i),this.scaleValues[0]=r,this.scaleValues[1]=p,this.scaleValues[2]=u,this.scaleValues[3]=h,this.scaleValues[4]=g}this.calculateParts()}arrowMeshs(t){var e=[],o=[],i=[],l=[],s=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),n=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(s,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_MULTIPOLYBEZIER),a=n.arrowTouLen,r=n.leftBodyPts,p=n.rightBodyPts;if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(a,0)){var u=[];u.push(r[r.length-1]),u.push(p[p.length-1]);var h=[];h.push(this.scaleValues[2]),h.push(this.scaleValues[3]),h.push(0),h.push(0);var g=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts(s,u,h,a,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITH_EAR);for(let t=0;t<r.length;t++)e.push(r[t]),o.push(r[t]);for(let t=0;t<g.length;t++)e.push(g[t]),l.push(g[t]);for(let t=p.length-1;t>=0;t--)e.push(p[t]),i.push(p[t])}return{shapePts:e,leftBodyPts:o,rightBodyPts:i,arrowHeadPts:l}}updateScalePoints(t){var e=t.length,o=[];if(!(e<3)){var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t);if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(i,0)){var l=this.operateCtrlPts(t);e=l.length,e--;var s=[];for(let t=0;t<this.scaleValues.length;t++)s.push(this.scaleValues[t]);var n=this.genArrowBodyPts(i,l,s),a=n.ArrowBodyCenterPts,r=this.genAtPts(e,a,s,n.ArrowTouLen),p=this.calc3rdScalePt(e,a,s,n.ArrowTouLen);return o.push(new SuperMapAlgoPlot.Point(n.LeftBodyPtsTemp[e].x,n.LeftBodyPtsTemp[e].y)),o.push(new SuperMapAlgoPlot.Point(r[2].x,r[2].y)),o.push(new SuperMapAlgoPlot.Point(p.x,p.y)),o}}}operateCtrlPts(t){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t);if(3===e.length){var o=((e[0].x+e[1].x)/2+e[2].x)/2,i=((e[0].y+e[1].y)/2+e[2].y)/2,l=new SuperMapAlgoPlot.Point(o,i),s=e[2];e[2]=l,e.push(s)}return e}genArrowBodyPts(t,e,o){var i,l,s,n=[],a=[],r=[],p=[],u=[],h=[],g=e.length;if(g--,o.length<this.calcScaleValueCount(g)){var c=this.calcDefaultScaleValues(g);l=c[0],s=c[1]}else l=o[0],s=o[1];var y=SuperMapAlgoPlot.PlottingUtil.clonePoints(e),P=(y[0].x+y[1].x)/2,d=(y[0].y+y[1].y)/2,S=Math.abs(P-y[2].x),f=Math.abs(d-y[2].y),m=0;if(S>0&&f>0){var L=1/(P-y[2].x),M=-1/(d-y[2].y),b=1*y[2].y/(d-y[2].y)-1*y[2].x/(P-y[2].x);m=Math.abs(L*y[0].x+M*y[0].y+b)/Math.sqrt(L*L+M*M)}else f<=1e-4?m=Math.abs(d-y[1].y):S<=1e-4&&(m=Math.abs(P-y[1].x));var A=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(m,y[2],new SuperMapAlgoPlot.Point(P,d)),T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(y[1],y[2],y[0]);T?(n[1]=y[1],a[1]=y[0]):(n[1]=y[0],a[1]=y[1]),y[1]=new SuperMapAlgoPlot.Point((y[0].x+y[1].x)/2,(y[0].y+y[1].y)/2);var v=Math.sqrt((A.pntLeft.x-A.pntRight.x)*(A.pntLeft.x-A.pntRight.x)+(A.pntLeft.y-A.pntRight.y)*(A.pntLeft.y-A.pntRight.y))*this.sv_AtWidthDivAwWidth,_=(i=v*this.sv_AtLenDivAtWidth)*s;SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l,0)||(_=(i=t*l)*s);var x,O,w=SuperMapAlgoPlot.PlottingUtil.distance(y[g],y[g-1]),I=2*i;w<I&&(_=(i=w/2)*s),y.push(y[g].clone()),x=0,O=0;var C=0,E=[];for(C=2;C<=g;C++)x+=SuperMapAlgoPlot.PlottingUtil.distance(y[C],y[C-1]);for(x-=i,C=2;C<=g-1;C++)O+=SuperMapAlgoPlot.PlottingUtil.distance(y[C],y[C-1]),E[C]=_+(v-_)*Math.pow((x-O)/x,this.sv_AtScaleParameter);E[g]=_;var D,U,N=new SuperMapAlgoPlot.Point(0,0),R=new SuperMapAlgoPlot.Point(0,0),B=new SuperMapAlgoPlot.Point(0,0);for(C=2;C<=g-1;C++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,y[C-1],y[C],y[C+1],R,B),C===g-1&&SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,y[g],y[g-1],B,N),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(E[C],R,y[C]),(T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(B,R,D.pntRight))?(n[C]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y),a[C]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y)):(n[C]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),a[C]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y));for(Math.sqrt(1*(y[g].x-N.x)*(y[g].x-N.x)+1*(y[g].y-N.y)*(y[g].y-N.y))>0&&(y[g]=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(i,y[g],N)),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(_,y[g+1],y[g]),(T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(y[g],y[g+1],D.pntLeft))?(a[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),n[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y)):(a[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y),n[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y)),C=2;C<g;C++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,n[C-1],n[C],n[C+1],R,B),r[C]=new SuperMapAlgoPlot.Point(R.x,R.y),p[C]=new SuperMapAlgoPlot.Point(B.x,B.y),SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,a[C-1],a[C],a[C+1],R,B),u[C]=new SuperMapAlgoPlot.Point(R.x,R.y),h[C]=new SuperMapAlgoPlot.Point(B.x,B.y),2===C&&(SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,n[1],n[2],r[2],N),p[C]=new SuperMapAlgoPlot.Point(N.x,N.y),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,a[1],a[2],u[2],N),h[C]=new SuperMapAlgoPlot.Point(N.x,N.y)),C===g-1&&(I=(w=SuperMapAlgoPlot.PlottingUtil.distance(n[g],n[g-1]))/3,(U=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,y[g],y[g+1])).x+=n[g].x-y[g].x,U.y+=n[g].y-y[g].y,I=(w=v-_)*Math.pow(I/x,this.sv_AtScaleParameter),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,n[g],U),r[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),I=(w=SuperMapAlgoPlot.PlottingUtil.distance(a[g],a[g-1]))/3,(U=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,y[g],y[g+1])).x+=a[g].x-y[g].x,U.y+=a[g].y-y[g].y,I=(w=v-_)*Math.pow(I/x,this.sv_AtScaleParameter),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,a[g],U),u[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y));return{ArrowBodyCenterPts:SuperMapAlgoPlot.PlottingUtil.clonePoints(y),LeftBodyPtsTemp:n,RightBodyPtsTemp:a,LeftBodyPtsLeftCtrlPts:r,LeftBodyPtsRightCtrlPts:p,RightBodyPtsLeftCtrlPts:u,RightBodyPtsRightCtrlPts:h,ArrowTouLen:i}}calcScaleValueCount(){return 4}calcDefaultScaleValues(){var t=[];return t.push(this.sv1_DefaultAtLenDivAbLen),t.push(this.sv2_DefaultAjWidthDivAtLen),t.push(this.sv3_DefaultAeWidthDivAtLen),t.push(this.sv4_DefaultAeLenDivAtLen),t}genAtPts(t,e,o,i){var l=o[2],s=[],n=i*o[3],a=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(n,e[t],e[t+1]);n=i*l;var r=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(n,e[t+1],a);return s.push(new SuperMapAlgoPlot.Point(r.pntLeft.x,r.pntLeft.y)),s.push(e[t+1]),s.push(new SuperMapAlgoPlot.Point(r.pntRight.x,r.pntRight.y)),s}calc3rdScalePt(t,e,o,i){var l=i*o[3];return SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(l,e[t],e[t+1])}};SuperMapAlgoPlot.AlgoSymbol1012=class extends SuperMapAlgoPlot.AlgoSymbol1005{constructor(t){super(t),this.subSymbolDefaultPixelSize=15,this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1012"}};SuperMapAlgoPlot.AlgoSymbol1013=class extends SuperMapAlgoPlot.AlgoSymbol1007{constructor(t){super(t),this.subSymbolDefaultPixelSize=15,this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1013"}};SuperMapAlgoPlot.AlgoSymbol1014=class extends SuperMapAlgoPlot.AlgoSymbol1008{constructor(t){super(t),this.subSymbolDefaultPixelSize=15,this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1014"}};SuperMapAlgoPlot.AlgoSymbol1015=class extends SuperMapAlgoPlot.AlgoSymbol1009{constructor(t){super(t),this.subSymbolDefaultPixelSize=15,this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1015"}};SuperMapAlgoPlot.AlgoSymbol1016=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.1),this.arrowHeadType=t.arrowHeadType?t.arrowHeadType:0,this.arrowBodyType=t.arrowBodyType?t.arrowBodyType:0,this.arrowTailType=t.arrowTailType?t.arrowTailType:0,this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol1016"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e={surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fillStyle:0,lineTypeLimit:!0};this.scaleValues[0]=this.getSubSymbolScaleValue();var o,i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t)*this.scaleValues[0],l=2*Math.sqrt(i*i/3)/1.4,s=Math.sqrt(i*i/3),n=!1;this.arrowBodyType===SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_COATTAIL?o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,i,this.arrowBodyType,n):this.arrowHeadType===SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_TRIANGLE||this.arrowHeadType===SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_TRIANGLE_SOLID?(n=!0,o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,i,this.arrowBodyType,n)):this.arrowHeadType===SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_POLYLINE?o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,i,this.arrowBodyType,n):this.arrowHeadType===SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_COATTAIL_HOLLOW?(n=!0,o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,l,this.arrowBodyType,n)):this.arrowHeadType===SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_COATTAIL?(n=!0,o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,s,this.arrowBodyType,n)):o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePtsBySingleLine(t,0,this.arrowBodyType,n);var a=[];this.arrowBodyType===SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_COATTAIL?(a.push(t[t.length-1]),a.push(t[t.length-2])):n?(a.push(t[t.length-1]),a.push(o[o.length-1])):(a.push(o[o.length-1]),a.push(o[o.length-2]));var r,p=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePtsBySingleLine(a,i,this.arrowHeadType);if(o.length>1)if(this.arrowBodyType!==SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_COATTAIL)this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o);else for(var u=0,h=o.length-1;u<h;u+=2){var g=SuperMapAlgoPlot.PlottingUtil.distance(o[u+1],o[u]),c=180*SuperMapAlgoPlot.PlottingUtil.radian(o[u+1],o[u])/Math.PI,y=SuperMapAlgoPlot.PlottingUtil.circlePoint(o[u+1],.3*g,.3*g,c+30),P=SuperMapAlgoPlot.PlottingUtil.circlePoint(o[u+1],.3*g,.3*g,c+330),d=SuperMapAlgoPlot.PlottingUtil.circlePoint(o[u],.3*g,.3*g,c+30),S=SuperMapAlgoPlot.PlottingUtil.circlePoint(o[u],.3*g,.3*g,c+330),f=[];f.push(y,o[u+1],P,S,o[u],d),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,f,e)}r=this.arrowBodyType===SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_POLYBEZIER?SuperMapAlgoPlot.ArrowToolkit.generateArrowTailShapePtsBySingleLine([o[0],o[1]],i,this.arrowTailType):SuperMapAlgoPlot.ArrowToolkit.generateArrowTailShapePtsBySingleLine([t[0],t[1]],i,this.arrowTailType);var m=SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL;this.arrowHeadType!==SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_COATTAIL&&this.arrowHeadType!==SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_TRIANGLE_SOLID&&this.arrowHeadType!==SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_TRIANGLE&&this.arrowHeadType!==SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_COATTAIL_HOLLOW||(m=SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL),p.length>1&&this.addCell(m,p,e),r.length>1&&this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,r)}}};SuperMapAlgoPlot.AlgoSymbol1017=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.1),this.scaleValues.push(.2),this.scaleValues.push(0),this.scaleValues.push(.3),this.scaleValues.push(.3)),this.CLASS_NAME="SuperMap.Geometry.AlgoSymbol1017"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=this.minEditPts){this.scalePoints=[];var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t);this.isEdit||(this.scaleValues[0]=1.5*this.getSubSymbolScaleValue());var o=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(e,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_PARALLEL),i=o.arrowTouLen,l=o.leftBodyPts,s=o.rightBodyPts,n=[];n.push(l[l.length-1]),n.push(s[s.length-1]);var a=[];a.push(this.scaleValues[3]),a.push(this.scaleValues[4]),a.push(this.scaleValues[0]),a.push(this.scaleValues[1]);var r=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts(e,n,a,i,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITHOUT_EAR),p=[];p=(p=p.concat(l)).concat(r);for(let t=s.length-1;t>=0;t--)p.push(s[t]);p.push(p[0]),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,p,{lineWidthLimit:!0,strokeWidth:0,weight:0,surroundLineFlag:!1});var u=SuperMapAlgoPlot.PlottingUtil.clonePoints(l),h=[];for(let t=s.length-1;t>=0;t--)h.push(s[t]);h=h.concat(u),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,h);var g=SuperMapAlgoPlot.PlottingUtil.clonePoints(r);g.push(s[s.length-1]),g.splice(0,0,l[l.length-1]),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,g,{lineTypeLimit:!0});var c=new SuperMapAlgoPlot.Point((n[0].x+n[1].x)/2,(n[0].y+n[1].y)/2),y=new SuperMapAlgoPlot.Point(c.x,c.y);y.isScalePoint=!0,y.tag=0,this.scalePoints.push(y);var P=new SuperMapAlgoPlot.Point(l[l.length-1].x,l[l.length-1].y);P.isScalePoint=!0,P.tag=1,this.scalePoints.push(P);var d=new SuperMapAlgoPlot.Point(r[0].x,r[0].y);d.isScalePoint=!0,d.tag=2,this.scalePoints.push(d),this.finish()}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=new SuperMapAlgoPlot.Point(this.scalePoints[0].x,this.scalePoints[0].y),i=new SuperMapAlgoPlot.Point(this.scalePoints[1].x,this.scalePoints[1].y),l=new SuperMapAlgoPlot.Point(this.scalePoints[2].x,this.scalePoints[2].y),s=this.scaleValues[0],n=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);n=SuperMapAlgoPlot.PlottingUtil.clearSamePts(n);var a=SuperMapAlgoPlot.PlottingUtil.polylineDistance(n),r=a*s;if(0==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,n[n.length-2],n[n.length-1]),o=t.projectPoint;if(t.isOnline){let t=SuperMapAlgoPlot.PlottingUtil.distance(o,n[n.length-1]);this.scaleValues[0]=t/a}}else if(1==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,i,l).projectPoint,s=SuperMapAlgoPlot.PlottingUtil.distance(t,o);this.scaleValues[1]=s/r}else if(2==t){let t=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,n[1],l).projectPoint,i=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(t,o,n[1]),s=i.projectPoint,a=SuperMapAlgoPlot.PlottingUtil.distance(s,o);!1===i.isOnline&&(this.scaleValues[4]=a/r)}}this.calculateParts()}};SuperMapAlgoPlot.AlgoSymbol1018=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),this.MAX_ARRAY_SIZE=128,this.sv1_DefaultAtLenDivAbLen=0,this.sv2_DefaultAjWidthDivAtLen=.148,this.sv3_DefaultAeWidthDivAtLen=.4,this.sv4_DefaultAeLenDivAtLen=.312,this.sv_AtScaleParameter=1.5,this.sv_AtLenDivAtWidth=1.35,this.sv_AtWidthDivAwWidth=.5,this.sv_defaultAwLenDivAbLen=.15,0===this.scaleValues.length&&(this.scaleValues.push(this.sv1_DefaultAtLenDivAbLen),this.scaleValues.push(this.sv2_DefaultAjWidthDivAtLen),this.scaleValues.push(this.sv3_DefaultAeWidthDivAtLen),this.scaleValues.push(this.sv4_DefaultAeLenDivAtLen)),this.CLASS_NAME="SuperMap.Geometry.AlgoSymbol1018"}calculateParts(){this.init(),this.applyUse()}applyUse(){var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<3)){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),o=this.arrowMeshs(e),i=SuperMapAlgoPlot.PlottingUtil.clonePoints(o.shapePts);(i=SuperMapAlgoPlot.PlottingUtil.clearSamePts(i)).push(i[0]);var l=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o.leftBodyPts),s=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o.rightBodyPts),n=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o.arrowHeadPts);if(0!=o.shapePts.length){var a=SuperMapAlgoPlot.PlottingUtil.polylineDistance(l),r=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.4*a,l),p=[],u=[],h=[];if(r.bfind)for(let t=0;t<=r.index;t++)p.push(l[t]);var g=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.45*a,l),c=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.8*a,l);if(g.bfind&&c.bfind)for(let t=g.index;t<=c.index;t++)u.push(l[t]);var y=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.85*a,l);if(y.bfind)for(let t=y.index;t<l.length;t++)h.push(l[t]);var P=SuperMapAlgoPlot.PlottingUtil.polylineDistance(s),d=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.15*P,s),S=[],f=[],m=[];if(d.bfind)for(let t=0;t<=d.index;t++)S.push(s[t]);var L=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.2*P,s),M=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.55*P,s);if(L.bfind&&M.bfind)for(let t=L.index;t<=M.index;t++)f.push(s[t]);var b=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.6*P,s);if(b.bfind)for(let t=b.index;t<s.length;t++)m.push(s[t]);var A=SuperMapAlgoPlot.PlottingUtil.clonePoints(n);A.splice(0,0,l[l.length-1]),A.push(s[0]),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,i,{lineWidthLimit:!0,strokeWidth:0,weight:0,surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,p,{surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,u,{surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,h,{surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,S,{surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,f,{surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,m,{surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,A,{surroundLineFlag:!1,lineTypeLimit:!0});var T=this.updateScalePoints(e);if(this.scalePoints=[],3!=T.length)T=[];else for(let t=0;t<T.length;t++)T[t].isScalePoint=!0,T[t].tag=t,this.scalePoints.push(T[t]);this.finish()}else this.finish()}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o),this.scaleValues.length<4&&(this.scaleValues.push(this.sv1_DefaultAtLenDivAbLen),this.scaleValues.push(this.sv2_DefaultAjWidthDivAtLen),this.scaleValues.push(this.sv3_DefaultAeWidthDivAtLen),this.scaleValues.push(this.sv4_DefaultAeLenDivAtLen));var i=o.length;if(i<=2)return;var l,s,n,a,r=this.operateCtrlPts(o);i=r.length,i--;var p=this.calcScaleValueCount(o.length);if(this.scaleValues.length<p){var u=this.calcDefaultScaleValues(i);l=u[0],s=u[1],n=u[2],a=u[3]}else l=this.scaleValues[0],s=this.scaleValues[1],n=this.scaleValues[2],a=this.scaleValues[3];var h=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),g=[];for(let t=0;t<this.scalePoints.length;t++)g.push(this.scalePoints[t].clone());if(0==g.length)return;g[t]=e.clone();var c,y,P=i-1;c=i<=3?new SuperMapAlgoPlot.Point((r[0].x+r[1].x)/2,(r[0].y+r[1].y)/2):r[P-1].clone();var d,S,f,m,L,M,b=new SuperMapAlgoPlot.Point(0,0),A=new SuperMapAlgoPlot.Point(0,0),T=new SuperMapAlgoPlot.Point(0,0);SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,c,r[P],r[P+1],A,T),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,r[i],r[i-1],T,b),y=b.clone();var v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[2]);d=v.dLen1,v.dLen2,0==d&&(d=.1),S=d,l=(d/=a+1)/h,1==t?(m=(v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[1])).dLen1,n=(L=v.dLen2)/d,a=(m-d)/d):0==t?(d=(v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[0])).dLen1,s=(f=v.dLen2)/d,(M=SuperMapAlgoPlot.PlottingUtil.distance(r[i],r[i-1]))<2*d&&(d=.5*M),m=(v=SuperMapAlgoPlot.PlottingUtil.triangleHeightAndPartBottomLen(r[i],y,g[1])).dLen1,n=(L=v.dLen2)/d,(a=(S-d)/d)<.1&&(n=L/(d=S/(1+(a=.1))),s=f/d),l=d/h):2==t&&(l=d/h),f=d*s,(M=SuperMapAlgoPlot.PlottingUtil.distance(r[i],r[i-1]))<2*d&&(f=(d=.5*M)*s,l=d/h),this.scaleValues[0]=l,this.scaleValues[1]=s,this.scaleValues[2]=n,this.scaleValues[3]=a}this.calculateParts()}arrowMeshs(t){var e=[],o=[],i=[],l=[],s=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),n=SuperMapAlgoPlot.ArrowToolkit.generateArrowBodyShapePts(s,this.scaleValues,SuperMapAlgoPlot.ArrowToolkit.ArrowBodyType.ARROWBODY_MULTIPOLYBEZIER),a=n.arrowTouLen,r=n.leftBodyPts,p=n.rightBodyPts;if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(a,0)){var u=[];u.push(r[r.length-1]),u.push(p[p.length-1]);var h=[];h.push(this.scaleValues[2]),h.push(this.scaleValues[3]),h.push(0),h.push(0);var g=SuperMapAlgoPlot.ArrowToolkit.generateArrowHeadShapePts(s,u,h,a,SuperMapAlgoPlot.ArrowToolkit.ArrowHeadType.ARROWHEAD_WITH_EAR);for(let t=0;t<r.length;t++)e.push(r[t]),o.push(r[t]);for(let t=0;t<g.length;t++)e.push(g[t]),l.push(g[t]);for(let t=p.length-1;t>=0;t--)e.push(p[t]),i.push(p[t])}return{shapePts:e,leftBodyPts:o,rightBodyPts:i,arrowHeadPts:l}}updateScalePoints(t){var e=t.length,o=[];if(!(e<3)){var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t);if(!SuperMapAlgoPlot.PlottingUtil.equalFuzzy(i,0)){var l=this.operateCtrlPts(t);e=l.length,e--;var s=[];for(let t=0;t<this.scaleValues.length;t++)s.push(this.scaleValues[t]);var n=this.genArrowBodyPts(i,l,s),a=n.ArrowBodyCenterPts,r=this.genAtPts(e,a,s,n.ArrowTouLen),p=this.calc3rdScalePt(e,a,s,n.ArrowTouLen);return o.push(new SuperMapAlgoPlot.Point(n.LeftBodyPtsTemp[e].x,n.LeftBodyPtsTemp[e].y)),o.push(new SuperMapAlgoPlot.Point(r[2].x,r[2].y)),o.push(new SuperMapAlgoPlot.Point(p.x,p.y)),o}}}operateCtrlPts(t){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t);if(3===e.length){var o=((e[0].x+e[1].x)/2+e[2].x)/2,i=((e[0].y+e[1].y)/2+e[2].y)/2,l=new SuperMapAlgoPlot.Point(o,i),s=e[2];e[2]=l,e.push(s)}return e}genArrowBodyPts(t,e,o){var i,l,s,n=[],a=[],r=[],p=[],u=[],h=[],g=e.length;if(g--,o.length<this.calcScaleValueCount(g)){var c=this.calcDefaultScaleValues(g);l=c[0],s=c[1]}else l=o[0],s=o[1];var y=SuperMapAlgoPlot.PlottingUtil.clonePoints(e),P=(y[0].x+y[1].x)/2,d=(y[0].y+y[1].y)/2,S=Math.abs(P-y[2].x),f=Math.abs(d-y[2].y),m=0;if(S>0&&f>0){var L=1/(P-y[2].x),M=-1/(d-y[2].y),b=1*y[2].y/(d-y[2].y)-1*y[2].x/(P-y[2].x);m=Math.abs(L*y[0].x+M*y[0].y+b)/Math.sqrt(L*L+M*M)}else f<=1e-4?m=Math.abs(d-y[1].y):S<=1e-4&&(m=Math.abs(P-y[1].x));var A=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(m,y[2],new SuperMapAlgoPlot.Point(P,d)),T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(y[1],y[2],y[0]);T?(n[1]=y[1],a[1]=y[0]):(n[1]=y[0],a[1]=y[1]),y[1]=new SuperMapAlgoPlot.Point((y[0].x+y[1].x)/2,(y[0].y+y[1].y)/2);var v=Math.sqrt((A.pntLeft.x-A.pntRight.x)*(A.pntLeft.x-A.pntRight.x)+(A.pntLeft.y-A.pntRight.y)*(A.pntLeft.y-A.pntRight.y))*this.sv_AtWidthDivAwWidth,_=(i=v*this.sv_AtLenDivAtWidth)*s;SuperMapAlgoPlot.PlottingUtil.equalFuzzy(l,0)||(_=(i=t*l)*s);var x,O,w=SuperMapAlgoPlot.PlottingUtil.distance(y[g],y[g-1]),I=2*i;w<I&&(_=(i=w/2)*s),y.push(y[g].clone()),x=0,O=0;var C=0,E=[];for(C=2;C<=g;C++)x+=SuperMapAlgoPlot.PlottingUtil.distance(y[C],y[C-1]);for(x-=i,C=2;C<=g-1;C++)O+=SuperMapAlgoPlot.PlottingUtil.distance(y[C],y[C-1]),E[C]=_+(v-_)*Math.pow((x-O)/x,this.sv_AtScaleParameter);E[g]=_;var D,U,N=new SuperMapAlgoPlot.Point(0,0),R=new SuperMapAlgoPlot.Point(0,0),B=new SuperMapAlgoPlot.Point(0,0);for(C=2;C<=g-1;C++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(0,3,y[C-1],y[C],y[C+1],R,B),C==g-1&&SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,y[g],y[g-1],B,N),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(E[C],R,y[C]),(T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(B,R,D.pntRight))?(n[C]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y),a[C]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y)):(n[C]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),a[C]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y));for(Math.sqrt(1*(y[g].x-N.x)*(y[g].x-N.x)+1*(y[g].y-N.y)*(y[g].y-N.y))>0&&(y[g]=SuperMapAlgoPlot.PlottingUtil.getIncentrePointOnSegmentByScale(i,y[g],N)),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(_,y[g+1],y[g]),(T=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(y[g],y[g+1],D.pntLeft))?(a[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),n[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y)):(a[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y),n[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y)),C=2;C<g;C++)SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,n[C-1],n[C],n[C+1],R,B),r[C]=new SuperMapAlgoPlot.Point(R.x,R.y),p[C]=new SuperMapAlgoPlot.Point(B.x,B.y),SuperMapAlgoPlot.PlottingUtil.getTrianglePoints(3,3,a[C-1],a[C],a[C+1],R,B),u[C]=new SuperMapAlgoPlot.Point(R.x,R.y),h[C]=new SuperMapAlgoPlot.Point(B.x,B.y),2==C&&(SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,n[1],n[2],r[2],N),p[C]=new SuperMapAlgoPlot.Point(N.x,N.y),SuperMapAlgoPlot.PlottingUtil.getTrapezoidPoints(.5,a[1],a[2],u[2],N),h[C]=new SuperMapAlgoPlot.Point(N.x,N.y)),C==g-1&&(I=(w=SuperMapAlgoPlot.PlottingUtil.distance(n[g],n[g-1]))/3,(U=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,y[g],y[g+1])).x+=n[g].x-y[g].x,U.y+=n[g].y-y[g].y,I=(w=v-_)*Math.pow(I/x,this.sv_AtScaleParameter),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,n[g],U),r[g]=new SuperMapAlgoPlot.Point(D.pntLeft.x,D.pntLeft.y),I=(w=SuperMapAlgoPlot.PlottingUtil.distance(a[g],a[g-1]))/3,(U=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(I,y[g],y[g+1])).x+=a[g].x-y[g].x,U.y+=a[g].y-y[g].y,I=(w=v-_)*Math.pow(I/x,this.sv_AtScaleParameter),D=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(I,a[g],U),u[g]=new SuperMapAlgoPlot.Point(D.pntRight.x,D.pntRight.y));return{ArrowBodyCenterPts:SuperMapAlgoPlot.PlottingUtil.clonePoints(y),LeftBodyPtsTemp:n,RightBodyPtsTemp:a,LeftBodyPtsLeftCtrlPts:r,LeftBodyPtsRightCtrlPts:p,RightBodyPtsLeftCtrlPts:u,RightBodyPtsRightCtrlPts:h,ArrowTouLen:i}}calcScaleValueCount(){return 4}calcDefaultScaleValues(){var t=[];return t.push(this.sv1_DefaultAtLenDivAbLen),t.push(this.sv2_DefaultAjWidthDivAtLen),t.push(this.sv3_DefaultAeWidthDivAtLen),t.push(this.sv4_DefaultAeLenDivAtLen),t}genAtPts(t,e,o,i){var l=o[2],s=[],n=i*o[3],a=SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(n,e[t],e[t+1]);n=i*l;var r=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(n,e[t+1],a);return s.push(new SuperMapAlgoPlot.Point(r.pntLeft.x,r.pntLeft.y)),s.push(e[t+1]),s.push(new SuperMapAlgoPlot.Point(r.pntRight.x,r.pntRight.y)),s}calc3rdScalePt(t,e,o,i){var l=i*o[3];return SuperMapAlgoPlot.PlottingUtil.getExcentrePointOnSegmentByScale(l,e[t],e[t+1])}};SuperMapAlgoPlot.AlgoSymbol1019=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.5),this.scaleValues.push(.222222),this.scaleValues.push(.5),this.scaleValues.push(.5),this.scaleValues.push(.5)),this.CLASS_NAME="SuperMap.Geometry.AlgoSymbol1019"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){0==this.scaleValues.length&&(this.scaleValues=[],this.scaleValues.push(.5),this.scaleValues.push(.222222),this.scaleValues.push(.5),this.scaleValues.push(.5),this.scaleValues.push(.5));var e=t[0].clone(),o=t[1].clone(),i=SuperMapAlgoPlot.PlottingUtil.distance(e,o),l=this.scaleValues[0],s=new SuperMapAlgoPlot.Point(0,-i*l),n=new SuperMapAlgoPlot.Point(0,i*l),a=this.scaleValues[1],r=this.scaleValues[3],p=new SuperMapAlgoPlot.Point(i*(1-r),-i*a),u=new SuperMapAlgoPlot.Point(i*(1-r),i*a),h=this.scaleValues[2],g=this.scaleValues[4],c=new SuperMapAlgoPlot.Point(i*(1-g),-i*h),y=new SuperMapAlgoPlot.Point(i*(1-g),i*h),P=new SuperMapAlgoPlot.Point(i,0),d=SuperMapAlgoPlot.PlottingUtil.radian(e,o),S=[];S.push(s),S.push(p),S.push(c),S.push(P),S.push(y),S.push(u),S.push(n),S.push(s);var f=[];for(let t=0;t<S.length;t++){var m=SuperMapAlgoPlot.PlottingUtil.coordinateTrans(e,S[t],d*SuperMapAlgoPlot.PlottingUtil.RTOD);f.push(m)}var L=[];for(let t=f.length-1;t>=0;--t)L.push(f[t]);this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,L,{lineWidthLimit:!0,strokeWidth:0,weight:0,surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[L[2],L[1],L[7],L[6]],{surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[L[6],L[5],L[4],L[3],L[2]],{lineTypeLimit:!0,surroundLineFlag:!1}),this.scalePoints=[];var M=f[0].clone();M.isScalePoint=!0,M.tag=0,this.scalePoints.push(M);var b=f[1].clone();b.isScalePoint=!0,b.tag=1,this.scalePoints.push(b);var A=f[2].clone();A.isScalePoint=!0,A.tag=2,this.scalePoints.push(A),this.finish()}}modifyPoint(t,e){if(e.isScalePoint&&(t>=0||t<3)){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i=SuperMapAlgoPlot.PlottingUtil.distance(o[0],o[1]),l=o[0].clone(),s=o[1].clone(),n=e.clone();if(0==t){var a=SuperMapAlgoPlot.PlottingUtil.distance(n,l)/i;this.scaleValues[0]=a}else if(1==t){let t=SuperMapAlgoPlot.PlottingUtil.projectPoint(n,l,s),e=SuperMapAlgoPlot.PlottingUtil.distance(t,n)/i;this.scaleValues[1]=e;let o=SuperMapAlgoPlot.PlottingUtil.distance(t,s)/i;this.scaleValues[3]=o}else if(2==t){let t=SuperMapAlgoPlot.PlottingUtil.projectPoint(n,l,s),e=SuperMapAlgoPlot.PlottingUtil.distance(t,n)/i;this.scaleValues[2]=e;let o=SuperMapAlgoPlot.PlottingUtil.distance(t,s)/i;this.scaleValues[4]=o}}this.calculateParts()}};SuperMapAlgoPlot.AlgoSymbol1020=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.5),this.scaleValues.push(.222222),this.scaleValues.push(.5),this.scaleValues.push(.5),this.scaleValues.push(.5)),this.CLASS_NAME="SuperMap.Geometry.AlgoSymbol1020"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){0==this.scaleValues.length&&(this.scaleValues=[],this.scaleValues.push(.5),this.scaleValues.push(.222222),this.scaleValues.push(.5),this.scaleValues.push(.5),this.scaleValues.push(.5));var e=t[0].clone(),o=t[1].clone(),i=SuperMapAlgoPlot.PlottingUtil.distance(e,o),l=this.scaleValues[0],s=new SuperMapAlgoPlot.Point(0,-i*l),n=new SuperMapAlgoPlot.Point(0,i*l),a=this.scaleValues[1],r=this.scaleValues[3],p=new SuperMapAlgoPlot.Point(i*(1-r),-i*a),u=new SuperMapAlgoPlot.Point(i*(1-r),i*a),h=this.scaleValues[2],g=this.scaleValues[4],c=new SuperMapAlgoPlot.Point(i*(1-g),-i*h),y=new SuperMapAlgoPlot.Point(i*(1-g),i*h),P=new SuperMapAlgoPlot.Point(i,0),d=SuperMapAlgoPlot.PlottingUtil.radian(e,o),S=SuperMapAlgoPlot.PlottingUtil.distance(s,p),f=SuperMapAlgoPlot.PlottingUtil.findPointInLine(s,p,.3*S),m=SuperMapAlgoPlot.PlottingUtil.findPointInLine(s,p,.4*S),L=SuperMapAlgoPlot.PlottingUtil.distance(u,n),M=SuperMapAlgoPlot.PlottingUtil.findPointInLine(u,n,.6*L),b=SuperMapAlgoPlot.PlottingUtil.findPointInLine(u,n,.7*L),A=[];A.push(s),A.push(f),A.push(m),A.push(p),A.push(c),A.push(P),A.push(y),A.push(u),A.push(M),A.push(b),A.push(n);var T=[];for(let t=0;t<A.length;t++){var v=SuperMapAlgoPlot.PlottingUtil.coordinateTrans(e,A[t],d*SuperMapAlgoPlot.PlottingUtil.RTOD);T.push(v)}var _=[];for(let t=T.length-1;t>=0;--t)_.push(T[t]);var x=SuperMapAlgoPlot.PlottingUtil.clonePoints(_);x.push(x[0]),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,x,{lineWidthLimit:!0,strokeWidth:0,weight:0,surroundLineFlag:!1}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[_[0],_[1]]),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[_[2],_[3]]),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[_[3],_[4],_[5],_[6],_[7]],{lineTypeLimit:!0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[_[7],_[8]]),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[_[9],_[10]]),this.scalePoints=[];var O=T[0].clone();O.isScalePoint=!0,O.tag=0,this.scalePoints.push(O);var w=T[3].clone();w.isScalePoint=!0,w.tag=1,this.scalePoints.push(w);var I=T[4].clone();I.isScalePoint=!0,I.tag=2,this.scalePoints.push(I),this.finish()}}modifyPoint(t,e){if(e.isScalePoint&&(t>=0||t<3)){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i=SuperMapAlgoPlot.PlottingUtil.distance(o[0],o[1]),l=o[0].clone(),s=o[1].clone(),n=e.clone();if(0==t){let t=SuperMapAlgoPlot.PlottingUtil.distance(n,l)/i;this.scaleValues[0]=t}else if(1==t){let t=SuperMapAlgoPlot.PlottingUtil.projectPoint(n,l,s),e=SuperMapAlgoPlot.PlottingUtil.distance(t,n)/i;this.scaleValues[1]=e;let o=SuperMapAlgoPlot.PlottingUtil.distance(t,s)/i;this.scaleValues[3]=o}else if(2==t){let t=SuperMapAlgoPlot.PlottingUtil.projectPoint(n,l,s),e=SuperMapAlgoPlot.PlottingUtil.distance(t,n)/i;this.scaleValues[2]=e;let o=SuperMapAlgoPlot.PlottingUtil.distance(t,s)/i;this.scaleValues[4]=o}}this.calculateParts()}};SuperMapAlgoPlot.AlgoSymbol1021=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.25),this.CLASS_NAME="SuperMap.Geometry.AlgoSymbol1021",this.QIANJI_RATE1=9,this.QIANJI_RATE2=20,this.QIANJI_RATE4=5,this.QIANJI_RATE3=1/3,this.QIANJI_TAIL_RATE1=8,this.QIANJI_TAIL_RATE2=3,this.QIANJI_TAIL_RATE3=.6,this.SV1_Default=.25,this.SV1_MinValue=0,this.SV1_MaxValue=.5,this.DEFAULT_ARROW_TAIL_POS=.4,this.SCALE_VALUE_COUNT=1,this.MIN_LEN_LeftToRightCenter=1e-7,this.SCALE_AT=1/3,this.SCALE_ATAJ=1/7,this.SCALE_ATAE=1/3,this.SCALE_AW=2/3,this.SCALE_ATAJctrlDefSide=.8,this.SCALE_ATAJctrlSameSide=2/3,this.SCALE_MM_LEFT=.25,this.SCALE_MM_RIGHT=.75,this.BEZIER_K1=1/3,this.QIANJI_OPERATE_RATE1=1,this.m_dMaxDis=0,this.m_bIsAnimation=!1}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t),this.components.length=0,this.m_scalePoints=[],t.length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<3)){var e=SuperMapAlgoPlot.PlottingUtil.clonePoints(t),o=this.arrowMeshs(e);o.LeftArowHead.unshift(o.LeftArowLeftBody[0][o.LeftArowLeftBody[0].length-1]),o.RightArowHead.unshift(o.RightArowLeftBody[o.RightArowLeftBody.length-1]),o.LeftArowLeftBody[0].push(o.LeftArowHead[0]),o.RightArowLeftBody.push(o.RightArowHead[0]),o.shapePts.push(o.shapePts[0]);var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o.LeftArowLeftBody[0]),l=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.4*i,o.LeftArowLeftBody[0]),s=[],n=[];if(l.bfind)for(let t=0;t<=l.index;t++)s.push(o.LeftArowLeftBody[0][t]);var a=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.5*i,o.LeftArowLeftBody[0]);if(a.bfind)for(let t=a.index;t<o.LeftArowLeftBody[0].length-1;t++)n.push(o.LeftArowLeftBody[0][t]);var r=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o.RightArowLeftBody),p=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.4*r,o.RightArowLeftBody),u=[],h=[];if(p.bfind)for(let t=0;t<=p.index;t++)u.push(o.RightArowLeftBody[t]);var g=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.5*r,o.RightArowLeftBody);if(g.bfind)for(let t=g.index;t<o.RightArowLeftBody.length-1;t++)h.push(o.RightArowLeftBody[t]);var c=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o.RightArowRightBody),y=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.4*c,o.RightArowRightBody),P=[],d=[];if(y.bfind)for(let t=0;t<=y.index;t++)P.push(o.RightArowRightBody[t]);var S=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(.5*c,o.RightArowRightBody);if(S.bfind)for(let t=S.index;t<o.RightArowRightBody.length-1;t++)d.push(o.RightArowRightBody[t]);o.shapePts.length>0&&(this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,o.shapePts,{strokeWidth:0,weight:0,lineWidthLimit:!0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,s),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,n),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o.LeftArowHead,{lineTypeLimit:!0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o.LeftArowRightBody),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,u),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,h),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,o.RightArowHead,{lineTypeLimit:!0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,P),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,d)),this.scalePoints=[];for(let t=0;t<this.m_scalePoints.length;t++)this.m_scalePoints[t].isScalePoint=!0,this.m_scalePoints[t].tag=t,this.scalePoints.push(this.m_scalePoints[t]);this.finish()}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i,l=SuperMapAlgoPlot.PlottingUtil.operateControlPoints(o),s=new SuperMapAlgoPlot.Point((l[0].x+l[1].x)/2,(l[0].y+l[1].y)/2),n=new SuperMapAlgoPlot.Point((l[2].x+l[3].x)/2,(l[2].y+l[3].y)/2),a=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,s,n);if(a.isOnline){var r=SuperMapAlgoPlot.PlottingUtil.distance(a.projectPoint,s),p=SuperMapAlgoPlot.PlottingUtil.distance(s,n);(i=SuperMapAlgoPlot.PlottingUtil.equalFuzzy(r,0)?this.SV1_MinValue:r/p)>this.SV1_MaxValue&&(i=this.SV1_MaxValue)}else i=SuperMapAlgoPlot.PlottingUtil.distance(a.projectPoint,s)<SuperMapAlgoPlot.PlottingUtil.distance(a.projectPoint,n)?this.SV1_MinValue:this.SV1_MaxValue;this.scaleValues=[],this.scaleValues.push(i)}this.calculateParts()}arrowMeshs(t){var e=new SuperMapAlgoPlot.Path2D,o=[];o=this.m_bIsAnimation&&4===t.length?SuperMapAlgoPlot.PlottingUtil.clonePoints(t):SuperMapAlgoPlot.PlottingUtil.operateControlPoints(t);var i=this.scaleValues[0],l=SuperMapAlgoPlot.PlottingUtil.distance(o[0],o[3]),s=SuperMapAlgoPlot.PlottingUtil.distance(o[1],o[2]),n=o[1].clone(),a=.5*(o[0].x+o[3].x),r=.5*(o[0].y+o[3].y),p=new SuperMapAlgoPlot.Point(a,r),u=.5*(o[1].x+o[2].x),h=.5*(o[1].y+o[2].y),g=new SuperMapAlgoPlot.Point(u,h),c=SuperMapAlgoPlot.PlottingUtil.distance(p,g);c<this.MIN_LEN_LeftToRightCenter&&(c=this.MIN_LEN_LeftToRightCenter),p.x=a+l*(a-u)/(c*this.QIANJI_RATE1),p.y=r+l*(r-h)/(c*this.QIANJI_RATE1),g.x=u+s*(u-a)/(c*this.QIANJI_RATE1),g.y=h+s*(h-r)/(c*this.QIANJI_RATE1);var y=new SuperMapAlgoPlot.Point(0,0),P=new SuperMapAlgoPlot.Point(0,0);y.x=a+l*(a-u)/(c*this.QIANJI_RATE2),y.y=r+l*(r-h)/(c*this.QIANJI_RATE2),P.x=u+s*(u-a)/(c*this.QIANJI_RATE2),P.y=h+s*(h-r)/(c*this.QIANJI_RATE2);var d=new SuperMapAlgoPlot.Point((o[0].x+o[1].x)/2,(o[0].y+o[1].y)/2),S=new SuperMapAlgoPlot.Point((o[2].x+o[3].x)/2,(o[2].y+o[3].y)/2),f=o[3].x-(o[3].x-p.x)*this.SCALE_AT,m=o[3].y-(o[3].y-p.y)*this.SCALE_AT,L=o[2].x-(o[2].x-g.x)*this.SCALE_AT,M=o[2].y-(o[2].y-g.y)*this.SCALE_AT,b=new SuperMapAlgoPlot.Point(0,0),A=new SuperMapAlgoPlot.Point(0,0),T=new SuperMapAlgoPlot.Point(0,0),v=new SuperMapAlgoPlot.Point(0,0);A.x=f-(m-o[3].y)*this.SCALE_ATAJ,A.y=m+(f-o[3].x)*this.SCALE_ATAJ,b.x=f+(m-o[3].y)*this.SCALE_ATAJ,b.y=m-(f-o[3].x)*this.SCALE_ATAJ,v.x=L-(M-o[2].y)*this.SCALE_ATAJ,v.y=M+(L-o[2].x)*this.SCALE_ATAJ,T.x=L+(M-o[2].y)*this.SCALE_ATAJ,T.y=M-(L-o[2].x)*this.SCALE_ATAJ;var _=new SuperMapAlgoPlot.Point(0,0),x=new SuperMapAlgoPlot.Point(0,0),O=new SuperMapAlgoPlot.Point(0,0),w=new SuperMapAlgoPlot.Point(0,0);_.x=3*b.x-2*f-(o[3].x-f)*this.SCALE_ATAE,_.y=3*b.y-2*m-(o[3].y-m)*this.SCALE_ATAE,x.x=3*A.x-2*f-(o[3].x-f)*this.SCALE_ATAE,x.y=3*A.y-2*m-(o[3].y-m)*this.SCALE_ATAE,O.x=3*T.x-2*L-(o[2].x-L)*this.SCALE_ATAE,O.y=3*T.y-2*M-(o[2].y-M)*this.SCALE_ATAE,w.x=3*v.x-2*L-(o[2].x-L)*this.SCALE_ATAE,w.y=3*v.y-2*M-(o[2].y-M)*this.SCALE_ATAE,p.x=a+l*(a-u)/(c*this.QIANJI_RATE4),p.y=r+l*(r-h)/(c*this.QIANJI_RATE4),g.x=u+s*(u-a)/(c*this.QIANJI_RATE4),g.y=h+s*(h-r)/(c*this.QIANJI_RATE4);var I=new SuperMapAlgoPlot.Point(0,0);I.x=o[0].x+(p.x-o[0].x)*this.SCALE_AW,I.y=o[0].y+(p.y-o[0].y)*this.SCALE_AW;var C=new SuperMapAlgoPlot.Point(0,0);C.x=o[1].x+(g.x-o[1].x)*this.SCALE_AW,C.y=o[1].y+(g.y-o[1].y)*this.SCALE_AW;var E=new SuperMapAlgoPlot.Point(0,0);E.x=b.x+(p.x-b.x)*this.SCALE_ATAJctrlSameSide,E.y=b.y+(p.y-b.y)*this.SCALE_ATAJctrlSameSide;var D=new SuperMapAlgoPlot.Point(0,0);D.x=v.x+(g.x-v.x)*this.SCALE_ATAJctrlSameSide,D.y=v.y+(g.y-v.y)*this.SCALE_ATAJctrlSameSide;var U=new SuperMapAlgoPlot.Point(0,0);U.x=A.x+(y.x-A.x)*this.SCALE_ATAJctrlDefSide,U.y=A.y+(y.y-A.y)*this.SCALE_ATAJctrlDefSide;var N=new SuperMapAlgoPlot.Point(0,0);N.x=T.x+(P.x-T.x)*this.SCALE_ATAJctrlDefSide,N.y=T.y+(P.y-T.y)*this.SCALE_ATAJctrlDefSide;var R=new SuperMapAlgoPlot.Point(0,0);R.x=d.x+(S.x-d.x)*i,R.y=d.y+(S.y-d.y)*i,this.m_scalePoints.push(new SuperMapAlgoPlot.Point(R.x,R.y));var B=new SuperMapAlgoPlot.Point(0,0),F=new SuperMapAlgoPlot.Point(0,0);B.x=o[0].x+(o[3].x-o[0].x)*i,B.y=o[0].y+(o[3].y-o[0].y)*i,F.x=o[1].x+(o[2].x-o[1].x)*i,F.y=o[1].y+(o[2].y-o[1].y)*i,B.x=B.x+(R.x-B.x)*this.QIANJI_RATE3,B.y=B.y+(R.y-B.y)*this.QIANJI_RATE3,F.x=F.x+(R.x-F.x)*this.QIANJI_RATE3,F.y=F.y+(R.y-F.y)*this.QIANJI_RATE3;var k=[];k.push(o[0].clone()),k.push(I.clone()),k.push(E.clone()),k.push(b.clone()),e.MoveTo(k[0]),e.CurveTo(k[1],k[2],k[3]);var V,Y=[],z=[],G=[],W=[],j=[],X=[],H=[];for(e.ToSubPathPolygons(H),Y.push(H[0]),V=H[0].length,e.LineTo(_),e.LineTo(o[3]),e.LineTo(x),(k=[]).push(A),k.push(U),k.push(B),k.push(R),e.LineTo(k[0]),H=[],e.ToSubPathPolygons(H);V<H[0].length;V++)z.push(H[0][V]);for(V=H[0].length,e.CurveTo(k[1],k[2],k[3]),H=[],e.ToSubPathPolygons(H);V<H[0].length;V++)G.push(H[0][V]);for(V=H[0].length,(k=[]).push(F),k.push(N),k.push(T),e.CurveTo(k[0],k[1],k[2]),H=[],e.ToSubPathPolygons(H);V<H[0].length;V++)W.push(H[0][V]);for(V=H[0].length,e.LineTo(O),e.LineTo(o[2]),e.LineTo(w),(k=[]).push(v),k.push(D),k.push(C),k.push(n),e.LineTo(k[0]),H=[],e.ToSubPathPolygons(H);V<H[0].length;V++)j.push(H[0][V]);for(V=H[0].length,e.CurveTo(k[1],k[2],k[3]),H=[],e.ToSubPathPolygons(H);V<H[0].length;V++)X.push(H[0][V]);return H=[],e.ToSubPathPolygons(H),{shapePts:H[0],LeftArowLeftBody:Y,LeftArowHead:z,LeftArowRightBody:G,ArowMidBody:[],RightArowLeftBody:W,RightArowHead:j,RightArowRightBody:X}}};SuperMapAlgoPlot.AlgoSymbol1022=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&this.scaleValues.push(.05),this.CLASS_NAME="SuperMap.Geometry.AlgoSymbol1022"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t),o=e*this.scaleValues[0],i=SuperMapAlgoPlot.PlottingUtil.paraLine(t,o,!0),l=SuperMapAlgoPlot.PlottingUtil.paraLine(t,o,!1),s=SuperMapAlgoPlot.PlottingUtil.findPointInLine(i[0],i[1],.6*e),n=SuperMapAlgoPlot.PlottingUtil.findPointInLine(i[0],i[1],.5*e),a=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(.1*e,i[0],n).pntLeft;this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,[a,s,i[1]],{surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fill:!0,lineTypeLimit:!0});var r=SuperMapAlgoPlot.PlottingUtil.findPointInLine(l[0],l[1],.4*e),p=SuperMapAlgoPlot.PlottingUtil.findPointInLine(l[0],l[1],.5*e),u=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(.1*e,l[0],p).pntRight;this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,[u,r,l[0]],{surroundLineFlag:!1,fillLimit:!0,fillColorLimit:!1,fill:!0,lineTypeLimit:!0}),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,i),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,[l[1],l[0]]),this.addScalePoint(i[0],0),this.finish()}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o);if(0===t){var l=SuperMapAlgoPlot.PlottingUtil.distance(o[0],e)/i;this.scaleValues[0]=l}}this.calculateParts()}};SuperMapAlgoPlot.AlgoSymbol315=class extends SuperMapAlgoPlot.AlgoSymbol1004{constructor(t){super(t),0!==this.scaleValues.length&&(this.scaleValues=[],this.scaleValues.push(.2),this.scaleValues.push(.2),this.scaleValues.push(.4),this.scaleValues.push(.4),this.scaleValues.push(.1),this.scaleValues.push(.2),this.scaleValues.push(.1),this.scaleValues.push(.2),this.scaleValues.push(1),this.scaleValues.push(1)),this.CLASS_NAME="SuperMapAlgoPlot.AlgoSymbol315"}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length>=2&&t.length<this.minEditPts&&this.calAssistantLine(),!(t.length<this.minEditPts)){var e=0;for(let o=0;o<t.length-1;o++)e+=SuperMapAlgoPlot.PlottingUtil.distance(t[o],t[o+1]);SuperMapAlgoPlot.AlgoSymbol1004.prototype.applyUse.apply(this,arguments),this.scaleValues.length<9&&(this.scaleValues=[],this.scaleValues.push(.2),this.scaleValues.push(.2),this.scaleValues.push(.4),this.scaleValues.push(.4),this.scaleValues.push(.1),this.scaleValues.push(.2),this.scaleValues.push(.1),this.scaleValues.push(.2),this.scaleValues.push(1),this.scaleValues.push(1));var o,i=e*this.scaleValues[4],l=e*this.scaleValues[5],s=SuperMapAlgoPlot.PlottingUtil.distance(t[1],t[0]),n=SuperMapAlgoPlot.PlottingUtil.linePnt(t[1],t[0],s+l);this.scaleValues[8],o=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(i,t[1],n);var a,r=e*this.scaleValues[6],p=e*this.scaleValues[7],u=SuperMapAlgoPlot.PlottingUtil.linePnt(t[0],t[1],s+p);this.scaleValues[9],a=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(r,t[0],u);var h=[];h.push(new SuperMapAlgoPlot.Point(o.pntLeft.x,o.pntLeft.y)),h.push(new SuperMapAlgoPlot.Point(t[0].x,t[0].y)),h.push(new SuperMapAlgoPlot.Point(t[1].x,t[1].y)),h.push(new SuperMapAlgoPlot.Point(a.pntRight.x,a.pntRight.y));var g=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(h);g=SuperMapAlgoPlot.PlottingUtil.clearSamePts(g),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,g),this.addScalePoint(o.pntLeft,3),this.addScalePoint(a.pntRight,4)}}modifyPoint(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),l=SuperMapAlgoPlot.PlottingUtil.projectPoint(e,o[0],o[1]);if(t<=2&&(SuperMapAlgoPlot.AlgoSymbol1004.prototype.modifyPoint.apply(this,arguments),super.modifyPoint(t,e)),3===t){let t=SuperMapAlgoPlot.PlottingUtil.distance(e,l)/i,s=SuperMapAlgoPlot.PlottingUtil.distance(l,o[0])/i;this.scaleValues[4]=t,this.scaleValues[5]=s,SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(o[0],o[1],e)?this.scaleValues[8]=1:this.scaleValues[8]=0}if(4===t){let t=SuperMapAlgoPlot.PlottingUtil.distance(e,l)/i,s=SuperMapAlgoPlot.PlottingUtil.distance(l,o[1])/i;this.scaleValues[6]=t,this.scaleValues[7]=s,SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(o[0],o[1],e)?this.scaleValues[9]=1:this.scaleValues[9]=0}}this.calculateParts()}};SuperMapAlgoPlot.AlgoSymbol15200=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.05),this.scaleValues.push(0),this.scaleValues.push(.185))}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(t);e=SuperMapAlgoPlot.PlottingUtil.clearSamePts(e),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,e);var o=0;for(let t=0,i=e.length-1;t<i;t++)o+=SuperMapAlgoPlot.PlottingUtil.distance(e[t],e[t+1]);var i=0;for(let e=0,o=t.length-1;e<o;e++)i+=SuperMapAlgoPlot.PlottingUtil.distance(t[e],t[e+1]);this.isEdit||(this.scaleValues[0]=.5*this.getSubSymbolScaleValue());var l=this.scaleValues[0]*i,s=this.scaleValues[1],n=this.scaleValues[2]*i,a=.3*n;for(let t=n;t<o;t+=n){var r=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(t,e);if(-1===r.index)return void this.finish();var p=t+a,u=SuperMapAlgoPlot.PlottingUtil.getPtsIndexByDistance(p,e);if(-1===u.index)return void this.finish();var h=[],g=[];h.push(r.pts);var c=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(l,e[r.index],r.pts);0===s?h.push(new SuperMapAlgoPlot.Point(c.pntLeft.x,c.pntLeft.y)):h.push(new SuperMapAlgoPlot.Point(c.pntRight.x,c.pntRight.y)),g.push(u.pts);var y=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(l,e[u.index],u.pts);if(0===s?g.push(new SuperMapAlgoPlot.Point(y.pntLeft.x,y.pntLeft.y)):g.push(new SuperMapAlgoPlot.Point(y.pntRight.x,y.pntRight.y)),n===t){this.scalePoints=[];var P=new SuperMapAlgoPlot.Point(h[1].x,h[1].y);P.isScalePoint=!0,P.tag=0,this.scalePoints.push(P),(P=new SuperMapAlgoPlot.Point(h[0].x,h[0].y)).isScalePoint=!0,P.tag=1,this.scalePoints.push(P)}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,h),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,g)}this.finish()}}computeScaleValues(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o)).length<this.minEditPts)return;var i=0;for(let t=0,e=o.length-1;t<e;t++)i+=SuperMapAlgoPlot.PlottingUtil.distance(o[t],o[t+1]);var l=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(o),s=new SuperMapAlgoPlot.Point(e.x,e.y);if(0===t){var n=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(l,i*this.scaleValues[2]);if(-1===n.index)return;var a=SuperMapAlgoPlot.PlottingUtil.distance(n.pt,s)/i,r=SuperMapAlgoPlot.PlottingUtil.pointIsRightToLine(l[0],l[1],e);this.scaleValues[1]=r?1:0,this.scaleValues[0]=a}else if(1===t){var p=0,u=-1,h=[];for(let t=0,o=l.length-1;t<o;t++){var g=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,l[t],l[t+1]);if(g.isOnline){var c=SuperMapAlgoPlot.PlottingUtil.distance(g.projectPoint,this.controlPoints[1]);0==p?(p=c,u=t,h=e):c<p&&(p=c,u=t,h=e)}}if(-1==u)return;var y=0;for(let t=0,e=u-1;t<e;t++)y+=SuperMapAlgoPlot.PlottingUtil.distance(l[t],l[t+1]);var P=(y+=SuperMapAlgoPlot.PlottingUtil.distance(h,l[u]))/i;P>.7&&(P=.7),this.scaleValues[2]=P}}}};SuperMapAlgoPlot.AlgoSymbol320=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.1),this.scaleValues.push(.1))}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e=0;for(let o=0;o<t.length-1;o++)e+=SuperMapAlgoPlot.PlottingUtil.distance(t[o],t[o+1]);var o,i,l=this.scaleValues[0]*e,s=t[0],n=t[1],a=180*SuperMapAlgoPlot.PlottingUtil.radian(s,n)/Math.PI;o=SuperMapAlgoPlot.PlottingUtil.paraLine(t,l,!0),i=SuperMapAlgoPlot.PlottingUtil.paraLine(t,l,!1);var r=.15*e,p=SuperMapAlgoPlot.PlottingUtil.circlePoint(o[0],r,r,a+165),u=SuperMapAlgoPlot.PlottingUtil.circlePoint(i[0],r,r,a-165),h=SuperMapAlgoPlot.PlottingUtil.circlePoint(o[o.length-1],r,r,a+15),g=SuperMapAlgoPlot.PlottingUtil.circlePoint(i[i.length-1],r,r,a-15),c=[];c.push(p),c.push(o[0]),c.push(o[o.length-1]),c.push(h),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,c);var y=[];y.push(u),y.push(i[0]),y.push(i[i.length-1]),y.push(g),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,y);var P=new SuperMapAlgoPlot.Point(o[0].x,o[0].y);P.isScalePoint=!0,P.tag=0,this.scalePoints.push(P),this.finish()}}computeScaleValues(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i=0;for(let t=0;t<o.length-1;t++)i+=SuperMapAlgoPlot.PlottingUtil.distance(o[t],o[t+1]);if(0==t){var l=o[0],s=o[1],n=SuperMapAlgoPlot.PlottingUtil.projectPoint(e,l,s),a=SuperMapAlgoPlot.PlottingUtil.distance(e,n);this.scaleValues[0]=a/i}}}};SuperMapAlgoPlot.AlgoSymbol321=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.02),this.scaleValues.push(.1),this.scaleValues.push(0))}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t),o=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(t);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i=this.getSubSymbolScaleValue();this.isEdit||(this.scaleValues[0]=.5*i);var l=this.scaleValues[0]*e,s=SuperMapAlgoPlot.PlottingUtil.paraLine(o,.5*l,!0),n=SuperMapAlgoPlot.PlottingUtil.paraLine(o,.5*l,!1);s=SuperMapAlgoPlot.PlottingUtil.clearSamePts(s),n=SuperMapAlgoPlot.PlottingUtil.clearSamePts(n),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,s),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,n);var a=e*this.scaleValues[1],r=.5*l,p=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o);for(let t=r,e=0;t<p;t+=a,e++){var u=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(s,t);if(-1!==u.index){var h=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(l,s[u.index+1],u.pt),g=[];g.push(h.pntRight),g.push(u.pt),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,g);var c=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(n,t);if(-1!==c.index){var y=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(l,n[c.index+1],c.pt);(g=[]).push(c.pt),g.push(y.pntLeft),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,g),0===e?this.addScalePoint(h.pntRight,0):1===e&&this.addScalePoint(u.pt,1)}}}this.finish()}}computeScaleValues(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o);var i=0;for(let t=0;t<o.length-1;t++)i+=SuperMapAlgoPlot.PlottingUtil.distance(o[t],o[t+1]);var l,s=SuperMapAlgoPlot.PlottingUtil.generateBeizerPointsNoCtrlPt(o);if(s=SuperMapAlgoPlot.PlottingUtil.clearSamePts(s),0==t){l=i*this.scaleValues[0]*.5;var n=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(s,l);if(-1===n.index)return;var a=SuperMapAlgoPlot.PlottingUtil.distance(e,n.pt);this.scaleValues[0]=a/i}else if(1===t){l=i*this.scaleValues[0]*.5;var r=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(s,l);if(-1===r.index)return;var p=SuperMapAlgoPlot.PlottingUtil.projectPtOnPolyLine(e,s);if(-1==p.index)return;var u=SuperMapAlgoPlot.PlottingUtil.distance(r.pt,s[r.index+1]);for(let t=r.index+1;t<p.index;t++)u+=SuperMapAlgoPlot.PlottingUtil.distance(s[t],s[t+1]);u+=SuperMapAlgoPlot.PlottingUtil.distance(s[p.index],p.pt),this.scaleValues[1]=u/i}}}};SuperMapAlgoPlot.AlgoSymbol322=class extends SuperMapAlgoPlot.AlgoSymbol{constructor(t){super(t),0===this.scaleValues.length&&(this.scaleValues.push(.025),this.scaleValues.push(.085))}calculateParts(){this.init();var t=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if(!((t=SuperMapAlgoPlot.PlottingUtil.clearSamePts(t)).length<this.minEditPts)){this.isEdit||(this.scaleValues[0]=.5*this.getSubSymbolScaleValue()),this.addCell(SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL,t),SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[0].x,t[t.length-1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(t[0].y,t[t.length-1].y)||t.push(t[0]);var e=SuperMapAlgoPlot.PlottingUtil.polylineDistance(t),o=this.scaleValues[0]*e,i=-1*SuperMapAlgoPlot.PlottingUtil.innerOutlineDir(t),l=this.scaleValues[1]*e,s=.3*l;for(let y=l;y<e;y+=l){var n=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(t,y);if(-1===n.index)return void this.finish();var a=y+s,r=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(t,a);if(-1===r.index)return void this.finish();var p=[],u=[];p.push(n.pt);var h=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(o,t[n.index],n.pt);1===i?p.push(new SuperMapAlgoPlot.Point(h.pntLeft.x,h.pntLeft.y)):p.push(new SuperMapAlgoPlot.Point(h.pntRight.x,h.pntRight.y)),u.push(r.pt);var g=SuperMapAlgoPlot.PlottingUtil.getSidePointsOfLine(o,t[r.index],r.pt);if(1===i?u.push(new SuperMapAlgoPlot.Point(g.pntLeft.x,g.pntLeft.y)):u.push(new SuperMapAlgoPlot.Point(g.pntRight.x,g.pntRight.y)),l===y){this.scalePoints=[];var c=new SuperMapAlgoPlot.Point(p[1].x,p[1].y);c.isScalePoint=!0,c.tag=0,this.scalePoints.push(c),(c=new SuperMapAlgoPlot.Point(p[0].x,p[0].y)).isScalePoint=!0,c.tag=1,this.scalePoints.push(c)}this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,p),this.addCell(SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL,u)}this.finish()}}computeScaleValues(t,e){if(!0===e.isScalePoint){var o=SuperMapAlgoPlot.PlottingUtil.clonePoints(this.controlPoints);if((o=SuperMapAlgoPlot.PlottingUtil.clearSamePts(o)).length<this.minEditPts)return;SuperMapAlgoPlot.PlottingUtil.equalFuzzy(o[0].x,o[o.length-1].x)&&SuperMapAlgoPlot.PlottingUtil.equalFuzzy(o[0].y,o[o.length-1].y)||o.push(o[0]);var i=SuperMapAlgoPlot.PlottingUtil.polylineDistance(o),l=new SuperMapAlgoPlot.Point(e.x,e.y);if(0===t){var s=SuperMapAlgoPlot.PlottingUtil.findPointInPolyLine(o,i*this.scaleValues[1]);if(-1===s.index)return;var n=SuperMapAlgoPlot.PlottingUtil.distance(s.pt,l)/i;this.scaleValues[0]=n}else if(1===t){var a=0,r=-1,p=null;for(let t=0,i=o.length-1;t<i;t++){var u=SuperMapAlgoPlot.PlottingUtil.pointProjectToSegment(e,o[t],o[t+1]);if(u.isOnline)if(null==p)r=t,p=u.projectPoint,a=SuperMapAlgoPlot.PlottingUtil.distance(e,p);else{var h=SuperMapAlgoPlot.PlottingUtil.distance(e,p);h<a&&(r=t,p=u.projectPoint,a=h)}}if(-1==r)return;var g=0;for(let t=0,e=r-1;t<e;t++)g+=SuperMapAlgoPlot.PlottingUtil.distance(o[t],o[t+1]);var c=(g+=SuperMapAlgoPlot.PlottingUtil.distance(o[r],p))/i;c>.3&&(c=.3),this.scaleValues[1]=c}}}};var q=SuperMapAlgoPlot.BasicAlgoSymbolFactory=SuperMapAlgoPlot.BasicAlgoSymbolFactory||{};SuperMapAlgoPlot.BasicAlgoSymbolFactory.getAlgoSymbol=function(t,e,o){if(0===t)switch(e){case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOL:return new SuperMapAlgoPlot.GeoTooltipBox(o);case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOLM:return new SuperMapAlgoPlot.GeoTooltipBoxM(o);case SuperMapAlgoPlot.SymbolType.PATHTEXT:return new SuperMapAlgoPlot.PathText(o);case SuperMapAlgoPlot.SymbolType.ARROWLINE:return new SuperMapAlgoPlot.ArrowLine(o);case SuperMapAlgoPlot.SymbolType.CURVEEIGHT:return new SuperMapAlgoPlot.CurveEight(o);case SuperMapAlgoPlot.SymbolType.RUNWAY:return new SuperMapAlgoPlot.Runway(o);case SuperMapAlgoPlot.SymbolType.CONCENTRICCIRCLE:return new SuperMapAlgoPlot.ConcentricCircle(o);case SuperMapAlgoPlot.SymbolType.COMBINATIONALCIRCLE:return new SuperMapAlgoPlot.CombinationalCircle(o);case SuperMapAlgoPlot.SymbolType.FREECURVE:return new SuperMapAlgoPlot.FreeCurve(o);case SuperMapAlgoPlot.SymbolType.REGULARPOLYGON:return new SuperMapAlgoPlot.RegularPolygon(o);case SuperMapAlgoPlot.SymbolType.BRACESYMBOL:return new SuperMapAlgoPlot.Brace(o);case SuperMapAlgoPlot.SymbolType.TRAPEZOIDSYMBOL:return new SuperMapAlgoPlot.Trapezoid(o);case SuperMapAlgoPlot.SymbolType.SYMBOLTEXTBOX:return new SuperMapAlgoPlot.SymbolTextBox(o);case SuperMapAlgoPlot.SymbolType.NODECHAIN:return new SuperMapAlgoPlot.NodeChain(o);case SuperMapAlgoPlot.SymbolType.LINERELATION:return new SuperMapAlgoPlot.LineRelation(o);case SuperMapAlgoPlot.SymbolType.LINEMARKING:return new SuperMapAlgoPlot.LineMarking(o);case SuperMapAlgoPlot.SymbolType.POLYGONREGION:return new SuperMapAlgoPlot.PolygonRegion(o);case SuperMapAlgoPlot.SymbolType.WIRE:return new SuperMapAlgoPlot.Wire(o);case SuperMapAlgoPlot.SymbolType.LINEARARROW:return new SuperMapAlgoPlot.LinearArrow(o);case SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL:return new SuperMapAlgoPlot.Polybezier(o);case SuperMapAlgoPlot.SymbolType.NEWPIESYMBOL:return new SuperMapAlgoPlot.NewPie(o);case SuperMapAlgoPlot.SymbolType.NEWARCSYMBOL:return new SuperMapAlgoPlot.NewArc(o);default:return new SuperMapAlgoPlot.AlgoSymbol(o)}else if(22===t)switch(e){case 1001:return new SuperMapAlgoPlot.AlgoSymbol1001(o);case 1002:return new SuperMapAlgoPlot.AlgoSymbol1002(o);case 1003:return new SuperMapAlgoPlot.AlgoSymbol1003(o);case 1004:return new SuperMapAlgoPlot.AlgoSymbol1004(o);case 1005:return new SuperMapAlgoPlot.AlgoSymbol1005(o);case 1006:return new SuperMapAlgoPlot.AlgoSymbol1006(o);case 1007:return new SuperMapAlgoPlot.AlgoSymbol1007(o);case 1008:return new SuperMapAlgoPlot.AlgoSymbol1008(o);case 1009:return new SuperMapAlgoPlot.AlgoSymbol1009(o);case 1010:return new SuperMapAlgoPlot.AlgoSymbol1010(o);case 1011:return new SuperMapAlgoPlot.AlgoSymbol1011(o);case 1012:return new SuperMapAlgoPlot.AlgoSymbol1012(o);case 1013:return new SuperMapAlgoPlot.AlgoSymbol1013(o);case 1014:return new SuperMapAlgoPlot.AlgoSymbol1014(o);case 1015:return new SuperMapAlgoPlot.AlgoSymbol1015(o);case 1016:return new SuperMapAlgoPlot.AlgoSymbol1016(o);case 1017:return new SuperMapAlgoPlot.AlgoSymbol1017(o);case 1018:return new SuperMapAlgoPlot.AlgoSymbol1018(o);case 1019:return new SuperMapAlgoPlot.AlgoSymbol1019(o);case 1020:return new SuperMapAlgoPlot.AlgoSymbol1020(o);case 1021:return new SuperMapAlgoPlot.AlgoSymbol1021(o);case 1022:return new SuperMapAlgoPlot.AlgoSymbol1022(o);default:return null}else{if(421!==t)return null;switch(e){case 311:return new SuperMapAlgoPlot.AlgoSymbol1004(o);case 315:return new SuperMapAlgoPlot.AlgoSymbol315(o);case 317:return new SuperMapAlgoPlot.AlgoSymbol1006(o);case 318:return new SuperMapAlgoPlot.AlgoSymbol1002(o);case 319:return new SuperMapAlgoPlot.AlgoSymbol15200(o);case 320:return new SuperMapAlgoPlot.AlgoSymbol320(o);case 321:return new SuperMapAlgoPlot.AlgoSymbol321(o);case 322:return new SuperMapAlgoPlot.AlgoSymbol322(o);default:return null}}},SuperMapAlgoPlot.BasicAlgoSymbolFactory.getSymbolWayType=function(t,e){if(0===t)switch(e){case SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL:case SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL:return SuperMapAlgoPlot.AddPoint_WayType.POLYLINE;case SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL:case SuperMapAlgoPlot.SymbolType.POLYBEZIERCLOSESYMBOL:return SuperMapAlgoPlot.AddPoint_WayType.CURVE;default:return SuperMapAlgoPlot.AddPoint_WayType.UNKNOWN}else if(22===t)switch(e){case 1005:case 1008:case 1012:case 1014:return SuperMapAlgoPlot.AddPoint_WayType.CURVE;case 1007:case 1009:case 1013:case 1015:case 1017:return SuperMapAlgoPlot.AddPoint_WayType.POLYLINE;default:return SuperMapAlgoPlot.AddPoint_WayType.UNKNOWN}},SuperMapAlgoPlot.BasicAlgoSymbolFactory.isAccessServer=function(t,e){if(0===t||22===t)return!1;if(421!==t)return!0;switch(e){case 311:case 317:case 318:case 315:case 319:case 320:case 321:case 322:return!1;default:return!0}},SuperMapAlgoPlot.BasicAlgoSymbolFactory.getDefaultSubSymbols=function(){return[]},SuperMapAlgoPlot.BasicAlgoSymbolFactory.getMinEditPts=function(t,e){if(0===t)switch(e){case SuperMapAlgoPlot.SymbolType.TEXTSYMBOL:case SuperMapAlgoPlot.SymbolType.COMBINATIONALCIRCLE:return 1;case SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL:case SuperMapAlgoPlot.SymbolType.RECTANGLESYMBOL:case SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL:case SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL:case SuperMapAlgoPlot.SymbolType.KIDNEY:case SuperMapAlgoPlot.SymbolType.ARROWLINE:case SuperMapAlgoPlot.SymbolType.BRACESYMBOL:case SuperMapAlgoPlot.SymbolType.CURVEEIGHT:case SuperMapAlgoPlot.SymbolType.FREECURVE:case SuperMapAlgoPlot.SymbolType.LINEMARKING:case SuperMapAlgoPlot.SymbolType.LINERELATION:case SuperMapAlgoPlot.SymbolType.NODECHAIN:case SuperMapAlgoPlot.SymbolType.PATHTEXT:case SuperMapAlgoPlot.SymbolType.REGULARPOLYGON:case SuperMapAlgoPlot.SymbolType.RUNWAY:case SuperMapAlgoPlot.SymbolType.SYMBOLTEXTBOX:case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOLM:case SuperMapAlgoPlot.SymbolType.CONCENTRICCIRCLE:case SuperMapAlgoPlot.SymbolType.WIRE:case SuperMapAlgoPlot.SymbolType.LINEARARROW:return 2;case SuperMapAlgoPlot.SymbolType.ARCSYMBOL:case SuperMapAlgoPlot.SymbolType.CHORDSYMBOL:case SuperMapAlgoPlot.SymbolType.PIESYMBOL:case SuperMapAlgoPlot.SymbolType.ELLIPSESYMBOL:case SuperMapAlgoPlot.SymbolType.PARALLELOGRAM:case SuperMapAlgoPlot.SymbolType.PARALLELLINE:case SuperMapAlgoPlot.SymbolType.POLYBEZIERCLOSESYMBOL:case SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL:case SuperMapAlgoPlot.SymbolType.POLYGONREGION:case SuperMapAlgoPlot.SymbolType.TRAPEZOIDSYMBOL:case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOL:case SuperMapAlgoPlot.SymbolType.NEWARCSYMBOL:case SuperMapAlgoPlot.SymbolType.NEWPIESYMBOL:return 3}else if(22===t)switch(e){case 1001:case 1003:case 1005:case 1007:case 1008:case 1009:case 1011:case 1012:case 1013:case 1014:case 1015:case 1016:case 1017:case 1019:case 1020:case 1022:return 2;case 1002:case 1004:case 1006:case 1010:case 1018:case 1021:return 3}else if(421===t)switch(e){case 319:case 320:case 321:return 2;case 311:case 315:case 317:case 318:case 322:return 3}},SuperMapAlgoPlot.BasicAlgoSymbolFactory.getMaxEditPts=function(t,e){if(0===t)switch(e){case SuperMapAlgoPlot.SymbolType.TEXTSYMBOL:return 1;case SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL:case SuperMapAlgoPlot.SymbolType.RECTANGLESYMBOL:case SuperMapAlgoPlot.SymbolType.BRACESYMBOL:case SuperMapAlgoPlot.SymbolType.LINEMARKING:case SuperMapAlgoPlot.SymbolType.LINERELATION:case SuperMapAlgoPlot.SymbolType.RUNWAY:case SuperMapAlgoPlot.SymbolType.SYMBOLTEXTBOX:case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOLM:case SuperMapAlgoPlot.SymbolType.LINEARARROW:return 2;case SuperMapAlgoPlot.SymbolType.ARCSYMBOL:case SuperMapAlgoPlot.SymbolType.CHORDSYMBOL:case SuperMapAlgoPlot.SymbolType.PIESYMBOL:case SuperMapAlgoPlot.SymbolType.ELLIPSESYMBOL:case SuperMapAlgoPlot.SymbolType.PARALLELOGRAM:case SuperMapAlgoPlot.SymbolType.KIDNEY:case SuperMapAlgoPlot.SymbolType.CONCENTRICCIRCLE:case SuperMapAlgoPlot.SymbolType.CURVEEIGHT:case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOL:case SuperMapAlgoPlot.SymbolType.TRAPEZOIDSYMBOL:case SuperMapAlgoPlot.SymbolType.NEWARCSYMBOL:case SuperMapAlgoPlot.SymbolType.NEWPIESYMBOL:return 3;case SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL:case SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL:case SuperMapAlgoPlot.SymbolType.PARALLELLINE:case SuperMapAlgoPlot.SymbolType.POLYBEZIERCLOSESYMBOL:case SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL:case SuperMapAlgoPlot.SymbolType.ARROWLINE:case SuperMapAlgoPlot.SymbolType.COMBINATIONALCIRCLE:case SuperMapAlgoPlot.SymbolType.FREECURVE:case SuperMapAlgoPlot.SymbolType.NODECHAIN:case SuperMapAlgoPlot.SymbolType.PATHTEXT:case SuperMapAlgoPlot.SymbolType.POLYGONREGION:case SuperMapAlgoPlot.SymbolType.REGULARPOLYGON:case SuperMapAlgoPlot.SymbolType.WIRE:return 9999}else if(22===t)switch(e){case 1003:case 1019:case 1020:case 1022:return 2;case 1006:case 1021:return 4;case 1001:case 1002:case 1004:case 1005:case 1007:case 1008:case 1009:case 1010:case 1011:case 1012:case 1013:case 1014:case 1015:case 1016:case 1017:case 1018:return 99999}else if(421===t)switch(e){case 320:return 2;case 317:return 4;case 311:case 315:case 318:case 319:case 321:case 322:return 99999}},SuperMapAlgoPlot.BasicAlgoSymbolFactory.getDefaultStyle=function(t,e){var o={};if(421===t)switch(e){case 320:case 321:o.color=o.strokeColor="#000000";break;case 322:o.color=o.strokeColor="#bc744d"}return o},SuperMapAlgoPlot.BasicAlgoSymbolFactory.zoomInCalSymbol=function(){if(22!==libID)return!1;switch(code){case 1012:case 1013:case 1014:case 1015:return!0;default:return!1}},SuperMapAlgoPlot.BasicAlgoSymbolFactory.zoomCalSymbol=function(){return!1},SuperMapAlgoPlot.BasicAlgoSymbolFactory.getSymbolName=function(t,e){var o="";if(0===t)switch(e){case SuperMapAlgoPlot.SymbolType.TEXTSYMBOL:o="文本";break;case SuperMapAlgoPlot.SymbolType.CIRCLESYMBOL:o="圆";break;case SuperMapAlgoPlot.SymbolType.RECTANGLESYMBOL:o="矩形";break;case SuperMapAlgoPlot.SymbolType.ARCSYMBOL:o="弧线";break;case SuperMapAlgoPlot.SymbolType.CHORDSYMBOL:o="弓形";break;case SuperMapAlgoPlot.SymbolType.PIESYMBOL:o="扇形";break;case SuperMapAlgoPlot.SymbolType.ELLIPSESYMBOL:o="椭圆";break;case SuperMapAlgoPlot.SymbolType.PARALLELOGRAM:o="平行四边形";break;case SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL:o="多边形";break;case SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL:o="折线";break;case SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL:o="贝赛尔曲线";break;case SuperMapAlgoPlot.SymbolType.POLYBEZIERCLOSESYMBOL:o="闭合贝塞尔曲线";break;case SuperMapAlgoPlot.SymbolType.PARALLELLINE:o="平行线";break;case SuperMapAlgoPlot.SymbolType.KIDNEY:o="集结地";break;case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOL:o="注记指示框";break;case SuperMapAlgoPlot.SymbolType.ARROWLINE:o="箭头线";break;case SuperMapAlgoPlot.SymbolType.COMBINATIONALCIRCLE:o="组合圆";break;case SuperMapAlgoPlot.SymbolType.CONCENTRICCIRCLE:o="同心圆";break;case SuperMapAlgoPlot.SymbolType.CURVEEIGHT:o="八字形";break;case SuperMapAlgoPlot.SymbolType.FREECURVE:o="自由线";break;case SuperMapAlgoPlot.SymbolType.ANNOFRAMESYMBOLM:o="多角标注框";break;case SuperMapAlgoPlot.SymbolType.LINEMARKING:o="线型标注";break;case SuperMapAlgoPlot.SymbolType.LINERELATION:o="对象间连线";break;case SuperMapAlgoPlot.SymbolType.NODECHAIN:o="节点链";break;case SuperMapAlgoPlot.SymbolType.PATHTEXT:o="沿线注记";break;case SuperMapAlgoPlot.SymbolType.POLYGONREGION:o="多边形区域管理";break;case SuperMapAlgoPlot.SymbolType.RUNWAY:o="跑道线";break;case SuperMapAlgoPlot.SymbolType.SYMBOLTEXTBOX:o="标注框";break;case SuperMapAlgoPlot.SymbolType.REGULARPOLYGON:o="正多边形";break;case SuperMapAlgoPlot.SymbolType.BRACESYMBOL:o="大括号";break;case SuperMapAlgoPlot.SymbolType.TRAPEZOIDSYMBOL:o="梯形";break;case SuperMapAlgoPlot.SymbolType.WIRE:o="铁丝网";break;case SuperMapAlgoPlot.SymbolType.LINEARARROW:o="直线箭头";case SuperMapAlgoPlot.SymbolType.NEWPIESYMBOL:o="扇形";case SuperMapAlgoPlot.SymbolType.NEWARCSYMBOL:o="弧线"}return o};var K=SuperMapAlgoPlot.AlgoSymbolFactory=SuperMapAlgoPlot.AlgoSymbolFactory||{};SuperMapAlgoPlot.AlgoSymbolFactory.getAlgoSymbol=function(t){var e=t.libID,o=t.code;return 0!==e&&22!==e&&421!==e||void 0===SuperMapAlgoPlot.BasicAlgoSymbolFactory?100===e&&void 0!==SuperMapAlgoPlot.JBAlgoSymbolFactory?SuperMapAlgoPlot.JBAlgoSymbolFactory.getAlgoSymbol(e,o,t):123===e&&void 0!==SuperMapAlgoPlot.WJAlgoSymbolFactory?SuperMapAlgoPlot.WJAlgoSymbolFactory.getAlgoSymbol(e,o,t):999===e&&void 0!==SuperMapAlgoPlot.YJAlgoSymbolFactory?SuperMapAlgoPlot.YJAlgoSymbolFactory.getAlgoSymbol(e,o,t):null:SuperMapAlgoPlot.BasicAlgoSymbolFactory.getAlgoSymbol(e,o,t)},SuperMapAlgoPlot.AlgoSymbolFactory.getSymbolWayType=function(t,e){if(0===t)switch(e){case SuperMapAlgoPlot.SymbolType.POLYLINESYMBOL:case SuperMapAlgoPlot.SymbolType.ARBITRARYPOLYGONSYMBOL:return SuperMapAlgoPlot.AddPoint_WayType.POLYLINE;case SuperMapAlgoPlot.SymbolType.POLYBEZIERSYMBOL:case SuperMapAlgoPlot.SymbolType.POLYBEZIERCLOSESYMBOL:return SuperMapAlgoPlot.AddPoint_WayType.CURVE;default:return SuperMapAlgoPlot.AddPoint_WayType.UNKNOWN}if(22===t)switch(e){case 1005:case 1008:case 1012:case 1014:return SuperMapAlgoPlot.AddPoint_WayType.CURVE;case 1007:case 1009:case 1013:case 1015:return SuperMapAlgoPlot.AddPoint_WayType.POLYLINE;default:return SuperMapAlgoPlot.AddPoint_WayType.UNKNOWN}if(100===t)switch(e){case 15200:case 15201:case 16203:case 17703:case 17704:case 21400:case 21401:case 21500:case 21501:case 21502:case 21503:case 21504:case 21600:case 21900:case 22e3:case 22103:case 23800:case 24700:case 25201:case 25400:case 25601:case 25801:case 25901:case 26500:case 26501:case 26502:case 26503:case 26600:case 28900:case 29e3:case 29003:case 29903:case 3e4:case 30001:case 30002:case 30100:case 30102:case 30200:case 30201:case 30800:case 31803:case 33400:case 34900:case 34901:case 34902:case 35e3:case 36400:case 44200:case 3010102:case 3010103:case 3010104:case 3010105:case 3010106:case 3010107:case 3010108:case 3010301:case 3010302:case 3010303:case 3010304:case 16500:case 17400:case 17401:case 17500:case 17501:case 23400:case 23500:case 23600:case 23700:case 27300:case 28200:case 28300:case 28400:case 37600:case 37601:case 37700:case 39e3:case 40100:case 40101:case 42400:case 2350001:case 3032e3:case 4010800:case 4010801:case 4011100:case 4011101:case 4022100:case 4022101:case 4022102:case 39101:case 44300:case 22200:case 27701:return SuperMapAlgoPlot.AddPoint_WayType.CURVE;case 12500:case 12502:case 16100:case 20300:case 25501:case 25502:case 25503:case 32900:case 34700:case 35200:case 36401:case 41200:case 41201:case 41202:case 42700:case 44400:return SuperMapAlgoPlot.AddPoint_WayType.POLYLINE;default:return SuperMapAlgoPlot.AddPoint_WayType.UNKNOWN}if(123===t)switch(e){case 21003:case 21207:case 2120701:case 2121503:case 21218:case 30008:case 3000801:case 3000802:case 3000803:case 3000804:case 3000805:case 3000806:case 3000807:case 3000808:case 3000809:case 30009:case 5021803:case 5022001:case 5022002:case 40301:case 4030101:case 4030102:case 4030103:case 4030104:case 40303:case 4030301:case 4030302:case 4030303:case 50101:case 5010101:case 50102:case 5010201:case 5010202:case 5010203:case 5010204:case 50103:case 5010301:case 5010302:case 5010303:case 5010304:case 50107:case 5010701:case 50210:case 50220:case 50221:case 50225:case 5030102:case 50303:case 5030301:case 50309:case 50320:case 5032001:case 5032002:case 5032003:case 50321:case 5032101:case 5032102:case 50322:case 5032201:case 50330:case 5033001:case 5034203:case 5035201:case 5035204:case 60205:case 90105:return SuperMapAlgoPlot.AddPoint_WayType.CURVE;case 20915:case 2091502:case 2092101:case 2120702:case 21216:case 2121601:case 2121602:case 21605:case 30010:case 30011:case 3001101:case 3001102:case 3001103:case 3001104:case 3001105:case 30012:case 30020:case 3002001:case 3002002:case 3002005:case 30025:case 3002501:case 30026:case 40104:case 40302:case 4030201:case 4030202:case 4030203:case 4030204:case 50227:case 5035205:case 60301:case 6030101:case 6030102:case 6030103:case 6030104:case 6030105:case 6030106:case 6030107:case 70202:case 7020201:case 7020202:case 90107:return SuperMapAlgoPlot.AddPoint_WayType.POLYLINE;default:return SuperMapAlgoPlot.AddPoint_WayType.UNKNOWN}},SuperMapAlgoPlot.AlgoSymbolFactory.isAccessServer=function(t,e){return 0!==t&&22!==t&&421!==t||void 0===SuperMapAlgoPlot.BasicAlgoSymbolFactory?100===t&&void 0!==SuperMapAlgoPlot.JBAlgoSymbolFactory?SuperMapAlgoPlot.JBAlgoSymbolFactory.isAccessServer(t,e):123===t&&void 0!==SuperMapAlgoPlot.WJAlgoSymbolFactory?SuperMapAlgoPlot.WJAlgoSymbolFactory.isAccessServer(t,e):999!==t||void 0===SuperMapAlgoPlot.YJAlgoSymbolFactory||SuperMapAlgoPlot.YJAlgoSymbolFactory.isAccessServer(t,e):SuperMapAlgoPlot.BasicAlgoSymbolFactory.isAccessServer(t,e)},SuperMapAlgoPlot.AlgoSymbolFactory.getDefaultSubSymbols=function(t,e){return 100===t&&void 0!==SuperMapAlgoPlot.JBAlgoSymbolFactory?SuperMapAlgoPlot.JBAlgoSymbolFactory.getDefaultSubSymbols(t,e):123===t&&void 0!==SuperMapAlgoPlot.WJAlgoSymbolFactory?SuperMapAlgoPlot.WJAlgoSymbolFactory.getDefaultSubSymbols(t,e):999===t&&void 0!==SuperMapAlgoPlot.YJAlgoSymbolFactory?SuperMapAlgoPlot.YJAlgoSymbolFactory.getDefaultSubSymbols(t,e):[]},SuperMapAlgoPlot.AlgoSymbolFactory.getMinEditPts=function(t,e){return 0!==t&&22!==t&&421!==t||void 0===SuperMapAlgoPlot.BasicAlgoSymbolFactory?100===t&&void 0!==SuperMapAlgoPlot.JBAlgoSymbolFactory?SuperMapAlgoPlot.JBAlgoSymbolFactory.getMinEditPts(t,e):123===t&&void 0!==SuperMapAlgoPlot.WJAlgoSymbolFactory?SuperMapAlgoPlot.WJAlgoSymbolFactory.getMinEditPts(t,e):999===t&&void 0!==SuperMapAlgoPlot.YJAlgoSymbolFactory?SuperMapAlgoPlot.YJAlgoSymbolFactory.getMinEditPts(t,e):0:SuperMapAlgoPlot.BasicAlgoSymbolFactory.getMinEditPts(t,e)},SuperMapAlgoPlot.AlgoSymbolFactory.getMaxEditPts=function(t,e){return 0!==t&&22!==t&&421!==t||void 0===SuperMapAlgoPlot.BasicAlgoSymbolFactory?100===t&&void 0!==SuperMapAlgoPlot.JBAlgoSymbolFactory?SuperMapAlgoPlot.JBAlgoSymbolFactory.getMaxEditPts(t,e):123===t&&void 0!==SuperMapAlgoPlot.WJAlgoSymbolFactory?SuperMapAlgoPlot.WJAlgoSymbolFactory.getMaxEditPts(t,e):999===t&&void 0!==SuperMapAlgoPlot.YJAlgoSymbolFactory?SuperMapAlgoPlot.YJAlgoSymbolFactory.getMaxEditPts(t,e):0:SuperMapAlgoPlot.BasicAlgoSymbolFactory.getMaxEditPts(t,e)},SuperMapAlgoPlot.AlgoSymbolFactory.getDefaultStyle=function(t,e){return 0!==t&&22!==t&&421!==t||void 0===SuperMapAlgoPlot.BasicAlgoSymbolFactory?100===t&&void 0!==SuperMapAlgoPlot.JBAlgoSymbolFactory?SuperMapAlgoPlot.JBAlgoSymbolFactory.getDefaultStyle(t,e):123===t&&void 0!==SuperMapAlgoPlot.WJAlgoSymbolFactory?SuperMapAlgoPlot.WJAlgoSymbolFactory.getDefaultStyle(t,e):999===t&&void 0!==SuperMapAlgoPlot.YJAlgoSymbolFactory?SuperMapAlgoPlot.YJAlgoSymbolFactory.getDefaultStyle(t,e):{}:SuperMapAlgoPlot.BasicAlgoSymbolFactory.getDefaultStyle(t,e)},SuperMapAlgoPlot.AlgoSymbolFactory.getSymbolName=function(t,e){return 0!==t&&22!==t&&421!==t||void 0===SuperMapAlgoPlot.BasicAlgoSymbolFactory?"":SuperMapAlgoPlot.BasicAlgoSymbolFactory.getSymbolName(t,e)},SuperMapAlgoPlot.AlgoSymbolFactory.canPolylineConnect=function(t,e){if(100!==t)return!1;switch(e){case 16500:case 17400:case 17401:case 17500:case 17501:case 23400:case 23500:case 23600:case 23700:case 27300:case 28200:case 28300:case 28400:case 37600:case 37601:case 37700:case 39e3:case 40100:case 40101:case 42200:case 42400:case 2350001:case 3032e3:case 4010800:case 4010801:case 4011100:case 4011101:case 4022100:case 4022101:case 4022102:return!0;default:return!1}},SuperMapAlgoPlot.AlgoSymbolFactory.zoomInCalSymbol=function(t,e){return 0!==t&&22!==t&&421!==t||void 0===SuperMapAlgoPlot.BasicAlgoSymbolFactory?100===t&&void 0!==SuperMapAlgoPlot.JBAlgoSymbolFactory?SuperMapAlgoPlot.JBAlgoSymbolFactory.zoomInCalSymbol(t,e):123===t&&void 0!==SuperMapAlgoPlot.WJAlgoSymbolFactory?SuperMapAlgoPlot.WJAlgoSymbolFactory.zoomInCalSymbol(t,e):999===t&&void 0!==SuperMapAlgoPlot.YJAlgoSymbolFactory?SuperMapAlgoPlot.YJAlgoSymbolFactory.zoomInCalSymbol(t,e):0:SuperMapAlgoPlot.BasicAlgoSymbolFactory.zoomInCalSymbol(t,e)},SuperMapAlgoPlot.AlgoSymbolFactory.zoomCalSymbol=function(t,e){if((0===t||22===t||421===t)&&void 0!==SuperMapAlgoPlot.BasicAlgoSymbolFactory)return SuperMapAlgoPlot.BasicAlgoSymbolFactory.zoomCalSymbol(t,e);if(100===t)switch(e){case 28e3:case 28100:case 28200:case 28201:case 32300:return!0;default:return!1}else{if(123!==t||void 0===SuperMapAlgoPlot.WJAlgoSymbolFactory)return!1;switch(e){case 50312:case 50313:case 50314:case 50348:return!0;default:return!1}}};SuperMap.MD5=SuperMap.MD5||{};var Q=function(t){function e(t,e){return t<<e|t>>>32-e}function o(t,e){var o,i,l,s,n;return l=2147483648&t,s=2147483648&e,n=(1073741823&t)+(1073741823&e),(o=1073741824&t)&(i=1073741824&e)?2147483648^n^l^s:o|i?1073741824&n?3221225472^n^l^s:1073741824^n^l^s:n^l^s}function i(t,i,l,s,n,a,r){return o(e(t=o(t,o(o(function(t,e,o){return t&e|~t&o}(i,l,s),n),r)),a),i)}function l(t,i,l,s,n,a,r){return o(e(t=o(t,o(o(function(t,e,o){return t&o|e&~o}(i,l,s),n),r)),a),i)}function s(t,i,l,s,n,a,r){return o(e(t=o(t,o(o(function(t,e,o){return t^e^o}(i,l,s),n),r)),a),i)}function n(t,i,l,s,n,a,r){return o(e(t=o(t,o(o(function(t,e,o){return e^(t|~o)}(i,l,s),n),r)),a),i)}function a(t){var e,o="",i="";for(e=0;e<=3;e++)o+=(i="0"+(t>>>8*e&255).toString(16)).substr(i.length-2,2);return o}var r,p,u,h,g,c,y,P,d,S=Array();for(S=function(t){for(var e,o=t.length,i=o+8,l=16*((i-i%64)/64+1),s=Array(l-1),n=0,a=0;a<o;)n=a%4*8,s[e=(a-a%4)/4]=s[e]|t.charCodeAt(a)<<n,a++;return n=a%4*8,s[e=(a-a%4)/4]=s[e]|128<<n,s[l-2]=o<<3,s[l-1]=o>>>29,s}(t=function(t){t=t.replace("/\r\n/g","\n");for(var e="",o=0;o<t.length;o++){var i=t.charCodeAt(o);i<128?e+=String.fromCharCode(i):i>127&&i<2048?(e+=String.fromCharCode(i>>6|192),e+=String.fromCharCode(63&i|128)):(e+=String.fromCharCode(i>>12|224),e+=String.fromCharCode(i>>6&63|128),e+=String.fromCharCode(63&i|128))}return e}(t)),c=1732584193,y=4023233417,P=2562383102,d=271733878,r=0;r<S.length;r+=16)p=c,u=y,h=P,g=d,y=n(y=n(y=n(y=n(y=s(y=s(y=s(y=s(y=l(y=l(y=l(y=l(y=i(y=i(y=i(y=i(y,P=i(P,d=i(d,c=i(c,y,P,d,S[r+0],7,3614090360),y,P,S[r+1],12,3905402710),c,y,S[r+2],17,606105819),d,c,S[r+3],22,3250441966),P=i(P,d=i(d,c=i(c,y,P,d,S[r+4],7,4118548399),y,P,S[r+5],12,1200080426),c,y,S[r+6],17,2821735955),d,c,S[r+7],22,4249261313),P=i(P,d=i(d,c=i(c,y,P,d,S[r+8],7,1770035416),y,P,S[r+9],12,2336552879),c,y,S[r+10],17,4294925233),d,c,S[r+11],22,2304563134),P=i(P,d=i(d,c=i(c,y,P,d,S[r+12],7,1804603682),y,P,S[r+13],12,4254626195),c,y,S[r+14],17,2792965006),d,c,S[r+15],22,1236535329),P=l(P,d=l(d,c=l(c,y,P,d,S[r+1],5,4129170786),y,P,S[r+6],9,3225465664),c,y,S[r+11],14,643717713),d,c,S[r+0],20,3921069994),P=l(P,d=l(d,c=l(c,y,P,d,S[r+5],5,3593408605),y,P,S[r+10],9,38016083),c,y,S[r+15],14,3634488961),d,c,S[r+4],20,3889429448),P=l(P,d=l(d,c=l(c,y,P,d,S[r+9],5,568446438),y,P,S[r+14],9,3275163606),c,y,S[r+3],14,4107603335),d,c,S[r+8],20,1163531501),P=l(P,d=l(d,c=l(c,y,P,d,S[r+13],5,2850285829),y,P,S[r+2],9,4243563512),c,y,S[r+7],14,1735328473),d,c,S[r+12],20,2368359562),P=s(P,d=s(d,c=s(c,y,P,d,S[r+5],4,4294588738),y,P,S[r+8],11,2272392833),c,y,S[r+11],16,1839030562),d,c,S[r+14],23,4259657740),P=s(P,d=s(d,c=s(c,y,P,d,S[r+1],4,2763975236),y,P,S[r+4],11,1272893353),c,y,S[r+7],16,4139469664),d,c,S[r+10],23,3200236656),P=s(P,d=s(d,c=s(c,y,P,d,S[r+13],4,681279174),y,P,S[r+0],11,3936430074),c,y,S[r+3],16,3572445317),d,c,S[r+6],23,76029189),P=s(P,d=s(d,c=s(c,y,P,d,S[r+9],4,3654602809),y,P,S[r+12],11,3873151461),c,y,S[r+15],16,530742520),d,c,S[r+2],23,3299628645),P=n(P,d=n(d,c=n(c,y,P,d,S[r+0],6,4096336452),y,P,S[r+7],10,1126891415),c,y,S[r+14],15,2878612391),d,c,S[r+5],21,4237533241),P=n(P,d=n(d,c=n(c,y,P,d,S[r+12],6,1700485571),y,P,S[r+3],10,2399980690),c,y,S[r+10],15,4293915773),d,c,S[r+1],21,2240044497),P=n(P,d=n(d,c=n(c,y,P,d,S[r+8],6,1873313359),y,P,S[r+15],10,4264355552),c,y,S[r+6],15,2734768916),d,c,S[r+13],21,1309151649),P=n(P,d=n(d,c=n(c,y,P,d,S[r+4],6,4149444226),y,P,S[r+11],10,3174756917),c,y,S[r+2],15,718787259),d,c,S[r+9],21,3951481745),c=o(c,p),y=o(y,u),P=o(P,h),d=o(d,g);return(a(c)+a(y)+a(P)+a(d)).toLowerCase()};SuperMap.MD5.md5=Q,L.supermap.plotting=L.supermap.plotting||{};var tt=L.Path.extend({options:{text:"",labelAlign:"cm",labelRotation:0,fontColor:"#000000",fontSize:14,fontOpacity:1,fontFamily:"微软雅黑",fontWeight:"normal",fontStyle:"",fontSpace:0,fontPercent:100,fontStroke:!1,fontStrokeColor:"#ff0000",fontStrokeWidth:2,fontBackground:!1,fontBackgroundColor:"#ff0000",fontShadow:!1,fontShadowColor:"#ff0000",fontShadowOffsetX:0,fontShadowOffsetY:0,interactive:!0},_textNode:null,_backgroundTextNode:null,_shadowTextNode:null,_tspanNodeObj:null,initialize:function(t,e){L.setOptions(this,e),this._latlng=L.latLng(t[0]),this._text=this.options.text,this._tspanNodeObj={}},onAdd:function(){L.Path.prototype.onAdd.call(this)},onRemove:function(){this._removeNode(),L.Path.prototype.onRemove.call(this)},_removeNode:function(){this._textNode&&this._textNode.parentNode&&(L.DomUtil.remove(this._textNode),this.removeInteractiveTarget(this._textNode),delete this._textNode,this._textNode=null),this._backgroundTextNode&&this._backgroundTextNode.parentNode&&(this._renderer._rootGroup.removeChild(this._backgroundTextNode),delete this._backgroundTextNode,this._backgroundTextNode=null),this._shadowTextNode&&this._shadowTextNode.parentNode&&(this._renderer._rootGroup.removeChild(this._shadowTextNode),delete this._shadowTextNode,this._shadowTextNode=null),this._tspanNodeObj={},this._textNode&&(L.DomUtil.remove(this._textNode),this.removeInteractiveTarget(this._textNode),delete this._textNode,this._textNode=null),this._backgroundTextNode&&(delete this._backgroundTextNode,this._backgroundTextNode=null),this._shadowTextNode&&(delete this._shadowTextNode,this._shadowTextNode=null)},setLatLngs:function(t){return this._latlng=L.latLng(t[0]),this.redraw(),this.fire("move",{latlng:this._latlng})},getLatLngs:function(){return[this._latlng]},setText:function(t){return this.options.text=this._text=t,this.redraw()},getText:function(){return this._text},setStyle:function(t){var e=t&&t.text||this._text;return L.Path.prototype.setStyle.call(this,t),this.setText(e),this},getBounds:function(){return this._updateBounds(),this._bounds},_project:function(){this._point=this._map.latLngToLayerPoint(this._latlng),this._updateBounds()},getPxBounds:function(t){this._point=this._map.latLngToLayerPoint(this._latlng);var e=1;this.options.fontPercent&&100!==this.options.fontPercent&&(e=this.options.fontPercent/100);var o=0,i=0,l=this.options.text.split("\n"),s=l.length;if(this._renderer instanceof L.Canvas){var n=[this.options.fontStyle?this.options.fontStyle:"normal","normal",this.options.fontWeight?this.options.fontWeight:"normal",this.options.fontSize?this.options.fontSize+"px":"1em",this.options.fontFamily?this.options.fontFamily:"sans-serif"].join(" ");this._renderer._ctx.font=n,this.options.fontSize=parseFloat(this.options.fontSize);let t=L.Canvas.LABEL_FACTOR[this.options.labelAlign[1]];null==t&&(t=-.5);let a=this._renderer._ctx.measureText("Mg").height||this._renderer._ctx.measureText("xx").width;i=a*t*(s-1)+a*s;for(let t=0;t<s;t++)if(this.options.fontSpace&&0!=this.options.fontSpace||this.options.fontPercent&&100!=this.options.fontPercent){let i=(this._renderer._ctx.measureText(l[t]).width+this.options.fontSpace*(l[t].length-1))*e;o<i&&(o=i)}else{let e=this._renderer._ctx.measureText(l[t]).width;o<e&&(o=e)}}else if(this._renderer instanceof L.SVG){let t=L.SVG.LABEL_VFACTOR[this.options.labelAlign[1]];null==t&&(t=-.5);let e=this.options.fontSize;i=e*t*(s-1)+e*s;for(let t=0;t<s;t++){let e=SuperMap.Plot.PlottingUtil.getTextWidth(this.options,l[t]);o<e&&(o=e)}}else{this.options.fontSize=parseFloat(this.options.fontSize);let t=this.options.fontSize;i=t*(s-1)+t*s;for(let t=0;t<s;t++){let e=SuperMap.Plot.PlottingUtil.getTextWidth(this.options,l[t]);o<e&&(o=e)}}this.options.fontSize<6&&(o=0);var a=0,r=0,p=0,u=0,h=this.options.labelAlign||"cm";for(var g in"lt"===h?(a=this._point.x,r="微软雅黑"==this.options.fontFamily||"Microsoft YaHei"==this.options.fontFamily?this._point.y:this._point.y-this.options.fontSize/2,p=this._point.x+o,u=this._point.y+i):"ct"===h?(a=this._point.x-o/2,r="微软雅黑"==this.options.fontFamily||"Microsoft YaHei"==this.options.fontFamily?this._point.y:this._point.y-this.options.fontSize/2,p=this._point.x+o/2,u=this._point.y+i):"rt"===h?(a=this._point.x-o,r="微软雅黑"==this.options.fontFamily||"Microsoft YaHei"==this.options.fontFamily?this._point.y:this._point.y-this.options.fontSize/2,p=this._point.x,u=this._point.y+i):"lb"===h?(a=this._point.x,r=this._point.y-i,p=this._point.x+o,u="微软雅黑"==this.options.fontFamily||"Microsoft YaHei"==this.options.fontFamily?this._point.y:this._point.y+this.options.fontSize/2):"cb"===h?(a=this._point.x-o/2,r=this._point.y-i,p=this._point.x+o/2,u=this._point.y,u="微软雅黑"==this.options.fontFamily||"Microsoft YaHei"==this.options.fontFamily?this._point.y:this._point.y+this.options.fontSize/2):"rb"===h?(a=this._point.x-o,r=this._point.y-i,p=this._point.x,u="微软雅黑"==this.options.fontFamily||"Microsoft YaHei"==this.options.fontFamily?this._point.y:this._point.y+this.options.fontSize/2):"lm"===h?(a=this._point.x,r=this._point.y-i/2,p=this._point.x+o,u=this._point.y+i/2):"cm"===h?(a=this._point.x-o/2,r=this._point.y-i/2,p=this._point.x+o/2,u=this._point.y+i/2):"rm"===h&&(a=this._point.x-o,r=this._point.y-i/2,p=this._point.x,u=this._point.y+i/2),t&&this.options.fontShadow&&(0!==this.options.fontShadowOffsetX||0!==this.options.fontShadowOffsetY)&&(this.options.fontShadowOffsetX>0?p+=this.options.fontShadowOffsetX:a+=this.options.fontShadowOffsetX,this.options.fontShadowOffsetY>0?u+=this.options.fontShadowOffsetY:r+=this.options.fontShadowOffsetY),this._eventParents)if(this._eventParents[g].symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL&&0===this.options.fontPercent&&0===this.options.fontPercent){var c=p-a,y=(c+this.options.fontSpace*(this.options.text.length-1))*this.options.fontPercent/100-c;switch(h){case"lt":case"lm":case"lb":p+=y;break;case"rt":case"rm":case"rb":a-=y;break;case"ct":case"cm":case"cb":a-=y/2,p+=y/2}}var P=new L.Bounds;if(this.options.labelRotation&&0!==this.options.labelRotation){var d=[];d.push(L.point(a,r)),d.push(L.point(a,u)),d.push(L.point(p,r)),d.push(L.point(p,u));var S=this.options.labelRotation*(Math.PI/180);for(let t=0;t<d.length;t++)SuperMap.Plot.PlottingUtil.rotateAngle(this._point,S,d[t]),P.extend(d[t])}else P=L.bounds(L.point(a,r),L.point(p,u));return P},_updateBounds:function(){this._pxBounds=this.getPxBounds(!0);var t=this._map.layerPointToLatLng(this._pxBounds.min),e=this._map.layerPointToLatLng(this._pxBounds.max);this._bounds=L.latLngBounds(t,e)},_update:function(){this._map&&this._updatePath()},_updatePath:function(){this._renderer._updateText(this)},_empty:function(){return this._text&&!this._renderer._bounds.intersects(this._pxBounds)}});L.supermap.plotting.text=function(t,e){return new tt(t,e)},L.supermap.plotting.Text=tt;var et=L.Path.extend({options:{externalGraphic:"",graphicWidth:0,graphicHeight:0,graphicOpacity:1,graphicXOffset:void 0,graphicYOffset:void 0,rotation:0,graphicTitle:"",interactive:!0},_imageNode:null,initialize:function(t,e){L.setOptions(this,e),this._latlng=L.latLng(t[0])},onAdd:function(){L.Path.prototype.onAdd.call(this),this._updatePath()},onRemove:function(){this._imageNode&&this._imageNode.parentNode&&(this._renderer._rootGroup.removeChild(this._imageNode),delete this._imageNode,this._imageNode=null),this._imageNode&&(delete this._imageNode,this._imageNode=null),L.Path.prototype.onRemove.call(this)},setLatLngs:function(t){return this._latlng=L.latLng(t[0]),this.redraw(),this.fire("move",{latlng:this._latlng})},getLatLngs:function(){return[this._latlng]},getBounds:function(){return this._updateBounds(),this._bounds},_project:function(){this._point=this._map.latLngToLayerPoint(this._latlng),this._updateBounds()},getPxBounds:function(){this._point=this._map.latLngToLayerPoint(this._latlng);var t=void 0!=this.options.graphicXOffset?this.options.graphicXOffset:-.5*this.options.graphicWidth,e=void 0!=this.options.graphicYOffset?this.options.graphicYOffset:-.5*this.options.graphicHeight,o=this._point.x+t,i=this._point.y+e,l=o+this.options.graphicWidth,s=i+this.options.graphicHeight,n=new L.Bounds;if(this.options.rotation&&0!==this.options.rotation){var a=[];a.push(L.point(o,i)),a.push(L.point(o,s)),a.push(L.point(l,i)),a.push(L.point(l,s));for(var r=this.options.rotation*(Math.PI/180),p=0;p<a.length;p++)SuperMap.Plot.PlottingUtil.rotateAngle(this._point,r,a[p]),n.extend(a[p])}else n=L.bounds(L.point(o,i),L.point(l,s));return n},_updateBounds:function(){this._pxBounds=this.getPxBounds();var t=this._map.layerPointToLatLng(this._pxBounds.min),e=this._map.layerPointToLatLng(this._pxBounds.max);this._bounds=L.latLngBounds(t,e)},_update:function(){this._map&&this._updatePath()},_updatePath:function(){this._renderer._updateImage(this)},_empty:function(){return this.options.externalGraphic&&!this._renderer._bounds.intersects(this._pxBounds)}});L.supermap.plotting.pointImage=function(t,e){return new et(t,e)},L.supermap.plotting.PointImage=et;var ot=L.Class.extend({feature:null,canvas:null,anchor:null,size:null,fromZoom:null,latLng:null,bounds:null,options:{extent:0},initialize:function(t,e){this.feature=t,e=e||{},L.Util.setOptions(this,e),this.canvasEle=document.createElement("canvas"),this.canvasEle.width=0,this.canvasEle.height=0,this._ctx=this.canvasEle.getContext("2d")},_latlngToLayerPoint:function(t,e){null==e&&(e=this.fromZoom);let o=this.feature._map.getZoomScale(e,this.feature._map.getZoom()),i=this.latLng;var l=[];for(let e=0;e<t.length;e++){let n=i.lat+o*(t[e].lat-i.lat),a=i.lng+o*(t[e].lng-i.lng);var s=this.feature._map.latLngToLayerPoint(L.latLng(n,a));s.x=s.x-this.leftTopPixel.x+this.feature.style.weight,s.y=s.y-this.leftTopPixel.y+this.feature.style.weight,l.push(s)}return l},_scaleBounds:function(t){if(this.fromZoom!==this.feature._map.getZoom()){let e=this.feature._map.getZoomScale(this.fromZoom,this.feature._map.getZoom()),o=this.latLng,i=o.lat+e*(t.getNorth()-o.lat),l=o.lat+e*(t.getSouth()-o.lat),s=o.lng+e*(t.getWest()-o.lng),n=o.lng+e*(t.getEast()-o.lng);return L.latLngBounds(L.latLng(i,s),L.latLng(l,n))}return L.latLngBounds(L.latLng(t.getNorth(),t.getWest()),L.latLng(t.getSouth(),t.getEast()))},_drawPolyline:function(t,e){var o=this._latlngToLayerPoint(t.getLatLngs(),t.fromZoom),i=t.options;e.beginPath(),e.globalAlpha=i.opacity,this._addDashArray(t),e.setLineDash&&e.setLineDash(t.options&&t.options._dashArray||[]),e.moveTo(o[0].x,o[0].y);for(var l=1,s=o.length;l<s;l++)e.lineTo(o[l].x,o[l].y);i.fill&&(e.globalCompositeOperation=!0===Boolean(this.feature.surroundLineType)?"destination-over":"source-over"),e.strokeStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.color,i.opacity),e.lineWidth=i.weight,e.stroke()},_drawRectangle:function(t,e){var o=this._latlngToLayerPoint(t.getLatLngs()[0],t.fromZoom),i=t.options;e.beginPath(),e.globalAlpha=!0===i.fill?i.fillOpacity:i.opacity,this._addDashArray(t),e.setLineDash&&e.setLineDash(t.options&&t.options._dashArray||[]),e.moveTo(o[0].x,o[0].y);for(var l=1,s=o.length;l<s;l++){var n=o[l].x,a=o[l].y;e.lineTo(n,a)}e.closePath(),i.fill&&(e.globalCompositeOperation=!0===Boolean(this.feature.surroundLineType)?"destination-over":"source-over",!0===i.fillLimit&&!0!==i.fillColorLimit?e.fillStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.color,i.opacity):e.fillStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.fillColor,i.fillOpacity),e.fill()),e.strokeStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.color,i.opacity),e.lineWidth=i.weight,e.stroke()},_drawPolygon:function(t,e){var o=this._latlngToLayerPoint(t.getLatLngs()[0],t.fromZoom),i=t.options;e.beginPath(),e.globalAlpha=!0===i.fill?i.fillOpacity:i.opacity,this._addDashArray(t),e.setLineDash&&e.setLineDash(t.options&&t.options._dashArray||[]),e.moveTo(o[0].x,o[0].y);for(var l=1,s=o.length;l<s;l++){var n=o[l].x,a=o[l].y;e.lineTo(n,a)}e.closePath(),i.fill&&(e.globalCompositeOperation=!0===Boolean(this.feature.surroundLineType)?"destination-over":"source-over",!0===i.fillLimit&&!0!==i.fillColorLimit?e.fillStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.color,i.opacity):e.fillStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.fillColor,i.fillOpacity),e.fill(i.fillRule||"evenodd")),e.strokeStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.color,i.opacity),e.lineWidth=i.weight,e.stroke()},_drawText:function(t,e){var o=this._latlngToLayerPoint(t.getLatLngs(),t.fromZoom)[0],i=t.options,l=(i=SuperMap.Util.extend({fontColor:"#000000",labelAlign:"cm"},i)).fontSize.toLocaleString()+"px",s=[i.fontStyle?i.fontStyle:"normal","normal",i.fontWeight?i.fontWeight:"normal",i.fontSize?l:"1em",i.fontFamily?i.fontFamily:"sans-serif"].join(" ");e.globalAlpha=i.fontOpacity,e.fillStyle=SuperMap.Plot.PlottingUtil.colorRGBA(i.fontColor,i.fontOpacity),e.font=s,e.fillText&&(e.textAlign=L.Canvas.LABEL_ALIGN[i.labelAlign[0]]||"center"),e.textBaseline=L.Canvas.LABEL_ALIGN[i.labelAlign[1]]||"middle";var n=L.Canvas.LABEL_FACTOR[i.labelAlign[1]];null==n&&(n=-.5);var a=e.measureText("Mg").height||e.measureText("xx").width,r=i.text.split("\n"),p=r.length;o.y+=a*n*(p-1);for(let t=0;t<p;t++)e.save(),e.translate(o.x,o.y),0!=i.labelRotation&&e.rotate(i.labelRotation*Math.PI/180),e.fillText(r[t],0,a*t),e.restore()},_drawImage:function(t,e){var o=this._latlngToLayerPoint(t.getLatLngs(),t.fromZoom)[0],i=t.options,l=null;if(!L.supermap.plotting.getControl().imageManager.hasOwnProperty(t.options.externalGraphic)){l=new Image,SuperMap.Browser.name;t.options.graphicTitle&&(l.title=t.options.graphicTitle),l.src=t.options.externalGraphic,L.supermap.plotting.getControl().imageManager[t.options.externalGraphic]=l}return{point:o,style:i,path:t.options.externalGraphic}},_addDashArray:function(t){if(t.options.dashArray){var e,o=t.options.dashArray.split(","),i=[];for(e=0;e<o.length;e++)i.push(Number(o[e]));t.options._dashArray=i}}});L.supermap.plotting.symbolStyle=function(t){return new ot(t)};var it=ot.extend({components:null,position:null,offsetX:null,offsetY:null,initialize:function(t,e,o,i,l,s,n){this.feature=t,this.components=e,this.latLng=o,this.position=i,this.offsetX=l,this.offsetY=s,n=n||{},L.Util.setOptions(this,n),this.canvasEle=document.createElement("canvas"),this.canvasEle.width=0,this.canvasEle.height=0,this._ctx=this.canvasEle.getContext("2d")},setComponents:function(t,e,o,i,l){delete this.bounds,this.bounds=null,this.components=t,this.latLng=e,this.position=o,this.offsetX=i,this.offsetY=l,this.render()},render:function(){this._computeImageSize(),this.canvasEle.width=this.size[0],this.canvasEle.height=this.size[1],this._ctx.clearRect(0,0,this.canvasEle.width,this.canvasEle.height),this.canvas=this._ctx.canvas,this._drawFeatures()},clear:function(){this._ctx.clearRect(0,0,this.canvasEle.width,this.canvasEle.height)},getCacheInfo:function(){var t=document.createElement("canvas"),e=t.getContext("2d");return t.width=this.canvas.width,t.height=this.canvas.height,e.clearRect(0,0,t.width,t.height),e.drawImage(this.canvas,0,0),{canvas:e.canvas,_ctx:e,position:this.position,offsetX:this.offsetX,offsetY:this.offsetY,anchor:L.point(this.anchor.x,this.anchor.y),size:[this.size[0],this.size[1]]}},_computeImageSize:function(){if(null==this.bounds){this.bounds=L.latLngBounds();for(let t=0;t<this.components.length;t++)this.bounds.extend(this.components[t].getBounds?this.components[t].getBounds():this.components[t].getLatLng())}var t=new L.Bounds;t.extend(this.feature._map.latLngToLayerPoint(this.bounds.getNorthEast())),t.extend(this.feature._map.latLngToLayerPoint(this.bounds.getNorthWest())),t.extend(this.feature._map.latLngToLayerPoint(this.bounds.getSouthEast())),t.extend(this.feature._map.latLngToLayerPoint(this.bounds.getSouthWest())),this.leftTopPixel=L.point(t.min.x,t.min.y);var e=t.getSize(),o=this.feature.style.weight;e.x+=2*o,e.y+=2*o,this.anchor=this._latlngToLayerPoint([this.latLng])[0],this.size=[e.x,e.y]},_latlngToLayerPoint:function(t){var e=[];for(let i=0;i<t.length;i++){var o=this.feature._map.latLngToLayerPoint(L.latLng(t[i].lat,t[i].lng));o.x=o.x-this.leftTopPixel.x+this.feature.style.weight,o.y=o.y-this.leftTopPixel.y+this.feature.style.weight,e.push(o)}return e},_drawFeatures:function(){for(var t in this._ctx.translate(0,0),this.components){var e=this.components[t];tt&&e instanceof tt?this._drawText(e,this._ctx):L.Rectangle&&e instanceof L.Rectangle?this._drawRectangle(e,this._ctx):L.Polygon&&e instanceof L.Polygon?this._drawPolygon(e,this._ctx):L.Polyline&&e instanceof L.Polyline&&this._drawPolyline(e,this._ctx)}}});L.supermap.plotting.componentStyle=function(t){return new it(t)};var lt=function(t){var e=[];L.Util.isArray(t)||(t=[t]);for(var o=0;o<t.length;o++)e.push(new SuperMap.Geometry.Point(t[o].lng,t[o].lat));return e},st=function(t){var e=[];L.Util.isArray(t)||(t=[t]);for(var o=0;o<t.length;o++)e.push(L.latLng(t[o].y,t[o].x));return e},nt=function(t){var e=[];L.Util.isArray(t)||(t=[t]);for(var o=0;o<t.length;o++)L.Util.isArray(t[o])?e.push(L.Util.cloneLatLngs(t[o])):e.push(t[o].clone());return e},at=function(t,e,o){L.Util.isArray(t)||(t=[t]);for(var i=0;i<t.length;i++)L.Util.isArray(t[i])?L.Util.moveLatLngs(t[i],e,o):(t[i].lat+=e,t[i].lng+=o)},rt=function(t,e,o){L.Util.isArray(t)||(t=[t]);for(var i=o*(Math.PI/180),l=Math.cos(i),s=Math.sin(i),n=0;n<t.length;n++)if(L.Util.isArray(t[n]))L.Util.rotateLatLngs(t[n],e,o);else{var a=t[n].lat-e.lat,r=t[n].lng-e.lng;t[n].lat=r*s+a*l+e.lat,t[n].lng=r*l-a*s+e.lng}},pt=function(t,e,o){L.Util.isArray(t)||(t=[t]);for(var i=0;i<t.length;i++)L.Util.isArray(t[i])?L.Util.resizeLatLngs(t[i],e,o):(t[i].lat=e.lat+o*(t[i].lat-e.lat),t[i].lng=e.lng+o*(t[i].lng-e.lng))};L.Util.bounds=function(t){L.Util.isArray(t)||(t=[t]);for(var e=L.latLngBounds(),o=0;o<t.length;o++)L.Util.isArray(t[o])?e.extend(L.Util.bounds(t[o])):e.extend(t[o]);return e},L.Util.latLngsToSuperMapPoints=lt,L.Util.superMapPointsToLatLngs=st,L.Util.cloneLatLngs=nt,L.Util.moveLatLngs=at,L.Util.rotateLatLngs=rt,L.Util.rotateBounds=function(t,e,o){if(t instanceof L.LatLngBounds){var i=L.latLngBounds(),l=o*(Math.PI/180),s=Math.cos(l),n=Math.sin(l),a=[];a.push(L.latLng(t.getNorth(),t.getWest())),a.push(L.latLng(t.getNorth(),t.getEast())),a.push(L.latLng(t.getSouth(),t.getWest())),a.push(L.latLng(t.getSouth(),t.getEast()));for(let t=0;t<a.length;t++){let o=a[t].lat-e.lat,l=a[t].lng-e.lng;a[t].lat=l*n+o*s+e.lat,a[t].lng=l*s-o*n+e.lng,i.extend(a[t])}return i}},L.Util.resizeLatLngs=pt,L.Util.conventProjectPts=function(t){var e=[];L.Util.isArray(t)||(t=[t]);for(var o=0,i=t.length;o<i;o++)e.push(L.CRS.EPSG3857.project(t[o]));return e},L.Util.unConventProjectPts=function(t){var e=[];L.Util.isArray(t)||(t=[e]);for(var o=0,i=t.length;o<i;o++)e.push(L.CRS.EPSG3857.unproject(t[o]));return e},L.Util.isMercatorProjection=function(t){if(void 0!==t&&"string"==typeof t)switch(t.toUpperCase()){case"EPSG:3857":return!0;case"EPSG:4326":default:return!1}};var ut=ot.extend({redrawAnchor:null,redrawSize:null,lastStyleKey:null,lastMainKey:null,lastSymbolTextKey:null,lastBloodVolumeKey:null,lastAnnotationKey:null,lastPictureFrameKey:null,images:null,annotation:null,pictureFrames:null,symbolTexts:null,bloodVolumes:null,componentLatLngs:null,initialize:function(t,e){this.feature=t,e=e||{},L.Util.setOptions(this,e),this.canvasEle=document.createElement("canvas"),this.canvasEle.width=0,this.canvasEle.height=0,this._ctx=this.canvasEle.getContext("2d"),this.images=[],this.symbolTexts=[],this.bloodVolumes=[],this.pictureFrames=[],this.componentLatLngs=[]},render:function(){this._redrawFeature()},complete:function(){if(!(null!=this.pictureFrames&&0!==this.pictureFrames.length||null!=this.images&&0!==this.images.length))return!0;for(let t=0;t<this.pictureFrames.length;t++)if(null!=L.supermap.plotting.getControl().imageManager[this.pictureFrames[t].path]&&!0!==L.supermap.plotting.getControl().imageManager[this.pictureFrames[t].path].complete)return!1;for(let t=0;t<this.images.length;t++)if(null!=L.supermap.plotting.getControl().imageManager[this.images[t].path]&&!0!==L.supermap.plotting.getControl().imageManager[this.images[t].path].complete)return!1;return!0},getBounds:function(t,e){if(this.feature.symbolType===SuperMap.Plot.SymbolType.PICTURE)return this.feature.getBounds();{var o=new L.LatLngBounds;let l=t.lat-this.latLng.lat,s=t.lng-this.latLng.lng,n=this.feature._map.getZoomScale(this.fromZoom,this.feature._map.getZoom());for(var i=0;i<this.componentLatLngs.length;i++){let a=L.Util.cloneLatLngs(this.componentLatLngs[i]);L.Util.moveLatLngs(a,l,s),L.Util.resizeLatLngs(a,t,n),L.Util.rotateLatLngs(a,t,e),o.extend(L.Util.bounds(a))}return o}},getComponentLatLngs:function(){this.componentLatLngs.length=0;for(var t=0;t<this.feature.components.length;t++){var e=this.feature.components[t];e.isLeadLine||e.isAnnotation||e.isSymbolText||e.isBloodVolume||e.isPictureFrame||this.componentLatLngs.push(e.getLatLngs())}},_redrawFeature:function(){if(0===this.feature.components.length){this.latLng=L.latLng(this.feature.getLatLngs()[0].lat,this.feature.getLatLngs()[0].lng),this.fromZoom=this.feature._map.getZoom();let t=this.feature.dRotate;this.feature.dRotate=0,this.feature._calculateParts(),this.feature.dRotate=t,this.lastStyleKey=this._generateFromFeatureStyle(this.feature.style),this.lastMainKey=this._generateFromFeature(),this.lastAnnotationKey=this._generateFromAnnotation(),this.lastSymbolTextKey=this._generateFromSymbolText(),this.lastPictureFrameKey=this._generateFromPictureFrame(),this.lastBloodVolumeKey=this._generateFromBloodVolume(),this.bounds=L.latLngBounds(L.latLng(this.feature.getBounds().getNorth(),this.feature.getBounds().getWest()),L.latLng(this.feature.getBounds().getSouth(),this.feature.getBounds().getEast())),this.getComponentLatLngs(),this._drawFeatures(),this._drawAnnotation(),this._drawSymbolText(),this._drawBloodVolume(),this._drawPictureFrame()}else{let t=this._generateFromFeature();if(this.lastMainKey!==t){for(let t in this.feature.components)delete this.feature.components[t];this.feature.components.length=0;let e=this.feature.dRotate;this.feature.dRotate=0,this.feature._calculateParts(),this.feature.dRotate=e,this.lastMainKey=t,this.lastAnnotationKey=this._generateFromAnnotation(),this.lastSymbolTextKey=this._generateFromSymbolText(),this.lastPictureFrameKey=this._generateFromPictureFrame(),this.lastBloodVolumeKey=this._generateFromBloodVolume(),this.lastStyleKey=this._generateFromFeatureStyle(this.feature.style),this.fromZoom=this.feature._map.getZoom(),this.latLng=L.latLng(this.feature.getLatLngs()[0].lat,this.feature.getLatLngs()[0].lng),this.bounds=L.latLngBounds(L.latLng(this.feature.getBounds().getNorth(),this.feature.getBounds().getWest()),L.latLng(this.feature.getBounds().getSouth(),this.feature.getBounds().getEast())),this.getComponentLatLngs(),this._drawFeatures(),this._drawAnnotation(),this._drawSymbolText(),this._drawBloodVolume(),this._drawPictureFrame()}else{let t=this._generateFromAnnotation();this.lastAnnotationKey!==t&&(this.feature._handleAnnotation(this._scaleBounds(this.bounds)),this._drawAnnotation(),this.lastAnnotationKey=t);let e=this._generateFromSymbolText();this.lastSymbolTextKey!==e&&(this.feature._calculateLabel(this._scaleBounds(this.bounds),this.latLng),this._drawSymbolText(),this.lastSymbolTextKey=e);let o=this._generateFromBloodVolume();this.lastBloodVolumeKey!==o&&(this.feature._calculateBloodVolume(this._scaleBounds(this.bounds),this.latLng),this._drawBloodVolume(),this.lastBloodVolumeKey=o);let i=this._generateFromPictureFrame();this.lastPictureFrameKey!==i&&(this.feature._calculatePictureFrame(this._scaleBounds(this.bounds)),this._drawPictureFrame(),this.lastPictureFrameKey=i)}let e=this._generateFromFeatureStyle(this.feature.style);if(this.lastStyleKey!==e&&"function"==typeof this.feature._copyStyleForCell){for(let t in this.feature.components){let e=this.feature.components[t];if(e.isSymbolText||e.isBloodVolume||e.isPictureFrame)continue;let o=e.options;this.feature._copyStyleForCell(o,this.feature.style,e),L.setOptions(e,o)}8===this.feature.annotationPosition&&0!==this.feature.textContent.length&&this.feature._handleAnnotation(this._scaleBounds(this.bounds)),this._drawFeatures(),this._drawAnnotation()}this.lastStyleKey=e}this._computeRedrawSize()},getCacheInfo:function(){var t=document.createElement("canvas"),e=t.getContext("2d");t.width=this.canvas.width,t.height=this.canvas.height,e.clearRect(0,0,t.width,t.height),e.drawImage(this.canvas,0,0);let o={canvas:e.canvas,anchor:L.point(this.anchor.x,this.anchor.y),size:[this.size[0],this.size[1]],redrawSize:[this.redrawSize[0],this.redrawSize[1]],redrawAnchor:L.point(this.redrawAnchor.x,this.redrawAnchor.y),bounds:L.latLngBounds(this.bounds.getSouthEast(),this.bounds.getNorthWest()),fromZoom:this.fromZoom,latLng:L.latLng(this.latLng.lat,this.latLng.lng),componentLatLngs:[]};for(var i=0;i<this.componentLatLngs.length;i++)o.componentLatLngs.push(L.Util.cloneLatLngs(this.componentLatLngs[i]));null!=this.annotation&&(o.annotation=this.annotation.getCacheInfo()),o.images=[];for(let t=0;t<this.images.length;t++){let e={};e=SuperMap.Util.copyAttributes(e,this.images[t]),o.images.push(e)}o.pictureFrames=[];for(let t=0;t<this.pictureFrames.length;t++){let e={};e=SuperMap.Util.copyAttributes(e,this.pictureFrames[t]),o.pictureFrames.push(e)}o.symbolTexts=[];for(let t=0;t<this.symbolTexts.length;t++)o.symbolTexts.push(this.symbolTexts[t].getCacheInfo());o.bloodVolumes=[];for(let t=0;t<this.bloodVolumes.length;t++)o.bloodVolumes.push(this.bloodVolumes[t].getCacheInfo());return o},generateUuidFromFeature:function(){var t="";return this.feature.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?(t+=this._generateFromFeature(),t+="_"+this._generateFromAnnotation(),t+="_"+this._generateFromSymbolText(),t+="_"+this._generateFromBloodVolume(),t+="_"+this._generateFromPictureFrame(),t+="_"+this._generateFromFeatureStyle(this.feature.style)):this.feature.symbolType===SuperMap.Plot.SymbolType.PICTURE?(t=this.feature.libID.toString()+"_"+this.feature.code.toString()+"_"+this.feature.path+this.feature.style.graphicWidth+this.feature.style.graphicHeight+this.feature.style.graphicXOffset+this.feature.style.graphicYOffset,t+="_"+this._generateFromSymbolText(),t+="_"+this._generateFromBloodVolume()):this.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT?(t=this.feature.libID.toString()+"_"+this.feature.code.toString()+"_"+this.feature.associatedUuid+"_"+this.feature.addFrame.toString(),t+="_"+this._generateFromSymbolText()):this.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1&&(t=this.feature.libID.toString()+"_"+this.feature.code.toString()+"_"+this.feature.associatedUuid+"_"+this.feature.textContent+"_"+this.feature.space.toString()+"_"+this.feature.offsetX.toString()+"_"+this.feature.offsetY.toString(),t+="_"+this._generateFromFeatureStyle(this.feature.style)),t},_computeImageSize:function(){var t=this._scaleBounds(this.bounds),e=new L.Bounds;e.extend(this.feature._map.latLngToLayerPoint(t.getNorthEast())),e.extend(this.feature._map.latLngToLayerPoint(t.getNorthWest())),e.extend(this.feature._map.latLngToLayerPoint(t.getSouthEast())),e.extend(this.feature._map.latLngToLayerPoint(t.getSouthWest()));let o=new L.Bounds(e.min,e.max);this.leftTopPixel=L.point(e.min.x,e.min.y);let i=o.getSize();i.x+=2*this.feature.style.weight,i.y+=2*this.feature.style.weight,this.anchor=this._latlngToLayerPoint([this.latLng])[0],this.size=[i.x,i.y]},_computeRedrawSize:function(){var t=this._scaleBounds(this.bounds),e=this.getBounds(this.latLng,this.feature.dRotate);let o=e.getWest()-t.getWest(),i=e.getEast()-t.getEast(),l=e.getNorth()-t.getNorth(),s=e.getSouth()-t.getSouth();if(this.feature.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL||this.feature.symbolType===SuperMap.Plot.SymbolType.PICTURE)for(let e in this.feature.components){let o=this.feature.components[e];(o.isAnnotation||o.isSymbolText||o.isBloodVolume||o.isPictureFrame)&&t.extend(o.getBounds?o.getBounds():o.getLatLng())}var n=new L.Bounds;n.extend(this.feature._map.latLngToLayerPoint(L.latLng(t.getNorth()+l,t.getEast()+i))),n.extend(this.feature._map.latLngToLayerPoint(L.latLng(t.getNorth()+l,t.getWest()+o))),n.extend(this.feature._map.latLngToLayerPoint(L.latLng(t.getSouth()+s,t.getEast()+i))),n.extend(this.feature._map.latLngToLayerPoint(L.latLng(t.getSouth()+s,t.getWest()+o))),this.leftTopPixel=L.point(n.min.x,n.min.y);var a=n.getSize(),r=this.feature.style.weight;a.x+=2*r,a.y+=2*r,this.redrawAnchor=this._latlngToLayerPoint([this.latLng])[0],this.redrawSize=[a.x,a.y]},_latlngToLayerPoint:function(t,e){null==e&&(e=this.fromZoom);let o=this.feature._map.getZoomScale(e,this.feature._map.getZoom()),i=this.latLng;var l=[];for(let e=0;e<t.length;e++){let n=i.lat+o*(t[e].lat-i.lat),a=i.lng+o*(t[e].lng-i.lng);var s=this.feature._map.latLngToLayerPoint(L.latLng(n,a));s.x=s.x-this.leftTopPixel.x+this.feature.style.weight,s.y=s.y-this.leftTopPixel.y+this.feature.style.weight,l.push(s)}return l},_scaleBounds:function(t){if(this.fromZoom!==this.feature._map.getZoom()){let e=this.feature._map.getZoomScale(this.fromZoom,this.feature._map.getZoom()),o=this.latLng,i=o.lat+e*(t.getNorth()-o.lat),l=o.lat+e*(t.getSouth()-o.lat),s=o.lng+e*(t.getWest()-o.lng),n=o.lng+e*(t.getEast()-o.lng);return L.latLngBounds(L.latLng(i,s),L.latLng(l,n))}return L.latLngBounds(L.latLng(t.getNorth(),t.getWest()),L.latLng(t.getSouth(),t.getEast()))},_scaleCompount:function(t){if(this.fromZoom!==this.feature._map.getZoom()){let e=this.feature._map.getZoomScale(this.fromZoom,this.feature._map.getZoom()),o=this.latLng,i=o.lat+e*(t.getNorth()-o.lat),l=o.lat+e*(t.getSouth()-o.lat),s=o.lng+e*(t.getWest()-o.lng),n=o.lng+e*(t.getEast()-o.lng);return L.latLngBounds(L.latLng(i,s),L.latLng(l,n))}return L.latLngBounds(L.latLng(t.getNorth(),t.getWest()),L.latLng(t.getSouth(),t.getEast()))},_drawFeatures:function(){for(var t in this.images.length=0,this._computeImageSize(),this.canvasEle.width=this.size[0],this.canvasEle.height=this.size[1],this._ctx.clearRect(0,0,this.canvasEle.width,this.canvasEle.height),this.canvas=this._ctx.canvas,this._ctx.translate(0,0),this.feature.components){var e=this.feature.components[t];!0!==e.isSymbolText&&!0!==e.isBloodVolume&&!0!==e.isPictureFrame&&!0!==e.isAnnotation&&(et&&e instanceof et?this.images.push(this._drawImage(e,this._ctx)):tt&&e instanceof tt?this._drawText(e,this._ctx):L.Rectangle&&e instanceof L.Rectangle?this._drawRectangle(e,this._ctx):L.Polygon&&e instanceof L.Polygon?this._drawPolygon(e,this._ctx):L.Polyline&&e instanceof L.Polyline&&this._drawPolyline(e,this._ctx))}},_drawAnnotation:function(){var t=!1,e=this._scaleBounds(this.bounds);this.latLng;for(let i=0;i<this.feature.components.length;i++)if(!0===this.feature.components[i].isAnnotation&&8!==this.feature.annotationPosition){t=!0;var o=null;switch(this.feature.annotationPosition){case SuperMap.Plot.AnnoPosition.LEFTTOP:o=L.latLng(e.getNorth(),e.getWest());break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:o=L.latLng(e.getSouth(),e.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:o=L.latLng(e.getNorth(),e.getEast());break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:o=L.latLng(e.getSouth(),e.getEast());break;case SuperMap.Plot.AnnoPosition.TOP:o=L.latLng(e.getNorth(),(e.getWest()+e.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:o=L.latLng(e.getSouth(),(e.getWest()+e.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:o=L.latLng((e.getSouth()+e.getNorth())/2,e.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:o=L.latLng((e.getSouth()+e.getNorth())/2,e.getEast())}null==this.annotation?(this.annotation=new it(this.feature,[this.feature.components[i]],o,this.feature.annotationPosition,0,0,this.options),this.annotation.render()):(this.annotation.clear(),this.annotation.setComponents([this.feature.components[i]],o,this.feature.annotationPosition,0,0));break}!1===t&&null!=this.annotation&&(delete this.annotation,this.annotation=null)},_drawSymbolText:function(){var t=this._scaleBounds(this.bounds),e=this.latLng;for(let l=0;l<this.feature.symbolTextComponents.length;l++){var o=null;switch(this.feature.symbolTexts[l].textPosition){case SuperMap.Plot.AnnoPosition.LEFTTOP:o=L.latLng(t.getNorth(),t.getWest());break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:o=L.latLng(t.getSouth(),t.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:o=L.latLng(t.getNorth(),t.getEast());break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:o=L.latLng(t.getSouth(),t.getEast());break;case SuperMap.Plot.AnnoPosition.TOP:o=L.latLng(t.getNorth(),(t.getWest()+t.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:o=L.latLng(t.getSouth(),(t.getWest()+t.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:o=L.latLng((t.getSouth()+t.getNorth())/2,t.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:o=L.latLng((t.getSouth()+t.getNorth())/2,t.getEast());break;case SuperMap.Plot.AnnoPosition.ANCHOR:o=L.latLng(e.lat,e.lng)}if(this.symbolTexts.length<=l){var i=new it(this.feature,this.feature.symbolTextComponents[l],o,this.feature.symbolTexts[l].textPosition,0,0,this.options);i.render(),this.symbolTexts.push(i)}else this.symbolTexts[l].clear(),this.symbolTexts[l].setComponents(this.feature.symbolTextComponents[l],o,this.feature.symbolTexts[l].textPosition,0,0)}for(let t=this.feature.symbolTextComponents.length;t<this.symbolTexts.length;)delete this.symbolTexts[t],this.symbolTexts.splice(t,1)},_drawBloodVolume:function(){for(let i=0;i<this.feature.bloodVolumeComponents.length;i++){var t=this._scaleBounds(this.bounds),e=null;switch(this.feature.bloodVolumes[i].position){case SuperMap.Plot.AnnoPosition.TOP:e=L.latLng(t.getNorth(),(t.getWest()+t.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:e=L.latLng(t.getSouth(),(t.getWest()+t.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:e=L.latLng((t.getSouth()+t.getNorth())/2,t.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:e=L.latLng((t.getSouth()+t.getNorth())/2,t.getEast())}if(this.bloodVolumes.length<=i){var o=new it(this.feature,this.feature.bloodVolumeComponents[i],e,this.feature.bloodVolumes[i].position,0,0,this.fromZoom,this.options);o.render(),this.bloodVolumes.push(o)}else this.bloodVolumes[i].clear(),this.bloodVolumes[i].setComponents(this.feature.bloodVolumeComponents[i],e,this.feature.bloodVolumes[i].position,0,0,this.fromZoom)}for(let t=this.feature.bloodVolumeComponents.length;t<this.bloodVolumes.length;)delete this.bloodVolumes[t],this.bloodVolumes.splice(t,1)},_drawPictureFrame:function(){if(this.pictureFrames.length=0,null!=this.feature.pictureFrameComponents)for(let o=0;o<this.feature.pictureFrameComponents.length;o++){var t=this.feature.pictureFrames[o].offsetX,e=this.feature.pictureFrames[o].offsetY;let i=this.feature.pictureFrameComponents[o][0];if(et&&i instanceof et){let l=this._drawImage(i,this._ctx);this.pictureFrames.push({path:l.path,style:l.style,position:this.feature.pictureFrames[o].position,offsetX:t,offsetY:e})}}},_generateFromFeature:function(){var t="";return this.feature.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?t=this.feature.libID.toString()+"_"+this.feature.code.toString()+"_"+Math.round(this.feature.symbolSize.w).toString()+"_"+Math.round(this.feature.symbolSize.h).toString()+"_"+ +this.feature.dRotate.toString()+"_"+this.feature.symbolRank.toString()+this.feature.surroundLineType.toString()+this.feature.textContent+this.feature.annotationPosition:this.feature.symbolType===SuperMap.Plot.SymbolType.PICTURE&&(t=this.feature.libID.toString()+"_"+this.feature.code.toString()+"_"+this.feature.path+this.feature.style.graphicWidth+this.feature.style.graphicHeight+this.feature.style.graphicXOffset+this.feature.style.graphicYOffset,t+="_"+this._generateFromSymbolText(),t+="_"+this._generateFromBloodVolume()),t},_generateFromAnnotation:function(){return this.feature.textContent+"_"+this.feature.annotationPosition.toString()},_generateFromSymbolText:function(){var t="";if(null==this.feature.symbolTexts)return t;for(var e=0;e<this.feature.symbolTexts.length;e++){var o=this.feature.symbolTexts[e];null!=o.textContent&&(t+="_"+o.textContent),null!=o.textPosition&&(t+="_"+o.textPosition.toString()),null!=o.offsetX&&(t+="_"+o.offsetX.toString()),null!=o.offsetY&&(t+="_"+o.offsetY.toString()),null!=o.border&&(t+="_"+o.border.toString()),null!=o.showRelationLine&&(t+="_"+o.showRelationLine.toString()),null!=o.paddingX&&(t+="_"+o.paddingX.toString()),null!=o.paddingY&&(t+="_"+o.paddingY.toString()),null!=o.style&&(t+=this._generateFromFeatureStyle(o.style)),null!=o.lineStyle&&(null!=o.lineStyle.color&&(t+="_"+o.lineStyle.color),null!=o.lineStyle.lineSymbolID&&(t+="_"+o.lineStyle.lineSymbolID),null!=o.lineStyle.opacity&&(t+="_"+o.lineStyle.opacity),null!=o.lineStyle.weight&&(t+="_"+o.lineStyle.weight))}return t},_generateFromBloodVolume:function(){var t="";if(null==this.feature.bloodVolumes)return t;for(var e=0;e<this.feature.bloodVolumes.length;e++){var o=this.feature.bloodVolumes[e];null!=o.volume&&(t+="_"+o.volume),null!=o.position&&(t+="_"+o.position.toString()),null!=o.offsetX&&(t+="_"+o.offsetX.toString()),null!=o.offsetY&&(t+="_"+o.offsetY.toString()),null!=o.width&&(t+="_"+o.width.toString()),null!=o.height&&(t+="_"+o.height.toString()),null!=o.style&&(null!=o.style.color&&(t+="_"+o.style.color),null!=o.style.opacity&&(t+="_"+o.style.opacity.toString()),null!=o.style.weight&&(t+="_"+o.style.weight.toString()),null!=o.style.remainingVolumeColor&&(t+="_"+o.style.remainingVolumeColor),null!=o.style.remainingVolumeOpacity&&(t+="_"+o.style.remainingVolumeOpacity.toString()),null!=o.style.consumeVolumeColor&&(t+="_"+o.style.consumeVolumeColor),null!=o.style.consumeVolumeOpacity&&(t+="_"+o.style.consumeVolumeOpacity.toString()))}return t},_generateFromPictureFrame:function(){var t="";if(null==this.feature.pictureFrames)return t;for(var e=0;e<this.feature.pictureFrames.length;e++){var o=this.feature.pictureFrames[0];null!=o.path&&(t+="_"+o.path),null!=o.position&&(t+="_"+o.position.toString()),null!=o.offsetX&&(t+="_"+o.offsetX.toString()),null!=o.offsetY&&(t+="_"+o.offsetY.toString()),null!=o.width&&(t+="_"+o.width.toString()),null!=o.height&&(t+="_"+o.height.toString())}return t},_generateFromFeatureStyle:function(t){var e="";return null!=t.fontFamily&&(e+=t.fontFamily),null!=t.fontSize&&(e+="_"+t.fontSize),null!=t.fontColor&&(e+="_"+t.fontColor),null!=t.fontStroke&&(e+="_"+t.fontStroke),null!=t.fontStrokeColor&&(e+="_"+t.fontStrokeColor),null!=t.fontStrokeWidth&&(e+="_"+t.fontStrokeWidth),null!=t.fontBackground&&(e+="_"+t.fontBackground),null!=t.fontBackgroundColor&&(e+="_"+t.fontBackgroundColor),null!=t.fontShadow&&(e+="_"+t.fontShadow),null!=t.fontShadowColor&&(e+="_"+t.fontShadowColor),null!=t.fontShadowOffsetX&&(e+="_"+t.fontShadowOffsetX),null!=t.fontShadowOffsetY&&(e+="_"+t.fontShadowOffsetY),null!=t.color&&(e+="_"+t.color),null!=t.weight&&(e+="_"+t.weight),null!=t.opacity&&(e+="_"+t.opacity),null!=t.lineSymbolID&&(e+="_"+t.lineSymbolID),null!=t.dashArray&&(e+="_"+t.dashArray),null!=t.fill&&(e+="_"+t.fill),null!=t.fillSymbolID&&(e+="_"+t.fillSymbolID),null!=t.fillColor&&(e+="_"+t.fillColor),null!=t.fillOpacity&&(e+="_"+t.fillOpacity),null!=t.fillBackColor&&(e+="_"+t.fillBackColor),null!=t.fillBackOpacity&&(e+="_"+t.fillBackOpacity),null!=t.fillGradientMode&&(e+="_"+t.fillGradientMode),null!=t.surroundLineColor&&(e+="_"+t.surroundLineColor),null!=t.surroundLineColorOpacity&&(e+="_"+t.surroundLineColorOpacity),null!=t.surroundLineWidth&&(e+="_"+t.surroundLineWidth),e}});L.supermap.plotting.dotSymbolStyle=function(t){return new ut(t)};var ht=L.Marker.extend({options:{nHandle:0,tag:0}});L.supermap.plotting.editMarker=function(t,e){return new ht(t,e)};var gt=L.Evented.extend({dragging:null,uuid:null,libID:null,code:null,textDisplay:!0,minEditPts:1,maxEditPts:1,symbolType:null,symbolName:null,isSelected:!1,enableEdit:!0,note:"",extendProperty:null,custom:null,symbolData:null,dRotate:null,dScale:null,textContent:null,annotationPosition:4,subSymbols:null,fromZoom:null,style:null,isLocked:!1,anchorPoint:null,avoidRegions:null,ownerGroup:null,geoSymbolTexts:null,isEdit:!1,components:null,options:{},_defaultStyle:{display:"display",color:"#ff0000",lineSymbolID:0,opacity:"1.00",weight:2,lineCap:"square",lineJoin:"square",surroundLineColor:"#ffff00",surroundLineColorOpacity:"1.00",surroundLineWidth:4,fillSymbolID:1,fillColor:"#ff0000",fillOpacity:"0.31",fillBackColor:"#ff0000",fillBackOpacity:"1.00",fillGradientMode:"NONE",fontColor:"#000000",fontFamily:"Microsoft YaHei",fontSize:"12",fontStroke:!1,fontStrokeColor:"#ff0000",fontStrokeWidth:"2px",fontBackground:!1,fontBackgroundColor:"#ff0000",fontShadow:!1,fontShadowColor:"#ff0000",fontShadowOffsetX:0,fontShadowOffsetY:0,fontSpace:0,fontPercent:100,sizeFixed:!0,labelAlign:"lt",labelRotation:-0,labelXOffset:0,labelYOffset:0,fillAngle:0,fillCenterOffsetX:0,fillCenterOffsetY:0},initialize:function(t,e,o,i){this.components=[],this.libID=t,this.code=e,this.extendProperty=new SuperMap.Plot.ExtendProperty,this.avoidRegions=[],this.subSymbols=[],this.geoSymbolTexts=[],this.dRotate=0,this.dScale=1,this.textContent="",this.associatedUuid="",i&&i.symbolData&&(this._removeRedundancySymbolData(i.symbolData),this.symbolData=SuperMap.Plot.PlottingUtil.cloneObject(i.symbolData),SuperMap.Plot.AnalysisSymbol.parseSymbolData(this,this.symbolData,!0),SuperMap.Util.applyDefaults(this.style,this._defaultStyle),delete i.symbolData),this._mergeDefaultStyle(),SuperMap.Util.extend(this,i),null===this.uuid&&(this.uuid=SuperMap.Plot.PlottingUtil.generateUuid()),null===this.style&&(this.style=SuperMap.Plot.PlottingUtil.cloneObject(this._defaultStyle));for(var l=0;l<this.avoidRegions.length;l++)this.avoidRegions[l].associatedUuid=this.uuid},onAdd:function(t){this.layer=t,this._renderer=t instanceof ue?t.getRenderer(this.symbolType):t._renderer,this._map=t._map,this.redraw(),this.isEdit=!0,ft&&(this.dragging||(this.dragging=new ft(this))),null===this.fromZoom&&(this.fromZoom=this._map.getZoom())},_clearComponents:function(){for(var t=0;t<this.components.length;t++)this.components[t].removeEventParent(this),this.components[t]instanceof gt?this.components[t]._clearComponents():(null!=this.components[t]._renderer&&this.components[t].onRemove(),delete this.components[t]);this.components.length=0,this._map&&this.layer&&this._map.getRenderer(this.layer)instanceof L.SVG&&this._removeGradientNodeInSVG()},_removeGradientNodeInSVG:function(){if(this.uuid&&this.layer._renderer._container.defs){var t=document.getElementById("linearGradient_"+this.uuid);null!==t&&this.layer._renderer._container.defs.removeChild(t),null!==(t=document.getElementById("radialGradient_"+this.uuid))&&this.layer._renderer._container.defs.removeChild(t),null!==(t=document.getElementById("patternFill_"+this.uuid))&&this.layer._renderer._container.defs.removeChild(t)}},_addComponents:function(t){!0===this.movingTarget?(t._map=this._map,this.components.push(t)):(t._map=this._map,t._renderer=this._renderer,t.addEventParent(this),t instanceof gt?t.onAdd(this.layer):t.onAdd(),this.components.push(t))},_project:function(){var t=this;t._pxBounds=new L.Bounds,t.components.map(function(e){return e instanceof gt&&e._project(),e._pxBounds&&e._pxBounds.isValid()&&(t._pxBounds.extend(e._pxBounds.min),t._pxBounds.extend(e._pxBounds.max)),e})},getBounds:function(){var t=this;return t._bounds=new L.LatLngBounds,t.components.map(function(e){return t._bounds.extend(e.getBounds()),e}),t._bounds},clone:function(){this.symbolData=this.getSymbolData();var t=SuperMap.Plot.PlottingUtil.toJSON(this.symbolData),e=JSON.parse(t);e.uuid=SuperMap.Plot.PlottingUtil.generateUuid();var o=SuperMap.Plot.PlottingUtil.cloneObject(this.style);return L.supermap.plotting.PlottingObject.createSymbol(this.libID,this.code,null,{symbolData:e,serverUrl:this.serverUrl},o)},setStyle:function(t){if(SuperMap.Util.extend(this.style,t),this.redraw(),this.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL&&this.ownerGroup&&(this.ownerGroup.symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT||this.ownerGroup.symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT))for(let t in this.ownerGroup.subObjects)this.ownerGroup.subObjects[t].redraw();this.symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL&&this.isSelected&&"none"!==this.style.display&&this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},setScale:function(){},setRotate:function(){},setTextPosition:function(){},setTextContent:function(t){this.textContent=t,this.redraw(),this.symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL&&this.isSelected&&this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},getLocked:function(){return this.isLocked},setLocked:function(t){if(this.isLocked!==t){if(this.isLocked=t,this.symbolType===SuperMap.Plot.SymbolType.GROUPOBJECT)for(var e=0;e<this.components.length;e++)this.components[e].isLocked=t;this.fire(SuperMap.Plot.Event.reseteditmarkers)}},getScale:function(){return this.dScale},getScaleValues:function(){return this.scaleValues},setScaleValues:function(t){t&&null!==t&&(L.Util.isArray(t)||(t=[t]),this.scaleValues=t,this._calculateParts(),this.fire(SuperMap.Plot.Event.reseteditmarkers))},getRotate:function(){return this.dRotate},getSubSymbols:function(){return 0===this.libID&&this.code===SuperMap.Plot.SymbolType.NODECHAIN&&0===this.subSymbols.length?this.subSymbols.push(new SuperMap.Plot.SubSymbol(-1,-1)):(100!==this.libID||25200!==this.code&&3020901!==this.code&&23400!==this.code&&30800!==this.code&&26400!==this.code||0!==this.subSymbols.length)&&(123!==this.libID||5030101!==this.code&&5020801!==this.code&&50208!==this.code&&50331!==this.code||0!==this.subSymbols.length)||this.subSymbols.push(new SuperMap.Plot.SubSymbol(-1,-1)),this.subSymbols},getTextPosition:function(){return this.annotationPosition},getTextContent:function(){return this.textContent},getExtendProperty:function(){return this.extendProperty},addAvoidRegion:function(t){t.symbolType===SuperMap.Plot.SymbolType.AVOIDREGION&&(this.avoidRegions.push(t),t.associatedUuid=this.uuid,this.redraw())},removeAvoidRegions:function(t){void 0===t&&(t=this.avoidRegions.slice()),SuperMap.Util.isArray(t)||(t=[t]);for(var e=0;e<t.length;e++){var o=t[e];if(o.symbolType===SuperMap.Plot.SymbolType.AVOIDREGION)for(var i=0;i<this.avoidRegions.length;i++)if(this.avoidRegions[i]===o){this.avoidRegions.splice(i,1);break}}this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},getSymbolData:function(){return SuperMap.Plot.AnalysisSymbol.setSymbolData(this,this.symbolData,!0),this.symbolData},redraw:function(){null!=this.graphic&&null!=this.graphic.layer&&!0===this.graphic.layer.getVisibility()?this.graphic.redraw():null!=this.layer&&(this._clearComponents(),null!=this.layer.getVisibility&&!0!==this.layer.getVisibility()||(this._redrawComponents(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},_redrawComponents:function(){"none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility()?this.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL&&this.symbolType!==SuperMap.Plot.SymbolType.AlgoSymbol&&0!==this.libID||this._updateSymbolTexts():(this._calculateParts(),this._calculateAvoidRegions())},_calculateAvoidRegions:function(){if(0!==this.avoidRegions.length){var t=this.components.slice();for(let t=0;t<this.components.length;t++)this.components[t].removeEventParent(this),this.components[t]instanceof gt||(this.components[t].onRemove(),delete this.components[t]);this.components.length=0;for(var e=0;e<this.avoidRegions.length;e++)if(0!==this.avoidRegions[e].getLatLngs().length){var o=this.avoidRegions[e];t=this._layersWithoutAvoidRegion(o,t)}for(let e=0;e<t.length;e++)this._addComponents(t[e])}},_layersWithoutAvoidRegion:function(t,e){for(var o=[],i=0;i<e.length;i++){var l=e[i];if(l instanceof gt)o=o.concat(this._layersWithoutAvoidRegion(t,l.components)),l._clearComponents();else{if(1===t._relationToLayer(l))continue;if(l instanceof tt||0!==t._relationToLayer(l))o.push(l);else if(l instanceof L.Polygon){let e={};e=SuperMap.Util.copyAttributes(e,l.options);let i=L.Util.latLngsToSuperMapPoints(l.getLatLngs()[0][0]),n=L.Util.latLngsToSuperMapPoints(l.getLatLngs()[0][l.getLatLngs()[0].length-1]);SuperMap.Plot.PlottingUtil.isSamePt(i[0],n[0])||l.getLatLngs()[0].push(l.getLatLngs()[0][0]),i=L.Util.latLngsToSuperMapPoints(l.getLatLngs()[0][0]),n=L.Util.latLngsToSuperMapPoints(l.getLatLngs()[0][l.getLatLngs()[0].length-1]),SuperMap.Plot.PlottingUtil.isSamePt(i[0],n[0])||l.getLatLngs()[0].push(l.getLatLngs()[0][0]);for(var s=0;s<l.getLatLngs().length;s++){let i=t._getWithoutPts(l.getLatLngs()[s],!0);for(let t=0;t<i.length;t++){let l=L.polyline(L.Util.superMapPointsToLatLngs(i[t]),e);o.push(l)}}}else if(l instanceof L.Polyline){let e={};e=SuperMap.Util.copyAttributes(e,l.options);let i=t._getWithoutPts(l.getLatLngs(),!1);for(let t=0;t<i.length;t++){e.fill=!1;let l=L.polyline(L.Util.superMapPointsToLatLngs(i[t]),e);o.push(l)}}}}return o},_isDot:function(){return this.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL||this.symbolType===SuperMap.Plot.SymbolType.GROUPOBJECT||this.symbolType===SuperMap.Plot.SymbolType.FLAGGROUP||this.symbolType===SuperMap.Plot.SymbolType.ROUTENODE||this.symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT||this.symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT},_resizeOffset:function(t,e,o){var i=L.latLng(0,0);switch(e){case 1:i.lng=t.lng-o.getWest(),i.lat=t.lat-o.getNorth();break;case 3:i.lng=t.lng-o.getEast(),i.lat=t.lat-o.getNorth();break;case 6:i.lng=t.lng-o.getWest(),i.lat=t.lat-o.getSouth();break;case 8:i.lng=t.lng-o.getEast(),i.lat=t.lat-o.getSouth();break;case 2:i.lng=0,i.lat=t.lat-o.getNorth();break;case 4:i.lng=t.lng-o.getWest(),i.lat=0;break;case 5:i.lng=t.lng-o.getEast(),i.lat=0;break;case 7:i.lng=0,i.lat=t.lat-o.getSouth()}return i},_resizeBounds:function(t,e,o){var i=o.getWest(),l=o.getEast(),s=o.getNorth(),n=o.getSouth();switch(e){case 1:s=t.lat,i=t.lng;break;case 3:s=t.lat,l=t.lng;break;case 6:i=t.lng,n=t.lat;break;case 8:l=t.lng,n=t.lat;break;case 2:s=t.lat;break;case 4:i=t.lng;break;case 5:l=t.lng;break;case 7:n=t.lat}var a=new L.LatLngBounds;return a._southWest=L.latLng(n,i),a._northEast=L.latLng(s,l),a},_getHandleCount:function(){switch(this.symbolType){case SuperMap.Plot.SymbolType.ELLIPSESYMBOL:case SuperMap.Plot.SymbolType.CIRCLESYMBOL:case SuperMap.Plot.SymbolType.ARCSYMBOL:case SuperMap.Plot.SymbolType.CHORDSYMBOL:case SuperMap.Plot.SymbolType.PIESYMBOL:case SuperMap.Plot.SymbolType.AVOIDREGION:case SuperMap.Plot.SymbolType.LINERELATION:case SuperMap.Plot.SymbolType.SYMBOLTEXT:case SuperMap.Plot.SymbolType.SYMBOLTEXT1:return this.getLatLngs().length+9;default:return 9}},_getHandlePointsByBounds:function(t){if(void 0!==t&&null!==t||(t=this.getBounds()),null!==t){var e=this._map.latLngToLayerPoint(L.latLng(t.getNorth(),t.getEast()));e.x+=5,e.y-=5;var o=this._map.latLngToLayerPoint(L.latLng(t.getNorth(),t.getWest()));o.x-=5,o.y-=5;var i=this._map.latLngToLayerPoint(L.latLng(t.getSouth(),t.getEast()));i.x+=5,i.y+=5;var l=this._map.latLngToLayerPoint(L.latLng(t.getSouth(),t.getWest()));l.x-=5,l.y+=5;for(var s=L.point((e.x+o.x)/2,e.y),n=L.point(e.x,(e.y+i.y)/2),a=L.point((i.x+l.x)/2,i.y),r=L.point(o.x,(o.y+l.y)/2),p=this._map.layerPointToLatLng(e),u=this._map.layerPointToLatLng(o),h=this._map.layerPointToLatLng(i),g=this._map.layerPointToLatLng(l),c=this._map.layerPointToLatLng(n),y=this._map.layerPointToLatLng(a),P=this._map.layerPointToLatLng(r),d=this._map.layerPointToLatLng(s),S=[u.clone(),d.clone(),p.clone(),P.clone(),c.clone(),g.clone(),y.clone(),h.clone()],f=1,m=0;m<S.length;m++)S[m].nHandle=f++;return S}},_getHandleAndRotatePoints:function(){var t={handlePoints:[],rotatePoints:[]},e=this.getBounds();if(!e.isValid())return t;this._getHandleCount()>9?this.symbolType===SuperMap.Plot.SymbolType.REGULARPOLYGON?(t.handlePoints.push(this.getLatLngs()[0].clone()),t.handlePoints.push(this.getLatLngs()[this.getLatLngs().length-1].clone())):t.handlePoints=L.Util.cloneLatLngs(this.getLatLngs()):t.handlePoints=this._getHandlePointsByBounds(e);for(var o=0;o<t.handlePoints.length;o++)t.handlePoints[o].tag=o;if(!0===this.getLocked())return t;var i=15;if(L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&(i=20),this.symbolType!==SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL&&this.symbolType!==SuperMap.Plot.SymbolType.LINERELATION&&this.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXT&&this.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXT1&&this.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXTBOX&&this.symbolType!==SuperMap.Plot.SymbolType.LINEMARKING&&this.symbolType!==SuperMap.Plot.SymbolType.ANNOFRAMESYMBOLM&&this.symbolType!==SuperMap.Plot.SymbolType.ROUTENODE&&this.symbolType!==SuperMap.Plot.SymbolType.LITERATESIGN&&this.symbolType!==SuperMap.Plot.SymbolType.SATELLITE&&this.symbolType!==SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS&&this.symbolType!==SuperMap.Plot.SymbolType.AVOIDREGION&&this.symbolType!==SuperMap.Plot.SymbolType.NAVYDEPLOYMENT&&this.symbolType!==SuperMap.Plot.SymbolType.RECTANGLESYMBOL&&this.symbolType!==SuperMap.Plot.SymbolType.AIRDEPLOYMENT){var l=this._map.latLngToLayerPoint(L.latLng(e.getNorth(),e.getEast())),s=L.point(l.x+i,l.y-i),n=this._map.layerPointToLatLng(s);n.isRotatePoint=!0,t.rotatePoints=[n]}return t},_parseSymbolData:function(){if(null!==this.symbolData){if(this.libID=parseInt(this.symbolData.libID),this.code=parseInt(this.symbolData.code),this.symbolType=this.symbolData.symbolType,this.symbolName=this.symbolData.symbolName,this.textContent=this.symbolData.textContent,void 0!==this.symbolData.dScale?this.dScale=this.symbolData.dScale:this.dScale=this.symbolData.scale2D.x,void 0!==this.symbolData.dRotate?this.dRotate=this.symbolData.dRotate:this.dRotate=this.symbolData.rotate2D.x,void 0!==this.symbolData.uuid&&(this.uuid=this.symbolData.uuid),void 0!==this.symbolData.associatedUuid&&(this.associatedUuid=this.symbolData.associatedUuid),void 0!==this.symbolData.annotationPosition&&(this.annotationPosition=this.symbolData.annotationPosition),void 0!==this.symbolData.isLocked&&(this.isLocked=this.symbolData.isLocked),void 0!==this.symbolData.note&&(this.note=this.symbolData.note),void 0!==this.symbolData.custom&&(this.custom=this.symbolData.custom),this.symbolData.extendProperty)for(let e=0;e<this.symbolData.extendProperty.length;e++){var t=this.symbolData.extendProperty[e];this.extendProperty.addProperty(t.key,t.value)}if(this.symbolData.hasOwnProperty("subSymbols")&&this.symbolData.subSymbols&&0!==this.symbolData.subSymbols.length){this.subSymbols=[];for(let t=0;t<this.symbolData.subSymbols.length;t++){var e=this.symbolData.subSymbols[t].libID;void 0===e&&(e=this.libID);var o=this.symbolData.subSymbols[t].code;if(void 0!==o){var i={};void 0!==this.symbolData.subSymbols[t]&&(i.symbolData=this.symbolData.subSymbols[t].symbolData),void 0!==this.symbolData.subSymbols[t].textContent&&(i.textContent=this.symbolData.subSymbols[t].textContent),void 0!==this.symbolData.subSymbols[t].totalNum&&(i.totalNum=this.symbolData.subSymbols[t].totalNum),this.subSymbols.push(new SuperMap.Plot.SubSymbol(e,o,i))}}}if(this.symbolData.avoidRegions&&0!==this.symbolData.avoidRegions.length)for(let t=0;t<this.symbolData.avoidRegions.length;t++){let e={libID:0,code:SuperMap.Plot.SymbolType.AVOIDREGION,map:this._map,symbolData:this.symbolData.avoidRegions[t][0]};var l=L.supermap.plotting.avoidRegion(0,SuperMap.Plot.SymbolType.AVOIDREGION,[],e);l.style=SuperMap.Plot.AnalysisSymbol.getStyle(this.symbolData.avoidRegions[t][1],!0),this.avoidRegions.push(l)}}},_setSymbolData:function(t){if(void 0===t&&(t=!0),null===this.symbolData&&(this.symbolData={}),this.symbolData.hasOwnProperty("type")||(this.symbolData.type="GRAPHICOBJECT"),this.symbolData.hasOwnProperty("rotate2D")?this.symbolData.rotate2D.x=this.dRotate:this.symbolData.rotate2D={x:this.dRotate,y:0,z:0},this.symbolData.hasOwnProperty("scale2D")?this.symbolData.scale2D.x=this.dScale:this.symbolData.scale2D={x:this.dScale,y:0,z:0},this.symbolData.libID=this.libID,this.symbolData.code=this.code,this.symbolData.isEdit=!0,this.symbolData.uuid=this.uuid,this.symbolData.symbolType=this.symbolType,this.symbolData.symbolName=this.symbolName,this.symbolData.associatedUuid=this.associatedUuid,this.symbolData.annotationPosition=this.annotationPosition,this.symbolData.textContent=this.textContent,this.symbolData.isLocked=this.isLocked,this.symbolData.note=this.note,this.symbolData.custom=this.custom,this.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL&&this.symbolType!==SuperMap.Plot.SymbolType.GROUPOBJECT){this.symbolData.subSymbols=[];for(let o=0;o<this.getSubSymbols().length;o++){var e=this.getSubSymbols()[o];t?this.symbolData.subSymbols.push({libID:e.libID,code:e.code,symbolData:e.symbolData,textContent:e.textContent,totalNum:e.totalNum}):this.symbolData.subSymbols.push({libID:e.libID,code:e.code,textContent:e.textContent,totalNum:e.totalNum})}}this.symbolData.extendProperty=[];var o=this.getExtendProperty().getPropertyCount();for(let t=0;t<o;t++){var i=this.getExtendProperty().getPropertyByIndex(t);this.symbolData.extendProperty.push({key:i.key,value:i.value})}this.symbolData.avoidRegions=[];for(let t=0;t<this.avoidRegions.length;t++){var l={};SuperMap.Plot.AnalysisSymbol.setStyle(this.avoidRegions[t].style,l,!0),this.symbolData.avoidRegions.push([this.avoidRegions[t].getSymbolData(),l])}},_getSymbolWayType:function(){return 22===this.libID&&1016===this.code?0===this.getArrowBodyType()?SuperMap.Plot.AddPoint_WayType.POLYLINE:SuperMap.Plot.AddPoint_WayType.CURVE:SuperMap.Plot.AlgoSymbolFactory.getSymbolWayType(this.libID,this.code)},_reView:function(){},_mergeDefaultStyle:function(){var t=L.supermap.plotting.getControl(this._map,this.serverUrl).getDefaultStyle();if(t&&!0===t.defaultFlag&&!1===this.isEdit){if(this.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL){if(-1!==t.dotSymbolSize){var e=this.symbolSizeInLib.w;if(this.symbolSizeInLib.h>this.symbolSizeInLib.w&&(e=this.symbolSizeInLib.h),0===e||0===t.dotSymbolSize)0!==this.symbolSize.w&&0!==this.symbolSize.h||(this.symbolSize.w=this.symbolSizeInLib.w,this.symbolSize.h=this.symbolSizeInLib.h);else{var o=t.dotSymbolSize/e;this.symbolSize.w=o*this.symbolSizeInLib.w,this.symbolSize.h=o*this.symbolSizeInLib.h}}-1!==t.dotTextSpace&&(this.space=t.dotTextSpace),-1!==t.flagTextSize&&(this.flagTextSize=t.flagTextSize)}this.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL&&this.symbolType!==SuperMap.Plot.SymbolType.ALGOSYMBOL||(-1!==t.maxScale&&(this.maxScale=t.maxScale),-1!==t.minScale&&(this.minScale=t.minScale)),-1!==t.scaleByMap&&(this.scaleByMap=t.scaleByMap)}},_removeRedundancySymbolData:function(t){null!==t&&(t.hasOwnProperty("center")&&delete t.center,t.hasOwnProperty("id")&&delete t.id,t.hasOwnProperty("parts")&&delete t.parts,t.hasOwnProperty("points")&&delete t.points,t.hasOwnProperty("position")&&delete t.position,t.hasOwnProperty("prjCoordSys")&&delete t.prjCoordSys,t.hasOwnProperty("rotationX")&&delete t.rotationX,t.hasOwnProperty("rotationY")&&delete t.rotationY,t.hasOwnProperty("rotationZ")&&delete t.rotationZ,t.hasOwnProperty("scaleX")&&delete t.scaleX,t.hasOwnProperty("scaleY")&&delete t.scaleY,t.hasOwnProperty("scaleZ")&&delete t.scaleZ)},destroy:function(){this.layer.removeFeatures(this)},toGeoJsonStr:function(){return this.getSymbolData(),SuperMap.Plot.PlottingUtil.toJSON(this.symbolData)}});L.supermap.plotting.PlottingObject=gt,gt.prototype._containsPoint=function(t){if(this.symbolType!==SuperMap.Plot.SymbolType.TEXTSYMBOL)return!1;for(var e in this.components)if(this.components[e]._containsPoint(t))return!0;return!1},L.supermap.plotting.PlottingObject.createSymbol=function(t,e,o,i,l,s){i||(i={}),i.custom=s;var n=null;if(i&&i.symbolData&&i.symbolData.textStyle2D&&void 0===i.symbolData.textStyle2D.sizeFixed&&(i.symbolData.textStyle2D.sizeFixed=!0),null==o||SuperMap.Util.isArray(o)||(o=[o]),0===t)switch(e){case SuperMap.Plot.SymbolType.ARCREGION:n=L.supermap.plotting.arcRegion(t,e,o,i);break;case SuperMap.Plot.SymbolType.MISSILEROUTE:n=L.supermap.plotting.missileRoute(t,e,o,i);break;case SuperMap.Plot.SymbolType.NAVYROUTE:n=L.supermap.plotting.navyRoute(t,e,o,i);break;case SuperMap.Plot.SymbolType.AIRROUTE:n=L.supermap.plotting.airRoute(t,e,o,i);break;case SuperMap.Plot.SymbolType.LITERATESIGN:n=L.supermap.plotting.literateSign(t,e,o,i);break;case SuperMap.Plot.SymbolType.ROUTENODE:n=L.supermap.plotting.routeNode(t,e,o,i);break;case SuperMap.Plot.SymbolType.PATHTEXT:n=L.supermap.plotting.pathText(t,e,o,i);break;case SuperMap.Plot.SymbolType.LINERELATION:n=L.supermap.plotting.lineRelation(t,e,o,i);break;case SuperMap.Plot.SymbolType.GROUPOBJECT:n=L.supermap.plotting.groupObject(t,e,o,i);break;case SuperMap.Plot.SymbolType.INTERFERENCEBEAM:n=L.supermap.plotting.interferenceBeam(t,e,o,i);break;case SuperMap.Plot.SymbolType.SATELLITE:n=L.supermap.plotting.satellite(t,e,o,i);break;case SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS:n=L.supermap.plotting.satelliteTimeWindows(t,e,o,i);break;case SuperMap.Plot.SymbolType.SYMBOLTEXT:n=L.supermap.plotting.symbolText(t,e,o,i);break;case SuperMap.Plot.SymbolType.SYMBOLTEXT1:n=L.supermap.plotting.symbolText1(t,e,o,i);break;case SuperMap.Plot.SymbolType.FLAGGROUP:n=L.supermap.plotting.flagGroup(t,e,o,i);break;case SuperMap.Plot.SymbolType.NAVYDEPLOYMENT:n=L.supermap.plotting.navyDeployment(t,e,o,i);break;case SuperMap.Plot.SymbolType.AIRDEPLOYMENT:n=L.supermap.plotting.airDeployment(t,e,o,i);break;case SuperMap.Plot.SymbolType.AVOIDREGION:return L.supermap.plotting.avoidRegion(t,e,o,i);case SuperMap.Plot.SymbolType.PICTURE:n=L.supermap.plotting.picture(t,e,o,i);break;default:n=L.supermap.plotting.algoSymbol(t,e,o,i)}else n=i.symbolData&&i.symbolData.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?L.supermap.plotting.dotSymbol(t,e,o,i):L.supermap.plotting.algoSymbol(t,e,o,i);var a=L.supermap.plotting.getControl().getDefaultStyle();return SuperMap.Plot.AnalysisSymbol.mergeDefaultStyleToFeature(n,a,!0),l&&SuperMap.Util.extend(n.style,l),null!=o&&o.length>0&&(o.length>n.maxEditPts&&(o=o.slice(0,n.maxEditPts)),n.latLngs=L.Util.cloneLatLngs(o)),n};var ct=gt.extend({subObjects:[],initialize:function(t,e,o,i){this.subObjects=[],this.symbolName="组合对象",this.libID=0,this.code=SuperMap.Plot.SymbolType.GROUPOBJECT,this.symbolType=SuperMap.Plot.SymbolType.GROUPOBJECT,gt.prototype.initialize.call(this,t,e,o,i)},_addComponents:function(t){gt.prototype._addComponents.call(this,t),t.layer=this.layer,t.isEdit=!0,ft&&(t.dragging||(t.dragging=new ft(t))),null===t.fromZoom&&(t.fromZoom=this._map.getZoom()),this._map&&this._map.getPlotEditControl()&&t.enableEdit&&this._map.getPlotEditControl().enableEditFeatures(t)},_clearComponents:function(){this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().disableEditFeatures(this.components),gt.prototype._clearComponents.call(this)},_reView:function(){for(var t in this.components)this.components[t]._reView();this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},move:function(t,e){for(var o in this.subObjects)this.subObjects[o].move(t,e);this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},redraw:function(){if("none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility())this._clearComponents();else if(0!==this.subObjects.length&&0===this.components.length)for(var t=0,e=this.subObjects.length;t<e;t++)void 0!==this.subObjects[t].layer&&this.subObjects[t].layer.removeFeatures(this.subObjects[t]),this.subObjects[t].ownerGroup=this,this.subObjects[t].enableEdit=!0,this._addComponents(this.subObjects[t])},setRotate:function(t){null===this.anchorPoint&&(this.anchorPoint=this.getBounds().getCenter()),this._rotate(t,this.anchorPoint),this.dRotate=t,this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},setScale:function(t){null===this.anchorPoint&&(this.anchorPoint=this.getBounds().getCenter()),this._resize(t/this.dScale,this.anchorPoint),this.dScale=t,this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},_unGroupObject:function(){var t=null;if(0!==this.subObjects.length){t=this.subObjects.slice(),this._clearComponents();for(var e=0,o=t.length;e<o;e++)this.layer.addFeatures(t[e]),t[e].ownerGroup=null}return t},removeComponents:function(t){SuperMap.Util.isArray(t)||(t=[t]);for(var e=[],o=0;o<t.length;o++){this.subObjects.splice(SuperMap.Util.indexOf(this.subObjects,t[o]),1);var i=SuperMap.Util.indexOf(this.components,t[o]);-1!==i&&(this.components[i]._clearComponents(),this.components.splice(i,1)),e.push(t[o])}for(var l=0;l<e.length;l++)e[l].addTo(this._map),e[l].ownerGroup=null;return e},setStyle:function(t){for(var e in SuperMap.Util.extend(this.style,t),this.components)this.components[e].symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL&&(t.labelAlign=this.components[e].style.labelAlign),this.components[e].setStyle(t)},_parseSymbolData:function(){if(null!==this.symbolData&&(gt.prototype._parseSymbolData.call(this),this.symbolData&&this.symbolData.subFeatures)){for(var t=[],e=0;e<this.symbolData.subFeatures.length;e++){var o=this.symbolData.subFeatures[e];o.uuid=SuperMap.Plot.PlottingUtil.generateUuid();var i=L.supermap.plotting.PlottingObject.createSymbol(o.libID,o.code,null,{symbolData:o});t.push(i)}this.subObjects=t}},_setSymbolData:function(){if(gt.prototype._setSymbolData.call(this),this.symbolData){this.symbolData.subFeatures=[];for(var t=0;t<this.subObjects.length;t++)this.symbolData.subFeatures.push(this.subObjects[t].getSymbolData())}},_rotate:function(t,e){for(var o=0;o<this.components.length;o++)this.components[o]._rotate(t,e)},_resize:function(t,e){for(var o=0;o<this.components.length;o++)this.components[o]instanceof ct?this.components[o]._resize(t,e):0!==this.components[o].avoidRegions.length?(this.components[o]._resize(t,this.anchorPoint),this.components[o].redraw()):this.components[o]._resize(t,this.anchorPoint)},destroy:function(){gt.prototype.destroy.call(this),this.subObjects=[]}}),yt=function(t,e,o,i){return new ct(t,e,o,i)};L.supermap.plotting.groupObject=yt,L.supermap.plotting.GroupObject=ct;var Pt={mousedown:"mouseup",touchstart:"touchend",pointerdown:"touchend",MSPointerDown:"touchend"},dt={mousedown:"mousemove",touchstart:"touchmove",pointerdown:"touchmove",MSPointerDown:"touchmove"};function St(t,e){var o=t.x-e.x,i=t.y-e.y;return Math.sqrt(o*o+i*i)}var ft=L.Handler.extend({statics:{DRAGGING_CLS:"leaflet-plottingObject-draggable"},initialize:function(t){this._plottingObject=t,this._startPoint=null,this._dragStartPoint=null,this._mapDraggingWasEnabled=!1,this.moveIcon=L.divIcon({className:"leaflet-supermap-plot-move-icon-path",iconSize:[30,30]}),this.moveMarker=null},addHooks:function(){if(L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()){let t=this._plottingObject.getBounds();this.moveMarker=L.marker(t.getCenter(),{icon:this.moveIcon}),this._addToMapAndBindMarker(this.moveMarker),this._plottingObject.on("reseteditmarkersvalues",this._onResetEditMarkersValues,this)}else this._plottingObject.on("mousedown",this._onDragStart,this),this._plottingObject.options.className=this._plottingObject.options.className?this._plottingObject.options.className+" "+ft.DRAGGING_CLS:ft.DRAGGING_CLS,this._plottingObject._plottingObject&&L.DomUtil.addClass(this._plottingObject._plottingObject,ft.DRAGGING_CLS)},removeHooks:function(){L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()?(this._unbindMarkerEvents(this.moveMarker),this._plottingObject._map.removeLayer(this.moveMarker),this._plottingObject.off("reseteditmarkersvalues",this._onResetEditMarkersValues,this)):(this._plottingObject.off("mousedown",this._onDragStart,this),this._plottingObject.options.className=this._plottingObject.options.className.replace(new RegExp("\\s+"+ft.DRAGGING_CLS),""),this._plottingObject._plottingObject&&L.DomUtil.removeClass(this._plottingObject._plottingObject,ft.DRAGGING_CLS))},moved:function(){return this._plottingObject._dragMoved},_onDragStart:function(t){var e=t.originalEvent._simulated?"touchstart":t.originalEvent.type;this._mapDraggingWasEnabled=!1,this._startPoint=t.latlng.clone(),this._dragStartPoint=t.latlng.clone(),L.DomEvent.stop(t.originalEvent),L.DomEvent.on(document,dt[e],this._onDrag,this).on(document,Pt[e],this._onDragEnd,this),this._plottingObject._map.dragging.enabled()&&(this._plottingObject._map.dragging.disable(),this._mapDraggingWasEnabled=!0),this._plottingObject._dragMoved=!1},_onDrag:function(t){L.DomEvent.stop(t);var e=t.touches&&t.touches.length>=1?t.touches[0]:t,o=this._plottingObject._map.mouseEventToLatLng(e);if("touchmove"===t.type&&!this._plottingObject._dragMoved){var i=this._plottingObject._map.latLngToLayerPoint(this._dragStartPoint),l=this._plottingObject._map.mouseEventToContainerPoint(e);if(i.distanceTo(l)<=this._plottingObject._map.options.tapTolerance)return}var s=o.lat,n=o.lng,a=s-this._startPoint.lat,r=n-this._startPoint.lng;(a||r)&&(this._plottingObject._dragMoved||(this._plottingObject._dragMoved=!0,this._plottingObject.fire("dragstart",t)),this._startPoint.lat=s,this._startPoint.lng=n,this._plottingObject.fire("predrag",t),t.dLat=a,t.dLng=r,this._plottingObject.fire("drag",t))},_onDragEnd:function(t){var e=this._plottingObject._map.mouseEventToLatLng(t),o=this.moved();if(o&&L.DomEvent.stop(t),L.DomEvent.off(document,"mousemove touchmove",this._onDrag,this),L.DomEvent.off(document,"mouseup touchend",this._onDragEnd,this),o){this._plottingObject.fire("dragend",{distance:St(this._dragStartPoint,e)});var i=this._plottingObject._containsPoint;this._plottingObject._containsPoint=L.Util.falseFn,L.Util.requestAnimFrame(function(){L.DomEvent.skipped({type:"click"}),this._plottingObject._containsPoint=i},this)}this._startPoint=null,this._dragStartPoint=null,this._plottingObject._dragMoved=!1,this._mapDraggingWasEnabled&&(o&&L.DomEvent.fakeStop({type:"click"}),this._plottingObject._map.dragging.enable()),o&&(this._plottingObject.moveend=!0)},_dragStart:function(t){this._startPoint=t.target._latlng.clone(),this._dragStartPoint=t.target._latlng.clone(),this._plottingObject._dragMoved=!1},_drag:function(t){var e=t.target._latlng,o=e.lat,i=e.lng,l=o-this._startPoint.lat,s=i-this._startPoint.lng;(l||s)&&(this._plottingObject._dragMoved||(this._plottingObject._dragMoved=!0,this._plottingObject.fire("dragstart",t)),this._startPoint.lat=o,this._startPoint.lng=i,this._plottingObject.fire("predrag",t),t.dLat=l,t.dLng=s,this._plottingObject.fire("drag",t))},_dragEnd:function(t){var e=t.target._latlng,o=this.moved();if(o){this._plottingObject.fire("dragend",{distance:St(this._dragStartPoint,e)});var i=this._plottingObject._containsPoint;this._plottingObject._containsPoint=L.Util.falseFn,L.Util.requestAnimFrame(function(){L.DomEvent.skipped({type:"click"}),this._plottingObject._containsPoint=i},this)}this._startPoint=null,this._dragStartPoint=null,this._plottingObject._dragMoved=!1,o&&(this._plottingObject.moveend=!0)},_addToMapAndBindMarker:function(t){t.addTo(this._plottingObject._map),t.on("dragstart",this._dragStart,this),t.on("drag",this._drag,this),t.on("dragend",this._dragEnd,this),t.dragging.enable()},_unbindMarkerEvents:function(t){t.off("dragstart",this._dragStart,this),t.off("drag",this._drag,this),t.off("dragend",this._dragEnd,this),t.dragging.disable()},_onResetEditMarkersValues:function(){let t=this._plottingObject.getBounds();this.moveMarker._latlng=t.getCenter(),this.moveMarker.update()}}),mt=gt.extend({surroundLineType:null,scaleByMap:null,latLngs:[],initialize:function(t,e,o,i){this.geoSymbolTexts=[],this.subAssociatedUuids=[],this.latLngs=o||[],gt.prototype.initialize.call(this,t,e,o,i),null===this.surroundLineType&&(this.surroundLineType=SuperMap.Plot.AlgoSurroundLineType.NONE)},destroy:function(){gt.prototype.destroy.call(this),this.surroundLineType=null,this.scaleByMap=null,this.latLngs=[]},setLatLngs:function(t){return this.latLngs=t,this.redraw()},getLatLngs:function(){return this.latLngs},addLatLng:function(t){if(this.latLngs[this.latLngs.length-1].lat!==t.lat||this.latLngs[this.latLngs.length-1].lng!==t.lng)return this.latLngs.push(t),this.redraw()},setScaleByMap:function(t){this.scaleByMap=t},getScaleByMap:function(){return this.scaleByMap},getSurroundLineType:function(){return this.surroundLineType},setSurroundLineType:function(){},_resizeLatLngs:function(t,e,o,i){if(this.symbolType!==SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS){var l=this._resizeBounds(t,e,o);if(!(SuperMap.Plot.PlottingUtil.equalFuzzy(l.getWest(),l.getEast())&&SuperMap.Plot.PlottingUtil.equalFuzzy(l.getNorth(),l.getSouth())||SuperMap.Plot.PlottingUtil.equalFuzzy(o.getWest(),o.getEast())&&SuperMap.Plot.PlottingUtil.equalFuzzy(o.getNorth(),o.getSouth()))){var s=SuperMap.Plot.PlottingUtil.equalFuzzy(o.getWest(),o.getEast())?0:(l.getEast()-l.getWest())/(o.getEast()-o.getWest()),n=SuperMap.Plot.PlottingUtil.equalFuzzy(o.getNorth(),o.getSouth())?0:(l.getNorth()-l.getSouth())/(o.getNorth()-o.getSouth()),a=L.latLng((o.getNorth()+o.getSouth())/2,(o.getWest()+o.getEast())/2),r=L.latLng((l.getNorth()+l.getSouth())/2,(l.getWest()+l.getEast())/2);if(this.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL||this.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOLM||this.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXTBOX||this.symbolType===SuperMap.Plot.SymbolType.LINEMARKING)this.latLngs[0].lng=r.lng+(i[0].lng-a.lng)*s,this.latLngs[0].lat=r.lat+(i[0].lat-a.lat)*n,this.latLngs[1].lng=r.lng+(i[1].lng-a.lng)*s,this.latLngs[1].lat=r.lat+(i[1].lat-a.lat)*n;else if(this.symbolType===SuperMap.Plot.SymbolType.CONCENTRICCIRCLE)if(2===e||4===e||5===e||7===e){1===s&&(s=0),1===n&&(n=0);let t=Math.sqrt(s*s+n*n),e=L.Util.latLngsToSuperMapPoints(i);for(let o=1;o<e.length;o++)e[o]=SuperMap.Plot.PlottingUtil.findPointInLine(e[0],e[o],SuperMap.Plot.PlottingUtil.distance(e[0],e[o])*t);this.latLngs=L.Util.superMapPointsToLatLngs(e)}else{let t=Math.sqrt(s*s+n*n)/Math.sqrt(2),e=L.Util.latLngsToSuperMapPoints(i);for(let o=1;o<e.length;o++)e[o]=SuperMap.Plot.PlottingUtil.findPointInLine(e[0],e[o],SuperMap.Plot.PlottingUtil.distance(e[0],e[o])*t);this.latLngs=L.Util.superMapPointsToLatLngs(e)}else for(let t=0;t<i.length;t++)this.latLngs[t].lng=r.lng+(i[t].lng-a.lng)*s,this.latLngs[t].lat=r.lat+(i[t].lat-a.lat)*n}}},_getLatLng:function(t,e,o){var i=0,l=0;switch(t){case 1:i=e.getWest()+o.lng,l=e.getNorth()+o.lat;break;case 3:i=e.getEast()+o.lng,l=e.getNorth()+o.lat;break;case 6:i=e.getWest()+o.lng,l=e.getSouth()+o.lat;break;case 8:i=e.getEast()+o.lng,l=e.getSouth()+o.lat;break;case 2:i=(e.getEast()+e.getWest())/2,l=e.getNorth()+o.lat;break;case 4:i=e.getWest()+o.lng,l=(e.getNorth()+e.getSouth())/2;break;case 5:i=e.getEast()+o.lng,l=(e.getNorth()+e.getSouth())/2;break;case 7:i=(e.getEast()+e.getWest())/2,l=e.getSouth()+o.lat}return L.latLng(l,i)},_setSymbolData:function(t){if(gt.prototype._setSymbolData.call(this,t),this.symbolData){SuperMap.Plot.AnalysisSymbol.setStyle(this.style,this.symbolData,!0),this.symbolData.scaleByMap=this.scaleByMap,this.symbolData.surroundLineType=this.surroundLineType,this.symbolData.algoMaxEditPts=this.maxEditPts,this.symbolData.algoMinEditPts=this.minEditPts,this.symbolData.hasOwnProperty("localePoints")||(this.symbolData.localePoints=[]);for(var e=this.getLatLngs().length,o=0;o<e;o++)this.symbolData.localePoints.length>o?(this.symbolData.localePoints[o].x=this.getLatLngs()[o].lng,this.symbolData.localePoints[o].y=this.getLatLngs()[o].lat):this.symbolData.localePoints.push({x:this.getLatLngs()[o].lng,y:this.getLatLngs()[o].lat,z:0})}},_parseSymbolData:function(){if(gt.prototype._parseSymbolData.call(this),null!==this.symbolData&&(this.style=SuperMap.Plot.AnalysisSymbol.getStyle(this.symbolData,!0),this.maxEditPts=this.symbolData.algoMaxEditPts,this.minEditPts=this.symbolData.algoMinEditPts,void 0!==this.symbolData.isEdit&&(this.isEdit=this.symbolData.isEdit),void 0!==this.symbolData.scaleByMap&&(this.scaleByMap=this.symbolData.scaleByMap),this.surroundLineType=this.symbolData.surroundLineType,this.symbolData.localePoints)){this.latLngs=[];for(var t=0;t<this.symbolData.localePoints.length;t++)this.latLngs.push(L.latLng(this.symbolData.localePoints[t].y,this.symbolData.localePoints[t].x))}},_modifyPoint:function(){},_transSymbolCellsToLayers:function(t){var e=[],o="";null!==this._map&&this._map instanceof L.Map&&(o=this._map.options.crs.code);for(let l=0;l<t.length;l++){L.Util.isMercatorProjection(o)&&(t[l].positionPoints=L.Util.conventProjectPts(L.Util.superMapPointsToLatLngs(t[l].positionPoints)));var i={type:t[l].type,positionPoints:SuperMap.Plot.PlottingUtil.clonePoints(t[l].positionPoints),style:SuperMap.Util.cloneObject(t[l].style),angle:t[l].angle,isCalculate:t[l].isCalculate,textContent:t[l].textContent};1===this.symbolType?i.positionPoints=SuperMap.Plot.Primitives.getSpatialData(i.type,i.positionPoints,i.angle,!1):i.positionPoints=SuperMap.Plot.Primitives.getSpatialData(i.type,i.positionPoints,i.angle,i.isCalculate),e.push(i)}0!==e.length&&this._addSurroundLineCells(e);for(let t=0;t<e.length;t++)L.Util.isMercatorProjection(o)?e[t].positionPoints=L.Util.unConventProjectPts(e[t].positionPoints):e[t].positionPoints=L.Util.superMapPointsToLatLngs(e[t].positionPoints),this._createAndDrawLayer(e[t].type,e[t].positionPoints,e[t].style,e[t].textContent)},_isPolylineType:function(t){switch(t){case 24:case 44:case 48:case 290:case 400:case 590:return!0;default:return!1}},_createAndDrawLayer:function(t,e,o,i,l){var s=this._createLayer(t,e,i,l);2e3===t&&this._addComponents(s),null==o&&(o={}),this._isPolylineType(t)&&(o.fillLimit=!0,o.fill=!1);var n={};if(n=SuperMap.Util.copyAttributes(n,o),this._copyStyleForCell(n,this.style,s),34===t&&!1===o.sizeFixed){var a=this._map.latLngToLayerPoint(e[0]),r=this._map.latLngToLayerPoint(L.latLng(e[0].lat+n.fontSize,e[0].lng));n.fontSize=Math.abs(r.y-a.y)}return L.setOptions(s,n),2e3===t?s.redraw():this._addComponents(s),s},_createLayer:function(t,e,o,i){var l=null;switch(t){case 24:case 44:case 48:case 290:case 400:case 590:l=L.polyline(e,{smoothFactor:0});break;case 29:case 31:case 32:case 28:case 410:case 370:case 380:case 390:case 320:case 321:case 350:case 360:l=L.polygon(e,{smoothFactor:0});break;case 26:l=L.rectangle(e);break;case 34:l=L.supermap.plotting.text(e,{text:o});break;case 2e3:l=L.circle(e[0],i)}return l},_addSurroundLineCells:function(t){if(this.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL){if(this.symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL)return null;if(this._map)for(var e=[],o=[],i={},l={},s={},n={},a=this.surroundLineType===SuperMap.Plot.AlgoSurroundLineType.OUT?1:-1,r=0,p=t.length;r<p;r++)if((!t[r].style.lineWidthLimit||0!==t[r].style.weight)&&((i=SuperMap.Util.cloneObject(t[r].style)).surroundLineFlag=!0,i.fill=!1,i.fillLimit=!0,i.fillColorLimit=!0,!0!==t[r].style.surroundLineLimit?t[r].style.surroundLineType=this.surroundLineType:void 0===t[r].style.surroundLineType&&(t[r].style.surroundLineType=SuperMap.Plot.AlgoSurroundLineType.NONE),t[r].style.surroundLineType!==SuperMap.Plot.AlgoSurroundLineType.NONE&&t[r].type!==SuperMap.Plot.SymbolType.TEXTSYMBOL)){if(t[r].style.surroundLineType===SuperMap.Plot.AlgoSurroundLineType.INNER||t[r].style.surroundLineType===SuperMap.Plot.AlgoSurroundLineType.OUT){var u=this.style.surroundLineWidth/2+this.style.weight/2;!0===t[r].style.surroundLineLimit&&!0===t[r].style.lineWidthLimit?u=t[r].style.surroundLineWidth/2+t[r].style.weight/2:!0===t[r].style.surroundLineLimit&&!0!==t[r].style.lineWidthLimit?u=t[r].style.surroundLineWidth/2+this.style.weight/2:!0!==t[r].style.surroundLineLimit&&!0===t[r].style.lineWidthLimit&&(u=this.style.surroundLineWidth/2+t[r].style.weight/2);var h=this._map.layerPointToLatLng(L.point(0,0)),g=this._map.layerPointToLatLng(L.point(u,0)),c=new SuperMap.Geometry.Point(h.lng,h.lat),y=new SuperMap.Geometry.Point(g.lng,g.lat),P=SuperMap.Plot.PlottingUtil.distance(c,y),d=SuperMap.Plot.PlottingUtil.innerOutlineDir(t[r].positionPoints)*a*P;if(this._isPolylineType(t[r].type)||t[r].positionPoints.push(t[r].positionPoints[0]),0===(e=SuperMap.Plot.PlottingUtil.getSurroundLinePts(t[r].positionPoints,d)).length)continue;l={type:t[r].type,positionPoints:e,style:i},t.splice(++r,0,l),++p}if(t[r].style.surroundLineType===SuperMap.Plot.AlgoSurroundLineType.ALL){if(0===(e=SuperMap.Plot.PlottingUtil.clonePoints(t[r].positionPoints)).length)continue;if(l={type:t[r].type,positionPoints:e,style:i},t.splice(++r,0,l),++p,0===(o=SuperMap.Plot.PlottingUtil.clonePoints(t[r].positionPoints)).length)continue;(n=SuperMap.Util.copyAttributes(this.style)).surroundLineFlag=!1,n.fill=!1,n.fillLimit=!0,n.fillColorLimit=!0,s={type:t[r].type,positionPoints:o,style:n},t.splice(++r,0,s),++p}}}},_updateSymbolTexts:function(){for(var t=0;t<this.geoSymbolTexts.length;t++){var e=this.geoSymbolTexts[t];if(null===e||void 0===e)return;null==e.layer||null!=e.layer.getVisibility&&!0!==e.layer.getVisibility()||(e.fromZoom=this.fromZoom,e.redraw())}},_updateCanvasFills:function(){for(var t=0,e=this.components.length;t<e;t++)!1!==this.components[t].options.fillLimit&&!1!==Boolean(this.components[t].options.fillLimit)||(!0!==this.components[t].options.fill||"LINEAR"!==this.style.fillGradientMode&&"RADIAL"!==this.style.fillGradientMode?this.components[t].options.fillSymbolID>=2&&new SuperMap.Plot.CalculateCanvasGradient(this,this.components[t].getBounds()).createFillMode(this.components[t].options):this._computeGradientInCanvas(this.components[t],this.components[t].options,this.style))},_rotate:function(t,e){for(var o in this.components)this.components[o]instanceof mt?this.components[o]._rotate(t,e):(this.components[o]instanceof et&&(this.components[o].options.rotation+=-t),this.components[o]instanceof tt&&(this.components[o].options.labelRotation?(this.components[o].options.labelRotation+=-t,this.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&0===this.components[o].options.labelRotation&&(this.components[o].options.labelRotation=360)):this.components[o].options.labelRotation=-t),L.Util.rotateLatLngs(this.components[o].getLatLngs(),e,t),this.components[o].setLatLngs(this.components[o].getLatLngs()));L.Util.rotateLatLngs(this.getLatLngs(),e,t)},_move:function(t,e){if(null!=this.graphic&&null!=this.graphic.layer&&!0===this.graphic.layer.getVisibility())L.Util.moveLatLngs(this.getLatLngs(),t,e),this.graphic.update();else if(null!=this.layer&&(null==this.layer.getVisibility||!0===this.layer.getVisibility())){for(var o=0,i=this.components.length;o<i;o++)L.Util.moveLatLngs(this.components[o].getLatLngs(),t,e),this.components[o].setLatLngs(this.components[o].getLatLngs());this._renderer instanceof L.Canvas&&this._updateCanvasFills(),L.Util.moveLatLngs(this.getLatLngs(),t,e),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)}},_resize:function(t,e){for(var o in isNaN(t)&&(t=1),this.symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL&&(this.style.fontSize*=t),this.components)this.components[o]instanceof mt?this.components[o]._resize(t,e):(this.components[o]instanceof et&&(this.components[o].options.graphicWidth*=t,this.components[o].options.graphicHeight*=t),this.components[o]instanceof tt&&(this.components[o].options.fontSize*=t),L.Util.resizeLatLngs(this.components[o].getLatLngs(),e,t),this.components[o].setLatLngs(this.components[o].getLatLngs()));L.Util.resizeLatLngs(this.getLatLngs(),e,t)},_computeGradientInCanvas:function(t,e){t.getBounds().isValid()&&(e.fillColor=new SuperMap.Plot.CalculateCanvasGradient(this,t.getBounds()).createGradient())},_computeGradientInSVG:function(t){t.fillColor="url(#"+new SuperMap.Plot.CalculateSVGGradient(this).createGradient()+")"},_dashArray:function(t,e){return 1===t?[2*e,2*e].join():2===t?[0,2*e].join():3===t?[2*e,2*e,0,2*e].join():4===t?[2*e,2*e,0,2*e,0,2*e].join():null},_copyStyleForCell:function(t,e,o){if(e.display&&"none"===e.display)t.display=e.display;else{if(!0===t.surroundLineFlag)this.surroundLineType===SuperMap.Plot.AlgoSurroundLineType.ALL?t.weight=2*e.surroundLineWidth+e.weight:t.weight=e.surroundLineWidth,!0!==t.surroundLineLimit?(t.color=e.surroundLineColor,t.opacity=e.surroundLineColorOpacity,t.weight=e.surroundLineWidth):(t.color=t.surroundLineColor,t.opacity=t.surroundLineColorOpacity,t.weight=t.surroundLineWidth),t.dashArray=null;else{if(t.lineWidthLimit||(t.weight=e.weight),t.lineColorLimit||(t.color=e.color,t.opacity=e.opacity),!t.lineTypeLimit){if(void 0!==e.lineSymbolID){e.lineSymbolID=parseInt(e.lineSymbolID);let t=e.weight;e.dashArray=this._dashArray(e.lineSymbolID,t)}t.dashArray=e.dashArray,t.lineCap||void 0===e.lineCap||(t.lineCap=e.lineCap),t.lineJoin||void 0===e.lineJoin||(t.lineJoin=e.lineJoin)}if(t.lineSymbolID){let e=t.weight;t.dashArray=this._dashArray(parseInt(t.lineSymbolID),e),delete t.lineSymbolID}}if(t.fillLimit||o instanceof tt)1===t.fillSymbolID?t.fill=!1:0===t.fillSymbolID&&(t.fill=!0),t.fillColorLimit||(t.fillColor=t.strokeColor,t.fillOpacity=t.strokeOpacity);else if("LINEAR"===e.fillGradientMode||"RADIAL"===e.fillGradientMode)t.fillOpacity=1,this._map.getRenderer(this.layer)instanceof L.Canvas?this._computeGradientInCanvas(o,t):this._map.getRenderer(this.layer)instanceof L.SVG&&(t.fillOpacity=1,this._computeGradientInSVG(t));else if(this._map.getRenderer(this.layer)instanceof L.SVG){new SuperMap.Plot.CalculateSVGGradient(this).createFillMode(t)}else{new SuperMap.Plot.CalculateCanvasGradient(this,o.getBounds()).createFillMode(t)}t.fontSizeLimit&&!1!==t.fontSizeLimit||(t.fontSize=e.fontSize),t.fontColorLimit&&!1!==t.fontColorLimit||(t.fontColor=e.fontColor),void 0===t.labelAlign&&void 0!==e.labelAlign&&(t.labelAlign=e.labelAlign),void 0===t.labelRotation&&void 0!==e.labelRotation&&(t.labelRotation=e.labelRotation),!0!==t.fontSizeLimit&&!0!==t.fontColorLimit&&(void 0!==e.fontWeight&&(t.fontWeight=e.fontWeight),void 0!==e.fontStyle&&(t.fontStyle=e.fontStyle),void 0!==e.fontStroke&&(t.fontStroke=e.fontStroke),void 0!==!e.fontStrokeColor&&(t.fontStrokeColor=e.fontStrokeColor),void 0!==e.fontStrokeWidth&&(t.fontStrokeWidth=e.fontStrokeWidth),void 0!==e.fontBackground&&(t.fontBackground=e.fontBackground),void 0!==e.fontBackgroundColor&&(t.fontBackgroundColor=e.fontBackgroundColor),void 0!==e.fontShadow&&(t.fontShadow=e.fontShadow),void 0!==e.fontShadowColor&&(t.fontShadowColor=e.fontShadowColor),void 0!==e.fontShadowOffsetX&&(t.fontShadowOffsetX=e.fontShadowOffsetX),void 0!==e.fontShadowOffsetY&&(t.fontShadowOffsetY=e.fontShadowOffsetY),void 0!==e.fontSpace&&(t.fontSpace=e.fontSpace),void 0!==e.fontPercent&&(t.fontPercent=e.fontPercent),void 0!==e.fontFamily&&(t.fontFamily=e.fontFamily),void 0!==e.fontOpacity&&(t.fontOpacity=e.fontOpacity)),"none"===e.display?t.display=e.display:t.display="display",t.graphicWidth<0&&(t.graphicWidth=Math.abs(t.graphicWidth)),t.graphicHeight<0&&(t.graphicHeight=Math.abs(t.graphicHeight)),t.fontSize<0&&(t.fontSize=Math.abs(t.fontSize))}}});L.supermap.plotting.GraphicObject=mt;var Lt=mt.extend({superMapAlgoSymbol:null,scalePoints:null,scaleValues:null,polylineConnectLocationPoint:!1,islocationCircle:!1,roundBox:!1,textBoxType:null,arrowHeadType:0,arrowBodyType:0,arrowTailType:0,initialize:function(t,e,o,i){if(this.scaleByMap=!0,this.scalePoints=[],this.scaleValues=[],this.symbolType=0===t?e:SuperMap.Plot.SymbolType.ALGOSYMBOL,mt.prototype.initialize.call(this,t,e,o,i),0===this.libID&&this.symbolType===SuperMap.Plot.SymbolType.ARROWLINE)null!==this.arrowTypeStart&&void 0!==this.arrowTypeStart&&(this.scaleValues[1]=this.arrowTypeStart,delete this.arrowTypeStart),null!==this.arrowTypeEnd&&void 0!==this.arrowTypeEnd&&(this.scaleValues[2]=this.arrowTypeEnd,delete this.arrowTypeEnd);else if(0===this.libID&&this.symbolType===SuperMap.Plot.SymbolType.COMBINATIONALCIRCLE){if(null!=this.radius&&this.radius.length>0){for(let t in this.radius)this.scaleValues[t]=this.radius[t];delete this.radius}}else 0===this.libID&&this.symbolType===SuperMap.Plot.SymbolType.CONCENTRICCIRCLE?(null!==this.startAngle&&void 0!==this.startAngle&&(this.scaleValues[0]=this.startAngle,delete this.startAngle),null!==this.endAngle&&void 0!==this.endAngle&&(this.scaleValues[1]=this.endAngle,delete this.endAngle)):0===this.libID&&this.symbolType===SuperMap.Plot.SymbolType.POLYGONREGION&&(this.annotationPosition>this.getLatLngs()?this.scaleValues[1]=0:null==this.scaleValues[1]&&(this.scaleValues[1]=this.annotationPosition));SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.libID,this.code)||(this.minEditPts=SuperMap.Plot.AlgoSymbolFactory.getMinEditPts(this.libID,this.code),this.maxEditPts=SuperMap.Plot.AlgoSymbolFactory.getMaxEditPts(this.libID,this.code),0===this.subSymbols.length&&(this.subSymbols=SuperMap.Plot.AlgoSymbolFactory.getDefaultSubSymbols(this.libID,this.code)),null!==this.style&&!1===this.isEdit&&(this.style=SuperMap.Plot.PlottingUtil.copyAttributes(this.style,SuperMap.Plot.AlgoSymbolFactory.getDefaultStyle(this.libID,this.code))),this.controlPoints=L.Util.latLngsToSuperMapPoints(this.latLngs),this.superMapAlgoSymbol=SuperMap.Plot.AlgoSymbolFactory.getAlgoSymbol(this),this.scaleValues=this.superMapAlgoSymbol.scaleValues,0!==this.libID||this.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXTBOX&&this.symbolType!==SuperMap.Plot.SymbolType.LINEMARKING||(this.textBoxType=this.superMapAlgoSymbol.textBoxType),delete this.controlPoints),this._setBasicSymbolName(),!0===this._isSupportAddAnnotation()&&(this.style.sizeFixed=!1)},onAdd:function(t){this.superMapAlgoSymbol&&(this.superMapAlgoSymbol.map=t._map),mt.prototype.onAdd.call(this,t)},getTextContent:function(){return this.textContent},getArrowHeadType:function(){return this.arrowHeadType},setArrowHeadType:function(t){1016===this.code&&this.arrowHeadType!==t&&(this.arrowHeadType=t,this.redraw())},getArrowTailType:function(){return this.arrowTailType},setArrowTailType:function(t){1016===this.code&&this.arrowTailType!==t&&(this.arrowTailType=t,this.redraw())},getArrowBodyType:function(){return this.arrowBodyType},setArrowBodyType:function(t){1016===this.code&&this.arrowBodyType!==t&&(this.arrowBodyType=t,this.redraw())},setRotate:function(t){this.dRotate+=t,0!==this.textContent.length&&(void 0===this.style.labelRotation?this.style.labelRotation=-t:this.style.labelRotation+=-t),null===this.anchorPoint&&this.symbolType!==SuperMap.Plot.SymbolType.TEXTSYMBOL&&this.symbolType!==SuperMap.Plot.SymbolType.CONCENTRICCIRCLE?this.anchorPoint=this.getBounds().getCenter():null===this.anchorPoint&&(this.anchorPoint=L.latLng(this.latLngs[0].lat,this.latLngs[0].lng)),this._rotate(t,this.anchorPoint);for(var e=0,o=this.avoidRegions.length;e<o;e++)L.Util.rotateLatLngs(this.avoidRegions[e].getLatLngs(),this.anchorPoint,t)},getScaleByMap:function(){return this.scaleByMap},setScaleByMap:function(t){this.scaleByMap=t},setSurroundLineType:function(t){this.surroundLineType=t,this.redraw()},setSubSymbol:function(t,e,o){if(null!==o&&void 0!==o||(o=this.libID),e<this.subSymbols.length)this.subSymbols[e].libID=o,this.subSymbols[e].code=t;else{if(this.subSymbols.length!==e)return;this.subSymbols.push(new SuperMap.Plot.SubSymbol(o,t))}if(this.superMapAlgoSymbol){var i=new SuperMap.GetSymbolInfoParameters;i.libID=this.subSymbols[e].libID,i.code=this.subSymbols[e].code,L.supermap.symbolInfoService(this.serverUrl).getSymbolInfo(i,function(t){this.subSymbols[e].symbolData=t.result,this.redraw()},this)}else{var l=new SuperMap.GetSymbolInfoParameters;l.libID=this.libID,l.code=this.code,l.inputPoints=L.Util.latLngsToSuperMapPoints(this.getLatLngs()),l.subSymbols=this.subSymbols,L.supermap.symbolInfoService(this.serverUrl).getSymbolInfo(l,function(t){this.symbolData.innerCells=t.result.innerCells,this.redraw()},this)}},move:function(t,e){if(this.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXTBOX||this.symbolType===SuperMap.Plot.SymbolType.LINEMARKING||this.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOLM||this.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL)L.Util.moveLatLngs(this.getLatLngs()[0],t,e),L.Util.moveLatLngs(this.getLatLngs()[1],t,e),this.setLatLngs(this.getLatLngs());else{if(mt.prototype._move.call(this,t,e),0!==this.scalePoints.length&&L.Util.moveLatLngs(this.scalePoints,t,e),null!==this.symbolData&&this.symbolData.innerCells)for(var o=0;o<this.symbolData.innerCells.length;o++)for(var i=0;i<this.symbolData.innerCells[o].positionPoints.length;i++)this.symbolData.innerCells[o].positionPoints[i].x+=e,this.symbolData.innerCells[o].positionPoints[i].y+=t;if(null!==this.symbolData&&this.symbolData.innerCells)for(let o=0;o<this.symbolData.scalePoints.length;o++)this.symbolData.scalePoints[o].x+=e,this.symbolData.scalePoints[o].y+=t}for(let o=0,i=this.avoidRegions.length;o<i;o++)L.Util.moveLatLngs(this.avoidRegions[o].getLatLngs(),t,e);this._updateSymbolTexts()},_parseSymbolData:function(){if(mt.prototype._parseSymbolData.call(this),null!==this.symbolData){if(void 0!==this.symbolData.subSymbolScaleValue&&null!==this.symbolData.subSymbolScaleValue&&(this.subSymbolScaleValue=this.symbolData.subSymbolScaleValue),void 0!==this.symbolData.strokeWidth&&null!==this.symbolData.strokeWidth&&(this.strokeWidth=this.symbolData.strokeWidth),void 0!==this.symbolData.constantSize&&null!==this.symbolData.constantSize&&(this.constantSize=this.symbolData.constantSize),void 0!==this.symbolData.baseScale&&null!==this.symbolData.baseScale&&(this.baseScale=this.symbolData.baseScale),this.symbolData.scaleValues&&0!==this.symbolData.scaleValues.length){this.scaleValues=[];for(var t=0;t<this.symbolData.scaleValues.length;t++)this.scaleValues.push(this.symbolData.scaleValues[t])}this.symbolData.hasOwnProperty("arrowTailType")&&(this.arrowTailType=this.symbolData.arrowTailType),this.symbolData.hasOwnProperty("arrowBodyType")&&(this.arrowBodyType=this.symbolData.arrowBodyType),this.symbolData.hasOwnProperty("arrowHeadType")&&(this.arrowHeadType=this.symbolData.arrowHeadType)}},_setSymbolData:function(t){if(mt.prototype._setSymbolData.call(this,t),null!==this.symbolData&&this.superMapAlgoSymbol){if(this.symbolData.subSymbolScaleValue=this.subSymbolScaleValue,this.symbolData.baseScale=this.baseScale,this.symbolData.strokeWidth=this.strokeWidth,this.symbolData.constantSize=this.constantSize,null!==this.annotationPosition&&void 0!==this.annotationPosition&&(this.symbolData.annotationPosition=this.annotationPosition),this.symbolData.hasOwnProperty("scaleValues")&&null!==this.symbolData.scaleValues)for(var e=0;e<this.scaleValues.length;e++)this.symbolData.scaleValues.length>e?this.symbolData.scaleValues[e]=this.scaleValues[e]:this.symbolData.scaleValues.push(this.scaleValues[e]);else this.symbolData.scaleValues=[],this.symbolData.scaleValues=this.scaleValues;1016===this.code&&(this.symbolData.arrowTailType=this.arrowTailType,this.symbolData.arrowBodyType=this.arrowBodyType,this.symbolData.arrowHeadType=this.arrowHeadType)}},_calculateParts:function(){"none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility()||(this.textContent&&""!==this.textContent&&"???"!==this.textContent||this.symbolType!==SuperMap.Plot.SymbolType.TEXTSYMBOL||(this.textContent="请输入文本"),0!==this.textContent.length&&this.dRotate!==this.style.labelRotation&&(this.style.labelRotation=-this.dRotate),this.superMapAlgoSymbol&&0!==this.getLatLngs().length?(this.superMapCalculateParts(),this._setBasicSymbolText()):!this.superMapAlgoSymbol&&this.getLatLngs().length>=this.minEditPts&&(this._calAccessServerSymbol(),this._setBasicSymbolText()))},_calAccessServerSymbol:function(){for(var t=SuperMap.Plot.AnalysisSymbol.analysisSymbolCells(this.symbolData,!0),e=0;e<t.length;e++)t[e].type===SuperMap.Plot.SymbolType.TEXTSYMBOL&&(t[e].style.fontSize*=2);this._transSymbolCellsToLayers(t),this._analysisAlgoBasicInfo(!1),0!==this.symbolData.subSymbols.length&&this.subSymbols.length!==this.symbolData.subSymbols.length&&this._analysisAlgoBasicInfo(!0)},_analysisAlgoBasicInfo:function(t){if(this.symbolData.scaleValues&&0!==this.symbolData.scaleValues.length){this.scaleValues=[];for(let t=0;t<this.symbolData.scaleValues.length;t++)this.scaleValues.push(this.symbolData.scaleValues[t])}if(t&&this.symbolData.subSymbols){this.subSymbols=[];for(let t=0;t<this.symbolData.subSymbols.length;t++)this.subSymbols.push(new SuperMap.Plot.SubSymbol(this.symbolData.libID,this.symbolData.subSymbols[t]))}if(this.symbolData.scalePoints&&0!==this.symbolData.scalePoints.length){this.scalePoints=[];for(let t=0;t<this.symbolData.scalePoints.length;t++)this.scalePoints.push(L.latLng(this.symbolData.scalePoints[t].y,this.symbolData.scalePoints[t].x))}},_modifyPoint:function(t,e){(e=new SuperMapAlgoPlot.Point(e.lng,e.lat)).isScalePoint=!0,this._clearComponents(),this.superMapModifyPoint(t,e),this._calculateAvoidRegions()},_reView:function(){if(void 0!==this.prevStrokeWidth&&this.prevStrokeWidth!==this.style.weight&&(this.strokeWidth=this.style.weight),this.fromZoom!==this._map.getZoom()){var t=this.getBounds();if(!0===this.isEdit&&t.isValid()){var e=this._map.getZoomScale(this._map.getZoom(),this.fromZoom);if(this.dScale*=e,void 0!==this.strokeWidth&&null!==this.strokeWidth||(this.strokeWidth=this.style.weight),void 0===this.baseScale){var o=Math.abs(t.getEast()-t.getWest()),i=Math.abs(t.getNorth()-t.getSouth());o<i&&(o=i);let e=this.strokeWidth/.5*5;var l=this._map.layerPointToLatLng(L.point(0,0)),s=this._map.layerPointToLatLng(L.point(e,0)),n=Math.sqrt((l.lat-s.lat)*(l.lat-s.lat)+(l.lng-s.lng)*(l.lng-s.lng));this.baseScale=n/o}if(this.dScale<=this.baseScale){this.scaleStrokeWidth=!0;let t=this.strokeWidth/.5*5;var a=this.dScale*t/this.baseScale;this.style.weight=Math.round(a/10),this.style.weight>=this.strokeWidth&&(this.style.weight=this.strokeWidth),this.style.weight<=.5&&(this.style.weight=.5)}else!0===this.scaleStrokeWidth&&(this.style.weight=this.strokeWidth,this.scaleStrokeWidth=!1),this.strokeWidth=this.style.weight;if(this.prevStrokeWidth=this.style.weight,(34===this.symbolType||!0===this._isSupportAddAnnotation())&&!1===this.style.sizeFixed||34!==this.symbolType&&!1===this._isSupportAddAnnotation())for(var r in this.textContent.length>0&&(this.style.fontSize*=e),this.components)this.components[r]instanceof tt&&(this.components[r].options.fontSize*=e);22!==this.libID||1012!==this.code&&1013!==this.code&&1014!==this.code&&1015!==this.code||this.dScale>=1&&this.redraw(),this.layer._map.getRenderer(this.layer)instanceof L.Canvas&&this._updateCanvasFills(),this._updateSymbolTexts(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)}this.fromZoom=this._map.getZoom(),(1===this.surroundLineType||2===this.surroundLineType||SuperMap.Plot.AlgoSymbolFactory.zoomCalSymbol(this.libID,this.code))&&this.redraw(),this.symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL&&this.isSelected&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().fire(SuperMap.Plot.Event.featuresmodified,{features:[this]})}},_rotate:function(t,e){if(this.symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL)for(var o in this.components)this.components[o].options.labelRotation=this.style.labelRotation,this.components[o].redraw();if(L.Util.rotateLatLngs(this.getLatLngs(),e,t),L.Util.rotateLatLngs(this.scalePoints,e,t),this.symbolType!==SuperMap.Plot.SymbolType.CONCENTRICCIRCLE||SuperMap.Plot.PlottingUtil.equalFuzzy(Math.abs(this.scaleValues[0]-this.scaleValues[1]),360)||(this.scaleValues[0]+=t,this.scaleValues[1]+=t),SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.libID,this.code)){var i=new SuperMap.GetSymbolInfoParameters;i.libID=this.libID,i.code=this.code,i.inputPoints=L.Util.latLngsToSuperMapPoints(this.getLatLngs()),i.scaleValues=this.scaleValues,i.subSymbols=this.subSymbols,L.supermap.symbolInfoService(this.serverUrl).getSymbolInfo(i,function(t){this.symbolData.innerCells=t.result.innerCells,this.symbolData.scalePoints=t.result.scalePoints,this.symbolData.scaleValues=t.result.scaleValues,this.redraw(),this._updateSymbolTexts()},this)}else this.superMapAlgoSymbol;this.redraw(),this._updateSymbolTexts()},_resize:function(t,e){mt.prototype._resize.call(this,t,e);var o=new SuperMapAlgoPlot.Point(e.lng,e.lat);if(this.superMapAlgoSymbol){for(let e=0;e<this.superMapAlgoSymbol.controlPoints.length;e++)SuperMap.Plot.PlottingUtil.resize(o,t,this.superMapAlgoSymbol.controlPoints[e]);for(let e=0;e<this.superMapAlgoSymbol.scalePoints.length;e++)SuperMap.Plot.PlottingUtil.resize(o,t,this.superMapAlgoSymbol.scalePoints[e])}else{for(let e=0;e<this.symbolData.innerCells.length;e++)for(let l=0;l<this.symbolData.innerCells[e].positionPoints.length;l++){var i=new SuperMapAlgoPlot.Point(this.symbolData.innerCells[e].positionPoints[l].x,this.symbolData.innerCells[e].positionPoints[l].y);SuperMap.Plot.PlottingUtil.resize(o,t,i),this.symbolData.innerCells[e].positionPoints[l].x=i.x,this.symbolData.innerCells[e].positionPoints[l].y=i.y}for(let e=0;e<this.symbolData.scalePoints.length;e++){var l=new SuperMapAlgoPlot.Point(this.symbolData.scalePoints[e].x,this.symbolData.scalePoints[e].y);SuperMap.Plot.PlottingUtil.resize(o,t,l),this.symbolData.scalePoints[e].x=l.x,this.symbolData.scalePoints[e].y=l.y}}},_setBasicSymbolName:function(){if(0===this.libID)this.symbolName=SuperMap.Plot.AlgoSymbolFactory.getSymbolName(this.libID,this.code);else{var t=L.supermap.plotting.getControl(this._map,this.serverUrl).getSymbolLibManager();this.symbolName=t.getSymbolName(this.libID,this.code)}},_isSupportAddAnnotation:function(){return 0===this.libID&&this.code===SuperMap.Plot.SymbolType.CIRCLESYMBOL||this.code===SuperMap.Plot.SymbolType.RECTANGLESYMBOL||this.code===SuperMap.Plot.SymbolType.ARCSYMBOL||this.code===SuperMap.Plot.SymbolType.CHORDSYMBOL||this.code===SuperMap.Plot.SymbolType.PIESYMBOL||this.code===SuperMap.Plot.SymbolType.ELLIPSESYMBOL||this.code===SuperMap.Plot.SymbolType.PARALLELOGRAM||this.code===SuperMap.Plot.SymbolType.ARBITRARYPOLYGONSYMBOL||this.code===SuperMap.Plot.SymbolType.POLYLINESYMBOL||this.code===SuperMap.Plot.SymbolType.POLYBEZIERSYMBOL||this.code===SuperMap.Plot.SymbolType.POLYBEZIERCLOSESYMBOL||this.code===SuperMap.Plot.SymbolType.PARALLELLINE||this.code===SuperMap.Plot.SymbolType.KIDNEY||this.code===SuperMap.Plot.SymbolType.REGULARPOLYGON||this.code===SuperMap.Plot.SymbolType.RUNWAY||this.code===SuperMap.Plot.SymbolType.CURVEEIGHT||this.code===SuperMap.Plot.SymbolType.BRACESYMBOL||this.code===SuperMap.Plot.SymbolType.ARROWLINE||this.code===SuperMap.Plot.SymbolType.CONCENTRICCIRCLE||this.code===SuperMap.Plot.SymbolType.COMBINATIONALCIRCLE||this.code===SuperMap.Plot.SymbolType.FREECURVE||this.code===SuperMap.Plot.SymbolType.NODECHAIN||this.code===SuperMap.Plot.SymbolType.TRAPEZOIDSYMBOL},_setBasicSymbolText:function(){if(!1!==this.textDisplay&&!0===this._isSupportAddAnnotation()){this.textContent=SuperMap.Plot.PlottingUtil.trim(this.textContent);var t=this.getBounds();if(this.textContent&&null!==this.textContent&&0!==this.textContent.length&&null!==t&&t.isValid()){var e=L.latLng((t.getSouth()+t.getNorth())/2,(t.getEast()+t.getWest())/2),o={surroundLineFlag:!1,labelAlign:"cm"};this._createAndDrawLayer(34,[e],o,this.textContent)}}},superMapCalculateParts:function(){this.toSuperMapAlgorithms(),this.superMapAlgoSymbol.calculateParts(),this.fromSuperMapAlgorithms()},superMapModifyPoint:function(t,e){this.toSuperMapAlgorithms(),this.superMapAlgoSymbol.modifyPoint(t,e),this.fromSuperMapAlgorithms()},toSuperMapAlgorithms:function(){this.superMapAlgoSymbol.isEdit=this.isEdit,this.superMapAlgoSymbol.controlPoints=L.Util.latLngsToSuperMapPoints(this.getLatLngs()),this.superMapAlgoSymbol.subSymbols=this.subSymbols,this.superMapAlgoSymbol.scaleValues=this.scaleValues,this.superMapAlgoSymbol.scalePoints=L.Util.latLngsToSuperMapPoints(this.scalePoints),this.superMapAlgoSymbol.polylineConnectLocationPoint=this.polylineConnectLocationPoint,this.superMapAlgoSymbol.textContent=this.textContent,this.superMapAlgoSymbol.style=this.style,22===this.libID&&1016===this.code&&(this.superMapAlgoSymbol.arrowHeadType=this.arrowHeadType,this.superMapAlgoSymbol.arrowBodyType=this.arrowBodyType,this.superMapAlgoSymbol.arrowTailType=this.arrowTailType),0===this.libID&&this.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXTBOX&&(this.superMapAlgoSymbol.textBoxType=this.textBoxType,this.superMapAlgoSymbol.roundBox=this.roundBox),0===this.libID&&this.symbolType===SuperMap.Plot.SymbolType.LINEMARKING&&(this.superMapAlgoSymbol.textBoxType=this.textBoxType,this.superMapAlgoSymbol.islocationCircle=this.islocationCircle)},fromSuperMapAlgorithms:function(){this._transSymbolCellsToLayers(this.superMapAlgoSymbol.components),this.scalePoints=L.Util.superMapPointsToLatLngs(this.superMapAlgoSymbol.scalePoints),this.scaleValues=this.superMapAlgoSymbol.scaleValues,this.subSymbols.length!==this.superMapAlgoSymbol.subSymbols.length&&(this.subSymbols=this.superMapAlgoSymbol.subSymbols),(this.latLngs.length!==this.superMapAlgoSymbol.controlPoints.length||100===this.libID&&13700===this.code)&&(this.latLngs=L.Util.superMapPointsToLatLngs(this.superMapAlgoSymbol.controlPoints))},setTextBoxType:function(t){this.textBoxType!==t&&(this.textBoxType=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getTextBoxType:function(){return this.textBoxType},setRoundBox:function(t){this.roundBox!==t&&(this.roundBox=t,this.textBoxType!==SuperMap.Plot.TextBoxType.NONEBOX&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},getRoundBox:function(){return this.roundBox},setLocationCircle:function(t){this.islocationCircle!==t&&(this.islocationCircle=t,this.textBoxType!==SuperMap.Plot.TextBoxType.NONEBOX&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},getLocationCircle:function(){return this.islocationCircle},canPolylineConnectLocationPoint:function(){return SuperMap.Plot.AlgoSymbolFactory.canPolylineConnect(this.libID,this.code)},getPolylineConnectLocationPoint:function(){return this.polylineConnectLocationPoint},setPolylineConnectLocationPoint:function(t){this.polylineConnectLocationPoint!==t&&SuperMap.Plot.AlgoSymbolFactory.canPolylineConnect(this.libID,this.code)&&(this.polylineConnectLocationPoint=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getStartArrowType:function(){return this.scaleValues[1]},setStartArrowType:function(t){this.scaleValues[1]!==t&&(this.scaleValues[1]=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getEndArrowType:function(){return this.scaleValues[2]},setEndArrowType:function(t){this.scaleValues[2]!==t&&(this.scaleValues[2]=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},setFontAlign:function(t){this.style.labelAlign!==t&&(this.style.labelAlign=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getTextPosition:function(){if(this.symbolType===SuperMap.Plot.SymbolType.POLYGONREGION)return this.scaleValues[1]},setTextPosition:function(t){this.symbolType===SuperMap.Plot.SymbolType.POLYGONREGION&&this.scaleValues[1]!==t&&(this.scaleValues[1]=t,0!==this.textContent.length&&this.redraw())}}),Mt=function(t,e,o,i){return new Lt(t,e,o,i)};L.supermap.plotting.algoSymbol=Mt,L.supermap.plotting.AlgoSymbol=Lt;var bt=Lt.extend({startAssociatedUuid:null,endAssociatedUuid:null,lineRelationType:SuperMap.Plot.LineRelationType.ARROW,setLineRelationType:function(t){this.lineRelationType!==t&&(this.lineRelationType=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getLineRelationType:function(){return this.lineRelationType},initialize:function(t,e,o,i){this.libID=0,this.code=SuperMap.Plot.SymbolType.LINERELATION,this.symbolType=SuperMap.Plot.SymbolType.LINERELATION,this.symbolName="连接线",Lt.prototype.initialize.call(this,t,e,o,i)},onAdd:function(t){Lt.prototype.onAdd.call(this,t),this.setJoinLineToDotSymbol(this.startAssociatedUuid),this.setJoinLineToDotSymbol(this.endAssociatedUuid)},setStartFeature:function(t){null!==this.startAssociatedUuid&&(this.removeJoinLineFromDotSymbol(this.startAssociatedUuid),this.startAssociatedUuid=null);var e=this._map.getFeatureByUuid(t);null!=e&&e instanceof Tt&&(null!==this.endAssociatedUuid&&t===this.endAssociatedUuid||(this.startAssociatedUuid=t,this.setJoinLineToDotSymbol(this.startAssociatedUuid),null!==this.endAssociatedUuid&&this.setFeatures(this.startAssociatedUuid,this.endAssociatedUuid)))},setEndFeature:function(t){null!==this.endAssociatedUuid&&(this.removeJoinLineFromDotSymbol(this.endAssociatedUuid),this.endAssociatedUuid="");var e=this._map.getFeatureByUuid(t);null!==e&&e instanceof Tt&&(null!==this.startAssociatedUuid&&t===this.startAssociatedUuid||(this.endAssociatedUuid=t,this.setJoinLineToDotSymbol(this.endAssociatedUuid),null!==this.startAssociatedUuid&&this.setFeatures(this.startAssociatedUuid,this.endAssociatedUuid)))},setFeatures:function(t,e){var o=this._map.getFeatureByUuid(t),i=this._map.getFeatureByUuid(e);null!==o&&null!==i&&o instanceof Tt&&i instanceof Tt&&(this.startAssociatedUuid=t,this.endAssociatedUuid=e,this.setJoinLineToDotSymbol(this.startAssociatedUuid),this.setJoinLineToDotSymbol(this.endAssociatedUuid),this.redraw())},destroy:function(){this.startFeature=null,this.endFeature=null,Lt.prototype.destroy.call(this)},_calculateParts:function(){var t=null,e=this._map.getFeatureByUuid(this.startAssociatedUuid);if(null!==e){var o=L.Util.latLngsToSuperMapPoints(e.latLngs);null!==o&&0<o.length&&(t=o[0])}var i=null,l=this._map.getFeatureByUuid(this.endAssociatedUuid);if(null!==l){var s=L.Util.latLngsToSuperMapPoints(l.latLngs);null!==s&&0<s.length&&(i=s[0])}if(this.superMapAlgoSymbol.controlPoints=L.Util.latLngsToSuperMapPoints(this.latLngs),this.superMapAlgoSymbol.lineRelationType=this.lineRelationType,null!==t&&(0===this.superMapAlgoSymbol.controlPoints.length?this.superMapAlgoSymbol.controlPoints.push(t):this.superMapAlgoSymbol.controlPoints[0]=t),null!==i){if(0===this.superMapAlgoSymbol.controlPoints.length)return;1===this.superMapAlgoSymbol.controlPoints.length?this.superMapAlgoSymbol.controlPoints.push(i):this.superMapAlgoSymbol.controlPoints[this.superMapAlgoSymbol.controlPoints.length-1]=i}this.superMapAlgoSymbol.calculateParts(),this.latLngs=L.Util.superMapPointsToLatLngs(this.superMapAlgoSymbol.controlPoints),this._transSymbolCellsToLayers(this.superMapAlgoSymbol.components)},move:function(t,e){if(null!==t&&null!==e){for(var o in this.getLatLngs())this.getLatLngs()[o].lat+=t,this.getLatLngs()[o].lng+=e;for(var i=0,l=this.avoidRegions.length;i<l;i++)this.avoidRegions[i].move(t,e);this.redraw()}},_modifyPoint:function(t,e){if(0===t){var o=this.getFeatureByPoint(e);null!==o?this.setStartFeature(o.uuid):this.setStartFeature(null)}else if(this.getLatLngs().length-1===t){var i=this.getFeatureByPoint(e);null!==i?this.setEndFeature(i.uuid):this.setEndFeature(null)}this.redraw()},getFeatureByPoint:function(t){var e=this._map.latLngToLayerPoint(t),o=this.layer.features;for(var i in o){if(o[i]instanceof Tt)if(this._map.latLngToLayerPoint(o[i].getLatLngs()[0]).distanceTo(e)<5)return o[i]}return null},setJoinLineToDotSymbol:function(t){var e=this._map.getFeatureByUuid(t);if(null!=e&&e instanceof Tt){for(var o=!1,i=0;i<e.joinLines.length;i++)if(this===e.joinLines[i]){o=!0;break}o||e.joinLines.push(this)}},removeJoinLineFromDotSymbol:function(t){if(t&&"[object String]"===Object.prototype.toString.call(t)){var e=this._map.getFeatureByUuid(t);if(null!==e&&e instanceof Tt)for(var o=0,i=e.joinLines.length;o<i;o++)if(this===e.joinLines[o]){e.joinLines.splice(o,1);break}}},_parseSymbolData:function(){Lt.prototype._parseSymbolData.call(this),this.symbolData&&(this.symbolData.hasOwnProperty("startAssociatedUuid")&&(this.startAssociatedUuid=this.symbolData.startAssociatedUuid),this.symbolData.hasOwnProperty("endAssociatedUuid")&&(this.endAssociatedUuid=this.symbolData.endAssociatedUuid),this.symbolData.hasOwnProperty("lineRelationType")&&(this.lineRelationType=this.symbolData.lineRelationType))},_setSymbolData:function(){Lt.prototype._setSymbolData.call(this),this.symbolData&&(this.symbolData.endAssociatedUuid=this.endAssociatedUuid,this.symbolData.lineRelationType=this.lineRelationType,this.symbolData.startAssociatedUuid=this.startAssociatedUuid)}}),At=function(t,e,o,i){return new bt(t,e,o,i)};L.supermap.plotting.lineRelation=At,L.supermap.plotting.LineRelation=bt;var Tt=mt.extend({symbolSizeInLib:null,dRotate:0,initialScale:null,symbolSize:null,positionOffset:!1,positionOffsetType:null,positionOffsetX:null,positionOffsetY:null,symbolRank:null,negativeImage:null,middleMarkBounds:null,flagTextSize:60,maxScale:5,minScale:1,space:7,deployments:null,joinLines:null,trajectory:null,limitWidthHeight:!0,symbolTexts:null,symbolTextComponents:null,bloodVolumes:null,bloodVolumeComponents:null,pictureFrames:null,pictureFrameComponents:null,antoRotation:null,initialize:function(t,e,o,i){if(this.autoRotation=!1,this.symbolType=SuperMap.Plot.SymbolType.DOTSYMBOL,this.minEditPts=1,this.maxEditPts=1,this.joinLines=[],this.deployments=[],this.symbolTexts=[],this.bloodVolumes=[],this.pictureFrames=[],this.symbolTextComponents=[],this.bloodVolumeComponents=[],this.pictureFrameComponents=[],this.symbolSizeInLib=new SuperMap.Size(0,0),this.symbolSizeInLib=new SuperMap.Size(0,0),this.symbolSize=new SuperMap.Size(0,0),null===this.initialScale&&(this.initialScale={}),mt.prototype.initialize.call(this,t,e,o,i),null===this.positionOffsetType&&(this.positionOffsetType=SuperMap.Plot.PositionOffsetType.LINE),null===this.positionOffsetX&&(this.positionOffsetX=0),null===this.positionOffsetY&&(this.positionOffsetY=0),void 0===this.actualScale&&(this.actualScale=this.dScale),this.dScale>this.maxScale?this.dScale=this.maxScale:this.dScale<this.minScale&&(this.dScale=this.minScale),(this.symbolSize==={}||0===this.symbolSize.w&&0===this.symbolSize.h)&&(this.symbolSize.w=this.symbolSizeInLib.w,this.symbolSize.h=this.symbolSizeInLib.h),!this.initialScale.x){var l=this.symbolSizeInLib.w,s=this.symbolSize.w;this.symbolSizeInLib.w<this.symbolSizeInLib.h&&(l=this.symbolSizeInLib.h,s=this.symbolSize.h),this.initialScale.x=s/l,isNaN(this.initialScale.x)||this.initialScale.x===1/0||(!0===this.limitWidthHeight?(this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.x*this.dScale*this.symbolSizeInLib.h):(this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.y*this.dScale*this.symbolSizeInLib.h),void 0===this.fontSize&&(void 0===this.style.fontSize&&(this.style.fontSize=12),this.fontSize=this.style.fontSize/this.initialScale.x))}},destroy:function(){if(this.symbolRank=null,this.negativeImage=null,this.annotationIndex=-1,this.textPosition=null,this.symbolSizeInLib=null,this.symbolSize=null,this.middleMarkBounds=null,this.positionOffsetX=null,this.positionOffsetY=null,this.trajectory=null,null!==this.joinLines&&void 0!==this.joinLines)for(var t=0;t<this.joinLines.length;t++)null!==this.joinLines[t]&&(this.joinLines[t].startAssociatedUuid===this.uuid&&(this.joinLines[t].removeJoinLineFromDotSymbol(),this.joinLines[t].startAssociatedUuid=null),this.joinLines[t].endAssociatedUuid===this.uuid&&(this.joinLines[t].removeJoinLineFromDotSymbol(),this.joinLines[t].endAssociatedUuid=null));this.joinLines=null,this.deployments=null,mt.prototype.destroy.call(this)},_reView:function(){if(void 0!==this.prevStrokeWidth&&this.prevStrokeWidth!==this.style.weight&&(this.strokeWidth=this.style.weight,this.prevStrokeWidth=this.style.weight),void 0!==this.prevFontSize&&this.prevFontSize!==this.style.fontSize&&(this.fontSize=this.style.fontSize/this.dScale/this.initialScale.x,this.prevFontSize=this.style.fontSize),void 0!==this.prevSpace&&this.prevSpace*this.dScale!==this.space&&(this.prevSpace=this.space/this.dScale),this.fromZoom!==this._map.getZoom()){if(this.scaleByMap&&!1!==this.scaleByMap)if(void 0===this.actualScale&&(this.actualScale=this.dScale),void 0===this.prevScale&&(this.prevScale=this.dScale),this.actualScale*=this._map.getZoomScale(this._map.getZoom(),this.fromZoom),this.actualScale>this.maxScale?this.dScale=this.maxScale:this.actualScale<this.minScale?this.dScale=this.minScale:this.dScale=this.actualScale,this.dScale!==this.prevScale){var t=this.initialScale.x*this.dScale;!0===this.limitWidthHeight?(this.symbolSize.w=t*this.symbolSizeInLib.w,this.symbolSize.h=t*this.symbolSizeInLib.h):this.prevScale?(this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w/this.prevScale,this.symbolSize.h=this.initialScale.y*this.dScale*this.symbolSizeInLib.h/this.prevScale):(this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.y*this.dScale*this.symbolSizeInLib.h),void 0===this.prevSpace&&(this.prevSpace=this.space),void 0===this.strokeWidth&&(this.strokeWidth=this.style.weight);var e=this.strokeWidth/.5*5;if(this.symbolSize.w<e&&this.symbolSize.h<e){this.scaleStrokeWidth=!0;var o=this.symbolSize.w>this.symbolSize.h?this.symbolSize.w:this.symbolSize.h;this.style.weight=Math.round(o/10),this.style.weight>=this.weight&&(this.style.weight=this.weight),this.style.weight<=.5&&(this.style.weight=.5)}else!0===this.scaleStrokeWidth&&(this.scaleStrokeWidth=!1),this.style.weight=this.strokeWidth;if(this.prevStrokeWidth=this.style.weight,this.style.fontSize=this.style.fontSize*this._map.getZoomScale(this._map.getZoom(),this.fromZoom),this.prevFontSize=this.style.fontSize,0!==this.textContent.length&&8===this.annotationPosition){var i;!0===this.limitWidthHeight?i=this.middleMarkBounds.scale(this.dScale*this.initialScale.x,this.anchorPoint):this._widthHeightLimitScale();var l=96*i.getWidth()/25.4/10,s=96*i.getHeight()/25.4/10;this.components[this._annotationId].options.graphicWidth=l,this.components[this._annotationId].options.graphicHeight=s}for(var n in this.components)n===this._annotationId&&this.components[n]instanceof tt?this.components[n].options.fontSize=this.style.fontSize:n!==this._annotationId&&this.components[n]instanceof tt?this.components[n].options.fontSize=t*(this.components[n].options.fontSize/this.prevScale/this.initialScale.x):n!==this._annotationId&&!0!==this.components[n].isLeadLine&&(this.components[n].options.weight=this.style.weight);for(var a=0;a<this.geoSymbolTexts.length;a++){var r=this.geoSymbolTexts[a];null!==r&&r._calculateParts()}var p=this.dScale/this.prevScale,u=this._map.getZoomScale(this._map.getZoom(),this.fromZoom);p!==u&&this._resizeCells(p*(1/u),this.getLatLngs()[0]),this._renderer instanceof L.Canvas&&p===u&&!0===this.positionOffset&&(this._clearComponents(),this._calculateParts()),this.prevScale=this.dScale,this._calculateLabel(),this._calculateBloodVolume(),this._calculatePictureFrame()}else{let t=this._map.getZoomScale(this.fromZoom,this._map.getZoom());this._resizeCells(t,this.getLatLngs()[0])}else{for(var h=0;h<this.geoSymbolTexts.length;h++)this.geoSymbolTexts[h].fromZoom=this._map.getZoom();let t=this._map.getZoomScale(this.fromZoom,this._map.getZoom());var g=this.getLatLngs()[0];this._resizeCells(t,g)}this.fromZoom=this._map.getZoom(),this.layer._map.getRenderer(this.layer)instanceof L.Canvas&&this._updateCanvasFills(),this._updateSymbolTexts();var c="";null!==this._map&&this._map instanceof L.Map&&(c=this._map.options.crs.code,L.Util.isMercatorProjection(c)&&this.redraw()),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues),this.isSelected&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().fire(SuperMap.Plot.Event.featuresmodified,{features:[this]})}},setLatLngs:function(t){this.latLngs=t,this.redraw();for(let t=0;t<this.deployments.length;t++){var e=this.deployments[t];null!==e&&null!=e.layer&&(e.symbolType!==SuperMap.Plot.SymbolType.NAVYDEPLOYMENT&&e.symbolType!==SuperMap.Plot.SymbolType.AIRDEPLOYMENT||(e.style.display=this.style.display,e.redraw()))}this._updateJoinLines(),this._updateSymbolTexts()},getSpace:function(){return this.space},setSpace:function(t){this.space!==t&&(this.space=t,0!==this.textContent.length&&(null!=this.graphic&&null!=this.graphic.layer&&!0===this.graphic.layer.getVisibility()?this.graphic.redraw():null==this.layer||null!=this.layer.getVisibility&&!0!==this.layer.getVisibility()||this._handleAnnotation()))},setRotate:function(t){if(!isNaN(t)){var e=t-this.dRotate;this.dRotate=t;for(var o=0,i=this.avoidRegions.length;o<i;o++)L.Util.rotateLatLngs(this.avoidRegions[o].getLatLngs(),this.getLatLngs()[0],e);this.redraw(),this._updateSymbolTexts()}},getScale:function(){return!0===this.limitWidthHeight?this.initialScale.x:this.initialScale={x:this.symbolSize.w/this.symbolSizeInLib.w,y:this.symbolSize.h/this.symbolSizeInLib.h}},setScale:function(t,e){isNaN(t)||(!0===this.limitWidthHeight?(this.initialScale.x=t,this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.x*this.dScale*this.symbolSizeInLib.h):(this.symbolSize.w=t*this.symbolSizeInLib.w,this.symbolSize.h=e*this.symbolSizeInLib.h),this.style.fontSize=this.fontSize*this.dScale*this.initialScale.x,this.prevFontSize=this.style.fontSize,this.redraw(),this._updateSymbolTexts())},setPositionOffset:function(t){this.positionOffset!==t&&(this.positionOffset=t,!1===this.positionOffset&&(this.positionOffsetX=0,this.positionOffsetY=0),this.redraw())},getPositionOffset:function(){return this.positionOffset},setPositionOffsetType:function(t){this.positionOffsetType!==t&&(this.positionOffsetType=t,this.positionOffset&&this.redraw())},getPositionOffsetType:function(){return this.positionOffsetType},setTextContent:function(t){this.textContent=t,null!=this.graphic&&null!=this.graphic.layer&&!0===this.graphic.layer.getVisibility()?this.graphic.redraw():null==this.layer||null!=this.layer.getVisibility&&!0!==this.layer.getVisibility()||this._handleAnnotation()},middleMarkExist:function(){return this.symbolData.middleMarkExist},setTextPosition:function(t){8===t&&!1===this.symbolData.middleMarkExist||this.annotationPosition!==t&&(this.annotationPosition=t,null!=this.graphic&&null!=this.graphic.layer&&!0===this.graphic.layer.getVisibility()?this.graphic.redraw():null==this.layer||null!=this.layer.getVisibility&&!0!==this.layer.getVisibility()||this._handleAnnotation())},getSymbolSize:function(){return this.symbolSize},setSymbolSize:function(t,e){if(0===this.symbolSizeInLib.w||0===this.symbolSizeInLib.h)this.initialScale.x=1;else{null===this.symbolSize&&(this.symbolSize=new SuperMap.Size(0,0));var o=t/this.dScale/this.symbolSizeInLib.w,i=e/this.dScale/this.symbolSizeInLib.h;!0===this.limitWidthHeight?(this.initialScale.x!==o?this.initialScale.x=o:this.initialScale.x!==i&&(this.initialScale.x=i),this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.x*this.dScale*this.symbolSizeInLib.h):(this.initialScale.x=o,this.initialScale.y=i,this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.y*this.dScale*this.symbolSizeInLib.h)}var l;l=!1===this.limitWidthHeight?this.initialScale.x<this.initialScale.y?this.initialScale.x:this.initialScale.y:this.initialScale.x,void 0===this.fontSize?this.fontSize=this.style.fontSize/this.dScale/l:this.style.fontSize=this.fontSize*this.dScale*l,this.prevFontSize=this.style.fontSize,this._map&&this.redraw()},setSurroundLineType:function(t){if(this.surroundLineType!==t){var e=new SuperMap.GetSymbolInfoParameters;e.libID=this.libID,e.code=this.code,e.negativeImage=this.negativeImage,e.symbolRank=this.symbolRank,e.surroundLineType=t,L.supermap.symbolInfoService(this.serverUrl).getSymbolInfo(e,function(t){this.symbolData.innerCells=t.result.innerCells,this.surroundLineType=t.result.surroundLineType,this.redraw(),this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().fire(SuperMap.Plot.Event.featuresmodified,{features:[this]})},this)}},getSymbolRanks:function(){return this.symbolData.symbolRanks},getSymbolRank:function(){return this.symbolRank},setSymbolRank:function(t){if(this.symbolRank!==t){var e=new SuperMap.GetSymbolInfoParameters;e.libID=this.libID,e.code=this.code,e.symbolRank=t,e.negativeImage=this.negativeImage,e.surroundLineType=this.surroundLineType,L.supermap.symbolInfoService(this.serverUrl).getSymbolInfo(e,function(t){this.symbolData.innerCells=t.result.innerCells,this.symbolRank=t.result.symbolRank,this.redraw(),this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().fire(SuperMap.Plot.Event.featuresmodified,{features:[this]})},this)}},getNegativeImage:function(){return this.negativeImage},setNegativeImage:function(t){if(this.negativeImage!==t){var e=new SuperMap.GetSymbolInfoParameters;e.libID=this.libID,e.code=this.code,e.negativeImage=t,e.symbolRank=this.symbolRank,e.surroundLineType=this.surroundLineType,L.supermap.symbolInfoService(this.serverUrl).getSymbolInfo(e,function(t){this.symbolData.innerCells=t.result.innerCells,this.negativeImage=t.result.negativeImage,this.redraw(),this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().fire(SuperMap.Plot.Event.featuresmodified,{features:[this]})},this)}},setWidthHeightLimit:function(t){this.limitWidthHeight!==t&&(t.constructor===Boolean&&(this.limitWidthHeight=t),!1===this.limitWidthHeight?(this.initialScale.x=this.symbolSize.w/this.symbolSizeInLib.w,this.initialScale.y=this.symbolSize.h/this.symbolSizeInLib.h):!0===this.limitWidthHeight&&(this.initialScale.x=this.initialScale.x<this.initialScale.y?this.initialScale.y:this.initialScale.x,this.redraw()))},getWidthHeightLimit:function(){return this.limitWidthHeight},getBloodVolumes:function(){return this.bloodVolumes},getSymbolTexts:function(){return this.symbolTexts},getPictureFrames:function(){return this.pictureFrames},move:function(t,e){if(this.hasOwnProperty("_eventParents")&&null!==this._eventParents)for(var o in this._eventParents){var i=this._eventParents[o];if(i.symbolType===SuperMap.Plot.SymbolType.FLAGGROUP&&!1===i.isSelected)return void this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)}if(this.positionOffset){var l=this._map.latLngToLayerPoint(L.latLng(this.getLatLngs()[0].lat+t,this.getLatLngs()[0].lng+e)),s=this._map.latLngToLayerPoint(this.getLatLngs()[0]);this.positionOffsetX+=(l.x-s.x)/this.dScale,this.positionOffsetY+=(l.y-s.y)/this.dScale,this.redraw()}else mt.prototype._move.call(this,t,e);if(this._updateJoinLines(),null!==this.deployments&&0<this.deployments.length)for(let t=0;t<this.deployments.length;t++){var n=this.deployments[t];if(null!==n&&(n.symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT||n.symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT)){for(var a in n.components)n.components[a].symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL&&(n.components[a].latLngs[2]=this.latLngs[0],n.components[a].redraw());for(let t in n.subObjects)n.subObjects[t].redraw()}}for(let o=0,i=this.avoidRegions.length;o<i;o++)L.Util.moveLatLngs(this.avoidRegions[o].getLatLngs(),t,e);var r="";null!==this._map&&this._map instanceof L.Map&&(r=this._map.options.crs.code,L.Util.isMercatorProjection(r)&&this.redraw()),this._updateSymbolTexts(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},getBounds:function(){var t=new L.LatLngBounds;for(var e in this.components){var o=this.components[e];o.isLeadLine||o.isAnnotation||o.isSymbolText||o.isBloodVolume||o.isPictureFrame||t.extend(o.getBounds?o.getBounds():o.getLatLng())}return t},getBoundsWithText:function(){var t=new L.LatLngBounds;for(var e in this.components){var o=this.components[e];o.isLeadLine||t.extend(o.getBounds?o.getBounds():o.getLatLng())}return t},_calculateParts:function(){if(!(this.getLatLngs().length<this.minEditPts))if("none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility())this._updateSymbolTexts();else{var t=SuperMap.Plot.AnalysisSymbol.analysisSymbolCells(this.symbolData,!0),e=this._map.latLngToLayerPoint(this.getLatLngs()[0]);if(!0===this.positionOffset&&(e.x+=this.positionOffsetX*this.dScale,e.y+=this.positionOffsetY*this.dScale),!0===this.limitWidthHeight)var o=this.initialScale.x*this.dScale;for(var i=0,l=t.length;i<l;i++){var s=t[i];if(0!==this.surroundLineType||!0!==s.surroundLineFlag){s.type===SuperMap.Plot.SymbolType.TEXTSYMBOL&&(s.style.fontSize=o*(s.style.fontSize/10),s.style.fontSize<6&&(s.style.fontSize=6),s.style.labelRotation+=-this.dRotate),null!=s.polybezierClose&&(s.type===SuperMap.Plot.SymbolType.POLYBEZIERSYMBOL||s.type===SuperMap.Plot.SymbolType.POLYBEZIERCLOSESYMBOL?(s.type,SuperMap.Plot.SymbolType.POLYBEZIERSYMBOL,s.positionPoints=SuperMap.Plot.PlottingUtil.generateBeizerPointsWithCtrlPt(s.positionPoints),s.isClosed&&s.positionPoints[0]!==s.positionPoints[s.positionPoints.length-1]&&s.positionPoints.push(s.positionPoints[0])):s.type===SuperMap.Plot.SymbolType.KIDNEY&&(s.positionPoints=SuperMap.Plot.Primitives.getSpatialData(s.type,s.positionPoints)));for(var n=0,a=s.positionPoints.length;n<a;n++){s.positionPoints[n].x-=this.symbolData.anchorPoint.x,s.positionPoints[n].y-=this.symbolData.anchorPoint.y,!0===this.limitWidthHeight?(s.positionPoints[n].x=s.positionPoints[n].x*o,s.positionPoints[n].y=s.positionPoints[n].y*o):(s.positionPoints[n].x=s.positionPoints[n].x*this.symbolSize.w/this.symbolSizeInLib.w,s.positionPoints[n].y=s.positionPoints[n].y*this.symbolSize.h/this.symbolSizeInLib.h);var r=this.dRotate*(Math.PI/180);SuperMap.Plot.PlottingUtil.rotateAngle({x:0,y:0},r,s.positionPoints[n]),s.positionPoints[n]=this._transitionPoint(s.positionPoints[n],e)}s.positionPoints=L.Util.latLngsToSuperMapPoints(s.positionPoints)}}this._transSymbolCellsToLayers(t),this._calculateBloodVolume(),this._calculatePictureFrame(),this._generateLeadLine(),this._annotationId=-1,this.isNotRedrawText||void 0!==this.isNotRedrawText||this._handleAnnotation(),this._calculateLabel(),this._updateSymbolTexts(),this._bounds=this.getBounds()}},_calculateBloodVolume:function(t,e){for(let t=0;t<this.components.length;)!0===this.components[t].isBloodVolume?(null!=this.components[t]._renderer&&(this.components[t].removeEventParent(this),this.components[t].onRemove()),delete this.components[t],this.components.splice(t,1)):t++;if(this.bloodVolumeComponents.length=0,!(this.getLatLngs().length<this.minEditPts)&&null!=this.bloodVolumes&&0!==this.bloodVolumes.length){null==t&&(t=this.getBounds()),null==e&&(e=this.getLatLngs()[0]);for(var o=this._map.latLngToLayerPoint(e),i=0;i<this.bloodVolumes.length;i++){var l=[],s=null;if(null!=this.bloodVolumes[i].width)s=Math.abs(this._map.layerPointToLatLng(L.point(o.x+this.bloodVolumes[i].width,o.y)).lng-e.lng);else{var n=Math.abs(this._map.layerPointToLatLng(L.point(o.x+40,o.y)).lng-e.lng);(s=Math.abs(t.getEast()-t.getWest()))<n&&(s=n)}var a,r,p=null;if(null!=this.bloodVolumes[i].height)p=Math.abs(this._map.layerPointToLatLng(L.point(o.x,o.y+this.bloodVolumes[i].height)).lat-e.lat);else{p=Math.abs(this._map.layerPointToLatLng(L.point(o.x,o.y+8)).lat-e.lat)}if(this.bloodVolumes[i].position===SuperMap.Plot.Position.TOP){let e=L.latLng(t.getNorth(),t.getCenter().lng),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat+p,e.lng-.5*s),r=L.latLng(e.lat,e.lng+.5*s)}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.BOTTOM){let e=L.latLng(t.getSouth(),t.getCenter().lng),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat,e.lng-.5*s),r=L.latLng(e.lat-p,e.lng+.5*s)}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.LEFT){let e=L.latLng(t.getCenter().lat,t.getWest()),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat+.5*s,e.lng-p),r=L.latLng(e.lat-.5*s,e.lng)}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.RIGHT){let e=L.latLng(t.getCenter().lat,t.getEast()),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat+.5*s,e.lng),r=L.latLng(e.lat-.5*s,e.lng+p)}let h=this.bloodVolumes[i].style.color;null==h&&(h="#808080");let g=this.bloodVolumes[i].style.weight;null==g&&(g=4);let c=this.bloodVolumes[i].style.opacity;null==c&&(c=1);let y=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[a,r],{fillLimit:!0,fillSymbolID:1,lineWidthLimit:!0,weight:g,lineColorLimit:!0,color:h,opacity:c});y.isBloodVolume=!0,y.fromZoom=this._map.getZoom(),l.push(y);let P=this.bloodVolumes[i].style.remainingVolumeColor;null==P&&(P="#00ff00");let d=this.bloodVolumes[i].style.remainingVolumeOpacity;null==d&&(d=.8);let S=this.bloodVolumes[i].style.consumeVolumeColor;null==S&&(S="#000000");let f=this.bloodVolumes[i].style.consumeVolumeOpacity;null==f&&(f=.8);var u=this.components[this.components.length-1].getBounds();if(this.bloodVolumes[i].position===SuperMap.Plot.Position.TOP||this.bloodVolumes[i].position===SuperMap.Plot.Position.BOTTOM){if(!SuperMap.Plot.PlottingUtil.equalFuzzy(0,this.bloodVolumes[i].volume)){let t=u.getNorthWest(),e=L.latLng(u.getSouthEast().lat,t.lng+this.bloodVolumes[i].volume*s),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:P,fillOpacity:d,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}if(!SuperMap.Plot.PlottingUtil.equalFuzzy(1,this.bloodVolumes[i].volume)){let t=u.getSouthEast(),e=L.latLng(u.getNorthWest().lat,u.getNorthWest().lng+this.bloodVolumes[i].volume*s),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:S,fillOpacity:f,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.LEFT){if(!SuperMap.Plot.PlottingUtil.equalFuzzy(0,this.bloodVolumes[i].volume)){let t=u.getSouthWest(),e=L.latLng(t.lat+this.bloodVolumes[i].volume*s,u.getNorthEast().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:P,fillOpacity:d,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}if(!SuperMap.Plot.PlottingUtil.equalFuzzy(1,this.bloodVolumes[i].volume)){let t=u.getNorthEast(),e=L.latLng(u.getSouthWest().lat+this.bloodVolumes[i].volume*s,u.getSouthWest().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:S,fillOpacity:f,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.RIGHT){if(!SuperMap.Plot.PlottingUtil.equalFuzzy(0,this.bloodVolumes[i].volume)){let t=u.getNorthEast(),e=L.latLng(t.lat-this.bloodVolumes[i].volume*s,u.getSouthWest().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:P,fillOpacity:d,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}if(!SuperMap.Plot.PlottingUtil.equalFuzzy(1,this.bloodVolumes[i].volume)){let t=u.getSouthWest(),e=L.latLng(u.getNorthEast().lat-this.bloodVolumes[i].volume*s,u.getNorthEast().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:S,fillOpacity:f,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}}this.bloodVolumeComponents.push(l)}}},_calculatePictureFrame:function(t){for(let t=0;t<this.components.length;)!0===this.components[t].isPictureFrame?(null!=this.components[t]._renderer&&(this.components[t].removeEventParent(this),this.components[t].onRemove()),delete this.components[t],this.components.splice(t,1)):t++;if(this.pictureFrameComponents.length=0,!(this.getLatLngs().length<this.minEditPts)&&null!=this.pictureFrames&&0!==this.pictureFrames.length){null==t&&(t=this.getBounds());for(var e=0;e<this.pictureFrames.length;e++){var o=[];let l,s=0,n=0;if(this.pictureFrames[e].position===SuperMap.Plot.Position.TOP){let o=L.latLng(t.getNorth(),t.getCenter().lng),i=this._map.latLngToLayerPoint(o);i.x+=this.pictureFrames[e].offsetX,i.y+=this.pictureFrames[e].offsetY,l=this._map.layerPointToLatLng(i),s=-.5*this.pictureFrames[e].width,n=-this.pictureFrames[e].height}else if(this.pictureFrames[e].position===SuperMap.Plot.Position.BOTTOM){let o=L.latLng(t.getSouth(),t.getCenter().lng),i=this._map.latLngToLayerPoint(o);i.x+=this.pictureFrames[e].offsetX,i.y+=this.pictureFrames[e].offsetY,l=this._map.layerPointToLatLng(i),s=-.5*this.pictureFrames[e].width}else if(this.pictureFrames[e].position===SuperMap.Plot.Position.LEFT){let o=L.latLng(t.getCenter().lat,t.getWest()),i=this._map.latLngToLayerPoint(o);i.x+=this.pictureFrames[e].offsetX,i.y+=this.pictureFrames[e].offsetY,l=this._map.layerPointToLatLng(i),s=-this.pictureFrames[e].width,n=-.5*this.pictureFrames[e].height}else if(this.pictureFrames[e].position===SuperMap.Plot.Position.RIGHT){let o=L.latLng(t.getCenter().lat,t.getEast()),i=this._map.latLngToLayerPoint(o);i.x+=this.pictureFrames[e].offsetX,i.y+=this.pictureFrames[e].offsetY,l=this._map.layerPointToLatLng(i),n=-.5*this.pictureFrames[e].height}var i={externalGraphic:this.pictureFrames[e].path,graphicWidth:this.pictureFrames[e].width,graphicHeight:this.pictureFrames[e].height,graphicXOffset:s,graphicYOffset:n};let a=L.supermap.plotting.pointImage([l],i);a.isPictureFrame=!0,a.fromZoom=this._map.getZoom(),this._addComponents(a),o.push(a),this.pictureFrameComponents.push(o)}}},_generateLeadLine:function(){if(this.positionOffset)if(this.positionOffsetType===SuperMap.Plot.PositionOffsetType.LINE){let t=this._map.latLngToLayerPoint(this.getLatLngs()[0]),e=L.point(t.x+this.positionOffsetX*this.dScale,t.y+this.positionOffsetY*this.dScale),o=this._map.layerPointToLatLng(e),i=[this.getLatLngs()[0].clone(),o];this._createAndDrawLayer(24,i,{surroundLineFlag:!1,lineTypeLimit:!0}).isLeadLine=!0}else{let s=this._map.latLngToLayerPoint(this.getLatLngs()[0]),n=L.point(s.x+this.positionOffsetX*this.dScale,s.y+this.positionOffsetY*this.dScale),a=this._map.layerPointToLatLng(n);var t,e,o=new SuperMap.Geometry.Point(this.getLatLngs()[0].lng,this.getLatLngs()[0].lat),i=new SuperMap.Geometry.Point(a.lng,a.lat),l=180*SuperMap.Plot.PlottingUtil.radian(o,i)/Math.PI;if(l>45&&l<135||l>225&&l<315){let o=L.point(n.x-this.style.weight/2,n.y),i=L.point(n.x+this.style.weight/2,n.y);t=this._map.layerPointToLatLng(o),e=this._map.layerPointToLatLng(i)}else{let o=L.point(n.x,n.y-this.style.weight/2),i=L.point(n.x,n.y+this.style.weight/2);t=this._map.layerPointToLatLng(o),e=this._map.layerPointToLatLng(i)}let r=[this.getLatLngs()[0],t,e];this._createAndDrawLayer(32,r,{surroundLineFlag:!1,lineWidthLimit:!0,weight:0,fillLimit:!0,fill:!0}).isLeadLine=!0}},_handleAnnotation:function(t){if(null!=this._annotationId&&-1!==this._annotationId&&(null!=this.components[this._annotationId]._renderer&&(this.components[this._annotationId].removeEventParent(this),this.components[this._annotationId].onRemove()),delete this.components[this._annotationId],this.components.splice(this._annotationId,1),this._annotationId=-1),!1!==this.textDisplay&&(this.textContent=SuperMap.Plot.PlottingUtil.trim(this.textContent),null==t&&(t=this.getBounds()),t.isValid()&&this.textContent&&null!==this.textContent&&0!==this.textContent.length&&null!==t&&t.isValid())){var e={};SuperMap.Plot.PlottingUtil.cloneObject(this.style);var o=this.space*this.dScale,i=null;if(0===this.annotationPosition){e.labelAlign="rb";let l=L.latLng(t.getNorth(),t.getWest()),s=this._map.latLngToLayerPoint(l);s.x-=o,i=this._map.layerPointToLatLng(s)}else if(1===this.annotationPosition){e.labelAlign="rt";let l=L.latLng(t.getSouth(),t.getWest()),s=this._map.latLngToLayerPoint(l);s.x-=o,i=this._map.layerPointToLatLng(s)}else if(2===this.annotationPosition){e.labelAlign="lb";let l=L.latLng(t.getNorth(),t.getEast()),s=this._map.latLngToLayerPoint(l);s.x+=o,i=this._map.layerPointToLatLng(s)}else if(3===this.annotationPosition){e.labelAlign="lt";let l=L.latLng(t.getSouth(),t.getEast()),s=this._map.latLngToLayerPoint(l);s.x+=o,i=this._map.layerPointToLatLng(s)}else if(4===this.annotationPosition){e.labelAlign="cb";let l=L.latLng(t.getNorth(),(t.getWest()+t.getEast())/2),s=this._map.latLngToLayerPoint(l);s.y-=o,i=this._map.layerPointToLatLng(s)}else if(5===this.annotationPosition){e.labelAlign="ct";let l=L.latLng(t.getSouth(),(t.getWest()+t.getEast())/2),s=this._map.latLngToLayerPoint(l);s.y+=o,i=this._map.layerPointToLatLng(s)}else if(6===this.annotationPosition){e.labelAlign="rm";let l=L.latLng((t.getSouth()+t.getNorth())/2,t.getWest()),s=this._map.latLngToLayerPoint(l);s.x-=o,i=this._map.layerPointToLatLng(s)}else if(7===this.annotationPosition){e.labelAlign="lm";let l=L.latLng((t.getSouth()+t.getNorth())/2,t.getEast()),s=this._map.latLngToLayerPoint(l);s.x+=o,i=this._map.layerPointToLatLng(s)}else if(8===this.annotationPosition&&this.symbolData.middleMarkExist){var l;l=!0===this.limitWidthHeight?this.middleMarkBounds.scale(this.dScale*this.initialScale.x,this.anchorPoint):this._widthHeightLimitScale();var s=new SuperMap.Geometry.Point((l.left+l.right)/2,(l.top+l.bottom)/2);if(this.negativeImage){var n=SuperMap.Plot.PlottingUtil.projectPoint(s,new SuperMap.Geometry.Point(this.anchorPoint.x,100),new SuperMap.Geometry.Point(this.anchorPoint.x,this.anchorPoint.y));SuperMap.Plot.PlottingUtil.rotateAngle(n,Math.PI,s)}s.x-=this.anchorPoint.x,s.y-=this.anchorPoint.y;var a=this.dRotate*(Math.PI/180);SuperMap.Plot.PlottingUtil.rotateAngle(new SuperMap.Geometry.Point(0,0),a,s);var r=this._map.latLngToLayerPoint(this.getLatLngs()[0]);!0===this.positionOffset&&(r.x+=this.positionOffsetX*this.dScale,r.y+=this.positionOffsetY*this.dScale);var p=96*l.getWidth()/25.4/10,u=96*l.getHeight()/25.4/10;e.graphicWidth=p,e.graphicHeight=u,i=this._transitionPoint(s,r)}if(8===this.annotationPosition&&this.symbolData.middleMarkExist){e.rotation=-this.dRotate,e.labelAlign="cm",e.graphicOpacity=1,e.fontColor=this.style.fontColor,e.fontFamily=this.style.fontFamily,e.fontWeight=this.style.fontWeight,e.fontStyle=this.style.fontStyle,e.externalGraphic=this._getTextGraphic(this.textContent,e);var h={externalGraphic:e.externalGraphic,graphicWidth:e.graphicWidth,graphicHeight:e.graphicHeight,rotation:-this.dRotate};let t=L.supermap.plotting.pointImage([i],h);this._annotationId=this.components.length,t.fromZoom=this._map.getZoom(),this._addComponents(t)}else if(8!==this.annotationPosition){if(!1===this.limitWidthHeight)var g=this.initialScale.x<this.initialScale.y?this.initialScale.x:this.initialScale.y;null==this.prevFontSize&&(!0===this.limitWidthHeight?this.fontSize=this.style.fontSize/this.dScale/this.initialScale.x:this.fontSize=this.style.fontSize/this.dScale/g,this.prevFontSize=this.style.fontSize),void 0!==this.prevFontSize&&this.prevFontSize!==this.style.fontSize&&(!0===this.limitWidthHeight?this.fontSize=this.style.fontSize/this.dScale/this.initialScale.x:this.fontSize=this.style.fontSize/this.dScale/g,this.prevFontSize=this.style.fontSize),void 0!==this.fontSize?(!0===this.limitWidthHeight?this.style.fontSize=this.fontSize*this.dScale*this.initialScale.x:this.style.fontSize=this.fontSize*this.dScale*g,this.prevFontSize=this.style.fontSize):(!0===this.limitWidthHeight?this.fontSize=this.style.fontSize/this.dScale/this.initialScale.x:this.fontSize=this.style.fontSize/this.dScale/g,this.prevFontSize=this.style.fontSize),e.fontSize=this.style.fontSize,e.fontSizeLimit=!1,e.labelRotation=0,this._annotationId=this.components.length;let t=this._createAndDrawLayer(34,[i],e,this.textContent);t.isAnnotation=!0,t.fromZoom=this._map.getZoom()}}},_calculateLabel:function(t,e){for(let t=0;t<this.components.length;)!0===this.components[t].isSymbolText?(null!=this.components[t]._renderer&&(this.components[t].removeEventParent(this),this.components[t].onRemove()),delete this.components[t],this.components.splice(t,1)):t++;if(this.symbolTextComponents.length=0,null!=this.symbolTexts&&0!==this.symbolTexts.length){var o={surroundLineFlag:!1,lineColorLimit:!0,fillColorLimit:!0,lineWidthLimit:!0,lineTypeLimit:!0,fontColorLimit:!0,fontSizeLimit:!0,fillLimit:!0};if(null==t&&(t=this.getBounds()),t&&t.isValid()){null==e&&(e=this.latLngs[0]);for(var i=0;i<this.symbolTexts.length;i++){var l=[];if(null==this.symbolTexts[i].textContent||0===this.symbolTexts[i].textContent.length)continue;if(null!=this.symbolTexts[i].style&&"none"===this.symbolTexts[i].style.display)continue;var s=this.symbolTexts[i];this._mergeStyleToSymbolText(s),s.textPosition=null==s.textPosition?0:s.textPosition;var n=s.textContent.split("\n"),a=n.length,r=0,p=0;if(s.border){r=SuperMap.Plot.PlottingUtil.getTextWidth(s.style,n[0])+2*s.paddingX;for(var u=1;u<a;u++){var h=SuperMap.Plot.PlottingUtil.getTextWidth(s.style,n[u])+2*s.paddingX;h>r&&(r=h)}p=parseInt(s.style.fontSize*a)+2*s.paddingY}let d,S,f=L.point(0,0),m=L.point(0,0);switch(s.textPosition){case SuperMap.Plot.AnnoPosition.LEFTTOP:s.style.labelAlign="rb",d=L.latLng(t.getNorth(),t.getWest()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x-r,m.y=S.y-p);break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:s.style.labelAlign="rt",d=L.latLng(t.getSouth(),t.getWest()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x-r,m.y=S.y+p);break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:s.style.labelAlign="lb",d=L.latLng(t.getNorth(),t.getEast()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x+r,m.y=S.y-p);break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:s.style.labelAlign="lt",d=L.latLng(t.getSouth(),t.getEast()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x+r,m.y=S.y+p);break;case SuperMap.Plot.AnnoPosition.TOP:s.style.labelAlign="cb",d=L.latLng(t.getNorth(),(t.getWest()+t.getEast())/2),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x-r/2,f.y=S.y,m.x=S.x+r/2,m.y=S.y-p);break;case SuperMap.Plot.AnnoPosition.BOTTOM:s.style.labelAlign="ct",d=L.latLng(t.getSouth(),(t.getWest()+t.getEast())/2),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x-r/2,f.y=S.y,m.x=S.x+r/2,m.y=S.y+p);break;case SuperMap.Plot.AnnoPosition.LEFT:s.style.labelAlign="rm",d=L.latLng((t.getSouth()+t.getNorth())/2,t.getWest()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x-r,m.y=S.y-p/2);break;case SuperMap.Plot.AnnoPosition.RIGHT:s.style.labelAlign="lm",d=L.latLng((t.getSouth()+t.getNorth())/2,t.getEast()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x+r,m.y=S.y-p/2);break;case SuperMap.Plot.AnnoPosition.ANCHOR:s.style.labelAlign="lm",d=L.latLng(e.lat,e.lng),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,s.offsetX>0?(s.style.labelAlign="lm",!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x+r,m.y=S.y-p/2)):(s.style.labelAlign="rm",!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x-r,m.y=S.y-p/2))}var g=this._map.layerPointToLatLng(S);if(!0===s.showRelationLine&&(0!==s.offsetX||0!==s.offsetY)){let t=s.lineStyle;null==s.lineStyle&&(t=SuperMap.Util.copyAttributes(t,this.style)),t.lineColorLimit=!0,t.lineTypeLimit=!0,t.lineWidthLimit=!0;let e=this._createAndDrawLayer(SuperMap.Plot.SymbolType.POLYLINESYMBOL,[g,d],t);e.isSymbolText=!0,e.fromZoom=this._map.getZoom(),l.push(e)}var c=SuperMap.Util.copyAttributes(o,s.style);if(s.border){var y=this._map.layerPointToLatLng(f),P=this._map.layerPointToLatLng(m);let t=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[y,P],SuperMap.Util.cloneObject(c));t.isSymbolText=!0,t.fromZoom=this._map.getZoom(),l.push(t);let e=f.x<m.x?f.x:m.x,o=f.y<m.y?f.y:m.y,i=this._map.layerPointToLatLng(L.point(e+s.paddingX,o+p/2)),n=SuperMap.Util.cloneObject(c);n.labelAlign="lm";let a=this._createAndDrawLayer(SuperMap.Plot.SymbolType.TEXTSYMBOL,[i],n,s.textContent);a.isSymbolText=!0,a.fromZoom=this._map.getZoom(),l.push(a)}else{let t=this._createAndDrawLayer(SuperMap.Plot.SymbolType.TEXTSYMBOL,[g],SuperMap.Util.cloneObject(c),s.textContent);t.isSymbolText=!0,t.fromZoom=this._map.getZoom(),l.push(t)}this.symbolTextComponents.push(l)}}}},_getTextGraphic:function(t,e){var o=SuperMap.Plot.PlottingUtil.cloneObject(e);o.fontPercent=100,o.fontSpace=0,void 0!==this.flagTextSize?o.fontSize=this.flagTextSize:o.fontSize=60,o.labelAlign="cm";var i=document.createElement("canvas"),l=SuperMap.Plot.PlottingUtil.getTextWidth(o,t);i.width=l+20,i.height=parseFloat(o.fontSize)+10,document.body.appendChild(i);var s=i.getContext("2d");s.fillStyle=o.fontColor,s.globalAlpha=o.fontOpacity||1;var n=[o.fontStyle?o.fontStyle:"normal","normal",o.fontWeight?o.fontWeight:"normal",o.fontSize?new String(o.fontSize)+"px":"1em",o.fontFamily?o.fontFamily:"sans-serif"].join(" ");if(s.fillText)s.font=n,s.textAlign="center",s.textBaseline="middle",s.fillText(t,i.width/2,i.height/2);else if(s.mozDrawText){s.mozTextStyle=n;var a=-.5;L.PlotCanvas.LABEL_FACTOR[e.labelAlign[0]],null==a&&(a=-.5);var r=-.5;L.PlotCanvas.LABEL_FACTOR[e.labelAlign[1]],null==r&&(r=-.5);var p=[0,0],u=s.mozMeasureText("xx");p[1]+=u*(1+r*numRows);var h=p[0]+a*s.mozMeasureText(t),g=p[1]+u;s.translate(h,g),s.mozDrawText(t),s.translate(-h,-g)}var c=i.toDataURL("image/png","image/octet-stream");return document.body.removeChild(i),c},_transitionPoint:function(t,e){var o=e.x+t.x*(96/254),i=e.y-t.y*(96/254);return this._map.layerPointToLatLng(L.point(o,i))},_widthHeightLimitScale:function(){var t=this.initialScale.x,e=this.initialScale.y,o=this.anchorPoint.x,i=this.anchorPoint.y,l=(this.middleMarkBounds.left-o)*t+o,s=(this.middleMarkBounds.bottom-i)*e+i,n=(this.middleMarkBounds.right-o)*t+o,a=(this.middleMarkBounds.top-i)*e+i;return new SuperMap.Bounds(l,s,n,a)},_updateJoinLines:function(){if(null!==this.joinLines&&0<this.joinLines.length)for(let e=0;e<this.joinLines.length;e++){var t=this.joinLines[e];null!==t&&null!=t.layer&&(t instanceof bt&&t.redraw())}},_mergeStyleToSymbolText:function(t){if(null!==this.components)for(var e in null!==t.style&&void 0!==t.style||(t.style={}),this.style)t.style.hasOwnProperty(e)||(t.style[e]=this.style[e])},_resizeCells:function(t,e){for(var o in this.components)L.Util.resizeLatLngs(this.components[o].getLatLngs(),e,t),this.components[o].setLatLngs(this.components[o].getLatLngs());this._renderer instanceof L.Canvas&&this._updateCanvasFills()},_rotate:function(t,e){mt.prototype._rotate.call(this,t,e),this.dRotate+=t},_resize:function(t,e){mt.prototype._resize.call(this,t,e),!0===this.limitWidthHeight?(this.initialScale.x*=t,this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.x*this.dScale*this.symbolSizeInLib.h):(this.symbolSize.w=this.initialScale.x*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale.y*this.dScale*this.symbolSizeInLib.h),this.style.fontSize=this.fontSize*this.dScale*this.initialScale.x,this.prevFontSize=this.style.fontSize},_setSymbolData:function(t){if(mt.prototype._setSymbolData.call(this,t),this.symbolData){this.symbolData.hasOwnProperty("type")||(this.symbolData.type="GRAPHICOBJECT"),this.symbolData.symbolRank=this.symbolRank,this.symbolData.negativeImage=this.negativeImage,this.symbolData.space=this.space,this.symbolData.flagTextSize=this.flagTextSize,this.symbolData.maxScale=this.maxScale,this.symbolData.minScale=this.minScale,this.symbolData.textDisplay=this.textDisplay,this.symbolData.initialScale=this.initialScale,this.symbolData.actualScale=this.actualScale,void 0!==this.fontSize&&(this.symbolData.fontSize=this.fontSize),void 0!==this.strokeWidth&&(this.symbolData.strokeWidth=this.strokeWidth);var e=25.4*this.symbolSize.w*10/96,o=25.4*this.symbolSize.h*10/96;this.symbolData.symbolSize={x:e,y:o};var i=25.4*this.symbolSizeInLib.w*10/96,l=25.4*this.symbolSizeInLib.h*10/96;this.symbolData.symbolSizeInLib={x:i,y:l},this.symbolData.positionOffset=this.positionOffset,this.symbolData.positionOffsetType=this.positionOffsetType,this.symbolData.positionOffsetX=this.positionOffsetX,this.symbolData.positionOffsetY=this.positionOffsetY}},_parseBasicData:function(){if(this.symbolName=this.symbolData.symbolName,void 0!==this.symbolData.symbolSizeInLib?(this.symbolSizeInLib.w=Math.round(96*this.symbolData.symbolSizeInLib.x/25.4/10),this.symbolSizeInLib.h=Math.round(96*this.symbolData.symbolSizeInLib.y/25.4/10)):void 0!==this.symbolData.symbolSize&&(this.symbolSizeInLib.w=Math.round(96*this.symbolData.symbolSize.x/25.4/10),this.symbolSizeInLib.h=Math.round(96*this.symbolData.symbolSize.y/25.4/10)),null===this.initialScale||isNaN(this.initialScale)||this.initialScale===1/0){var t=L.supermap.plotting.getControl(this.map,this.serverUrl).getDefaultStyle();if(t&&!0===t.defaultFlag&&this.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&-1!==t.dotSymbolSize){var e=this.symbolSizeInLib.w;if(this.symbolSizeInLib.h>this.symbolSizeInLib.w&&(e=this.symbolSizeInLib.h),0===e||0===t.dotSymbolSize)this.symbolSize.w=this.symbolSizeInLib.w,this.symbolSize.h=this.symbolSizeInLib.h;else if(0!==this.symbolSize.w||0===this.symbolData.symbolSize.x||0!==this.symbolSize.h||0===this.symbolData.symbolSize.y||this.minEditPts)if(0!==this.symbolSize.w||0!==this.symbolSize.h);else{var o=t.dotSymbolSize/e;this.symbolSize.w=o*this.symbolSizeInLib.w,this.symbolSize.h=o*this.symbolSizeInLib.h}else{this.symbolSize.w=96*this.symbolData.symbolSize.x/25.4/10,this.symbolSize.h=96*this.symbolData.symbolSize.y/25.4/10;var i=this.symbolSize.w/this.dScale/this.symbolSizeInLib.w,l=this.symbolSize.h/this.dScale/this.symbolSizeInLib.h;this.initialScale!==i?this.initialScale=i:this.initialScale!==l&&(this.initialScale=l),this.symbolSize.w=this.initialScale*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale*this.dScale*this.symbolSizeInLib.h}}var s=this.symbolSizeInLib.w,n=this.symbolSize.w;this.symbolSizeInLib.w<this.symbolSizeInLib.h&&(s=this.symbolSizeInLib.h,n=this.symbolSize.h),this.initialScale=n/s,this.symbolSize.w=this.initialScale*this.dScale*this.symbolSizeInLib.w,this.symbolSize.h=this.initialScale*this.dScale*this.symbolSizeInLib.h,(void 0===this.fontSize||isNaN(this.fontSize))&&(void 0===this.style.fontSize&&(this.style.fontSize=12),this.fontSize=this.style.fontSize/this.initialScale)}this.anchorPoint=new SuperMap.Geometry.Point(this.symbolData.anchorPoint.x,this.symbolData.anchorPoint.y),this.middleMarkBounds=new SuperMap.Bounds(this.symbolData.middleMarkBounds.leftBottom.x,this.symbolData.middleMarkBounds.leftBottom.y,this.symbolData.middleMarkBounds.rightTop.x,this.symbolData.middleMarkBounds.rightTop.y),this.symbolRank=this.symbolData.symbolRank,this.negativeImage=this.symbolData.negativeImage},_parseSymbolData:function(){if(mt.prototype._parseSymbolData.call(this),null!==this.symbolData){if(void 0!==this.symbolData.symbolSizeInLib?(this.symbolSizeInLib.w=Math.round(96*this.symbolData.symbolSizeInLib.x/25.4/10),this.symbolSizeInLib.h=Math.round(96*this.symbolData.symbolSizeInLib.y/25.4/10)):this.symbolData.innerCells&&(this.symbolSizeInLib.w=Math.round(96*this.symbolData.symbolSize.x/25.4/10),this.symbolSizeInLib.h=Math.round(96*this.symbolData.symbolSize.y/25.4/10)),this.symbolRank=this.symbolData.symbolRank,this.negativeImage=this.symbolData.negativeImage,void 0!==this.symbolData.anchorPoint&&(this.anchorPoint=new SuperMap.Geometry.Point(this.symbolData.anchorPoint.x,this.symbolData.anchorPoint.y)),void 0!==this.symbolData.middleMarkBounds&&null!==this.symbolData.middleMarkBounds&&(this.middleMarkBounds=new SuperMap.Bounds(this.symbolData.middleMarkBounds.leftBottom.x,this.symbolData.middleMarkBounds.leftBottom.y,this.symbolData.middleMarkBounds.rightTop.x,this.symbolData.middleMarkBounds.rightTop.y)),void 0!==this.symbolData.actualScale&&null!==this.symbolData.actualScale&&(this.actualScale=this.symbolData.actualScale),void 0!==this.symbolData.fontSize&&null!==this.symbolData.fontSize&&(this.fontSize=this.symbolData.fontSize),void 0!==this.symbolData.strokeWidth&&void 0!==this.symbolData.strokeWidth&&(this.strokeWidth=this.symbolData.strokeWidth),void 0!==this.symbolData.space&&null!==this.symbolData.space&&(this.space=this.symbolData.space),void 0!==this.symbolData.flagTextSize&&null!==this.symbolData.flagTextSize&&(this.flagTextSize=this.symbolData.flagTextSize),void 0!==this.symbolData.maxScale&&null!==this.symbolData.maxScale&&(this.maxScale=this.symbolData.maxScale),void 0!==this.symbolData.minScale&&null!==this.symbolData.minScale&&(this.minScale=this.symbolData.minScale),void 0!==this.symbolData.textDisplay&&null!==this.symbolData.textDisplay&&(this.textDisplay=this.symbolData.textDisplay),void 0!==this.symbolData.initialScale&&null!==this.symbolData.initialScale){this.initialScale=this.symbolData.initialScale;var t=this.initialScale*this.symbolSizeInLib.w*this.dScale,e=this.initialScale*this.symbolSizeInLib.h*this.dScale;this.symbolSize=new SuperMap.Size(t,e),this.symbolSize.w=t,this.symbolSize.h=e}else if(!1!==this.isEdit){var o=96*this.symbolData.symbolSize.x/25.4/10,i=96*this.symbolData.symbolSize.y/25.4/10;this.setSymbolSize(o,i)}void 0!==this.symbolData.positionOffset&&null!==this.symbolData.positionOffset&&(this.positionOffset=this.symbolData.positionOffset),void 0!==this.symbolData.positionOffsetType&&null!==this.symbolData.positionOffsetType&&(this.positionOffsetType=this.symbolData.positionOffsetType),void 0!==this.symbolData.positionOffsetX&&null!==this.symbolData.positionOffsetX&&(this.positionOffsetX=this.symbolData.positionOffsetX),void 0!==this.symbolData.positionOffsetY&&null!==this.symbolData.positionOffsetY&&(this.positionOffsetY=this.symbolData.positionOffsetY)}}}),vt=function(t,e,o,i){return new Tt(t,e,o,i)};L.supermap.plotting.dotSymbol=vt,L.supermap.plotting.DotSymbol=Tt;var _t=mt.extend({path:null,symbolTexts:null,symbolTextComponents:null,bloodVolumes:null,bloodVolumeComponents:null,trajectory:null,antoRotation:null,getPath:function(){return this.path},setPath:function(t,e,o){this.path!==t&&(this.path=t,this.style.graphicWidth=e,this.style.graphicHeight=o,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getBloodVolumes:function(){return this.bloodVolumes},getSymbolTexts:function(){return this.symbolTexts},setScale:function(t){isNaN(t)||(this.style.graphicHeight*=t/this.dScale,this.style.graphicWidth*=t/this.dScale,this.dScale=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},setRotate:function(t){isNaN(t)||(this.dRotate+=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},initialize:function(t,e,o,i){this.code=SuperMap.Plot.SymbolType.PICTURE,this.libID=0,this.symbolType=SuperMap.Plot.SymbolType.PICTURE,this.symbolName="图片",this.minEditPts=1,this.maxEditPts=1,this.symbolTexts=[],this.bloodVolumes=[],this.symbolTextComponents=[],this.bloodVolumeComponents=[],this.autoRotation=!1,mt.prototype.initialize.call(this,t,e,o,i),null===this.path&&(this.path="../img/marker.png")},_calculateParts:function(){if(this.getLatLngs().length<this.minEditPts)return;if("none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility())return;var t={surroundLineFlag:!1};this.style.externalGraphic=t.externalGraphic=this.style.externalGraphic?this.style.externalGraphic:this.path,this.style.graphicOpacity=t.graphicOpacity=this.style.graphicOpacity?this.style.graphicOpacity:1,this.style.graphicWidth=t.graphicWidth=this.style.graphicWidth?this.style.graphicWidth:32,this.style.graphicHeight=t.graphicHeight=this.style.graphicHeight?this.style.graphicHeight:32,t.rotation=-this.dRotate,t.graphicXOffset=this.style.graphicXOffset?this.style.graphicXOffset:void 0,t.graphicYOffset=this.style.graphicYOffset?this.style.graphicYOffset:void 0;var e={externalGraphic:t.externalGraphic,graphicWidth:t.graphicWidth,graphicHeight:t.graphicHeight,rotation:-this.dRotate};let o=L.supermap.plotting.pointImage(L.Util.cloneLatLngs(this.getLatLngs()),e);this._addComponents(o),this._bounds=this.getBounds(),this._calculateLabel(),this._calculateBloodVolume()},getBounds:function(){var t=this._map.latLngToLayerPoint(this.getLatLngs()[0]),e=this.style.graphicXOffset?this.style.graphicXOffset:.5*this.style.graphicWidth,o=this.style.graphicYOffset?this.style.graphicYOffset:.5*this.style.graphicHeight,i=L.point(t.x-e,t.y-o),l=L.point(i.x+this.style.graphicWidth,i.y+this.style.graphicHeight),s=this._map.layerPointToLatLng(i),n=this._map.layerPointToLatLng(l);return L.latLngBounds(s,n)},_calculateLabel:function(t,e){for(let t=0;t<this.components.length;)!0===this.components[t].isSymbolText?(null!=this.components[t]._renderer&&(this.components[t].removeEventParent(this),this.components[t].onRemove()),delete this.components[t],this.components.splice(t,1)):t++;if(this.symbolTextComponents.length=0,null!=this.symbolTexts&&0!==this.symbolTexts.length){var o={surroundLineFlag:!1,lineColorLimit:!0,fillColorLimit:!0,lineWidthLimit:!0,lineTypeLimit:!0,fontColorLimit:!0,fontSizeLimit:!0,fillLimit:!0};if(null==t&&(t=this.getBounds()),t&&t.isValid()){null==e&&(e=this.latLngs[0]);for(var i=0;i<this.symbolTexts.length;i++){var l=[];if(null==this.symbolTexts[i].textContent||0===this.symbolTexts[i].textContent.length)continue;if(null!=this.symbolTexts[i].style&&"none"===this.symbolTexts[i].style.display)continue;var s=this.symbolTexts[i];this._mergeStyleToSymbolText(s),s.textPosition=null==s.textPosition?0:s.textPosition;var n=s.textContent.split("\n"),a=n.length,r=0,p=0;if(s.border){r=SuperMap.Plot.PlottingUtil.getTextWidth(s.style,n[0])+2*s.paddingX;for(var u=1;u<a;u++){var h=SuperMap.Plot.PlottingUtil.getTextWidth(s.style,n[u])+2*s.paddingX;h>r&&(r=h)}p=parseInt(s.style.fontSize*a)+2*s.paddingY}let d,S,f=L.point(0,0),m=L.point(0,0);switch(s.textPosition){case SuperMap.Plot.AnnoPosition.LEFTTOP:s.style.labelAlign="rb",d=L.latLng(t.getNorth(),t.getWest()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x-r,m.y=S.y-p);break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:s.style.labelAlign="rt",d=L.latLng(t.getSouth(),t.getWest()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x-r,m.y=S.y+p);break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:s.style.labelAlign="lb",d=L.latLng(t.getNorth(),t.getEast()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x+r,m.y=S.y-p);break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:s.style.labelAlign="lt",d=L.latLng(t.getSouth(),t.getEast()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y,m.x=S.x+r,m.y=S.y+p);break;case SuperMap.Plot.AnnoPosition.TOP:s.style.labelAlign="cb",d=L.latLng(t.getNorth(),(t.getWest()+t.getEast())/2),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x-r/2,f.y=S.y,m.x=S.x+r/2,m.y=S.y-p);break;case SuperMap.Plot.AnnoPosition.BOTTOM:s.style.labelAlign="ct",d=L.latLng(t.getSouth(),(t.getWest()+t.getEast())/2),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x-r/2,f.y=S.y,m.x=S.x+r/2,m.y=S.y+p);break;case SuperMap.Plot.AnnoPosition.LEFT:s.style.labelAlign="rm",d=L.latLng((t.getSouth()+t.getNorth())/2,t.getWest()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x-r,m.y=S.y-p/2);break;case SuperMap.Plot.AnnoPosition.RIGHT:s.style.labelAlign="lm",d=L.latLng((t.getSouth()+t.getNorth())/2,t.getEast()),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x+r,m.y=S.y-p/2);break;case SuperMap.Plot.AnnoPosition.ANCHOR:s.style.labelAlign="lm",d=L.latLng(e.lat,e.lng),(S=this._map.latLngToLayerPoint(d)).x+=s.offsetX,S.y+=s.offsetY,s.offsetX>0?(s.style.labelAlign="lm",!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x+r,m.y=S.y-p/2)):(s.style.labelAlign="rm",!0===s.border&&(f.x=S.x,f.y=S.y+p/2,m.x=S.x-r,m.y=S.y-p/2))}var g=this._map.layerPointToLatLng(S);if(!0===s.showRelationLine&&(0!==s.offsetX||0!==s.offsetY)){let t=s.lineStyle;null==s.lineStyle&&(t=SuperMap.Util.copyAttributes(t,this.style)),t.lineColorLimit=!0,t.lineTypeLimit=!0,t.lineWidthLimit=!0;let e=this._createAndDrawLayer(SuperMap.Plot.SymbolType.POLYLINESYMBOL,[g,d],t);e.isSymbolText=!0,e.fromZoom=this._map.getZoom(),l.push(e)}var c=SuperMap.Util.copyAttributes(o,s.style);if(s.border){var y=this._map.layerPointToLatLng(f),P=this._map.layerPointToLatLng(m);let t=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[y,P],SuperMap.Util.cloneObject(c));t.isSymbolText=!0,t.fromZoom=this._map.getZoom(),l.push(t);let e=f.x<m.x?f.x:m.x,o=f.y<m.y?f.y:m.y,i=this._map.layerPointToLatLng(L.point(e+s.paddingX,o+p/2)),n=SuperMap.Util.cloneObject(c);n.labelAlign="lm";let a=this._createAndDrawLayer(SuperMap.Plot.SymbolType.TEXTSYMBOL,[i],n,s.textContent);a.isSymbolText=!0,a.fromZoom=this._map.getZoom(),l.push(a)}else{let t=this._createAndDrawLayer(SuperMap.Plot.SymbolType.TEXTSYMBOL,[g],SuperMap.Util.cloneObject(c),s.textContent);t.isSymbolText=!0,t.fromZoom=this._map.getZoom(),l.push(t)}this.symbolTextComponents.push(l)}}}},_calculateBloodVolume:function(t,e){for(let t=0;t<this.components.length;)!0===this.components[t].isBloodVolume?(null!=this.components[t]._renderer&&(this.components[t].removeEventParent(this),this.components[t].onRemove()),delete this.components[t],this.components.splice(t,1)):t++;if(this.bloodVolumeComponents.length=0,!(this.getLatLngs().length<this.minEditPts)&&null!=this.bloodVolumes&&0!==this.bloodVolumes.length){null==t&&(t=this.getBounds()),null==e&&(e=this.getLatLngs()[0]);for(var o=this._map.latLngToLayerPoint(e),i=0;i<this.bloodVolumes.length;i++){var l=[],s=null;if(null!=this.bloodVolumes[i].width)s=Math.abs(this._map.layerPointToLatLng(L.point(o.x+this.bloodVolumes[i].width,o.y)).lng-e.lng);else{var n=Math.abs(this._map.layerPointToLatLng(L.point(o.x+40,o.y)).lng-e.lng);(s=Math.abs(t.getEast()-t.getWest()))<n&&(s=n)}var a,r,p=null;if(null!=this.bloodVolumes[i].height)p=Math.abs(this._map.layerPointToLatLng(L.point(o.x,o.y+this.bloodVolumes[i].height)).lat-e.lat);else{p=Math.abs(this._map.layerPointToLatLng(L.point(o.x,o.y+8)).lat-e.lat)}if(this.bloodVolumes[i].position===SuperMap.Plot.Position.TOP){let e=L.latLng(t.getNorth(),t.getCenter().lng),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat+p,e.lng-.5*s),r=L.latLng(e.lat,e.lng+.5*s)}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.BOTTOM){let e=L.latLng(t.getSouth(),t.getCenter().lng),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat,e.lng-.5*s),r=L.latLng(e.lat-p,e.lng+.5*s)}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.LEFT){let e=L.latLng(t.getCenter().lat,t.getWest()),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat+.5*s,e.lng-p),r=L.latLng(e.lat-.5*s,e.lng)}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.RIGHT){let e=L.latLng(t.getCenter().lat,t.getEast()),o=this._map.latLngToLayerPoint(e);o.x+=this.bloodVolumes[i].offsetX,o.y+=this.bloodVolumes[i].offsetY,e=this._map.layerPointToLatLng(o),a=L.latLng(e.lat+.5*s,e.lng),r=L.latLng(e.lat-.5*s,e.lng+p)}let h=this.bloodVolumes[i].style.color;null==h&&(h="#808080");let g=this.bloodVolumes[i].style.weight;null==g&&(g=4);let c=this.bloodVolumes[i].style.opacity;null==c&&(c=1);let y=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[a,r],{fillLimit:!0,fillSymbolID:1,lineWidthLimit:!0,weight:g,lineColorLimit:!0,color:h,opacity:c});y.isBloodVolume=!0,y.fromZoom=this._map.getZoom(),l.push(y);let P=this.bloodVolumes[i].style.remainingVolumeColor;null==P&&(P="#00ff00");let d=this.bloodVolumes[i].style.remainingVolumeOpacity;null==d&&(d=.8);let S=this.bloodVolumes[i].style.consumeVolumeColor;null==S&&(S="#000000");let f=this.bloodVolumes[i].style.consumeVolumeOpacity;null==f&&(f=.8);var u=this.components[this.components.length-1].getBounds();if(this.bloodVolumes[i].position===SuperMap.Plot.Position.TOP||this.bloodVolumes[i].position===SuperMap.Plot.Position.BOTTOM){if(!SuperMap.Plot.PlottingUtil.equalFuzzy(0,this.bloodVolumes[i].volume)){let t=u.getNorthWest(),e=L.latLng(u.getSouthEast().lat,t.lng+this.bloodVolumes[i].volume*s),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:P,fillOpacity:d,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}if(!SuperMap.Plot.PlottingUtil.equalFuzzy(1,this.bloodVolumes[i].volume)){let t=u.getSouthEast(),e=L.latLng(u.getNorthWest().lat,u.getNorthWest().lng+this.bloodVolumes[i].volume*s),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:S,fillOpacity:f,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.LEFT){if(!SuperMap.Plot.PlottingUtil.equalFuzzy(0,this.bloodVolumes[i].volume)){let t=u.getSouthWest(),e=L.latLng(t.lat+this.bloodVolumes[i].volume*s,u.getNorthEast().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:P,fillOpacity:d,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}if(!SuperMap.Plot.PlottingUtil.equalFuzzy(1,this.bloodVolumes[i].volume)){let t=u.getNorthEast(),e=L.latLng(u.getSouthWest().lat+this.bloodVolumes[i].volume*s,u.getSouthWest().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:S,fillOpacity:f,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}}else if(this.bloodVolumes[i].position===SuperMap.Plot.Position.RIGHT){if(!SuperMap.Plot.PlottingUtil.equalFuzzy(0,this.bloodVolumes[i].volume)){let t=u.getNorthEast(),e=L.latLng(t.lat-this.bloodVolumes[i].volume*s,u.getSouthWest().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:P,fillOpacity:d,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}if(!SuperMap.Plot.PlottingUtil.equalFuzzy(1,this.bloodVolumes[i].volume)){let t=u.getSouthWest(),e=L.latLng(u.getNorthEast().lat-this.bloodVolumes[i].volume*s,u.getNorthEast().lng),o=this._createAndDrawLayer(SuperMap.Plot.SymbolType.RECTANGLESYMBOL,[t,e],{fillLimit:!0,fillSymbolID:0,fillColorLimit:!0,fillColor:S,fillOpacity:f,lineColorLimit:!0,opacity:0});o.isBloodVolume=!0,o.fromZoom=this._map.getZoom(),l.push(o)}}this.bloodVolumeComponents.push(l)}}},move:function(t,e){mt.prototype._move.call(this,t,e)},_mergeStyleToSymbolText:function(t){if(null!==this.components)for(var e in null!==t.style&&void 0!==t.style||(t.style={}),this.style)t.style.hasOwnProperty(e)||(t.style[e]=this.style[e])},_reView:function(){this.fromZoom!==this._map.getZoom()&&(this._calculateLabel(),this._calculateBloodVolume(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)),this.fromZoom=this._map.getZoom()}});L.supermap.plotting.picture=function(t,e,o,i){return new _t(t,e,o,i)},L.supermap.plotting.Picture=_t;var xt=Lt.extend({centerPoint:null,radius:null,startAngle:null,endAngle:null,textPosition:null,radiusText:null,radiusPosAngle:null,radiusLineType:null,subSymbolDefaultPixelSize:15,getCirclePts:function(){return this.getArcPts(this.startAngle,this.endAngle)},setLatLngs:function(t){return this.latLngs=t,2===this.latLngs.length&&(this.centerPoint=this.latLngs[0],this.radius=SuperMap.Plot.PlottingUtil.distVincenty(this.latLngs[0],this.latLngs[1])),3===this.latLngs.length&&(this.startAngle=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(this.latLngs[1].lng,this.latLngs[1].lat))/Math.PI,this.endAngle=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(this.latLngs[2].lng,this.latLngs[2].lat))/Math.PI),this.redraw()},setRadius:function(t){this.radius!==t&&(this.radius=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getRadius:function(){return this.radius},setStartAngle:function(t){this.startAngle!==t&&(this.startAngle=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getStartAngle:function(){return this.startAngle},setEndAngle:function(t){this.endAngle!==t&&(this.endAngle=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getEndAngle:function(){return this.endAngle},setTextPosition:function(t){this.textPosition!==t&&(this.textPosition=t,0!==this.textContent.length&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},setRadiusText:function(t,e){e>1&&(e=1),e<0&&(e=0),this.radiusText[e]!==t&&(this.radiusText[e]=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getRadiusText:function(t){return t>1&&(t=1),t<0&&(t=0),this.radiusText[t]},setRadiusTextPos:function(t){this.radiusPosAngle!==t&&(this.radiusPosAngle=t,0!==this.radiusText.length&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},getRadiusTextPos:function(){return this.radiusPosAngle},setRadiusLineType:function(t){this.radiusLineType!==t&&(this.radiusLineType=t,0!==this.radiusText.length&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},getRadiusLineType:function(){return this.radiusLineType},initialize:function(t,e,o,i){this.scalePoints=[],this.scaleValues=[],mt.prototype.initialize.call(this,t,e,o,i),this.libID=0,this.code=SuperMap.Plot.SymbolType.ARCREGION,this.symbolType=SuperMap.Plot.SymbolType.ARCREGION,this.symbolName="扇形区域",this.minEditPts=2,this.maxEditPts=3,null===this.circlePts&&(this.circlePts=[]),null===this.textPosition&&(this.textPosition=(this.startAngle+this.endAngle)/2),null===this.radiusText&&(this.radiusText=[]),null===this.radiusPosAngle&&(this.radiusPosAngle=(this.startAngle+this.endAngle)/2),null===this.radiusLineType&&(this.radiusLineType=SuperMap.Plot.RadiusLineType.NONE),void 0!==i.constantSize&&null!==i.constantSize||!1!==this.isEdit||(this.constantSize=!0),this.subSymbolDefaultPixelSize=15,0===this.scaleValues.length&&this.scaleValues.push(.1)},destroy:function(){this.centerPoint=null,this.radius=null,this.startAngle=null,this.endAngle=null,this.textPosition=null,this.radiusText=null,this.radiusPosAngle=null,this.radiusLineType=null,Lt.prototype.destroy.call(this)},_calculateParts:function(){if(this.scalePoints=[],this.isEdit?1===this.latLngs.length&&this.centerPoint!==this.latLngs[0]&&(this.centerPoint=this.latLngs[0]):(2===this.latLngs.length&&(this.centerPoint=this.latLngs[0],this.radius=SuperMap.Plot.PlottingUtil.distVincenty(this.latLngs[0],this.latLngs[1])),3===this.latLngs.length&&(this.startAngle=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(this.latLngs[1].lng,this.latLngs[1].lat))/Math.PI,this.endAngle=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(this.latLngs[2].lng,this.latLngs[2].lat))/Math.PI)),this.centerPoint&&null!==this.centerPoint&&this.radius&&null!==this.radius){this.startAngle%=360,this.endAngle%=360,this.startAngle>this.endAngle&&(this.endAngle+=360);var t=SuperMap.Plot.PlottingUtil.equalFuzzy(this.startAngle,this.endAngle);t&&(this.startAngle=0,this.endAngle=360);var e=this.getArcPts(this.startAngle,this.endAngle);if(!t){var o=(e=this.getArcPts(this.startAngle,this.endAngle))[0].clone();o.isScalePoint=!0,o.tag=0;var i=e[e.length-1].clone();i.isScalePoint=!0,i.tag=1,this.scalePoints.push(o),this.scalePoints.push(i),e.push(this.centerPoint.clone()),this.latLngs.length>2&&this.latLngs.splice(1,this.latLngs.length-1)}this._createAndDrawLayer(SuperMap.Plot.SymbolType.ARBITRARYPOLYGONSYMBOL,e,{surroundLineFlag:!1}),0===this.latLngs.length&&this.latLngs.push(this.centerPoint.clone()),1===this.latLngs.length&&t&&this.latLngs.push(e[Math.ceil(e.length/2)].clone()),this._textGeometry(),this._radiusGeometry()}},_textGeometry:function(){if(0!==this.textContent.length){var t=90,e=!1;this.textPosition%=360,this.endAngle>this.startAngle&&(this.textPosition<this.endAngle&&this.textPosition>this.startAngle?(this.endAngle-this.textPosition<t&&(t=this.endAngle-this.textPosition),this.textPosition-this.startAngle<t&&(t=this.textPosition-this.startAngle)):this.textPosition+360<this.endAngle&&this.textPosition+360>this.startAngle?(this.textPosition+=360,this.endAngle-this.textPosition<t&&(t=this.endAngle-this.textPosition),this.textPosition-this.startAngle<t&&(t=this.textPosition-this.startAngle)):e=!0),this.startAngle>this.endAngle&&(this.textPosition>this.startAngle||this.textPosition<this.endAngle?e=!0:(this.startAngle-this.textPosition<t&&(t=this.startAngle-this.textPosition),this.textPosition-this.endAngle<t&&(t=this.textPosition-this.endAngle))),2*t<4&&(e=!0);var o=null;if(!0===e){var i=this.getBounds().getCenter();this._createAndDrawLayer(34,[i],{surroundLineFlag:!1,labelAlign:"cm"},this.textContent),o=i.clone()}else{var l=this.textPosition+t,s=this.textPosition-t,n=this.getArcPts(s,l),a=SuperMap.Plot.RelLineText.ONLEFTLINE;SuperMap.Plot.PlottingUtil.isPloyClockwise(n)&&(a=SuperMap.Plot.RelLineText.ONRIGHTLINE);for(var r=SuperMap.Plot.PlottingUtil.clonePoints(n),p=[],u=r.length-1;u>=0;u--)p.push(r[u]);this._addComponents(L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.PATHTEXT,p,{textContent:this.textContent,showPathLine:!1,isCurve:!1,relLineText:a},this.style)),o=n[Math.ceil(n.length/2)].clone()}o.isScalePoint=!0,o.tag=2,this.scalePoints.push(o)}},_radiusGeometry:function(){if(0!==this.radiusText.length){this.radiusPosAngle%=360;var t=SuperMap.Plot.PlottingUtil.destinationVincenty(this.centerPoint,360-this.radiusPosAngle+90,1e3*this.radius),e=new SuperMap.Geometry.Point(t.lng,t.lat),o=new SuperMap.Geometry.Point(this.centerPoint.lng,this.centerPoint.lat),i=SuperMap.Plot.PlottingUtil.distance(o,e),l=[];if(l.push(this.centerPoint),l.push(L.latLng(e.y,e.x)),SuperMap.Plot.RadiusLineType.NONE!==this.radiusLineType&&this._createAndDrawLayer(SuperMap.Plot.SymbolType.POLYLINESYMBOL,l,{surroundLineFlag:!1}),this.radiusLineType===SuperMap.Plot.RadiusLineType.ARROW){var s;if(null===this.map)s=0;else{var n=this._map.layerPointToLatLng(L.point(0,0)),a=this._map.layerPointToLatLng(L.point(this.subSymbolDefaultPixelSize,0));s=SuperMap.Plot.PlottingUtil.distance(new SuperMap.Geometry.Point(n.lng,n.lat),new SuperMap.Geometry.Point(a.lng,a.lat))}var r=SuperMap.Plot.PlottingUtil.findPoint(e,o,s,12.5),p=SuperMap.Plot.PlottingUtil.findPoint(e,o,s,-12.5),u=[];u.push(L.latLng(e.y,e.x)),u.push(L.latLng(r.y,r.x)),u.push(L.latLng(p.y,p.x)),this._createAndDrawLayer(SuperMap.Plot.SymbolType.ARBITRARYPOLYGONSYMBOL,u,{surroundLineFlag:!1,fill:!0,fillLimit:!0,lineTypeLimit:!0})}if(SuperMap.Util.isArray(this.radiusText)||(this.radiusText=[this.radiusText]),this.radiusText.length>=1){var h=SuperMap.Plot.PlottingUtil.findPoint(o,e,.2*i,0),g=SuperMap.Plot.PlottingUtil.findPoint(o,e,.8*i,0),c=SuperMap.Plot.PlottingUtil.findPoint(h,e,.02*i,90),y=SuperMap.Plot.PlottingUtil.findPoint(g,e,.02*i,90),P=L.latLng(c.y,c.x),d=L.latLng(y.y,y.x);let t=SuperMap.Plot.RelLineText.ONLEFTLINE;var S=[];c.x<y.x?(S.push(P),S.push(d)):(S.push(d),S.push(P),t=SuperMap.Plot.RelLineText.ONRIGHTLINE),this._addComponents(L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.PATHTEXT,S,{textContent:this.radiusText[0],showPathLine:!1,relLineText:t},this.style))}if(2===this.radiusText.length){let t=SuperMap.Plot.RelLineText.ONRIGHTLINE;var f=SuperMap.Plot.PlottingUtil.findPoint(h,e,.02*i,270),m=SuperMap.Plot.PlottingUtil.findPoint(g,e,.02*i,270),M=L.latLng(f.y,f.x),b=L.latLng(m.y,m.x),A=[];f.x<m.x?(A.push(M),A.push(b)):(A.push(b),A.push(M),t=SuperMap.Plot.RelLineText.ONLEFTLINE),this._addComponents(L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.PATHTEXT,A,{textContent:this.radiusText[1],showPathLine:!1,relLineText:t},this.style))}var T=L.latLng(e.y,e.x);T.isScalePoint=!0,T.tag=3,this.scalePoints.push(T)}},_parseSymbolData:function(){Lt.prototype._parseSymbolData.call(this),this.symbolData&&(this.centerPoint=L.latLng(this.symbolData.centerPoint.y,this.symbolData.centerPoint.x),this.endAngle=this.symbolData.endAngle,this.radius=this.symbolData.radius,this.radiusPosAngle=this.symbolData.radiusPosAngle,this.startAngle=this.symbolData.startAngle,this.textPosition=this.symbolData.textPosition,this.radiusLineType=this.symbolData.radiusLineType,this.radiusText=this.symbolData.radiusText)},_setSymbolData:function(){this.latLngs=[],Lt.prototype._setSymbolData.call(this),this.symbolData&&(this.symbolData.centerPoint||(this.symbolData.centerPoint={}),this.symbolData.centerPoint.x=this.centerPoint.lng,this.symbolData.centerPoint.y=this.centerPoint.lat,this.symbolData.endAngle=this.endAngle,this.symbolData.radius=this.radius,this.symbolData.radiusPosAngle=this.radiusPosAngle,this.symbolData.startAngle=this.startAngle,this.symbolData.textPosition=this.textPosition,this.symbolData.radiusLineType=this.radiusLineType,this.symbolData.radiusText=this.radiusText)},_reView:function(){void 0!==this.prevStrokeWidth&&this.prevStrokeWidth!==this.feature.style.strokeWidth&&(this.strokeWidth=this.style.strokeWidth),this.fromZoom!==this._map.getZoom()&&(!0===this.isEdit&&this.redraw(),this.fromZoom=this._map.getZoom())},_modifyPoint:function(t,e){if(!0===e.isScalePoint){if(0===t)this.radius=SuperMap.Plot.PlottingUtil.distVincenty(this.centerPoint,e),this.startAngle=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(e.lng,e.lat))/Math.PI;else if(1===t)this.radius=SuperMap.Plot.PlottingUtil.distVincenty(this.centerPoint,e),this.endAngle=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(e.lng,e.lat))/Math.PI;else if(2===t){var o=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(e.lng,e.lat))/Math.PI;(o>this.startAngle&&o<this.endAngle||o+360>this.startAngle&&o+360<this.endAngle)&&(this.textPosition=o)}else if(3===t){var i=180*SuperMap.Plot.PlottingUtil.radian(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),new SuperMap.Geometry.Point(e.lng,e.lat))/Math.PI;this.startAngle%360==this.endAngle%360?this.radiusPosAngle=i:(i>this.startAngle&&i<this.endAngle||i+360>this.startAngle&&i+360<this.endAngle)&&(this.radiusPosAngle=i)}}else this.latLngs.length>0&&(this.centerPoint=this.latLngs[0].clone()),2===this.latLngs.length&&(this.radius=SuperMap.Plot.PlottingUtil.distVincenty(this.latLngs[0],this.latLngs[1]));this.redraw()},_resizeLatLngs:function(t,e,o,i){var l=!1;1===this.latLngs.length&&(l=!0,this.latLngs.push(this.scalePoints[0])),Lt.prototype._resizeLatLngs.call(this,t,e,o,i),this.centerPoint.lng=this.latLngs[0].lng,this.centerPoint.lat=this.latLngs[0].lat,this.radius=SuperMap.Plot.PlottingUtil.distVincenty(this.latLngs[0],this.latLngs[1]),l&&this.latLngs.splice(1,1)},setRotate:function(t){if(this.dRotate=t,this._rotate(t,this.centerPoint),this.radiusPosAngle+=t,this.startAngle+=t,this.endAngle+=t,this.textPosition+=t,this.latLngs=[],0!==this.avoidRegions.length)for(var e=0,o=this.avoidRegions.length;e<o;e++)L.Util.rotateLatLngs(this.avoidRegions[e].getLatLngs(),this.centerPoint,t);this.redraw()},move:function(t,e){for(var o=0,i=this.avoidRegions.length;o<i;o++)L.Util.moveLatLngs(this.avoidRegions[o].getLatLngs(),t,e);L.Util.moveLatLngs([this.centerPoint],t,e),this.latLngs=[],this.redraw()},getArcPts:function(t,e){for(var o=[],i=t;i<=e;i+=5){let t=SuperMap.Plot.PlottingUtil.destinationVincenty(this.centerPoint,360-i+90,1e3*this.radius);o.push(t)}if(i-e>0&&i-e<5){let t=SuperMap.Plot.PlottingUtil.destinationVincenty(this.centerPoint,360-e+90,1e3*this.radius);o.push(t)}return o}}),Ot=function(t,e,o,i){return new xt(t,e,o,i)};L.supermap.plotting.arcRegion=Ot;var wt=ct.extend({ratio:null,scalePoints:null,scaleValues:null,initialize:function(t,e,o,i){ct.prototype.initialize.call(this,t,e,o,i),this.libID=0,this.code=SuperMap.Plot.SymbolType.FLAGGROUP,this.symbolType=SuperMap.Plot.SymbolType.FLAGGROUP,this.symbolName="多旗",i.subObjects&&(this.subObjects=i.subObjects),null===this.ratio&&(this.ratio=.8)},destroy:function(){ct.prototype.destroy.call(this),this.ratio=[]},setRotate:function(t){isNaN(t)||(this.dRotate+=t,this.redraw())},redraw:function(){if("none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility())this._clearComponents();else{if(L.Util.isArray(this.ratio)||(this.ratio=[this.ratio]),0===this.components.length&&0!==this.subObjects.length)for(let t=0,e=this.subObjects.length;t<e;t++)this.layer&&this.layer.removeFeatures(this.subObjects[t]),this.subObjects[t].enableEdit=!0,this.subObjects[t].ownerGroup=this,this._addComponents(this.subObjects[t]);if(0!==this.components.length){this.scalePoints=[],this.components[0].setRotate(this.dRotate);var t=L.latLng(this.components[0].getLatLngs()[0].lat,this.components[0].getLatLngs()[0].lng),e=this._map.latLngToLayerPoint(t);!0===this.components[0].positionOffset&&(e.x+=this.components[0].positionOffsetX,e.y+=this.components[0].positionOffsetY),t=this._map.layerPointToLatLng(e),this.anchorPoint=t.clone();var o=new L.latLng(t);o.tag=0,this.scalePoints.push(o);for(let t=1,e=this.components.length;t<e;t++){for(;this.ratio.length<t;)this.ratio.push(this.ratio[this.ratio.length-1]);var i=this.ratio[t-1],l=this.components[t-1],s=this._calculateFlagTop(l),n=L.Util.cloneLatLngs(l.getLatLngs())[0],a=this._map.latLngToLayerPoint(n);!0===l.positionOffset&&(a.x+=l.positionOffsetX,a.y+=l.positionOffsetY),n=this._map.layerPointToLatLng(a),s=this._pointRotate(this.dRotate,n,s);var r=this._findPointOnLineByRatio(i,n,s);this.components[t].dRotate=this.dRotate,this.components[t].setLatLngs([r]);var p=new L.latLng(r);p.tag=t,this.scalePoints.push(p)}}}},_pointRotate:function(t,e,o){t*=Math.PI/180;var i=Math.sqrt(Math.pow(e.lng-o.lng,2)+Math.pow(e.lat-o.lat,2)),l=t+Math.atan2(o.lat-e.lat,o.lng-e.lng);return o.lng=e.lng+i*Math.cos(l),o.lat=e.lat+i*Math.sin(l),o},_findPointOnLineByRatio:function(t,e,o){var i=new L.latLng(0,0);return i.lng=e.lng+(o.lng-e.lng)*t,i.lat=e.lat+(o.lat-e.lat)*t,i},_calculateFlagTop:function(t){var e=t.dRotate;t.dRotate=0,0===t.dRotate&&(t.isNotRedrawText=!0,t.redraw(),delete t.isNotRedrawText);var o=t.getBounds();return t.dRotate=e,t.redraw(),t.initialScale.x>=0?t.negativeImage?new L.latLng(o.getNorth(),o.getEast()):new L.latLng(o.getNorth(),o.getWest()):t.negativeImage?new L.latLng(o.getSouth(),o.getWest()):new L.latLng(o.getSouth(),o.getEast())},_projectPoint:function(t,e,o){if(e===o)return e;var i=new L.latLng(0,0),l=o.lng-e.lng,s=e.lat-o.lat,n=l*l,a=s*s,r=l*s,p=l*l+s*s;return i.lng=(r*(e.lat-t.lat)+e.lng*a+t.lng*n)/p,i.lat=(r*(e.lng-t.lng)+e.lat*n+t.lat*a)/p,i},_modifyPoint:function(t,e){if(0===t)this.subObjects[0].setLatLngs([e]);else{var o=this.subObjects[t-1].latLngs[0],i=this._calculateFlagTop(this.subObjects[t-1]);i=this._pointRotate(this.dRotate,this.subObjects[0].latLngs[0],i);var l=Math.sqrt(Math.pow(o.lng-i.lng,2)+Math.pow(o.lat-i.lat,2)),s=this._projectPoint(e,o,i),n=Math.sqrt(Math.pow(o.lng-s.lng,2)+Math.pow(o.lat-s.lat,2));this.ratio[t-1]=n/l}this.redraw()},_reView:function(){for(var t in this.components)this.components[t].scaleByMap=this.scaleByMap,this.components[t]._reView();this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},_parseSymbolData:function(){ct.prototype._parseSymbolData.call(this),this.symbolData&&(this.ratio=this.symbolData.ratio)},_setSymbolData:function(){ct.prototype._setSymbolData.call(this),this.symbolData&&(this.symbolData.ratio=this.ratio)}}),It=function(t,e,o,i){return new wt(t,e,o,i)};L.supermap.plotting.flagGroup=It,L.supermap.plotting.FlagGroup=wt;var Ct=ct.extend({colNum:null,space:null,initialize:function(t,e,o,i){ct.prototype.initialize.call(this,t,e,o,i),this.libID=0,this.code=SuperMap.Plot.SymbolType.NAVYDEPLOYMENT,this.symbolType=SuperMap.Plot.SymbolType.NAVYDEPLOYMENT,this.symbolName="海军兵力部署",null===this.colNum&&(this.colNum=1),null===this.space&&(this.space=10),null===this.scaleByMap&&(this.scaleByMap=!0)},destroy:function(){this.space=null,this.colNum=null,ct.prototype.destroy.call(this)},redraw:function(){"none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility()?this._clearComponents():this._redrawComponents()},_calculateParts:function(){var t=this._map.getFeatureByUuid(this.associatedUuid);if(null!==t&&t.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&0!==t.latLngs.length){var e=!1;for(let o=0;o<t.deployments.length;o++)if(this===t.deployments[o]){e=!0;break}if(e||t.deployments.push(this),0!==this.subObjects.length&&0===this.components.length)for(let t=0,e=this.subObjects.length;t<e;t++)this.subObjects[t].ownerGroup=this,this.subObjects[t].enableEdit=!0,this._addComponents(this.subObjects[t]);if(0===this.components.length){var o=L.Util.cloneLatLngs(t.latLngs[0]),i=this._map.latLngToLayerPoint(L.latLng(o[0].lat,o[0].lng)),l=this._transitionPoint(new SuperMap.Geometry.Point(this.space,0),i),s=Math.abs(l.lng-o[0].lng),n=new SuperMap.Geometry.Point(0,0),a=this._transitionPoint(n,i),r=new SuperMap.Geometry.Point(100,100),p=this._transitionPoint(r,i),u=new L.LatLngBounds(L.latLng(a.lat,a.lng),L.latLng(p.lat,p.lng)),h=Math.ceil(this._getSubSymbolCount(this.subSymbols.length-1)/this.colNum),g=Math.abs(u.getNorth()-u.getSouth())*h+s*(h+1),c=L.latLng(o[0].lat+g/2,o[0].lng-5*s);for(let t=0;t<this.subSymbols.length;t++)for(var y=0;y<this.subSymbols[t].totalNum;y++){var P=this._getSubSymbolCount(t-1)+y+1,d=Math.ceil(P/h),S=P-h*(d-1);if(1!==d&&1===S){var f=this._calculateBounds();c.lng=f.getWest()}this.subSymbols[t].symbolData.textContent=this.subSymbols[t].textContent;for(var m=c.lng-(s+Math.abs(u.getWest()-u.getEast())/3),M=c.lat-S*(Math.abs(u.getNorth()-u.getSouth())+s),b=0,A=0,T=0,v=0,_=0;_<this.subSymbols[t].symbolData.innerCells.length;_++)for(var x=0;x<this.subSymbols[t].symbolData.innerCells[_].positionPoints.length;x++)b<=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].x&&(b=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].x),A>=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].x&&(A=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].x),T<=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].y&&(T=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].y),v>=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].y&&(v=this.subSymbols[t].symbolData.innerCells[_].positionPoints[x].y);var O=L.latLng(M,m),w=this._map.latLngToLayerPoint(L.latLng(M,m)),I=new SuperMap.Geometry.Point(b,(T+v)/2),C=new SuperMap.Geometry.Point(I.x,I.y),E=new SuperMap.Geometry.Point(this.subSymbols[t].symbolData.anchorPoint.x,this.subSymbols[t].symbolData.anchorPoint.y),D=this._transitionPoint(C,w),U=this._transitionPoint(E,w);O.lat+=U.lat-D.lat,O.lng+=U.lng-D.lng;var N=this.subSymbols[t].symbolData.libID,R=this.subSymbols[t].symbolData.code;this.subSymbols[t].symbolData.annotationPosition=6;var B=SuperMap.Util.cloneObject(this.subSymbols[t].symbolData),F=L.supermap.plotting.PlottingObject.createSymbol(N,R,O,{serverUrl:this.serverUrl,symbolData:B,scaleByMap:!0,minScale:0,maxScale:2048,space:0});F.enableEdit=!0,F.ownerGroup=this,this._addComponents(F),this.bounds=this._calculateBounds(),this.subObjects.push(F)}if(this.bounds=new L.LatLngBounds,this.bounds=this._calculateBounds(),null!==this.textContent&&0!==this.textContent.length){var k=L.latLng(o[0].lat+g/2+s,o[0].lng-5*s),V=L.supermap.plotting.PlottingObject.createSymbol(0,34,[k],{textContent:this.textContent,serverUrl:this.serverUrl});V.style.labelAlign="rb",V.style.scaleByMap=!0,V.enableEdit=!0,V.ownerGroup=this,this._addComponents(V),this.bounds.extend(V.getBounds()),this.subObjects.push(V)}var Y=new L.LatLngBounds(L.latLng(this.bounds.getSouth()-s,this.bounds.getWest()-s),L.latLng(this.bounds.getNorth()+s,this.bounds.getEast()+s)),z=[];z.push(L.latLng(Y.getNorth(),Y.getWest())),z.push(L.latLng(Y.getSouth(),Y.getEast()));var G=L.latLng(o[0].lat,o[0].lng);G.isFixedPos=!0,z.push(G);var W=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL,z,{serverUrl:this.serverUrl});for(var j in W.enableEdit=!0,W.ownerGroup=this,this.subObjects.splice(0,0,W),this._addComponents(W),this._clearComponents(),this.subObjects)this.subObjects[j].ownerGroup=this,this.subObjects[j].enableEdit=!0,this._addComponents(this.subObjects[j])}}},_reView:function(){for(var t in this.subObjects)this.subObjects[t].layer&&this.subObjects[t]._reView();this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},move:function(t,e){for(var o in this.subObjects)this.subObjects[o].move(t,e);this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},_resize:function(t,e){for(var o in this.subObjects)this.subObjects[o]._resize(t,e)},_transitionPoint:function(t,e){var o=e.x+t.x*(96/254),i=e.y-t.y*(96/254);return this._map.layerPointToLatLng(L.point(o,i))},_getSubSymbolCount:function(t){var e=0;if(t<0)return e;t>this.subSymbols.length-1&&(t=this.subSymbols.length-1);for(var o=0;o<=t;o++)e+=this.subSymbols[t].totalNum;return e},_calculateBounds:function(){for(var t in this.bounds=new L.LatLngBounds,this.components)this.components[t].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&this.bounds.extend(this.components[t].getBoundsWithText());return this.bounds},setTextContent:function(t){if(this.textContent!==t){this.textContent=t;for(var e=0;e<this.subObjects.length;e++)this.subObjects[e].symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL&&(this.subObjects[e].textContent=this.textContent,this.subObjects[e].redraw())}}}),Et=function(t,e,o,i){return new Ct(t,e,o,i)};L.supermap.plotting.navyDeployment=Et,L.supermap.plotting.NavyDeployment=Ct;var Dt=Ct.extend({isShowTooltip:!0,getShowTooltip:function(){return this.isShowTooltip},setShowTooltip:function(t){if(this.isShowTooltip!==t)if(this.isShowTooltip=t,this.isShowTooltip&&0!==this.components.length){var e=this._map.getFeatureByUuid(this.associatedUuid),o=L.Util.cloneLatLngs(e.latLngs[0]),i=this._map.latLngToLayerPoint(L.latLng(o[0].lat,o[0].lng)),l=this._transitionPoint(new SuperMap.Geometry.Point(this.space,0),i),s=Math.abs(l.lng-o[0].lng),n=new L.LatLngBounds(L.latLng(this.bounds.getSouth()-s,this.bounds.getWest()-s),L.latLng(this.bounds.getNorth()+s,this.bounds.getEast()+s)),a=[];a.push(L.latLng(n.getNorth(),n.getWest())),a.push(L.latLng(n.getSouth(),n.getEast()));var r=L.latLng(o[0].lat,o[0].lng);r.isFixedPos=!0,a.push(r);var p=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL,a,{serverUrl:this.serverUrl});this._addComponents(p)}else for(var u in this.components)if(320===this.components[u].symbolType){this.subObjects.splice(SuperMap.Util.indexOf(this.subObjects,this.components[u]),1);var h=SuperMap.Util.indexOf(this.components,this.components[u]);if(-1!==h){this.components[h]._clearComponents(),this.components.splice(h,1);break}}},initialize:function(t,e,o,i){Ct.prototype.initialize.call(this,t,e,o,i),this.libID=0,this.code=SuperMap.Plot.SymbolType.AIRDEPLOYMENT,this.symbolType=SuperMap.Plot.SymbolType.AIRDEPLOYMENT,this.symbolName="空军兵力部署",null===this.isShowTooltip&&(this.isShowTooltip=!0)},destroy:function(){this.isShowTooltip=null,Ct.prototype.destroy.call(this)},_calculateParts:function(){var t=this._map.getFeatureByUuid(this.associatedUuid);if(null!==t&&t.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&0!==t.latLngs.length){var e=!1;for(let o=0;o<t.deployments.length;o++)if(this===t.deployments[o]){e=!0;break}if(e||t.deployments.push(this),0!==this.subObjects.length&&0===this.components.length)for(let t=0,e=this.subObjects.length;t<e;t++)this.subObjects[t].enableEdit=!0,this.subObjects[t].ownerGroup=this,this._addComponents(this.subObjects[t]);if(0===this.components.length){var o=L.Util.cloneLatLngs(t.latLngs[0]),i=this._map.latLngToLayerPoint(L.latLng(o[0].lat,o[0].lng)),l=this._transitionPoint(new SuperMap.Geometry.Point(this.space,0),i),s=Math.abs(l.lng-o[0].lng),n=new SuperMap.Geometry.Point(0,0),a=this._transitionPoint(n,i),r=new SuperMap.Geometry.Point(100,100),p=this._transitionPoint(r,i),u=new L.LatLngBounds(L.latLng(a.lat,a.lng),L.latLng(p.lat,p.lng)),h=Math.ceil(this._getSubSymbolCount(this.subSymbols.length-1)/this.colNum),g=Math.abs(u.getWest()-u.getEast())*this.colNum+s*(this.colNum-1),c=L.latLng(o[0].lat-s,o[0].lng-.5*g+.5*Math.abs(u.getEast()-u.getWest()));!0===this.isShowTooltip&&(c.lat-=4*s),this._setSubSymbolText();var y=[];for(let t=0;t<this.subSymbols.length;t++)for(var P=0;P<this.subSymbols[t].totalNum;P++)y.push(this.subSymbols[t]);var d=0;for(let t=0;t<h;t++){for(P=0;P<this.colNum&&!(d>=y.length);P++){var S=y[d];if(void 0!==S.symbolData&&null!==S.symbolData){for(var f=S.symbolData.libID,m=S.symbolData.code,M=c.lng+P*(s+Math.abs(u.getEast()-u.getWest())),b=c.lat-(2*s+Math.abs(u.getNorth()-u.getSouth())/2),A=0,T=0,v=0,_=0,x=0;x<S.symbolData.innerCells.length;x++)for(var O=0;O<S.symbolData.innerCells[x].positionPoints.length;O++)A<=S.symbolData.innerCells[x].positionPoints[O].x&&(A=S.symbolData.innerCells[x].positionPoints[O].x),T>=S.symbolData.innerCells[x].positionPoints[O].x&&(T=S.symbolData.innerCells[x].positionPoints[O].x),v<=S.symbolData.innerCells[x].positionPoints[O].y&&(v=S.symbolData.innerCells[x].positionPoints[O].y),_>=S.symbolData.innerCells[x].positionPoints[O].y&&(_=S.symbolData.innerCells[x].positionPoints[O].y);var w=L.latLng(b,M),I=this._map.latLngToLayerPoint(L.latLng(b,M)),C=new SuperMap.Geometry.Point((A+T)/2,v),E=new SuperMap.Geometry.Point(C.x,C.y),D=new SuperMap.Geometry.Point(y[d].symbolData.anchorPoint.x,y[d].symbolData.anchorPoint.y),U=this._transitionPoint(E,I),N=this._transitionPoint(D,I);w.lat+=N.lat-U.lat,w.lng+=N.lng-U.lng,S.symbolData.annotationPosition=5;var R=SuperMap.Util.cloneObject(S.symbolData),B=L.supermap.plotting.PlottingObject.createSymbol(f,m,w,{symbolData:R,scaleByMap:!0,minScale:0,maxScale:2048,space:0});B.enableEdit=!0,B.ownerGroup=this,this._addComponents(B),this.subObjects.push(B),d++}}this.bounds=this._calculateBounds(),c.lat=this.bounds.getSouth()}if(this.isShowTooltip){var F=new L.LatLngBounds(L.latLng(this.bounds.getSouth()-s,this.bounds.getWest()-s),L.latLng(this.bounds.getNorth()+s+1.2,this.bounds.getEast()+s)),k=[];k.push(L.latLng(F.getNorth(),F.getWest())),k.push(L.latLng(F.getSouth(),F.getEast()));var V=L.latLng(o[0].lat,o[0].lng);V.isFixedPos=!0,k.push(V);var Y=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL,k,{serverUrl:this.serverUrl});for(var z in Y.enableEdit=!0,Y.ownerGroup=this,this.subObjects.splice(0,0,Y),this._addComponents(Y),this._clearComponents(),this.subObjects)this.subObjects[z].enableEdit=!0,this.subObjects[z].ownerGroup=this,this._addComponents(this.subObjects[z])}}}},_setSubSymbolText:function(){for(var t=0;t<this.subSymbols.length;t++)null!==this.subSymbols[t].symbolData&&(this.subSymbols[t].symbolData.textContent=this.subSymbols[t].textContent)},_parseSymbolData:function(){Ct.prototype._parseSymbolData.call(this),this.symbolData&&(this.isShowTooltip=this.symbolData.isShowTooltip)},_setSymbolData:function(){Ct.prototype._setSymbolData.call(this),this.symbolData&&(this.symbolData.isShowTooltip=this.isShowTooltip)}}),Ut=function(t,e,o,i){return new Dt(t,e,o,i)};L.supermap.plotting.airDeployment=Ut,L.supermap.plotting.AirDeployment=Dt;var Nt=L.Evented.extend({options:{},uuid:null,associatedUuid:null,libID:null,code:null,maxEditPts:0,minEditPts:0,symbolType:null,latLngs:[],style:{fill:!1,color:"#0000ff",lineSymbolID:2,opacity:1,weight:1},components:[],initialize:function(t,e,o,i){this.components=[],this.minEditPts=3,this.maxEditPts=9999,this.libID=0,this.code=SuperMap.Plot.SymbolType.AVOIDREGION,this.symbolType=SuperMap.Plot.SymbolType.AVOIDREGION,this.symbolName="避让区域",i.style&&(this.style=SuperMap.Plot.PlottingUtil.cloneObject(i.style)),i&&i.symbolData&&this._parseSymbolData(i.symbolData),L.Util.isArray(o)||(o=[o]),o.length>0&&(this.latLngs=L.Util.isArray(o)?o:[o]),SuperMap.Util.extend(this,i),void 0!==this.uuid&&null!==this.uuid||(this.uuid=SuperMap.Plot.PlottingUtil.generateUuid())},destroy:function(){this.libID=null,this.code=null,this.symbolType=null,this.symbolName=null,this.uuid=null,this.associatedUuid=null,this.minEditPts=null,this.maxEditPts=null,this.latLngs=null,this.components=null},onAdd:function(t){this.layer=t,this._renderer=t._renderer,this._map=t._map,this.redraw(),ft&&(this.dragging||(this.dragging=new ft(this)))},_clearComponents:function(){for(var t=0;t<this.components.length;t++)this.components[t].removeEventParent(this),this.components[t].onRemove(),delete this.components[t];this.components.length=0},_addComponents:function(t){t._map=this._map,t._renderer=this._renderer,t.addEventParent(this),t.onAdd(),this.components.push(t)},_project:function(){var t=this;t._pxBounds=L.bounds(L.point(0,0),L.point(0,0)),t.components.map(function(e){return t._pxBounds.extend(e._pxBounds.min),t._pxBounds.extend(e._pxBounds.max),e})},getBounds:function(){var t=this;return t._bounds=new L.LatLngBounds,t.components.map(function(e){return t._bounds.extend(e.getBounds()),e}),t._bounds},setLatLngs:function(t){return this.latLngs=t,this.redraw()},getLatLngs:function(){return this.latLngs},addLatLng:function(t){if(this.latLngs[this.latLngs.length-1].lat!==t.lat||this.latLngs[this.latLngs.length-1].lng!==t.lng)return this.latLngs.push(t),this.redraw()},redraw:function(){if(this._clearComponents(),this.getLatLngs().length>=this.minEditPts){let t=new L.Polygon(this.getLatLngs(),{smoothFactor:.05});this._addComponents(t),t.setStyle(this.style)}else if(this.getLatLngs().length>=2&&this.getLatLngs().length<this.minEditPts){let t=new L.Polyline(this.getLatLngs(),{smoothFactor:.05});this._addComponents(t),t.setStyle(this.style)}},_modifyPoint:function(){this.redraw(),this._map.getFeatureByUuid(this.associatedUuid).redraw()},move:function(t,e){(L.Util.moveLatLngs(this.getLatLngs(),t,e),this.redraw(),null!==this._map&&void 0!==this._map)&&this._map.getFeatureByUuid(this.associatedUuid).redraw()},rotate:function(t,e){(L.Util.rotateLatLngs(this.getLatLngs(),e,t),null!==this._map&&void 0!==this._map)&&this._map.getFeatureByUuid(this.associatedUuid).redraw()},_reView:function(){},_parseSymbolData:function(t){if(null!==t&&(this.libID=t.libID,this.code=t.code,this.symbolType=t.symbolType,this.maxEditPts=t.algoMaxEditPts,this.minEditPts=t.algoMinEditPts,void 0!==t.uuid&&(this.uuid=t.uuid),void 0!==t.associatedUuid&&(this.associatedUuid=t.associatedUuid),this.latLngs=[],t.controlPoints))for(var e=0;e<t.controlPoints.length;e++)this.latLngs.push(L.latLng(t.controlPoints[e].y,t.controlPoints[e].x))},getSymbolData:function(){var t={};t.uuid=this.uuid,t.associatedUuid=this.associatedUuid,t.libID=this.libID,t.code=this.code,t.symbolType=this.symbolType,t.algoMaxEditPts=this.maxEditPts,t.algoMinEditPts=this.minEditPts,t.controlPoints=[];for(var e=0;e<this.latLngs.length;e++)t.controlPoints.push({x:this.getLatLngs()[e].lng,y:this.getLatLngs()[e].lat,z:0});return t},clone:function(){var t=SuperMap.Plot.PlottingUtil.cloneObject(this.getSymbolData());return t.uuid=SuperMap.Plot.PlottingUtil.generateUuid(),L.supermap.plotting.avoidRegion(0,SuperMap.Plot.SymbolType.AVOIDREGION,L.Util.cloneLatLngs(this.getLatLngs()),{symbolData:t,style:SuperMap.Plot.PlottingUtil.cloneObject(this.style)})},_containsPoint:function(t){var e=L.Util.latLngsToSuperMapPoints(this.getLatLngs());e.push(e[0].clone());var o=SuperMap.Number.limitSigDigs,i=o(t.x,14),l=o(t.y,14);function s(t,e,o,i,l){return(i-e)/(l-o)*(t-l)+i}for(var n,a,r,p,u,h,g,c=e.length-1,y=0,P=0;P<c;++P)if(r=o((n=e[P]).x,14),p=o(n.y,14),u=o((a=e[P+1]).x,14),p!==(h=o(a.y,14))){if((g=o(s(l,r,p,u,h),14))===i&&(p<h&&l>=p&&l<=h||p>h&&l<=p&&l>=h)){y=-1;break}g<=i||r!==u&&(g<Math.min(r,u)||g>Math.max(r,u))||(p<h&&l>=p&&l<h||p>h&&l<p&&l>=h)&&++y}else if(l===p&&(r<=u&&i>=r&&i<=u||r>=u&&i<=r&&i>=u)){y=-1;break}return-1===y?1:!!(1&y)},_relationToLayer:function(t){var e=2,o=[];if(t instanceof L.Polygon)(o=L.Util.latLngsToSuperMapPoints(t.getLatLngs()[0])).push(o[0].clone());else if(t instanceof L.Polyline)o=L.Util.latLngsToSuperMapPoints(t.getLatLngs());else if(t instanceof tt){var i=t.getBounds();o.push(new SuperMap.Geometry.Point(i.left,i.top)),o.push(new SuperMap.Geometry.Point(i.left,i.bottom)),o.push(new SuperMap.Geometry.Point(i.right,i.bottom)),o.push(new SuperMap.Geometry.Point(i.top,i.right))}if(0===o.length)e=2;else{var l=this._containsPoint(o[0]);l&&(e=1);for(let t=1;t<o.length;t++)if(l!==this._containsPoint(o[t])){e=0;break}if(2===e){var s=L.Util.latLngsToSuperMapPoints(this.getLatLngs());s.push(s[0].clone());for(let t=0;t<o.length-1;t++){for(var n=0;n<s.length-1;n++)if(SuperMap.Plot.PlottingUtil.isCross(o[t],o[t+1],s[n],s[n+1])){e=0;break}if(0===e)break}}}return e},_getWithoutPts:function(t,e){var o=L.Util.latLngsToSuperMapPoints(t);!0===e&&o[0].x!==o[o.length-1].x&&o[0].y!==o[o.length-1].y&&o.push(o[0]);for(var i=[],l=[],s=0;s<o.length;s++)if(this._containsPoint(o[s])||l.push(o[s].clone()),s<=o.length-2)for(var n=this._intersectSegs(o[s],o[s+1]),a=0;a<n.length;a++)l.push(n[a].clone()),l.length>1&&(i.push(l),l=[]);0!==l.length&&i.push(l);var r=i.length;if(!0===e&&r>1&&SuperMap.Plot.PlottingUtil.equalFuzzy(i[0][0].x,i[r-1][i[r-1].length-1].x)&&SuperMap.Plot.PlottingUtil.equalFuzzy(i[0][0].y,i[r-1][i[r-1].length-1].y)){for(var p=0;p<i[0].length;p++)i[r-1].push(i[0][p]);i.splice(0,1)}return i},_intersectSegs:function(t,e){var o=L.Util.latLngsToSuperMapPoints(this.getLatLngs());o.push(o[0].clone()),o[0].x!==o[o.length-1].x&&o[0].y!==o[o.length-1].y&&o.push(o[0]);for(var i=[],l=0;l<o.length-1;l++){var s=new SuperMap.Geometry.Point;SuperMap.Plot.PlottingUtil.intersectLineSegs(t,e,o[l],o[l+1],s)&&i.push(s)}for(var n=[];i.length>0;)if(1===i.length)n.push(i[0]),i.splice(0,1);else{for(var a=0,r=SuperMap.Plot.PlottingUtil.distance(t,i[0]),p=1;p<i.length;p++)SuperMap.Plot.PlottingUtil.distance(t,i[p])<r&&(r=SuperMap.Plot.PlottingUtil.distance(t,i[p]),a=p);n.push(i[a]),i.splice(a,1)}return n}}),Rt=function(t,e,o,i){return new Nt(t,e,o,i)};L.supermap.plotting.avoidRegion=Rt,L.supermap.plotting.AvoidRegion=Nt;var Bt=mt.extend({route:null,towardNode:null,startRouteNode:null,textAnchor:null,space:null,inner:null,setPosition:function(t){this.textPosition=t,this._calculateOffset()},initialize:function(t,e,o,i){this.symbolName="标牌文字",this.symbolType=SuperMap.Plot.SymbolType.LITERATESIGN,mt.prototype.initialize.call(this,t,e,o,i)},destroy:function(){this.space=null,this.inner=null,this.textAnchor=null,mt.prototype.destroy.call(this)},_calculateParts:function(){if(null!==this.startRouteNode&&null!==this.towardNode&&null!==this.towardNode.textContent&&0!==this.towardNode.textContent.length){var t=this.route._getNodeByUuid(this.towardNode.routeNodeId),e=new SuperMap.Geometry.Point(this.startRouteNode.x,this.startRouteNode.y),o=new SuperMap.Geometry.Point(t.x,t.y),i=L.latLng((e.y+o.y)/2,(e.x+o.x)/2),l=SuperMap.Plot.PlottingUtil.getTextCount(this.towardNode.textContent[0]);for(let t=1;t<this.towardNode.textContent.length;t++){var s=SuperMap.Plot.PlottingUtil.getTextCount(this.towardNode.textContent[t]);l<s&&(l=s)}if(null===this.towardNode.offsetX||null===this.towardNode.offsetY){var n=this.space+(this.dScale*this.style.fontSize+1)*l/2,a=this._innerOutlineDir(),r=this._map.layerPointToLatLng(L.point(0,0)),p=this._map.layerPointToLatLng(L.point(n,0)),u=new SuperMap.Geometry.Point(r.lng,r.lat),h=new SuperMap.Geometry.Point(p.lng,p.lat),g=a*SuperMap.Plot.PlottingUtil.distance(u,h);!0===this.inner&&(g=-g);var c=SuperMap.Plot.PlottingUtil.parallel([e,o],g);this.latLngs=[];var y=L.latLng((c[0].y+c[1].y)/2,(c[0].x+c[1].x)/2);this.latLngs.push(y);var P=this._map.latLngToLayerPoint(i),d=this._map.latLngToLayerPoint(y);this.towardNode.offsetX=d.x-P.x,this.towardNode.offsetY=d.y-P.y}else{var S=this._map.latLngToLayerPoint(i),f=L.point(S.x+this.towardNode.offsetX,S.y+this.towardNode.offsetY),m=this._map.layerPointToLatLng(f);0===this.latLngs.length?this.latLngs.push(m):this.latLngs[0]=m}var M=180*SuperMap.Plot.PlottingUtil.radian(e,o)/Math.PI,b=this._getTextContentsCells(l),A="";null!==this._map&&this._map instanceof L.Map&&(A=this._map.options.crs.code);for(let t=0;t<b.length;t++){var T=b[t];L.Util.isMercatorProjection(A)&&(T.positionPoints=L.Util.conventProjectPts(L.Util.superMapPointsToLatLngs(T.positionPoints))),T.positionPoints=SuperMap.Plot.Primitives.getSpatialData(T.type,T.positionPoints,T.angle);for(var v=[],_=0;_<T.positionPoints.length;_++)v.push(SuperMap.Plot.PlottingUtil.coordinateTrans(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),T.positionPoints[_],M));var x=null;if(L.Util.isMercatorProjection(A)){for(var O=[],w=0,I=(x=L.Util.unConventProjectPts(v)).length;w<I;w++)O.push(SuperMap.Plot.PlottingUtil.coordinateTrans(new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat),L.Util.latLngsToSuperMapPoints(x[w])[0],0));x=L.Util.superMapPointsToLatLngs(O)}else x=L.Util.superMapPointsToLatLngs(v);T.type===SuperMap.Plot.SymbolType.TEXTSYMBOL?0!==T.textContent.length&&(T.style.labelRotation=90-M,this._createAndDrawLayer(SuperMap.Plot.SymbolType.TEXTSYMBOL,x,T.style,T.textContent)):this._createAndDrawLayer(T.type,x,T.style,T.textContent)}}},_innerOutlineDir:function(){for(var t=[],e=0;e<this.route.routeNodes.length;e++)t.push(new SuperMap.Geometry.Point(this.route.routeNodes[e].x,this.route.routeNodes[e].y));return SuperMap.Plot.PlottingUtil.innerOutlineDir(t)},move:function(t,e){for(var o in this.components)L.Util.moveLatLngs(this.components[o].getLatLngs(),t,e),this.components[o].setLatLngs(this.components[o].getLatLngs());L.Util.moveLatLngs(this.getLatLngs(),t,e),this._calculateOffset()},_reView:function(){this.scaleByMap&&!1!==this.scaleByMap?(this.dScale*=this._map.getZoomScale(this._map.getZoom(),this.fromZoom),this.dScale>5?this.dScale=5:this.dScale<1&&(this.dScale=1),this.redraw()):this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues),this.fromZoom=this._map.getZoom()},_calculateOffset:function(){var t=this.route._getNodeByUuid(this.towardNode.routeNodeId),e=L.latLng((this.startRouteNode.y+t.y)/2,(this.startRouteNode.x+t.x)/2),o=this._map.latLngToLayerPoint(e),i=this._map.latLngToLayerPoint(this.latLngs[0]);this.towardNode.offsetX=i.x-o.x,this.towardNode.offsetY=i.y-o.y},_getTextContentsCells:function(t){var e=this.towardNode.textContent,o=this.dScale*this.style.fontSize+1,i=this._map.layerPointToLatLng(L.point(0,0)),l=this._map.layerPointToLatLng(L.point(o,0)),s=SuperMap.Plot.PlottingUtil.distance({x:i.lng,y:i.lat},{x:l.lng,y:l.lat}),n=s,a=s*t,r=e.length+2,p=[],u=r*n*.5,h=new Object;h.type=SuperMap.Plot.SymbolType.ARBITRARYPOLYGONSYMBOL,h.positionPoints=[],h.positionPoints.push(new SuperMap.Geometry.Point(u,0)),h.positionPoints.push(new SuperMap.Geometry.Point(-2*n+u,.5*a)),h.positionPoints.push(new SuperMap.Geometry.Point(-r*n+u,.5*a)),h.positionPoints.push(new SuperMap.Geometry.Point(-r*n+u,-.5*a)),h.positionPoints.push(new SuperMap.Geometry.Point(-2*n+u,-.5*a)),h.style={surroundLineFlag:!1,fontSize:12},p.push(h);for(var g=1;g<=e.length;g++){var c=new Object;c.type=SuperMap.Plot.SymbolType.POLYLINESYMBOL,c.positionPoints=[],c.positionPoints.push(new SuperMap.Geometry.Point(-(g+1)*n+u,.5*a)),c.positionPoints.push(new SuperMap.Geometry.Point(-(g+1)*n+u,-.5*a)),c.style={surroundLineFlag:!1,fontSize:12},p.push(c);var y=new Object;y.type=SuperMap.Plot.SymbolType.TEXTSYMBOL,y.positionPoints=[],y.positionPoints.push(new SuperMap.Geometry.Point(-(.5+g+1)*n+u,0)),y.textContent=e[g-1],y.style={surroundLineFlag:!1,fontSize:12,fontFamily:"Microsoft YaHei"},y.style.labelAlign="cm",p.push(y)}var P=new SuperMap.Geometry.Point(-1.4*n+u,0),d=new Object;d.type=SuperMap.Plot.SymbolType.TEXTSYMBOL,d.positionPoints=[],d.positionPoints.push(P),d.textContent=this.towardNode.index.toString(),d.style={surroundLineFlag:!1,fontSize:12,fontSizeLimit:!0,fontFamily:"Microsoft YaHei"},d.style.labelAlign="cm",p.push(d);var S=new Object;return S.type=SuperMap.Plot.SymbolType.CIRCLESYMBOL,S.positionPoints=[],S.positionPoints.push(P),S.positionPoints.push(new SuperMap.Geometry.Point(P.x,.4*n)),S.style={surroundLineFlag:!1,fontSize:12},p.push(S),p}});L.supermap.plotting.literateSign=function(t,e,o,i){return new Bt(t,e,o,i)},L.supermap.plotting.LiterateSign=Bt;var Ft=Lt.extend({relLineText:0,showPathLine:!0,showPathLineArrow:!1,isCurve:!1,isAvoid:!1,textToLineDistance:0,getRelLineText:function(){return this.relLineText},setRelLineText:function(t){this.relLineText!==t&&(this.relLineText=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getShowPathLine:function(){return this.showPathLine},setShowPathLine:function(t){this.showPathLine!==t&&(this.showPathLine=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getShowPathLineArrow:function(){return this.showPathLineArrow},setShowPathLineArrow:function(t){this.showPathLineArrow!==t&&(this.showPathLineArrow=t,this.showPathLine&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},getIsCurveLine:function(){return this.isCurve},setCurveLine:function(t){this.isCurve!==t&&(this.isCurve=t,this.showPathLine&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},getIsAvoidLine:function(){return this.isAvoid},setAvoidLine:function(t){this.isAvoid!==t&&(this.isAvoid=t,this.relLineText===SuperMap.Plot.RelLineText.ONLINE&&this.showPathLine&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},getSpace:function(){return this.textToLineDistance},setSpace:function(t){this.textToLineDistance!==t&&(this.textToLineDistance=t,this.relLineText!==SuperMap.Plot.RelLineText.ONLINE&&(this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)))},initialize:function(t,e,o,i){this.code=SuperMap.Plot.SymbolType.PATHTEXT,this.libID=0,this.symbolType=SuperMap.Plot.SymbolType.PATHTEXT,this.symbolName="沿线注记",this.minEditPts=2,this.maxEditPts=9999,Lt.prototype.initialize.call(this,t,e,o,i)},_reView:function(){this.fromZoom!==this._map.getZoom()&&(this.redraw(),this.fromZoom=this._map.getZoom())},toSuperMapAlgorithms:function(){Lt.prototype.toSuperMapAlgorithms.call(this),this.superMapAlgoSymbol.relLineText=this.relLineText,this.superMapAlgoSymbol.showPathLine=this.showPathLine,this.superMapAlgoSymbol.showPathLineArrow=this.showPathLineArrow,this.superMapAlgoSymbol.isCurve=this.isCurve,this.superMapAlgoSymbol.isAvoid=this.isAvoid,this.superMapAlgoSymbol.textToLineDistance=this.textToLineDistance}});L.supermap.plotting.pathText=function(t,e,o,i){return new Ft(t,e,o,i)},L.supermap.plotting.PathText=Ft;var kt=mt.extend({route:null,routeNode:null,_isFirstNode:function(){for(var t=0;t<this.route.routeNodes.length;t++)for(var e=0;e<this.route.routeNodes[t].towardNodes.length;e++)if(this.route.routeNodes[t].towardNodes[e].routeNodeId===this.routeNode.id)return!1;return!0},_isLastNode:function(){return 0===this.routeNode.towardNodes.length},setType:function(t){this.routeNode.type=t,this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},setName:function(t){this.routeNode.name=t,this.redraw()},setPosition:function(t,e){this.routeNode.y=this.latLngs[0].lat=t,this.routeNode.x=this.latLngs[0].lng=e;for(let t=0;t<this.route.routeNodes.length;t++)this.route.routeNodes[t].routeNodeId===this.routeNode.id&&(this.route.routeNodes[t].x=this.routeNode.x,this.route.routeNodes[t].y=this.routeNode.y);if(0!==this.route.arrRoutePts.length){if(this.route.arrRoutePts=[],this.route.redraw(),this.route.highlightFlag){var o=SuperMap.Util.cloneObject(this.route.highlightStyle);this.route.highlightStyle&&SuperMap.Util.copyAttributes(o,this.route.highlightStyle),this.route.highlight(o)}}else{for(var i=this.route._getFeatureStartWith(this.routeNode),l=0;l<i.length;l++)i[l]instanceof Bt||(i[l].latLngs[0]=L.latLng(t,e)),i[l].redraw();var s=this.route._getFeatureEndWith(this.routeNode);for(let o=0;o<s.length;o++)s[o]instanceof Bt||(s[o].latLngs[1]=L.latLng(t,e)),s[o].redraw();this.redraw(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)}},setRotate:function(t){this.routeNode.type===SuperMap.Plot.RouteNodeType.STANDBY&&this.routeNode.rotate!==t&&(this.routeNode.rotate=t,this.redraw())},getRotate:function(){return this.routeNode.rotate},initialize:function(t,e,o,i){mt.prototype.initialize.call(this,t,e,o,i),this.symbolName=SuperMap.Plot.RouteNodePrimitives.getRouteNodeNameByType(this.routeNode.type),this.symbolType=SuperMap.Plot.SymbolType.ROUTENODE,this.anchorPoint=L.latLng(0,0)},destroy:function(){this.route=null,this.routeNode=null,mt.prototype.destroy.call(this)},_calculateParts:function(){if(0===this.getLatLngs().length?this.latLngs=[L.latLng(this.routeNode.y,this.routeNode.x)]:(this.latLngs[0].lat=this.routeNode.y,this.latLngs[0].lng=this.routeNode.x),this.latLngs.length>=this.minEditPts){if(this.routeNode.type===SuperMap.Plot.RouteNodeType.STANDBY){var t=SuperMap.Plot.RouteNodePrimitives.getRouteNodeCells(this.routeNode.type,!1,this.routeNode.rotate);this._transformSymbolCellsToGeometrys(t);var e=SuperMap.Plot.RouteNodePrimitives.getRouteNodeCells(this.routeNode.type,!0);this._transformSymbolCellsToGeometrys(e)}else{var o=SuperMap.Plot.RouteNodePrimitives.getRouteNodeCells(this.routeNode.type);this._transformSymbolCellsToGeometrys(o)}if(this.routeNode.style=this.style,null!==this.routeNode.name&&""!==this.routeNode.name){var i=this.getBounds(),l=L.latLng(i.getNorth(),i.getEast()),s=this.routeNode.style;s.labelAlign="lb",this._createAndDrawLayer(SuperMap.Plot.SymbolType.TEXTSYMBOL,[l],s,this.routeNode.name).isNameLayer=!0}}},_transformSymbolCellsToGeometrys:function(t){for(var e=this._map.latLngToLayerPoint(this.latLngs[0]),o=0;o<t.length;o++){var i=t[o];i.type===SuperMap.Plot.SymbolType.TEXTSYMBOL&&(i.style.fontSize=this.dScale*i.style.fontSize,i.style.labelRotation+=-this.dRotate);for(var l=0;l<i.positionPoints.length;l++){i.positionPoints[l].x=i.positionPoints[l].x*this.dScale,i.positionPoints[l].y=i.positionPoints[l].y*this.dScale;var s=this.dRotate*(Math.PI/180);SuperMap.Plot.PlottingUtil.rotateAngle({x:this.anchorPoint.lng,y:this.anchorPoint.lat},s,i.positionPoints[l]),i.positionPoints[l]=this._transitionPoint(i.positionPoints[l],e)}i.positionPoints=L.Util.latLngsToSuperMapPoints(i.positionPoints)}this._transSymbolCellsToLayers(t)},_transitionPoint:function(t,e){var o=e.x+t.x*(96/254),i=e.y-t.y*(96/254);return this._map.layerPointToLatLng(L.point(o,i))},move:function(t,e){this.routeNode.x+=e,this.routeNode.y+=t,this.setPosition(this.routeNode.y,this.routeNode.x)},getBounds:function(){var t=new L.LatLngBounds;for(var e in this.components){var o=this.components[e];o.isNameLayer||t.extend(o.getBounds?o.getBounds():o.getLatLng())}return t},_reView:function(){this.fromZoom!==this._map.getZoom()&&(this.scaleByMap&&!1!==this.scaleByMap?(this.dScale*=this._map.getZoomScale(this._map.getZoom(),this.fromZoom),this.dScale>5?this.dScale=5:this.dScale<1&&(this.dScale=1),this.redraw()):this.redraw(),this.fromZoom=this._map.getZoom(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))}});L.supermap.plotting.routeNode=function(t,e,o,i){return new kt(t,e,o,i)},L.supermap.plotting.RouteNode=kt;var Vt=gt.extend({routeNodes:[],nextRouteNodeType:SuperMap.Plot.RouteNodeType.TURNING,arrRoutePts:[],initialize:function(t,e,o,i){this.scaleByMap=!0,this.minEditPts=1,this.maxEditPts=9999,this.routeNodes=[],this.arrRoutePts=[],this.prevRouteNode=[],this.prevLiterateSign=[],gt.prototype.initialize.call(this,t,e,o,i)},destroy:function(){this.routeNodes=null,this.arrRoutePts=null,gt.prototype.destroy.apply(this,arguments)},highlight:function(t){for(var e in this.highlightFlag=!0,this.highlightStyle=t,this.components)if(this.components[e]instanceof Lt){var o=SuperMap.Util.copyAttributes(this.components[e].style,t);this.components[e].setStyle(o)}},unhighlight:function(){for(var t in this.components)if(this.components[t]instanceof Lt){var e=SuperMap.Util.copyAttributes(this.components[t].style,this.style);this.components[t].setStyle(e)}this.highlightFlag=!1,this.highlightStyle=null},blinkRoute:function(t,e,o,i){void 0===o&&(o=2),void 0===t&&(t={color:"#ff0000"}),void 0===e&&(e={color:"#0000ff"}),void 0===i&&(i=300);for(var l=[],s=0;s<o;s++)l.push(t),l.push(e);!0===this.highlightFlag&&this.highlightStyle&&null!==this.highlightStyle?l.push(this.highlightStyle):l.push(this.lineStyle);for(var n=this,a=l.length,r=0;r<a;r++)setTimeout(function(){for(var t in n.components)if(n.components[t]instanceof Lt){var e=SuperMap.Util.copyAttributes(n.components[t].style,l[0]);n.components[t].setStyle(e)}l.splice(0,1)},i*r)},applyTextStyle:function(t){var e;for(var o in this.components)(this.components[o]instanceof Bt||this.components[o]instanceof Ft)&&(this.components[o].setStyle(SuperMap.Util.copyAttributes(this.components[o].style,t)),e=this.components[o].style);for(var i=0;i<this.routeNodes.length;i++)for(var l=0;l<this.routeNodes[i].towardNodes.length;l++)this.routeNodes[i].towardNodes[l].style=SuperMap.Util.copyAttributes(this.routeNodes[i].towardNodes[l].style,e)},applyLineStyle:function(t){for(var e in this.components)this.components[e]instanceof Bt||this.components[e]instanceof Ft||this.components[e]instanceof kt||this.components[e].setStyle(SuperMap.Util.copyAttributes(this.components[e].style,t));this.style=SuperMap.Util.copyAttributes(this.style,t)},applyNodeStyle:function(t){for(var e in this.components)this.components[e]instanceof kt&&this.components[e].setStyle(SuperMap.Util.copyAttributes(this.components[e].style,t));for(var o=0;o<this.routeNodes.length;o++)this.routeNodes[o].style=SuperMap.Util.copyAttributes(this.routeNodes[o].style,t)},deleteRouteNode:function(t){if(null!==this._getNodeByUuid(t.id)){var e=this._getNodeFeature(t);e.isSelected&&null!==this._map.getPlotEditControl()&&this._map.getPlotEditControl().unselectFeatures(e),this.arrRoutePts=[];for(let e=0;e<this.routeNodes.length;e++)for(let o=0;o<this.routeNodes[e].towardNodes.length;o++)if(this.routeNodes[e].towardNodes[o].routeNodeId!==t.id);else{this.routeNodes[e].towardNodes.splice(o,1);for(let o=0;o<t.towardNodes.length;o++)t.towardNodes[o].routeNodeId!==this.routeNodes[e].id&&this.routeNodes[e].towardNodes.push(t.towardNodes[o])}for(let e=0;e<this.routeNodes.length;e++)this.routeNodes[e].id===t.id&&this.routeNodes.splice(e,1);this.redraw()}},updateRouteNode:function(t){if(0!==this.arrRoutePts.length){this.arrRoutePts=[];var e=this._getNodeByUuid(t.id);if(null!==e?e=t:this.routeNodes.push(t),this.redraw(),this.highlightFlag){var o=SuperMap.Util.cloneObject(this.highlightStyle);this.highlightStyle&&SuperMap.Util.copyAttributes(o,this.highlightStyle),this.highlight(o)}}else{var i=this._getNodeFeature(t);if(null!==i){i.routeNode=t,i.redraw();for(var l=this._getFeatureStartWith(t),s=0;s<l.length;s++)l[s].latLngs[0]=L.latLng(t.y,t.x),l[s].redraw();for(var n=this._getFeatureEndWith(t),a=0;a<n.length;a++)n[a].latLngs[1]=L.latLng(t.y,t.x),n[a].redraw();return}}},insertRouteNode:function(t,e,o,i,l,s,n,a){if(void 0===i&&(i=!0),this.arrRoutePts=[],i&&o)for(var r=0;r<e.towardNodes.length;r++)e.towardNodes[r].routeNodeId===o.id&&e.towardNodes.splice(r,1);if(null===this._getNodeByUuid(t.id)&&this.routeNodes.push(t),e){var p=!1;for(let o=0;o<e.towardNodes.length;o++)e.towardNodes[o].routeNodeId===t.id&&(p=!0);if(!1===p){let o=new SuperMap.Plot.TowardNode;o.routeNodeId=t.id,void 0!==l&&(o.textContent=l),void 0!==s&&(o.relLineText=s),e.towardNodes.push(o)}}if(o){var u=!1;for(let e=0;e<t.towardNodes.length;e++)t.towardNodes[e].routeNodeId===o.id&&(u=!0);if(!1===u){let e=new SuperMap.Plot.TowardNode;e.routeNodeId=o.id,void 0!==n&&(e.textContent=n),void 0!==a&&(e.relLineText=a),t.towardNodes.push(e)}}this.redraw()},addRouteNode:function(t,e,o,i){if(null===this._getNodeByUuid(t.id)&&(this.arrRoutePts=[],this.routeNodes.push(t)),e){for(var l=!1,s=0;s<e.towardNodes.length;s++)e.towardNodes[s].routeNodeId===t.id&&(l=!0);if(!1===l){var n=new SuperMap.Plot.TowardNode;n.routeNodeId=t.id,void 0!==o&&(n.textContent=o),void 0!==i&&(n.relLineText=i),e.towardNodes.push(n)}}this.redraw()},_addRouteNodeByNode:function(t,e,o){if(null===this._getNodeByUuid(t.id))return null;var i=new SuperMap.Plot.RouteNode;if(i.x=t.x,i.y=t.y,i.name="",i.type=this.nextRouteNodeType,!0===e){let e=new SuperMap.Plot.TowardNode;e.routeNodeId=t.id,i.towardNodes.push(e)}else if(!0===o){let e=new SuperMap.Plot.TowardNode;e.routeNodeId=i.id,t.towardNodes.push(e)}return this.routeNodes.push(i),this.redraw(),this._getNodeFeature(i)},_addRouteNodeByPosWithoutLast:function(t,e){for(var o=0;o<this.routeNodes.length;o++){var i=this.routeNodes[o];if(null!==i&&(i.towardNodes&&null!==i.towardNodes))for(var l=0;l<i.towardNodes.length;l++){var s=this._getNodeByUuid(i.towardNodes[l].routeNodeId);if(null!==s){var n=SuperMap.Plot.PlottingUtil.computePointToLineMinDis({x:t.lng,y:t.lat},[{x:i.x,y:i.y},{x:s.x,y:s.y}]);if(-1!==n.index&&n.minDis<e){var a=new SuperMap.Plot.RouteNode;a.x=t.lng,a.y=t.lat,a.type=this.nextRouteNodeType,a.name="",a.towardNodes.push(i.towardNodes[l]),i.towardNodes.splice(l,1);var r=new SuperMap.Plot.TowardNode;return r.routeNodeId=a.id,i.towardNodes.push(r),this.arrRoutePts=[],this.routeNodes.push(a),this.redraw(),this._getNodeFeature(a)}}}}return null},_addRouteNodeByPos:function(t,e){for(var o=[],i=0;i<this.routeNodes.length;i++){var l=this.routeNodes[i];if(null!==l&&(l.towardNodes&&null!==l.towardNodes)){0===l.towardNodes.length&&o.push(l);for(var s=0;s<l.towardNodes.length;s++){var n=this._getNodeByUuid(l.towardNodes[s].routeNodeId);if(null!==n){var a=SuperMap.Plot.PlottingUtil.computePointToLineMinDis({x:t.lng,y:t.lat},[{x:l.x,y:l.y},{x:n.x,y:n.y}]);if(-1!==a.index&&a.minDis<e){let e=new SuperMap.Plot.RouteNode;e.x=t.lng,e.y=t.lat,e.type=this.nextRouteNodeType,e.name=(this.routeNodes.length+1).toString(),e.towardNodes.push(l.towardNodes[s]),l.towardNodes.splice(s,1);let o=new SuperMap.Plot.TowardNode;return o.routeNodeId=e.id,l.towardNodes.push(o),this.arrRoutePts=[],this.routeNodes.push(e),void this.redraw()}}}}}let r=new SuperMap.Plot.RouteNode;if(r.x=t.lng,r.y=t.lat,0!==this.routeNodes.length?r.type=this.nextRouteNodeType:r.type=SuperMap.Plot.RouteNodeType.AIMING,r.name=(this.routeNodes.length+1).toString(),0!==o.length){let t=new SuperMap.Plot.TowardNode;t.routeNodeId=r.id,o[0].towardNodes.push(t)}this.routeNodes.push(r),this.redraw()},setNextRouteNodeType:function(t){this.nextRouteNodeType=t},_getNodeFeature:function(t){for(var e in this.components)if(this.components[e]instanceof kt&&this.components[e].routeNode.id===t.id)return this.components[e];return null},_getFeatureStartWith:function(t){var e=[];for(var o in this.components)this.components[o]._startRouteNode&&this.components[o]._startRouteNode===t.id&&e.push(this.components[o]);return e},_getFeatureEndWith:function(t){var e=[];for(var o in this.components)this.components[o]._endRouteNode&&this.components[o]._endRouteNode===t.id&&e.push(this.components[o]);return e},_selectNodeLayer:function(t){for(var e in L.Util.isArray(t)||(t=[t]),this.components)if((this.components[e]instanceof kt||this.components[e]instanceof Bt)&&this.components[e].getBounds().contains(t))return this.components[e];return null},redraw:function(){if(this._initRoute(),this.arrRoutePts&&0!==this.arrRoutePts.length)for(let e=0;e<this.arrRoutePts.length;e++){var t=this.arrRoutePts[e];if(t.length<2)continue;let o=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.POLYLINESYMBOL,t,{enableEdit:!1},this.style);o.route=this,this._addComponents(o)}for(let t=0;t<this.routeNodes.length;t++){var e=this.routeNodes[t];if(null!==e&&(e.towardNodes&&null!==e.towardNodes)){for(var o=0;o<e.towardNodes.length;o++){var i=this._getNodeByUuid(e.towardNodes[o].routeNodeId);if(null!==i){var l=[];if(l.push(L.latLng(e.y,e.x)),l.push(L.latLng(i.y,i.x)),0===this.arrRoutePts.length){let t=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.POLYLINESYMBOL,l,{enableEdit:!1},this.style);this._addComponents(t),t._startRouteNode=e.id,t._endRouteNode=i.id}var s=e.towardNodes[o].textContent;if(null!==s){var n=e.towardNodes[o].relLineText;void 0!==n&&null!==n||(n=SuperMap.Plot.RelLineText.ONLEFTLINE);var a=SuperMap.Util.copyAttributes(SuperMap.Plot.PlottingUtil.cloneObject(this.style),e.towardNodes[o].style),r=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.PATHTEXT,l,{relLineText:n,showPathLine:!1,textContent:s,enableEdit:!1},a);this._addComponents(r),r._startRouteNode=e.id,r._endRouteNode=i.id}}}this._createRouteNode(e)}}this._finishRoute()},_initRoute:function(){this.prevRouteNode.length=0,this.prevLiterateSign.length=0;for(let t=0;t<this.components.length;t++)this.components[t]instanceof kt?this.prevRouteNode.push(this.components[t]):this.components[t]instanceof Bt?this.prevLiterateSign.push(this.components[t]):this.components[t]._clearComponents();this.components.length=0},_finishRoute:function(){for(let t=0;t<this.prevRouteNode.length;t++)this.prevRouteNode[t]._clearComponents();for(let t=0;t<this.prevLiterateSign.length;t++)this.prevLiterateSign[t]._clearComponents();this.prevRouteNode=[],this.prevLiterateSign=[]},_createRouteNode:function(t){if(SuperMap.Util.applyDefaults(t.style,this._defaultStyle),null!==t){for(var e=0;e<this.prevRouteNode.length;){if(this.prevRouteNode[e].routeNode.id===t.id)return this.prevRouteNode[e].routeNode=t,this.prevRouteNode[e].redraw(),this.components.push(this.prevRouteNode[e]),void this.prevRouteNode.splice(e,1);e++}var o=SuperMap.Util.copyAttributes(SuperMap.Plot.PlottingUtil.cloneObject(this.style),t.style),i=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.ROUTENODE,[L.latLng(t.y,t.x)],{routeNode:t,route:this},o);this._addComponents(i)}},_addComponents:function(t){ct.prototype._addComponents.call(this,t)},_clearComponents:function(){ct.prototype._clearComponents.call(this)},clone:function(){var t=SuperMap.Plot.PlottingUtil.cloneObject(this.getSymbolData());return t.uuid=SuperMap.Plot.PlottingUtil.generateUuid(),L.supermap.plotting.PlottingObject.createSymbol(this.libID,this.code,null,{symbolData:t,serverUrl:this.serverUrl})},_parseSymbolData:function(){if(gt.prototype._parseSymbolData.call(this),this.symbolData){this.routeNodes=this.symbolData.routeNodes,this.routeNodes=[];for(let o=0;o<this.symbolData.routeNodes.length;o++){var t=new SuperMap.Plot.RouteNode;null===this.symbolData.routeNodes[o].id&&void 0===this.symbolData.routeNodes[o].id||(t.id=this.symbolData.routeNodes[o].id),t.type=this.symbolData.routeNodes[o].type,t.name=this.symbolData.routeNodes[o].name,t.rotate=this.symbolData.routeNodes[o].rotate,this.symbolData.routeNodes[o].hasOwnProperty("positionPoint")?(t.x=this.symbolData.routeNodes[o].positionPoint.x,t.y=this.symbolData.routeNodes[o].positionPoint.y):(t.x=this.symbolData.routeNodes[o].x,t.y=this.symbolData.routeNodes[o].y),t.towardNodes=[];for(let i=0;i<this.symbolData.routeNodes[o].towardNodes.length;i++){var e=new SuperMap.Plot.TowardNode;e.routeNodeId=this.symbolData.routeNodes[o].towardNodes[i].routeNodeId,e.relLineText=this.symbolData.routeNodes[o].towardNodes[i].relLineText,e.textContent=this.symbolData.routeNodes[o].towardNodes[i].textContent,e.offsetX=this.symbolData.routeNodes[o].towardNodes[i].offsetX,e.offsetY=this.symbolData.routeNodes[o].towardNodes[i].offsetY,e.style=this.symbolData.routeNodes[o].towardNodes[i].style,t.towardNodes.push(e)}t.style=this.symbolData.routeNodes[o].style,this.routeNodes.push(t)}this.arrRoutePts=[];for(let t=0;t<this.symbolData.arrRoutePts.length;t++){var o=[];for(let e=0;e<this.symbolData.arrRoutePts[t].length;e++)this.symbolData.arrRoutePts[t][e].hasOwnProperty("x")&&this.symbolData.arrRoutePts[t][e].hasOwnProperty("y")?o.push(L.latLng(this.symbolData.arrRoutePts[t][e].y,this.symbolData.arrRoutePts[t][e].x)):o.push(L.latLng(this.symbolData.arrRoutePts[t][e].lat,this.symbolData.arrRoutePts[t][e].lng));this.arrRoutePts.push(o)}this.lineStyle=this.symbolData.lineStyle}},_setSymbolData:function(){gt.prototype._setSymbolData.call(this),this.symbolData&&(this.symbolData.routeNodes=this.routeNodes,this.symbolData.arrRoutePts=this.arrRoutePts,this.symbolData.lineStyle=this.lineStyle)},_getNodeByUuid:function(t){for(var e=0;e<this.routeNodes.length;e++)if(this.routeNodes[e].id===t)return this.routeNodes[e];return null},_reView:function(){if(this.fromZoom!==this._map.getZoom())for(var t in this.components)this.components[t].symbolType!==SuperMap.Plot.SymbolType.POLYLINESYMBOL&&this.components[t]._reView();this.fromZoom=this._map.getZoom(),this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)}});L.supermap.plotting.Route=Vt;var Yt=Vt.extend({space:null,inner:null,initialize:function(t,e,o,i){Vt.prototype.initialize.call(this,t,e,o,i),this.libID=0,this.code=SuperMap.Plot.SymbolType.AIRROUTE,this.symbolType=SuperMap.Plot.SymbolType.AIRROUTE,this.symbolName="空军航线",null===this.space&&(this.space=20),null===this.inner&&(this.inner=!1)},destroy:function(){this.space=null,this.inner=null,Vt.prototype.destroy.call(this)},redraw:function(){if(this._initRoute(),void 0!==this.arrRoutePts&&null!==this.arrRoutePts)for(let t=0;t<this.arrRoutePts.length;t++){let e=this.arrRoutePts[t];if(!SuperMap.Util.isArray(e)||e.length<2)continue;let o=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.POLYLINESYMBOL,e,{serverUrl:this.serverUrl,enableEdit:!1});this._addComponents(o)}for(let i=0;i<this.routeNodes.length;i++){var t=this.routeNodes[i];if(null!==t&&(t.towardNodes&&null!==t.towardNodes)){for(var e=0;e<t.towardNodes.length;e++)if(t.towardNodes[e]instanceof SuperMap.Plot.TowardNode){var o=this._getNodeByUuid(t.towardNodes[e].routeNodeId);if(null!==o){if(0===this.arrRoutePts.length){let e=[];e.push(L.latLng(t.y,t.x)),e.push(L.latLng(o.y,o.x));let i=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.POLYLINESYMBOL,e,{enableEdit:!1});this._addComponents(i),i._startRouteNode=t.id,i._endRouteNode=o.id}this._createLiterateSign(t,t.towardNodes[e])}}this._createRouteNode(t)}}this._finishRoute()},_createLiterateSign:function(t,e){for(var o=0;o<this.prevLiterateSign.length;){if(this.prevLiterateSign[o]._startRouteNode===t.id&&this.prevLiterateSign[o]._endRouteNode===e.routeNodeId)return this.prevLiterateSign[o].startRouteNode=t,this.prevLiterateSign[o].towardNode=e,this.prevLiterateSign[o].redraw(),this.components.push(this.prevLiterateSign[o]),void this.prevLiterateSign.splice(o,1);o++}if(null!==e.textContent&&0!==e.textContent.length){var i=SuperMap.Util.copyAttributes(SuperMap.Plot.PlottingUtil.cloneObject(this.style),e.style),l=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.LITERATESIGN,null,{startRouteNode:t,towardNode:e,route:this,inner:this.inner,space:this.space},i);this._addComponents(l),l._startRouteNode=t.id,l._endRouteNode=e.routeNodeId}}}),zt=function(t,e,o,i){return new Yt(t,e,o,i)};L.supermap.plotting.airRoute=zt,L.supermap.plotting.AirRoute=Yt;var Gt=Vt.extend({initialize:function(t,e,o,i){this.libID=0,this.code=SuperMap.Plot.SymbolType.MISSILEROUTE,this.symbolType=SuperMap.Plot.SymbolType.MISSILEROUTE,this.symbolName="导弹航线",Vt.prototype.initialize.call(this,t,e,o,i)}}),Wt=function(t,e,o,i){return new Gt(t,e,o,i)};L.supermap.plotting.missileRoute=Wt,L.supermap.plotting.MissileRoute=Gt;var jt=Vt.extend({initialize:function(t,e,o,i){this.libID=0,this.code=SuperMap.Plot.SymbolType.NAVYROUTE,this.symbolType=SuperMap.Plot.SymbolType.NAVYROUTE,this.symbolName="海军航线",Vt.prototype.initialize.call(this,t,e,o,i)}}),Xt=function(t,e,o,i){return new jt(t,e,o,i)};L.supermap.plotting.navyRoute=Xt,L.supermap.plotting.NavyRoute=jt;var Ht=mt.extend({initialize:function(t,e,o,i){mt.prototype.initialize.call(this,t,e,o,i),this.libID=0,this.code=SuperMap.Plot.SymbolType.INTERFERENCEBEAM,this.symbolType=SuperMap.Plot.SymbolType.INTERFERENCEBEAM,this.symbolName="干扰波束",this.minEditPts=3,this.maxEditPts=9999},destroy:function(){mt.prototype.destroy.apply(this,arguments)},_calculateParts:function(){null!==this.getLatLngs()&&this.getLatLngs().length>=this.minEditPts&&this._createAndDrawLayer(32,this.latLngs,this.style,"")},move:function(t,e){L.Util.moveLatLngs(this.getLatLngs(),t,e);for(var o=0,i=this.avoidRegions.length;o<i;o++)this.avoidRegions[o].move(t,e);this.redraw()},setRotate:function(t){for(var e in this.dRotate=t,null===this.anchorPoint&&(this.anchorPoint=this.getBounds().getCenter()),this.components)L.Util.rotateLatLngs(this.components[e].getLatLngs(),this.anchorPoint,t),this.components[e].setLatLngs(this.components[e].getLatLngs());for(var o=0,i=this.avoidRegions.length;o<i;o++)this.avoidRegions[o].rotate(this.dRotate,this.anchorPoint)},_reView:function(){}}),Zt=function(t,e,o,i){return new Ht(t,e,o,i)};L.supermap.plotting.interferenceBeam=Zt,L.supermap.plotting.InterferenceBeam=Ht;var Jt=mt.extend({orbitPoints:[],visible:null,timeWindows:null,setVisible:function(t){this.visible!==t&&(this.visible=t,this.redraw(),null!==this._map.getPlotEditControl()&&this.isSelected&&this.fire(SuperMap.Plot.Event.reseteditmarkersvalues))},getBounds:function(){var t=this;return t._bounds=new L.LatLngBounds,t.components.map(function(e){return e.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?t._bounds.extend(e.getBoundsWithText()):t._bounds.extend(e.getBounds()),e}),t._bounds},getVisible:function(){return this.visible},initialize:function(t,e,o,i){this.libID=0,this.code=SuperMap.Plot.SymbolType.SATELLITE,this.symbolType=SuperMap.Plot.SymbolType.SATELLITE,this.symbolName="卫星",null===this.visible&&(this.visible=!0),null===this.timeWindows&&(this.timeWindows=[]),0===this.orbitPoints.length&&(this.orbitPoints=[]),this.scaleValues||(this.scaleValues=[]),mt.prototype.initialize.call(this,t,e,o,i)},_calculateParts:function(){if(null!==this.orbitPoints&&this.visible){if(null===this.latLngs||0===this.latLngs.length)this.latLngs=L.Util.superMapPointsToLatLngs(this.orbitPoints);else for(var t=0,e=this.latLngs.length;t<e;t++)this.orbitPoints[t].x=this.latLngs[t].lng,this.orbitPoints[t].y=this.latLngs[t].lat;this._createAndDrawLayer(24,L.Util.cloneLatLngs(this.latLngs),this.style,"")}0===this.scaleValues.length&&this.scaleValues.push(.5);var o=L.Util.latLngsToSuperMapPoints(this.latLngs),i=SuperMap.Plot.PlottingUtil.polylineDistance(o),l=SuperMap.Plot.PlottingUtil.findPointInPolyLine(o,i*this.scaleValues[0]).pt.clone(),s=Math.floor(this.orbitPoints.length/2),n=new SuperMap.Geometry.Point(this.orbitPoints[s].x,this.orbitPoints[s].y),a=SuperMap.Plot.PlottingUtil.radian(n,new SuperMap.Geometry.Point(this.orbitPoints[s-1].x,this.orbitPoints[s-1].y));this.subSymbols[0].symbolData.dRotate=180*a/Math.PI,this.subSymbols[0].symbolData.textContent=this.textContent,this.subSymbols[0].symbolData.annotationPosition=7;var r={symbolData:SuperMap.Util.cloneObject(this.subSymbols[0].symbolData),serverUrl:this.serverUrl,enableEdit:!1,style:this.style,scaleByMap:!0},p=SuperMap.Plot.PlottingUtil.cloneObject(this.style),u=L.supermap.plotting.PlottingObject.createSymbol(this.subSymbols[0].libID,this.subSymbols[0].code,[new L.latLng(l.y,l.x)],r,p);this._addComponents(u),u.isEdit=!0,this.scalePoints=[];var h=new L.latLng(l.y,l.x);h.isScalePoint=!0,h.tag=0,this.scalePoints.push(h)},move:function(t,e){L.Util.moveLatLngs(this.getLatLngs(),t,e);for(let o=0,i=this.orbitPoints.length;o<i;o++)this.orbitPoints[o].x+=e,this.orbitPoints[o].y+=t;for(let t=0,e=this.timeWindows.length;t<e;t++){var o=this.timeWindows[t];null!==o&&o.redraw()}if(0!==this.avoidRegions.length)for(var i=0,l=this.avoidRegions.length;i<l;i++)L.Util.moveLatLngs(this.avoidRegions[i].getLatLngs(),t,e);if(!1===this.visible)for(let o=0;o<this.components.length;o++)this.components[o].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&this.components[o].move(t,e);else this.redraw()},_resizeLatLngs:function(t,e,o,i){mt.prototype._resizeLatLngs.call(this,t,e,o,i);for(let t=0,e=this.orbitPoints.length;t<e;t++)this.orbitPoints[t].x=this.latLngs[t].lng,this.orbitPoints[t].y=this.latLngs[t].lat;for(let t=0,e=this.timeWindows.length;t<e;t++){var l=this.timeWindows[t];null!==l&&l.redraw()}},setRotate:function(t){this.dRotate=t,null===this.anchorPoint&&(this.anchorPoint=this.getBounds().getCenter());for(var e=0,o=this.avoidRegions.length;e<o;e++)this.avoidRegions[e].rotate(t,this.anchorPoint);mt.prototype._rotate.call(this,t,this.anchorPoint);for(let t=0,e=this.orbitPoints.length;t<e;t++)this.orbitPoints[t].x=this.latLngs[t].lng,this.orbitPoints[t].y=this.latLngs[t].lat;for(let t=0;t<this.timeWindows.length;t++){var i=this.timeWindows[t];null!==i&&i.redraw()}this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},_reView:function(){for(var t=0,e=this.components.length;t<e;t++)this.components[t].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&(this.components[t]._reView(),this.components[t]._handleAnnotation(),this.subSymbols[0].symbolData=SuperMap.Util.cloneObject(this.components[t].getSymbolData()))},_modifyPoint:function(t,e){if(e.isScalePoint){if(0!==t)return;var o=L.Util.latLngsToSuperMapPoints(this.getLatLngs()),i=L.Util.latLngsToSuperMapPoints(e),l=SuperMap.Plot.PlottingUtil.clonePoints(o);if((l=SuperMap.Plot.PlottingUtil.clearSamePts(l)).length<this.minEditPts)return;var s=SuperMap.Plot.PlottingUtil.generateBeizerPointsNoCtrlPt(l);s=SuperMap.Plot.PlottingUtil.clearSamePts(s);var n,a=SuperMap.Plot.PlottingUtil.polylineDistance(s),r=SuperMap.Plot.PlottingUtil.distance(s[0],i[0]);for(let t=0;t<s.length;t++)r>SuperMap.Plot.PlottingUtil.distance(s[t],i[0])&&(r=SuperMap.Plot.PlottingUtil.distance(s[t],i[0]),n=t);var p=0;0===n&&(n=1);for(let t=0;t<n;t++)p+=SuperMap.Plot.PlottingUtil.distance(s[t],s[t+1]);this.scaleValues[0]=p/a}this.redraw()}}),qt=function(t,e,o,i){return new Jt(t,e,o,i)};L.supermap.plotting.satellite=qt,L.supermap.plotting.Satellite=Jt;var Kt=mt.extend({timeWindows:[],initialize:function(t,e,o,i){this.libID=0,this.code=SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS,this.symbolType=SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS,this.symbolName="卫星时间窗",mt.prototype.initialize.call(this,t,e,o,i),this.scaleValues||(this.scaleValues=[])},_calculateParts:function(){if(this.associatedUuid){var t=this._map.getFeatureByUuid(this.associatedUuid);if(null===t||null===t.orbitPoints)return}var e=!1;for(let o=0;o<t.timeWindows.length;o++)if(this===t.timeWindows[o]){e=!0;break}if(e||t.timeWindows.push(this),this.type)for(let t=0;t<this.timeWindows.length;t++)this.timeWindows[t].type=this.type;if(this.scalePoints=[],null!==this.timeWindows){var o=t.orbitPoints;for(let e=0;e<this.timeWindows.length;e++){var i,l;if("Number"===this.timeWindows[e].type){for(let t=0,s=o.length;t<s;t++)if(this.timeWindows[e].startOrbitPoint===o[t].number&&(i=t),this.timeWindows[e].endOrbitPoint===o[t].number){l=t;break}}else if("Time"===this.timeWindows[e].type)for(let t=0;t<o.length;t++)if(this.timeWindows[e].startOrbitPoint===o[t].time&&(i=t),this.timeWindows[e].endOrbitPoint===o[t].time){l=t;break}var s=[];for(let t=i;t<=l;t++)s.push(new L.latLng(o[t].y,o[t].x));s.length>1&&(this._createAndDrawLayer(24,s,{surroundLineFlag:!1,lineWidthLimit:!0,weight:4*t.style.weight+this.style.weight}),s[0].isScalePoint=!0,s[0].tag=2*e,this.scalePoints.push(s[0]),s[s.length-1].isScalePoint=!0,s[s.length-1].tag=2*e+1,this.scalePoints.push(s[s.length-1]))}}},calculateBounds:function(){this.bounds=null;var t=new L.Bounds,e=this.components;if(e)for(var o=0;o<e.length;o++)t.extend(e[o].getBounds());null!==t.left&&null!==t.bottom&&null!==t.right&&null!==t.top&&this.setBounds(t)},move:function(){},_modifyPoint:function(t,e){if(e.isScalePoint){var o=this._map.getFeatureByUuid(this.associatedUuid);if(!o)return;var i=o.getLatLngs(),l=o.orbitPoints,s=L.Util.latLngsToSuperMapPoints(e),n=L.Util.latLngsToSuperMapPoints(i);if(t%2==0){var a;t/=2,a=this.timeWindows[t].endOrbitPoint-this.timeWindows[t].startOrbitPoint;var r=SuperMap.Plot.PlottingUtil.distance(s[0],n[0]),p=0;for(let t=0;t<i.length-a;t++)r>=SuperMap.Plot.PlottingUtil.distance(s[0],n[t])&&(r=SuperMap.Plot.PlottingUtil.distance(s[0],n[t]),p=t);for(let e=0;e<this.timeWindows.length;e++)"Number"===this.timeWindows[e].type?(this.timeWindows[t].startOrbitPoint=p+l[0].number,this.timeWindows[t].endOrbitPoint=p+a+l[0].number):"Time"===this.timeWindows[e].type&&(this.timeWindows[t].startOrbitPoint=p+l[0].time,this.timeWindows[t].endOrbitPoint=p+a+l[0].time)}else{t=(t-1)/2;var u=SuperMap.Plot.PlottingUtil.distance(s[0],n[n.length-1]);for(let t=0;t<i.length;t++)u>=SuperMap.Plot.PlottingUtil.distance(s[0],n[t])&&(u=SuperMap.Plot.PlottingUtil.distance(s[0],n[t]),p=t);for(let e=0;e<this.timeWindows.length;e++)"Number"===this.timeWindows[e].type?(this.timeWindows[t].endOrbitPoint=p+l[0].number,this.timeWindows[t].endOrbitPoint<=this.timeWindows[t].startOrbitPoint&&(this.timeWindows[t].endOrbitPoint=this.timeWindows[t].startOrbitPoint+1)):"Time"===this.timeWindows[e].type&&(this.timeWindows[t].endOrbitPoint=p+l[0].time,this.timeWindows[t].endOrbitPoint<=this.timeWindows[t].startOrbitPoint&&(this.timeWindows[t].endOrbitPoint=this.timeWindows[t].startOrbitPoint+1))}}this.redraw()}}),Qt=function(t,e,o,i){return new Kt(t,e,o,i)};L.supermap.plotting.satelliteTimeWindows=Qt,L.supermap.plotting.SatelliteTimeWindows=Kt;var $t=mt.extend({symbolTexts:[],addFrame:!1,getFrame:function(){return this.addFrame},setFrame:function(t){this.addFrame!==t&&(this.addFrame=t,this.redraw())},updateSymbolText:function(t,e){this.symbolTexts.length>e&&(this.symbolTexts[e]=t,this.redraw())},removeSymbolTextsFromDotSymbol:function(t){if(t&&"string"==typeof t){var e=this._map.getFeatureByUuid(t);if(e)for(var o=0,i=e.geoSymbolTexts.length;o<i;o++)if(this===e.geoSymbolTexts[o]){e.geoSymbolTexts.splice(o,1);break}}},initialize:function(t,e,o,i){this.libID=0,this.code=SuperMap.Plot.SymbolType.SYMBOLTEXT,this.symbolType=SuperMap.Plot.SymbolType.SYMBOLTEXT,this.symbolName="对象标注",mt.prototype.initialize.call(this,t,e,o,i),this.style.sizeFixed=!1},_calculateParts:function(){if(!("none"===this.style.display||null!=this.layer&&"function"==typeof this.layer.getVisibility&&!1===this.layer.getVisibility()||this.symbolTexts.length<=0)){var t=this._map.getFeatureByUuid(this.associatedUuid);if(null!=t&&"none"!==t.style.display){this.latLngs=[];var e=[],o=this.symbolTexts,i=!1,l=t.geoSymbolTexts;for(let t=0,e=l.length;t<e;t++)if(this===l[t]){i=!0;break}i||l.push(this);var s={surroundLineFlag:!1,lineColorLimit:!0,fillColorLimit:!0,lineWidthLimit:!0,lineTypeLimit:!0,fontColorLimit:!0,fontSizeLimit:!0,fillLimit:!0},n=t.getBounds();if((null==n||!n.isValid())&&null!=t.graphic&&null!=t.graphic.layer&&null!=t.graphic.getImage()){t.graphic._project();var a=t.graphic._pxBounds;null!=a&&a.isValid()&&(n.extend(this._map.layerPointToLatLng(a.min)),n.extend(this._map.layerPointToLatLng(a.max)))}if(n&&n.isValid()){for(let i=0,l=o.length;i<l;i++){this._mergeStyleToSymbolText(o[i]);var r=o[i].textContent;if(null!==r&&0!==r.length){this._calculateSize(t,o[i]);var p=this.addFrame||o[i].border;o[i].textPosition=void 0===o[i].textPosition?0:o[i].textPosition;var u,h,g,c=0,y=0;p&&(c=SuperMap.Plot.PlottingUtil.getTextWidth(o[i].style,o[i].textContent)+2*o[i].paddingX,y=parseInt(o[i].style.fontSize)+2*o[i].paddingY);var P=L.point(0,0),d=L.point(0,0);switch(o[i].textPosition){case SuperMap.Plot.AnnoPosition.LEFTTOP:o[i].style.labelAlign="rb",u=L.latLng(n.getNorth(),n.getWest()),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x,P.y=h.y,d.x=h.x-c,d.y=h.y-y);break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:o[i].style.labelAlign="rt",u=L.latLng(n.getSouth(),n.getWest()),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x,P.y=h.y,d.x=h.x-c,d.y=h.y+y);break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:o[i].style.labelAlign="lb",u=L.latLng(n.getNorth(),n.getEast()),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x,P.y=h.y,d.x=h.x+c,d.y=h.y-y);break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:o[i].style.labelAlign="lt",u=L.latLng(n.getSouth(),n.getEast()),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x,P.y=h.y,d.x=h.x+c,d.y=h.y+y);break;case SuperMap.Plot.AnnoPosition.TOP:o[i].style.labelAlign="cb",u=L.latLng(n.getNorth(),(n.getWest()+n.getEast())/2),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x-c/2,P.y=h.y,d.x=h.x+c/2,d.y=h.y-y);break;case SuperMap.Plot.AnnoPosition.BOTTOM:o[i].style.labelAlign="ct",u=L.latLng(n.getSouth(),(n.getWest()+n.getEast())/2),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x-c/2,P.y=h.y,d.x=h.x+c/2,d.y=h.y+y);break;case SuperMap.Plot.AnnoPosition.LEFT:o[i].style.labelAlign="rm",u=L.latLng((n.getSouth()+n.getNorth())/2,n.getWest()),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x,P.y=h.y+y/2,d.x=h.x-c,d.y=h.y-y/2);break;case SuperMap.Plot.AnnoPosition.RIGHT:o[i].style.labelAlign="lm",u=L.latLng((n.getSouth()+n.getNorth())/2,n.getEast()),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,!0===p&&(P.x=h.x,P.y=h.y+y/2,d.x=h.x+c,d.y=h.y-y/2);break;case SuperMap.Plot.AnnoPosition.ANCHOR:o[i].style.labelAlign="lm",u=t.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?t.latLngs[0]:n.getCenter(),(h=this._map.latLngToLayerPoint(u)).x+=o[i].offsetX,h.y+=o[i].offsetY,o[i].offsetX>0?(o[i].style.labelAlign="lm",!0===p&&(P.x=h.x,P.y=h.y+y/2,d.x=h.x+c,d.y=h.y-y/2)):(o[i].style.labelAlign="rm",!0===p&&(P.x=h.x,P.y=h.y+y/2,d.x=h.x-c,d.y=h.y-y/2))}var S=this._map.layerPointToLatLng(h);if(0!==o[i].offsetX||0!==o[i].offsetY){var f={};f.positionPoints=[S,u],f.style={},f.type=SuperMap.Plot.SymbolType.POLYLINESYMBOL,e.push(f)}var m=SuperMap.Util.copyAttributes(s,this.symbolTexts[i].style);if(p){var M=this._map.layerPointToLatLng(P),b=this._map.layerPointToLatLng(d),A={};A.positionPoints=[M,b],A.style=SuperMap.Util.cloneObject(m),A.type=SuperMap.Plot.SymbolType.RECTANGLESYMBOL,e.push(A),g=L.latLng((b.lat-M.lat)/2+M.lat,(M.lng-b.lng)/2+b.lng)}else g=S;var T={};T.positionPoints=g,T.type=SuperMap.Plot.SymbolType.TEXTSYMBOL,T.style=SuperMap.Util.cloneObject(m),T.textContent=o[i].textContent,p&&(T.style.labelAlign="cm"),e.push(T),this.latLngs.push(S)}}for(var v,_=0;_<e.length;_++)v=L.Util.isArray(e[_].positionPoints)?e[_].positionPoints:[e[_].positionPoints],this._createAndDrawLayer(e[_].type,v,e[_].style,e[_].textContent)}}}},_calculatePositionPoints:function(){this.latLngs=[];var t=this.symbolTexts;if(t.length>0){var e=this._map.getFeatureByUuid(this.associatedUuid);if(null===e||void 0===e)return;var o=e.getBounds();if((null==o||!o.isValid())&&null!=e.graphic&&null!=e.graphic.layer&&null!=e.graphic.getImage()){e.graphic._project();var i=e.graphic._pxBounds;null!=i&&i.isValid()&&(o.extend(this._map.layerPointToLatLng(i.min)),o.extend(this._map.layerPointToLatLng(i.max)))}if(!o||!o.isValid())return;for(let i=0,a=t.length;i<a;i++){var l=t[i].textContent;if(null!==l&&0!==l.length){var s;switch(t[i].textPosition=void 0===t[i].textPosition?0:t[i].textPosition,t[i].textPosition){case SuperMap.Plot.AnnoPosition.LEFTTOP:s=L.latLng(o.getNorth(),o.getWest());break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:s=L.latLng(o.getSouth(),o.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:s=L.latLng(o.getNorth(),o.getEast());break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:s=L.latLng(o.getSouth(),o.getEast());break;case SuperMap.Plot.AnnoPosition.TOP:s=L.latLng(o.getNorth(),(o.getWest()+o.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:s=L.latLng(o.getSouth(),(o.getWest()+o.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:s=L.latLng((o.getSouth()+o.getNorth())/2,o.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:s=L.latLng((o.getSouth()+o.getNorth())/2,o.getEast());break;case SuperMap.Plot.AnnoPosition.ANCHOR:t[i].style.labelAlign="lm",s=e.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?e.latLngs[0]:o.getCenter()}var n=this._map.latLngToLayerPoint(s);n.x+=t[i].offsetX,n.y+=t[i].offsetY,this.latLngs.push(this._map.layerPointToLatLng(n))}}}},destroy:function(){this.frame=!1,this.symbolTexts=null,mt.prototype.destroy.call(this)},_mergeStyleToSymbolText:function(t){if(null!==this.components)for(var e in null!==t.style&&void 0!==t.style||(t.style={}),this.style)t.style.hasOwnProperty(e)||(t.style[e]=this.style[e])},_calculateSize:function(t,e){this.scaleByMap=t.scaleByMap,!1===this.scaleByMap||!0===this.style.sizeFixed?this.fromZoom=this._map.getZoom():this.dScale=t.dScale,void 0!==e.prevStrokeWidth&&e.prevStrokeWidth!==e.style.weight&&(e.strokeWidth=e.style.weight,e.prevStrokeWidth=e.style.weight),!0===this.scaleByMap&&!1===this.style.sizeFixed&&(void 0===e.weight&&(e.weight=e.style.weight),this.fromZoom<=this._map.getZoom()&&(e.style.weight=t.style.weight),e.prevStrokeWidth=e.style.weight),void 0!==e.prevFontSize&&e.prevFontSize!==e.style.fontSize&&(e.fontSize=e.style.fontSize/this.dScale,e.prevFontSize=e.style.fontSize),!0===this.scaleByMap&&!1===this.style.sizeFixed&&(void 0===e.fontSize&&(e.fontSize=e.style.fontSize),e.style.fontSize=e.fontSize*this.dScale,e.prevFontSize=e.style.fontSize)},_modifyPoint:function(t,e){this._calculateOffset(t,e),this.redraw()},_calculateOffset:function(t,e){if(t<this.symbolTexts.length){var o=this.symbolTexts[t].textPosition,i=this._map.latLngToLayerPoint(e),l=this._map.getFeatureByUuid(this.associatedUuid);if(null===l||void 0===l)return;var s,n,a=l.getBounds();if((null==a||!a.isValid())&&null!=l.graphic&&null!=l.graphic.layer&&null!=l.graphic.getImage()){l.graphic._project();var r=l.graphic._pxBounds;null!=r&&r.isValid()&&(a.extend(this._map.layerPointToLatLng(r.min)),a.extend(this._map.layerPointToLatLng(r.max)))}if(!a||!a.isValid())return;0===o?(s=L.latLng(a.getNorth(),a.getWest()),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):1===o?(s=L.latLng(a.getSouth(),a.getWest()),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):2===o?(s=L.latLng(a.getNorth(),a.getEast()),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):3===o?(s=L.latLng(a.getSouth(),a.getEast()),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):4===o?(s=L.latLng(a.getNorth(),(a.getWest()+a.getEast())/2),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):5===o?(s=L.latLng(a.getSouth(),(a.getWest()+a.getEast())/2),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):6===o?(s=L.latLng((a.getNorth()+a.getSouth())/2,a.getWest()),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):7===o?(s=L.latLng((a.getNorth()+a.getSouth())/2,a.getEast()),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y):o===SuperMap.Plot.AnnoPosition.ANCHOR&&(s=l.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?l.latLngs[0]:a.getCenter(),n=this._map.latLngToLayerPoint(s),this.symbolTexts[t].offsetX=i.x-n.x,this.symbolTexts[t].offsetY=i.y-n.y)}},_reView:function(){this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},move:function(){},_parseSymbolData:function(){if(mt.prototype._parseSymbolData.call(this),this.symbolData){this.addFrame=this.symbolData.addFrame,this.symbolTexts=[];for(var t=0,e=this.symbolData.symbolTexts.length;t<e;t++){var o=new SuperMap.Plot.GeoSymbolText;o.textContent=this.symbolData.symbolTexts[t].textContent,o.textPosition=this.symbolData.symbolTexts[t].textPosition,o.style=this.symbolData.symbolTexts[t].style,o.offsetX=this.symbolData.symbolTexts[t].offsetX,o.offsetY=this.symbolData.symbolTexts[t].offsetY,this.symbolTexts.push(o)}}},_setSymbolData:function(){mt.prototype._setSymbolData.call(this),this.symbolData&&(this.symbolData.symbolTexts=this.symbolTexts,this.symbolData.addFrame=this.addFrame)},setStyle:function(t){if(t.fontSize&&this.style.fontSize!==t.fontSize||this.style.display!==t.display&&t.display){SuperMap.Util.extend(this.style,t);for(var e=0,o=this.symbolTexts.length;e<o;e++)SuperMap.Util.copyAttributes(this.symbolTexts[e].style,t);this.redraw()}else{SuperMap.Util.extend(this.style,t);for(var i=0;i<this.symbolTexts.length;i++)SuperMap.Util.copyAttributes(this.symbolTexts[i].style,t);for(var l in this.components)delete t.labelAlign,SuperMap.Util.copyAttributes(this.components[l].options,t),this._copyStyleForCell(this.components[l].options,this.style,this.components[l]),this.components[l].setStyle(this.components[l].options)}}}),te=function(t,e,o,i){return new $t(t,e,o,i)};L.supermap.plotting.symbolText=te,L.supermap.plotting.SymbolText=$t;var ee=mt.extend({space:null,offsetX:null,offsetY:null,initialize:function(t,e,o,i){this.minEditPts=1,this.maxEditPts=1,this.libID=0,this.code=SuperMap.Plot.SymbolType.SYMBOLTEXT1,this.symbolType=SuperMap.Plot.SymbolType.SYMBOLTEXT1,this.symbolName="对象标注(带指示线)",null===this.space&&(this.space=10),null===this.offsetX&&(this.offsetX=60),null===this.offsetY&&(this.offsetY=30),mt.prototype.initialize.call(this,t,e,o,i),this.style.sizeFixed=!1},destroy:function(){this.space=null,this.offsetX=null,this.offsetY=null,mt.prototype.destroy.call(this)},removeSymbolTextsFromDotSymbol:function(t){if(t&&"string"==typeof t){var e=this._map.getFeatureByUuid(t);if(e)for(var o=0,i=e.geoSymbolTexts.length;o<i;o++)if(this===e.geoSymbolTexts[o]){e.geoSymbolTexts.splice(o,1);break}}},_calculateParts:function(){if("none"!==this.style.display&&(null==this.layer||"function"!=typeof this.layer.getVisibility||!1!==this.layer.getVisibility())){var t=this._map.getFeatureByUuid(this.associatedUuid);if(null!=t&&"none"!==t.style.display){this.latLngs=[];var e=[],o=!1;for(let e=0;e<t.geoSymbolTexts.length;e++)if(this===t.geoSymbolTexts[e]){o=!0;break}o||t.geoSymbolTexts.push(this),this._calculateSize(t);var i=t.latLngs[0],l=this._map.latLngToLayerPoint(i),s=new SuperMap.Pixel(l.x+this.offsetX,l.y+this.offsetY),n=this._map.layerPointToLatLng(s);0===this.latLngs.length?this.latLngs.push(n):(this.latLngs[0].lng=n.lng,this.latLngs[0].lat=n.lat);var a=L.Util.cloneLatLngs(this.latLngs[0]);a.push(i);var r={style:{surroundLineFlag:!1}};r.style=SuperMap.Util.copyAttributes(r.style,this.style),r.positionPoints=a,r.type=24,e.push(r),SuperMap.Util.isArray(this.textContent)||(this.textContent=[this.textContent]);var p=this.textContent.length,u=this.style.fontSize*p+p+1,h=this._map.latLngToLayerPoint(L.latLng(this.latLngs[0].lat,this.latLngs[0].lng)),g=L.point(h.x,h.y-u/2),c=L.point(h.x,h.y+u/2),y=[this._map.layerPointToLatLng(g),this._map.layerPointToLatLng(c)],P={};P.positionPoints=y,P.style={surroundLineFlag:!1},P.style=SuperMap.Util.copyAttributes(P.style,this.style),P.type=24,e.push(P);var d,S=new SuperMap.Geometry.Point(this.latLngs[0].lng,this.latLngs[0].lat);if(0!==this.textContent.length){var f=t.getBounds(),m=new SuperMap.Geometry.Point((f.getWest()+f.getEast())/2,f.getNorth()),M=new SuperMap.Geometry.Point((f.getWest()+f.getEast())/2,f.getSouth()),b=SuperMap.Plot.PlottingUtil.pointIsRightToLine(m,M,S),A="";for(let t=0;t<this.textContent.length;t++)A+=this.textContent[t],t!==this.textContent.length-1&&(A+="\r\n");var T=null;T=!0===b?L.point(h.x-this.space,h.y):L.point(h.x+this.space,h.y);var v={},_=this._map.layerPointToLatLng(T);v.positionPoints=_,v.type=34,v.textContent=A,v.style={},v.style=SuperMap.Util.copyAttributes(v.style,this.style),v.style.labelAlign=!0===b?"rm":"lm",e.push(v)}for(let t=0;t<e.length;t++)d=L.Util.isArray(e[t].positionPoints)?e[t].positionPoints:[e[t].positionPoints],this._createAndDrawLayer(e[t].type,d,e[t].style,e[t].textContent)}}},_calculateSize:function(t){this.scaleByMap=t.scaleByMap,!1===this.scaleByMap||!0===this.style.sizeFixed?this.fromZoom=this._map.getZoom():this.fromZoom<=this._map.getZoom()&&(this.dScale=t.dScale),void 0!==this.prevOffsetX&&this.prevOffsetX!==this.offsetX&&(this.scaleBeforeOffsetX=this.offsetX/this.dScale,this.prevOffsetX=this.offsetX),!0===this.scaleByMap&&(void 0===this.scaleBeforeOffsetX&&(this.scaleBeforeOffsetX=this.offsetX),this.offsetX=this.scaleBeforeOffsetX*this.dScale,this.prevOffsetX=this.offsetX),void 0!==this.prevOffsetY&&this.prevOffsetY!==this.offsetY&&(this.scaleBeforeOffsetY=this.offsetY/this.dScale,this.prevOffsetY=this.offsetY),!0===this.scaleByMap&&(void 0===this.scaleBeforeOffsetY&&(this.scaleBeforeOffsetY=this.offsetY),this.offsetY=this.scaleBeforeOffsetY*this.dScale,this.prevOffsetY=this.offsetY),void 0!==this.prevStrokeWidth&&this.prevStrokeWidth!==this.style.weight&&(this.strokeWidth=this.style.weight,this.prevStrokeWidth=this.style.weight),!0===this.scaleByMap&&(void 0===this.weight&&(this.weight=this.style.weight),this.fromZoom<=this._map.getZoom()?this.style.weight=t.style.weight:this.style.weight=this.weight,this.prevStrokeWidth=this.style.weight),void 0!==this.prevFontSize&&this.prevFontSize!==this.style.fontSize&&(this.fontSize=this.style.fontSize/this.dScale,this.prevFontSize=this.style.fontSize),!0===this.scaleByMap&&(void 0===this.fontSize&&(this.fontSize=this.style.fontSize),this.style.fontSize=this.fontSize*this.dScale,this.prevFontSize=this.style.fontSize)},_reView:function(){this.fire(SuperMap.Plot.Event.reseteditmarkersvalues)},_modifyPoint:function(){var t=this._map.getFeatureByUuid(this.associatedUuid);if(null!==t){var e=this._map.latLngToLayerPoint(L.latLng(t.latLngs[0].lat,t.latLngs[0].lng)),o=this._map.latLngToLayerPoint(L.latLng(this.latLngs[0].lat,this.latLngs[0].lng));this.offsetX=o.x-e.x,this.offsetY=o.y-e.y,this.redraw()}},_parseSymbolData:function(){mt.prototype._parseSymbolData.call(this),this.symbolData&&(void 0!==this.symbolData.space&&(this.space=this.symbolData.space),void 0!==this.symbolData.offsetX&&(this.offsetX=this.symbolData.offsetX),void 0!==this.symbolData.offsetY&&(this.offsetY=this.symbolData.offsetY),void 0!==this.symbolData.scaleBeforeOffsetX&&(this.scaleBeforeOffsetX=this.symbolData.scaleBeforeOffsetX),void 0!==this.symbolData.scaleBeforeOffsetY&&(this.scaleBeforeOffsetY=this.symbolData.scaleBeforeOffsetY))},_setSymbolData:function(){mt.prototype._setSymbolData.call(this),this.symbolData&&(this.symbolData.space=this.space,this.symbolData.offsetX=this.offsetX,this.symbolData.offsetY=this.offsetY,void 0!==this.scaleBeforeOffsetX&&(this.symbolData.scaleBeforeOffsetX=this.scaleBeforeOffsetX),void 0!==this.scaleBeforeOffsetY&&(this.symbolData.scaleBeforeOffsetY=this.scaleBeforeOffsetY))}}),oe=function(t,e,o,i){return new ee(t,e,o,i)};L.supermap.plotting.symbolText1=oe,L.supermap.plotting.SymbolText1=ee;var ie=L.Path.extend({serverUrl:null,features:null,isLocked:!1,isEditable:!0,isSelected:!0,visibility:!0,cacheImages:null,graphics:null,_editLayer:null,options:{renderer:L.canvas()},getSelected:function(){return this.isSelected},setSelected:function(t){this.isSelected!==t&&(this.isSelected=t,this._map&&this._map.getPlotEditControl()&&(this.isSelected?this._map.getPlotEditControl().enableEditFeatures(this.features):this._map.getPlotEditControl().disableEditFeatures(this.features)))},getEditable:function(){return this.isEditable},setEditable:function(t){if(this.isEditable!==t&&(this.isEditable=t,this._map&&this._map.getPlotEditControl())){var e=this._map.getPlotEditControl().getSelectedFeatures();this._map.getPlotEditControl().unselectFeatures(this.features),this._map.getPlotEditControl().selectFeatures(e)}},getLocked:function(){return this.isLocked},setLocked:function(t){if(this.isLocked!==t&&(this.isLocked=t,this._map&&this._map.getPlotEditControl())){var e=this._map.getPlotEditControl().getSelectedFeatures();this._map.getPlotEditControl().unselectFeatures(this.features),this._map.getPlotEditControl().selectFeatures(e)}},getVisibility:function(){return this.visibility},setVisibility:function(t){this.visibility!==t&&(this.visibility=t,this.visibility?this._renderer._container.style.display="block":this._renderer._container.style.display="none")},initialize:function(t,e){this._editLayer=new pe("temportary"),e=e||{},L.Util.setOptions(this,e),this.cacheImages={},this.graphics=[],this.selectedFeatures=[],this.name=t,this.features=[]},getEvents:function(){var t={click:this._handleClick,mousemove:this._onMapMouseMove};return this._map._zoomAnimated&&(t.zoomanim=this._zoomAnim),t},_zoomAnim:function(t){var e=this._map.getZoomScale(t.zoom),o=this._map._getCenterOffset(t.center)._multiplyBy(-e).subtract(this._map._getMapPanePos());L.DomUtil.setTransform?L.DomUtil.setTransform(this._canvas,o,e):L.DomUtil.setPosition(this._canvas,o)},_onMapMouseMove:function(t){var e=this._getGraphicsInBounds();if(0!==e.length)for(var o=0,i=e.length;o<i;o++){if(e[o]._containsPoint(this._map.latLngToLayerPoint(t.latlng))){this._editLayer._renderer._container.style.cursor=e[o].feature.isSelected?"move":"pointer";break}this._editLayer._renderer._container.style.cursor=""}},isGraphic:function(t){return t===SuperMap.Plot.SymbolType.DOTSYMBOL},isSupportType:function(t){return t===SuperMap.Plot.SymbolType.DOTSYMBOL},getFeatureByUuid:function(t){for(var e=0;e<this.features.length;e++)if(this.features[e].uuid===t)return this.features[e];return null},getFeatures:function(){return this.features.slice()},addFeatures:function(t){L.Util.isArray(t)||(t=[t]);for(let i=0,l=t.length;i<l;i++){var e=t[i];if(this.isSupportType(e.symbolType)){if(null!=this._map.getFeatureByUuid(e.uuid)&&(e.uuid=SuperMap.Plot.PlottingUtil.generateUuid()),e.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL){var o=new he(e);o.onAdd(this),this.graphics.push(o)}this.features.push(e)}}this._update()},removeFeatures:function(t){var e=[];SuperMap.Util.isArray(t)||(t=[t]);for(let i=0,l=t.length;i<l;i++){var o=t[i];-1!=SuperMap.Util.indexOf(this.features,o)&&e.push(o.graphic)}this.fire(SuperMap.Plot.Event.beforefeaturesremoved,{features:t}),this.removeGraphics(e),this.fire(SuperMap.Plot.Event.featuresremoved,{features:t})},removeAllFeatures:function(){this.fire(SuperMap.Plot.Event.beforefeaturesremoved,{features:this.features}),this.removeAllGraphics(),this.fire(SuperMap.Plot.Event.featuresremoved,{features:this.features})},updateGraphics:function(t){L.Util.isArray(t)||(t=[t]);t.map(function(t){return t.update(),t}),this._update()},removeGraphics:function(t){L.Util.isArray(t)||(t=[t]);var e=this;t.map(function(t){let o=SuperMap.Util.indexOf(e.selectedFeatures,t.feature);-1!==o&&(e._editLayer.removeFeatures(t.feature),e.selectedFeatures.splice(o,1)),e._map&&e._map.getPlotEditControl()&&e._map.getPlotEditControl().disableEditFeatures(t.feature);let i=t.getUuid();return e.cacheImages[i]&&0==--e.cacheImages[i].imgCount&&delete e.cacheImages[i],-1!==(o=SuperMap.Util.indexOf(e.graphics,t))&&e.graphics.splice(o,1),t.onRemove(),-1!==(o=SuperMap.Util.indexOf(e.features,t.feature))&&e.features.splice(o,1),t}),this._update()},removeAllGraphics:function(){this.removeGraphics(this.graphics.slice()),this.selectedFeatures=[],this.graphics=[],this.features=[],this.cacheImages={}},redraw:function(){this._update()},_generateFromFeature:function(t){var e="";return t.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?e=t.libID.toString()+"_"+t.code.toString()+"_"+Math.round(t.symbolSize.w).toString()+"_"+Math.round(t.symbolSize.h).toString()+"_"+t.textContent+"_"+t.annotationPosition.toString()+"_"+t.dRotate.toString()+this._styleToString(t.style)+"_"+t.textDisplay.toString()+"_"+t.surroundLineType.toString():t.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT?(e=t.libID.toString()+"_"+t.code.toString()+"_"+t.associatedUuid+"_"+t.addFrame.toString(),1===t.symbolTexts.length&&(null!=t.symbolTexts[0].textContent&&(e+="_"+t.symbolTexts[0].textContent),null!=t.symbolTexts[0].textPosition&&(e+="_"+t.symbolTexts[0].textPosition.toString()),null!=t.symbolTexts[0].offsetX&&(e+="_"+t.symbolTexts[0].offsetX.toString()),null!=t.symbolTexts[0].offsetY&&(e+="_"+t.symbolTexts[0].offsetY.toString()),null!=t.symbolTexts[0].style&&(e+=this._styleToString(t.symbolTexts[0].style)))):t.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1&&(e=t.libID.toString()+"_"+t.code.toString()+"_"+t.associatedUuid+"_"+t.textContent+"_"+t.space.toString()+"_"+t.offsetX.toString()+"_"+t.offsetY.toString()+this._styleToString(t.style)),e},_styleToString:function(t){var e="";return null!=t.fontFamily&&(e+="_"+t.fontFamily),null!=t.fontSize&&(e+="_"+t.fontSize),null!=t.fontColor&&(e+="_"+t.fontColor),null!=t.fontStroke&&(e+="_"+t.fontStroke),null!=t.fontStrokeColor&&(e+="_"+t.fontStrokeColor),null!=t.fontStrokeWidth&&(e+="_"+t.fontStrokeWidth),null!=t.fontBackground&&(e+="_"+t.fontBackground),null!=t.fontBackgroundColor&&(e+="_"+t.fontBackgroundColor),null!=t.fontShadow&&(e+="_"+t.fontShadow),null!=t.fontShadowColor&&(e+="_"+t.fontShadowColor),null!=t.fontShadowOffsetX&&(e+="_"+t.fontShadowOffsetX),null!=t.fontShadowOffsetY&&(e+="_"+t.fontShadowOffsetY),null!=t.color&&(e+="_"+t.color),null!=t.weight&&(e+="_"+t.weight),null!=t.opacity&&(e+="_"+t.opacity),null!=t.lineSymbolID&&(e+="_"+t.lineSymbolID),null!=t.dashArray&&(e+="_"+t.dashArray),null!=t.fill&&(e+="_"+t.fill),null!=t.fillSymbolID&&(e+="_"+t.fillSymbolID),null!=t.fillColor&&(e+="_"+t.fillColor),null!=t.fillOpacity&&(e+="_"+t.fillOpacity),null!=t.fillBackColor&&(e+="_"+t.fillBackColor),null!=t.fillBackOpacity&&(e+="_"+t.fillBackOpacity),null!=t.fillGradientMode&&(e+="_"+t.fillGradientMode),e},onAdd:function(){this._canvas=document.createElement("canvas");var t=this._map.getPixelBounds().getSize().x,e=this._map.getPixelBounds().getSize().y;this._canvas.width=t,this._canvas.height=e,this._ctx=this._canvas.getContext("2d"),L.Path.prototype.onAdd.call(this),this._map.addLayer(this._editLayer)},onRemove:function(){L.Path.prototype.onRemove.call(this),this._map.removeLayer(this._editLayer)},_update:function(){this._map&&this.getVisibility()&&this._updatePath()},_containsPoint:function(){return!1},_updatePath:function(){this._renderer._ctx.clearRect(this._renderer._bounds.min.x,this._renderer._bounds.min.y,this._renderer._ctx.canvas.width,this._renderer._ctx.canvas.height),this._renderer._drawPlottingGraphics(this._getGraphicsInBounds())},_project:function(){var t=this;t._pxBounds=L.bounds(L.point(0,0),L.point(0,0)),t._getGraphicsInBounds().map(function(e){return e._project(),t._pxBounds.extend(e._pxBounds.min),t._pxBounds.extend(e._pxBounds.max),e})},_getGraphicsInBounds:function(){var t=[],e=this._map.getBounds();return this.graphics.map(function(o){return"none"!==o.feature.style.display&&e.contains(o.getLatLng())&&(null!=o.getImage()&&o.getUuid()===o.getImage().generateUuidFromFeature()||o.update(),t.push(o)),o}),t},_handleClick:function(t){var e=this;if(null!=e._map.getPlotEditControl()){if(0!==this.selectedFeatures.length)for(let t=0,o=this.selectedFeatures.length;t<o;t++)e._editLayer.removeFeatures(this.selectedFeatures),this.addFeatures(this.selectedFeatures);this.selectedFeatures=[];var o=e._getGraphicsInBounds();for(let i=0,l=o.length;i<l;i++)if(o[i]._containsPoint(this._map.latLngToLayerPoint(t.latlng))){this.removeFeatures(o[i].feature),e._editLayer.addFeatures(o[i].feature),e._map.getPlotEditControl()&&(e._map.getPlotEditControl().unselectFeatures(),o[i].feature.enableEdit||e._map.getPlotEditControl().enableEditFeatures(o[i].feature),e._map.getPlotEditControl().selectFeatures(o[i].feature)),this.selectedFeatures.push(o[i].feature),e._map.getPlotEditControl()&&(e._map.getPlotEditControl()._onTriggerMapClick=!1);break}L.DomEvent.stopPropagation(t)}}}),le=function(t){return new ie(t)};L.supermap.plotting.graphicLayer=le,L.Map.include({getFeatureByUuid:function(t){var e=[];for(var o in this._layers){var i;if(this._layers[o]instanceof ae)null!==(i=this._layers[o].getFeatureByUuid(t))&&e.push(i);if(this._layers[o]instanceof ie)null!==(i=this._layers[o].getFeatureByUuid(t))&&e.push(i);if(this._layers[o]instanceof ue)null!==(i=this._layers[o].getFeatureByUuid(t))&&e.push(i)}return 0===e.length?null:e[0]},getPlottingLayers:function(){var t=[],e=this._layers;for(var o in e)e[o]instanceof ae&&t.push(e[o]);return t},clearPlottingLayers:function(){var t=this._layers;for(var e in t)t[e]instanceof ae&&(t[e].removeAllFeatures(),this.removeLayer(t[e]))},getLayer:function(t){var e=this._layers;for(var o in e)if(e[o]._leaflet_id===t)return e[o]},getLayersByName:function(t){return this.getLayersBy("name",t)},getLayersBy:function(t,e){return this.getBy("_layers",t,e)},getBy:function(t,e,o){var i="function"==typeof o.test,l=[];for(var s in this[t])l.push(this[t][s]);return SuperMap.Array.filter(l,function(t){return t[e]===o||i&&o.test(t[e])})},latLngToLayerPoint:function(t){return this.project(L.latLng(t))._subtract(this.getPixelOrigin())}});o(2),o(1);var se=L.Path.extend({name:"",serverUrl:null,features:null,options:{serviceParams:{proxy:null,withCredentials:!1,crossOrigin:null,headers:null,serverType:null}},initialize:function(t,e,o){o=o||{},L.setOptions(this,o),this.name=t,this.serverUrl=e,this.features=[]},destroy:function(){this.name="",this.serverUrl=null,this.features=null},beforeAdd:function(t){L.Path.prototype.beforeAdd.call(this,t)},onAdd:function(t){L.Path.prototype.onAdd.call(this,t),this._map=t;var e=this;this._map.on("zoomend",function(){for(var t=0;t<e.features.length;t++)e.features[t]._reView()})},onRemove:function(){L.Path.prototype.onRemove.call(this),this.removeAllFeatures()},addFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]);for(let e=0;e<t.length;)t[e]instanceof gt||t[e]instanceof Nt?(this.features.push(t[e]),t[e].onAdd(this),e++):t.splice(e,1)},removeFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]);for(let i=0,l=t.length;i<l;i++){var e=t[i];if(-1!=SuperMap.Util.indexOf(this.features,e)&&(e instanceof gt||t[i]instanceof Nt)){(e instanceof ct||e instanceof Vt)&&this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().disableEditFeatures(e.components),this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().disableEditFeatures(e),e.symbolType===SuperMap.Plot.SymbolType.ROUTENODE&&e.route&&e.route.deleteRouteNode(e.routeNode),e.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXT&&e.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXT1||e.removeSymbolTextsFromDotSymbol(e.associatedUuid),e.symbolType===SuperMap.Plot.SymbolType.LINERELATION&&(e.startAssociatedUuid&&e.removeJoinLineFromDotSymbol(e.startAssociatedUuid),e.endAssociatedUuid&&e.removeJoinLineFromDotSymbol(e.endAssociatedUuid)),e.ownerGroup?(e.ownerGroup.removeComponents(),this.removeFeatures(e)):(e._clearComponents(),e.geoSymbolTexts&&e.geoSymbolTexts.length>0&&this.removeFeatures(e.geoSymbolTexts));var o=SuperMap.Util.indexOf(this.features,e);-1!==o&&this.features.splice(o,1),e.layer=null}}this._update()},getFeatures:function(){return this.features.slice()},removeAllFeatures:function(){this.removeFeatures(this.features.slice()),this.features=[]},_setCursorStyle:function(t){void 0===t&&(t="");var e=!1;if(this._map.getPlottingLayers().length>1){var o=this._map.getPlottingLayers();for(var i in o)if(o[i]._renderer instanceof L.Canvas)o[i]._renderer._container.style.cursor=t;else if(o[i]._renderer instanceof L.SVG)for(let e=0;e<o[i]._renderer._rootGroup.childNodes.length;e++)o[i]._renderer._rootGroup.childNodes[e].style.cursor=t;e=!0}if(!e)if(this._renderer instanceof L.Canvas)this._renderer._container.style.cursor=t;else if(this._renderer instanceof L.SVG&&!L.Browser.ie){for(let e=0;e<this._renderer._rootGroup.childNodes.length;e++)this._renderer._rootGroup.childNodes[e].style.cursor=t;this._map._panes.overlayPane.style.cursor=t,this._map._panes.overlayPane.style.width=this._renderer._svgSize.x+"px",this._map._panes.overlayPane.style.height=this._renderer._svgSize.y+"px"}},_update:function(){this._map&&this._updatePath()},_containsPoint:function(){return!1},_updatePath:function(){this._renderer._drawPlottingLayers(this._getLayersInBounds())},_project:function(){var t=this;t._pxBounds=L.bounds(L.point(0,0),L.point(0,0)),t._getLayersInBounds().map(function(e){return e._project(),t._pxBounds.extend(e._pxBounds.min),t._pxBounds.extend(e._pxBounds.max),e})},_getLayersInBounds:function(){var t=[],e=this._map.getBounds();return this.features.map(function(o){var i=o.getBounds();return i.isValid()&&e.contains(i)&&t.push(o),o}),t},bringToBack:function(){return L.Path.prototype.beforeAdd.call(this),this._map&&(L.DomUtil.toBack(this._getContainer()),this._setAutoZIndex(Math.max)),this},bringToFront:function(){return L.Path.prototype.bringToFront.call(this),this._map&&(L.DomUtil.toFront(this._getContainer()),this._setAutoZIndex(Math.min)),this},_setAutoZIndex:function(t){for(var e,o=this.getPane().children,i=-t(-1/0,1/0),l=0,s=o.length;l<s;l++)e=o[l].style.zIndex,o[l]!==this._container&&e&&(i=t(i,+e));isFinite(i)&&(this.options.zIndex=i+t(-1,1),this._updateZIndex())},_updateZIndex:function(){this._container&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._container.style.zIndex=this.options.zIndex)},_getContainer:function(){return this._renderer._container}}),ne=L.Control.extend({_mouseTolerance:10,_editMarkers:null,_editMode:SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE,feature:null,_temportary:null,options:{avoidRegionStyle:{fill:!1,color:"#0000ff",dashArray:"2, 2",opacity:1,weight:1},draggable:!0,avoidIcon:L.divIcon({className:"leaflet-supermap-plot-avoid-icon-path",iconSize:[8,8]}),icon:new L.DivIcon({iconSize:new L.Point(8,8),className:"leaflet-div-icon leaflet-editing-icon"})},initialize:function(t,e){if(L.version<"0.7")throw new Error("Leaflet.draw 0.2.3+ requires Leaflet 0.7.0+. Download latest from https://github.com/Leaflet/Leaflet/");L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&(this.options.avoidIcon=L.divIcon({className:"leaflet-supermap-plot-avoid-icon-path",iconSize:[15,15]}),this.options.icon=new L.DivIcon({iconSize:new L.Point(15,15),className:"leaflet-div-icon leaflet-editing-icon"})),L.Control.prototype.initialize.call(this,e),L.setOptions(this,e),this._temportary=new se("avoidRegionControl-temportary",t.serverUrl,{serviceParams:t.serviceParams}),this._editMarkers={},this.feature=t},onAdd:function(t){if(this.feature&&!this.feature.getLocked())return this.controlDiv=L.DomUtil.create("div","supermap-iclient-avoidregion"),this._map=t,this._markers=[],this._latlngs=[],this._markerGroup=new L.LayerGroup,this._map.addLayer(this._markerGroup),this._map.addLayer(this._temportary),this._map.on("mousemove",this._onMouseMove,this).on("click",this._onMapClick,this),this._showAvoidRegions(),this.controlDiv},onRemove:function(){this._hideAvoidRegions(),this._map.removeLayer(this._markerGroup),delete this._markerGroup,delete this._markers,delete this._latlngs,this.plotting&&(this._temportary.removeFeatures(this.plotting),delete this.plotting,this.plotting=null),this._map.removeLayer(this._temportary),delete this._temportary,this._map.off("mousemove",this._onMouseMove,this).off("click",this._onMapClick,this)},_showAvoidRegions:function(){for(var t=0;t<this.feature.avoidRegions.length;t++){var e=this.feature.avoidRegions[t];this._temportary.addFeatures(e),this._selectFeature(e)}},_hideAvoidRegions:function(){for(var t=0;t<this.feature.avoidRegions.length;t++){var e=this.feature.avoidRegions[t];this._unselectFeature(e),this._temportary.removeFeatures(e)}},_selectFeature:function(t){t.symbolType===SuperMap.Plot.SymbolType.AVOIDREGION&&(this._collectEditMarkers(t),t.on("mousemove",this._onMouseMove,this).on("mouseout",this._onMouseOut,this).on("dragstart",this._onDragStart,this).on("drag",this._onDrag,this).on("dragend",this._onDragEnd,this),t.dragging.enable())},_unselectFeature:function(t){t.symbolType===SuperMap.Plot.SymbolType.AVOIDREGION&&(this._removeMarkers(t),t.off("mousemove",this._onMouseMove,this).off("mouseout",this._onMouseOut,this).off("dragstart",this._onDragStart,this).off("drag",this._onDrag,this).off("dragend",this._onDragEnd,this),t.dragging.disable())},_onMouseOut:function(t){t.target.layer._renderer._container.style.cursor=""},_onMapClick:function(t){if(this.moveend)this.moveend=!1;else{var e=this._map.mouseEventToLayerPoint(t.originalEvent),o=this._map.layerPointToLatLng(e);this.plotting?this._addVertex(o):(this.plotting=L.supermap.plotting.avoidRegion(0,SuperMap.Plot.SymbolType.AVOIDREGION,[],{style:this.options.avoidRegionStyle}),this._temportary.addFeatures(this.plotting),this._addVertex(o)),L.DomEvent.preventDefault(t.originalEvent)}},_collectEditMarkers:function(t){var e=[];if(t.symbolType===SuperMap.Plot.SymbolType.AVOIDREGION)for(var o in t.getLatLngs()){var i=new L.LatLng(t.getLatLngs()[o].lat,t.getLatLngs()[o].lng),l=L.supermap.plotting.editMarker(i,{icon:this.options.avoidIcon,nHandle:-1,tag:o});this._addToMapAndBindMarker(l),e.push(l),l.owner=t}this._editMarkers[t.uuid]=e},_removeMarkers:function(t){var e=this._editMarkers[t.uuid];for(var o in e)this._unbindMarkerEvents(e[o]),this._map.removeLayer(e[o]);delete this._editMarkers[t.uuid]},_unbindMarkerEvents:function(t){t.off("mousemove",this._moveMove,this),t.off("mouseout",this._moveOut,this),t.off("click",this._removePoint,this),t.off("drag",this.redraw,this),t.dragging.disable()},_addToMapAndBindMarker:function(t){t.addTo(this._map),t.on("mousemove",this._moveMove,this),t.on("mouseout",this._moveOut,this),t.on("click",this._removePoint,this),t.on("drag",this._dragPoint,this),t.dragging.enable()},_removePoint:function(t){if(this._editMode===SuperMap.Plot.EditMode.ADDCONTROLPOINT&&t.target.owner.isSelected){var e=this._editMarkers[t.target.owner.uuid],o=e.indexOf(t.target);this._map.removeLayer(e[o]),e.splice(o,1),t.target.owner.latLngs.splice(o,1),t.target.owner.redraw()}},_dragPoint:function(t){var e=t.target.owner;if(e.symbolType===SuperMap.Plot.SymbolType.AVOIDREGION){var o=this._editMarkers[e.uuid],i=SuperMap.Util.indexOf(o,t.target);e.getLatLngs()[i]=t.latlng,e._modifyPoint(),this.moveend=!0}},_moveMove:function(t){t.target._icon.style.cursor="pointer"},_moveOut:function(t){t.target._icon.style.cursor=""},_addVertex:function(t){var e=new L.Marker(t,{icon:this.options.icon,zIndexOffset:2*this.options.zIndexOffset});this._markerGroup.addLayer(e),this._markers.push(e),this._latlngs.push(t),this.plotting.setLatLngs(this._latlngs);var o=this._markers.length;o>1&&this._markers[o-1].on("click",this._finishShape,this),o>2&&this._markers[o-2].off("click",this._finishShape,this)},_finishShape:function(){this._markers.length>1&&this._markers[this._markers.length-1].off("click",this._finishShape,this),L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&this._latlngs.length+1<this.plotting.maxEditPts&&this._latlngs.length!==this.plotting.getLatLngs().length&&this.plotting.setLatLngs(this._latlngs);var t=this.plotting.clone();this._markerGroup.clearLayers(),this._markers=[],this._latlngs=[],this._temportary.removeFeatures(this.plotting),delete this.plotting,this.plotting=null,this._temportary.addFeatures(t),this.feature.addAvoidRegion(t),this._selectFeature(t);var e=new SuperMap.Plot.Transaction;e.transType=SuperMap.Plot.TransactionType.EDIT;var o=new SuperMap.Plot.TransactionInfo;o.layerId=this.feature.layer._leaflet_id,o.uuid=this.feature.uuid,o.functionName="addAvoidRegion",o.undoParams=[t],o.redoParams=[t],e.transInfos.push(o),L.supermap.plotting.getControl().getTransManager().add(e),t.on("contextmenu",function(){})},_onDragStart:function(t){var e=t.target,o=this._editMarkers[e.uuid];for(var i in o)o[i].setOpacity(0)},_onDrag:function(t){t.target.move(t.dLat,t.dLng)},_onDragEnd:function(t){var e=t.target;this._collectEditMarkers(e),this.moveend=!0},_onMouseMove:function(t){var e=this._map.mouseEventToLayerPoint(t.originalEvent),o=this._map.layerPointToLatLng(e);if(this.plotting){var i=L.Util.cloneLatLngs(this._latlngs);0===i.length?i.push(o):i[i.length-1].lat===o.lat&&i[i.length-1].lng===o.lng||i.push(o),this.plotting.setLatLngs(i)}L.DomEvent.preventDefault(t.originalEvent)}}),ae=se.extend({tolerancePixel:5,isLocked:!1,isEditable:!0,isSelected:!0,visibility:!0,getSelected:function(){return this.isSelected},setSelected:function(t){this.isSelected!==t&&(this.isSelected=t,this._map&&this._map.getPlotEditControl()&&(this.isSelected?this._map.getPlotEditControl().enableEditFeatures(this.features):this._map.getPlotEditControl().disableEditFeatures(this.features)))},getEditable:function(){return this.isEditable},setEditable:function(t){if(this.isEditable!==t&&(this.isEditable=t,this._map&&this._map.getPlotEditControl())){var e=this._map.getPlotEditControl().getSelectedFeatures();this._map.getPlotEditControl().unselectFeatures(this.features),this._map.getPlotEditControl().selectFeatures(e)}},getLocked:function(){return this.isLocked},setLocked:function(t){if(this.isLocked!==t&&(this.isLocked=t,this._map&&this._map.getPlotEditControl())){var e=this._map.getPlotEditControl().getSelectedFeatures();this._map.getPlotEditControl().unselectFeatures(this.features),this._map.getPlotEditControl().selectFeatures(e)}},getVisibility:function(){return this.visibility},setVisibility:function(t){if(this.visibility!==t){this.visibility=t;for(let t=0;t<this.features.length;t++)if(this.features[t].redraw(),this._map&&this._map.getPlotEditControl()){if(this._map.getPlotEditControl()._editMarkers.hasOwnProperty(this.features[t].uuid)){let e=this._map.getPlotEditControl()._editMarkers[this.features[t].uuid];for(let t in e)this.visibility?e[t].setOpacity(1):e[t].setOpacity(0)}null!=this.features[t].dragging&&null!=this.features[t].dragging.moveMarker&&(this.visibility?this.features[t].dragging.moveMarker.setOpacity(1):this.features[t].dragging.moveMarker.setOpacity(0))}}},initialize:function(t,e,o){se.prototype.initialize.call(this,t,e,o),this.setVisibility(this.visibility)},getFeatureByUuid:function(t){for(var e=0;e<this.features.length;e++){if(this.features[e].uuid===t)return this.features[e];if(this.features[e]instanceof L.supermap.plotting.GroupObject||this.features[e]instanceof L.supermap.plotting.Route)for(var o=0;o<this.features[e].components.length;o++)if(this.features[e].components[o].uuid===t)return this.features[e].components[o]}return null},addFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]),0!==t.length&&(this.fire(SuperMap.Plot.Event.beforefeaturesadded,{features:t}),se.prototype.addFeatures.call(this,t),this.fire(SuperMap.Plot.Event.featuresadded,{features:t}),this._map.getPlotEditControl()&&this.isSelected&&this._map.getPlotEditControl().enableEditFeatures(t))},removeFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]),this.fire(SuperMap.Plot.Event.beforefeaturesremoved,{features:t}),se.prototype.removeFeatures.call(this,t),this.fire(SuperMap.Plot.Event.featuresremoved,{features:t})},removeAllFeatures:function(){this.fire(SuperMap.Plot.Event.beforefeaturesremoved,{features:this.features}),se.prototype.removeAllFeatures.call(this),this.fire(SuperMap.Plot.Event.featuresremoved,{features:this.features})},createSymbol:function(t,e,o,i,l,s,n,a){var r;if(s||(s={}),s.uuid=i,s.serverUrl=this.serverUrl,s.serviceParams=this.options.serviceParams,void 0!==s.symbolData&&null!==s.symbolData||!SuperMap.Plot.AlgoSymbolFactory.isAccessServer(t,e))if((r=L.supermap.plotting.PlottingObject.createSymbol(t,e,o,s,l,a)).subSymbols&&0!==r.subSymbols.length&&!SuperMap.Plot.AlgoSymbolFactory.isAccessServer(t,e)){for(var p=[],u=0,h=r.subSymbols.length;u<h;u++)null===r.subSymbols[u].symbolData&&(r.subSymbols[u].symbolData=this._getSymbolDataFromCache(r.subSymbols[u].libID,r.subSymbols[u].code),null===r.subSymbols[u].symbolData&&-1===SuperMap.Util.indexOf(p,r.subSymbols[u])&&p.push(r.subSymbols[u]));for(var g=p.slice(),c=0;c<p.length;c++){let t=new SuperMap.GetSymbolInfoParameters({libID:p[c].libID,code:p[c].code});L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(t,function(t){this._cacheSymbolData(t.result);for(var e=0,o=r.subSymbols.length;e<o;e++)if(null===r.subSymbols[e].symbolData&&r.subSymbols[e].libID===t.result.libID&&r.subSymbols[e].code===t.result.code){var i=SuperMap.Util.indexOf(g,r.subSymbols[e]);-1!==i&&g.splice(i,1),r.subSymbols[e].symbolData=SuperMap.Plot.PlottingUtil.cloneObject(t.result),0===g.length&&(r.isEdit=!1,this.addFeatures(r),"function"==typeof n&&n({feature:r}))}},this)}if(0===p.length)return this.addFeatures(r),"function"==typeof n&&n({feature:r}),r}else{if(!SuperMap.Plot.AlgoSymbolFactory.isAccessServer(t,e)||r.symbolData.innerCells)return this.addFeatures(r),"function"==typeof n&&n({feature:r}),r;{let t=Math.floor(1e3*Math.random()),e=new SuperMap.GetSymbolInfoParameters({libID:r.libID,code:r.code,surroundLineType:r.surroundLineType,scaleValues:r.scaleValues,subSymbols:r.subSymbols});e.inputPoints=L.Util.latLngsToSuperMapPoints(r.getLatLngs()),e.dynamicToken=t,L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(e,function(e){e.result.dynamicToken&&e.result.dynamicToken===SuperMap.MD5.md5(t.toString())&&(r.symbolData.innerCells=e.result.innerCells,this.addFeatures(r))},this)}}else{var y=null,P=!1;if(s.hasOwnProperty("negativeImage")||s.hasOwnProperty("symbolRank")||s.hasOwnProperty("surroundLineType")?P=!0:y=this._getSymbolDataFromCache(t,e),!y||P){let i=new SuperMap.GetSymbolInfoParameters({libID:t,code:e});o&&(i.inputPoints=L.Util.latLngsToSuperMapPoints(o)),s.hasOwnProperty("negativeImage")&&(i.negativeImage=s.negativeImage),s.hasOwnProperty("symbolRank")&&(i.symbolRank=s.symbolRank),s.hasOwnProperty("surroundLineType")&&(i.surroundLineType=s.surroundLineType);var d=Math.floor(1e3*Math.random());i.dynamicToken=d,L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(i,function(i){i.result.dynamicToken&&i.result.dynamicToken===SuperMap.MD5.md5(d.toString())&&(P||i.result.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL||(delete i.result.dynamicToken,this._cacheSymbolData(i.result)),s.symbolData=SuperMap.Plot.PlottingUtil.cloneObject(i.result),r=L.supermap.plotting.PlottingObject.createSymbol(t,e,o,s,l,a),this.addFeatures(r),"function"==typeof n&&n({feature:r}))},this)}else s.symbolData=y,r=L.supermap.plotting.PlottingObject.createSymbol(t,e,o,s,l,a),this.addFeatures(r),"function"==typeof n&&n({feature:r})}},createGroupObject:function(t,e){var o=[];for(var i in t)t[i]&&t[i]instanceof mt&&o.push(t[i]);if(o.length>1){var l=new ct(0,SuperMap.Plot.SymbolType.GROUPOBJECT,[],{subObjects:o,uuid:e});return this.addFeatures(l),l}return null},unGroupObject:function(t){var e=[];return t.symbolType===SuperMap.Plot.SymbolType.GROUPOBJECT||t.symbolType===SuperMap.Plot.SymbolType.FLAGGROUP?(e=t._unGroupObject(),t.destroy()):e.push(t),e},createLineRelation:function(t,e,o,i,l,s,n){s||(s={}),s.startAssociatedUuid=t,s.endAssociatedUuid=e,s.lineRelationType=o,s.uuid=i,s.custom=n;var a=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.LINERELATION,null,s,l,n);return this.addFeatures(a),a},createInterferenceBeam:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t,l.uuid=o,l.custom=s;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.INTERFERENCEBEAM,e,l,i,s);return this.addFeatures(n),n},createSatellite:function(t,e,o,i,l,s,n,a,r){var p=this._getSymbolDataFromCache(t,e);if(null===p){var u=new SuperMap.GetSymbolInfoParameters({libID:t,code:e});L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(u,function(p){this._cacheSymbolData(p.result),n||(n={}),n.serverUrl=this.serverUrl,n.serviceParams=this.options.serviceParams,n.orbitPoints=o,n.textContent=i,n.uuid=l,n.custom=r,n.subSymbols=[{libID:t,code:e,symbolData:SuperMap.Plot.PlottingUtil.cloneObject(p.result),textContent:i}];var u=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SATELLITE,[],n,s,r);this.addFeatures(u),"function"==typeof a&&a({feature:u})},this)}else{n||(n={}),n.serverUrl=this.serverUrl,n.serviceParams=this.options.serviceParams,n.orbitPoints=o,n.textContent=i,n.uuid=l,n.custom=r,n.subSymbols=[{libID:t,code:e,symbolData:p,textContent:i}];var h=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SATELLITE,[],n,s,r);this.addFeatures(h),"function"==typeof a&&a({feature:h})}},createSatelliteTimeWindows:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t,l.timeWindows=e,l.custom=s,l.uuid=o;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS,[],l,i,s);return this.addFeatures(n),n},createSatelliteTimeWindows1:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t;for(var n=0;n<e.length;n++)e[n].type="Number";l.timeWindows=e,l.custom=s,l.uuid=o;var a=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS,[],l,i,s);return this.addFeatures(a),a},createSatelliteTimeWindows2:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t;for(var n=0;n<e.length;n++)e[n].type="Time";l.timeWindows=e,l.custom=s,l.uuid=o;var a=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS,[],l,i,s);return this.addFeatures(a),a},createSymbolText:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t,l.symbolTexts=e,l.custom=s,l.uuid=o;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SYMBOLTEXT,[],l,i,s);return this.addFeatures(n),n},createSymbolText1:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t,l.textContent=e,l.custom=s,l.uuid=o;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SYMBOLTEXT1,[],l,i,s);return this.addFeatures(n),n},createNavyDeployment:function(t,e,o,i,l,s,n){if(l||(l={}),l.associatedUuid=t,l.custom=n,l.serverUrl=this.serverUrl,l.serviceParams=this.options.serviceParams,e&&0!==e.length){for(var a=[],r=0,p=e.length;r<p;r++)null===e[r].symbolData&&(e[r].symbolData=this._getSymbolDataFromCache(e[r].libID,e[r].code),null===e[r].symbolData&&-1===SuperMap.Util.indexOf(a,e[r])&&a.push(e[r]));if(0!==a.length)for(var u=a.slice(),h=0;h<a.length;h++){var g=new SuperMap.GetSymbolInfoParameters({libID:a[h].libID,code:a[h].code});L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(g,function(t){this._cacheSymbolData(t.result);for(var o=0,a=e.length;o<a;o++)if(null===e[o].symbolData&&e[o].libID===t.result.libID&&e[o].code===t.result.code){var r=SuperMap.Util.indexOf(u,e[o]);-1!==r&&u.splice(r,1),e[o].symbolData=SuperMap.Plot.PlottingUtil.cloneObject(t.result)}if(0===u.length){l.subSymbols=e;var p=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.NAVYDEPLOYMENT,[],l,i,n);this.addFeatures(p),"function"==typeof s&&s({feature:p})}},this)}else{l.subSymbols=e;var c=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.NAVYDEPLOYMENT,[],l,i,n);this.addFeatures(c),"function"==typeof s&&s({feature:c})}}},createAirDeployment:function(t,e,o,i,l,s,n){if(l||(l={}),l.associatedUuid=t,l.custom=n,l.serverUrl=this.serverUrl,l.serviceParams=this.options.serviceParams,e&&0!==e.length){for(var a=[],r=0,p=e.length;r<p;r++)null===e[r].symbolData&&(e[r].symbolData=this._getSymbolDataFromCache(e[r].libID,e[r].code),null===e[r].symbolData&&-1===SuperMap.Util.indexOf(a,e[r])&&a.push(e[r]));if(0!==a.length)for(var u=a.slice(),h=0;h<a.length;h++){var g=new SuperMap.GetSymbolInfoParameters({libID:a[h].libID,code:a[h].code});L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(g,function(t){this._cacheSymbolData(t.result);for(var o=0,a=e.length;o<a;o++)if(null===e[o].symbolData&&e[o].libID===t.result.libID&&e[o].code===t.result.code){var r=SuperMap.Util.indexOf(u,e[o]);-1!==r&&u.splice(r,1),e[o].symbolData=SuperMap.Plot.PlottingUtil.cloneObject(t.result)}if(0===u.length){l.subSymbols=e;var p=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.AIRDEPLOYMENT,[],l,i,n);this.addFeatures(p),"function"==typeof s&&s({feature:p})}},this)}else{l.subSymbols=e;var c=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.AIRDEPLOYMENT,[],l,i,n);this.addFeatures(c),"function"==typeof s&&s({feature:c})}}},createNavyRoute:function(t,e,o,i,l,s){l||(l={}),l.routeNodes=e,l.uuid=o,l.custom=s,l.arrRoutePts=t;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.NAVYROUTE,[],l,i,s);return this.addFeatures(n),n},createMissileRoute:function(t,e,o,i,l,s){l||(l={}),l.routeNodes=e,l.uuid=o,l.custom=s,l.arrRoutePts=t;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.MISSILEROUTE,[],l,i,s);return this.addFeatures(n),n},createAirRoute:function(t,e,o,i,l,s){l||(l={}),l.routeNodes=e,l.uuid=o,l.custom=s,l.arrRoutePts=t;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.AIRROUTE,[],l,i,s);return this.addFeatures(n),n},createFlags:function(t,e,o){for(var i=[],l=0;l<t.length;l++)100===t[l].libID&&t[l].code>=2800&&t[l].code<=2900&&i.push(t[l]);var s=null;return i.length>1&&(s=new wt(0,SuperMap.Plot.SymbolType.FLAGGROUP,[],{subObjects:i,ratio:e,uuid:o}),this.addFeatures(s)),s},createArcRegion:function(t,e,o,i,l,s,n,a,r,p,u){r||(r={}),r.centerPoint=t,r.radius=e,r.startAngle=o,r.endAngle=i,r.textContent=l,r.textPosition=s,r.uuid=n,r.custom=u;var h=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.ARCREGION,[],r,a,u);return this.addFeatures(h),h},geoJsonToFeature:function(t,e){var o=JSON.parse(t),i=parseInt(o.libID),l=parseInt(o.code);if(o.isEdit=!0,SuperMap.Plot.AlgoSymbolFactory.isAccessServer(i,l)){let t={};t.negativeImage=o.negativeImage,t.symbolRank=parseInt(o.symbolRank),t.surroundLineType=parseInt(o.surroundLineType);var s=!1;(t.negativeImage||0!==t.surroundLineType||0!==t.symbolRank)&&(s=!0);var n=this._getSymbolDataFromCache(i,l);if(s||null===n){let a=new SuperMap.GetSymbolInfoParameters({libID:i,code:l,negativeImage:t.negativeImage,symbolRank:t.symbolRank,surroundLineType:t.surroundLineType,inputPoints:o.localePoints,subSymbols:o.subSymbols});L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(a,function(t){if(!t.result.libID||!t.result.code)return;t.result.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL||s||this._cacheSymbolData(t.result),n=SuperMap.Util.cloneObject(t.result),SuperMap.Plot.AnalysisSymbol.mergeSymbolDataAndServerData(o,n);let a={symbolData:o,serverUrl:this.serverUrl,serviceParams:this.options.serviceParams,isGeoJSONData:!0},r=L.supermap.plotting.PlottingObject.createSymbol(i,l,null,a);this.addFeatures(r),"function"==typeof e&&e({feature:r})},this)}else{SuperMap.Plot.AnalysisSymbol.mergeSymbolDataAndServerData(o,n);let t={symbolData:o,serverUrl:this.serverUrl,isGeoJSONData:!0},s=L.supermap.plotting.PlottingObject.createSymbol(i,l,null,t);this.addFeatures(s),"function"==typeof e&&e({feature:s})}}else if(o.subSymbols&&0!==o.subSymbols.length){for(var a=[],r=0,p=o.subSymbols.length;r<p;r++)if(!o.subSymbols[r].symbolData){var u=L.supermap.plotting.getControl(this._map,this.serverUrl,{serviceParams:this.options.serviceParams}).getSymbolLibManager().getSymbolLibByLibId(o.subSymbols[r].libID);if(u)u.querySymbolbyKey(l.toString()).length>0&&(o.subSymbols[r].symbolData=this._getSymbolDataFromCache(o.subSymbols[r].libID,o.subSymbols[r].code),null===o.subSymbols[r].symbolData&&-1===SuperMap.Util.indexOf(a,o.subSymbols[r])&&a.push(o.subSymbols[r]))}for(var h=a.slice(),g=0;g<a.length;g++){let t=new SuperMap.GetSymbolInfoParameters({libID:a[g].libID,code:a[g].code});L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(t,function(t){this._cacheSymbolData(t.result);for(var s=0,n=o.subSymbols.length;s<n;s++)if(null===o.subSymbols[s].symbolData&&o.subSymbols[s].libID===t.result.libID&&o.subSymbols[s].code===t.result.code){var a=SuperMap.Util.indexOf(h,o.subSymbols[s]);-1!==a&&h.splice(a,1),o.subSymbols[s].symbolData=SuperMap.Plot.PlottingUtil.cloneObject(t.result)}if(0===h.length){let t={symbolData:o,serverUrl:this.serverUrl,serviceParams:this.options.serviceParams,symbolType:o.symbolType,isGeoJSONData:!0},s=L.supermap.plotting.PlottingObject.createSymbol(i,l,null,t);this.addFeatures(s),"function"==typeof e&&e({feature:s})}},this)}if(0===a.length){let t={symbolData:o,serverUrl:this.serverUrl,serviceParams:this.options.serviceParams,symbolType:o.symbolType,isGeoJSONData:!0},s=L.supermap.plotting.PlottingObject.createSymbol(i,l,null,t);this.addFeatures(s),"function"==typeof e&&e({feature:s})}}else{let t={symbolData:o,serverUrl:this.serverUrl,serviceParams:this.options.serviceParams,symbolType:o.symbolType,isGeoJSONData:!0},s=L.supermap.plotting.PlottingObject.createSymbol(i,l,null,t);this.addFeatures(s),"function"==typeof e&&e({feature:s})}},_getFeatureFromEvent:function(t){var e=null;if(!this._map)return e;if(this.isSelected)for(var o=this._map.layerPointToLatLng(L.point(0,0)),i=this._map.layerPointToLatLng(L.point(this._clickTolerance(),0)),l=new SuperMap.Geometry.Point(o.lng,o.lat),s=new SuperMap.Geometry.Point(i.lng,i.lat),n=SuperMap.Plot.PlottingUtil.distance(l,s),a=this.features.length-1;a>=0&&null===(e=this._selectFeature(this.features[a],t.latlng,n));a--);return e},_getSymbolDataFromCache:function(t,e){var o=L.supermap.plotting.getControl(this._map,this.serverUrl,{serviceParams:this.options.serviceParams}).getSymbolLibManager().getSymbolLibByLibId(t);return null!==o?o.getSymbolData(e):null},_cacheSymbolData:function(t){var e=L.supermap.plotting.getControl(this._map,this.serverUrl,{serviceParams:this.options.serviceParams}).getSymbolLibManager().getSymbolLibByLibId(t.libID);null!==e&&e.cacheSymbolData(t)},_isAvoidRegion:function(...t){if(0!==t.length){let i=null,l=!1;if(0===t[0].avoidRegions.length)return t[0];if(i=new ne(t[0]),this._map.addControl(i),l=!0){for(var e=0,o=t[0].avoidRegions.length;e<o;e++)this.removeFeatures(t[0].avoidRegions[e]);return this._map.removeControl(i),l=!1,t[0]}}},_selectFeature:function(t,e,o){if(null==t)return null;if(void 0!==t.style&&null!==t.style&&"none"===t.style.display)return null;if(!(t instanceof gt))return null;if(t instanceof ct){for(var i=0;i<t.components.length;i++)if(this._selectFeature(t.components[i],e,o))return t.isSelected?t.components[i]:t}else if(t instanceof Vt){for(let i=0;i<t.components.length;i++)if(this._selectFeature(t.components[i],e,o))return t.components[i]===SuperMap.Plot.SymbolType.ROUTENODE||t.components[i]===SuperMap.Plot.SymbolType.LITERATESIGN?t.components[i]:t}else if(t.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT){for(let i=0;i<t.components.length;i++)if(this._selectFeature(e,o,t.components[i]))return t}else if(t.symbolType===SuperMap.Plot.SymbolType.ROUTENODE||t.symbolType===SuperMap.Plot.SymbolType.LITERATESIGN){var l=t.getBounds();if(l&&l.isValid()&&e.lng>=l.getWest()&&e.lng<=l.getEast()&&e.lat>=l.getSouth()&&e.lat<=l.getNorth())return t}else{var s=this._map.latLngToLayerPoint(e);for(let e=0,o=t.components.length;e<o;e++)if(t.components[e]._containsPoint&&t.components[e]._containsPoint(s))return t}return null}}),re=function(t,e,o){return new ae(t,e,o)};L.supermap.plotting.plottingLayer=re;var pe=ae.extend({layer:null,initialize:function(t,e,o){ae.prototype.initialize.call(this,t,e,o),o&&o.layer&&(this.layer=o.layer),this.setVisibility(!0)},addFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]),0!==t.length&&(se.prototype.addFeatures.call(this,t),this._map.getPlotEditControl()&&this.isSelected&&this._map.getPlotEditControl().enableEditFeatures(t))},removeFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]);for(let i=0,l=t.length;i<l;i++){var e=t[i];if(-1!=SuperMap.Util.indexOf(this.features,e)){this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().disableEditFeatures(e),e._clearComponents();var o=SuperMap.Util.indexOf(this.features,e);-1!==o&&this.features.splice(o,1),e.layer=null}}this._update()}}),ue=L.Path.extend({serverUrl:null,features:null,isLocked:!1,isEditable:!0,isSelected:!0,visibility:!0,tolerancePixel:5,cacheImages:null,_editLayer:null,_vectorRenderer:null,options:{zIndex:300,vectorZIndex:200},getSelected:function(){return this.isSelected},setSelected:function(t){this.isSelected!==t&&(this.isSelected=t,!1===this.isSelected&&this.selectedFeatures.length>0&&(this._map&&this._map.getPlotEditControl()&&!0===this.isEditable&&!1===this.isLocked&&(this._editLayer.removeFeatures(this.selectedFeatures),this.addFeatures(this.selectedFeatures)),this.fire(SuperMap.Plot.Event.movingtargetsunselected,{features:this.selectedFeatures}),this.selectedFeatures.length=0))},getEditable:function(){return this.isEditable},setEditable:function(t){this.isEditable!==t&&(this.isEditable=t,!1===this.isEditable&&!1===this.isLocked&&this.selectedFeatures.length>0&&this._map&&this._map.getPlotEditControl()&&(this._editLayer.removeFeatures(this.selectedFeatures),this.addFeatures(this.selectedFeatures)))},getLocked:function(){return this.isLocked},setLocked:function(t){this.isLocked!==t&&(this.isLocked=t,!0===this.isEditable&&!0===this.isLocked&&this.selectedFeatures.length>0&&this._map&&this._map.getPlotEditControl()&&(this._editLayer.removeFeatures(this.selectedFeatures),this.addFeatures(this.selectedFeatures)))},getVisibility:function(){return this.visibility},setVisibility:function(t){this.visibility!==t&&(this.visibility=t,this.visibility?(this._renderer._container.style.visibility="visible",this._vectorRenderer._container.style.visibility="visible"):(this._renderer._container.style.visibility="hidden",this._vectorRenderer._container.style.visibility="hidden"),this._editLayer.setVisibility(this.visibility))},setGraphicZIndex:function(t){this.options.zIndex=t,this._renderer._container&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._renderer._container.style.zIndex=this.options.zIndex)},setVectorZIndex:function(t){this.options.vectorZIndex=t,this._vectorRenderer._container&&void 0!==this.options.vectorZIndex&&null!==this.options.vectorZIndex&&(this._vectorRenderer._container.style.zIndex=this.options.vectorZIndex)},initialize:function(t,e,o){this._editLayer=new pe(t+"_temportary",e,{layer:this}),o=o||{},L.Util.setOptions(this,o),this.cacheImages={},this.selectedFeatures=[],this.name=t,this.serverUrl=e,this.features=[],this._graphics=[],this._vectors=[]},getEvents:function(){var t={click:this._handleClick,mousemove:this._onMapMouseMove,contextmenu:this._handleContextmenu};return this._map._zoomAnimated&&(t.zoomanim=this._zoomAnim),t},_zoomAnim:function(t){},_onMapMouseMove:function(t){var e=this._getGraphicsInBounds();if(0!==e.length)for(let o=0,i=e.length;o<i;o++){if(e[o]._containsPoint(this._map.latLngToLayerPoint(t.latlng))){this._renderer._container.style.cursor=e[o].feature.isSelected?"move":"pointer";break}this._renderer._container.style.cursor=""}var o=this._getLayersInBounds();if(0!==o.length)for(let e=0,s=o.length;e<s;e++){var i=!1;for(var l in o[e].components)if(o[e].components[l]._containsPoint(this._map.latLngToLayerPoint(t.latlng))){i=!0;break}if(i){this._vectorRenderer._container.style.cursor=o[e].isSelected?"move":"pointer";break}this._vectorRenderer._container.style.cursor=""}},supportTypes:function(t,e){return t===SuperMap.Plot.SymbolType.DOTSYMBOL||t===SuperMap.Plot.SymbolType.PICTURE||t===SuperMap.Plot.SymbolType.SYMBOLTEXT||t===SuperMap.Plot.SymbolType.SYMBOLTEXT1||t===SuperMap.Plot.SymbolType.LINERELATION||t===SuperMap.Plot.SymbolType.ALGOSYMBOL||null!=e&&0===e},isGraphic:function(t){return t===SuperMap.Plot.SymbolType.DOTSYMBOL||t===SuperMap.Plot.SymbolType.PICTURE||t===SuperMap.Plot.SymbolType.SYMBOLTEXT||t===SuperMap.Plot.SymbolType.SYMBOLTEXT1||t===SuperMap.Plot.SymbolType.TEXTSYMBOL},isVector:function(t,e){return t===SuperMap.Plot.SymbolType.LINERELATION||t===SuperMap.Plot.SymbolType.ALGOSYMBOL||null!=e&&0===e&&t!=SuperMap.Plot.SymbolType.TEXTSYMBOL},getFeatureByUuid:function(t){for(var e=0;e<this.features.length;e++)if(this.features[e].uuid===t)return this.features[e];return null},getFeatures:function(){return this.features.slice()},addFeatures:function(t){L.Util.isArray(t)||(t=[t]);for(let i=0,l=t.length;i<l;i++){var e=t[i];if(this.supportTypes(e.symbolType,e.libID))if(null!=this._map.getFeatureByUuid(e.uuid)&&(e.uuid=SuperMap.Plot.PlottingUtil.generateUuid()),this.features.push(e),this.isGraphic(e.symbolType)){var o=new he(e);o.onAdd(this),this._graphics.push(o)}else e.onAdd(this),this._vectors.push(e)}this._update()},removeFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]);var e=[];for(let o=0,i=t.length;o<i;o++){let i=t[o];-1!=SuperMap.Util.indexOf(this.features,i)&&e.push(i)}this.fire(SuperMap.Plot.Event.beforefeaturesremoved,{features:e});for(let t=0,o=e.length;t<o;t++){let o=e[t],i=SuperMap.Util.indexOf(this.selectedFeatures,o);if(-1!==i&&(this._editLayer.removeFeatures(o),this.selectedFeatures.splice(i,1)),this._map&&this._map.getPlotEditControl()&&this._map.getPlotEditControl().disableEditFeatures(o),o.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXT&&o.symbolType!==SuperMap.Plot.SymbolType.SYMBOLTEXT1||o.removeSymbolTextsFromDotSymbol(o.associatedUuid),o.symbolType===SuperMap.Plot.SymbolType.LINERELATION&&(o.startAssociatedUuid&&o.removeJoinLineFromDotSymbol(o.startAssociatedUuid),o.endAssociatedUuid&&o.removeJoinLineFromDotSymbol(o.endAssociatedUuid)),null!=o.graphic&&o.graphic.layer===this){let t=o.graphic.getUuid();this.cacheImages[t]&&0==--this.cacheImages[t].imgCount&&delete this.cacheImages[t],-1!==(i=SuperMap.Util.indexOf(this._graphics,o.graphic))&&this._graphics.splice(i,1),o.graphic.onRemove()}else o._clearComponents();-1!==(i=SuperMap.Util.indexOf(this.features,o))&&this.features.splice(i,1),-1!==(i=SuperMap.Util.indexOf(this._vectors,o))&&this._vectors.splice(i,1)}this._update(),this.fire(SuperMap.Plot.Event.featuresremoved,{features:e})},removeAllFeatures:function(){this.fire(SuperMap.Plot.Event.beforefeaturesremoved,{features:this.features}),this.removeFeatures(this.features.slice()),this.fire(SuperMap.Plot.Event.featuresremoved,{features:this.features})},geoJsonToFeature:function(t,e){var o=this;o._editLayer.geoJsonToFeature(t,function(t){o._editLayer.removeFeatures(t.feature),o.addFeatures(t.feature),"function"==typeof e&&e({feature:t.feature})})},createSymbol:function(t,e,o,i,l,s,n,a){var r;if(s||(s={}),s.uuid=i,s.serverUrl=this.serverUrl,s.serviceParams=this.options.serviceParams,void 0!==s.symbolData&&null!==s.symbolData||!SuperMap.Plot.AlgoSymbolFactory.isAccessServer(t,e))if((r=L.supermap.plotting.PlottingObject.createSymbol(t,e,o,s,l,a)).subSymbols&&0!==r.subSymbols.length&&!SuperMap.Plot.AlgoSymbolFactory.isAccessServer(t,e)){for(var p=[],u=0,h=r.subSymbols.length;u<h;u++)null===r.subSymbols[u].symbolData&&(r.subSymbols[u].symbolData=this._getSymbolDataFromCache(r.subSymbols[u].libID,r.subSymbols[u].code),null===r.subSymbols[u].symbolData&&-1===SuperMap.Util.indexOf(p,r.subSymbols[u])&&p.push(r.subSymbols[u]));for(var g=p.slice(),c=0;c<p.length;c++){let t=new SuperMap.GetSymbolInfoParameters({libID:p[c].libID,code:p[c].code});L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(t,function(t){this._cacheSymbolData(t.result);for(var e=0,o=r.subSymbols.length;e<o;e++)if(null===r.subSymbols[e].symbolData&&r.subSymbols[e].libID===t.result.libID&&r.subSymbols[e].code===t.result.code){var i=SuperMap.Util.indexOf(g,r.subSymbols[e]);-1!==i&&g.splice(i,1),r.subSymbols[e].symbolData=SuperMap.Plot.PlottingUtil.cloneObject(t.result),0===g.length&&(r.isEdit=!1,this.addFeatures(r),"function"==typeof n&&n({feature:r}))}},this)}if(0===p.length)return this.addFeatures(r),"function"==typeof n&&n({feature:r}),r}else{if(!SuperMap.Plot.AlgoSymbolFactory.isAccessServer(t,e)||r.symbolData.innerCells)return this.addFeatures(r),"function"==typeof n&&n({feature:r}),r;{let t=Math.floor(1e3*Math.random()),e=new SuperMap.GetSymbolInfoParameters({libID:r.libID,code:r.code,surroundLineType:r.surroundLineType,scaleValues:r.scaleValues,subSymbols:r.subSymbols});e.inputPoints=L.Util.latLngsToSuperMapPoints(r.getLatLngs()),e.dynamicToken=t,L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(e,function(e){e.result.dynamicToken&&e.result.dynamicToken===SuperMap.MD5.md5(t.toString())&&(r.symbolData.innerCells=e.result.innerCells,this.addFeatures(r))},this)}}else{var y=null,P=!1;if(s.hasOwnProperty("negativeImage")||s.hasOwnProperty("symbolRank")||s.hasOwnProperty("surroundLineType")?P=!0:y=this._getSymbolDataFromCache(t,e),!y||P){let i=new SuperMap.GetSymbolInfoParameters({libID:t,code:e});o&&(i.inputPoints=L.Util.latLngsToSuperMapPoints(o)),s.hasOwnProperty("negativeImage")&&(i.negativeImage=s.negativeImage),s.hasOwnProperty("symbolRank")&&(i.symbolRank=s.symbolRank),s.hasOwnProperty("surroundLineType")&&(i.surroundLineType=s.surroundLineType);var d=Math.floor(1e3*Math.random());i.dynamicToken=d,L.supermap.symbolInfoService(this.serverUrl,this.options.serviceParams).getSymbolInfo(i,function(i){i.result.dynamicToken&&i.result.dynamicToken===SuperMap.MD5.md5(d.toString())&&(P||i.result.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL||(delete i.result.dynamicToken,this._cacheSymbolData(i.result)),s.symbolData=SuperMap.Plot.PlottingUtil.cloneObject(i.result),r=L.supermap.plotting.PlottingObject.createSymbol(t,e,o,s,l,a),this.addFeatures(r),"function"==typeof n&&n({feature:r}))},this)}else s.symbolData=y,r=L.supermap.plotting.PlottingObject.createSymbol(t,e,o,s,l,a),this.addFeatures(r),"function"==typeof n&&n({feature:r})}},createSymbolText:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t,l.symbolTexts=e,l.custom=s,l.uuid=o;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SYMBOLTEXT,[],l,i,s);return this.addFeatures(n),n},createSymbolText1:function(t,e,o,i,l,s){l||(l={}),l.associatedUuid=t,l.textContent=e,l.custom=s,l.uuid=o;var n=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.SYMBOLTEXT1,[],l,i,s);return this.addFeatures(n),n},createLineRelation:function(t,e,o,i,l,s,n){s||(s={}),s.startAssociatedUuid=t,s.endAssociatedUuid=e,s.lineRelationType=o,s.uuid=i,s.custom=n;var a=L.supermap.plotting.PlottingObject.createSymbol(0,SuperMap.Plot.SymbolType.LINERELATION,null,s,l,n);return this.addFeatures(a),a},updateFeatures:function(t){L.Util.isArray(t)||(t=[t]);var e=[],o=this;t.map(function(t){return o.isGraphic(t.symbolType)?(t.graphic.update(),e.push(t.graphic),t.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&(e=e.concat(t.graphic.getAssociatedGraphics())),t):t}),this._redraw(e)},update:function(){this._clearLayersOutBounds(),this._redrawLayersInBounds(),this._renderer._ctx.clearRect(this._renderer._bounds.min.x,this._renderer._bounds.min.y,this._renderer._ctx.canvas.width,this._renderer._ctx.canvas.height),this._renderer._drawPlottingGraphics(this._getGraphicsInBounds())},redraw:function(){this._clearLayersOutBounds(),this._redrawLayersInBounds(),this._renderer._ctx.clearRect(this._renderer._bounds.min.x,this._renderer._bounds.min.y,this._renderer._ctx.canvas.width,this._renderer._ctx.canvas.height),this._renderer._drawPlottingGraphics(this._getGraphicsInBounds())},beforeAdd:function(t){L.Path.prototype.beforeAdd.call(this,t),this._vectorRenderer=L.svg(),t.hasLayer(this._vectorRenderer)||t.addLayer(this._vectorRenderer),this._vectorRenderer._container.style.zIndex=this.options.vectorZIndex,this._renderer=L.canvas(),t.hasLayer(this._renderer)||t.addLayer(this._renderer),this._renderer._container.style.zIndex=this.options.zIndex},onAdd:function(){L.Path.prototype.onAdd.call(this),this._map.addLayer(this._editLayer)},onRemove:function(){L.Path.prototype.onRemove.call(this),map.hasLayer(this._vectorRenderer)&&map.removeLayer(this._vectorRenderer),map.hasLayer(this._renderer)&&map.removeLayer(this._renderer),this._map.removeLayer(this._editLayer)},getRenderer:function(t){return t!==SuperMap.Plot.SymbolType.DOTSYMBOL&&t!==SuperMap.Plot.SymbolType.SYMBOLTEXT&&t!==SuperMap.Plot.SymbolType.SYMBOLTEXT1&&t!==SuperMap.Plot.SymbolType.PICTURE&&t!==SuperMap.Plot.SymbolType.TEXTSYMBOL?this._vectorRenderer:this._renderer},getFeaturesInBounds:function(){var t=[],e=this,o=this._map.getBounds();return this._graphics.map(function(e){return"none"!==e.feature.style.display&&o.contains(e.getLatLng())?t.push(e.feature):"none"!==e.feature.style.display&&null!=e.feature.trajectory&&e.feature.trajectory.getDisplayLatLngs(o).length>0&&t.push(e.feature),e}),this._vectors.map(function(i){return i.getBounds().isValid()&&e._intersects(o,i.getLatLngs())&&t.push(i),i}),t},_redraw:function(t){var e=[];null!=t&&SuperMap.Util.isArray(t)?e=e.concat(t):null!=t&&t instanceof he&&e.push(t);var o=this;o._renderer._redrawBounds&&(o._renderer._redrawBounds.min._floor(),o._renderer._redrawBounds.max._ceil(),o._renderer._clear(),o._graphics.map(function(t){return null!=t._pxBounds&&t._pxBounds.intersects(o._renderer._redrawBounds)&&-1===SuperMap.Util.indexOf(e,t)&&e.push(t),t}),o._renderer._drawPlottingGraphics(e))},_update:function(){this._map&&this.getVisibility()&&this._updatePath()},_containsPoint:function(){return!1},_updatePath:function(){this._clearLayersOutBounds(),this._redrawLayersInBounds(),this._renderer._ctx.clearRect(this._renderer._bounds.min.x,this._renderer._bounds.min.y,this._renderer._ctx.canvas.width,this._renderer._ctx.canvas.height),this._renderer._drawPlottingGraphics(this._getGraphicsInBounds())},_project:function(){var t=this;t._pxBounds=L.bounds(L.point(0,0),L.point(0,0)),t._getGraphicsInBounds().map(function(e){return e._project(),t._pxBounds.extend(e._pxBounds.min),t._pxBounds.extend(e._pxBounds.max),e}),t._getLayersInBounds().map(function(e){return e._project(),t._pxBounds.extend(e._pxBounds.min),t._pxBounds.extend(e._pxBounds.max),e})},_getGraphicsInBounds:function(){var t=[],e=this._map.getBounds();return this._graphics.map(function(o){return"none"!==o.feature.style.display&&e.contains(o.getLatLng())&&(null!=o.getImage()&&o.getUuid()===o.getImage().generateUuidFromFeature()||o.update(),t.push(o)),o}),t},_getLayersInBounds:function(){var t=this,e=[],o=t._map.getBounds();return this._vectors.map(function(i){return i.getBounds().isValid()&&t._intersects(o,i.getLatLngs())&&e.push(i),i}),e},_clearLayersOutBounds:function(){var t=this,e=t._map.getBounds();this._vectors.map(function(o){return o.getBounds().isValid()&&!t._intersects(e,o.getLatLngs())&&o._clearComponents(),o})},_redrawLayersInBounds:function(){var t=this,e=t._map.getBounds();this._vectors.map(function(o){return!o.getBounds().isValid()&&t._intersects(e,o.getLatLngs())&&o.redraw(),o})},_intersects:function(t,e){for(let o=0;o<e.length;o++)if(t.contains(e[o]))return!0;return!1},_addTrajectory:function(t){t._map=this._map,t._renderer=this._vectorRenderer,t.addEventParent(this),t.onAdd()},_removeTrajectory:function(t){t.removeEventParent(this),t.onRemove()},_handleClick:function(t){var e=this;if(!1!==this.isSelected&&!1!==this.visibility){var o=this.selectedFeatures.slice();this.selectedFeatures.length>0&&(!0===this.isEditable&&!1===this.isLocked&&e._map&&e._map.getPlotEditControl()&&(e._editLayer.removeFeatures(this.selectedFeatures),this.addFeatures(this.selectedFeatures)),this.selectedFeatures.length=0);var i=e.getFeaturesInBounds();for(let s=0,n=i.length;s<n;s++){let n=!1;if(null!=i[s].graphic&&i[s].graphic._containsPoint(this._map.latLngToLayerPoint(t.latlng))&&(n=!0),null==i[s].graphic&&i[s].components.length>0)for(var l in i[s].components)if(i[s].components[l]._containsPoint(this._map.latLngToLayerPoint(t.latlng))){n=!0;break}if(n){if(!0===t.originalEvent.altKey&&!0!==t.originalEvent.ctrlKey&&-1!==SuperMap.Util.indexOf(o,i[s]))continue;if(!0===this.isEditable&&!1===this.isLocked&&e._map&&e._map.getPlotEditControl()&&(e._map.getPlotEditControl().unselectFeatures(),this.removeFeatures(i[s]),e._editLayer.addFeatures(i[s]),i[s].enableEdit||e._map.getPlotEditControl().enableEditFeatures(i[s]),e._map.getPlotEditControl().selectFeatures(i[s])),this.selectedFeatures.push(i[s]),e._map&&e._map.getPlotEditControl()&&(e._map.getPlotEditControl()._onTriggerMapClick=!1),!0!==t.originalEvent.ctrlKey)break}}o.length>0&&(this.fire(SuperMap.Plot.Event.movingtargetsunselected,{features:o}),o.length=0),this.selectedFeatures.length>0&&this.fire(SuperMap.Plot.Event.movingtargetsselected,{features:this.selectedFeatures}),L.DomEvent.stopPropagation(t)}},_handleContextmenu:function(t){if(!1!==this.isSelected&&!1!==this.visibility){var e=this.getFeaturesInBounds();for(let i=0,l=e.length;i<l;i++){let l=!1;if(null!=e[i].graphic&&e[i].graphic._containsPoint(this._map.latLngToLayerPoint(t.latlng))&&(l=!0),null==e[i].graphic&&e[i].components.length>0)for(var o in e[i].components)if(e[i].components[o]._containsPoint(this._map.latLngToLayerPoint(t.latlng))){l=!0;break}if(l){this.fire(SuperMap.Plot.Event.movingtargetcontextmenu,{features:[e[i]]});break}}L.DomEvent.stopPropagation(t)}},_getSymbolDataFromCache:function(t,e){var o=L.supermap.plotting.getControl(this._map,this.serverUrl,{serviceParams:this.options.serviceParams}).getSymbolLibManager().getSymbolLibByLibId(t);return null!==o?o.getSymbolData(e):null},_cacheSymbolData:function(t){var e=L.supermap.plotting.getControl(this._map,this.serverUrl,{serviceParams:this.options.serviceParams}).getSymbolLibManager().getSymbolLibByLibId(t.libID);null!==e&&e.cacheSymbolData(t)},_generateFromFeature:function(t){var e="";if(t.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL){if(e=t.libID.toString()+"_"+t.code.toString()+"_"+Math.round(t.symbolSize.w).toString()+"_"+Math.round(t.symbolSize.h).toString()+"_"+t.textContent+"_"+t.annotationPosition.toString()+"_"+t.dRotate.toString()+this._styleToString(t.style)+"_"+t.textDisplay.toString()+"_"+t.surroundLineType.toString(),null!=t.symbolTexts&&t.symbolTexts.length>0)for(let o=0;o<t.symbolTexts.length;o++)e+=this._symbolTextToString(t.symbolTexts[o]);if(null!=t.bloodVolumes&&t.bloodVolumes.length>0)for(let o=0;o<t.bloodVolumes.length;o++)e+=this._bloodVolumeToString(t.bloodVolumes[o]);if(null!=t.pictureFrames&&t.pictureFrames.length>0)for(let o=0;o<t.pictureFrames.length;o++)e+=this._pictureFrameToString(t.pictureFrames[o])}else t.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT?(e=t.libID.toString()+"_"+t.code.toString()+"_"+t.associatedUuid+"_"+t.addFrame.toString(),1===t.symbolTexts.length&&(e+=this._symbolTextToString(t.symbolTexts[0]))):t.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1&&(e=t.libID.toString()+"_"+t.code.toString()+"_"+t.associatedUuid+"_"+t.textContent+"_"+t.space.toString()+"_"+t.offsetX.toString()+"_"+t.offsetY.toString()+this._styleToString(t.style));return e},_symbolTextToString:function(t){var e="";return null!=t.textContent&&(e+="_"+t.textContent),null!=t.textPosition&&(e+="_"+t.textPosition.toString()),null!=t.offsetX&&(e+="_"+t.offsetX.toString()),null!=t.offsetY&&(e+="_"+t.offsetY.toString()),null!=t.border&&(e+="_"+t.border.toString()),null!=t.showRelationLine&&(e+="_"+t.showRelationLine.toString()),null!=t.paddingX&&(e+="_"+t.paddingX.toString()),null!=t.paddingY&&(e+="_"+t.paddingY.toString()),null!=t.style&&(e+=this._styleToString(t.style)),null!=t.lineStyle&&(null!=t.lineStyle.color&&(e+="_"+t.lineStyle.color),null!=t.lineStyle.lineSymbolID&&(e+="_"+t.lineStyle.lineSymbolID),null!=t.lineStyle.opacity&&(e+="_"+t.lineStyle.opacity),null!=t.lineStyle.weight&&(e+="_"+t.lineStyle.weight)),e},_bloodVolumeToString:function(t){var e="";return null!=t.volume&&(e+="_"+t.volume),null!=t.position&&(e+="_"+t.position.toString()),null!=t.offsetX&&(e+="_"+t.offsetX.toString()),null!=t.offsetY&&(e+="_"+t.offsetY.toString()),null!=t.width&&(e+="_"+t.width.toString()),null!=t.height&&(e+="_"+t.height.toString()),null!=t.style&&(null!=t.style.color&&(e+="_"+t.style.color),null!=t.style.opacity&&(e+="_"+t.style.opacity.toString()),null!=t.style.weight&&(e+="_"+t.style.weight.toString()),null!=t.style.remainingVolumeColor&&(e+="_"+t.style.remainingVolumeColor),null!=t.style.remainingVolumeOpacity&&(e+="_"+t.style.remainingVolumeOpacity.toString()),null!=t.style.consumeVolumeColor&&(e+="_"+t.style.consumeVolumeColor),null!=t.style.consumeVolumeOpacity&&(e+="_"+t.style.consumeVolumeOpacity.toString())),e},_pictureFrameToString:function(t){var e="";return null!=t.path&&(e+="_"+t.path),null!=t.position&&(e+="_"+t.position.toString()),null!=t.offsetX&&(e+="_"+t.offsetX.toString()),null!=t.offsetY&&(e+="_"+t.offsetY.toString()),null!=t.width&&(e+="_"+t.width.toString()),null!=t.height&&(e+="_"+t.height.toString()),e},_styleToString:function(t){var e="";return null!=t.fontFamily&&(e+="_"+t.fontFamily),null!=t.fontSize&&(e+="_"+t.fontSize),null!=t.fontColor&&(e+="_"+t.fontColor),null!=t.fontStroke&&(e+="_"+t.fontStroke),null!=t.fontStrokeColor&&(e+="_"+t.fontStrokeColor),null!=t.fontStrokeWidth&&(e+="_"+t.fontStrokeWidth),null!=t.fontBackground&&(e+="_"+t.fontBackground),null!=t.fontBackgroundColor&&(e+="_"+t.fontBackgroundColor),null!=t.fontShadow&&(e+="_"+t.fontShadow),null!=t.fontShadowColor&&(e+="_"+t.fontShadowColor),null!=t.fontShadowOffsetX&&(e+="_"+t.fontShadowOffsetX),null!=t.fontShadowOffsetY&&(e+="_"+t.fontShadowOffsetY),null!=t.color&&(e+="_"+t.color),null!=t.weight&&(e+="_"+t.weight),null!=t.opacity&&(e+="_"+t.opacity),null!=t.lineSymbolID&&(e+="_"+t.lineSymbolID),null!=t.dashArray&&(e+="_"+t.dashArray),null!=t.fill&&(e+="_"+t.fill),null!=t.fillSymbolID&&(e+="_"+t.fillSymbolID),null!=t.fillColor&&(e+="_"+t.fillColor),null!=t.fillOpacity&&(e+="_"+t.fillOpacity),null!=t.fillBackColor&&(e+="_"+t.fillBackColor),null!=t.fillBackOpacity&&(e+="_"+t.fillBackOpacity),null!=t.fillGradientMode&&(e+="_"+t.fillGradientMode),e}});L.supermap.plotting.movingTargetLayer=function(t,e,o){return new ue(t,e,o)};var he=L.Class.extend({_image:null,_lastPos:null,_lastImage:null,_latlng:null,_uuid:null,_trajectoryLine:null,_trajectoryPoints:null,_trajectoryPointGraphic:{},_rotation:null,options:{graphicWidth:0,graphicHeight:0},initialize:function(t,e){e=e||{},this.feature=t,t.graphic=this,this._latlng=e._latlng,this._image=e._image,this._uuid=e._uuid,this._rotation=0,this._trajectoryPoints=[]},onAdd:function(t){this.feature.movingTarget=!0,this.feature._map=t._map,this.feature.layer=t,this.layer=t,this._renderer=t._renderer,this._map=t._map,this.update()},onRemove:function(){null!=this._trajectoryLine&&this.layer instanceof ue&&this.layer._removeTrajectory(this._trajectoryLine);for(let t=0;t<this._trajectoryPoints.length;t++)this.layer._removeTrajectory(this._trajectoryPoints[t]);this.feature._clearComponents(),this.layer=null,this._renderer=null,this._map=null,delete this.feature.graphic,delete this.feature.movingTarget},redraw:function(){null!=this.layer&&null!=this._renderer&&this.layer.getVisibility()&&this.layer.updateFeatures(this.feature)},update:function(){if(null!=this.layer&&null!=this._renderer&&this.layer.isGraphic(this.feature.symbolType)){if(this.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||this.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1){var t=this._map.getFeatureByUuid(this.feature.associatedUuid);if(null==t||"none"===t.style.display)return}if(this._project(),this.layer._renderer._extendRedrawBounds(this),"none"!==this.feature.style.display&&this._map.getBounds().contains(this.feature.getLatLngs()[0])){var e=this._uuid,o="";null!=this._image&&(o=this._image.generateUuidFromFeature()),e!==o&&(this.layer.cacheImages[e]&&0==--this.layer.cacheImages[e].imgCount&&delete this.layer.cacheImages[e],this.layer.cacheImages[o]?this._cloneImage(o):(null==this._image&&(this._image=new ut(this.feature)),this._image.render(),this.layer.cacheImages[o]={img:this._image.getCacheInfo(),imgCount:1}),this._uuid=o)}this.setLatLng(this.feature.getLatLngs()[0]),this.feature.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&(this._updateSymbolTexts(),this._updateJoinLines(),null==this._lastPos?this._lastPos=L.latLng(this._latlng.lat,this._latlng.lng):(this._lastPos.lat=this._latlng.lat,this._lastPos.lng=this._latlng.lng),null==this._lastImage&&null!=this._image?this._lastImage=[this._image.size[0],this._image.size[1]]:null!=this._image&&(this._lastImage[0]=this._image.size[0],this._lastImage[1]=this._image.size[1]))}},getAssociatedGraphics:function(){for(var t=[],e=0;e<this.feature.geoSymbolTexts.length;e++){var o=this.feature.geoSymbolTexts[e];null!==o&&(null!=o.graphic&&null!=o.graphic.layer&&t.push(o.graphic))}return t},_updateSymbolTexts:function(){if(null!=this.feature.geoSymbolTexts&&0!==this.feature.geoSymbolTexts.length&&(null==this._lastPos||this._lastPos.lat!==this._latlng.lat||this._lastPos.lng!==this._latlng.lng||null==this._lastImage||this._lastImage[0]!=this._image.size[0]||this._lastImage[1]!=this._image.size[1]))for(var t=0;t<this.feature.geoSymbolTexts.length;t++){var e=this.feature.geoSymbolTexts[t];null!==e&&(null!=e.graphic&&null!=e.graphic.layer&&"none"!==e.style.display&&(e.graphic._project(),this._renderer._extendRedrawBounds(e.graphic),e._calculatePositionPoints(),e.graphic.update()))}},_updateJoinLines:function(){if(null!=this.feature.joinLines&&0<this.feature.joinLines.length&&(null==this._lastPos||this._lastPos.lat!==this._latlng.lat||this._lastPos.lng!==this._latlng.lng))for(let e=0;e<this.joinLines.feature.length;e++){var t=this.feature.joinLines[e];null!==t&&null!=t.layer&&("none"!==t.style.display&&t instanceof bt&&t.redraw())}},setLatLng:function(t){if(this._latlng=t,this.layer instanceof ue&&(this.feature.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL||this.feature.symbolType===SuperMap.Plot.SymbolType.PICTURE)&&null!=this.feature.trajectory){if(this.feature.trajectory.addLatLng(t),"none"===this.feature.style.display){null!=this._trajectoryLine&&(this.layer._removeTrajectory(this._trajectoryLine),this._trajectoryLine=null);for(let t=0;t<this._trajectoryPoints.length;t++)this.layer._removeTrajectory(this._trajectoryPoints[t]),delete this._trajectoryPoints[t],this._trajectoryPoints[t]=null;return void(this._trajectoryPoints.length=0)}if(!0===this.feature.autoRotation&&this.feature.trajectory.latlngs.length>=2){let t=new SuperMap.Geometry.Point(this.feature.trajectory.latlngs[this.feature.trajectory.latlngs.length-2].lng,this.feature.trajectory.latlngs[this.feature.trajectory.latlngs.length-2].lat),e=new SuperMap.Geometry.Point(this.feature.trajectory.latlngs[this.feature.trajectory.latlngs.length-1].lng,this.feature.trajectory.latlngs[this.feature.trajectory.latlngs.length-1].lat),o=SuperMap.Plot.PlottingUtil.radian(t,e)*SuperMap.Plot.PlottingUtil.RTOD;this._rotation=o-90}let i=this.feature.trajectory.getDisplayLatLngs(this._map.getBounds());if(!0===this.feature.trajectory.showTrackingLine?i.length<=1&&null!=this._trajectoryLine?(this.layer._removeTrajectory(this._trajectoryLine),delete this._trajectoryLine,this._trajectoryLine=null):i.length>1&&null===this._trajectoryLine?(this._trajectoryLine=L.polyline(i,{color:this.feature.trajectory.style.color,weight:this.feature.trajectory.style.weight,opacity:this.feature.trajectory.style.opacity}),this.layer._addTrajectory(this._trajectoryLine)):i.length>1&&null!==this._trajectoryLine&&(this._trajectoryLine.options.color===this.feature.trajectory.style.color&&this._trajectoryLine.options.weight===this.feature.trajectory.style.weight&&this._trajectoryLine.options.opacity===this.feature.trajectory.style.opacity||this._trajectoryLine.setStyle({color:this.feature.trajectory.style.color,weight:this.feature.trajectory.style.weight,opacity:this.feature.trajectory.style.opacity}),this._trajectoryLine.setLatLngs(i)):null!=this._trajectoryLine&&(this.layer._removeTrajectory(this._trajectoryLine),this._trajectoryLine=null),!0===this.feature.trajectory.showTrackingPoint){if(0===i.length&&this._trajectoryPoints.length>0){for(let t=0;t<this._trajectoryPoints.length;t++)this.layer._removeTrajectory(this._trajectoryPoints[t]),delete this._trajectoryPoints[t],this._trajectoryPoints[t]=null;this._trajectoryPoints.length=0}else if(i.length>0){var e=this.feature.trajectory.generateUuidKey();let t=[];if(this._trajectoryPointGraphic.hasOwnProperty(e))for(let e=0;e<this._trajectoryPoints.length;){let o=SuperMap.Util.indexOf(i,this._trajectoryPoints[e].getLatLngs()[0]);-1!==o?(t.push(o),e++):(this.layer._removeTrajectory(this._trajectoryPoints[e]),delete this._trajectoryPoints[e],this._trajectoryPoints[e]=null,this._trajectoryPoints.splice(e,1))}else{for(let t=0;t<this._trajectoryPoints.length;t++)this.layer._removeTrajectory(this._trajectoryPoints[t]),delete this._trajectoryPoints[t],this._trajectoryPoints[t]=null;this._trajectoryPoints.length=0}for(let l=0;l<i.length;l++){if(-1!==SuperMap.Util.indexOf(t,l))continue;var o={externalGraphic:this._generateTrackingPointImage(this.feature.trajectory.trackingPointStyle,this.feature.trajectory.trackingPointRadius,this.feature.trajectory.style,e),graphicWidth:2*this.feature.trajectory.trackingPointRadius,graphicHeight:2*this.feature.trajectory.trackingPointRadius};let s=L.supermap.plotting.pointImage([i[l]],o);this.layer._addTrajectory(s),this._trajectoryPoints.push(s)}}}else{for(let t=0;t<this._trajectoryPoints.length;t++)this.layer._removeTrajectory(this._trajectoryPoints[t]),delete this._trajectoryPoints[t],this._trajectoryPoints[t]=null;this._trajectoryPoints.length=0}}},setImage:function(t){this._image=t},setUuid:function(t){this._uuid=t},getLatLng:function(){return this._latlng},getImage:function(){return this._image},getUuid:function(){return this._uuid},_cloneImage:function(t){if(this.layer.cacheImages[t]){this.layer.cacheImages[t].imgCount++,null==this._image&&(this._image=new ut(this.feature)),this._image._ctx.clearRect(0,0,this._image._ctx.width,this._image._ctx.height),this._image.anchor=L.point(this.layer.cacheImages[t].img.anchor.x,this.layer.cacheImages[t].img.anchor.y),this._image.size=[this.layer.cacheImages[t].img.size[0],this.layer.cacheImages[t].img.size[1]],this._image.redrawSize=[this.layer.cacheImages[t].img.redrawSize[0],this.layer.cacheImages[t].img.redrawSize[1]],this._image.redrawAnchor=L.point(this.layer.cacheImages[t].img.redrawAnchor.x,this.layer.cacheImages[t].img.redrawAnchor.y),this._image.bounds=L.latLngBounds(this.layer.cacheImages[t].img.bounds.getSouthEast(),this.layer.cacheImages[t].img.bounds.getNorthWest()),this._image.latLng=L.latLng(this.layer.cacheImages[t].img.latLng.lat,this.layer.cacheImages[t].img.latLng.lng),this._image.fromZoom=this.layer.cacheImages[t].img.fromZoom,null!=this._image.componentLatLngs&&this._image.componentLatLngs.length>0&&(this._image.componentLatLngs.length=0),this._image.componentLatLngs=[];for(var e=0;e<this.layer.cacheImages[t].img.componentLatLngs.length;e++)this._image.componentLatLngs.push(L.Util.cloneLatLngs(this.layer.cacheImages[t].img.componentLatLngs[e]));this._image.canvasEle.width=this._image.size[0],this._image.canvasEle.height=this._image.size[1],this._image._ctx.drawImage(this.layer.cacheImages[t].img.canvas,0,0),this._image.canvas=this._image._ctx.canvas,null!=this.layer.cacheImages[t].img.annotation?(null==this._image.annotation&&(this._image.annotation=new it(this._image.feature)),this._image.annotation.clear(),this._image.annotation.anchor=L.point(this.layer.cacheImages[t].img.annotation.anchor.x,this.layer.cacheImages[t].img.annotation.anchor.y),this._image.annotation.size=[this.layer.cacheImages[t].img.annotation.size[0],this.layer.cacheImages[t].img.annotation.size[1]],this._image.annotation.position=this.layer.cacheImages[t].img.annotation.position,this._image.annotation.offsetX=this.layer.cacheImages[t].img.annotation.offsetX,this._image.annotation.offsetY=this.layer.cacheImages[t].img.annotation.offsetY,this._image.annotation.canvasEle.width=this._image.annotation.size[0],this._image.annotation.canvasEle.height=this._image.annotation.size[1],this._image.annotation._ctx.drawImage(this.layer.cacheImages[t].img.annotation.canvas,0,0),this._image.annotation.canvas=this._image.annotation._ctx.canvas):null!=this._image.annotation&&(delete this._image.annotation,this._image.annotation=null),null!=this._image.images&&this._image.images.length>0&&(this._image.images.length=0),this._image.images=[];for(let e=0;e<this.layer.cacheImages[t].img.images.length;e++){let o={};o=SuperMap.Util.copyAttributes(o,this.layer.cacheImages[t].img.images[e]),this._image.images.push(o)}null!=this._image.pictureFrames&&this._image.pictureFrames.length>0&&(this._image.pictureFrames.length=0),this._image.pictureFrames=[];for(let e=0;e<this.layer.cacheImages[t].img.pictureFrames.length;e++){let o={};o=SuperMap.Util.copyAttributes(o,this.layer.cacheImages[t].img.pictureFrames[e]),this._image.pictureFrames.push(o)}for(let e=0;e<this.layer.cacheImages[t].img.symbolTexts.length;e++)this._image.symbolTexts.length<=e&&this._image.symbolTexts.push(new it(this._image.feature)),this._image.symbolTexts[e].clear(),this._image.symbolTexts[e].anchor=L.point(this.layer.cacheImages[t].img.symbolTexts[e].anchor.x,this.layer.cacheImages[t].img.symbolTexts[e].anchor.y),this._image.symbolTexts[e].size=[this.layer.cacheImages[t].img.symbolTexts[e].size[0],this.layer.cacheImages[t].img.symbolTexts[e].size[1]],this._image.symbolTexts[e].position=this.layer.cacheImages[t].img.symbolTexts[e].position,this._image.symbolTexts[e].offsetX=this.layer.cacheImages[t].img.symbolTexts[e].offsetX,this._image.symbolTexts[e].offsetY=this.layer.cacheImages[t].img.symbolTexts[e].offsetY,this._image.symbolTexts[e].canvasEle.width=this._image.symbolTexts[e].size[0],this._image.symbolTexts[e].canvasEle.height=this._image.symbolTexts[e].size[1],this._image.symbolTexts[e]._ctx.drawImage(this.layer.cacheImages[t].img.symbolTexts[e].canvas,0,0),this._image.symbolTexts[e].canvas=this._image.symbolTexts[e]._ctx.canvas;for(let e=this.layer.cacheImages[t].img.symbolTexts.length;e<this._image.symbolTexts.length;)delete this._image.symbolTexts[e],this._image.symbolTexts.splice(e,1);for(let e=0;e<this.layer.cacheImages[t].img.bloodVolumes.length;e++)this._image.bloodVolumes.length<=e&&this._image.bloodVolumes.push(new it(this._image.feature)),this._image.bloodVolumes[e].clear(),this._image.bloodVolumes[e].anchor=L.point(this.layer.cacheImages[t].img.bloodVolumes[e].anchor.x,this.layer.cacheImages[t].img.bloodVolumes[e].anchor.y),this._image.bloodVolumes[e].size=[this.layer.cacheImages[t].img.bloodVolumes[e].size[0],this.layer.cacheImages[t].img.bloodVolumes[e].size[1]],this._image.bloodVolumes[e].position=this.layer.cacheImages[t].img.bloodVolumes[e].position,this._image.bloodVolumes[e].offsetX=this.layer.cacheImages[t].img.bloodVolumes[e].offsetX,this._image.bloodVolumes[e].offsetY=this.layer.cacheImages[t].img.bloodVolumes[e].offsetY,this._image.bloodVolumes[e].canvasEle.width=this._image.bloodVolumes[e].size[0],this._image.bloodVolumes[e].canvasEle.height=this._image.bloodVolumes[e].size[1],this._image.bloodVolumes[e]._ctx.drawImage(this.layer.cacheImages[t].img.bloodVolumes[e].canvas,0,0),this._image.bloodVolumes[e].canvas=this._image.bloodVolumes[e]._ctx.canvas;for(let e=this.layer.cacheImages[t].img.bloodVolumes.length;e<this._image.bloodVolumes.length;)delete this._image.bloodVolumes[e],this._image.bloodVolumes.splice(e,1)}},_containsPoint:function(t){if(null!=this._latlng&&null!=this._image){var e=this._map.latLngToLayerPoint(this._latlng),o=L.point(e.x-this._image.anchor.x,e.y-this._image.anchor.y),i=L.point(e.x+(this._image.size[0]-this._image.anchor.x),e.y+(this._image.size[1]-this._image.anchor.y));let l=L.bounds(o,i);if(l.min._floor(),l.max._ceil(),null!=l&&l.contains(t))return!0}return!1},_project:function(){if(null!=this._latlng&&null!=this._image){var t=this._map.latLngToLayerPoint(this._latlng),e=L.point(t.x-this._image.redrawAnchor.x,t.y-this._image.redrawAnchor.y),o=L.point(t.x+(this._image.redrawSize[0]-this._image.redrawAnchor.x),t.y+(this._image.redrawSize[1]-this._image.redrawAnchor.y));this._pxBounds=L.bounds(e,o),this._pxBounds.min._floor(),this._pxBounds.max._ceil()}},_generateTrackingPointImage:function(t,e,o,i){var l=null;if(this._trajectoryPointGraphic.hasOwnProperty(i))return this._trajectoryPointGraphic[i];delete this._trajectoryPointGraphic;var s=document.createElement("canvas");s.width=2*e+2*o.weight,s.height=2*e+2*o.weight,document.body.appendChild(s);var n=s.getContext("2d");return 0===t?(n.fillStyle=o.color,n.beginPath(),n.arc(e+o.weight,e+o.weight,e,0,2*Math.PI),n.fill()):1===t?(n.globalAlpha=o.opacity,n.strokeStyle=o.color,n.lineWidth=o.weight,n.beginPath(),n.arc(e+o.weight,e+o.weight,e,0,2*Math.PI),n.stroke()):2===t?(n.fillStyle=o.color,n.beginPath(),n.moveTo(o.weight,2*e+o.weight),n.lineTo(2*e+o.weight,2*e+o.weight),n.lineTo(e+o.weight,o.weight),n.lineTo(o.weight,2*e+o.weight),n.fill()):3===t?(n.globalAlpha=o.opacity,n.strokeStyle=o.color,n.lineWidth=o.weight,n.beginPath(),n.moveTo(o.weight,2*e+o.weight),n.lineTo(2*e+o.weight,2*e+o.weight),n.lineTo(e+o.weight,o.weight),n.lineTo(o.weight,2*e+o.weight),n.stroke()):4===t&&(n.globalAlpha=o.opacity,n.strokeStyle=o.color,n.lineWidth=o.weight,n.beginPath(),n.moveTo(o.weight,e+o.weight),n.lineTo(2*e+o.weight,e+o.weight),n.moveTo(e+o.weight,o.weight),n.lineTo(e+o.weight,2*e+o.weight),n.stroke()),l=s.toDataURL("image/png","image/octet-stream"),document.body.removeChild(s),this._trajectoryPointGraphic[i]=l,l}}),ge=se.extend({addFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]),se.prototype.addFeatures.call(this,t)}});L.supermap.plotting.animationLayer=function(t,e){return new ge(t,e)};var ce=L.Evented.extend({startTime:0,duration:5,repeat:!1,name:null,animationState:SuperMap.Plot.GOAnimationState.UNKNOWN,goFeature:null,animationGOFeature:null,innerStartTime:0,lastExecute:!1,pauseTime:0,ratio:0,symbolTexts:[],initialize:function(t){SuperMap.Util.extend(this,t)},destroy:function(){this.showAnimationFeature(!1),this.removeAnimationFeature(),this.goFeature=null,this.animationGOFeature=null,this.name=null,this.animationState=SuperMap.Plot.GOAnimationState.UNKNOWN;for(var t=0;t<this.symbolTexts.length;t++)this.symbolTexts[t]=null;this.symbolTexts=[]},setGOFeature:function(t){if(void 0===t||null===t||null===t.layer)return!1;var e=L.supermap.plotting.getControl().getGOAnimationManager();if(null===e.goAnimationLayer)return!1;if(this.goFeature=t,this.animationGOFeature=this.cloneGOFeature(t),null===this.animationGOFeature)return!1;if(e.goAnimationLayer.addFeatures(this.animationGOFeature),this.getGOAnimationType()===SuperMap.Plot.GOAnimationType.ANIMATION_WAY&&0!==t.geoSymbolTexts.length)for(var o=0;o<t.geoSymbolTexts.length;o++){var i=t.geoSymbolTexts[o];if(null!==i){var l=i.getSymbolData();l.associatedUuid=this.animationGOFeature.uuid;var s={symbolData:l,map:i.map,serverUrl:i.serverUrl},n=L.supermap.plotting.PlottingObject.createSymbol(i.libID,i.code,null,s,null);this.symbolTexts.push(n),e.goAnimationLayer.addFeatures(n)}}return this.showAnimationFeature(!1),!0},getGOFeature:function(){return this.goFeature},play:function(){var t=new Date;this.animationState===SuperMap.Plot.GOAnimationState.PAUSE?this.innerStartTime+=t.getTime()/1e3-this.pauseTime:this.innerStartTime=t.getTime()/1e3,this.lastExecute=!1,this.animationState=SuperMap.Plot.GOAnimationState.PLAYING;var e=L.supermap.plotting.getControl().getGOAnimationManager();this.goFeature.isSelected&&e.map.getPlotEditControl()&&e.map.getPlotEditControl().unselectFeatures(this.goFeature),this.showAnimationFeature(!0)},stop:function(){this.animationState=SuperMap.Plot.GOAnimationState.STOP},pause:function(){this.animationState=SuperMap.Plot.GOAnimationState.PAUSE;var t=new Date;this.pauseTime=t.getTime()/1e3},reset:function(){this.animationState=SuperMap.Plot.GOAnimationState.RESET,this.showAnimationFeature(!1)},execute:function(){return!1},canExecute:function(){if(this.animationState!==SuperMap.Plot.GOAnimationState.PLAYING)return!1;var t=(new Date).getTime()/1e3;if(this.innerStartTime+this.startTime>t)return!1;var e=this.getRatioByTime();return!(e>1&&this.lastExecute||e<0)},getRatioByTime:function(){if(this.animationState!==SuperMap.Plot.GOAnimationState.PLAYING)return 0;var t=(new Date).getTime()/1e3;if(this.innerStartTime+this.startTime>t)return 0;var e=(t-this.innerStartTime-this.startTime)/this.duration;return e>=1&&!this.lastExecute?this.repeat?(this.innerStartTime=(new Date).getTime()/1e3,e=0,this.lastExecute=!1,this.animationState=SuperMap.Plot.GOAnimationState.PLAYING):(e=1,this.lastExecute=!0,this.animationState=SuperMap.Plot.GOAnimationState.STOP):e<0&&(e=0),this.ratio=e,e},showAnimationFeature:function(t){if(null!==this.animationGOFeature&&null!==this.animationGOFeature.style&&(this.resetAnimationFeature(t),this.animationGOFeature.redraw()),null!==this.goFeature&&null!==this.goFeature.style){if(t){this.goFeature.style.display="none";for(let t=0;t<this.goFeature.geoSymbolTexts.length;t++)this.goFeature.geoSymbolTexts[t].style.display="none"}else{this.goFeature.style.display="display";for(let t=0;t<this.goFeature.geoSymbolTexts.length;t++)this.goFeature.geoSymbolTexts[t].style.display="display"}this.goFeature.redraw();for(let t=0;t<this.goFeature.geoSymbolTexts.length;t++)this.goFeature.geoSymbolTexts[t].redraw()}},resetAnimationFeature:function(t){if(this.animationGOFeature.symbolData=SuperMap.Plot.PlottingUtil.cloneObject(this.goFeature.getSymbolData()),this.animationGOFeature.symbolData.uuid=this.animationGOFeature.uuid,SuperMap.Plot.AnalysisSymbol.parseSymbolData(this.animationGOFeature,this.animationGOFeature.symbolData,!0),t){this.animationGOFeature.style.display="display";for(let t=0;t<this.symbolTexts.length;t++)this.symbolTexts[t].style.display="display",this.symbolTexts[t].redraw()}else{this.animationGOFeature.style.display="none";for(let t=0;t<this.symbolTexts.length;t++)this.symbolTexts[t].style.display="none",this.symbolTexts[t].redraw();this.getGOAnimationType()===SuperMap.Plot.GOAnimationType.ANIMATION_WAY&&null!==this.pathFeature&&(this.pathFeature.options.opacity=0,this.pathFeature.redraw())}},cloneGOFeature:function(t){var e=null,o=L.supermap.plotting.getControl().getGOAnimationManager().goAnimations;if(null!==o)for(var i=0;i<o.length;i++){var l=o[i];if(l.goFeature===t){e=l.animationGOFeature;break}}return null===e&&((e=t.clone()).enableEdit=!1),e},removeAnimationFeature:function(){if(null!==this.animationGOFeature){var t=L.supermap.plotting.getControl().getGOAnimationManager(),e=t.goAnimations,o=!1;if(null!==e)for(let t=0;t<e.length;t++){var i=e[t];if(i!==this&&i.animationGOFeature===this.animationGOFeature){o=!0;break}}if(!o){t.goAnimationLayer.removeFeatures(this.animationGOFeature);for(let e=0;e<this.symbolTexts.length;)t.goAnimationLayer.removeFeatures(symbolTexts[e])}}},getJSONData:function(){var t={};return t.goFeatureUuid=this.goFeature.uuid,t.name=this.name,t.startTime=this.startTime,t.duration=this.duration,t.repeat=this.repeat,t.type=this.getGOAnimationType(),t},fromJSONData:function(t){this.startTime=t.startTime,this.duration=t.duration,this.repeat=t.repeat}});L.supermap.plotting.GOAnimation=ce;var ye=ce.extend({lineColorAnimation:!1,startLineColor:"#FF0000",endLineColor:"#0000FF",lineWidthAnimation:!1,startLineWidth:0,endLineWidth:5,surroundLineColorAnimation:!1,startSurroundLineColor:"#ffff00",endSurroundLineColor:"#00ffff",surroundLineWidthAnimation:!1,startSurroundLineWidth:0,endSurroundLineWidth:1,getGOAnimationType:function(){return SuperMap.Plot.GOAnimationType.ANIMATION_ATTRIBUTE},resetAnimationFeature:function(t){ce.prototype.resetAnimationFeature.call(this,t),t&&(this.animationGOFeature.style.color=this.startLineColor,this.animationGOFeature.style.weight=this.startLineWidth,this.animationGOFeature.style.surroundLineColor=this.startSurroundLineColor,this.animationGOFeature.style.surroundLineWidth=this.startSurroundLineWidth)},execute:function(){if(!this.canExecute())return!1;var t=this.ratio,e=this._executeLineColorAnimation(t),o=this._executeLineWidthAnimation(t),i=this._executeSurroundLineColorAnimation(t),l=this._executeSurroundLineWidthAnimation(t);return e||o||i||l},_executeLineColorAnimation:function(t){if(!this.lineColorAnimation)return!1;var e=SuperMap.Plot.PlottingUtil.colorStringToRGB(this.startLineColor),o=SuperMap.Plot.PlottingUtil.colorStringToRGB(this.endLineColor),i=parseInt(e.red+(o.red-e.red)*t),l=parseInt(e.green+(o.green-e.green)*t),s=parseInt(e.blue+(o.blue-e.blue)*t);return this.animationGOFeature.setStyle({color:SuperMap.Plot.PlottingUtil.colorRGBToString({red:i,green:l,blue:s})}),!0},_executeLineWidthAnimation:function(t){return!!this.lineWidthAnimation&&(this.animationGOFeature.setStyle({weight:this.startLineWidth+(this.endLineWidth-this.startLineWidth)*t}),!0)},_executeSurroundLineColorAnimation:function(t){if(!this.surroundLineColorAnimation)return!1;var e=SuperMap.Plot.PlottingUtil.colorStringToRGB(this.startSurroundLineColor),o=SuperMap.Plot.PlottingUtil.colorStringToRGB(this.endSurroundLineColor),i=parseInt(e.red+(o.red-e.red)*t),l=parseInt(e.green+(o.green-e.green)*t),s=parseInt(e.blue+(o.blue-e.blue)*t);return this.animationGOFeature.setStyle({surroundLineColor:SuperMap.Plot.PlottingUtil.colorRGBToString({red:i,green:l,blue:s})}),!0},_executeSurroundLineWidthAnimation:function(t){return!!this.surroundLineWidthAnimation&&(this.animationGOFeature.setStyle({surroundLineWidth:this.startSurroundLineWidth+(this.endSurroundLineWidth-this.startSurroundLineWidth)*t}),!0)},getJSONData:function(){var t=ce.prototype.getJSONData.call(this);return t.lineColorAnimation=this.lineColorAnimation,t.startLineColor=this.startLineColor,t.endLineColor=this.endLineColor,t.lineWidthAnimation=this.lineWidthAnimation,t.startLineWidth=this.startLineWidth,t.endLineWidth=this.endLineWidth,t.surroundLineColorAnimation=this.surroundLineColorAnimation,t.startSurroundLineColor=this.startSurroundLineColor,t.endSurroundLineColor=this.endSurroundLineColor,t.surroundLineWidthAnimation=this.surroundLineWidthAnimation,t.startSurroundLineWidth=this.startSurroundLineWidth,t.endSurroundLineWidth=this.endSurroundLineWidth,t},fromJSONData:function(t){ce.prototype.fromJSONData.call(this,t),this.lineColorAnimation=t.lineColorAnimation,this.startLineColor=t.startLineColor,this.endLineColor=t.endLineColor,this.lineWidthAnimation=t.lineWidthAnimation,this.startLineWidth=t.startLineWidth,this.endLineWidth=t.endLineWidth,this.surroundLineColorAnimation=t.surroundLineColorAnimation,this.startSurroundLineColor=t.startSurroundLineColor,this.endSurroundLineColor=t.endSurroundLineColor,this.surroundLineWidthAnimation=t.surroundLineWidthAnimation,this.startSurroundLineWidth=t.startSurroundLineWidth,this.endSurroundLineWidth=t.endSurroundLineWidth}});L.supermap.plotting.GOAnimationAttribute=ye;var Pe=ce.extend({blinkInterval:500,blinkStyle:SuperMap.Plot.BlinkAnimationBlinkStyle.Blink_Frequency,blinkNumber:0,replaceStyle:SuperMap.Plot.BlinkAnimationReplaceStyle.Replace_NoColor,startColor:"#0000ff",endColor:"#ff0000",getGOAnimationType:function(){return SuperMap.Plot.GOAnimationType.ANIMATION_BLINK},execute:function(){if(!this.canExecute())return"none"===this.goFeature.style.display&&"none"===this.animationGOFeature.style.display&&(this.animationGOFeature.style.display="display",!0);var t=(new Date).getTime()/1e3,e=this.blinkInterval/1e3;return this.blinkStyle===SuperMap.Plot.BlinkAnimationBlinkStyle.Blink_Number&&(e=this.blinkInterval=this.duration/this.blinkNumber),(t-this.innerStartTime)%e<=e/2?this.replaceStyle===SuperMap.Plot.BlinkAnimationReplaceStyle.Replace_Color?(this.animationGOFeature.style.color=this.startColor,this.animationGOFeature.style.display="display"):this.animationGOFeature.style.display="none":(this.animationGOFeature.style.display="display",this.replaceStyle===SuperMap.Plot.BlinkAnimationReplaceStyle.Replace_Color&&(this.animationGOFeature.style.color=this.endColor)),this.animationGOFeature.redraw(),!0},getJSONData:function(){var t=ce.prototype.getJSONData.call(this);return t.blinkStyle=this.blinkStyle,t.blinkInterval=this.blinkInterval,t.blinkNumber=this.blinkNumber,t.replaceStyle=this.replaceStyle,t.startColor=this.startColor,t.endColor=this.endColor,t},fromJSONData:function(t){ce.prototype.fromJSONData.call(this,t),this.blinkStyle=t.blinkStyle,this.blinkInterval=t.blinkInterval,this.blinkNumber=t.blinkNumber,this.replaceStyle=t.replaceStyle,this.startColor=t.startColor,this.endColor=t.endColor}});L.supermap.plotting.GOAnimationBlink=Pe;var de=ce.extend({startScale:0,endScale:1,timeSpace:50,lastDrawTime:0,lineLength:0,controlPoints:[],initialize:function(t){ce.prototype.initialize.call(this,t),this.controlPoints=[],this.lineLength=0},getGOAnimationType:function(){return SuperMap.Plot.GOAnimationType.ANIMATION_GROW},_execute_1004:function(t){if(0===this.lineLength){this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs());var e=new SuperMap.Geometry.Point((this.controlPoints[0].x+this.controlPoints[1].x)/2,(this.controlPoints[0].y+this.controlPoints[1].y)/2);this.lineLength+=SuperMap.Plot.PlottingUtil.distance(e,this.controlPoints[2]);for(var o=3;o<this.controlPoints.length;o++)this.lineLength+=SuperMap.Plot.PlottingUtil.distance(this.controlPoints[o-1],this.controlPoints[o])}if(0===t)return this._executeAndRatioIsZero(),!0;var i=[],l=[];e=new SuperMap.Geometry.Point((this.controlPoints[0].x+this.controlPoints[1].x)/2,(this.controlPoints[0].y+this.controlPoints[1].y)/2),l.push(e);for(let t=2;t<this.controlPoints.length;t++)l.push(this.controlPoints[t].clone());i.push(this.controlPoints[0]),i.push(this.controlPoints[1]);var s=this._findPos(this.lineLength*t,l);for(let t=1;t<=s.pos;t++)i.push(l[t]);return i.push(s.pts),this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(i)),!0},_execute_1006:function(t){if(0===this.controlPoints.length){var e=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs());this.controlPoints=SuperMap.Plot.PlottingUtil.operateControlPoints(e)}if(0===t)return this._executeAndRatioIsZero(),!0;var o=this.controlPoints;if(4!=o.length)return!1;var i=o[0],l=o[1],s=o[2],n=o[3],a=SuperMap.Plot.PlottingUtil.distance(i,n),r=SuperMap.Plot.PlottingUtil.distance(l,s),p=SuperMap.Plot.PlottingUtil.linePnt(i,n,a*t),u=SuperMap.Plot.PlottingUtil.linePnt(l,s,r*t),h=[];return h.push(i),h.push(l),h.push(u),h.push(p),null!==this.animationGOFeature.superMapAlgoSymbol&&this.animationGOFeature.superMapAlgoSymbol.hasOwnProperty("m_bIsAnimation")&&(this.animationGOFeature.superMapAlgoSymbol.m_bIsAnimation=!0),this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(h)),this.animationGOFeature.superMapAlgoSymbol.m_bIsAnimation=!1,!0},_execute_1002:function(t){if(0===this.lineLength&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()),this.lineLength=SuperMap.Plot.PlottingUtil.polylineDistance(this.controlPoints)),0===t)return this._executeAndRatioIsZero(),!0;for(var e=[],o=SuperMap.Plot.PlottingUtil.clonePoints(this.controlPoints),i=this._findPos(this.lineLength*t,o),l=0;l<=i.pos;l++)e.push(o[l]);e.push(i.pts);var s=[];return e.length<3&&(s.push(e[0].clone()),s.push(new SuperMap.Geometry.Point((e[0].x+e[1].x)/2,(e[0].y+e[1].y)/2)),s.push(e[1].clone()),e=s),SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.animationGOFeature.libID,this.animationGOFeature.code)&&this.goFeature.symbolData.algoMinEditPts>e.length?(this._executeAndRatioIsZero(),!0):(this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(e)),!0)},_execute_Generalization:function(t){if(0===this.lineLength&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()),this.lineLength=SuperMap.Plot.PlottingUtil.polylineDistance(this.controlPoints)),0===t)return this._executeAndRatioIsZero(),!0;for(var e=[],o=SuperMap.Plot.PlottingUtil.clonePoints(this.controlPoints),i=this._findPos(this.lineLength*t,o),l=0;l<=i.pos;l++)e.push(o[l]);return e.push(i.pts),SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.animationGOFeature.libID,this.animationGOFeature.code)&&this.goFeature.symbolData.algoMinEditPts>e.length?(this._executeAndRatioIsZero(),!0):(this.animationGOFeature.latLngs=L.Util.superMapPointsToLatLngs(e),this.animationGOFeature.redraw(),!0)},_execute_Rect:function(t){0===this.controlPoints.length&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()));var e=new SuperMap.Geometry.Point((this.controlPoints[0].x+this.controlPoints[1].x)/2,(this.controlPoints[0].y+this.controlPoints[1].y)/2),o=Math.abs(this.controlPoints[0].x-this.controlPoints[1].x)/2*t,i=Math.abs(this.controlPoints[0].y-this.controlPoints[1].y)/2*t,l=new SuperMap.Geometry.Point(e.x-o,e.y+i),s=new SuperMap.Geometry.Point(e.x+o,e.y-i);return this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs([l,s])),!0},_execute_Circle:function(t){0===this.controlPoints.length&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()));var e=this.controlPoints[0].clone(),o=t*Math.sqrt((this.controlPoints[0].x-this.controlPoints[1].x)*(this.controlPoints[0].x-this.controlPoints[1].x)+(this.controlPoints[0].y-this.controlPoints[1].y)*(this.controlPoints[0].y-this.controlPoints[1].y));return this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs([e,new SuperMap.Geometry.Point(e.x+o,e.y)])),!0},_execute_Kidney:function(t){if(0===this.controlPoints.length&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs())),0===t)return this._executeAndRatioIsZero(),!0;var e=[],o=this.controlPoints.length,i=SuperMap.Plot.PlottingUtil.getPolygonCenterPt(this.controlPoints);if(null===i)return this._executeAndRatioIsZero(),!0;for(var l=0;l<o;l++){var s=SuperMap.Plot.PlottingUtil.distance(i,this.controlPoints[l]),n=s*t;if(n>s)return!1;var a=SuperMap.Plot.PlottingUtil.linePnt(i,this.controlPoints[l],n);e.push(a)}return this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(e)),!0},_execute_RegularPloygon:function(t){if(0===this.controlPoints.length&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs())),0===t)return this._executeAndRatioIsZero(),!0;var e=this.controlPoints.length,o=SuperMap.Plot.PlottingUtil.distance(this.controlPoints[0],this.controlPoints[this.controlPoints.length-1])*t,i=new SuperMap.Geometry.Point(this.controlPoints[0].x+o,this.controlPoints[0].y),l=2*Math.PI/(e+1),s=Math.PI/2+this.animationGOFeature.dRotate,n=i;SuperMap.Plot.PlottingUtil.rotateAngle(this.controlPoints[0],s,n);var a=[];a.push(this.controlPoints[0].clone()),a.push(n);for(var r=n.clone(),p=1;p<e-1;p++)SuperMap.Plot.PlottingUtil.rotateAngle(this.controlPoints[0],l,r),a.push(r.clone());return this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(a)),!0},_execute_Ellipse:function(t){0===this.controlPoints.length&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()));var e=SuperMap.Plot.PlottingUtil.findPointOnLineByRatio(t,this.controlPoints[0],this.controlPoints[1]),o=SuperMap.Plot.PlottingUtil.findPointOnLineByRatio(t,this.controlPoints[0],this.controlPoints[2]);return this.animationGOFeature.latLngs[1]=L.latLng(e.y,e.x),this.animationGOFeature.latLngs[2]=L.latLng(o.y,o.x),this.animationGOFeature.redraw(),!0},_execute_ArbitraryPolygon:function(t){0===this.controlPoints.length&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()));var e=this.controlPoints.length,o=SuperMap.Plot.PlottingUtil.getPolygonCenterPt(this.controlPoints);if(null===o)return this._executeAndRatioIsZero(),!0;for(var i=[],l=0;l<e;l++){var s=SuperMap.Plot.PlottingUtil.distance(o,this.controlPoints[l])*t,n=SuperMap.Plot.PlottingUtil.linePnt(o,this.controlPoints[l],s);i.push(n)}return this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(i)),!0},_execute_ParallelLine:function(t){if(0===this.lineLength){this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs());for(let t=2;t<this.controlPoints.length;t++)this.lineLength+=SuperMap.Plot.PlottingUtil.distance(this.controlPoints[t-1],this.controlPoints[t])}var e=[],o=[];for(let t=1;t<this.controlPoints.length;t++)o.push(this.controlPoints[t].clone());var i=this._findPos(this.lineLength*t,o);e.push(this.controlPoints[0].clone());for(let t=0;t<=i.pos;t++)e.push(o[t]);return e.push(i.pts),this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(e)),!0},_execute_Polybezier:function(t){if(0===this.lineLength){this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs());var e=SuperMap.Plot.PlottingUtil.generateBeizerPointsNoCtrlPt(this.controlPoints);this.lineLength+=SuperMap.Plot.PlottingUtil.polylineDistance(e)}var o=[];e=SuperMap.Plot.PlottingUtil.generateBeizerPointsNoCtrlPt(this.controlPoints,[]);for(var i=this._findPos(this.lineLength*t,e),l=0;l<=i.pos;l++)o.push(e[l].clone());return o.push(i.pts),this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(o)),!0},_execute_CurveEight:function(t){0===this.controlPoints.length&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()));for(var e=SuperMap.Plot.PlottingUtil.getPolygonCenterPt(this.controlPoints),o=[],i=0;i<this.controlPoints.length;i++){var l=SuperMap.Plot.PlottingUtil.distance(e,this.controlPoints[i])*t,s=SuperMap.Plot.PlottingUtil.linePnt(e,this.controlPoints[i],l);o.push(s)}return this.animationGOFeature.setLatLngs(L.Util.superMapPointsToLatLngs(o)),!0},_execute_AnnotationFrame:function(t){if(0===this.lineLength&&(this.controlPoints=L.Util.latLngsToSuperMapPoints(this.goFeature.getLatLngs()),this.lineLength=SuperMap.Plot.PlottingUtil.polylineDistance(this.controlPoints)),0===t)return this._executeAndRatioIsZero(),!0;var e=[],o=SuperMap.Plot.PlottingUtil.clonePoints(this.controlPoints);if(this.goFeature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXTBOX||this.goFeature.symbolType===SuperMap.Plot.SymbolType.LINEMARKING){var i=[];i.push(this.controlPoints[0]),i.push(new SuperMap.Geometry.Point(this.goFeature.scaleValues[1],this.goFeature.scaleValues[2]));var l=SuperMap.Plot.PlottingUtil.polylineDistance(i),s=this._findPos(l*t,i);this.animationGOFeature.scaleValues[1]=s.pts.x,this.animationGOFeature.scaleValues[2]=s.pts.y}else for(var n=this.goFeature.scaleValues.length/2,a=0;a<n;a++){var r=[];r.push(this.controlPoints[0]),r.push(new SuperMap.Geometry.Point(this.goFeature.scaleValues[2*a],this.goFeature.scaleValues[2*a+1]));var p=SuperMap.Plot.PlottingUtil.polylineDistance(r),u=this._findPos(p*t,r);this.animationGOFeature.scaleValues[2*a]=u.pts.x,this.animationGOFeature.scaleValues[2*a+1]=u.pts.y}for(var h=this._findPos(this.lineLength*t,o),g=0;g<=h.pos;g++)e.push(o[g]);return e.push(h.pts),this.animationGOFeature.latLngs=L.Util.superMapPointsToLatLngs(e),this.animationGOFeature.redraw(),!0},_executeAndRatioIsZero:function(){this.animationGOFeature.setLatLngs([]),this.animationGOFeature.grow=SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.animationGOFeature.libID,this.animationGOFeature.code)},resetAnimationFeature:function(t){ce.prototype.resetAnimationFeature.call(this,t),this.lineLength=0,this.controlPoints=[],this.startScale<0&&(this.startScale=0),this.startScale>1&&(this.startScale=1),this.endScale<0&&(this.endScale=0),this.endScale>1&&(this.endScale=1)},execute:function(){if(!(this.goFeature instanceof Lt))return!1;if(!this.canExecute())return!1;this.endScale>1&&(this.endScale=1);var t=(new Date).getTime();if(this.lastDrawTime>0&&t-this.timeSpace<this.lastDrawTime)return!1;var e=this.startScale+this.ratio*(this.endScale-this.startScale);return this.lastDrawTime=t,this._executeAnimation(e)},_executeAnimation:function(t){var e=!1,o=this.animationGOFeature.code,i=this.animationGOFeature.libID;if(0===i)switch(o){case SuperMap.Plot.SymbolType.KIDNEY:case SuperMap.Plot.SymbolType.POLYBEZIERCLOSESYMBOL:case SuperMap.Plot.SymbolType.PARALLELOGRAM:case SuperMap.Plot.SymbolType.TRAPEZOIDSYMBOL:e=this._execute_Kidney(t);break;case SuperMap.Plot.SymbolType.CIRCLESYMBOL:e=this._execute_Circle(t);break;case SuperMap.Plot.SymbolType.RECTANGLESYMBOL:e=this._execute_Rect(t);break;case SuperMap.Plot.SymbolType.REGULARPOLYGON:e=this._execute_RegularPloygon(t);break;case SuperMap.Plot.SymbolType.ELLIPSESYMBOL:e=this._execute_Ellipse(t);break;case SuperMap.Plot.SymbolType.ARBITRARYPOLYGONSYMBOL:case SuperMap.Plot.SymbolType.POLYGONREGION:e=this._execute_ArbitraryPolygon(t);break;case SuperMap.Plot.SymbolType.PARALLELLINE:e=this._execute_ParallelLine(t);break;case SuperMap.Plot.SymbolType.POLYBEZIERSYMBOL:e=this._execute_Polybezier(t);break;case SuperMap.Plot.SymbolType.PIESYMBOL:case SuperMap.Plot.SymbolType.CHORDSYMBOL:case SuperMap.Plot.SymbolType.ARCSYMBOL:case SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL:return!1;case SuperMap.Plot.SymbolType.CURVEEIGHT:e=this._execute_CurveEight(t);break;case SuperMap.Plot.SymbolType.ANNOFRAMESYMBOLM:case SuperMap.Plot.SymbolType.SYMBOLTEXTBOX:case SuperMap.Plot.SymbolType.LINEMARKING:e=this._execute_AnnotationFrame(t);break;default:e=this._execute_Generalization(t)}else if(22===i)switch(o){case 1004:case 2004:case 1010:e=this._execute_1004(t);break;case 1006:case 2006:e=this._execute_1006(t);break;case 1002:case 2002:e=this._execute_1002(t);break;case 32:case 3211:e=this._execute_ArbitraryPolygon(t);break;case 390:case 3911:e=this._execute_Kidney(t);break;default:e=this._execute_Generalization(t)}else if(100===i)switch(o){case 25200:e=this._execute_1004(t);break;default:e=this._execute_Generalization(t)}else if(421===i)switch(o){case 311:e=this._execute_1004(t);break;case 317:e=this._execute_1006(t);break;default:e=this._execute_Generalization(t)}else if(123===i)switch(o){case 60310:case 6031001:e=this._execute_1004(t);break;default:e=this._execute_Generalization(t)}else e=this._execute_Generalization(t);return this.animationGOFeature.grow=SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.animationGOFeature.libID,this.animationGOFeature.code),e},_findPos:function(t,e){var o,i=0,l=0;for(o=1;o<e.length&&!(i+(l=SuperMap.Plot.PlottingUtil.distance(e[o-1],e[o]))>=t);o++)i+=l;var s,n=new Object;return s=o<e.length?SuperMap.Plot.PlottingUtil.findPoint(e[o-1],e[o],t-i,0):e[o-1].clone(),n.pos=o-1,n.pts=s,n},getJSONData:function(){var t=ce.prototype.getJSONData.call(this);return t.startScale=this.startScale,t.endScale=this.endScale,t},fromJSONData:function(t){ce.prototype.fromJSONData.call(this,t),this.startScale=t.startScale,this.endScale=t.endScale}});L.supermap.plotting.GOAnimationGrow=de;var Se=ce.extend({rotateDirection:SuperMap.Plot.RotateDirection.ClockWise,startAngle:0,endAngle:360,getGOAnimationType:function(){return SuperMap.Plot.GOAnimationType.ANIMATION_ROTATE},resetAnimationFeature:function(t){this.animationGOFeature._rotate(this.goFeature.dRotate-this.animationGOFeature.dRotate,this.animationGOFeature.getLatLngs()[0]),ce.prototype.resetAnimationFeature.call(this,t)},execute:function(){if(this.goFeature.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL)return!1;if(!this.canExecute())return!1;var t=this.ratio,e=this._getCurrentAngle(this.startAngle,this.endAngle,t),o=this.animationGOFeature.dRotate;return this.animationGOFeature._rotate(e-o,this.animationGOFeature.getLatLngs()[0]),!0},_getCurrentAngle:function(t,e,o){var i=0,l=e-t,s=parseInt(Math.abs(l/360));if(t!==e)if(this.rotateDirection===SuperMap.Plot.RotateDirection.AntiClockWise)l<0&&(l+=360*(2*s+1)),i=t+l*o;else{var n=0;i=t+(360-(l=0===(n=l<0?l+360*(s+1):l-360*s)?360*s:360-n+360*s)*o)}return i},getJSONData:function(){var t=ce.prototype.getJSONData.call(this);return t.rotateDirection=this.rotateDirection,t.startAngle=this.startAngle,t.endAngle=this.endAngle,t},fromJSONData:function(t){ce.prototype.fromJSONData.call(this,t),this.rotateDirection=t.rotateDirection,this.startAngle=t.startAngle,this.endAngle=t.endAngle}});L.supermap.plotting.GOAnimationRotate=Se;var fe=ce.extend({startScale:0,endScale:1,lastScale:null,getGOAnimationType:function(){return SuperMap.Plot.GOAnimationType.ANIMATION_SCALE},resetAnimationFeature:function(t){this.lastScale=null,this.animationGOFeature._resize(this.goFeature.initialScale.x/this.animationGOFeature.initialScale.x,this.animationGOFeature.getLatLngs()[0]),ce.prototype.resetAnimationFeature.call(this,t)},execute:function(){if(this.goFeature.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL)return!1;if(!this.canExecute())return!1;this.lastScale=this.animationGOFeature.initialScale.x;var t=this.startScale;0===t&&(t=.1);var e=this.endScale;0===e&&(e=.1);var o=this.goFeature.initialScale.x*(t+this.ratio*(e-t));return this.animationGOFeature._resize(o/this.lastScale,this.animationGOFeature.getLatLngs()[0]),!0},getJSONData:function(){var t=ce.prototype.getJSONData.call(this);return t.startScale=this.startScale,t.endScale=this.endScale,t},fromJSONData:function(t){ce.prototype.fromJSONData.call(this,t),this.startScale=t.startScale,this.endScale=t.endScale}});L.supermap.plotting.GOAnimationScale=fe;var me=ce.extend({showEffect:!1,finalDisplay:!1,getGOAnimationType:function(){return SuperMap.Plot.GOAnimationType.ANIMATION_SHOW},execute:function(){if(!this.canExecute())return!1;var t=this.ratio;return this.showEffect?this._executeHaveEffect(t):this._executeNoEffect(t),!0},_executeNoEffect:function(t){this.finalDisplay?this.animationGOFeature.style.display=1-t<.01?"display":"none":this.animationGOFeature.style.display=1-t<.01?"none":"display",this.animationGOFeature.redraw()},_executeHaveEffect:function(t){this.finalDisplay||(t=1-t);var e=parseFloat(t)<0||parseFloat(t);e=parseFloat(t)>1?1:parseFloat(t),this.animationGOFeature.style.display="display",this.animationGOFeature.style.opacity=e,this.animationGOFeature.style.fontOpacity=e,this.animationGOFeature.style.surroundLineColorOpacity=this.goFeature.style.surroundLineColorOpacity*t,this.animationGOFeature.style.fill&&(this.animationGOFeature.style.fillOpacity=this.goFeature.style.fillOpacity*t,this.animationGOFeature.style.fillBackOpacity=this.goFeature.style.fillBackOpacity*t),this.animationGOFeature.redraw()},getJSONData:function(){var t=ce.prototype.getJSONData.call(this);return t.showEffect=this.showEffect,t.finalDisplay=this.finalDisplay,t},fromJSONData:function(t){ce.prototype.fromJSONData.call(this,t),this.showEffect=t.showEffect,this.finalDisplay=t.finalDisplay}});L.supermap.plotting.GOAnimationShow=me;var Le=ce.extend({showPath:!1,tangentDirection:!1,pathWidth:.5,pathColor:"#00FFFF",currentPt:null,pathType:SuperMap.Plot.WayPathType.POLYLINE,wayPoints:null,shapePoints:null,pathFeature:null,pathLength:0,destroy:function(){null!==this.pathFeature&&(L.supermap.plotting.getControl().getGOAnimationManager().map.removeLayer(this.pathFeature),this.pathFeature=null);ce.prototype.destroy.call(this)},getGOAnimationType:function(){return SuperMap.Plot.GOAnimationType.ANIMATION_WAY},setShowPath:function(t){this.showPath=t},resetAnimationFeature:function(t){ce.prototype.resetAnimationFeature.call(this,t);var e=this.goFeature.dRotate,o=this.animationGOFeature.dRotate;this.animationGOFeature._rotate(e-o,this.animationGOFeature.getLatLngs()[0]),t&&(null!==this.pathFeature&&null!==this.shapePoints||(this._makePath(),this.pathColor&&(this.pathFeature.options.color=this.pathColor),this.pathWidth&&(this.pathFeature.options.weight=this.pathWidth)),this.pathFeature.options.opacity=0,1!==this.animationGOFeature.symbolType&&(this.pathFeature.options.opacity=0),this.pathFeature.setStyle())},execute:function(){if(this.goFeature.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL)return null!==this.pathFeature&&(this.pathFeature.options.opacity=0),!1;if(!this.canExecute())return!1;this.showPath&&0===this.pathFeature.options.opacity&&(this.pathFeature.options.opacity=1,this.pathFeature.setStyle());var t=this.ratio,e=t*this.pathLength,o=new Object,i=this._findPos(e,this.shapePoints,o);this.currentPt=i.clone();var l=this.animationGOFeature.getLatLngs()[0],s=i.y-l.lat,n=i.x-l.lng;if(this.animationGOFeature.move(s,n),this.tangentDirection){var a=o.angle;1===t&&(a=0);var r=this.animationGOFeature.dRotate;this.animationGOFeature._rotate(a-r,this.animationGOFeature.getLatLngs()[0])}return!0},setWayPoints:function(t){((!t||!SuperMap.Util.isArray(t)||2>t.length)&&(t=[this.goFeature.getLatLngs()[0],this.goFeature.getLatLngs()[0]]),this.wayPoints=[],this.wayPoints=L.Util.cloneLatLngs(t),null!==this.pathFeature)&&(L.supermap.plotting.getControl().getGOAnimationManager().map.removeLayer(this.pathFeature),this.pathFeature.destroy(),this.pathFeature=null)},getWayPoints:function(){return this.wayPoints},getCurrentPt:function(){return this.currentPt},setPathColor:function(t){t&&(this.pathColor=t,this.pathFeature&&null!==this.pathFeature&&(this.pathFeature.options.color=this.pathColor,this.pathFeature.setStyle(this.pathFeature.options)))},getPathColor:function(){return this.pathColor},setPathWidth:function(t){t&&(this.pathWidth=t,this.pathFeature&&null!==this.pathWidth&&(this.pathFeature.options.weight=this.pathWidth,this.pathFeature.setStyle(this.pathFeature.options)))},getPathWidth:function(){return this.pathWidth},setPathType:function(t){void 0!==t&&null!==t&&(this.pathType!==t&&(this.pathType=t,null!==this.pathFeature&&(L.supermap.plotting.getControl().getGOAnimationManager().map.removeLayer(this.pathFeature),this.pathFeature.destroy(),this.pathFeature=null)))},getPathType:function(){return this.pathType},_makePath:function(){((null===this.wayPoints||2>this.wayPoints.length)&&(this.wayPoints=[this.goFeature.getLatLngs()[0],this.goFeature.getLatLngs()[0]]),null===this.pathFeature)&&(this.pathType===SuperMap.Plot.WayPathType.POLYLINE?this.shapePoints=L.Util.latLngsToSuperMapPoints(this.wayPoints):this.shapePoints=SuperMap.Plot.PlottingUtil.generateBeizerPointsNoCtrlPt(L.Util.latLngsToSuperMapPoints(this.wayPoints)),this.pathFeature=L.polyline(L.Util.superMapPointsToLatLngs(this.shapePoints),SuperMap.Plot.PlottingUtil.cloneObject(this.animationGOFeature.style)),L.supermap.plotting.getControl().getGOAnimationManager().map.addLayer(this.pathFeature));this.pathLength=0;for(var t=1;t<this.shapePoints.length;t++)this.pathLength+=SuperMap.Plot.PlottingUtil.distance(this.shapePoints[t-1],this.shapePoints[t]);return this.pathFeature},_findPos:function(t,e,o){var i,l=0,s=0;for(i=1;i<e.length&&!(l+(s=SuperMap.Plot.PlottingUtil.distance(e[i-1],e[i]))>=t);i++)l+=s;var n=SuperMap.Plot.PlottingUtil.findPoint(e[i-1],e[i],t-l,0);return this.tangentDirection&&(o.angle=SuperMap.Plot.PlottingUtil.radian(n,e[i])/Math.PI*180),n},getJSONData:function(){var t=ce.prototype.getJSONData.call(this);t.showPath=this.showPath,t.tangentDirection=this.tangentDirection,t.pathType=this.pathType,t.pathWidth=this.pathWidth,t.pathColor=this.pathColor,t.wayPoints=[];for(var e=0;e<this.wayPoints.length;e++)t.wayPoints.push({x:this.wayPoints[e].lng,y:this.wayPoints[e].lat});return t},fromJSONData:function(t){ce.prototype.fromJSONData.call(this,t),this.showPath=t.showPath,this.tangentDirection=t.tangentDirection,this.pathType=t.pathType,this.pathWidth=t.pathWidth,this.pathColor=t.pathColor;for(var e=[],o=0;o<t.wayPoints.length;o++)e.push(L.latLng(t.wayPoints[o].y,t.wayPoints[o].x));this.setWayPoints(e)}});L.supermap.plotting.GOAnimationWay=Le;var Me=L.Evented.extend({options:{position:"topright"},initialize:function(t){L.setOptions(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var e=this._map;return e&&e.removeControl(this),this.options.position=t,e&&e.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var e=this._container=this.onAdd(t),o=this.getPosition(),i=t._controlCorners[o];return L.DomUtil.addClass(e,"leaflet-control"),-1!==o.indexOf("bottom")?i.insertBefore(e,i.firstChild):i.appendChild(e),this},remove:function(){return this._map?(L.DomUtil.remove(this._container),this.onRemove&&this.onRemove(this._map),this._map=null,this):this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}});L.Map.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){var t=this._controlCorners={},e="leaflet-",o=this._controlContainer=L.DomUtil.create("div",e+"control-container",this._container);function i(i,l){var s=e+i+" "+e+l;t[i+l]=L.DomUtil.create("div",s,o)}i("top","left"),i("top","right"),i("bottom","left"),i("bottom","right")},_clearControlPos:function(){L.DomUtil.remove(this._controlContainer)}});var be=L.Handler.extend({symbolData:null,plotting:null,_isDrawing:!1,libID:0,code:24,serverUrl:"",isFreeCure:!1,_drawingLayer:null,_tempDrawingLayer:null,_control:null,options:{tolerancePixel:6,allowIntersection:!0,repeatMode:!0,icon:new L.DivIcon({iconSize:new L.Point(8,8),className:"leaflet-div-icon leaflet-editing-icon"}),touchIcon:new L.DivIcon({iconSize:new L.Point(20,20),className:"leaflet-div-icon leaflet-editing-icon leaflet-touch-icon"}),guidelineDistance:20,maxGuideLineLength:4e3,shapeOptions:{stroke:!0,color:"#3388ff",weight:4,opacity:.5,fill:!1,clickable:!0},metric:!0,feet:!0,nautic:!1,showLength:!0,zIndexOffset:2e3},initialize:function(t,e,o){L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&(this.options.icon=this.options.touchIcon),this._map=t,this._drawingLayer=e,this._tempDrawingLayer=new se("drawControl-temportary"),this._container=t._container,this._overlayPane=t._panes.overlayPane,L.setOptions(this,o)},addHooks:function(){this._map&&(this._isDrawing=!1,this._markers=[],this._latlngs=[],this._markerGroup=new L.LayerGroup,this._map.addLayer(this._markerGroup),this._map.addLayer(this._tempDrawingLayer),this._mouseMarker||(this._mouseMarker=L.marker(this._map.getCenter(),{icon:L.divIcon({className:"leaflet-mouse-marker",iconAnchor:[20,20],iconSize:[40,40]}),opacity:0,zIndexOffset:this.options.zIndexOffset})),this._mouseMarker.on("mousedown",this._onMouseDown,this).on("mouseup",this._onMouseUp,this).addTo(this._map),this._map.on("mouseup",this._onMouseUp,this).on("mousemove",this._onMouseMove,this).on("zoomlevelschange",this._onZoomEnd,this).on("zoomend",this._onZoomEnd,this),this._map.getPlotEditControl()&&this._map.getPlotEditControl()._avoidEditing&&this._map.getPlotEditControl().avoidEdit(!1),null!=this._map.doubleClickZoom&&this._map.doubleClickZoom.enabled()&&(this.doubleClickZoomEnabled=!0,this._map.doubleClickZoom.disable()))},removeHooks:function(){this._isDrawing=!1,this._map.removeLayer(this._markerGroup),delete this._markerGroup,delete this._markers,delete this._latlngs,delete this.isFreeCure,this.plotting&&(this._tempDrawingLayer.removeFeatures(this.plotting),delete this.plotting,this.plotting=null),this._map.removeLayer(this._tempDrawingLayer),this._mouseMarker.off("mousedown",this._onMouseDown,this).off("mouseup",this._onMouseUp,this),this._map.removeLayer(this._mouseMarker),delete this._mouseMarker,this._map.off("mouseup",this._onMouseUp,this).off("mousemove",this._onMouseMove,this).off("zoomlevelschange",this._onZoomEnd,this).off("zoomend",this._onZoomEnd,this).off("click",this._onTouch,this),null!=this._map.doubleClickZoom&&!0===this.doubleClickZoomEnabled&&this._map.doubleClickZoom.enable()},deleteLastVertex:function(){if(!(this._markers.length<=1)){this._latlngs.pop();var t=this._markers.pop(),e=this.plotting.getLatLngs(),o=e.splice(-1,1)[0];this.plotting.setLatLngs(e),this._markerGroup.removeLayer(t),this.plotting.getLatLngs().length<2&&this._tempDrawingLayer.removeFeatures(this.plotting),this._vertexChanged(o,!1)}},addVertex:function(t){if(this._markers.push(this._createMarker(t)),this._latlngs.push(t),this.plotting&&0===this.libID&&1023===this.code&&!0===this.isFreeCure)this.plotting.addLatLng(t);else if(this.plotting&&SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.plotting.libID,this.plotting.code)&&this._latlngs.length>=this.plotting.minEditPts){var e=new SuperMap.GetSymbolInfoParameters({libID:this.libID,code:this.code});e.inputPoints=L.Util.latLngsToSuperMapPoints(this._latlngs),L.supermap.symbolInfoService(this._drawingLayer.serverUrl,this._drawingLayer.options.serviceParams).getSymbolInfo(e,function(t){this.plotting.symbolData=t.result,this.plotting.setLatLngs(this._latlngs)},this)}else if(this.plotting&&this.plotting instanceof Vt){var o=this._map.layerPointToLatLng(L.point(0,0)),i=this._map.layerPointToLatLng(L.point(this.options.tolerancePixel,0)),l=SuperMap.Plot.PlottingUtil.distance({x:o.lng,y:o.lat},{x:i.lng,y:i.lat});this.plotting._addRouteNodeByPos(t,l)}else this.plotting&&this.plotting.setLatLngs(this._latlngs);this._vertexChanged(t,!0)},_finishShape:function(){this._markers.length>1&&this._markers[this._markers.length-1].off("click",this._finishShape,this),L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&this._latlngs.length+1<this.plotting.maxEditPts&&"function"==typeof this.plotting.getLatLngs&&this._latlngs.length!==this.plotting.getLatLngs().length&&this.plotting.setLatLngs(this._latlngs),0===this.libID&&this.code===SuperMap.Plot.SymbolType.FREECURVE&&!0===this.isFreeCure&&(this.plotting.latLngs=L.Util.superMapPointsToLatLngs(this.plotting.superMapAlgoSymbol.controlPoints),this.isFreeCure=!1),-1===this.plotting.libID&&(this.plotting.libID=this.libID,this.plotting.code=this.code);var t=this.plotting.clone();if(this._markerGroup.clearLayers(),this._markers=[],this._latlngs=[],this._tempDrawingLayer.removeFeatures(this.plotting),delete this.plotting,this._drawingLayer.addFeatures(t),this._drawingLayer._renderer instanceof L.SVG&&(t.isFirstAdd=!0),this._control.fire(SuperMap.Plot.Event.featureadded,{feature:t}),this._isDrawing=!1,this.options.repeatMode||this.disable(),null!=t.layer){var e=new SuperMap.Plot.Transaction;e.transType=SuperMap.Plot.TransactionType.CREATE;var o=new SuperMap.Plot.TransactionInfo;o.layerId=t.layer._leaflet_id,o.feature=t,e.transInfos.push(o),L.supermap.plotting.getControl(this._map,this.serverUrl,{serviceParams:this._drawingLayer.options.serviceParams}).getTransManager().add(e)}},_onZoomEnd:function(){this._markers},_onMouseMove:function(t){var e=this._map.mouseEventToLayerPoint(t.originalEvent),o=this._map.layerPointToLatLng(e);if(this._currentLatLng=o,!this.plotting||!0!==this._isDrawing||this.plotting instanceof Vt)!1===this._isDrawing&&(this._isDrawing=!0,this._createFeature());else{var i=L.Util.cloneLatLngs(this._latlngs);if(0===i.length?i.push(o):i[i.length-1].lat===o.lat&&i[i.length-1].lng===o.lng||i.push(o),0===this.libID&&this.code===SuperMap.Plot.SymbolType.FREECURVE&&!0===this.isFreeCure)this.plotting.addLatLng(o);else if(this.plotting.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL&&SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.plotting.libID,this.plotting.code)&&i.length>=this.plotting.minEditPts){let t=new SuperMap.GetSymbolInfoParameters({libID:this.libID,code:this.code});t.inputPoints=L.Util.latLngsToSuperMapPoints(i),L.supermap.symbolInfoService(this._drawingLayer.serverUrl,this._drawingLayer.options.serviceParams).getSymbolInfo(t,function(t){this.plotting.symbolData=t.result,this.plotting.setLatLngs(i)},this)}else this.plotting.setLatLngs(i)}this._mouseMarker.setLatLng(o),L.DomEvent.preventDefault(t.originalEvent)},_createFeature:function(t){if(SuperMap.Plot.AlgoSymbolFactory.isAccessServer(this.libID,this.code))if(this.symbolData=this._drawingLayer._getSymbolDataFromCache(this.libID,this.code),null===this.symbolData){var e=Math.floor(1e3*Math.random());let o=new SuperMap.GetSymbolInfoParameters({libID:this.libID,code:this.code});o.dynamicToken=e,L.supermap.symbolInfoService(this._drawingLayer.serverUrl,this._drawingLayer.options.serviceParams).getSymbolInfo(o,function(o){o.result.dynamicToken&&o.result.dynamicToken===SuperMap.MD5.md5(e.toString())?this.libID!==o.result.libID||this.code!==o.result.code?this.symbolData=null:(this._drawingLayer._cacheSymbolData(o.result),this.symbolData=o.result,this.plotting=L.supermap.plotting.PlottingObject.createSymbol(this.libID,this.code,[],{symbolData:this.symbolData,serverUrl:this._drawingLayer.serverUrl,serviceParams:this._drawingLayer.serviceParams,map:this._map}),this._control.fire(SuperMap.Plot.Event.beforefeatureadded,{feature:this.plotting}),this._tempDrawingLayer.addFeatures(this.plotting),this.plotting.isEdit=!1,"function"==typeof t&&t()):this.symbolData=null},this)}else this.plotting=L.supermap.plotting.PlottingObject.createSymbol(this.libID,this.code,[],{symbolData:this.symbolData,serverUrl:this._drawingLayer.serverUrl,serviceParams:this._drawingLayer.serviceParams,map:this._map}),this._control.fire(SuperMap.Plot.Event.beforefeatureadded,{feature:this.plotting}),this._tempDrawingLayer.addFeatures(this.plotting),this.plotting.isEdit=!1,"function"==typeof t&&t();else if(this.plotting=L.supermap.plotting.PlottingObject.createSymbol(this.libID,this.code,[],{serverUrl:this._drawingLayer.serverUrl,spatialAnalystUrl:this._drawingLayer.spatialAnalystUrl,serviceParams:this._drawingLayer.serviceParams,map:this._map}),this.plotting.subSymbols&&0!==this.plotting.subSymbols.length){for(var o=[],i=0,l=this.plotting.subSymbols.length;i<l;i++)null===this.plotting.subSymbols[i].symbolData&&(this.plotting.subSymbols[i].symbolData=this._drawingLayer._getSymbolDataFromCache(this.plotting.subSymbols[i].libID,this.plotting.subSymbols[i].code),null===this.plotting.subSymbols[i].symbolData&&-1===SuperMap.Util.indexOf(o,this.plotting.subSymbols[i])&&o.push(this.plotting.subSymbols[i]));for(var s=o.slice(),n=0;n<o.length;n++){var a=new SuperMap.GetSymbolInfoParameters({libID:o[n].libID,code:o[n].code});L.supermap.symbolInfoService(this.serverUrl,this._drawingLayer.options.serviceParams).getSymbolInfo(a,function(e){this._drawingLayer._cacheSymbolData(e.result);for(var o=0,i=this.plotting.subSymbols.length;o<i;o++)if(null===this.plotting.subSymbols[o].symbolData&&this.plotting.subSymbols[o].libID===e.result.libID&&this.plotting.subSymbols[o].code===e.result.code){var l=SuperMap.Util.indexOf(s,this.plotting.subSymbols[o]);-1!==l&&s.splice(l,1),this.plotting.subSymbols[o].symbolData=SuperMap.Plot.PlottingUtil.cloneObject(e.result)}0===s.length&&(this._control.fire(SuperMap.Plot.Event.beforefeatureadded,{feature:this.plotting}),this._tempDrawingLayer.addFeatures(this.plotting),this.plotting.isEdit=!1,"function"==typeof t&&t())},this)}0===o.length&&(this._control.fire(SuperMap.Plot.Event.beforefeatureadded,{feature:this.plotting}),this._tempDrawingLayer.addFeatures(this.plotting),this.plotting.isEdit=!1,"function"==typeof t&&t())}else this._control.fire(SuperMap.Plot.Event.beforefeatureadded,{feature:this.plotting}),this._tempDrawingLayer.addFeatures(this.plotting),this.plotting.isEdit=!1,"function"==typeof t&&t()},_vertexChanged:function(){var t=this._markers.length;t>1&&this._markers[t-1].on("click",this._finishShape,this),t>2&&this._markers[t-2].off("click",this._finishShape,this)},_onMouseDown:function(t){if((!t||2!==t.originalEvent.button)&&!this._clickHandled&&!this._touchHandled&&!this._disableMarkers&&this._drawingLayer&&this._drawingLayer.isEditable&&this._drawingLayer._map){this._onMouseMove(t),this._clickHandled=!0,this._disableNewMarkers();var e=t.originalEvent,o=e.clientX,i=e.clientY;this._startPoint.call(this,o,i)}},_startPoint:function(t,e){0===this.libID&&this.code===SuperMap.Plot.SymbolType.FREECURVE&&(this.isFreeCure=!0),this._mouseDownOrigin=L.point(t,e)},_onMouseUp:function(t){!L.Browser.ie||null!==this._mouseDownOrigin&&void 0!==this._mouseDownOrigin||this._onMouseDown.call(this,t);var e=t.originalEvent,o=e.clientX,i=e.clientY;this._endPoint.call(this,o,i,t),this._clickHandled=null,L.DomEvent.stopPropagation(t)},_endPoint:function(t,e,o){if(this._mouseDownOrigin){var i=L.point(t,e).distanceTo(this._mouseDownOrigin),l=this._calculateFinishDistance(o.latlng);if(L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&null==this.plotting){let t=this;this._createFeature(function(){t._latlngs.push(o.latlng),t.plotting.setLatLngs(t._latlngs),(t.plotting instanceof mt||t.plotting instanceof L.supermap.plotting.Route)&&(t._latlngs.length+1>=t.plotting.maxEditPts||l<20&&L.Browser.touch)?t._finishShape():Math.abs(i)<9*(window.devicePixelRatio||1)&&t.addVertex(o.latlng),t._enableNewMarkers()})}else(this.plotting instanceof mt||this.plotting instanceof L.supermap.plotting.Route)&&(this._latlngs.length+1>=this.plotting.maxEditPts||l<20&&L.Browser.touch)?this._finishShape():Math.abs(i)<9*(window.devicePixelRatio||1)&&this.addVertex(o.latlng),this._enableNewMarkers()}this._mouseDownOrigin=null},_onTouch:function(t){var e,o,i=t.originalEvent;!i.touches||!i.touches[0]||this._clickHandled||this._touchHandled||this._disableMarkers||(e=i.touches[0].clientX,o=i.touches[0].clientY,this._disableNewMarkers(),this._touchHandled=!0,this._startPoint.call(this,e,o),this._endPoint.call(this,e,o,t),this._touchHandled=null),this._clickHandled=null},_calculateFinishDistance:function(t){var e;if(this._markers.length>0){var o=this._markers[this._markers.length-1],i=this._map.latLngToContainerPoint(o.getLatLng()),l=new L.Marker(t,{icon:this.options.icon,zIndexOffset:2*this.options.zIndexOffset}),s=this._map.latLngToContainerPoint(l.getLatLng());e=i.distanceTo(s)}else e=1/0;return e},_createMarker:function(t){var e=new L.Marker(t,{icon:this.options.icon,zIndexOffset:2*this.options.zIndexOffset});return this._markerGroup.addLayer(e),e},_disableNewMarkers:function(){this._disableMarkers=!0},_enableNewMarkers:function(){setTimeout(function(){this._disableMarkers=!1}.bind(this),50)}}),Ae=Me.extend({drawingLayer:null,initialize:function(t,e){if(L.version<"0.7")throw new Error("Leaflet.draw 0.2.3+ requires Leaflet 0.7.0+. Download latest from https://github.com/Leaflet/Leaflet/");this.drawingLayer=t,L.Control.prototype.initialize.call(this,e)},onAdd:function(t){var e=L.DomUtil.create("div","supermap-iclient");return this._map=t,this.handler=new be(this._map,this.drawingLayer),this.handler._control=this,e},onRemove:function(){this._map=null,this.handler=null},setDrawingLayer:function(t){this.drawingLayer=t,this.handler._drawingLayer=t,this.handler._tempDrawingLayer.serverUrl=t.serverUrl,this.handler._drawingLayer.serviceParams=t.serviceParams}}),Te=function(t,e){return new Ae(t,e)};L.supermap.plotting.drawControl=Te;var ve=Me.extend({_dragStartScale:null,_dragStartRotate:null,_dragStartBounds:null,_dragStartLatLngs:null,_dragStartScaleValues:null,_dragStartPositionOffset:null,_dragStartScalePoints:null,_editMarkers:null,_disEditBox:null,_editFeatures:null,_mouseTolerance:10,touchTolerance:20,_editMode:SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE,_avoidEditing:!1,selectedFeatures:[],options:{highlightFlag:!0,highlightStyle:{color:"#ffffff",opacity:1,weight:1},draggable:!0,editIcon:L.divIcon({className:"leaflet-supermap-plot-control-icon-path",iconSize:[10,10]}),scaleIcon:L.divIcon({className:"leaflet-supermap-plot-scale-icon-path",iconSize:[10,10]}),rotateIcon:L.divIcon({className:"leaflet-supermap-plot-rotate-icon-path",iconSize:[15,15]}),lockedIcon:L.divIcon({className:"leaflet-supermap-plot-locked-icon-path",iconSize:[10,10]}),avoidIcon:L.divIcon({className:"leaflet-supermap-plot-avoid-icon-path",iconSize:[8,8]})},initialize:function(t,e){if(L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&(this.options.editIcon=L.divIcon({className:"leaflet-supermap-plot-control-icon-path",iconSize:[20,20]}),this.options.scaleIcon=L.divIcon({className:"leaflet-supermap-plot-scale-icon-path",iconSize:[20,20]}),this.options.rotateIcon=L.divIcon({className:"leaflet-supermap-plot-rotate-icon-path",iconSize:[25,25]}),this.options.lockedIcon=L.divIcon({className:"leaflet-supermap-plot-locked-icon-path",iconSize:[20,20]}),this.options.avoidIcon=L.divIcon({className:"leaflet-supermap-plot-avoid-icon-path",iconSize:[15,15]})),L.version<"0.7")throw new Error("Leaflet.draw 0.2.3+ requires Leaflet 0.7.0+. Download latest from https://github.com/Leaflet/Leaflet/");L.Control.prototype.initialize.call(this,e),L.setOptions(this,e),this._editMarkers={},this._disEditBox={},this._dragStartScale={},this._dragStartRotate={},this._dragStartBounds={},this._dragStartLatLngs={},this._dragStartPositionOffset={},this._dragStartScaleValues={},this._dragStartScalePoints={},this._editFeatures={}},onAdd:function(t){this.controlDiv=L.DomUtil.create("div","supermap-iclient"),this._map=t,this._map.on("click",this._onMapClick,this),this._map._plotEditControl=this;for(var e=0;e<this._map.getPlottingLayers().length;e++)if(this._map.getPlottingLayers()[e].isSelected){this.enableEditFeatures(this._map.getPlottingLayers()[e].features);for(var o=0;o<this._map.getPlottingLayers()[e].features.length;o++)(this._map.getPlottingLayers()[e].features[o]instanceof ct||this._map.getPlottingLayers()[e].features[o]instanceof Vt)&&this.enableEditFeatures(this._map.getPlottingLayers()[e].features[o].components)}return this.controlDiv},onRemove:function(){for(var t in this._map.off("click",this._onMapClick,this),this.unselectFeatures(),this._map._plotEditControl=null,this._map=null,this._editFeatures)this._disableFeatureEdit(this._editFeatures[t])},enableEditFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]);for(var e=0;e<t.length;e++)t[e]instanceof gt&&(t[e].enableEdit=!0,this._editFeatures[t[e].uuid]=t[e],this._enableFeatureEdit(t[e]))},disableEditFeatures:function(t){SuperMap.Util.isArray(t)||(t=[t]);for(var e=0;e<t.length;e++)t[e]instanceof gt&&(t[e].enableEdit=!1,delete this._editFeatures[t[e].uuid],this._disableFeatureEdit(t[e]))},avoidEdit:function(t){if(void 0===t&&(t=!this._avoidEditing),this._avoidEditing!==t)if(t&&1===this.selectedFeatures.length&&!this.selectedFeatures[0].getLocked()){this._avoidRegionControl=new ne(this.selectedFeatures[0]),this._map.addControl(this._avoidRegionControl);for(let t in this._editFeatures)this._disableFeatureEdit(this._editFeatures[t]);this._collectEditMarkers(this._avoidRegionControl.feature),this._avoidEditing=t}else if(!t){if(this._avoidRegionControl){for(let t in this._editFeatures)this._enableFeatureEdit(this._editFeatures[t]);if(!SuperMap.Util.isArray(this._avoidRegionControl.feature))var e=[this._avoidRegionControl.feature];this.selectFeatures(e),this._map.removeControl(this._avoidRegionControl),this._avoidRegionControl=null}this._avoidEditing=t}return this._avoidEditing},setEditMode:function(t){if(this._editMode!==t){this._editMode=t;for(var e=0;e<this.selectedFeatures.length;e++)this._collectEditMarkers(this.selectedFeatures[e])}},canCopy:function(){return this.getSelectedFeatures().length>0},canCut:function(){return this.getSelectedFeatures().length>0},canPaste:function(){return!!(this.pasteGeoAry&&this.pasteGeoAry.length>0)},copy:function(){this.pasteGeoAry=[],this.pasteGeoSel=[];for(var t=0,e=this._map.getPlottingLayers().length;t<e;t++){var o=this._map.getPlottingLayers()[t];if(!0!==o.isLocked&&!1!==o.isEditable)for(var i=0,l=o.getFeatures().length;i<l;i++){var s=o.getFeatures()[i];if(s.isSelected&&!1===s.isLocked&&(s.layer=o,s instanceof gt))if(s.symbolType===SuperMap.Plot.SymbolType.ROUTENODE)this.pasteGeoAry.push(s.route);else if(this.pasteGeoAry.push(s),this.pasteGeoSel.push(s.isSelected),(s.symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS||s.symbolType===SuperMap.Plot.SymbolType.SATELLITE)&&s.hasOwnProperty("timeWindows")&&0!==s.timeWindows.length)for(var n=0,a=s.timeWindows.length;n<a;n++)s.timeWindows[n].hasOwnProperty("symbolType")&&s.timeWindows[n].symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS&&this.pasteGeoAry.push(s.timeWindows[n])}}},copyFeatures:function(t){this.pasteGeoAry=[],this.pasteGeoSel=[],SuperMap.Util.isArray(t)||(t=[t]);for(var e=0;e<t.length;e++){var o=t[e];o instanceof gt&&(this.pasteGeoAry.push(o),this.pasteGeoSel.push(o.isSelected),o.isSelected&&this.selectedFeatures.push(o))}},cut:function(){this.pasteGeoAry=[],this.pasteGeoSel=[];var t=[],e=new SuperMap.Plot.Transaction;e.transType=SuperMap.Plot.TransactionType.REMOVE;for(var o=this.getSelectedFeatures().slice(),i=0;i<o.length;i++){var l=o[i];if(!0!==l.layer.isLocked&&!1!==l.layer.isEditable&&!1===l.isLocked){if(l instanceof gt)if(l.symbolType===SuperMap.Plot.SymbolType.ROUTENODE)this.pasteGeoAry.push(l.route),this.pasteGeoSel.push(l.route.isSelected),l.layer.removeFeatures(l.route);else{if(this.pasteGeoAry.push(l),this.pasteGeoSel.push(l.isSelected),l.hasOwnProperty("geoSymbolTexts")&&0!==l.geoSymbolTexts.length)for(let e=0,o=l.geoSymbolTexts.length;e<o;e++)l.geoSymbolTexts[e].hasOwnProperty("isSelected")&&!0===l.geoSymbolTexts[e].isSelected&&t.push(l.geoSymbolTexts[e].clone());if((l.symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS||l.symbolType===SuperMap.Plot.SymbolType.SATELLITE)&&l.hasOwnProperty("timeWindows")&&0!==l.timeWindows.length)for(let t=0,e=l.timeWindows.length;t<e;t++)l.timeWindows[t].hasOwnProperty("symbolType")&&l.timeWindows[t].symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS&&(this.pasteGeoAry.push(l.timeWindows[t]),l.layer.removeFeatures(l.timeWindows[t]));var s=new SuperMap.Plot.TransactionInfo;s.layerId=l.layer._leaflet_id,s.feature=l,e.transInfos.push(s),l.layer.removeFeatures(l)}0!==e.transInfos.length&&L.supermap.plotting.getControl().getTransManager().add(e)}}if(0!==t.length)for(let e=0,o=t.length;e<o;e++){var n=t[e];if(n.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||n.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1)for(let o=0,i=this.pasteGeoAry.length;o<i;o++)n.associatedUuid===this.pasteGeoAry[o].uuid&&this.pasteGeoAry[o].geoSymbolTexts.push(t[e])}},cutFeatures:function(t){this.pasteGeoAry=[],this.pasteGeoSel=[],t=SuperMap.Util.isArray(t)?t.slice():[t];for(var e=0;e<t.length;e++){var o=t[e],i=o.layer;o instanceof gt&&(this.pasteGeoAry.push(o),this.pasteGeoSel.push(o.isSelected),o instanceof kt?(o.isSelected&&this.unselectFeatures(o),i.removeFeatures(o.route)):i.removeFeatures(o),o.layer=i)}},paste:function(){return this._pasteToPosition.apply(this,arguments)},align:function(t){if(0!==this.getSelectedFeatures().length){var e=new SuperMap.Plot.Transaction;L.supermap.plotting.getControl().getTransManager().add(e);var o=function(t,e,o,i,l,s){var n=new SuperMap.Plot.TransactionInfo;n.layerId=t,n.uuid=e,n.functionName=o,n.undoParams=i,n.redoParams=l,s.transInfos.push(n)},i=1,l=this.getSelectedFeatures().length,s=null,n=null,a=null,r=this.getSelectedFeatures()[0].getBounds();if(t===SuperMap.Plot.AlignType.LEFT)for(;i<l;i++)s=this.getSelectedFeatures()[i].getBounds(),n=r.getWest()-s.getWest(),this.getSelectedFeatures()[i].move(0,n),this._collectEditMarkers(this.getSelectedFeatures()[i]),o(this.getSelectedFeatures()[i].layer._leaflet_id,this.getSelectedFeatures()[i].uuid,"move",[0,-n],[0,n],e);if(t===SuperMap.Plot.AlignType.RIGHT)for(;i<l;i++)s=this.getSelectedFeatures()[i].getBounds(),n=r.getEast()-s.getEast(),this.getSelectedFeatures()[i].move(0,n),this._collectEditMarkers(this.getSelectedFeatures()[i]),o(this.getSelectedFeatures()[i].layer._leaflet_id,this.getSelectedFeatures()[i].uuid,"move",[0,-n],[0,n],e);if(t===SuperMap.Plot.AlignType.UP)for(;i<l;i++)s=this.getSelectedFeatures()[i].getBounds(),a=r.getNorth()-s.getNorth(),this.getSelectedFeatures()[i].move(a,0),this._collectEditMarkers(this.getSelectedFeatures()[i]),o(this.getSelectedFeatures()[i].layer._leaflet_id,this.getSelectedFeatures()[i].uuid,"move",[-a,0],[a,0],e);if(t===SuperMap.Plot.AlignType.DOWN)for(;i<l;i++)s=this.getSelectedFeatures()[i].getBounds(),a=r.getSouth()-s.getSouth(),this.getSelectedFeatures()[i].move(a,0),this._collectEditMarkers(this.getSelectedFeatures()[i]),o(this.getSelectedFeatures()[i].layer._leaflet_id,this.getSelectedFeatures()[i].uuid,"move",[-a,0],[a,0],e);if(t===SuperMap.Plot.AlignType.VERTICALCENTER)for(;i<l;i++)s=this.getSelectedFeatures()[i].getBounds(),a=r.getCenter().lat-s.getCenter().lat,this.getSelectedFeatures()[i].move(a,0),this._collectEditMarkers(this.getSelectedFeatures()[i]),o(this.getSelectedFeatures()[i].layer._leaflet_id,this.getSelectedFeatures()[i].uuid,"move",[-a,0],[a,0],e);if(t===SuperMap.Plot.AlignType.HORIZONTALCENTER)for(;i<l;i++)s=this.getSelectedFeatures()[i].getBounds(),n=r.getCenter().lng-s.getCenter().lng,this.getSelectedFeatures()[i].move(0,n),this._collectEditMarkers(this.getSelectedFeatures()[i]),o(this.getSelectedFeatures()[i].layer._leaflet_id,this.getSelectedFeatures()[i].uuid,"move",[0,-n],[0,n],e)}},deleteSelectedFeatures:function(){if(0===Object.keys(this.getSelectedFeatures()).length)return null;if(Object.keys(this.getSelectedFeatures()).length){var t=this.getSelectedFeatures(),e=t.slice(),o=new SuperMap.Plot.Transaction;o.transType=SuperMap.Plot.TransactionType.REMOVE,L.supermap.plotting.getControl().getTransManager().add(o);for(let t=0,i=e.length;t<i;t++){let i=new SuperMap.Plot.TransactionInfo;i.layerId=e[t].layer._leaflet_id,i.feature=e[t],o.transInfos.push(i)}for(let e=0,o=t.length;e<o;e++)t[e].layer.removeFeatures(t[e])}},getSelectedFeatures:function(){return this.selectedFeatures.slice()},multiSelect:function(){L.DomEvent.on(this._map._container,"mousedown",this._onMapMouseDown,this),this._map.dragging.enabled()&&(this._map.dragging.disable(),this._mapDraggingWasEnabled=!0)},selectFeatures:function(t){if(SuperMap.Util.isArray(t)||(t=[t]),!1!==this.fire(SuperMap.Plot.Event.beforefeaturesselected,{features:t})){var e=[];for(var o in t)null!==t[o]._map&&t[o].enableEdit&&!1===t[o].isSelected&&(t[o].isSelected=!0,this.selectedFeatures.push(t[o]),this._collectEditMarkers(t[o]),this.options.draggable&&!t[o].layer.isLocked&&t[o].layer.isEditable&&t[o].dragging.enable(),null!==t[o].ownerGroup&&(t[o].ownerGroup.isSelected=!0),t[o]instanceof kt&&(t[o].route.isSelected=!0,this.options.highlightFlag&&t[o].route.highlight(this.options.highlightStyle)),e.push(t[o]));this.fire(SuperMap.Plot.Event.featuresselected,{features:e})}},unselectFeatures:function(t){if(void 0===t&&(t=this.selectedFeatures.slice()),SuperMap.Util.isArray(t)||(t=[t]),!1!==this.fire(SuperMap.Plot.Event.beforefeaturesunselected,{features:t})){for(var e=t.slice(),o=0;o<e.length;){var i=L.Util.indexOf(this.selectedFeatures,e[o]);-1!==i?(this._removeMarkers(e[o]),e[o].isSelected=!1,e[o].dragging.disable(),null!==e[o].ownerGroup&&(e[o].ownerGroup.isSelected=!1),e[o]instanceof kt&&(e[o].route.isSelected=!1,e[o].route.unhighlight()),this.selectedFeatures.splice(i,1),o++):e.splice(o,1)}this.fire(SuperMap.Plot.Event.featuresunselected,{features:e}),this.transaction&&0!==this.transaction.transInfos.length&&(L.supermap.plotting.getControl().getTransManager().add(this.transaction),this.transaction=null,this.isAddTransInfo=!1)}},_onMapMouseDown:function(t){this.multiple=!1,L.DomUtil.disableTextSelection(),L.DomUtil.disableImageDrag(),this._startPoint=this._map.mouseEventToContainerPoint(t),L.DomEvent.on(document,{contextmenu:L.DomEvent.stop,mousemove:this._onMapMouseMove,mouseup:this._onMapMouseUp},this)},_onMapMouseMove:function(t){this.multiple||(this.multiple=!0,this._box=L.DomUtil.create("div","leaflet-zoom-box",this._map._container),L.DomUtil.addClass(this._map._container,"leaflet-crosshair")),this._endPoint=this._map.mouseEventToContainerPoint(t);var e=new L.Bounds(this._endPoint,this._startPoint),o=e.getSize();L.DomUtil.setPosition(this._box,e.min),this._box.style.width=o.x+"px",this._box.style.height=o.y+"px"},_onMapMouseUp:function(){if(L.DomEvent.off(this._map._container,"mousedown",this._onMapMouseDown,this),this.multiple&&(L.DomUtil.remove(this._box),L.DomUtil.removeClass(this._map._container,"leaflet-crosshair")),L.DomUtil.enableTextSelection(),L.DomUtil.enableImageDrag(),L.DomEvent.off(document,{contextmenu:L.DomEvent.stop,mousemove:this._onMapMouseMove,mouseup:this._onMapMouseUp},this),this.multiple){var t=new L.LatLngBounds(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._endPoint)),e=[];for(var o in this._editFeatures)e.push(this._editFeatures[o]);for(var i=[],l=0,s=e.length;l<s;l++)e[l].isSelected||(e[l]instanceof kt||e[l].symbolType===SuperMap.Plot.SymbolType.LITERATESIGN?t.contains(e[l].route.getBounds().getCenter())&&-1===SuperMap.Util.indexOf(i,e[l].route)&&i.push(e[l].route):null!==e[l].ownerGroup?t.contains(e[l].ownerGroup.getBounds().getCenter())&&-1===SuperMap.Util.indexOf(i,e[l].ownerGroup)&&i.push(e[l].ownerGroup):e[l].getBounds().isValid()&&t.contains(e[l].getBounds().getCenter())&&i.push(e[l]));0!==i.length&&this.selectFeatures(i),this._mapDraggingWasEnabled&&this._map.dragging.enable(),this.multiple=!1}},_enableFeatureEdit:function(t){t instanceof gt&&t.on("click",this._onClick,this).on("mousemove",this._onMouseMove,this).on("mouseout",this._onMouseOut,this).on("dragstart",this._onDragStart,this).on("drag",this._onDrag,this).on("dragend",this._onDragEnd,this).on("reseteditmarkersvalues",this._onResetEditMarkersValues,this).on("reseteditmarkers",this._onResetEditMarkers,this)},_disableFeatureEdit:function(t){t instanceof gt&&(t.isSelected&&this.unselectFeatures(t),t.off("click",this._onClick,this).off("mousemove",this._onMouseMove,this).off("mouseout",this._onMouseOut,this).off("dragstart",this._onDragStart,this).off("drag",this._onDrag,this).off("dragend",this._onDragEnd,this).off("reseteditmarkersvalues",this._onResetEditMarkersValues,this).off("reseteditmarkers",this._onResetEditMarkers,this))},_onSelectedLayers:function(t){this.selectFeatures(t.target)},_onUnSelectLayers:function(t){this.unselectFeatures(t.target)},_onMouseMove:function(t){var e=t.target,o="";if(e.isSelected)if(this._editMode===SuperMap.Plot.EditMode.ADDCONTROLPOINT&&(SuperMap.Plot.AddPoint_WayType.UNKNOWN!==e._getSymbolWayType()||e instanceof kt&&(e._isFirstNode()||e._isLastNode())||e.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOLM))o="crosshair";else if(this._editMode===SuperMap.Plot.EditMode.ADDCONTROLPOINT&&e instanceof Vt){var i=this._getAddPointTolerance(),l=e._selectNodeLayer(t.latlng,i);null===l||l instanceof kt&&(l._isFirstNode()||l._isLastNode())?o="crosshair":null!==l&&(o="pointer")}else o="move";else o="pointer";e.layer._setCursorStyle(o)},_onMouseOut:function(t){t.target.layer._setCursorStyle()},_onDragStart:function(){for(var t=0;t<this.selectedFeatures.length;t++){if(!this.selectedFeatures[t].getLocked()){var e=this._editMarkers[this.selectedFeatures[t].uuid];for(var o in e)e[o].setOpacity(0)}this.selectedFeatures[t]instanceof ct?this._dragStartLatLngs[this.selectedFeatures[t].uuid]=this._editMarkers[this.selectedFeatures[t].uuid]:this._dragStartLatLngs[this.selectedFeatures[t].uuid]=L.Util.cloneLatLngs(this.selectedFeatures[t].getLatLngs()),this.selectedFeatures[t].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&(this._dragStartPositionOffset[this.selectedFeatures[t].uuid]={x:this.selectedFeatures[t].positionOffsetX,y:this.selectedFeatures[t].positionOffsetY}),this.transaction||(this.transaction=new SuperMap.Plot.Transaction,this.transaction.transType=SuperMap.Plot.TransactionType.EDIT,this.isAddTransInfo=!0)}},_onDrag:function(t){for(var e=0,o=this.selectedFeatures.length;e<o;e++)if((this._editMode!==SuperMap.Plot.EditMode.ADDCONTROLPOINT||SuperMap.Plot.AddPoint_WayType.UNKNOWN===this.selectedFeatures[e]._getSymbolWayType())&&!this.selectedFeatures[e].getLocked()){var i=this.selectedFeatures[e].symbolType;if(i===SuperMap.Plot.SymbolType.SYMBOLTEXT1||i===SuperMap.Plot.SymbolType.AIRROUTE||i===SuperMap.Plot.SymbolType.NAVYROUTE||i===SuperMap.Plot.SymbolType.MISSILEROUTE)break;if(this.selectedFeatures[e].move(t.dLat,t.dLng),this.isAddTransInfo){var l=new SuperMap.Plot.TransactionInfo;l.layerId=this.selectedFeatures[e].layer._leaflet_id,l.uuid=this.selectedFeatures[e].uuid,l.functionName="move",this.transaction.transInfos.push(l)}}this.isAddTransInfo=!1},_onDragEnd:function(){for(var t=0;t<this.selectedFeatures.length;t++)this.selectedFeatures[t].getLocked()||(this._collectEditMarkers(this.selectedFeatures[t]),this.selectedFeatures[t].graphic&&this.selectedFeatures[t].graphic.updateImage());this._saveHistoryInfomation(),this.transaction&&0!==this.transaction.transInfos.length&&(L.supermap.plotting.getControl().getTransManager().add(this.transaction),this.transaction=new SuperMap.Plot.Transaction,this.isAddTransInfo=!0),this.fire(SuperMap.Plot.Event.featuresmodified,{features:this.selectedFeatures})},_saveHistoryInfomation:function(){if(this.transaction)for(var t=0;t<this.transaction.transInfos.length;t++){var e=this.transaction.transInfos[t].uuid,o=this._map.getLayer(this.transaction.transInfos[t].layerId).getFeatureByUuid(e);if(null===o)for(var i=0;i<this.features.length;i++)if(this.features[t].uuid===e){o=this.features[t];break}if(null!==o){if("setRotate"===this.transaction.transInfos[t].functionName)o._isDot()?(this.transaction.transInfos[t].undoParams=[this._dragStartRotate[e]],this.transaction.transInfos[t].redoParams=[o.getRotate()]):(this.transaction.transInfos[t].undoParams=[360-(o.getRotate()-this._dragStartRotate[e])],this.transaction.transInfos[t].redoParams=[o.getRotate()-this._dragStartRotate[e]]);else if("setScale"===this.transaction.transInfos[t].functionName){var l=this._dragStartScale[e];!1===o.limitWidthHeight?(this.transaction.transInfos[t].undoParams=[l.x,l.y],this.transaction.transInfos[t].redoParams=[o.getScale().x,o.getScale().y]):(this.transaction.transInfos[t].undoParams=[l],this.transaction.transInfos[t].redoParams=[o.getScale()])}else if("setLatLngs"===this.transaction.transInfos[t].functionName)o.symbolType===SuperMap.Plot.SymbolType.LINERELATION?this.transaction.transInfos[t].undoParams=[this._dragStartLatLngs[e]]:this.transaction.transInfos[t].undoParams=[L.Util.cloneLatLngs(this._dragStartLatLngs[e])],this.transaction.transInfos[t].redoParams=[L.Util.cloneLatLngs(o.getLatLngs())],o.symbolType===SuperMap.Plot.SymbolType.ARCREGION&&1===this.transaction.transInfos[t].redoParams[0].length&&this.transaction.transInfos[t].redoParams[0].push(o.scalePoints[0]);else if("setScaleValues"===this.transaction.transInfos[t].functionName){var s=[],n=[];for(let t=0;t<this._dragStartScaleValues[e].length;t++)s.push(this._dragStartScaleValues[e][t]);for(let t=0;t<o.scaleValues.length;t++)n.push(o.scaleValues[t]);this.transaction.transInfos[t].undoParams=[s],this.transaction.transInfos[t].redoParams=[n]}else if("modifyPoint"===this.transaction.transInfos[t].functionName){var a=this.transaction.transInfos[t].undoParams[0];this.transaction.transInfos[t].undoParams.push(this._dragStartScalePoints[e][a]),this.transaction.transInfos[t].undoParams[1].isScalePoint=!0;var r=this.transaction.transInfos[t].redoParams[0];this.transaction.transInfos[t].redoParams.push(o.scalePoints[r]),this.transaction.transInfos[t].redoParams[1].isScalePoint=!0}else if("move"===this.transaction.transInfos[t].functionName){if(o.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&!0===o.positionOffset){var p=0,u=0,h=this._map.latLngToLayerPoint(o.getLatLngs()[0]),g={x:h.x+this._dragStartPositionOffset[e].x,y:h.y+this._dragStartPositionOffset[e].y},c=this._map.layerPointToLatLng(g);h.x+=o.positionOffsetX,h.y+=o.positionOffsetY;var y=this._map.layerPointToLatLng(h);p=c.lng-y.lng,u=c.lat-y.lat}else o instanceof ct?(p=this._dragStartLatLngs[e][0].getLatLng().lng-this._editMarkers[o.uuid][0].getLatLng().lng,u=this._dragStartLatLngs[e][0].getLatLng().lat-this._editMarkers[o.uuid][0].getLatLng().lat):0!==o.getLatLngs().length&&(p=this._dragStartLatLngs[e][0].lng-o.getLatLngs()[0].lng,u=this._dragStartLatLngs[e][0].lat-o.getLatLngs()[0].lat);o instanceof ct?(this.transaction.transInfos[t].undoParams=[u,p],this.transaction.transInfos[t].redoParams=[-u,-p]):0!==o.getLatLngs().length&&(this.transaction.transInfos[t].undoParams=[u,p],this.transaction.transInfos[t].redoParams=[-u,-p])}}else this.transaction.transInfos.splice(t,1),t--}},_onResetEditMarkers:function(t){-1!==L.Util.indexOf(this.selectedFeatures,t.target)&&this._collectEditMarkers(t.target)},_onResetEditMarkersValues:function(t){this._resetEditMarkersValue(t.target)},_onMapClick:function(t){if(!1!==this._onTriggerMapClick){if(this._startPoint&&this._endPoint)return this._startPoint=null,void(this._endPoint=null);this.unselectFeatures(),L.DomEvent.stopPropagation(t)}else this._onTriggerMapClick=!0},_onClick:function(t){this._onTriggerMapClick=!1;var e,o,i=t.target;if(i.isSelected&&i.symbolType===SuperMap.Plot.SymbolType.SATELLITE&&i.timeWindows.length>0){var l=i.layer._getFeatureFromEvent(t);l.symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS&&(i=l)}if(this.transaction||(this.transaction=new SuperMap.Plot.Transaction,this.transaction.transType=SuperMap.Plot.TransactionType.EDIT,this.isAddTransInfo=!0),i instanceof gt)if(i instanceof ct&&i.moveend)i.moveend=!1;else if(null!==i.ownerGroup&&i.ownerGroup.moveend)i.ownerGroup.moveend=!1;else if(this._editMode!==SuperMap.Plot.EditMode.ADDCONTROLPOINT)i instanceof ct&&!i.isSelected?(!1===t.originalEvent.ctrlKey&&this.unselectFeatures(),this.selectFeatures(i)):i instanceof Vt||i.isSelected||null!==i.ownerGroup&&!0!==i.ownerGroup.isSelected||(!1===t.originalEvent.ctrlKey&&this.unselectFeatures(),this.selectFeatures(i));else if(i instanceof Vt||i.isSelected){if(!1===i.isLocked&&i.isSelected)if(i instanceof Vt){var s=this._getAddPointTolerance();if(null===(a=i._selectNodeLayer(t.latlng,s))){let e=this._getAddPointTolerance(),o=i._addRouteNodeByPosWithoutLast(t.latlng,e);null!==o&&(this.unselectFeatures(),this.selectFeatures(o))}}else if(i instanceof kt&&i.route.isSelected){let t=i._isFirstNode(),e=i._isLastNode();if(!0===t||!0===e){let o=i.route._addRouteNodeByNode(i.routeNode,t,e);if(null!==o){this.unselectFeatures(),this.selectFeatures(o);var n=new SuperMap.Plot.TransactionInfo;n.layerId=o.layer._leaflet_id,n.uuid=o.uuid,n.functionName="setLatLngs",n.undoParams=[L.Util.cloneLatLngs(o.getLatLngs())],n.redoParams=[L.Util.cloneLatLngs(o.getLatLngs())],this.transaction.transInfos.push(n),this.transaction&&(L.supermap.plotting.getControl().getTransManager().add(this.transaction),this.transaction=new SuperMap.Plot.Transaction,this.isAddTransInfo=!0)}}else this.unselectFeatures(),this.selectFeatures(i)}else this._addPoint(i,t.latlng)}else if(!1===t.originalEvent.ctrlKey&&this.unselectFeatures(),this.selectFeatures(i),i instanceof kt&&((e=i._isFirstNode())||(o=i._isLastNode()))){var a=i.route._addRouteNodeByNode(i.routeNode,e,o);null!==a&&(this.unselectFeatures(),this.selectFeatures(a))}},_addPoint:function(t,e){if(null!==t&&void 0!==t){var o=t.scaleValues.slice(),i=L.Util.cloneLatLngs(t.getLatLngs()),l=L.Util.latLngsToSuperMapPoints(t.getLatLngs());if(t.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOLM){var s=L.supermap.plotting.editMarker(e,{icon:this.options.scaleIcon,nHandle:-2,tag:t.scalePoints.length});s.owner=t,this._addToMapAndBindMarker(s),this._editMarkers[t.uuid].push(s),t.scalePoints.push(e),t._modifyPoint(t.scalePoints.length-1,e);let i=new SuperMap.Plot.TransactionInfo;i.layerId=t.layer._leaflet_id,i.uuid=t.uuid,i.functionName="setScaleValues",i.undoParams=[o],i.redoParams=[t.scaleValues],this.transaction.transInfos.push(i),this.transaction&&(L.supermap.plotting.getControl().getTransManager().add(this.transaction),this.transaction=new SuperMap.Plot.Transaction,this.isAddTransInfo=!0)}else{if(t.getLatLngs().length>=t.maxEditPts)return;var n=t._getSymbolWayType();if(void 0!==SuperMap.Plot.AlgoSymbolFactory&&SuperMap.Plot.AlgoSymbolFactory.canPolylineConnect(t.libID,t.code)&&!0===t.polylineConnectLocationPoint&&(n=SuperMap.Plot.AddPoint_WayType.POLYLINE),SuperMap.Plot.AddPoint_WayType.UNKNOWN===n)return;var a=new SuperMap.Geometry.Point(e.lng,e.lat),r=-1;SuperMap.Plot.AddPoint_WayType.CURVE===n&&(r=this._addPointByCurve(t,a));var p=new SuperMap.Plot.Transaction;if(L.supermap.plotting.getControl().getTransManager().add(p),SuperMap.Plot.AddPoint_WayType.POLYLINE===n&&(r=this._addPointByPolyLine(t,a)),l=L.Util.latLngsToSuperMapPoints(t.getLatLngs()),r>0&&r<l.length){var u=L.supermap.plotting.editMarker(new L.LatLng(a.y,a.x),{icon:this.options.editIcon,nHandle:-1});if(u.owner=t,this._addToMapAndBindMarker(u),this._editMarkers[t.uuid].splice(r,0,u),l.splice(r,0,a),0===t.libID&&590===t.code||100===t.libID&&(17703===t.code||17704===t.code)){var h=SuperMap.Plot.PlottingUtil.computeBeizerPoints(!1,l,t.scaleValues);t.scalePoints=L.Util.superMapPointsToLatLngs(h.scalePoints),t.scaleValues=h.scaleValues,t.setLatLngs(L.Util.superMapPointsToLatLngs(l)),this._resetEditMarkersValue(t)}else t.latLngs=L.Util.superMapPointsToLatLngs(l);let e=new SuperMap.Plot.TransactionInfo;e.layerId=t.layer._leaflet_id,e.uuid=t.uuid,e.functionName="setLatLngs",e.undoParams=[i],e.redoParams=[t.getLatLngs()],p.transInfos.push(e)}}}},_addPointByCurve:function(t,e){var o=L.Util.latLngsToSuperMapPoints(t.getLatLngs()),i=SuperMap.Plot.PlottingUtil.generateBeizerPointsNoCtrlPt(o);if(2>i.length)return-1;var l=[],s=0;for(let t=1,e=o.length;t<e;t++){var n=[];for(let e=s,a=i.length;e<a;e++){if(SuperMap.Plot.PlottingUtil.equalFuzzy(o[t].x,i[e].x)&&SuperMap.Plot.PlottingUtil.equalFuzzy(o[t].y,i[e].y)){if(n.length<1)continue;n.push(i[e]),l.push(n),n=[],s=e;break}n.push(i[e])}}var a=-1,r=-1;for(let t=0;t<l.length;t++){var p=this._computePointToLineMinDis(e,l[t]).minDis;p<0||(r<0?(r=p,a=t+1):r>p&&(r=p,a=t+1))}var u=o.slice();u.push(u[0]);var h=SuperMap.Plot.PlottingUtil.generateBeizerPointsNoCtrlPt(u),g=[];for(let t=1,e=u.length;t<e;t++){var c=[];for(let e=s,o=h.length;e<o;e++){if(SuperMap.Plot.PlottingUtil.equalFuzzy(u[t].x,h[e].x)&&SuperMap.Plot.PlottingUtil.equalFuzzy(u[t].y,h[e].y)){if(n.length<1)continue;c.push(h[e]),g.push(c),c=[],index1=e;break}c.push(h[e])}}var y=-1,P=-1;for(let t=0;t<g.length;t++){var d=this._computePointToLineMinDis(e,g[t]).minDis;d<0||(P<0?(P=d,y=t+1):P>d&&(P=d,y=t+1))}return y>a&&(a=-1),a},_addPointByPolyLine:function(t,e){var o=-1,i=L.Util.latLngsToSuperMapPoints(t.getLatLngs());return(o=this._computePointToLineMinDis(e,i).index)>=0&&o++,o},_computePointToLineMinDis:function(t,e){var o=this._getAddPointTolerance(),i=SuperMap.Plot.PlottingUtil.computePointToLineMinDis(t,e);return i.minDis>o&&(i.index=-1),i},_getAddPointTolerance:function(){var t=this._mouseTolerance;L.Browser.touch&&L.supermap.plotting.getControl().getTouchMode()&&(t=this.touchTolerance);var e=this._map.layerPointToLatLng(L.point(0,0)),o=this._map.layerPointToLatLng(L.point(t,0));return SuperMap.Plot.PlottingUtil.distance(new SuperMap.Geometry.Point(e.lng,e.lat),new SuperMap.Geometry.Point(o.lng,o.lat))},_collectEditMarkers:function(t){void 0!==this._editMarkers[t.uuid]&&this._removeMarkers(t);var e,o=[];if(t.layer instanceof ae&&(t.layer.getLocked()||!t.layer.getEditable())){var i=t.getBounds();if(null!==i&&i.isValid()){var l=L.latLng(i.getNorth(),i.getEast()),s=L.latLng(i.getNorth(),i.getWest()),n=L.latLng(i.getSouth(),i.getEast()),a=L.latLng(i.getSouth(),i.getWest()),r=new L.Polygon([l,s,a,n],{smoothFactor:.5});L.setOptions(r,{weight:1,opacity:.5,color:"#0000ff",fillOpacity:.3,fillColor:"#0000ff"}),this._map.addLayer(r),e=r}}else if(t.getLocked()){var p=t._getHandlePointsByBounds();for(var u in p){let e=new L.LatLng(p[u].lat,p[u].lng),i=L.supermap.plotting.editMarker(e,{icon:this.options.lockedIcon,nHandle:-3});this._addToMapAndBindMarker(i),i.owner=t,o.push(i)}}else if(t instanceof ct||t instanceof kt)if(t instanceof wt&&this._editMode!==SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE)for(var h=0;h<t.scalePoints.length;h++){let e=new L.LatLng(t.scalePoints[h].lat,t.scalePoints[h].lng);var g=t.scalePoints[h].tag?t.scalePoints[h].tag:h;let i=L.supermap.plotting.editMarker(e,{icon:this.options.scaleIcon,nHandle:t.enableEdit?-2:-3,tag:g});this._addToMapAndBindMarker(i),o.push(i),i.owner=t}else{let e=t._getHandleAndRotatePoints();for(let i in e.handlePoints){var c=e.handlePoints[i].nHandle;(this._editMode!==SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE||t instanceof kt)&&(c=-3);let l=new L.LatLng(e.handlePoints[i].lat,e.handlePoints[i].lng),s=L.supermap.plotting.editMarker(l,{icon:this.options.editIcon,nHandle:c,tag:i});this._addToMapAndBindMarker(s),s.owner=t,o.push(s)}if(this._editMode===SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE)for(let i in e.rotatePoints){let l=new L.LatLng(e.rotatePoints[i].lat,e.rotatePoints[i].lng),s=L.supermap.plotting.editMarker(l,{icon:this.options.rotateIcon,nHandle:0});this._addToMapAndBindMarker(s),o.push(s),s.owner=t}}else if(this._editMode===SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE){let e=t._getHandleAndRotatePoints();for(let i=0,l=e.handlePoints.length;i<l;i++){let l=e.handlePoints[i].nHandle;t.enableEdit&&t.symbolType!==SuperMap.Plot.SymbolType.TEXTSYMBOL?t._getHandleCount()>9&&(l=-1):l=-3;let s=new L.LatLng(e.handlePoints[i].lat,e.handlePoints[i].lng),n=L.supermap.plotting.editMarker(s,{icon:this.options.editIcon,nHandle:l,tag:i});this._addToMapAndBindMarker(n),n.owner=t,o.push(n)}for(let i=0,l=e.rotatePoints.length;i<l;i++){let l=new L.LatLng(e.rotatePoints[i].lat,e.rotatePoints[i].lng),s=L.supermap.plotting.editMarker(l,{icon:this.options.rotateIcon,nHandle:t.enableEdit?0:-3});this._addToMapAndBindMarker(s),o.push(s),s.owner=t}}else if(t.symbolType===SuperMap.Plot.SymbolType.REGULARPOLYGON){let e=[t.latLngs[0],t.components[0].getLatLngs()[0][0]];for(let i in e){let l=L.supermap.plotting.editMarker(e[i],{icon:this.options.editIcon,nHandle:t.enableEdit?-1:-3,tag:i});this._addToMapAndBindMarker(l),o.push(l),l.owner=t}for(let e in t.scalePoints){let i=new L.LatLng(t.scalePoints[e].lat,t.scalePoints[e].lng),l=t.scalePoints[e].tag?t.scalePoints[e].tag:e,s=L.supermap.plotting.editMarker(i,{icon:this.options.scaleIcon,nHandle:t.enableEdit?-2:-3,tag:l});this._addToMapAndBindMarker(s),o.push(s),s.owner=t}}else if(t.symbolType===SuperMap.Plot.SymbolType.PARALLELLINE){var y=L.Util.superMapPointsToLatLngs(t.superMapAlgoSymbol.controlPoints[0]);t.getLatLngs()[0]=L.latLng(y[0].lat,y[0].lng);for(let e in t.latLngs){let i=new L.LatLng(t.latLngs[e].lat,t.latLngs[e].lng),l=L.supermap.plotting.editMarker(i,{icon:this.options.editIcon,nHandle:t.enableEdit?-1:-3,tag:e});this._addToMapAndBindMarker(l),o.push(l),l.owner=t}}else if(t.symbolType!==SuperMap.Plot.SymbolType.SATELLITE){for(let e in t.latLngs){let i=new L.LatLng(t.latLngs[e].lat,t.latLngs[e].lng),l=L.supermap.plotting.editMarker(i,{icon:this.options.editIcon,nHandle:t.enableEdit?-1:-3,tag:e});this._addToMapAndBindMarker(l),o.push(l),l.owner=t}for(let e in t.scalePoints){let i=new L.LatLng(t.scalePoints[e].lat,t.scalePoints[e].lng),l=t.scalePoints[e].tag?t.scalePoints[e].tag:e,s=L.supermap.plotting.editMarker(i,{icon:this.options.scaleIcon,nHandle:t.enableEdit?-2:-3,tag:l});this._addToMapAndBindMarker(s),o.push(s),s.owner=t}}else if(t.symbolType===SuperMap.Plot.SymbolType.SATELLITE||t.timeWindows.length>1)for(let e in t.scalePoints){let i=new L.LatLng(t.scalePoints[e].lat,t.scalePoints[e].lng),l=t.scalePoints[e].tag?t.scalePoints[e].tag:e,s=L.supermap.plotting.editMarker(i,{icon:this.options.scaleIcon,nHandle:t.enableEdit?-2:-3,tag:l});this._addToMapAndBindMarker(s),o.push(s),s.owner=t}this._editMarkers[t.uuid]=o,this._disEditBox[t.uuid]=e},_resetEditMarkersValue:function(t){if(this._editMarkers.hasOwnProperty(t.uuid)){var e=this._editMarkers[t.uuid],o=this._disEditBox[t.uuid];if(null==o||!t.layer.getLocked()&&t.layer.getEditable())if(t instanceof ct||t instanceof kt)if(t instanceof wt&&this._editMode!==SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE)for(var i in t.scalePoints)e[i]._latlng=t.scalePoints[i],e[i].update();else{let o=t._getHandleAndRotatePoints();for(let t in o.handlePoints)e[t]._latlng=o.handlePoints[t],e[t].update();if(this._editMode===SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE){let t=o.handlePoints.length;for(let i in o.rotatePoints)e[t+parseInt(i)]._latlng=o.rotatePoints[i],e[t+parseInt(i)].update()}}else if(this._editMode===SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE){let o=t._getHandleAndRotatePoints();for(let t in o.handlePoints)e[t]._latlng=o.handlePoints[t],e[t].update();let i=o.handlePoints.length;for(let t in o.rotatePoints)e[i+parseInt(t)]._latlng=o.rotatePoints[t],e[i+parseInt(t)].update()}else if(void 0!==t.scalePoints&&null!==t.scalePoints||(t.scalePoints=[]),t.symbolType===SuperMap.Plot.SymbolType.REGULARPOLYGON){let o=[t.getLatLngs()[0],t.components[0].getLatLngs()[0][0]];for(let t in o)e[t]._latlng=o[t],e[t].update()}else if(t.symbolType===SuperMap.Plot.SymbolType.PARALLELLINE){var l=L.Util.superMapPointsToLatLngs(t.superMapAlgoSymbol.controlPoints[0]);t.getLatLngs()[0]=L.latLng(l[0].lat,l[0].lng);for(let o in t.getLatLngs())e[o]._latlng=t.getLatLngs()[o],e[o].update()}else if(t.symbolType===SuperMap.Plot.SymbolType.SATELLITE||t.timeWindows&&t.timeWindows.length>1)for(let o in t.scalePoints){let i=parseInt(o);e[i]._latlng=t.scalePoints[o],e[i].update()}else if(t.getLatLngs().length+t.scalePoints.length===e.length){for(let o in t.getLatLngs())e[o]._latlng=t.getLatLngs()[o],e[o].update();let o=t.getLatLngs().length;for(let i in t.scalePoints){var s=o+parseInt(i);e[s]._latlng=t.scalePoints[i],e[s].update()}}else this._collectEditMarkers(t);else{var n=t.getBounds();if(null!==n&&n.isValid()){var a=L.latLng(n.getNorth(),n.getEast()),r=L.latLng(n.getNorth(),n.getWest()),p=L.latLng(n.getSouth(),n.getEast()),u=L.latLng(n.getSouth(),n.getWest());o.setLatLngs([a,r,u,p])}}}},_removeMarkers:function(t){var e=this._editMarkers[t.uuid];for(let t in e)this._unbindMarkerEvents(e[t]),this._map.removeLayer(e[t]);delete this._editMarkers[t.uuid];var o=this._disEditBox[t.uuid];o&&this._map.removeLayer(o),delete this._disEditBox[t.uuid]},_unbindMarkerEvents:function(t){t.off("mousemove",this._moveMove,this),t.off("mouseout",this._moveOut,this),-3!==t.options.nHandle&&(t.off("click",this._removePoint,this),t.off("dragstart",this._dragStart,this),t.off("drag",this.redraw,this),t.off("dragend",this._dragEnd,this),t.dragging.disable())},_addToMapAndBindMarker:function(t){t.addTo(this._map),t.on("mousemove",this._moveMove,this),t.on("mouseout",this._moveOut,this),-3!==t.options.nHandle&&(t.on("click",this._removePoint,this),t.on("dragstart",this._dragStart,this),t.on("drag",this._dragPoint,this),t.on("dragend",this._dragEnd,this),t.dragging.enable()),-3===t.options.nHandle&&(t.on("dragstart",this._dragStart,this),t.on("dragend",this._dragEnd,this),t.dragging.enable())},_moveMove:function(t){switch(t.target.options.nHandle){case 1:case 8:t.target._icon.style.cursor="se-resize";break;case 3:case 6:t.target._icon.style.cursor="ne-resize";break;case 4:case 5:t.target._icon.style.cursor="e-resize";break;case 2:case 7:t.target._icon.style.cursor="n-resize";break;case-1:case-2:t.target._icon.style.cursor="pointer";break;case 0:t.target._icon.style.cursor="default"}},_moveOut:function(t){t.target._icon.style.cursor=""},_removePoint:function(t){if(this._editMode===SuperMap.Plot.EditMode.ADDCONTROLPOINT&&t.target.owner.isSelected){let o=L.Util.cloneLatLngs(t.target.owner.getLatLngs()),i=this._editMarkers[t.target.owner.uuid],l=i.indexOf(t.target);this._map.removeLayer(i[l]),i.splice(l,1),t.target.owner.latLngs.splice(l,1),t.target.owner.redraw();let s=new SuperMap.Plot.Transaction;L.supermap.plotting.getControl().getTransManager().add(s);var e=new SuperMap.Plot.TransactionInfo;e.layerId=t.target.owner.layer._leaflet_id,e.uuid=t.target.owner.layer.uuid,e.functionName="setLatLngs",e.undoParams=[o],e.redoParams=[t.target.owner.getLatLngs()],s.transInfos.push(e)}else if(this._editMode===SuperMap.Plot.EditMode.REMOVECONTROLPOINT&&t.target.owner.isSelected){let e=this._editMarkers[t.target.owner.uuid],o=e.indexOf(t.target),i=L.Util.cloneLatLngs(t.target.owner.getLatLngs());if(t.target.owner.getLatLngs().length<=t.target.owner.minEditPts)return this._editMode=SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE,void this._collectEditMarkers(t.target.owner);this._map.removeLayer(e[o]),e.splice(o,1),t.target.owner.latLngs.splice(o,1),t.target.owner.redraw();let l=new SuperMap.Plot.Transaction;L.supermap.plotting.getControl().getTransManager().add(l);let s=new SuperMap.Plot.TransactionInfo;s.layerId=t.target.owner.layer._leaflet_id,s.uuid=t.target.owner.uuid,s.functionName="setLatLngs",s.undoParams=[i],s.redoParams=[t.target.owner.getLatLngs()],l.transInfos.push(s)}},_dragStart:function(t){for(var e in this.transaction||(this.transaction=new SuperMap.Plot.Transaction,this.transaction.transType=SuperMap.Plot.TransactionType.EDIT,this.isAddTransInfo=!0),this.selectedFeatures){var o=this.selectedFeatures[e];if(o._isDot()&&(this._dragStartScale[o.uuid]=o.getScale()),o.scaleValues&&o.scaleValues.length&&0!==o.scaleValues.length){this._dragStartScaleValues[o.uuid]=[];for(var i=0;i<o.scaleValues.length;i++)this._dragStartScaleValues[o.uuid].push(o.scaleValues[i])}else this._dragStartScaleValues[o.uuid]=[];if(o.scalePoints&&o.scalePoints.length&&0!==o.scalePoints.length&&(this._dragStartScalePoints[o.uuid]=L.Util.cloneLatLngs(o.scalePoints)),this._dragStartRotate[o.uuid]=o.getRotate(),this.selectedFeatures[e]instanceof ct?this._dragStartLatLngs[o.uuid]=this._editMarkers[this.selectedFeatures[e].uuid]:this._dragStartLatLngs[o.uuid]=L.Util.cloneLatLngs(o.getLatLngs()),o.symbolType===SuperMap.Plot.SymbolType.ARCREGION&&1===this._dragStartLatLngs[o.uuid].length&&this._dragStartLatLngs[o.uuid].push(o.scalePoints[0].clone()),o.symbolType===SuperMap.Plot.SymbolType.LINERELATION&&(null!==o.endAssociatedUuid?this._dragStartLatLngs[o.uuid].push(o.startAssociatedUuid):null!==o.endAssociatedUuid&&this._dragStartLatLngs[o.uuid].push(o.endAssociatedUuid)),this._dragStartBounds[o.uuid]=o.getBounds(),o.symbolType===SuperMap.Plot.SymbolType.FLAGGROUP)o.anchorPoint=L.latLng(o.getBounds().getSouth(),o.getBounds().getWest());else if(o.symbolType===SuperMap.Plot.SymbolType.TEXTSYMBOL)o.anchorPoint=L.latLng(o.getLatLngs()[0].lat,o.getLatLngs()[0].lng);else if(o.symbolType===SuperMap.Plot.SymbolType.CONCENTRICCIRCLE)o.anchorPoint=L.latLng(o.getLatLngs()[0].lat,o.getLatLngs()[0].lng);else if(o.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL){var l=o.getBounds();l.isValid()&&(o.anchorPoint=l.getCenter())}var s=this._editMarkers[o.uuid];for(let t in s)-3===s[t].options.nHandle&&s[t].setOpacity(0),s[t].setOpacity(0)}this.transaction||(this.transaction=new SuperMap.Plot.Transaction,this.transaction.transType=SuperMap.Plot.TransactionType.EDIT,this.isAddTransInfo=!0),this.oldLatLng=t.target._latlng,this._lastPixel=this._map.latLngToLayerPoint(t.target._latlng)},_dragEnd:function(){for(var t=0;t<this.selectedFeatures.length;t++)this._collectEditMarkers(this.selectedFeatures[t]),this.selectedFeatures[t].graphic&&this.selectedFeatures[t].graphic.updateImage();this.fire(SuperMap.Plot.Event.featuresmodified,{features:this.selectedFeatures}),this._saveHistoryInfomation(),this.transaction&&0!==this.transaction.transInfos.length&&(L.supermap.plotting.getControl().getTransManager().add(this.transaction),this.transaction=new SuperMap.Plot.Transaction,this.isAddTransInfo=!0)},_dragPoint:function(t){if(!1!==this.fire(SuperMap.Plot.Event.beforefeaturesmodified,{features:this.selectedFeatures})){var e=t.target.owner;-3===t.target.options.nHandle||this._avoidRegionControl?this._avoidRegionControl&&this._collectEditMarkers(e):this._editMode===SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE&&0===t.target.options.nHandle?this._dragRotate(t):this._editMode===SuperMap.Plot.EditMode.EDITCIRCUMRECTANGLE&&t.target.options.nHandle>0?this._dragResize(t,t.target.options.nHandle):this._dragLatLngs(t),this.fire(SuperMap.Plot.Event.featuresmodified,{features:this.selectedFeatures})}},_dragRotate:function(t){var e=this;var o=t.target.owner,i=null;i=o.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL||o.symbolType===SuperMap.Plot.SymbolType.CONCENTRICCIRCLE?o.getLatLngs()[0]:o.anchorPoint;var l=this._map.latLngToLayerPoint(i);o.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&!0===o.positionOffset&&(l.x+=o.positionOffsetX*o.dScale,l.y+=o.positionOffsetY*o.dScale);var s=this._map.latLngToLayerPoint(t.latlng),n=this._map.latLngToLayerPoint(t.oldLatLng),a=s.x-l.x-(n.x-l.x),r=s.y-l.y-(n.y-l.y);if(0!==a&&0!==r){var p=180*(Math.atan2(n.y-l.y,n.x-l.x)-Math.atan2(s.y-l.y,s.x-l.x))/Math.PI,u=p;if(void 0!==this._lastPixel)u=180*(Math.atan2(this._lastPixel.y-l.y,this._lastPixel.x-l.x)-Math.atan2(s.y-l.y,s.x-l.x))/Math.PI;!function(t,o){for(var i=0;i<e.selectedFeatures.length;i++){var l=0;if(l=e.selectedFeatures[i].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL?t+e._dragStartRotate[e.selectedFeatures[i].uuid]:o,(l%=360)<0&&(l+=360),e.selectedFeatures[i].setRotate(l),e.isAddTransInfo){var s=new SuperMap.Plot.TransactionInfo;s.layerId=e.selectedFeatures[i].layer._leaflet_id,s.uuid=e.selectedFeatures[i].uuid,s.functionName="setRotate",e.transaction.transInfos.push(s)}}e.isAddTransInfo=!1}(p,u)}this._lastPixel=s},_dragResize:function(t,e){var o=this;function i(t,i,s){for(var n=[],a=0;a<o.selectedFeatures.length;a++)if(!0!==o.selectedFeatures[a].getLocked())if(o.selectedFeatures[a]._isDot()){var r=o._dragStartScale[o.selectedFeatures[a].uuid];if(o.selectedFeatures[a].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&!1===o.selectedFeatures[a].limitWidthHeight)r.x=0===r.x?.05:r.x,r.y=0===r.y?.05:r.y,o.selectedFeatures[a].setScale(t*r.x,i*r.y);else{var p=t*(r=!0===Boolean(r)?r:1);p>0&&o.selectedFeatures[a].setScale(p)}if(o.isAddTransInfo){let t=new SuperMap.Plot.TransactionInfo;t.layerId=o.selectedFeatures[a].layer._leaflet_id,t.uuid=o.selectedFeatures[a].uuid,t.functionName="setScale",o.transaction.transInfos.push(t)}}else{if(9===o.selectedFeatures[a]._getHandleCount()&&e&&e>0){var u=o._dragStartBounds[o.selectedFeatures[a].uuid],h=o._dragStartLatLngs[o.selectedFeatures[a].uuid],g=o.selectedFeatures[a]._getLatLng(e,u,s);o.selectedFeatures[a]._resizeLatLngs(g,e,u,h)}if(SuperMap.Plot.AlgoSymbolFactory.isAccessServer(o.selectedFeatures[a].libID,o.selectedFeatures[a].code)){var c=new SuperMap.GetSymbolInfoParameters;c.libID=o.selectedFeatures[a].libID,c.code=o.selectedFeatures[a].code,c.inputPoints=L.Util.latLngsToSuperMapPoints(o.selectedFeatures[a].getLatLngs()),c.scaleValues=o.selectedFeatures[a].scaleValues,c.subSymbols=o.selectedFeatures[a].subSymbols,n.push(o.selectedFeatures[a]),L.supermap.symbolInfoService(l.serverUrl,l.serviceParams).getSymbolInfo(c,function(t){for(var e=0;e<n.length;e++)n[e].libID===t.result.libID&&n[e].code===t.result.code&&(n[e].symbolData.innerCells=t.result.innerCells,n[e].symbolData.scalePoints=t.result.scalePoints,n[e].symbolData.scaleValues=t.result.scaleValues,n[e].redraw(),n[e]._updateSymbolTexts(),n.splice(0,1))},this)}else if(o.selectedFeatures[a].redraw(),o.selectedFeatures[a]._updateSymbolTexts(),o.selectedFeatures[a].symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL&&o.selectedFeatures[a].ownerGroup&&(o.selectedFeatures[a].ownerGroup.symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT||o.selectedFeatures[a].ownerGroup.symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT))for(let t in o.selectedFeatures[a].ownerGroup.subObjects)o.selectedFeatures[a].ownerGroup.subObjects[t].redraw();if(o.isAddTransInfo){let t=new SuperMap.Plot.TransactionInfo;t.layerId=o.selectedFeatures[a].layer._leaflet_id,t.uuid=o.selectedFeatures[a].uuid,t.functionName="setLatLngs",o.transaction.transInfos.push(t)}}}var l=t.target.owner,s=this._dragStartBounds[l.uuid],n=s.getEast()-s.getWest(),a=s.getNorth()-s.getSouth(),r=l._resizeOffset(t.latlng,e,s);!0===t.originalEvent.altKey&&(0===r.lng&&0!==r.lat?r.lng=r.lat*n/a:0===r.lat&&0!==r.lng?r.lat=r.lng*a/n:Math.abs(r.lng)<Math.abs(r.lat)?r.lng<0&&r.lat>0||r.lng>0&&r.lat<0?r.lng=r.lat*n/a*-1:r.lng=r.lat*n/a:r.lat<0&&r.lng>0||r.lat>0&&r.lng<0?r.lat=r.lng*a/n*-1:r.lat=r.lng*a/n);var p=1,u=l._resizeBounds(t.latlng,e,s),h=!0===Boolean(n)?(u.getEast()-u.getWest())/n:.5,g=!0===Boolean(a)?(u.getNorth()-u.getSouth())/a:.5;p=2===e||7===e?g:4===e||5===e?h:h<g?h:g,l.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&!1===l.limitWidthHeight?i(h,g,r):i(p,null,r),this.oldLatLng=t.latlng},_dragLatLngs:function(t){var e=t.target.owner,o=this._editMarkers[e.uuid],i=SuperMap.Util.indexOf(o,t.target),l=!1;if(-2===t.target.options.nHandle&&(l=!0),this.transaction||(this.transaction=new SuperMap.Plot.Transaction,this.transaction.transType=SuperMap.Plot.TransactionType.EDIT,this.isAddTransInfo=!0),SuperMap.Plot.AlgoSymbolFactory.isAccessServer(e.libID,e.code)){var s=(new Date).getTime(),n=this._map.latLngToLayerPoint(t.latlng);if(l&&void 0!==this._lastDragPixel&&null!==this._lastDragPixel&&!((Math.abs(n.x-this._lastDragPixel.x)>3||Math.abs(n.y-this._lastDragPixel.y)>3)&&s-this.lastDownTime>100))return;var a=new SuperMap.GetSymbolInfoParameters;a.libID=e.libID,a.code=e.code,l?(a.inputPoints=L.Util.latLngsToSuperMapPoints(e.getLatLngs()),a.scalePoints=L.Util.latLngsToSuperMapPoints(e.scalePoints),a.scaleValues=e.scaleValues,a.newScalePoint=new SuperMap.Geometry.Point(t.latlng.lng,t.latlng.lat),a.newScalePointIndex=parseInt(t.target.options.tag)):(e.getLatLngs()[i]=t.target.getLatLng(),a.inputPoints=L.Util.latLngsToSuperMapPoints(e.getLatLngs()),a.scaleValues=e.scaleValues),a.subSymbols=e.subSymbols,L.supermap.symbolInfoService(e.serverUrl,e.serviceParams).getSymbolInfo(a,function(t){e.symbolData.innerCells=t.result.innerCells,e.symbolData.scalePoints=t.result.scalePoints,e.symbolData.scaleValues=t.result.scaleValues,e.redraw(),e._updateSymbolTexts(),this._resetEditMarkersValue(e)},this),this._lastDragPixel=n,this.lastDownTime=(new Date).getTime()}else if(-1===t.target.options.nHandle){if(e.symbolType===SuperMap.Plot.SymbolType.REGULARPOLYGON)1===i?e.getLatLngs()[e.getLatLngs().length-1]=t.latlng:e.getLatLngs()[0]=t.latlng;else if(e.symbolType===SuperMap.Plot.SymbolType.ELLIPSESYMBOL)e.getLatLngs()[i]=t.latlng;else if(e.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL){if(!0===e.positionOffset?e.setLatLngs(t.latlng):e.setLatLngs(e.latLngs[0]),this.isAddTransInfo){let t=new SuperMap.Plot.TransactionInfo;t.layerId=e.layer._leaflet_id,t.uuid=e.uuid,t.functionName="setLatLngs",this.transaction.transInfos.push(t)}}else e.getLatLngs()[i]=t.latlng;if(e.symbolType===SuperMap.Plot.SymbolType.LINERELATION||e.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||e.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1||e.symbolType===SuperMap.Plot.SymbolType.ELLIPSESYMBOL)e._modifyPoint(parseInt(t.target.options.tag),t.latlng);else if(e.redraw(),e.symbolType===SuperMap.Plot.SymbolType.ANNOFRAMESYMBOL&&e.ownerGroup&&(e.ownerGroup.symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT||e.ownerGroup.symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT))for(let t in e.ownerGroup.subObjects)e.ownerGroup.subObjects[t].redraw();e._updateSymbolTexts(),this._resetEditMarkersValue(e)}else if(-2===t.target.options.nHandle){var r=t.target.getLatLng();if(r.isScalePoint=!0,e._modifyPoint(parseInt(t.target.options.tag),r),e.symbolType===SuperMap.Plot.SymbolType.FLAGGROUP)for(var p=0,u=e.components.length;p<u;p++)e.components[p]._updateSymbolTexts();else e._updateSymbolTexts();this._resetEditMarkersValue(e)}if(this.isAddTransInfo){let o=new SuperMap.Plot.TransactionInfo;o.layerId=e.layer._leaflet_id,o.uuid=e.uuid,o.functionName="setLatLngs",-2===t.target.options.nHandle&&(o.functionName="setScaleValues",e.symbolType!==SuperMap.Plot.SymbolType.ARCREGION&&e.symbolType!==SuperMap.Plot.SymbolType.FLAGGROUP||(o.functionName="modifyPoint",o.undoParams=[parseInt(t.target.options.tag)],o.redoParams=[parseInt(t.target.options.tag)])),this.transaction.transInfos.push(o)}this.isAddTransInfo=!1},_pasteToPosition:function(){if(this.pasteGeoAry&&0!==this.pasteGeoAry.length){var t=new SuperMap.Plot.Transaction;t.transType=SuperMap.Plot.TransactionType.CREATE,L.supermap.plotting.getControl().getTransManager().add(t);var e=function(t,e,o,i){var l=new SuperMap.Plot.TransactionInfo;l.layerId=t,l.uuid=e,l.feature=o,i.transInfos.push(l)},o=null,i=null,l=this.pasteGeoAry.slice();if(0!==arguments.length){var s=new L.LatLngBounds;for(let t=0,e=l.length;t<e;t++){var n=l[t];if(n instanceof ct)for(let t=0;t<n.subObjects.length;t++){var a=n.subObjects[t];s.extend(a._bounds)}else n instanceof gt&&s.extend(n._bounds)}o=s.getCenter()}0!==this.getSelectedFeatures().length&&this.unselectFeatures();var r=this._map.getPlottingLayers();for(let s in l)if(l[s]instanceof gt&&(i=l[s].clone()),0!==arguments.length&&null!==o){for(let t=0,e=r.length;t<e;t++)if(r[t].getEditable()&&!r[t].getLocked()){r[t].addFeatures(i);break}if(i instanceof Vt||i.move(arguments[0].lat-o.lat,arguments[0].lng-o.lng),this.selectFeatures(i),l[s]&&l[s].geoSymbolTexts)for(let o=0;o<l[s].geoSymbolTexts.length;o++){let n=l[s].geoSymbolTexts[o].getSymbolData();n.associatedUuid=i.uuid;for(let o in l)if(l[o].symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||l[o].symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1){let i=l[s].layer.createSymbol(n.libID,n.code,null,{symbolData:n});this.selectFeatures(i),l.splice(o,1),e(i.layer._leaflet_id,i.uuid,i,t);break}}if(l[s]&&l[s].deployments)for(let o=0;o<l[s].deployments.length;o++){let n=l[s].deployments[o].getSymbolData();n.associatedUuid=i.uuid;for(let o in l)if(l[o].symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT||l[o].symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT){let i=l[s].layer.createSymbol(n.libID,n.code,null,{symbolData:n});this.selectFeatures(i),l.splice(o,1),e(i.layer._leaflet_id,i.uuid,i,t);break}}if(l[s]&&l[s].timeWindows)for(let o=0;o<l[s].timeWindows.length;o++){let n=l[s].timeWindows[o].getSymbolData();n.associatedUuid=i.uuid;for(let o in l)if(l[o].symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS){let i=l[s].layer.createSymbol(n.libID,n.code,null,{symbolData:n});this.selectFeatures(i),l.splice(o,1),e(i.layer._leaflet_id,i.uuid,i,t);break}}}else for(let o=0,n=r.length;o<n;o++)if(r[o].getEditable()&&!r[o].getLocked()){if(r[o].addFeatures(i),1012!==i.code&&this.selectFeatures(i),e(i.layer._leaflet_id,i.uuid,i,t),l[s]&&l[s].geoSymbolTexts)for(let o=0;o<l[s].geoSymbolTexts.length;o++){let n=l[s].geoSymbolTexts[o].getSymbolData();n.associatedUuid=i.uuid;for(let o in l)if(l[o].symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||l[o].symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1){var p=l[s].layer.createSymbol(n.libID,n.code,null,{symbolData:n});this.selectFeatures(p),l.splice(o,1),e(p.layer._leaflet_id,p.uuid,p,t);break}}if(l[s]&&l[s].deployments)for(let o=0;o<l[s].deployments.length;o++){let n=l[s].deployments[o].getSymbolData();n.associatedUuid=i.uuid;for(let o in l)if(l[o].symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT||l[o].symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT){let i=l[s].layer.createSymbol(n.libID,n.code,null,{symbolData:n});this.selectFeatures(i),l.splice(o,1),e(i.layer._leaflet_id,i.uuid,i,t);break}}if(l[s]&&l[s].timeWindows)for(let o=0;o<l[s].timeWindows.length;o++){if(!l[s].timeWindows[o].hasOwnProperty("symbolType"))return;let n=l[s].timeWindows[o].getSymbolData();n.associatedUuid=i.uuid;for(let o in l)if(l[o].symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS){let i=l[s].layer.createSymbol(n.libID,n.code,null,{symbolData:n});this.selectFeatures(i),l.splice(o,1),e(i.layer._leaflet_id,i.uuid,i,t);break}}break}}},pasteToPositionAndLayer:function(t,e){var o=!0;e&&e instanceof ae&&(o=!1);var i=!1;null!==t&&void 0!==t||(i=!0);var l=null,s=this.pasteGeoAry.slice();if(!i){for(var n=new L.LatLngBounds,a=0;a<s.length;a++){var r=s[a];r instanceof Vt&&n.extend(r._bounds),n.extend(r._bounds)}l=n.getCenter()}for(let t=0;t<this.selectedFeatures.length;t++){let e=this.selectedFeatures[t];this.unselectFeatures(e)}this.selectedFeatures=[];for(let n=0;n<s.length;n++){let a=s[n];if(!0!==a.layer.isLocked&&!1!==a.layer.isEditable){var p=null;if(p=a instanceof Vt?a.route.clone():a.clone(),o?a.layer.addFeatures(p):e.addFeatures(p),i||null===l||p instanceof Vt||p.move(t.lat-l.lat,t.lng-l.lng),void 0!==this.pasteGeoSel&&this.pasteGeoSel.length>n&&!0===this.pasteGeoSel[n])if(a instanceof Vt){var u=p._getNodeFeature(p._getNodeByUuid(a.routeNode.id));this.selectedFeatures(u)}else this.selectFeatures(p);if(s[n]&&s[n].geoSymbolTexts)for(let t=0;t<s[n].geoSymbolTexts.length;t++){let e=s[n].geoSymbolTexts[t].getSymbolData();e.associatedUuid=p.uuid;for(let t in s)if(s[t].symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||s[t].symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1){let o=s[n].layer.createSymbol(e.libID,e.code,null,{symbolData:e});this.selectFeatures(o),s.splice(t,1);break}}if(s[n]&&s[n].deployments)for(let t=0;t<s[n].deployments.length;t++){let e=s[n].deployments[t].getSymbolData();e.associatedUuid=p.uuid;for(let t in s)if(s[t].symbolType===SuperMap.Plot.SymbolType.NAVYDEPLOYMENT||s[t].symbolType===SuperMap.Plot.SymbolType.AIRDEPLOYMENT){let o=s[n].layer.createSymbol(e.libID,e.code,null,{symbolData:e});this.selectFeatures(o),s.splice(t,1);break}}if(s[n]&&s[n].timeWindows)for(let t=0;t<s[n].timeWindows.length;t++){let e=s[n].timeWindows[t].getSymbolData();e.associatedUuid=p.uuid;for(let t in s)if(s[t].symbolType===SuperMap.Plot.SymbolType.SATELLITETIMEWINDOWS){let o=s[n].layer.createSymbol(e.libID,e.code,null,{symbolData:e});this.selectFeatures(o),s.splice(t,1);break}}}}},equalLarge:function(t){for(var e=[],o=0;o<this.getSelectedFeatures().length;o++)this.getSelectedFeatures()[o].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&e.push(this.getSelectedFeatures()[o]);if(!(e.length<2)){var i=new SuperMap.Plot.Transaction;L.supermap.plotting.getControl().getTransManager().add(i);var l=function(t,e,o,i,l){var s=new SuperMap.Plot.TransactionInfo;s.layerId=t,s.uuid=e,s.functionName="setSymbolSize",s.undoParams=o,s.redoParams=i,l.transInfos.push(s)};if(t===SuperMap.Plot.EqualLargeType.WIDTH){var s=e[e.length-1].symbolSize.w;for(let t=0;t<e.length-1;t++){var n=e[t].symbolSize.w;e[t].setSymbolSize(s,e[t].symbolSize.h),l(e[t].layer._leaflet_id,e[t].uuid,[n,e[t].symbolSize.h],[s,e[t].symbolSize.h],i)}}else if(t===SuperMap.Plot.EqualLargeType.HEIGHT){var a=e[e.length-1].symbolSize.h;for(let t=0;t<e.length-1;t++){var r=e[t].symbolSize.h;e[t].setSymbolSize(e[t].symbolSize.w,a),l(e[t].layer._leaflet_id,e[t].uuid,[e[t].symbolSize.w,r],[e[t].symbolSize.w,a],i)}}else if(t===SuperMap.Plot.EqualLargeType.SAME){var p=e[e.length-1].symbolSize.w,u=e[e.length-1].symbolSize.h;for(let t=0;t<e.length-1;t++){var h=e[t].symbolSize.w,g=e[t].symbolSize.h;e[t].setSymbolSize(p,u),l(e[t].layer._leaflet_id,e[t].uuid,[h,g],[p,u],i)}}}},uniformDistribution:function(t){if(!(this.getSelectedFeatures().length<3)){var e=new SuperMap.Plot.Transaction;L.supermap.plotting.getControl().getTransManager().add(e);var o=function(t,e,o,i,l){var s=new SuperMap.Plot.TransactionInfo;s.layerId=t,s.uuid=e,s.functionName="move",s.undoParams=o,s.redoParams=i,l.transInfos.push(s)},i=[];for(let t=0;t<this.getSelectedFeatures().length;t++){var l=this.getSelectedFeatures()[t].getBounds();i.push(new SuperMap.Geometry.Point(l.getCenter().lng,l.getCenter().lat))}var s=this.getSelectedFeatures().slice();if(t===SuperMap.Plot.UniformDistributionType.LEVEL){for(let t=0;t<i.length;t++)for(let e=0;e<i.length-1-t;e++)if(i[e].x>i[e+1].x){let t=i[e+1];i[e+1]=i[e],i[e]=t;let o=s[e+1];s[e+1]=s[e],s[e]=o}for(var n=Math.abs(i[i.length-1].x-i[0].x)/(i.length-1),a=1;a<i.length-1;a++){var r=i[i.length-1].x-n*a-i[a].x;s[a].move(0,r),this._resetEditMarkersValue(s[a]),o(s[a].layer._leaflet_id,s[a].uuid,[0,-r],[0,r],e)}}else if(t===SuperMap.Plot.UniformDistributionType.VERTICAL){for(var p=0;p<i.length;p++)for(var u=0;u<i.length-1-p;u++)if(i[u].y>i[u+1].y){var h=i[u+1];i[u+1]=i[u],i[u]=h;var g=s[u+1];s[u+1]=s[u],s[u]=g}var c=Math.abs(i[i.length-1].y-i[0].y)/(i.length-1);for(let t=1;t<i.length-1;t++){var y=i[i.length-1].y-c*t-i[t].y;s[t].move(y,0),this._resetEditMarkersValue(s[t]),o(s[t].layer._leaflet_id,s[t].uuid,[-y,0],[y,0],e)}}}}});L.Map.include({getPlotEditControl:function(){return this._plotEditControl?this._plotEditControl:null}});var _e=function(t){return new ve(t)};L.supermap.plotting.editControl=_e;var xe=L.Evented.extend({serverUrl:null,goAnimations:null,map:null,goAnimationLayer:null,options:{serviceParams:{proxy:null,withCredentials:!1,crossOrigin:null,headers:null,serverType:null}},initialize:function(t,e,o){null===this.goAnimations&&(this.goAnimations=[]),t&&null!==t&&null===this.map&&this.setMap(t),e&&null===this.serverUrl&&(xe.prototype.serverUrl=e),o&&SuperMap.Util.extend(this.options,o)},destroy:function(){xe.prototype.goAnimations=null,xe.prototype.map.removeLayer(this.goAnimationLayer),this.goAnimationLayer.destroy(),xe.prototype.goAnimationLayer=null,xe.prototype.map=null,xe.prototype.serverUrl=null},setMap:function(t){if(null===t)return!1;xe.prototype.map=t;null===this.goAnimationLayer&&(xe.prototype.goAnimationLayer=L.supermap.plotting.animationLayer("animation",{displayInLayerSwitcher:!1})),this.map.addLayer(this.goAnimationLayer)},createGOAnimation:function(t,e,o){var i,l=this.createGOAnimationByType(t,e);if(null===l)return null;if(o._eventParents)for(var s in o._eventParents)i=o._eventParents[s];return o instanceof L.supermap.plotting.Route||i instanceof L.supermap.plotting.Route?null:l.setGOFeature(o)?(this.goAnimations.push(l),l):null},findGOAnimationByName:function(t){if(null===this.goAnimations||null===t||""===t)return null;for(var e=null,o=0;o<this.goAnimations.length;o++)if(this.goAnimations[o].name===t){e=this.goAnimations[o];break}return e},findGOAnimationsByFeature:function(t){var e=[];if(null===this.goAnimations||"undefined"===t||null===t)return e;for(var o=0;o<this.goAnimations.length;o++)this.goAnimations[o].getGOFeature()===t&&e.push(this.goAnimations[o]);return e},findGOAnimationsByUuid:function(t){if(null===this.goAnimations||"undefined"===t||null===t)return[];var e=this.map.getFeatureByUuid(t);return this.findGOAnimationsByFeature(e)},removeGOAnimationByName:function(t){if(null===this.goAnimations||null===t||""===t)return!1;var e=this.findGOAnimationByName(t);return this.removeGOAnimation(e)},removeGOAnimation:function(t){if(null===this.goAnimations||null===t)return!1;for(var e=0;e<this.goAnimations.length;e++)if(this.goAnimations[e]===t){t.reset(),this.goAnimations.splice(e,1),t.destroy();break}return!0},removeAllGOAnimation:function(){if(null!==this.goAnimations){for(var t=0;t<this.goAnimations.length;t++)this.removeGOAnimation(this.goAnimations[t]);this.goAnimations=[]}},execute:function(){if(0===this.goAnimations.length)return!1;for(let t=0;t<this.goAnimations.length;t++)this.goAnimations[t].execute();if(this.hasGrowAnimation())for(let t=0;t<this.goAnimations.length;t++)this.redrawFeature(this.goAnimations[t].animationGOFeature);return 0!==this.goAnimations.length||void 0},hasGrowAnimation:function(){if(null===this.goAnimations)return!1;for(var t=0;t<this.goAnimations.length;t++)if(!0===this.goAnimations[t].animationGOFeature.grow&&this.goAnimations[t].canExecute())return!0},redrawFeature:function(t){if(!(t.grow&&t instanceof Lt))return!0;var e=new SuperMap.GetSymbolInfoParameters;e.libID=t.libID,e.code=t.code,e.surroundLineType=t.surroundLineType,e.inputPoints=L.Util.latLngsToSuperMapPoints(t.getLatLngs()),e.subSymbols=t.subSymbols,e.scaleValues=t.scaleValues,L.supermap.symbolInfoService(t.serverUrl,this.options.serviceParams).getSymbolInfo(e,function(e){t.symbolData.innerCells=e.result.innerCells,t.redraw()},this)},play:function(){if(0!==this.goAnimations.length)for(var t=0;t<this.goAnimations.length;t++)this.goAnimations[t].play()},stop:function(){if(0!==this.goAnimations.length)for(var t=0;t<this.goAnimations.length;t++)this.goAnimations[t].stop()},pause:function(){if(0!==this.goAnimations.length)for(var t=0;t<this.goAnimations.length;t++)this.goAnimations[t].pause()},reset:function(){if(0!==this.goAnimations.length)for(var t=0;t<this.goAnimations.length;t++)this.goAnimations[t].reset()},createGOAnimationByType:function(t,e){if(null===e||""===e||null===this.goAnimationLayer)return null;if(null!==this.findGOAnimationByName(e))return null;var o=null;switch(t){case SuperMap.Plot.GOAnimationType.ANIMATION_WAY:o=new Le;break;case SuperMap.Plot.GOAnimationType.ANIMATION_BLINK:o=new Pe;break;case SuperMap.Plot.GOAnimationType.ANIMATION_ATTRIBUTE:o=new ye;break;case SuperMap.Plot.GOAnimationType.ANIMATION_SHOW:o=new me;break;case SuperMap.Plot.GOAnimationType.ANIMATION_ROTATE:o=new Se;break;case SuperMap.Plot.GOAnimationType.ANIMATION_SCALE:o=new fe;break;case SuperMap.Plot.GOAnimationType.ANIMATION_GROW:o=new de;break;default:return null}return null!==o&&(o.name=e),o},getJSONData:function(){for(var t={animations:[]},e=0;e<this.goAnimations.length;e++)t.animations.push(this.goAnimations[e].getJSONData());return t},fromJSONData:function(t){for(var e=0;e<t.animations.length;e++){var o=t.animations[e],i=o.goFeatureUuid,l=this.map.getFeatureByUuid(i),s=o.name,n=o.type;if(l&&s&&-1!==n){var a=this.createGOAnimation(n,s,l);null!==a&&a.fromJSONData(o)}}},saveEvoFile:function(){},openEvoFileOnServer:function(){}}),Oe=function(t,e,o){return new xe(t,e,o)};L.supermap.plotting.goAnimationManager=Oe;var we=L.Evented.extend({map:null,serverUrl:null,smlInfo:null,smlFileName:null,options:{serviceParams:{proxy:null,withCredentials:!1,crossOrigin:null,headers:null,serverType:null}},initialize:function(t,e,o){o&&SuperMap.Util.extend(this.options,o),t&&null!==t&&null===this.map&&(we.prototype.map=t),e&&null===this.serverUrl&&(we.prototype.serverUrl=e),null===this.smlInfo&&(we.prototype.smlInfo=new SuperMap.Plot.SMLInfoStruct),null===this.smlFileName&&(we.prototype.smlFileName="situationMap")},destroy:function(){we.prototype.map=null,we.prototype.smlInfo.destroy(),we.prototype.smlInfo=null,we.prototype.smlFileName=null,we.prototype.serverUrl=null},getSitDataLayers:function(){return this.map.getPlottingLayers()},getSmlData:function(){var t=this.map.getPlottingLayers(),e=new SuperMap.Plot.SitDataStruct;e.smlInfo=this.smlInfo;var o=new SuperMap.Plot.MapInfoStruct;o.zoom=this.map.getZoom(),o.centerX=this.map.getCenter().lng,o.centerY=this.map.getCenter().lat,e.mapInfo=o,e.layerDatas=[];for(var i=0;i<t.length;i++){var l=t[i].features,s=new SuperMap.Plot.LayerDataStruct;s.layerName=t[i].name,s.spatialAnalystUrl=t[i].spatialAnalystUrl,this.map instanceof L.Map?this.map.getRenderer(t[i])instanceof L.Canvas&&(s.useCanvas=!0):(s.useCanvas=t[i].useCanvas,s.useCanvas2=t[i].useCanvas2),s.isEditable=t[i].getEditable(),s.isLocked=t[i].getLocked(),s.visibility=t[i].getVisibility(),s.features=l,e.layerDatas.push(s)}return SuperMap.Plot.PlottingUtil.toJSON(e)},openSmlData:function(t){if(this.smlInfo.fromJSON(t.smlInfo),t.mapInfo){var e=new SuperMap.Plot.MapInfoStruct;e.fromJSON(t.mapInfo),null!==e.zoom&&null!==e.centerX&&null!==e.centerY&&this.map.setView(L.latLng(e.centerY,e.centerX),e.zoom,{reset:!0})}var o,i=t.layerDatas;this.map.clearPlottingLayers();for(var l=0,s=i.length;l<s;l++)(o=i[l].useCanvas||i[l].useCanvas2?L.supermap.plotting.plottingLayer(i[l].layerName,this.serverUrl,{renderer:L.canvas(),serviceParams:this.options.serviceParams}):L.supermap.plotting.plottingLayer(i[l].layerName,this.serverUrl,{renderer:L.svg(),serviceParams:this.options.serviceParams})).spatialAnalystUrl=i[l].spatialAnalystUrl,this.map.addLayer(o),this._load(i[l],o),void 0!==i[l].isEditable&&null!==i[l].isEditable&&o.setEditable(i[l].isEditable),void 0!==i[l].isLocked&&null!==i[l].isLocked&&o.setLocked(i[l].isLocked),void 0!==i[l].visibility&&null!==i[l].visibility&&o.setVisibility(i[l].visibility)},addSmlData:function(t,e){this.smlInfo.fromJSON(t.smlInfo);for(var o=t.layerDatas,i=null,l=0;l<o.length;l++)if(null!==o[l].layerName){var s=this.map.getLayersByName(o[l].layerName);0!==s.length?i=s[0]:e&&((i=L.supermap.plotting.plottingLayer(o[l].layerName,this.serverUrl,{serviceParams:this.options.serviceParams})).spatialAnalystUrl=o[l].spatialAnalystUrl,this.map.addLayer(i)),null!==i&&this._load(o[l],i)}},addSmlDataToLayer:function(t,e){this.smlInfo.fromJSON(t.smlInfo);var o=t.layerDatas,i=null,l=this.map.getLayersByName(e);0!==l.length?i=l[0]:(i=L.supermap.plotting.plottingLayer(e,this.serverUrl,{serviceParams:this.options.serviceParams}),this.map.addLayer(i));for(var s=0;s<o.length;s++)this._load(o[s],i)},openSmlFile:function(t,e){var o=this.serverUrl+"smlInfos/",i=document.getElementById(t).value.split("\\"),l=i[i.length-1];o+=l;var s=this;""!==l&&$.ajaxFileUpload({url:o,secureuri:!1,fileElementId:t,dataType:"json",timeout:36e5,success:function(){s.openSmlFileOnServer(l,e)},error:function(){e({success:!1,message:"打开本地态势图文件失败"})}})},addSmlFile:function(t,e,o){var i=this.serverUrl+"smlInfos/",l=document.getElementById(t).value.split("\\"),s=l[l.length-1];i+=s;var n=this;""!==s&&$.ajaxFileUpload({url:i,secureuri:!1,fileElementId:t,dataType:"json",timeout:36e5,success:function(){n.addSmlFileOnServer(s,e,o)},error:function(){o({success:!1,message:"叠加本地态势图文件失败"})}})},uploadSmlFile:function(t,e){var o=this.serverUrl+"smlInfos/",i=document.getElementById(t).value.split("\\"),l=i[i.length-1];o+=l,""!==l&&$.ajaxFileUpload({url:o,secureuri:!1,fileElementId:t,dataType:"json",timeout:36e5,success:function(){e({success:!0,message:"上传态势图文件成功"})},error:function(){e({success:!1,message:"上传态势图文件失败"})}})},addSmlFileToLayer:function(t,e,o){var i=this.serverUrl+"smlInfos/",l=document.getElementById(t).value.split("\\"),s=l[l.length-1];i+=s;var n=this;""!==s&&$.ajaxFileUpload({url:i,secureuri:!1,fileElementId:t,dataType:"json",timeout:36e5,success:function(){n.addSmlFileToLayerOnServer(s,e,o)},error:function(){o({success:!1,message:"打开本地文件失败"})}})},addSmlFileOnServer:function(t,e,o){var i=new SuperMap.EditSmlFileParameters;i.method="GET",i.smlFileName=t,L.supermap.smlFileService(this.serverUrl,this.options.serviceParams).editSMLFile(i,function(t){if(t.result.succeed){var i=t.result;this.smlInfo.fromJSON(i.smlInfo);for(var l=i.layerDatas,s=null,n=0;n<l.length;n++){var a=[];l[n].layerName&&(a=this.map.getLayersByName(l[n].layerName)),0!==a.length?s=a[0]:e&&((s=L.supermap.plotting.plottingLayer(l[n].layerName,this.serverUrl,{serviceParams:this.options.serviceParams})).spatialAnalystUrl=l[n].spatialAnalystUrl,this.map.addLayer(s)),null!==s&&this._load(l[n],s)}null!==s&&"function"==typeof o?o({success:!0,smlFileName:this.smlFileName,sitDataLayers:this.map.getPlottingLayers()}):"function"==typeof o&&o({success:!1,message:"态势图文件不存在与当前态势图同名的图层"})}else"function"==typeof o&&o({success:!1,message:"从服务器上获取态势图文件失败"})},this)},addSmlFileToLayerOnServer:function(t,e,o){var i=new SuperMap.EditSmlFileParameters;i.method="GET",i.smlFileName=t,L.supermap.smlFileService(this.serverUrl,this.options.serviceParams).editSMLFile(i,function(t){if(t.result.succeed){var i=t.result;this.smlInfo.fromJSON(i.smlInfo);var l=i.layerDatas,s=null,n=this.map.getLayersByName(e);0!==n.length?s=n[0]:(s=L.supermap.plotting.plottingLayer(e,this.serverUrl,{serviceParams:this.options.serviceParams}),this.map.addLayer(s));for(var a=0;a<l.length;a++)this._load(l[a],s);"function"==typeof o&&o({success:!0,smlFileName:this.smlFileName,sitDataLayers:this.map.getPlottingLayers()})}else"function"==typeof o&&o({success:!1,message:"从服务器上获取态势图失败"})},this)},downloadSmlFileURL:function(t){return`smlFileDownload/${t}.sml`},newSmlFile:function(){this.smlFileName="",this.smlInfo.destroy(),this.map.clearPlottingLayers()},saveSmlFile:function(t){var e=this.map.getPlottingLayers();this._save(this.smlFileName,e,!0,t)},saveAsSmlFile:function(t,e){var o=this.map.getPlottingLayers();this._save(t,o,!1,e)},getSMLInfo:function(t,e){var o=new SuperMap.EditSmlFileParameters;o.method="GET",o.smlFileName=t,L.supermap.smlFileService(this.serverUrl,this.options.serviceParams).editSMLFile(o,function(t){t.result.succeed&&"function"==typeof e?e({success:!0,smlInfo:t.result.smlInfo}):"function"==typeof e&&e({success:!1})},this)},getSMLInfos:function(t,e,o){var i=t*e,l=e,s=new SuperMap.GetSMLInfosParameters;s.start=i,s.count=l,L.supermap.smlFileService(this.serverUrl,this.options.serviceParams).getSMLInfos(s,function(t){t.result.succeed&&"function"==typeof o?o({success:!0,smlInfoList:t.result}):"function"==typeof o&&o({success:!1})},this)},_getCompletedInit:function(t,e){if(this.smlFileName=e,this.smlInfo.fromJSON(t.smlInfo),t.mapInfo){var o=new SuperMap.Plot.MapInfoStruct;o.fromJSON(t.mapInfo),null!==o.zoom&&null!==o.centerX&&null!==o.centerY&&this.map.setView(L.latLng(o.centerY,o.centerX),o.zoom,{reset:!0})}var i,l=t.layerDatas;this.map.clearPlottingLayers();for(var s=0,n=l.length;s<n;s++)(i=l[s].useCanvas||l[s].useCanvas2?L.supermap.plotting.plottingLayer(l[s].layerName,this.serverUrl,{renderer:L.canvas(),serviceParams:this.options.serviceParams}):L.supermap.plotting.plottingLayer(l[s].layerName,this.serverUrl,{renderer:L.svg(),serviceParams:this.options.serviceParams})).spatialAnalystUrl=l[s].spatialAnalystUrl,this.map.addLayer(i),this._load(l[s],i),void 0!==l[s].isEditable&&null!==l[s].isEditable&&i.setEditable(l[s].isEditable),void 0!==l[s].isLocked&&null!==l[s].isLocked&&i.setLocked(l[s].isLocked),void 0!==l[s].visibility&&null!==l[s].visibility&&i.setVisibility(l[s].visibility)},openSmlFileOnServer:function(t,e){var o=new SuperMap.EditSmlFileParameters;o.method="GET",o.smlFileName=t,L.supermap.smlFileService(this.serverUrl,this.options.serviceParams).editSMLFile(o,function(o){o.result.succeed?(this._getCompletedInit(o.result,t),"function"==typeof e&&e({success:!0,smlFileName:this.smlFileName,sitDataLayers:this.map.getPlottingLayers()})):"function"==typeof e&&e({success:!1,message:"打开已发布的态势图文件失败"})},this)},deleteSmlFileOnServer:function(t,e){var o=new SuperMap.EditSmlFileParameters;o.method="DELETE",o.smlFileName=t,L.supermap.smlFileService(this.serverUrl,this.options.serviceParams).editSMLFile(o,function(t){t.result.succeed&&"function"==typeof e?e({success:!0}):"function"==typeof e&&e({success:!1})},this)},_save:function(t,e,o,i){var l=new SuperMap.Plot.SitDataStruct;l.smlInfo=this.smlInfo;var s=new SuperMap.Plot.MapInfoStruct;s.zoom=this.map.getZoom(),s.centerX=this.map.getCenter().lng,s.centerY=this.map.getCenter().lat,l.mapInfo=s,l.layerDatas=[];for(var n=0;n<e.length;n++){var a=e[n].features,r=new SuperMap.Plot.LayerDataStruct;r.layerName=e[n].name,r.spatialAnalystUrl=e[n].spatialAnalystUrl,this.map instanceof L.Map?this.map.getRenderer(e[n])instanceof L.Canvas&&(r.useCanvas=!0):(r.useCanvas=e[n].useCanvas,r.useCanvas2=e[n].useCanvas2),r.isEditable=e[n].getEditable(),r.isLocked=e[n].getLocked(),r.visibility=e[n].getVisibility(),r.features=a,l.layerDatas.push(r)}var p=new SuperMap.EditSmlFileParameters;p.method="POST",p.sitData=l,p.smlFileName=t,p.isCover=o,L.supermap.smlFileService(this.serverUrl,this.options.serviceParams).editSMLFile(p,function(t){t.result.succeed&&"function"==typeof i?i({success:!0}):"function"==typeof i&&i({success:!1})},this)},_load:function(t,e){e.spatialAnalystUrl=t.spatialAnalystUrl;for(var o=0,i=t.features.length;o<i;o++){var l=t.features[o];if(null!==l){var s;l.resolution?s=this.map.getZoom():l.fromZoom&&(s=l.fromZoom),!1===l.scaleByMap&&(s=this.map.getZoom()),l.hasOwnProperty("isEdit")||(l.isEdit=!0);let t=l.uuid;e.createSymbol(l.libID,l.code,void 0,t,{},{serverUrl:this.serverUrl,symbolData:l,fromZoom:s,map:this.map})}}}}),Ie=function(t,e,o){return new we(t,e,o)};L.supermap.plotting.sitDataManager=Ie;var Ce=L.Evented.extend({url:null,libID:null,symbolLibData:null,cachedSymbolList:null,needCacheList:null,symbolNames:null,options:{serviceParams:{proxy:null,withCredentials:!1,crossOrigin:null,headers:null,serverType:null}},initialize:function(t){this.cachedSymbolList={},this.needCacheList=[],t&&SuperMap.Util.extend(this.options,t),t&&t.url&&t.libID?(this.url=t.url,this.libID=t.libID):t&&t.symbolLibData&&(this.symbolLibData=t.symbolLibData,this.libID=this.symbolLibData.libID,this.initNeedCacheList())},destroy:function(){this.url=null,this.libID=null,this.symbolLibData=null},initializeAsync:function(){var t=new SuperMap.GetLibInfoParameter;t.libID=this.libID,L.supermap.symbolLibService(this.url,this.options.serviceParams).getLibInfo(t,function(t){t.result.succeed?(this.symbolLibData=t.result,this.libID=this.symbolLibData.libID,this.initNeedCacheList(),this.fire(SuperMap.Plot.Event.initializecompleted,{success:!0})):(this.libID=-1,this.fire(SuperMap.Plot.Event.initializecompleted,{success:!1}))},this)},getSymbolLibName:function(){return null===this.symbolLibData?null:this.symbolLibData.symbolLibName},getSymbolName:function(t){return null===this.symbolLibData?"":(null===this.symbolNames&&(this.symbolNames={},this.getSymbolNameFromList(this.symbolLibData.rootSymbolLibNode)),this.symbolNames[t])},getSymbolNameFromList:function(t){for(var e=0;e<t.childNodeCount;e++)"SYMBOL_GROUP"===t.childNodes[e].symbolNodeType?this.getSymbolNameFromList(t.childNodes[e]):"SYMBOL_NODE"===t.childNodes[e].symbolNodeType&&(this.symbolNames[t.childNodes[e].symbolCode]=t.childNodes[e].symbolName);return""},initNeedCacheList:function(){if(null===this.symbolLibData)return!1;this.initNeedCacheListForNode(this.symbolLibData.rootSymbolLibNode)},initNeedCacheListForNode:function(t){for(var e=0;e<t.childNodeCount;e++)"SYMBOL_GROUP"===t.childNodes[e].symbolNodeType?this.initNeedCacheListForNode(t.childNodes[e]):"SYMBOL_NODE"===t.childNodes[e].symbolNodeType&&"SYMBOL_DOT"===t.childNodes[e].symbolType&&this.needCacheList.push(t.childNodes[e].symbolCode)},cachedSymbols:function(){if(0!==this.needCacheList.length){for(var t=this.needCacheList.slice(),e=0,o=t.length;e<o;e++){var i=Math.floor(1e3*Math.random()),l=new SuperMap.GetSymbolInfoParameters;l.libID=this.libID,l.code=t[e],l.dynamicToken=i,L.supermap.symbolInfoService(this.url,this.options.serviceParams).getSymbolInfo(l,function(t){if(t.result.succeed){if(t.result.dynamicToken&&t.result.dynamicToken===SuperMap.MD5.md5(i.toString()))delete t.result.dynamicToken,this.cacheSymbolData(t.result);else{var e=SuperMap.Util.indexOf(this.needCacheList,t.result.code);-1!==e&&this.needCacheList.splice(e,1)}0===this.needCacheList.length&&this.fire(SuperMap.Plot.Event.cachecompleted,{success:!0})}},this)}this.cachedSymbolOK=!0}else this.fire(SuperMap.Plot.Event.cachecompleted,{success:!0})},getSymbolLibID:function(){return this.libID},getSymbolData:function(t){var e=null;return this.cachedSymbolList.hasOwnProperty(t)&&(e=SuperMap.Plot.PlottingUtil.cloneObject(this.cachedSymbolList[t])),e},cacheSymbolData:function(t){var e=SuperMap.Util.indexOf(this.needCacheList,t.code);-1!==e&&(this.cachedSymbolList[t.code]=SuperMap.Plot.PlottingUtil.cloneObject(t),this.needCacheList.splice(e,1))},getSymbolCount:function(){return null===this.symbolLibData?null:this.symbolLibData.symbolCount},querySymbolbyKey:function(t){return this.querySymbol(t,this.getRootSymbolInfo(),this.getRootSymbolIconUrl())},getClassFication:function(){return null===this.symbolLibData?null:this.symbolLibData.classFication},getCreateTime:function(){return null===this.symbolLibData?null:this.symbolLibData.createTime},getCreator:function(){return null===this.symbolLibData?null:this.symbolLibData.creator},getModifyTime:function(){return null===this.symbolLibData?null:this.symbolLibData.modifyTime},getRootSymbolIconUrl:function(){return null===this.symbolLibData?null:this.symbolLibData.rootSymbolIconUrl},getVersion:function(){return null===this.symbolLibData?null:this.symbolLibData.version},getRootSymbolInfo:function(){return null===this.symbolLibData?null:this.symbolLibData.rootSymbolLibNode},querySymbol:function(t,e,o){var i=[];if("SYMBOL_GROUP"===e.symbolNodeType)for(var l=0;l<e.childNodes.length;l++)for(var s=o+"/"+e.symbolName,n=this.querySymbol(t,e.childNodes[l],s),a=0;a<n.length;a++)i.push(n[a]);else t===e.symbolCode.toString()?(e.icon=o+"/"+e.symbolCode+".png",i.push(e)):-1!==e.symbolName.indexOf(t)&&(e.icon=o+"/"+e.symbolCode+".png",i.push(e));return i}}),Ee=function(t){return new Ce(t)};L.supermap.plotting.symbolLib=Ee;var De=L.Evented.extend({url:null,libIDs:null,symbolLibs:null,symbolLibJsons:null,isInializeOK:!1,options:{serviceParams:{proxy:null,withCredentials:!1,crossOrigin:null,headers:null,serverType:null}},initialize:function(t,e){De.prototype.url=t,null===this.libIDs&&(De.prototype.libIDs=[]),null===this.symbolLibs&&(De.prototype.symbolLibs=[]),null===this.symbolLibJsons&&(De.prototype.symbolLibJsons=[]),e&&SuperMap.Util.extend(this.options,e)},destroy:function(){De.prototype.url=null,De.prototype.libIDs=null,De.prototype.symbolLibs=null,De.prototype.symbolLibJsons=null,De.prototype.isInializeOK=!1,De.prototype.isInitialize=!1},initializeAsync:function(){this.isInitializeOK()?this.fire(SuperMap.Plot.Event.initializecompleted,{success:!0,libIDs:this.libIDs}):this.isInitialize||(De.prototype.isInitialize=!0,L.supermap.symbolLibService(this.url,this.options.serviceParams).getLibIDs(function(t){if(void 0!==t.result&&t.result.succeed){if(null!==this.libIDs&&0!==this.libIDs.length)for(var e=0;e<this.libIDs.length;e++){for(var o=!1,i=0;i<t.result.length;i++)if(De.prototype.libIDs[e]===t.result[i]){o=!0;break}!1===o&&De.prototype.libIDs.slice(e,1)}else De.prototype.libIDs=t.result;this.initializeSymbolLib()}else De.prototype.libIDs=[]},this))},initializeSymbolLib:function(){for(var t=this.libIDs.slice(),e=0,o=this.libIDs.length;e<o;e++){var i=new SuperMap.GetLibInfoParameter;i.libID=this.libIDs[e],L.supermap.symbolLibService(this.url,this.options.serviceParams).getLibInfo(i,function(e){if(e.result.succeed){var o=SuperMap.Util.indexOf(t,e.result.libID);-1!==o&&(t.splice(o,1),De.prototype.symbolLibJsons.push(e.result),De.prototype.symbolLibs.push(new Ce({symbolLibData:e.result})),this.symbolLibs[this.symbolLibs.length-1].url=this.url),0===t.length&&(De.prototype.isInializeOK=!0,this.fire(SuperMap.Plot.Event.initializecompleted,{success:!0,libIDs:this.libIDs}))}},this)}},isInitializeOK:function(){return this.isInializeOK},getSymbolLibNumber:function(){return this.libIDs.length},getSymbolLibID:function(t){return t>=this.libIDs.length?-1:this.libIDs[t]},getSymbolLibJSONInfo:function(t){return t>=this.libIDs.length?null:this.symbolLibJsons[t]},getSymbolLibByIndex:function(t){return t>=this.libIDs.length?null:this.symbolLibs[t]},getSymbolLibByLibId:function(t){for(var e=0;e<this.symbolLibs.length;e++)if(t===this.symbolLibs[e].libID)return this.symbolLibs[e];return null},cacheSymbolData:function(t){var e=t.libID,o=this.getSymbolLibByLibId(e);if(null===o)for(var i in o=new Ce({libID:e}),this.symbolLibs.push(o),t)i!==e&&(o.cachedSymbolList[i]=SuperMap.Plot.PlottingUtil.cloneObject(t[i]))},cacheSymbolLib:function(t){var e=this.getSymbolLibByLibId(t);null!==e&&(e.on(SuperMap.Plot.Event.cachecompleted,function t(){this.fire(SuperMap.Plot.Event.cachecompleted,{success:!0}),e.off(SuperMap.Plot.Event.cachecompleted,t)},this),e.cachedSymbols())},getSymbolName:function(t,e){var o=this.getSymbolLibByLibId(t);return null===o?"":o.getSymbolName(e)},findSymbolByName:function(t){for(var e=[],o=0;o<this.libIDs.length;o++)for(var i=this.getSymbolLibByLibId(this.libIDs[o]).querySymbolbyKey(t),l=0;l<i.length;l++)e.push(i[l]);return e},findSymbolByCode:function(t){for(var e=[],o=0;o<this.libIDs.length;o++)for(var i=this.getSymbolLibByLibId(this.libIDs[o]).querySymbolbyKey(t.toString()),l=0;l<i.length;l++)e.push(i[l]);return e}}),Ue=function(t,e){return new De(t,e)};L.supermap.plotting.symbolLibManager=Ue;var Ne=L.Evented.extend({map:null,undoTransactions:null,redoTransactions:null,maxCount:32,initialize:function(t){this.map=t,this.undoTransactions=[],this.redoTransactions=[],null===this.maxCount&&(this.maxCount=32)},destroy(){this.map=null,this.undoTransactions=null,this.redoTransactions=null,this.maxCount=null},setMaxCount:function(t){this.maxCount=t},add:function(t){this.undoTransactions.length>this.maxCount-1&&this.undoTransactions.splice(0,this.undoTransactions.length-this.maxCount+1),this.undoTransactions.push(t)},undo:function(){var t=this.undoTransactions.length;if(t>0){var e=this.undoTransactions[t-1];this.doTransaction(e,!0),this.redoTransactions.push(e),this.undoTransactions.splice(t-1,1)}},redo:function(){var t=this.redoTransactions.length;if(t>0){var e=this.redoTransactions[t-1];this.doTransaction(e),this.undoTransactions.push(e),this.redoTransactions.splice(t-1,1)}},doTransaction:function(t,e){var o=t.transInfos;if(t.transType===SuperMap.Plot.TransactionType.CREATE)for(var i=0,l=o.length;i<l;i++){let t=this.map.getLayer(o[i].layerId);e?t.removeFeatures(o[i].feature):t.addFeatures(o[i].feature)}else if(t.transType===SuperMap.Plot.TransactionType.EDIT)for(var s=0;s<o.length;s++){let t=this.map.getLayer(o[s].layerId);var n=null;if(n=t?t.getFeatureByUuid(o[s].uuid):L.supermap.plotting.getControl(this.map).getFeatureByUuid(o[s].uuid),null!==t||null!==n){var a=o[s].redoParams;if(e&&(a=o[s].undoParams),"setFontAlign"===o[s].functionName)a.length>0&&n.setFontAlign(a[0]);else if("setLatLngs"===o[s].functionName)a.length>0&&n.setLatLngs(a[0]);else if("modifyPoint"===o[s].functionName)a.length>0&&n._modifyPoint(a[0],a[1]);else if("setTextContent"===o[s].functionName)a.length>0&&n.setTextContent(a[0]);else if("setRadiusText"===o[s].functionName)2===a.length&&n.setRadiusText(a[0],a[1]);else if("setType"===o[s].functionName&&n instanceof L.supermap.plotting.RouteNode)a.length>0&&n.setType(a[0]);else if("setStrokeColor"===o[s].functionName&&n.geometry instanceof SuperMap.Geometry.GroupObject)a.length>0&&n.setStyle(a[0]);else if("addAvoidRegion"===o[s].functionName)a.length>0&&(a[0]&&a[0].layer&&a[0].layer.removeFeatures(a[0]),e?n.removeAvoidRegions(a[0]):n.addAvoidRegion(a[0]));else if("removeAvoidRegions"===o[s].functionName){if(a.length>0){for(let t=0;t<a[0].length;t++)a[0][t]&&a[0][t].layer&&a[0][t].layer.removeFeatures(a[0][t]);if(e)for(let t=0;t<a[0].length;t++)n.addAvoidRegion(a[0][t]);else n.removeAvoidRegions(a[0])}}else if("createGroupObject"===o[s].functionName||"createFlags"===o[s].functionName){var r=null;e?t&&o[s].undoParams.length>0&&(r=t.unGroupObject(o[s].undoParams[0])):"createGroupObject"===o[s].functionName?r=t.createGroupObject(o[s].redoParams[0]):"createFlags"===o[s].functionName&&(r=t.createFlags(o[s].redoParams[0])),null!==r&&t._map.getPlotEditControl().selectFeatures(r)}else"updateSymbolText"===o[s].functionName?a.length>0&&n.updateSymbolText(a[0],a[1]):o[s].functionName&&null!==a&&n[o[s].functionName](a[0],a[1]);if(o[s].propertyName){var p=o[s].undoValue;e||(p=o[s].redoValue),n.hasOwnProperty(o[s].propertyName)?n[o[s].propertyName]=p:null!==n&&(n.style[o[s].propertyName]=p)}n&&n.layer&&(n.symbolType!==SuperMap.Plot.SymbolType.DOTSYMBOL||8!==n.textPosition||"fontColor"!==o[s].propertyName&&"fontFamily"!==o[s].propertyName||n._calculateParts(),n.redraw(),n.fire(SuperMap.Plot.Event.reseteditmarkersvalues))}}else if(t.transType===SuperMap.Plot.TransactionType.REMOVE)for(var u=0;u<o.length;u++)e?this.map.getLayer(o[u].layerId).addFeatures(o[u].feature):this.map.getLayer(o[u].layerId).removeFeatures(o[u].feature)}});L.supermap.plotting.transactionManager=function(t){return new Ne(t)};var Re=null,Be=L.Evented.extend({serverUrl:null,map:null,defaultStyle:null,sitDataManager:null,symbolLibManager:null,clientID:null,dpi:96,animationManager:null,transManager:null,imageManager:null,touchMode:null,options:{serviceParams:{proxy:null,withCredentials:!1,crossOrigin:null,headers:null,serverType:null}},initialize:function(t,e,o){null!=t&&(Be.prototype.map=t),null!=e&&(Be.prototype.serverUrl=e),o&&o.serviceParams&&SuperMap.Util.extend(this.options,o),this.defaultStyle=new SuperMap.Plot.DefaultStyle,this.sitDataManager=new we(this.map,this.serverUrl,this.options),this.symbolLibManager=new De(this.serverUrl,this.options),this.animationManager=new xe(this.map,this.serverUrl,this.options),this.transManager=new Ne(this.map),this.imageManager={},this.touchMode=!1},destroy:function(){Be.prototype.serverUrl=null,Be.prototype.map=null,this.defaultStyle&&(this.defaultStyle.destroy(),this.defaultStyle=null),this.sitDataManager&&(this.sitDataManager.destroy(),this.sitDataManager=null),this.symbolLibManager&&(this.symbolLibManager.destroy(),this.symbolLibManager=null),this.clientID=null,null!==this.animationManager&&(this.animationManager.destroy(),this.animationManager=null),Re=null},getDefaultStyle:function(){return this.defaultStyle},getSitDataManager:function(){return this.sitDataManager},getSymbolLibManager:function(){return this.symbolLibManager},getGOAnimationManager:function(){return this.animationManager},getClientID:function(){return this.clientID},setClientID:function(t){this.clientID=t},getTouchMode:function(){return this.touchMode},setTouchMode:function(t){this.touchMode=t},getDPI:function(){return this.dpi},setDPI:function(t){this.dpi=t},getTransManager:function(){return this.transManager},setMap:function(t){Be.prototype.map=t,null===this.sitDataManager.map&&(we.prototype.map=t),null===this.animationManager.map&&this.animationManager.setMap(t)},setPlotUrl:function(t){Be.prototype.serverUrl=t,null===this.sitDataManager.serverUrl&&(we.prototype.serverUrl=t),null===this.symbolLibManager.url&&(De.prototype.url=t),null===this.animationManager.serverUrl&&(xe.prototype.serverUrl=t)},setOptions:function(t){t=t||{},L.setOptions(this,t),L.setOptions(this.sitDataManager,t),L.setOptions(this.symbolLibManager,t),L.setOptions(this.animationManager,t)},getFeatureByUuid:function(t){if(null!==this.map){for(var e=this.map.getPlottingLayers(),o=0,i=e.length;o<i;o++){var l=e[o].getFeatureByUuid(t);if(null!==l)return l}return null}return null}});L.supermap.plotting.getControl=function(t,e,o){return null===Re&&(Re=new Be(t,e,o)),t&&null!==t&&null===Re.map&&Re.setMap(t),e&&null!==e&&null===Re.serverUrl&&Re.setPlotUrl(e),null!=o&&Re.setOptions(o),Re};var Fe=L.Class.extend({map:null,initialize:function(t){t&&null!==t&&(this.map=t)},destroy:function(){this.map=null,delete this.map},captureGObject:function(t){var e=[];if(t){for(var o=this.map.getPlottingLayers(),i=0;i<o.length;i++){var l=o[i];for(var s in l.features){var n=l.features[s];n instanceof gt&&n.symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&(t.lng===n.getLatLngs()[0].lng&&t.lat===n.getLatLngs()[0].lat&&e.push(n))}}return e}return 0},getGObjectsInPolygon:function(t){var e=[];if(t&&0!==t.length){if(L.Util.isArray(t)||(t=[t]),t.length<=2)return e;for(var o=this.map.getPlottingLayers(),i=0;i<o.length;i++){var l=o[i];for(var s in l.features){var n=l.features[s];if(n instanceof gt){var a=n.getBounds().getCenter();if(null===a)return;this._ptIsInPolygon(t,a)&&e.push(n)}}}return e}},_ptIsInPolygon:function(t,e){if(!t||null===t||0===t.length)return!1;for(var o=0,i=t.length,l=0;l<i;l++){var s=t[l],n=t[(l+1)%i];if(s.lat!==n.lat){var a=s.lat<n.lat?s.lat:n.lat,r=s.lat>n.lat?s.lat:n.lat;if(!(e.lat<a||e.lat>r))(e.lat-s.lat)*(n.lng-s.lng)/(n.lat-s.lat)+s.lng>e.lng&&o++}}return o%2==1},getGObjectsInCircle:function(t,e){if(t&&e){for(var o=[],i=this.map.getPlottingLayers(),l=0;l<i.length;l++){var s=i[l];for(var n in s.features){var a=s.features[n];if(a instanceof gt){var r=a.getBounds().getCenter();if(null===r)continue;Math.abs(e)>Math.sqrt(Math.pow(t.lng-r.lng,2)+Math.pow(t.lat-r.lat,2))&&o.push(a)}}}return o}},getGObjectsInRect:function(t,e){if(t&&e){for(var o=[],i=this.map.getPlottingLayers(),l=0;l<i.length;l++){var s=i[l];for(var n in s.features){var a=s.features[n];if(a instanceof gt){var r=a.getBounds().getCenter();if(null===r)continue;t.lng<e.lng&&t.lat>e.lat?r.lng>t.lng&&r.lng<e.lng&&r.lat<t.lat&&r.lat>e.lat&&o.push(a):r.lng<t.lng&&r.lng>e.lng&&r.lat<t.lat&&r.lat>e.lat&&o.push(a)}}}return o}}}),ke=function(t){return new Fe(t)};L.supermap.plotting.query=ke;var Ve=L.supermap.ServiceBase.extend({initialize:function(t,e){L.supermap.ServiceBase.prototype.initialize.call(this,t,e)},getSMLInfos:function(t,e,o){var i=this;return o||(o=i),new _(i.url,{proxy:i.options.proxy,withCredentials:i.options.withCredentials,crossOrigin:i.options.crossOrigin,headers:i.options.headers,serverType:i.options.serverType,eventListeners:{scope:o,processCompleted:e,processFailed:e}}).processAsync(t),i},editSMLFile:function(t,e,o){var i=this;return o||(o=i),new M(i.url,{proxy:i.options.proxy,withCredentials:i.options.withCredentials,crossOrigin:i.options.crossOrigin,headers:i.options.headers,serverType:i.options.serverType,eventListeners:{scope:o,processCompleted:e,processFailed:e}}).processAsync(t),i}}),Ye=function(t,e){return new Ve(t,e)};L.supermap.smlFileService=Ye;var ze=L.supermap.ServiceBase.extend({initialize:function(t,e){L.supermap.ServiceBase.prototype.initialize.call(this,t,e)},getSymbolInfo:function(t,e,o){var i=this;return o||(o=i),new O(i.url,{proxy:i.options.proxy,withCredentials:i.options.withCredentials,crossOrigin:i.options.crossOrigin,headers:i.options.headers,serverType:i.options.serverType,eventListeners:{scope:o,processCompleted:e,processFailed:e}}).processAsync(t),i}}),Ge=function(t,e){return new ze(t,e)};L.supermap.symbolInfoService=Ge;var We=L.supermap.ServiceBase.extend({initialize:function(t,e){L.supermap.ServiceBase.prototype.initialize.call(this,t,e)},getLibIDs:function(t,e){var o=this;return e||(e=o),new b(o.url,{proxy:o.options.proxy,withCredentials:o.options.withCredentials,crossOrigin:o.options.crossOrigin,headers:o.options.headers,serverType:o.options.serverType,eventListeners:{scope:e,processCompleted:t,processFailed:t}}).processAsync(),o},getLibInfo:function(t,e,o){var i=this;return o||(o=i),new T(i.url,{proxy:i.options.proxy,withCredentials:i.options.withCredentials,crossOrigin:i.options.crossOrigin,headers:i.options.headers,serverType:i.options.serverType,eventListeners:{scope:o,processCompleted:e,processFailed:e}}).processAsync(t),i}}),je=function(t,e){return new We(t,e)};L.supermap.symbolLibService=je,o.d(e,"Plot",function(){return l}),o.d(e,"SymbolType",function(){return s}),o.d(e,"LineRelationType",function(){return n}),o.d(e,"AlgoSurroundLineType",function(){return a}),o.d(e,"RouteNodeType",function(){return r}),o.d(e,"RelLineText",function(){return p}),o.d(e,"RadiusLineType",function(){return u}),o.d(e,"AnnoPosition",function(){return h}),o.d(e,"ArrowLineType",function(){return g}),o.d(e,"TextBoxType",function(){return c}),o.d(e,"PositionOffsetType",function(){return y}),o.d(e,"AlignType",function(){return P}),o.d(e,"EditMode",function(){return d}),o.d(e,"GOAnimationType",function(){return f}),o.d(e,"EditSmlFileParameters",function(){return m}),o.d(e,"GetLibInfoParameter",function(){return A}),o.d(e,"GetSMLInfosParameters",function(){return v}),o.d(e,"GetSymbolInfoParameters",function(){return x}),o.d(e,"DefaultStyle",function(){return w}),o.d(e,"ExtendProperty",function(){return I}),o.d(e,"LayerDataStruct",function(){return C}),o.d(e,"MapInfoStruct",function(){return E}),o.d(e,"OrbitPoint",function(){return D}),o.d(e,"Property",function(){return U}),o.d(e,"RouteNode",function(){return N}),o.d(e,"SitDataStruct",function(){return R}),o.d(e,"SMLInfoStruct",function(){return B}),o.d(e,"SubSymbol",function(){return F}),o.d(e,"SymbolText",function(){return k}),o.d(e,"TimeWindowParameter",function(){return V}),o.d(e,"TowardNode",function(){return Y}),o.d(e,"Event",function(){return S}),o.d(e,"CalculateCanvasGradient",function(){return z}),o.d(e,"CalculateSVGGradient",function(){return G}),o.d(e,"AnalysisSymbol",function(){return j}),o.d(e,"RouteNodePrimitives",function(){return Z}),o.d(e,"PlottingUtil",function(){return X}),o.d(e,"Primitives",function(){return H}),o.d(e,"AddPoint_WayType",function(){return J}),o.d(e,"BasicAlgoSymbolFactory",function(){return q}),o.d(e,"AlgoSymbolFactory",function(){return K}),o.d(e,"md5",function(){return Q}),o.d(e,"PlottingLayer",function(){return ae}),o.d(e,"plottingLayer",function(){return re}),o.d(e,"PlottingGraphicLayer",function(){return ie}),o.d(e,"plottingGraphicLayer",function(){return le}),o.d(e,"GOAnimation",function(){return ce}),o.d(e,"GOAnimationAttribute",function(){return ye}),o.d(e,"GOAnimationBlink",function(){return Pe}),o.d(e,"GOAnimationGrow",function(){return de}),o.d(e,"GOAnimationRotate",function(){return Se}),o.d(e,"GOAnimationScale",function(){return fe}),o.d(e,"GOAnimationShow",function(){return me}),o.d(e,"GOAnimationWay",function(){return Le}),o.d(e,"PlotControl",function(){return Me}),o.d(e,"AvoidRegionControl",function(){return ne}),o.d(e,"DrawGraphicObject",function(){return be}),o.d(e,"PlotDrawControl",function(){return Ae}),o.d(e,"drawControl",function(){return Te}),o.d(e,"PlotEditControl",function(){return ve}),o.d(e,"editControl",function(){return _e}),o.d(e,"PlottingObject",function(){return gt}),o.d(e,"GraphicObject",function(){return mt}),o.d(e,"AlgoSymbol",function(){return Lt}),o.d(e,"algoSymbol",function(){return Mt}),o.d(e,"DotSymbol",function(){return Tt}),o.d(e,"dotSymbol",function(){return vt}),o.d(e,"ArcRegion",function(){return xt}),o.d(e,"arcRegion",function(){return Ot}),o.d(e,"GroupObject",function(){return ct}),o.d(e,"groupObject",function(){return yt}),o.d(e,"FlagGroup",function(){return wt}),o.d(e,"flagGroup",function(){return It}),o.d(e,"NavyDeployment",function(){return Ct}),o.d(e,"navyDeployment",function(){return Et}),o.d(e,"AirDeployment",function(){return Dt}),o.d(e,"airDeployment",function(){return Ut}),o.d(e,"AvoidRegion",function(){return Nt}),o.d(e,"avoidRegion",function(){return Rt}),o.d(e,"AirRoute",function(){return Yt}),o.d(e,"airRoute",function(){return zt}),o.d(e,"MissileRoute",function(){return Gt}),o.d(e,"missileRoute",function(){return Wt}),o.d(e,"NavyRoute",function(){return jt}),o.d(e,"navyRoute",function(){return Xt}),o.d(e,"InterferenceBeam",function(){return Ht}),o.d(e,"interferenceBeam",function(){return Zt}),o.d(e,"LineRelation",function(){return bt}),o.d(e,"lineRelation",function(){return At}),o.d(e,"Satellite",function(){return Jt}),o.d(e,"satellite",function(){return qt}),o.d(e,"SatelliteTimeWindows",function(){return Kt}),o.d(e,"satelliteTimeWindows",function(){return Qt}),o.d(e,"GeoSymbolText",function(){return $t}),o.d(e,"geoSymbolText",function(){return te}),o.d(e,"GeoSymbolText1",function(){return ee}),o.d(e,"geoSymbolText1",function(){return oe}),o.d(e,"Plotting",function(){return Be}),o.d(e,"GOAnimationManager",function(){return xe}),o.d(e,"goAnimationManager",function(){return Oe}),o.d(e,"Query",function(){return Fe}),o.d(e,"query",function(){return ke}),o.d(e,"SitDataManager",function(){return we}),o.d(e,"sitDataManager",function(){return Ie}),o.d(e,"SymbolLib",function(){return Ce}),o.d(e,"symbolLib",function(){return Ee}),o.d(e,"SymbolLibManager",function(){return De}),o.d(e,"symbolLibManager",function(){return Ue}),o.d(e,"SMLFileService",function(){return Ve}),o.d(e,"smlFileService",function(){return Ye}),o.d(e,"SymbolInfoService",function(){return ze}),o.d(e,"symbolInfoService",function(){return Ge}),o.d(e,"SymbolLibService",function(){return We}),o.d(e,"symbolLibService",function(){return je}),o.d(e,"latLngsToSuperMapPoints",function(){return lt}),o.d(e,"superMapPointsToLatLngs",function(){return st}),o.d(e,"cloneLatLngs",function(){return nt}),o.d(e,"moveLatLngs",function(){return at}),o.d(e,"rotateLatLngs",function(){return rt}),o.d(e,"resizeLatLngs",function(){return pt})},function(t,e){L.Canvas.include({_drawPlottingGraphics:function(t){var e=this;let o=[];t.map(function(t){if("none"===t.feature.style.display)return t;if(t.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||t.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1){let o=e._map.getFeatureByUuid(t.feature.associatedUuid);if(null==o||"none"===o.style.display)return t}return t.getImage().complete()?e._drawPlottingGraphic(t):o.push(t),t}),o.length>0&&setTimeout(function(){for(let t=0;t<o.length;t++)e._drawPlottingGraphic(o[t])},100),this._redrawBounds=null},_drawPlottingLayers:function(t){t.map(function(e){return e instanceof L.Polyline&&e._update(),e instanceof L.Polygon&&e._update(),t})},_drawPlottingGraphic:function(t){var e=this;if("none"===t.feature.style.display)return t;if(t.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT||t.feature.symbolType===SuperMap.Plot.SymbolType.SYMBOLTEXT1){let o=e._map.getFeatureByUuid(t.feature.associatedUuid);if(null==o||"none"===o.style.display)return t}let o=e._map.latLngToLayerPoint(t.getLatLng()),i=t.getImage().img||t.getImage().canvas,l=o.x,s=o.y,n=-1*t.getImage().anchor.x,a=-1*t.getImage().anchor.y;e._ctx.save(),e._ctx.translate(l,s);let r=!0===t.feature.autoRotation&&0==t.getImage().feature.dRotate?-t._rotation:-t.getImage().feature.dRotate;e._ctx.rotate(r/180*Math.PI),e._ctx.translate(n,a);var p=L.Canvas.drawImageScaleFactor||(L.Canvas.drawImageScaleFactor=/android 2.1/.test(navigator.userAgent.toLowerCase())?320/window.screen.width:1);t.graphicHeight&&t.graphicWidth?e._ctx.drawImage(i,0,0,t.graphicHeight*p,t.graphicWidth*p):e._ctx.drawImage(i,0,0,t.getImage().size[0]*p,t.getImage().size[1]*p);for(let o=0;o<t.getImage().images.length;o++){let i=t.getImage().images[o].style,l=i.graphicWidth||i.graphicHeight,s=i.graphicHeight||i.graphicWidth;l=l||2*i.pointRadius,s=s||2*i.pointRadius;let n=void 0!==i.graphicXOffset?i.graphicXOffset:-.5*l,a=void 0!==i.graphicYOffset?i.graphicYOffset:-.5*s,r=t.getImage().images[o].point;e._ctx.translate(n,a);let u=L.supermap.plotting.getControl().imageManager[t.getImage().images[o].path];e._ctx.drawImage(u,r.x,r.y,l*p,s*p),e._ctx.translate(-n,-a)}e._ctx.translate(-n,-a),e._ctx.rotate(-r/180*Math.PI);var u=t.getImage().getBounds(t.getImage().feature.getLatLngs()[0],-r);if(null!=t.getImage().annotation){let i=null;switch(t.getImage().annotation.position){case SuperMap.Plot.AnnoPosition.LEFTTOP:i=L.latLng(u.getNorth(),u.getWest());break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:i=L.latLng(u.getSouth(),u.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:i=L.latLng(u.getNorth(),u.getEast());break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:i=L.latLng(u.getSouth(),u.getEast());break;case SuperMap.Plot.AnnoPosition.TOP:i=L.latLng(u.getNorth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:i=L.latLng(u.getSouth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:i=L.latLng((u.getSouth()+u.getNorth())/2,u.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:i=L.latLng((u.getSouth()+u.getNorth())/2,u.getEast())}let l=e._map.latLngToLayerPoint(i),s=l.x+t.getImage().annotation.offsetX-o.x,n=l.y+t.getImage().annotation.offsetY-o.y;e._ctx.translate(s,n),e._ctx.translate(-t.getImage().annotation.anchor.x,-t.getImage().annotation.anchor.y),e._ctx.drawImage(t.getImage().annotation.canvas,0,0,t.getImage().annotation.size[0]*p,t.getImage().annotation.size[1]*p),e._ctx.translate(t.getImage().annotation.anchor.x,t.getImage().annotation.anchor.y),e._ctx.translate(-s,-n)}for(let i=0;i<t.getImage().pictureFrames.length;i++){let l=null;switch(t.getImage().pictureFrames[i].position){case SuperMap.Plot.AnnoPosition.TOP:l=L.latLng(u.getNorth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:l=L.latLng(u.getSouth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:l=L.latLng((u.getSouth()+u.getNorth())/2,u.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:l=L.latLng((u.getSouth()+u.getNorth())/2,u.getEast())}let s=e._map.latLngToLayerPoint(l),n=s.x+t.getImage().pictureFrames[i].offsetX-o.x,a=s.y+t.getImage().pictureFrames[i].offsetY-o.y;e._ctx.translate(n,a);let r=t.getImage().pictureFrames[i].style,h=r.graphicWidth||r.graphicHeight,g=r.graphicHeight||r.graphicWidth;h=h||2*r.pointRadius,g=g||2*r.pointRadius;let c=void 0!==r.graphicXOffset?r.graphicXOffset:-.5*h,y=void 0!==r.graphicYOffset?r.graphicYOffset:-.5*g;e._ctx.translate(c,y);let P=L.supermap.plotting.getControl().imageManager[t.getImage().pictureFrames[i].path];e._ctx.drawImage(P,0,0,h*p,g*p),e._ctx.translate(-c,-y),e._ctx.translate(-n,-a)}for(let i=0;i<t.getImage().symbolTexts.length;i++){let l=null;switch(t.getImage().symbolTexts[i].position){case SuperMap.Plot.AnnoPosition.LEFTTOP:l=L.latLng(u.getNorth(),u.getWest());break;case SuperMap.Plot.AnnoPosition.LEFTBOTTOM:l=L.latLng(u.getSouth(),u.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHTTOP:l=L.latLng(u.getNorth(),u.getEast());break;case SuperMap.Plot.AnnoPosition.RIGHTBOTTOM:l=L.latLng(u.getSouth(),u.getEast());break;case SuperMap.Plot.AnnoPosition.TOP:l=L.latLng(u.getNorth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:l=L.latLng(u.getSouth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:l=L.latLng((u.getSouth()+u.getNorth())/2,u.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:l=L.latLng((u.getSouth()+u.getNorth())/2,u.getEast());break;case SuperMap.Plot.AnnoPosition.ANCHOR:l=L.latLng(t.getLatLng().lat,t.getLatLng().lng)}let s=e._map.latLngToLayerPoint(l),n=s.x+t.getImage().symbolTexts[i].offsetX-o.x,a=s.y+t.getImage().symbolTexts[i].offsetY-o.y;e._ctx.translate(n,a),e._ctx.translate(-t.getImage().symbolTexts[i].anchor.x,-t.getImage().symbolTexts[i].anchor.y),e._ctx.drawImage(t.getImage().symbolTexts[i].canvas,0,0,t.getImage().symbolTexts[i].size[0]*p,t.getImage().symbolTexts[i].size[1]*p),e._ctx.translate(t.getImage().symbolTexts[i].anchor.x,t.getImage().symbolTexts[i].anchor.y),e._ctx.translate(-n,-a)}for(let i=0;i<t.getImage().bloodVolumes.length;i++){let l=null;switch(t.getImage().bloodVolumes[i].position){case SuperMap.Plot.AnnoPosition.TOP:l=L.latLng(u.getNorth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.BOTTOM:l=L.latLng(u.getSouth(),(u.getWest()+u.getEast())/2);break;case SuperMap.Plot.AnnoPosition.LEFT:l=L.latLng((u.getSouth()+u.getNorth())/2,u.getWest());break;case SuperMap.Plot.AnnoPosition.RIGHT:l=L.latLng((u.getSouth()+u.getNorth())/2,u.getEast())}let s=e._map.latLngToLayerPoint(l),n=s.x+t.getImage().bloodVolumes[i].offsetX-o.x,a=s.y+t.getImage().bloodVolumes[i].offsetY-o.y;e._ctx.translate(n,a),e._ctx.translate(-t.getImage().bloodVolumes[i].anchor.x,-t.getImage().bloodVolumes[i].anchor.y),e._ctx.drawImage(t.getImage().bloodVolumes[i].canvas,0,0,t.getImage().bloodVolumes[i].size[0]*p,t.getImage().bloodVolumes[i].size[1]*p),e._ctx.translate(t.getImage().bloodVolumes[i].anchor.x,t.getImage().bloodVolumes[i].anchor.y),e._ctx.translate(-n,-a)}e._ctx.restore()},_updateTextPt:function(t,e){var o=e.options,i=1;100!==o.fontPercent&&(i=o.fontPercent/100),this._ctx.fillStyle=o.fontColor,!0===o.fontStroke&&(this._ctx.strokeStyle=o.fontStrokeColor,this._ctx.setLineDash([]),this._ctx.lineWidth=o.fontStrokeWidth),this._ctx.globalAlpha=o.fontOpacity||1;var l=[o.fontStyle?o.fontStyle:"normal","normal",o.fontWeight?o.fontWeight:"normal",o.fontSize?o.fontSize+"px":"1em",o.fontFamily?o.fontFamily:"sans-serif"].join(" "),s=o.text.split("\n"),n=s.length;if(this._ctx.fillText){this._ctx.font=l,this._ctx.textAlign=L.Canvas.LABEL_ALIGN[o.labelAlign[0]]||"center",this._ctx.textBaseline=L.Canvas.LABEL_ALIGN[o.labelAlign[1]]||"middle";var a=L.Canvas.LABEL_FACTOR[o.labelAlign[1]];null==a&&(a=-.5);var r=this._ctx.measureText("Mg").height||this._ctx.measureText("xx").width;t.y+=r*a*(n-1);for(var p=0;p<n;p++)if(0!=o.fontSpace){var u=0,h=this._ctx.measureText(s[p]).width+o.fontSpace*(s[p].length-1),g=o.labelAlign[0]||"c";"c"===g?u-=h/2-this._ctx.measureText(s[p][0]).width/2:"r"===g&&(u-=h-o.fontSize);var c=0,y=s[p].split(""),P="";this._ctx.save(),this._ctx.translate(t.x,t.y),0!=o.labelRotation&&this._ctx.rotate(o.labelRotation*Math.PI/180),this._ctx.scale(i,1);for(var d=0;d<y.length;d++)!0===o.fontStroke&&this._ctx.strokeText(y[d],u+c,r*p),this._ctx.fillText(y[d],u+c,r*p),P+=y[d],c=this._ctx.measureText(P).width+parseFloat(o.fontSpace)*(d+1);this._ctx.restore()}else this._ctx.save(),this._ctx.translate(t.x,t.y),0!=o.labelRotation&&this._ctx.rotate(o.labelRotation*Math.PI/180),this._ctx.scale(i,1),!0===o.fontStroke&&this._ctx.strokeText(s[p],0,r*p),this._ctx.fillText(s[p],0,r*p),this._ctx.restore()}},_updateText:function(t){if(void 0!=t.options.text&&!(t.options.fontSize<6)){void 0===t.options.fontPercent&&(t.options.fontPercent=100),t.options.fontPercent<0&&(t.options.fontPercent=0),t.options.fontPercent>400&&(t.options.fontPercent=400),void 0===t.options.fontSpace&&(t.options.fontSpace=0),t.options.fontSpace>30?t.options.fontSpace=30:t.options.fontSpace<0&&(t.options.fontSpace=0);var e=t._latlng,o=this._map.latLngToLayerPoint(e);if(void 0!=o){if(t.options.labelXOffset||t.options.labelYOffset){var i=isNaN(t.options.labelXOffset)?0:t.options.labelXOffset,l=isNaN(t.options.labelYOffset)?0:t.options.labelYOffset;o.x+=i,o.y-=l}if(!0===t.options.fontBackground){this._ctx.font=[t.options.fontStyle?t.options.fontStyle:"normal","normal",t.options.fontWeight?t.options.fontWeight:"normal",t.options.fontSize?t.options.fontSize+"px":"1em",t.options.fontFamily?t.options.fontFamily:"sans-serif"].join(" ");var s=t.options.labelRotation;t.options.labelRotation=0;var n=t.getPxBounds();t.options.labelRotation=s;var a=n.min.x,r=n.min.y,p=n.max.x-n.min.x,u=n.max.y-n.min.y;this._ctx.fillStyle=t.options.fontBackgroundColor,this._ctx.globalAlpha=1,this._ctx.save(),this._ctx.translate(a,r),0!=t.options.labelRotation&&this._ctx.rotate(t.options.labelRotation*Math.PI/180),this._ctx.fillRect(0,0,p,u),this._ctx.restore()}if(!0===t.options.fontShadow){var h=L.point(o.x,o.y);if(t.options.fontShadowOffsetX&&(h.x+=t.options.fontShadowOffsetX),t.options.fontShadowOffsetY&&(h.y+=t.options.fontShadowOffsetY),0!==t.options.labelRotation){var g=o.x,c=o.y,y=t.options.labelRotation*Math.PI/180,P=Math.sqrt(Math.pow(h.x-g,2)+Math.pow(h.y-c,2)),d=y+Math.atan2(h.y-c,h.x-g);h.x=g+P*Math.cos(d),h.y=c+P*Math.sin(d)}var S=t.options.fontStroke;t.options.fontStroke=!1;var f=t.options.fontColor;t.options.fontColor=t.options.fontShadowColor,this._updateTextPt(h,t),t.options.fontColor=f,t.options.fontStroke=S}if(t.hasOwnProperty("_eventParents"))for(var m in t._eventParents)t._eventParents[m].hasOwnProperty("ownerGroup")&&null!==t._eventParents[m].ownerGroup&&(t._eventParents[m].ownerGroup.symbolType!==SuperMap.Plot.SymbolType.NAVYDEPLOYMENT&&t._eventParents[m].ownerGroup.symbolType!==SuperMap.Plot.SymbolType.AIRDEPLOYMENT||t._updateBounds());this._updateTextPt(o,t)}}},_updateImage:function(t){var e=this,o=function(){var t=this.style,o=t.graphicWidth||t.graphicHeight,i=t.graphicHeight||t.graphicWidth;o=o||2*t.pointRadius,i=i||2*t.pointRadius;var l=void 0!==t.graphicXOffset?t.graphicXOffset:-.5*o,s=void 0!==t.graphicYOffset?t.graphicYOffset:-.5*i,n=t.graphicOpacity||t.fillOpacity,a=this.point,r=a.x,p=a.y;if(!isNaN(r)&&!isNaN(p)){var u;e._ctx.save(),t.rotation&&(u=t.rotation/180*Math.PI),e._ctx.translate(r,p),u&&e._ctx.rotate(u),e._ctx.translate(l,s),e._ctx.globalAlpha=n;var h=L.Canvas.drawImageScaleFactor||(L.Canvas.drawImageScaleFactor=/android 2.1/.test(navigator.userAgent.toLowerCase())?320/window.screen.width:1);e._ctx.drawImage(this.img,0,0,o*h,i*h),e._ctx.restore()}},i=new Image;"firefox"==SuperMap.Browser.name?(i.onload=function(){o.call({point:t._point,style:t.options,img:i}),i.onload=null},t.options.graphicTitle&&(i.title=t.options.graphicTitle),i.src=t.options.externalGraphic):(t.options.graphicTitle&&(i.title=t.options.graphicTitle),i.src=t.options.externalGraphic,i.onload=function(){o.call({point:t._point,style:t.options,img:i}),i.onload=null}),window.ActiveXObject||"ActiveXObject"in window?i.onload():i.complete&&i.onload()},_updateArc:function(t){if(this._drawing&&!t._empty()){var e=t._point,o=this._ctx,i=t._radius,l=(t._radiusY||i)/i,s=(360-t.options.endAngle)*(Math.PI/180),n=(360-t.options.startAngle)*(Math.PI/180);this._drawnLayers[t._leaflet_id]=t,1!==l&&(o.save(),o.scale(1,l)),o.beginPath(),o.arc(e.x,e.y/l,i,s,n,!1),1!==l&&o.restore(),this._fillStroke(o,t)}},_handleMouseHover:function(t,e){var o,i=null;for(var l in this._map._layers)if((o=this._map._layers[l])._drawFirst)for(var s=o._drawFirst;s;s=s.next)s.layer.options.interactive&&s.layer._containsPoint(e)&&!this._map._draggableMoved(s.layer)&&(i=s.layer);i!==this._hoveredLayer&&(this._handleMouseOut(t),i&&(L.DomUtil.addClass(this._container,"leaflet-interactive"),this._fireEvent([i],t,"mouseover"),this._hoveredLayer=i)),this._hoveredLayer&&this._fireEvent([this._hoveredLayer],t)},_onClick:function(t){var e,o=this._map.mouseEventToLayerPoint(t),i=[],l=[],s=0;for(let t in this._map._layers)if(this._map._layers[t]._drawFirst)for(var n=this._map._layers[t]._drawFirst;n;n=n.next)if(n.layer.options.interactive&&n.layer._containsPoint(o)&&!this._map._draggableMoved(n.layer)&&(e=n.layer).hasOwnProperty("_eventParents")&&null!==e._eventParents)for(var a in e._eventParents)l.push(e),i.push(e._eventParents[a]);if(e&&l.length>1){if(i.length>0){var r=!1,p=[],u=[];for(let t=0,e=i.length;t<e;t++)i[t].isSelected&&i[t].moveend&&(r=!0),i[t].enableEdit&&(p.push(i[t]),u.push(l[t]));if(t.altKey){for(let t=0;t<i.length;t++){if(1===i[t].symbolType){s=t;break}i[t].getBounds().contains(i[s].getBounds())||(s=t)}return L.DomEvent.fakeStop(t),void this._fireEvent([u[s]],t)}for(let e=0,o=p.length;e<o;e++){if(L.DomEvent.fakeStop(t),p[e].isSelected&&p[e].moveend){this._fireEvent([u[e]],t);break}if(p[e].isSelected&&p.length>1){this._fireEvent([u[e]],t);break}if(!r){this._fireEvent([u[u.length-1]],t);break}}}}else e&&(L.DomEvent.fakeStop(t),this._fireEvent([e],t))}}),L.Polyline.prototype._containsPoint=function(t,e){var o,i,l,s,n,a,r=this._clickTolerance()+10;if(this._pxBounds&&!this._pxBounds.contains(t))return!1;for(o=0,s=this._parts.length;o<s;o++)for(i=0,l=(n=(a=this._parts[o]).length)-1;i<n;l=i++)if((e||0!==i)&&L.LineUtil.pointToSegmentDistance(t,a[l],a[i])<=r)return!0;return!1},L.supermap.plotting.Text.prototype._containsPoint=function(t){return this._pxBounds.contains(t)},L.supermap.plotting.PointImage.prototype._containsPoint=function(t){return this._pxBounds.contains(t)},L.Canvas.LABEL_ALIGN={l:"left",r:"right",t:"hanging",b:"alphabetic"},L.Canvas.LABEL_FACTOR={l:0,r:-1,t:0,b:-1},L.Canvas.drawImageScaleFactor=null},function(t,e){L.SVG.include({_drawPlottingLayers:function(t){t.map(function(e){return e instanceof L.Polyline&&e._update(),e instanceof L.Polygon&&e._update(),t})},getEvents:function(){var t=this;this._map.on("layeradd",function(e){e.layer===t&&(L.DomEvent.on(t._container,"mousemove",L.Util.throttle(t._onMouseMove,32,t),t),L.DomEvent.on(t._container,"mouseout",t._handleMouseOut,t))});var e=L.Renderer.prototype.getEvents.call(this);return e.zoomstart=this._onZoomStart,e},_onClick:function(t){var e,o=this._map.mouseEventToLayerPoint(t),i=[],l=[];for(var s in this._layers){var n=this._layers[s];if(n.options.interactive&&"function"==typeof n._containsPoint&&n._containsPoint(o)&&!this._map._draggableMoved(n)&&(e=n).hasOwnProperty("_eventParents")&&null!=e._eventParents)for(var a in e._eventParents)l.push(e),i.push(e._eventParents[a])}if(e&&l.length>1){if(i.length>0){var r=!1,p=[],u=[];for(let t=0,e=i.length;t<e;t++)i[t].isSelected&&i[t].moveend&&(r=!0),i[t].enableEdit&&(p.push(i[t]),u.push(l[t]));for(let e=0,o=p.length;e<o;e++){if(L.DomEvent.fakeStop(t),p[e].isSelected&&p[e].moveend){p[e].moveend=!1,this._fireEvent([u[e]],t),p[e].moveend=!0;break}if(p[e].isSelected&&p.length>1){this._fireEvent([u[e]],t);break}if(!r){this._fireEvent([u[u.length-1]],t);break}}}}else e&&(L.DomEvent.fakeStop(t),e._eventParents[0]&&e._eventParents[0].fire(t.type,t))},_onMouseMove:function(t){if(this._map&&!this._map.dragging.moving()&&!this._map._animatingZoom){var e=this._map.mouseEventToLayerPoint(t);this._handleMouseHover(t,e)}},_handleMouseOut:function(t){var e=this._hoveredLayer;e&&(L.DomUtil.removeClass(this._container,"leaflet-interactive"),this._fireEvent([e],t,"mouseout"),this._hoveredLayer=null)},_handleMouseHover:function(t,e){var o,i;for(var l in this._layers)(o=this._layers[l]).options.interactive&&"function"==typeof o._containsPoint&&o._containsPoint(e)&&(i=o);i!==this._hoveredLayer&&(this._handleMouseOut(t),i&&(L.DomUtil.addClass(this._container,"leaflet-interactive"),this._fireEvent([i],t,"mouseover"),this._hoveredLayer=i)),this._hoveredLayer&&this._fireEvent([this._hoveredLayer],t)},_fireEvent:function(t,e,o){this._map._fireDOMEvent(e,o||e.type,t)},_updateTextPt:function(t,e,o,i){var l;if(t.setAttributeNS(null,"x",e.x),t.setAttributeNS(null,"y",e.y),o.options.display&&t.setAttributeNS(null,"display",o.options.display),!0===o.options.fontStroke&&(o.options.fontStrokeColor&&t.setAttributeNS(null,"stroke",o.options.fontStrokeColor),o.options.fontStrokeWidth&&t.setAttributeNS(null,"stroke-width",o.options.fontStrokeWidth)),o.options.labelRotation&&t.setAttributeNS(null,"transform","rotate("+o.options.labelRotation+" "+e.x+","+e.y+")"),o.options.fontColor&&t.setAttributeNS(null,"fill",o.options.fontColor),o.options.fontOpacity&&t.setAttributeNS(null,"opacity",o.options.fontOpacity),o.options.fontFamily&&t.setAttributeNS(null,"font-family",o.options.fontFamily),o.options.fontSize&&t.setAttributeNS(null,"font-size",o.options.fontSize),o.options.fontWeight&&t.setAttributeNS(null,"font-weight",o.options.fontWeight),o.options.fontStyle&&t.setAttributeNS(null,"font-layer.options",o.options.fontStyle),L.Browser.gecko){if(100!==o.options.fontPercent&&0!==o.options.fontSpace&&(l=o.options.fontSpace+o.options.fontPercent/100*parseFloat(o.options.fontSize)*o.options.text.length),100!==o.options.fontPercent&&0===o.options.fontSpace){var s=document.createElement("span");document.body.appendChild(s),s.style.width="auto",s.style.height="auto",o.options.fontSize&&(s.style.fontSize=new String(o.options.fontSize)+"px"),o.options.fontFamily&&(s.style.fontFamily=o.options.fontFamily),o.options.fontWeight&&(s.style.fontWeight=o.options.fontWeight),s.style.position="absolute",s.style.visibility="hidden",s.innerHTML=o.options.text;var n=s.clientWidth;l=o.options.fontPercent/100*n+o.options.text.length}t.setAttributeNS(null,"textLength",l),t.setAttributeNS(null,"lengthAdjust","spacingAndGlyphs")}t.setAttributeNS(null,"pointer-events","visible");var a=o.options.labelAlign||"cm";t.setAttributeNS(null,"text-anchor",L.SVG.LABEL_ALIGN[a[0]]||"middle"),!0===L.Browser.gecko&&t.setAttributeNS(null,"dominant-baseline",L.SVG.LABEL_ALIGN[a[1]]||"central");for(var r=function(){let t=L.SVG.LABEL_VFACTOR[a[1]];null==t&&(t=-.5);let e=t*(u-1);return L.Browser.ie&&(null===(t=L.SVG.LABEL_IE_VOFFSET[a[1]])&&(t=.35),e+=t),e},p=o.options.text.split("\n"),u=p.length;t.childNodes.length>u;)t.removeChild(t.lastChild);for(var h=0;h<u;h++){var g=e.x;if(0!==o.options.fontSpace||100!==o.options.fontPercent&&L.Browser.ie){let e=SuperMap.Plot.PlottingUtil.getTextWidth(o.options,p[h]);"c"===a[0]?g-=e/2:"r"===a[0]&&(g-=e);for(var c=0,y=p[h].split(""),P="",d=0;d<y.length;d++){let e=i+"tspan"+h+d;o._tspanNodeObj&&o._tspanNodeObj[e]||(o._tspanNodeObj[e]=L.SVG.create("tspan"));let l=o._tspanNodeObj[e];!1===L.Browser.gecko&&l.setAttributeNS(null,"baseline-shift",L.SVG.LABEL_VSHIFT[a[1]]||"-35%");var S=SuperMap.Plot.PlottingUtil.getTextWidth(o.options,y[d]);l.setAttributeNS(null,"textLength",S),l.setAttributeNS(null,"lengthAdjust","spacingAndGlyphs"),l.setAttribute("x",g+c+(0===h?0:S>>>1)),0!==d?l.setAttribute("dy","0em"):0===h?l.setAttribute("dy",r()+"em"):l.setAttribute("dy","1em");let s=""===y[d]?" ":y[d];o.options.isUnicode?L.Browser.ie||L.Browser.ielt9?(this.element.innerHTML=s,l.textContent=this.element.innerHTML):l.innerHTML=s:l.textContent=s,l.parentNode||t.appendChild(l),P+=y[d],c=SuperMap.Plot.PlottingUtil.getTextWidth(o.options,P)+parseFloat(o.options.fontSpace)*(o.options.fontPercent/100)}}else{let l=i+"tspan"+h;o._tspanNodeObj&&o._tspanNodeObj[l]||(o._tspanNodeObj[l]=L.SVG.create("tspan"));let s=o._tspanNodeObj[l];if(!1===L.Browser.gecko&&s.setAttributeNS(null,"baseline-shift",L.SVG.LABEL_VSHIFT[a[1]]||"-35%"),100!==o.options.fontPercent){let t=SuperMap.Plot.PlottingUtil.getTextWidth(o.options,p[h]);s.setAttributeNS(null,"textLength",t),s.setAttributeNS(null,"lengthAdjust","spacingAndGlyphs")}s.setAttribute("x",e.x),0==h?s.setAttribute("dy",r()+"em"):s.setAttribute("dy","1em");let n=""===p[h]?" ":p[h];o.options.isUnicode?L.Browser.ie||L.Browser.ielt9?(this.element.innerHTML=n,s.textContent=this.element.innerHTML):s.innerHTML=n:s.textContent=n,s.parentNode||t.appendChild(s)}}t.parentNode||this._rootGroup.appendChild(t)},_updateText:function(t){if(t.options.text&&0!==t.options.text.length)if(t.options.fontSize<6||t.options.fontPercent<=0)t._removeNode();else{for(var e in t._eventParents)if(t._eventParents[e].symbolType===SuperMap.Plot.SymbolType.DOTSYMBOL&&!1===t._eventParents[e].textDisplay)return void t._removeNode();void 0===t.options.fontPercent&&(t.options.fontPercent=100),t.options.fontPercent<0&&(t.options.fontPercent=0),t.options.fontPercent>400&&(t.options.fontPercent=400),void 0===t.options.fontSpace&&(t.options.fontSpace=0),t.options.fontSpace>30?t.options.fontSpace=30:t.options.fontSpace<0&&(t.options.fontSpace=0);var o=t._latlng,i=this._map.latLngToLayerPoint(o);if(void 0!=i){if(t.options.labelXOffset||t.options.labelYOffset){var l=isNaN(t.options.labelXOffset)?0:t.options.labelXOffset,s=isNaN(t.options.labelYOffset)?0:t.options.labelYOffset;i.x+=l,i.y-=s}if(!0===t.options.fontShadow){t._shadowTextNode&&t._shadowTextNode.parentNode||(t._shadowTextNode=L.SVG.create("text"),this._rootGroup.appendChild(t._shadowTextNode));var n=L.point(i.x,i.y);if(t.options.fontShadowOffsetX&&(n.x+=t.options.fontShadowOffsetX),t.options.fontShadowOffsetY&&(n.y+=t.options.fontShadowOffsetY),0!==t.options.labelRotation){var a=i.x,r=i.y,p=t.options.labelRotation*Math.PI/180,u=Math.sqrt(Math.pow(n.x-a,2)+Math.pow(n.y-r,2)),h=p+Math.atan2(n.y-r,n.x-a);n.x=a+u*Math.cos(h),n.y=r+u*Math.sin(h)}var g=t.options.fontStroke;t.options.fontStroke=!1;var c=t.options.fontColor;t.options.fontColor=t.options.fontShadowColor,this._updateTextPt(t._shadowTextNode,n,t,"shadow"),t.options.fontColor=c,t.options.fontStroke=g}else t._shadowTextNode&&t._shadowTextNode.parentNode&&(this._rootGroup.removeChild(t._shadowTextNode),delete t._shadowTextNode);if(t._textNode&&t._textNode.parentNode||(t._textNode=L.SVG.create("text"),this._rootGroup.appendChild(t._textNode),t.options.interactive&&L.DomUtil.addClass(t._textNode,"leaflet-interactive"),t.addInteractiveTarget(t._textNode)),this._updateTextPt(t._textNode,i,t,"label"),!0===t.options.fontBackground){var y=t._shadowTextNode;if(y&&y.parentNode||(y=t._textNode),!y||!y.parentNode)return;t._backgroundTextNode&&t._backgroundTextNode.parentNode||(t._backgroundTextNode=L.SVG.create("rect"),!0===t.options.fontShadow?this._rootGroup.insertBefore(t._backgroundTextNode,t._shadowTextNode):this._rootGroup.insertBefore(t._backgroundTextNode,t._textNode));var P=t._textNode.getBBox();t._backgroundTextNode.x.baseVal.value=P.x,t._backgroundTextNode.y.baseVal.value=P.y,t._backgroundTextNode.width.baseVal.value=P.width,t._backgroundTextNode.height.baseVal.value=P.height,t._backgroundTextNode.style.fill=t.options.fontBackgroundColor,t.options.labelRotation&&t._backgroundTextNode.setAttributeNS(null,"transform","rotate("+t.options.labelRotation+" "+i.x+","+i.y+")")}else t._backgroundTextNode&&t._backgroundTextNode.parentNode&&(this._rootGroup.removeChild(t._backgroundTextNode),delete t._backgroundTextNode)}else t._removeNode()}else t._removeNode()},_updateImage:function(t){if(t._imageNode&&t._imageNode.parentNode||(t._imageNode=L.SVG.create("image"),this._rootGroup.appendChild(t._imageNode)),t._imageNode.setAttributeNS(null,"cx",t._point.x),t._imageNode.setAttributeNS(null,"cy",t._point.y),t._imageNode.setAttributeNS(null,"r",1),t._imageNode.style.visibility="",t.options.graphicTitle){t._imageNode.setAttributeNS(null,"title",t.options.graphicTitle);var e=L.SVG.create("title");e.textContent=style.graphicTitle,t._imageNode.appendChild(e)}t.options.graphicWidth&&t.options.graphicHeight&&t._imageNode.setAttributeNS(null,"preserveAspectRatio","none");var o=t.options.graphicWidth||t.options.graphicHeight,i=t.options.graphicHeight||t.options.graphicWidth;o=o||2*t.options.pointRadius,i=i||2*t.options.pointRadius;var l=void 0!=t.options.graphicXOffset?t.options.graphicXOffset:-.5*o,s=void 0!=t.options.graphicYOffset?t.options.graphicYOffset:-.5*i,n=t.options.graphicOpacity||t.options.fillOpacity;t._imageNode.setAttributeNS(null,"x",(t._point.x+l).toFixed()),t._imageNode.setAttributeNS(null,"y",(t._point.y+s).toFixed()),t._imageNode.setAttributeNS(null,"width",o),t._imageNode.setAttributeNS(null,"height",i),t._imageNode.setAttributeNS("http://www.w3.org/1999/xlink","href",t.options.externalGraphic),t._imageNode.setAttributeNS(null,"style","opacity: "+n),t._imageNode.onclick=L.SVG.preventDefault;var a=t.options.rotation;void 0===a&&void 0===t._imageNode._rotation||!t._point||(t._imageNode._rotation=a,a|=0,t._imageNode.setAttributeNS(null,"transform","rotate("+a+" "+t._point.x+" "+t._point.y+")")),t._imageNode.setAttributeNS(null,"fill","none"),t._imageNode.setAttributeNS(null,"stroke","none"),t.options.pointerEvents?(t._imageNode.setAttributeNS(null,"pointer-events",t.options.pointerEvents),t._imageNode.style.pointerEvents=t.options.pointerEvents):(t._imageNode.setAttributeNS(null,"pointer-events","visiblepainted"),t._imageNode.style.pointerEvents="visiblepainted"),null!=t.options.cursor&&t._imageNode.setAttributeNS(null,"cursor",style.cursor)},_updateArc:function(t){if(this._drawing&&!t._empty()){var e=t._point,o=t._radius,i="a"+o+","+(t._radiusY||o)+" 0 1,0 ";sRadian=(360-t.options.endAngle)*(Math.PI/180),eRadian=(360-t.options.startAngle)*(Math.PI/180);var l=t._empty()?"M0 0":"M"+(e.x-o)+","+e.y+i+2*o+",0 "+i+2*-o+",0 ";this._setPath(t,l)}}}),L.SVG.LABEL_ALIGN={l:"start",r:"end",b:"bottom",t:"hanging"},L.SVG.LABEL_VSHIFT={t:"-83%",b:"0"},L.SVG.LABEL_VFACTOR={t:0,b:-1},L.SVG.LABEL_IE_VOFFSET={t:.86,b:0},L.SVG.preventDefault=function(t){t.preventDefault&&t.preventDefault()}}]);