deeptwins-engine-3d 0.1.76 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/dist/assets/Build/DeepTwins/Image/noise.png +0 -0
  2. package/dist/assets/Build/DeepTwins/Workers/CustomRasterClip.worker.js +1 -2
  3. package/dist/assets/Build/DeepTwins/Workers/MvtVector.worker.js +1 -1
  4. package/dist/assets/Build/Map3d/ThirdParty/Workers/zip-web-worker.js +640 -0
  5. package/dist/assets/Build/Map3d/ThirdParty/wasm_splats_bg.wasm +0 -0
  6. package/dist/assets/Build/Map3d/ThirdParty/zip-module.wasm +0 -0
  7. package/dist/assets/Build/Map3d/Workers/chunk-27NG6PQR.js +456 -0
  8. package/dist/assets/Build/Map3d/Workers/chunk-2JVMMMWT.js +353 -0
  9. package/dist/assets/Build/Map3d/Workers/chunk-2Y2XYQCS.js +1481 -0
  10. package/dist/assets/Build/Map3d/Workers/chunk-34RF3V5G.js +220 -0
  11. package/dist/assets/Build/Map3d/Workers/chunk-35H7BYLJ.js +1800 -0
  12. package/dist/assets/Build/Map3d/Workers/chunk-57OGEF5V.js +435 -0
  13. package/dist/assets/Build/Map3d/Workers/chunk-5PX3DYJA.js +196 -0
  14. package/dist/assets/Build/Map3d/Workers/chunk-7B5XGQRN.js +171 -0
  15. package/dist/assets/Build/Map3d/Workers/chunk-ATLWOZFF.js +39 -0
  16. package/dist/assets/Build/Map3d/Workers/chunk-BMSUECTA.js +1055 -0
  17. package/dist/assets/Build/Map3d/Workers/chunk-C6IA4TKW.js +476 -0
  18. package/dist/assets/Build/Map3d/Workers/chunk-CZ44I32U.js +157 -0
  19. package/dist/assets/Build/Map3d/Workers/chunk-DE6UV44R.js +122 -0
  20. package/dist/assets/Build/Map3d/Workers/chunk-DUCCKVOG.js +834 -0
  21. package/dist/assets/Build/Map3d/Workers/chunk-EBJBPIYX.js +239 -0
  22. package/dist/assets/Build/Map3d/Workers/chunk-EYSYQ2R6.js +138 -0
  23. package/dist/assets/Build/Map3d/Workers/chunk-FMCAAUQI.js +368 -0
  24. package/dist/assets/Build/Map3d/Workers/chunk-GMYZNRRQ.js +2717 -0
  25. package/dist/assets/Build/Map3d/Workers/chunk-GWPNZZV4.js +781 -0
  26. package/dist/assets/Build/Map3d/Workers/chunk-HLP2U4KW.js +758 -0
  27. package/dist/assets/Build/Map3d/Workers/chunk-HSJSUPQV.js +500 -0
  28. package/dist/assets/Build/Map3d/Workers/chunk-I73Q3AG7.js +58 -0
  29. package/dist/assets/Build/Map3d/Workers/chunk-IMZ4YIMV.js +511 -0
  30. package/dist/assets/Build/Map3d/Workers/chunk-IZSK4DVF.js +421 -0
  31. package/dist/assets/Build/Map3d/Workers/chunk-JKLMRPKK.js +75 -0
  32. package/dist/assets/Build/Map3d/Workers/chunk-KGM345JM.js +691 -0
  33. package/dist/assets/Build/Map3d/Workers/chunk-L4IR5U4G.js +102 -0
  34. package/dist/assets/Build/Map3d/Workers/chunk-MG4EVQH2.js +44 -0
  35. package/dist/assets/Build/Map3d/Workers/chunk-NXWEFAZJ.js +300 -0
  36. package/dist/assets/Build/Map3d/Workers/chunk-PDFAJISJ.js +59 -0
  37. package/dist/assets/Build/Map3d/Workers/chunk-PHWZFJR5.js +100 -0
  38. package/dist/assets/Build/Map3d/Workers/chunk-PLE7CHBE.js +101 -0
  39. package/dist/assets/Build/Map3d/Workers/chunk-PN3GIZ5Q.js +163 -0
  40. package/dist/assets/Build/Map3d/Workers/chunk-PXL5XLHV.js +1073 -0
  41. package/dist/assets/Build/Map3d/Workers/chunk-QYXOF5JC.js +959 -0
  42. package/dist/assets/Build/Map3d/Workers/chunk-R2LIFXV3.js +115 -0
  43. package/dist/assets/Build/Map3d/Workers/chunk-R4W6IRJZ.js +10357 -0
  44. package/dist/assets/Build/Map3d/Workers/chunk-R5PZXG56.js +1258 -0
  45. package/dist/assets/Build/Map3d/Workers/chunk-RZQLZIUI.js +629 -0
  46. package/dist/assets/Build/Map3d/Workers/chunk-SIBDD6Y4.js +390 -0
  47. package/dist/assets/Build/Map3d/Workers/chunk-U5NN6JTQ.js +398 -0
  48. package/dist/assets/Build/Map3d/Workers/chunk-UA5RPPP3.js +73 -0
  49. package/dist/assets/Build/Map3d/Workers/chunk-UXLKFS3C.js +305 -0
  50. package/dist/assets/Build/Map3d/Workers/chunk-VUX4BQIM.js +37 -0
  51. package/dist/assets/Build/Map3d/Workers/chunk-WJDUUUJS.js +684 -0
  52. package/dist/assets/Build/Map3d/Workers/chunk-XBJOJHWX.js +139 -0
  53. package/dist/assets/Build/Map3d/Workers/chunk-XJDMTNKD.js +634 -0
  54. package/dist/assets/Build/Map3d/Workers/chunk-XUCXZZE5.js +963 -0
  55. package/dist/assets/Build/Map3d/Workers/chunk-YIKGVMJ5.js +287 -0
  56. package/dist/assets/Build/Map3d/Workers/chunk-YTNCIBPQ.js +262 -0
  57. package/dist/assets/Build/Map3d/Workers/chunk-ZMDUYETO.js +55 -0
  58. package/dist/assets/Build/Map3d/Workers/chunk-ZW52HXFN.js +2857 -0
  59. package/dist/esm/analyze/LineOfSightAnalysis.js +1 -326
  60. package/dist/esm/analyze/SubmergenceAnalysis.js +1 -137
  61. package/dist/esm/analyze/SunLightAnalysis.js +1 -91
  62. package/dist/esm/analyze/TerrainExcavationAnalysis.js +1 -612
  63. package/dist/esm/analyze/ViewshedAnalysis.js +1 -292
  64. package/dist/esm/cameraControl/ModelRoamHistory.js +1 -639
  65. package/dist/esm/cameraControl/ModelRoamRealTime.js +1 -874
  66. package/dist/esm/cameraControl/Roam.js +1 -418
  67. package/dist/esm/cameraControl/Rotate.js +1 -134
  68. package/dist/esm/cameraControl/RotateInPlace.js +1 -99
  69. package/dist/esm/constant.d.ts +90 -0
  70. package/dist/esm/constant.js +1 -1287
  71. package/dist/esm/deepTwins/index.js +1 -121
  72. package/dist/esm/drawCommand/index.js +1 -3
  73. package/dist/esm/drawCommand/viewShed/Event.js +1 -142
  74. package/dist/esm/drawCommand/viewShed/RectangularSensorPrimitive.js +1 -1306
  75. package/dist/esm/drawCommand/viewShed/ViewShadowPrimitive.js +1 -66
  76. package/dist/esm/drawCommand/viewShed/ViewShedAnalyserLayer.js +1 -466
  77. package/dist/esm/drawCommand/viewShed/ViewShedMap.js +1 -1238
  78. package/dist/esm/drawCommand/viewShed/config.js +1 -21
  79. package/dist/esm/drawCommand/volumeCloud/GeometryPrimitive.js +1 -89
  80. package/dist/esm/drawCommand/volumeCloud/ImprovedNoise.js +1 -112
  81. package/dist/esm/drawCommand/volumeCloud/VolumeClouds.js +1 -91
  82. package/dist/esm/drawer/algorithm.js +1 -314
  83. package/dist/esm/drawer/common.js +1 -965
  84. package/dist/esm/drawer/coordinate.js +1 -184
  85. package/dist/esm/drawer/index.d.ts +1 -1
  86. package/dist/esm/drawer/index.js +1 -688
  87. package/dist/esm/drawer/plotUtil.js +1 -266
  88. package/dist/esm/drawer/shape/Assemble.js +1 -415
  89. package/dist/esm/drawer/shape/AttackArrow.js +1 -442
  90. package/dist/esm/drawer/shape/BaseShape.js +1 -383
  91. package/dist/esm/drawer/shape/Bow.js +1 -375
  92. package/dist/esm/drawer/shape/Circle.js +1 -461
  93. package/dist/esm/drawer/shape/Curve.js +1 -386
  94. package/dist/esm/drawer/shape/DragPoint.js +1 -211
  95. package/dist/esm/drawer/shape/Elliptic.js +1 -491
  96. package/dist/esm/drawer/shape/Formation.js +1 -395
  97. package/dist/esm/drawer/shape/PincerArrow.js +1 -445
  98. package/dist/esm/drawer/shape/Point.js +1 -131
  99. package/dist/esm/drawer/shape/Polygon.js +1 -368
  100. package/dist/esm/drawer/shape/Polyline.js +1 -325
  101. package/dist/esm/drawer/shape/RegularPolygon.js +1 -468
  102. package/dist/esm/drawer/shape/RightAngleArrow.js +1 -423
  103. package/dist/esm/drawer/shape/Sector.js +1 -568
  104. package/dist/esm/drawer/shape/StraightArrow.js +1 -422
  105. package/dist/esm/drawer/shape/SwallowtailArrow.js +1 -438
  106. package/dist/esm/drawer/types.js +1 -11
  107. package/dist/esm/drawer/utils.js +1 -381
  108. package/dist/esm/global.css +22 -1
  109. package/dist/esm/graphicLayer/BaseEntity.js +1 -51
  110. package/dist/esm/graphicLayer/BaseLayer.js +1 -730
  111. package/dist/esm/graphicLayer/BasePointPrimitive.js +1 -45
  112. package/dist/esm/graphicLayer/BasePrimitive.js +1 -36
  113. package/dist/esm/graphicLayer/BasePrimitiveInstance.js +1 -37
  114. package/dist/esm/graphicLayer/BaseSource.d.ts +1 -1
  115. package/dist/esm/graphicLayer/BaseSource.js +1 -630
  116. package/dist/esm/graphicLayer/BillboardEntity.js +1 -106
  117. package/dist/esm/graphicLayer/BillboardPrimitive.js +1 -119
  118. package/dist/esm/graphicLayer/BoxEntity.js +1 -99
  119. package/dist/esm/graphicLayer/BoxPrimitive.js +1 -48
  120. package/dist/esm/graphicLayer/BoxPrimitiveInstance.js +1 -91
  121. package/dist/esm/graphicLayer/EllipseEntity.js +1 -110
  122. package/dist/esm/graphicLayer/EllipsePrimitive.js +1 -47
  123. package/dist/esm/graphicLayer/EllipsePrimitiveInstance.js +1 -98
  124. package/dist/esm/graphicLayer/EllipsoidEntity.js +1 -118
  125. package/dist/esm/graphicLayer/EllipsoidPrimitive.js +1 -48
  126. package/dist/esm/graphicLayer/EllipsoidPrimitiveInstance.js +1 -113
  127. package/dist/esm/graphicLayer/GraphicLayerCollection.js +1 -491
  128. package/dist/esm/graphicLayer/HtmlEntity.d.ts +4 -0
  129. package/dist/esm/graphicLayer/HtmlEntity.js +1 -189
  130. package/dist/esm/graphicLayer/LabelEntity.js +1 -110
  131. package/dist/esm/graphicLayer/LabelPrimitive.js +1 -127
  132. package/dist/esm/graphicLayer/ModelEntity.js +1 -122
  133. package/dist/esm/graphicLayer/ModelPrimitive.js +1 -59
  134. package/dist/esm/graphicLayer/ModelPrimitiveInstance.js +1 -86
  135. package/dist/esm/graphicLayer/PointEntity.js +1 -94
  136. package/dist/esm/graphicLayer/PointPrimitive.js +1 -107
  137. package/dist/esm/graphicLayer/PolygonEntity.js +1 -103
  138. package/dist/esm/graphicLayer/PolygonGroundPrimitive.js +1 -49
  139. package/dist/esm/graphicLayer/PolygonGroundPrimitiveImageMaterialInstance.js +1 -87
  140. package/dist/esm/graphicLayer/PolygonPrimitive.js +1 -60
  141. package/dist/esm/graphicLayer/PolygonPrimitiveImageMaterialInstance.js +1 -84
  142. package/dist/esm/graphicLayer/PolygonPrimitiveInstance.js +1 -101
  143. package/dist/esm/graphicLayer/PolylineEntity.js +1 -96
  144. package/dist/esm/graphicLayer/PolylineGroundPrimitive.js +1 -55
  145. package/dist/esm/graphicLayer/PolylineGroundPrimitiveInstance.js +1 -85
  146. package/dist/esm/graphicLayer/PolylinePrimitive.js +1 -53
  147. package/dist/esm/graphicLayer/PolylinePrimitiveInstance.js +1 -85
  148. package/dist/esm/graphicLayer/PolylineVolumeEntity.js +1 -105
  149. package/dist/esm/graphicLayer/PolylineVolumePrimitive.js +1 -47
  150. package/dist/esm/graphicLayer/PolylineVolumePrimitiveInstance.js +1 -94
  151. package/dist/esm/graphicLayer/WallEntity.js +1 -96
  152. package/dist/esm/graphicLayer/WallPrimitive.js +1 -47
  153. package/dist/esm/graphicLayer/WallPrimitiveInstance.js +1 -88
  154. package/dist/esm/index.d.ts +4 -0
  155. package/dist/esm/index.js +1 -175
  156. package/dist/esm/lowAltitude/BarrierLayer.js +1 -172
  157. package/dist/esm/lowAltitude/BaseGridMvtLayer.js +1 -122
  158. package/dist/esm/lowAltitude/FactorLayer.js +1 -199
  159. package/dist/esm/lowAltitude/FlightPlanning.js +1 -411
  160. package/dist/esm/lowAltitude/FlightRiskEvaluation.js +1 -543
  161. package/dist/esm/lowAltitude/GridDraw.js +1 -137
  162. package/dist/esm/lowAltitude/PoiLayer.js +1 -74
  163. package/dist/esm/lowAltitude/RoutePlanning.js +1 -318
  164. package/dist/esm/lowAltitude/VisitLayer.js +1 -180
  165. package/dist/esm/map/Event.js +1 -377
  166. package/dist/esm/map/GroundSkyBox.js +1 -166
  167. package/dist/esm/map/Map.js +1 -881
  168. package/dist/esm/map/Property.js +1 -35
  169. package/dist/esm/material/AtmosphericDispersion.js +1 -569
  170. package/dist/esm/material/GlobalVolumetricCloud.js +1 -377
  171. package/dist/esm/material/VolumeCloud.js +1 -115
  172. package/dist/esm/material/WeatherEffects.js +1 -351
  173. package/dist/esm/material/entity/BaseMaterialProperty.js +1 -51
  174. package/dist/esm/material/entity/CircleWaveMaterialProperty.js +1 -101
  175. package/dist/esm/material/entity/DynamicWallMaterialProperty.js +1 -101
  176. package/dist/esm/material/entity/ImageGlowingMaterialProperty.js +1 -89
  177. package/dist/esm/material/entity/ImageMaterialProperty.js +1 -34
  178. package/dist/esm/material/entity/PolylineTrailLinkMaterialProperty.js +1 -132
  179. package/dist/esm/material/primitive/BaseMaterialAppearance.js +1 -28
  180. package/dist/esm/material/primitive/ImageGlowingMaterialAppearance.js +1 -77
  181. package/dist/esm/material/primitive/ImageMaterialAppearance.js +1 -77
  182. package/dist/esm/measure/Area.js +1 -220
  183. package/dist/esm/measure/BaseDraw.js +1 -105
  184. package/dist/esm/measure/Distance.js +1 -223
  185. package/dist/esm/measure/index.js +1 -266
  186. package/dist/esm/measure/types.js +1 -17
  187. package/dist/esm/measure/utils.js +1 -319
  188. package/dist/esm/particle/BaseParticle.js +1 -196
  189. package/dist/esm/particle/FireParticle.js +1 -65
  190. package/dist/esm/particle/FountainParticle.js +1 -80
  191. package/dist/esm/particle/SmokeParticle.js +1 -65
  192. package/dist/esm/particle/common.js +1 -23
  193. package/dist/esm/particle/index.js +1 -5
  194. package/dist/esm/property/PositionProperty.js +1 -56
  195. package/dist/esm/tileLayer/ArcGisLayer.js +1 -41
  196. package/dist/esm/tileLayer/CustomRasterClipWorkerClient.js +1 -147
  197. package/dist/esm/tileLayer/CustomRasterLayer.js +1 -1136
  198. package/dist/esm/tileLayer/ImageryLayer.js +1 -44
  199. package/dist/esm/tileLayer/MvtVectorLoad.js +1 -1549
  200. package/dist/esm/tileLayer/MvtVectorWorkerClient.js +1 -126
  201. package/dist/esm/tileLayer/RasterLayer.js +1 -23
  202. package/dist/esm/tileLayer/WmsLayer.js +1 -26
  203. package/dist/esm/tileLayer/WmtsLayer.js +1 -23
  204. package/dist/esm/tool/BuildClampedPolygonGrid.js +1 -278
  205. package/dist/esm/tool/Compass.js +1 -282
  206. package/dist/esm/tool/PrimitiveCluster.js +1 -706
  207. package/dist/esm/tool/TimerInterval.js +1 -58
  208. package/dist/esm/tool/common.js +1 -405
  209. package/dist/esm/tool/fetch.js +1 -222
  210. package/dist/esm/tool/heatmap.js +1 -631
  211. package/dist/esm/tool/utils.d.ts +1 -0
  212. package/dist/esm/tool/utils.js +1 -501
  213. package/dist/esm/toolTip/index.js +1 -79
  214. package/dist/esm/videoFusion/BaseVideo.d.ts +7 -0
  215. package/dist/esm/videoFusion/BaseVideo.js +1 -330
  216. package/dist/esm/videoFusion/VideoProject.js +1 -230
  217. package/dist/esm/videoFusion/VideoTexture.js +1 -163
  218. package/dist/esm/visualization/BaseHeatmap.js +1 -271
  219. package/dist/esm/visualization/BoundaryHighlight.d.ts +136 -0
  220. package/dist/esm/visualization/BoundaryHighlight.js +1 -0
  221. package/dist/esm/visualization/DynamicWater.js +1 -289
  222. package/dist/esm/visualization/Frustum.js +1 -248
  223. package/dist/esm/visualization/Heatmap2d.js +1 -97
  224. package/dist/esm/visualization/Heatmap3d.js +1 -281
  225. package/dist/esm/visualization/MigrationEffect.js +1 -397
  226. package/dist/esm/visualization/PointCluster.js +1 -220
  227. package/dist/esm/visualization/RadarScan.js +1 -333
  228. package/dist/esm/visualization/SampledTerrainRiver.d.ts +180 -0
  229. package/dist/esm/visualization/SampledTerrainRiver.js +1 -0
  230. package/dist/esm/visualization/SampledTerrainWater.d.ts +170 -0
  231. package/dist/esm/visualization/SampledTerrainWater.js +1 -0
  232. package/dist/esm/visualization/WindField.d.ts +72 -0
  233. package/dist/esm/visualization/WindField.js +1 -0
  234. package/dist/esm/visualization/windCore.d.ts +161 -0
  235. package/dist/esm/visualization/windCore.js +8 -0
  236. package/dist/umd/deeptwins-engine-3d.min.css +1 -1
  237. package/dist/umd/deeptwins-engine-3d.min.js +1 -1
  238. package/package.json +6 -4
@@ -1,688 +1 @@
1
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
5
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
6
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
7
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
8
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
9
- function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
- import { featureEach } from '@turf/turf';
11
- import * as Cesium from 'deeptwins-cesium';
12
- import { isString, merge } from 'lodash';
13
- import { DEFAULT_DRAWER_OPTIONS, LAYER_EVENT_TYPE } from "../constant";
14
- import BaseSource from "../graphicLayer/BaseSource";
15
- import * as utils from "../tool/utils";
16
- import ToolTip from "../toolTip/index";
17
- import Assemble from "./shape/Assemble";
18
- import AttackArrow from "./shape/AttackArrow";
19
- import Bow from "./shape/Bow";
20
- import Circle from "./shape/Circle";
21
- import Curve from "./shape/Curve";
22
- import Elliptic from "./shape/Elliptic";
23
- import Formation from "./shape/Formation";
24
- import PincerArrow from "./shape/PincerArrow";
25
- import Point from "./shape/Point";
26
- import Polygon from "./shape/Polygon";
27
- import Polyline from "./shape/Polyline";
28
- import RegularPolygon from "./shape/RegularPolygon";
29
- import RightAngleArrow from "./shape/RightAngleArrow";
30
- import Sector from "./shape/Sector";
31
- import StraightArrow from "./shape/StraightArrow";
32
- import SwallowtailArrow from "./shape/SwallowtailArrow";
33
- import { STATUS } from "./types";
34
- import { getDrawerRestoreItems, getSectorRestoreAnchors } from "./utils";
35
-
36
- // 根据类型相应的实现类
37
- var DYNAMIC_GRAPHICS_TYPE = {
38
- point: Point,
39
- polyline: Polyline,
40
- polygon: Polygon,
41
- assemble: Assemble,
42
- attackArrow: AttackArrow,
43
- bow: Bow,
44
- curve: Curve,
45
- elliptic: Elliptic,
46
- formation: Formation,
47
- pincerArrow: PincerArrow,
48
- rightAngleArrow: RightAngleArrow,
49
- sector: Sector,
50
- straightArrow: StraightArrow,
51
- swallowtailArrow: SwallowtailArrow,
52
- circle: Circle,
53
- regularPolygon: RegularPolygon
54
- };
55
-
56
- // 支持多点绘制的形状类型表
57
- export var MULTI_POINT_SHAPE_TYPES = {
58
- POLYLINE: 'polyline',
59
- POLYGON: 'polygon',
60
- ATTACK_ARROW: 'attackArrow',
61
- CURVE: 'curve',
62
- PINCER_ARROW: 'pincerArrow',
63
- SECTOR: 'sector'
64
- };
65
-
66
- // 支持多点绘制的形状类型数组
67
- export var MULTI_POINT_SHAPES = Object.values(MULTI_POINT_SHAPE_TYPES);
68
-
69
- // 通过两个控制点完成绘制的形状类型。
70
- var TWO_POINT_SHAPE_TYPES = {
71
- CIRCLE: 'circle',
72
- REGULAR_POLYGON: 'regularPolygon',
73
- ASSEMBLE: 'assemble',
74
- BOW: 'bow',
75
- ELLIPTIC: 'elliptic',
76
- FORMATION: 'formation',
77
- RIGHT_ANGLE_ARROW: 'rightAngleArrow',
78
- STRAIGHT_ARROW: 'straightArrow',
79
- SWALLOWTAIL_ARROW: 'swallowtailArrow'
80
- };
81
- var TWO_POINT_SHAPES = Object.values(TWO_POINT_SHAPE_TYPES);
82
- var Drawer = /*#__PURE__*/function () {
83
- function Drawer(map) {
84
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
85
- _classCallCheck(this, Drawer);
86
- _defineProperty(this, "_mapContext", void 0);
87
- _defineProperty(this, "_drawContext", void 0);
88
- _defineProperty(this, "options", void 0);
89
- _defineProperty(this, "tooltip", void 0);
90
- _defineProperty(this, "isDestroyed", false);
91
- _defineProperty(this, "_status", STATUS.INIT);
92
- // 拖动中
93
- _defineProperty(this, "_dragging", false);
94
- _defineProperty(this, "_eventLeftDown", void 0);
95
- _defineProperty(this, "_eventLeftUp", void 0);
96
- _defineProperty(this, "_eventClick", void 0);
97
- _defineProperty(this, "_eventMove", void 0);
98
- _defineProperty(this, "_eventDoubleClick", void 0);
99
- _defineProperty(this, "_eventRightClick", void 0);
100
- // 绘制的图形实例
101
- _defineProperty(this, "_instance", void 0);
102
- // 绘制完成的图层
103
- _defineProperty(this, "_drawLayers", new Map());
104
- this._mapContext = map._mapContext;
105
- this.options = merge(DEFAULT_DRAWER_OPTIONS(), options);
106
- this.tooltip = new ToolTip(this.getMap());
107
- this.tooltip.show(false);
108
- this._destroyListeners();
109
- this._createListeners();
110
- this._drawContext = {
111
- options: this.options,
112
- getMap: this.getMap.bind(this),
113
- setDrawerLayer: this.setDrawerLayer.bind(this),
114
- _changeStatus: this._changeStatus.bind(this),
115
- _updateTooltip: this._updateTooltip.bind(this)
116
- };
117
- }
118
- _createClass(Drawer, [{
119
- key: "_resetInteractionState",
120
- value: function _resetInteractionState() {
121
- this._dragging = false;
122
- var map = this.getMap();
123
- if (!map) {
124
- return;
125
- }
126
- if (typeof map.isDestroyed === 'function' && map.isDestroyed()) {
127
- return;
128
- }
129
- map.canvas.style.cursor = 'default';
130
- map.scene.screenSpaceCameraController.enableRotate = true;
131
- }
132
-
133
- // 是否能进行操作
134
- }, {
135
- key: "_canOperate",
136
- value: function _canOperate() {
137
- if (this.isDestroyed) {
138
- utils.error('Drawer实例已销毁');
139
- return false;
140
- }
141
- return true;
142
- }
143
- }, {
144
- key: "getMap",
145
- value: function getMap() {
146
- return this._mapContext && this._mapContext.getMap();
147
- }
148
-
149
- // 是否是拖拽点
150
- }, {
151
- key: "_isDragPoint",
152
- value: function _isDragPoint(e) {
153
- var _this$_instance$dragP, _this$_instance$edges;
154
- // 拖拽点图层
155
- var dragPoint = (_this$_instance$dragP = this._instance.dragPoints) === null || _this$_instance$dragP === void 0 ? void 0 : _this$_instance$dragP.find(function (point) {
156
- var _point$layer, _e$pickedObject;
157
- return ((_point$layer = point.layer) === null || _point$layer === void 0 || (_point$layer = _point$layer.layers) === null || _point$layer === void 0 || (_point$layer = _point$layer[0]) === null || _point$layer === void 0 ? void 0 : _point$layer.id) === (e === null || e === void 0 || (_e$pickedObject = e.pickedObject) === null || _e$pickedObject === void 0 || (_e$pickedObject = _e$pickedObject.id) === null || _e$pickedObject === void 0 ? void 0 : _e$pickedObject.id);
158
- });
159
- // 中间点图层
160
- var middlePoint = (_this$_instance$edges = this._instance.edges) === null || _this$_instance$edges === void 0 || (_this$_instance$edges = _this$_instance$edges.find(function (t) {
161
- var _t$middlePoint, _e$pickedObject2;
162
- return (t === null || t === void 0 || (_t$middlePoint = t.middlePoint) === null || _t$middlePoint === void 0 || (_t$middlePoint = _t$middlePoint.layer) === null || _t$middlePoint === void 0 || (_t$middlePoint = _t$middlePoint.layers) === null || _t$middlePoint === void 0 || (_t$middlePoint = _t$middlePoint[0]) === null || _t$middlePoint === void 0 ? void 0 : _t$middlePoint.id) === (e === null || e === void 0 || (_e$pickedObject2 = e.pickedObject) === null || _e$pickedObject2 === void 0 || (_e$pickedObject2 = _e$pickedObject2.id) === null || _e$pickedObject2 === void 0 ? void 0 : _e$pickedObject2.id);
163
- })) === null || _this$_instance$edges === void 0 ? void 0 : _this$_instance$edges.middlePoint;
164
- return dragPoint || middlePoint;
165
- }
166
-
167
- // 创建监听事件
168
- }, {
169
- key: "_createListeners",
170
- value: function _createListeners() {
171
- var _this = this;
172
- // 鼠标按下
173
- this._eventLeftDown = this.getMap().on(Cesium.ScreenSpaceEventType.LEFT_DOWN, function (e) {
174
- if (!_this._instance) return;
175
- if (_this._status !== STATUS.EDITING) return;
176
- var dragPoint = _this._isDragPoint(e);
177
- if (dragPoint) {
178
- _this._dragging = true;
179
- _this._instance.mouseDragStart(e.position, dragPoint);
180
- // 禁用相机拖拽(避免和点拖拽冲突)
181
- _this.getMap().scene.screenSpaceCameraController.enableRotate = false;
182
- }
183
- });
184
- // 鼠标抬起
185
- this._eventLeftUp = this.getMap().on(LAYER_EVENT_TYPE.LEFT_UP, function (e) {
186
- if (!_this._instance) return;
187
- if (_this._dragging) {
188
- _this._instance.mouseDragEnd(e.position);
189
- _this._resetInteractionState();
190
- }
191
- });
192
- // 鼠标点击
193
- this._eventClick = this.getMap().on(Cesium.ScreenSpaceEventType.LEFT_CLICK, function (e) {
194
- if (!_this._instance) return;
195
- if (_this._status !== STATUS.START_DRAW && _this._status !== STATUS.DRAWING) return;
196
- // 添加点
197
- _this._instance.addPoint(e.position);
198
- });
199
- // 鼠标移动
200
- this._eventMove = this.getMap().on(Cesium.ScreenSpaceEventType.MOUSE_MOVE, function (e) {
201
- if (!_this._instance) return;
202
- // 绘制
203
- if (_this._status === STATUS.START_DRAW || _this._status === STATUS.DRAWING) {
204
- if (MULTI_POINT_SHAPES.includes(_this._instance.type) || TWO_POINT_SHAPES.includes(_this._instance.type)) {
205
- _this._instance.updateTempPosition(e.position);
206
- }
207
- }
208
- // 编辑
209
- if (_this._status === STATUS.EDITING) {
210
- var dragPoint = _this._isDragPoint(e);
211
- if (dragPoint) {
212
- _this.getMap().canvas.style.cursor = 'pointer';
213
- } else {
214
- _this.getMap().canvas.style.cursor = 'default';
215
- }
216
- if (_this._dragging) {
217
- _this._instance.mouseDragChange(e.position, dragPoint);
218
- }
219
- }
220
- });
221
- // 鼠标双击
222
- this._eventDoubleClick = this.getMap().on(Cesium.ScreenSpaceEventType.LEFT_DOUBLE_CLICK, function () {
223
- if (!_this._instance) return;
224
- if (_this._status !== STATUS.START_DRAW && _this._status !== STATUS.DRAWING) return;
225
- if (MULTI_POINT_SHAPES.includes(_this._instance.type)) {
226
- _this._instance.endDraw();
227
- }
228
- });
229
- // 鼠标右键
230
- this._eventRightClick = this.getMap().on(Cesium.ScreenSpaceEventType.RIGHT_CLICK, function () {
231
- if (!_this._instance) return;
232
- if (_this._status !== STATUS.START_DRAW && _this._status !== STATUS.DRAWING) return;
233
- if (MULTI_POINT_SHAPES.includes(_this._instance.type)) {
234
- _this._instance.removePrev();
235
- }
236
- });
237
- }
238
-
239
- // 销毁监听事件
240
- }, {
241
- key: "_destroyListeners",
242
- value: function _destroyListeners() {
243
- this._eventLeftDown && this._eventLeftDown.off();
244
- this._eventLeftDown = null;
245
- this._eventLeftUp && this._eventLeftUp.off();
246
- this._eventLeftUp = null;
247
- this._eventClick && this._eventClick.off();
248
- this._eventClick = null;
249
- this._eventMove && this._eventMove.off();
250
- this._eventMove = null;
251
- this._eventDoubleClick && this._eventDoubleClick.off();
252
- this._eventDoubleClick = null;
253
- this._eventRightClick && this._eventRightClick.off();
254
- this._eventRightClick = null;
255
- }
256
-
257
- // 更新提示
258
- }, {
259
- key: "_updateTooltip",
260
- value: function _updateTooltip() {
261
- if (!this._canOperate()) return;
262
- if (this._status === STATUS.START_DRAW) {
263
- var _this$_instance;
264
- var shapeType = (_this$_instance = this._instance) === null || _this$_instance === void 0 ? void 0 : _this$_instance.type;
265
- this.tooltip.setOptions({
266
- text: shapeType === 'circle' || shapeType === 'regularPolygon' || shapeType === 'elliptic' ? '点击确定中心点' : shapeType === 'assemble' || shapeType === 'bow' || shapeType === 'formation' || shapeType === 'rightAngleArrow' || shapeType === 'straightArrow' || shapeType === 'swallowtailArrow' ? '点击确定起点' : '点击开始绘制'
267
- });
268
- this.tooltip.show(true);
269
- } else if (this._status === STATUS.DRAWING) {
270
- var _this$_instance2;
271
- var _shapeType = (_this$_instance2 = this._instance) === null || _this$_instance2 === void 0 ? void 0 : _this$_instance2.type;
272
- this.tooltip.setOptions({
273
- text: _shapeType === 'circle' || _shapeType === 'regularPolygon' ? '移动鼠标调整半径,左键完成绘制' : _shapeType === 'elliptic' ? '移动鼠标调整长轴,左键完成绘制' : _shapeType === 'assemble' ? '移动鼠标调整集结地形状,左键完成绘制' : _shapeType === 'bow' ? '移动鼠标调整弓形,左键完成绘制' : _shapeType === 'formation' ? '移动鼠标调整阵型,左键完成绘制' : _shapeType === 'rightAngleArrow' ? '移动鼠标调整直角箭头,左键完成绘制' : _shapeType === 'straightArrow' ? '移动鼠标调整直线箭头,左键完成绘制' : _shapeType === 'swallowtailArrow' ? '移动鼠标调整燕尾箭头,左键完成绘制' : '左键添加点,右键移除点,双击结束绘制'
274
- });
275
- } else {
276
- this.tooltip.show(false);
277
- }
278
- }
279
-
280
- // 修改状态
281
- }, {
282
- key: "_changeStatus",
283
- value: function _changeStatus(status) {
284
- this._status = status;
285
- }
286
- }, {
287
- key: "_createRestoreLayer",
288
- value: function _createRestoreLayer(shapeType, positions) {
289
- var config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
290
- var restoreConfig = config;
291
- if (shapeType === 'circle') {
292
- var hasCenter = Array.isArray(config === null || config === void 0 ? void 0 : config.center) && config.center.length >= 2;
293
- if (!hasCenter) {
294
- utils.warn('还原circle时必须显式传入center,当前已回退为普通polygon');
295
- var _fallbackLayer = new Polygon(this._drawContext, config);
296
- _fallbackLayer.transformData(positions);
297
- return _fallbackLayer;
298
- }
299
- }
300
- if (shapeType === 'regularPolygon') {
301
- var restoreSides = Number(config === null || config === void 0 ? void 0 : config.sides);
302
- var _hasCenter = Array.isArray(config === null || config === void 0 ? void 0 : config.center) && config.center.length >= 2;
303
- if (!_hasCenter || !Number.isFinite(restoreSides)) {
304
- utils.warn('还原regularPolygon时必须显式传入center和sides,当前已回退为普通polygon');
305
- var _fallbackLayer2 = new Polygon(this._drawContext, config);
306
- _fallbackLayer2.transformData(positions);
307
- return _fallbackLayer2;
308
- }
309
- }
310
- if (shapeType === 'assemble') {
311
- var anchors = config === null || config === void 0 ? void 0 : config.anchors;
312
- var hasAnchors = Array.isArray(anchors) && anchors.length >= 2 && anchors[0] && anchors[1];
313
- if (!hasAnchors) {
314
- utils.warn('还原assemble时必须显式传入anchors(>=2),当前已回退为普通polygon');
315
- var _fallbackLayer3 = new Polygon(this._drawContext, config);
316
- _fallbackLayer3.transformData(positions);
317
- return _fallbackLayer3;
318
- }
319
- }
320
- if (shapeType === 'attackArrow') {
321
- var _anchors = config === null || config === void 0 ? void 0 : config.anchors;
322
- var _hasAnchors = Array.isArray(_anchors) && _anchors.length >= 3;
323
- if (!_hasAnchors) {
324
- utils.warn('还原attackArrow时必须显式传入anchors(>=3),当前已回退为普通polygon');
325
- var _fallbackLayer4 = new Polygon(this._drawContext, config);
326
- _fallbackLayer4.transformData(positions);
327
- return _fallbackLayer4;
328
- }
329
- }
330
- if (shapeType === 'pincerArrow') {
331
- var _anchors2 = config === null || config === void 0 ? void 0 : config.anchors;
332
- var _hasAnchors2 = Array.isArray(_anchors2) && _anchors2.length >= 3;
333
- if (!_hasAnchors2) {
334
- utils.warn('还原pincerArrow时必须显式传入anchors(>=3),当前已回退为普通polygon');
335
- var _fallbackLayer5 = new Polygon(this._drawContext, config);
336
- _fallbackLayer5.transformData(positions);
337
- return _fallbackLayer5;
338
- }
339
- }
340
- if (shapeType === 'bow') {
341
- var _anchors3 = config === null || config === void 0 ? void 0 : config.anchors;
342
- var _hasAnchors3 = Array.isArray(_anchors3) && _anchors3.length >= 2 && _anchors3[0] && _anchors3[1];
343
- if (!_hasAnchors3) {
344
- utils.warn('还原bow时必须显式传入anchors(>=2),当前已回退为普通polyline');
345
- var _fallbackLayer6 = new Polyline(this._drawContext, config);
346
- _fallbackLayer6.transformData(positions);
347
- return _fallbackLayer6;
348
- }
349
- }
350
- if (shapeType === 'curve') {
351
- var _anchors4 = config === null || config === void 0 ? void 0 : config.anchors;
352
- var _hasAnchors4 = Array.isArray(_anchors4) && _anchors4.length >= 2;
353
- if (!_hasAnchors4) {
354
- utils.warn('还原curve时必须显式传入anchors(>=2),当前已回退为普通polyline');
355
- var _fallbackLayer7 = new Polyline(this._drawContext, config);
356
- _fallbackLayer7.transformData(positions);
357
- return _fallbackLayer7;
358
- }
359
- }
360
- if (shapeType === 'elliptic') {
361
- var _anchors5 = config === null || config === void 0 ? void 0 : config.anchors;
362
- var _hasAnchors5 = Array.isArray(_anchors5) && _anchors5.length >= 2;
363
- if (!_hasAnchors5) {
364
- utils.warn('还原elliptic时必须显式传入anchors(>=2),当前已回退为普通polygon');
365
- var _fallbackLayer8 = new Polygon(this._drawContext, config);
366
- _fallbackLayer8.transformData(positions);
367
- return _fallbackLayer8;
368
- }
369
- }
370
- if (shapeType === 'rightAngleArrow') {
371
- var _anchors6 = config === null || config === void 0 ? void 0 : config.anchors;
372
- var _hasAnchors6 = Array.isArray(_anchors6) && _anchors6.length >= 2 && _anchors6[0] && _anchors6[1];
373
- if (!_hasAnchors6) {
374
- utils.warn('还原rightAngleArrow时必须显式传入anchors(>=2),当前已回退为普通polygon');
375
- var _fallbackLayer9 = new Polygon(this._drawContext, config);
376
- _fallbackLayer9.transformData(positions);
377
- return _fallbackLayer9;
378
- }
379
- }
380
- if (shapeType === 'sector') {
381
- var _restoreConfig;
382
- var _anchors7 = (_restoreConfig = restoreConfig) === null || _restoreConfig === void 0 ? void 0 : _restoreConfig.anchors;
383
- var _hasAnchors7 = Array.isArray(_anchors7) && _anchors7.length >= 3;
384
- if (!_hasAnchors7) {
385
- var inferredAnchors = getSectorRestoreAnchors(positions);
386
- if (inferredAnchors) {
387
- restoreConfig = _objectSpread(_objectSpread({}, restoreConfig), {}, {
388
- anchors: inferredAnchors
389
- });
390
- } else {
391
- utils.warn('还原sector时无法从已有 polygon 自动推导 anchors(>=3),当前已回退为普通polygon');
392
- var _fallbackLayer10 = new Polygon(this._drawContext, restoreConfig);
393
- _fallbackLayer10.transformData(positions);
394
- return _fallbackLayer10;
395
- }
396
- }
397
- }
398
- if (shapeType === 'straightArrow') {
399
- var _anchors8 = config === null || config === void 0 ? void 0 : config.anchors;
400
- var _hasAnchors8 = Array.isArray(_anchors8) && _anchors8.length >= 2 && _anchors8[0] && _anchors8[1];
401
- if (!_hasAnchors8) {
402
- utils.warn('还原straightArrow时必须显式传入anchors(>=2),当前已回退为普通polygon');
403
- var _fallbackLayer11 = new Polygon(this._drawContext, config);
404
- _fallbackLayer11.transformData(positions);
405
- return _fallbackLayer11;
406
- }
407
- }
408
- if (shapeType === 'swallowtailArrow') {
409
- var _anchors9 = config === null || config === void 0 ? void 0 : config.anchors;
410
- var _hasAnchors9 = Array.isArray(_anchors9) && _anchors9.length >= 2 && _anchors9[0] && _anchors9[1];
411
- if (!_hasAnchors9) {
412
- utils.warn('还原swallowtailArrow时必须显式传入anchors(>=2),当前已回退为普通polygon');
413
- var _fallbackLayer12 = new Polygon(this._drawContext, config);
414
- _fallbackLayer12.transformData(positions);
415
- return _fallbackLayer12;
416
- }
417
- }
418
- if (shapeType === 'formation') {
419
- var _anchors10 = config === null || config === void 0 ? void 0 : config.anchors;
420
- var _hasAnchors10 = Array.isArray(_anchors10) && _anchors10.length >= 2;
421
- if (!_hasAnchors10) {
422
- utils.warn('还原formation时必须显式传入anchors(>=2),当前已回退为普通polyline');
423
- var _fallbackLayer13 = new Polyline(this._drawContext, config);
424
- _fallbackLayer13.transformData(positions);
425
- return _fallbackLayer13;
426
- }
427
- }
428
- var shapeClass = DYNAMIC_GRAPHICS_TYPE[shapeType];
429
- if (!shapeClass) {
430
- return;
431
- }
432
- var layer = new shapeClass(this._drawContext, restoreConfig);
433
- var transformResult = layer.transformData(positions, restoreConfig);
434
- if (transformResult !== false) {
435
- return layer;
436
- }
437
- if (shapeType !== 'circle' && shapeType !== 'regularPolygon' && shapeType !== 'assemble' && shapeType !== 'attackArrow' && shapeType !== 'bow' && shapeType !== 'curve' && shapeType !== 'elliptic' && shapeType !== 'pincerArrow' && shapeType !== 'rightAngleArrow' && shapeType !== 'sector' && shapeType !== 'straightArrow' && shapeType !== 'swallowtailArrow' && shapeType !== 'formation') {
438
- return;
439
- }
440
- if (shapeType === 'bow' || shapeType === 'curve' || shapeType === 'formation') {
441
- var _fallbackLayer14 = new Polyline(this._drawContext, restoreConfig);
442
- _fallbackLayer14.transformData(positions);
443
- return _fallbackLayer14;
444
- }
445
- var fallbackLayer = new Polygon(this._drawContext, restoreConfig);
446
- fallbackLayer.transformData(positions);
447
- return fallbackLayer;
448
- }
449
-
450
- // 转化为绘制类型
451
- }, {
452
- key: "dataTransformDraw",
453
- value: function dataTransformDraw(data) {
454
- var _this2 = this;
455
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
456
- var dataType = BaseSource.analysisSourceType(data);
457
- var transformGeoJson;
458
- if (dataType === 'wkt') {
459
- transformGeoJson = BaseSource.wktToGeoJon(data);
460
- } else if (dataType === 'geoJson') {
461
- transformGeoJson = data;
462
- }
463
- if (!transformGeoJson) return;
464
- var layers = [];
465
- featureEach(transformGeoJson, function (feature) {
466
- var restoreItems = getDrawerRestoreItems(feature, options);
467
- restoreItems.forEach(function (item) {
468
- var layer = _this2._createRestoreLayer(item.shapeType, item.positions, item.config);
469
- layer && layers.push(layer);
470
- });
471
- });
472
- return layers;
473
- }
474
-
475
- // 开始绘制
476
- }, {
477
- key: "startDraw",
478
- value: function startDraw(type) {
479
- var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
480
- if (!this._canOperate()) return;
481
- var shapeClass = DYNAMIC_GRAPHICS_TYPE[type];
482
- if (!shapeClass) return;
483
- if (this._instance) {
484
- this._stopDraw();
485
- }
486
- this._changeStatus(STATUS.START_DRAW);
487
- this.getMap().canvas.style.cursor = 'crosshair';
488
- this._updateTooltip();
489
- this._instance = new shapeClass(this._drawContext, config);
490
- return this._instance;
491
- }
492
-
493
- // 中止当前绘制
494
- }, {
495
- key: "_stopDraw",
496
- value: function _stopDraw() {
497
- if (!this._canOperate()) return;
498
- if (!this._instance) return;
499
- if (this._status === STATUS.INIT || this._status === STATUS.START_DRAW || this._status === STATUS.END_EDIT) {
500
- var layer = this._drawLayers.get(this._instance.id);
501
- // layer未存入
502
- if (!layer) {
503
- this._instance.destroy();
504
- }
505
- this._resetInteractionState();
506
- this._changeStatus(STATUS.INIT);
507
- this._updateTooltip();
508
- this._instance = null;
509
- return;
510
- }
511
- if (this._status === STATUS.DRAWING) {
512
- this.removeDrawerLayer(this._instance);
513
- return;
514
- }
515
- if (this._status === STATUS.END_DRAW || this._status === STATUS.EDITING) {
516
- this._resetInteractionState();
517
- this._instance.endEdit(this._instance, false);
518
- this.setDrawerLayer(this._instance.id, this._instance);
519
- this._instance = null;
520
- this._changeStatus(STATUS.INIT);
521
- this._updateTooltip();
522
- return;
523
- }
524
- }
525
-
526
- // 开始编辑
527
- }, {
528
- key: "startEdit",
529
- value: function startEdit(id) {
530
- if (!this._canOperate()) return;
531
- if (!id) return;
532
- if (this._instance) {
533
- if (this._status === STATUS.EDITING || this._status === STATUS.END_DRAW) {
534
- this._resetInteractionState();
535
- this._instance.endEdit(this._instance, false);
536
- this.setDrawerLayer(this._instance.id, this._instance);
537
- this._instance = null;
538
- } else {
539
- this._stopDraw();
540
- }
541
- }
542
- var layer = this.getDrawerLayer(id);
543
- if (!layer) return;
544
- this._instance = layer;
545
- this._changeStatus(STATUS.EDITING);
546
- this._updateTooltip();
547
- this._instance.startEdit();
548
- }
549
-
550
- // 结束编辑
551
- }, {
552
- key: "endEdit",
553
- value: function endEdit() {
554
- if (!this._canOperate()) return;
555
- this._resetInteractionState();
556
- this._changeStatus(STATUS.END_EDIT);
557
- this._updateTooltip();
558
- if (!this._instance) return;
559
- this._instance.endEdit(this._instance);
560
- this.setDrawerLayer(this._instance.id, this._instance);
561
- this._instance = null;
562
- }
563
-
564
- // 获取绘制的图层
565
- }, {
566
- key: "getDrawerLayer",
567
- value: function getDrawerLayer(id) {
568
- if (!this._canOperate()) return;
569
- if (!id) return;
570
- if (isString(id)) {
571
- return this._drawLayers.get(id);
572
- }
573
- return id && _typeof(id) === 'object' && 'id' in id ? id : undefined;
574
- }
575
-
576
- // 添加完成绘制的图层
577
- }, {
578
- key: "setDrawerLayer",
579
- value: function setDrawerLayer(id, value) {
580
- if (!this._canOperate()) return;
581
- if (!id || !value) return;
582
- this._drawLayers.set(id, value);
583
- }
584
-
585
- // 移除绘制的图层
586
- }, {
587
- key: "removeDrawerLayer",
588
- value: function removeDrawerLayer(id) {
589
- if (!this._canOperate()) return;
590
- var layer = this.getDrawerLayer(id);
591
- if (layer) {
592
- var _this$_instance3;
593
- if (layer.id === (this === null || this === void 0 || (_this$_instance3 = this._instance) === null || _this$_instance3 === void 0 ? void 0 : _this$_instance3.id)) {
594
- this._resetInteractionState();
595
- this._instance = null;
596
- this._changeStatus(STATUS.INIT);
597
- this._updateTooltip();
598
- }
599
- this._drawLayers.delete(layer.id);
600
- layer.destroy();
601
- layer = null;
602
- }
603
- }
604
-
605
- // 获取所有绘制的图层
606
- }, {
607
- key: "getAllDrawerLayers",
608
- value: function getAllDrawerLayers() {
609
- if (!this._canOperate()) return;
610
- return Array.from(this._drawLayers.values());
611
- }
612
-
613
- // 清除所有绘制的图层
614
- }, {
615
- key: "clearAllDrawerLayers",
616
- value: function clearAllDrawerLayers() {
617
- var _this3 = this;
618
- if (!this._canOperate()) return;
619
- var layers = Array.from(new Set(this._drawLayers.values()));
620
- this._drawLayers.clear();
621
- layers.forEach(function (t) {
622
- return t.destroy();
623
- });
624
- if (this._instance && !layers.some(function (layer) {
625
- return layer.id === _this3._instance.id;
626
- })) {
627
- return;
628
- }
629
- this._resetInteractionState();
630
- this._instance = null;
631
- this._changeStatus(STATUS.INIT);
632
- this._updateTooltip();
633
- }
634
-
635
- // 清除
636
- }, {
637
- key: "clear",
638
- value: function clear() {
639
- if (!this._canOperate()) return;
640
- this._resetInteractionState();
641
- this._changeStatus(STATUS.INIT);
642
- this._updateTooltip();
643
- if (this._instance) {
644
- this._drawLayers.delete(this._instance.id);
645
- this._instance.destroy();
646
- }
647
- this._instance = null;
648
- this.clearAllDrawerLayers();
649
- }
650
-
651
- // 销毁
652
- }, {
653
- key: "destroy",
654
- value: function destroy() {
655
- if (!this._canOperate()) return;
656
- this._destroyListeners();
657
- this.clear();
658
- this.tooltip.destroy();
659
- this.tooltip = null;
660
- this.isDestroyed = true;
661
- }
662
- }]);
663
- return Drawer;
664
- }();
665
- var getDrawerDrawingTooltipText = function getDrawerDrawingTooltipText(instance) {
666
- if ((instance === null || instance === void 0 ? void 0 : instance.type) !== 'sector') {
667
- return '左键添加点,右键移除点,双击结束绘制';
668
- }
669
- var anchorPositions = Array.isArray(instance === null || instance === void 0 ? void 0 : instance._anchorPositions) ? instance._anchorPositions : [];
670
- return anchorPositions.length >= 2 ? '左键确定终止方向并结束绘制' : '左键确定半径';
671
- };
672
- Drawer.prototype._updateTooltip = function () {
673
- if (!this._canOperate()) return;
674
- if (this._status === STATUS.START_DRAW) {
675
- this.tooltip.setOptions({
676
- text: '点击开始绘制'
677
- });
678
- this.tooltip.show(true);
679
- } else if (this._status === STATUS.DRAWING) {
680
- this.tooltip.setOptions({
681
- text: getDrawerDrawingTooltipText(this._instance)
682
- });
683
- } else {
684
- this.tooltip.show(false);
685
- }
686
- };
687
- export default Drawer;
688
- export { STATUS } from "./types";
1
+ var _0x5df7e2=_0x1268;(function(_0x46c544,_0x3bda04){var _0x52b374=_0x1268,_0x4eef24=_0x46c544();while(!![]){try{var _0x3d73ed=-parseInt(_0x52b374(0x114))/0x1*(parseInt(_0x52b374(0x115))/0x2)+-parseInt(_0x52b374(0xf8))/0x3+-parseInt(_0x52b374(0x13f))/0x4+-parseInt(_0x52b374(0x10c))/0x5+-parseInt(_0x52b374(0x12c))/0x6*(-parseInt(_0x52b374(0x12d))/0x7)+-parseInt(_0x52b374(0x134))/0x8*(parseInt(_0x52b374(0x125))/0x9)+parseInt(_0x52b374(0xfb))/0xa;if(_0x3d73ed===_0x3bda04)break;else _0x4eef24['push'](_0x4eef24['shift']());}catch(_0x3bedf2){_0x4eef24['push'](_0x4eef24['shift']());}}}(_0x38cf,0x33bb5));function _typeof(_0x2dda95){'@babel/helpers - typeof';var _0x29dd43=_0x1268;return _typeof=_0x29dd43(0x14a)==typeof Symbol&&_0x29dd43(0xfe)==typeof Symbol[_0x29dd43(0x148)]?function(_0x194ac3){return typeof _0x194ac3;}:function(_0x1c04e0){return _0x1c04e0&&'function'==typeof Symbol&&_0x1c04e0['constructor']===Symbol&&_0x1c04e0!==Symbol['prototype']?'symbol':typeof _0x1c04e0;},_typeof(_0x2dda95);}function ownKeys(_0x53176c,_0x51274d){var _0x4e883c=_0x1268,_0x253339=Object[_0x4e883c(0x157)](_0x53176c);if(Object[_0x4e883c(0x102)]){var _0x330222=Object[_0x4e883c(0x102)](_0x53176c);_0x51274d&&(_0x330222=_0x330222[_0x4e883c(0x15e)](function(_0x3ed84c){var _0xdb71f1=_0x4e883c;return Object['getOwnPropertyDescriptor'](_0x53176c,_0x3ed84c)[_0xdb71f1(0x129)];})),_0x253339[_0x4e883c(0x10d)]['apply'](_0x253339,_0x330222);}return _0x253339;}function _objectSpread(_0x2d2048){var _0x1d611c=_0x1268;for(var _0x350d42=0x1;_0x350d42<arguments[_0x1d611c(0x104)];_0x350d42++){var _0x36947e=null!=arguments[_0x350d42]?arguments[_0x350d42]:{};_0x350d42%0x2?ownKeys(Object(_0x36947e),!0x0)[_0x1d611c(0xfd)](function(_0x40f388){_defineProperty(_0x2d2048,_0x40f388,_0x36947e[_0x40f388]);}):Object['getOwnPropertyDescriptors']?Object[_0x1d611c(0x172)](_0x2d2048,Object[_0x1d611c(0x130)](_0x36947e)):ownKeys(Object(_0x36947e))[_0x1d611c(0xfd)](function(_0x24d3d1){Object['defineProperty'](_0x2d2048,_0x24d3d1,Object['getOwnPropertyDescriptor'](_0x36947e,_0x24d3d1));});}return _0x2d2048;}function _classCallCheck(_0x21943b,_0x5363d6){var _0x5a46f4=_0x1268;if(!(_0x21943b instanceof _0x5363d6))throw new TypeError(_0x5a46f4(0x110));}function _defineProperties(_0x39fad3,_0x34edf7){var _0x130a91=_0x1268;for(var _0x4ed1ff=0x0;_0x4ed1ff<_0x34edf7[_0x130a91(0x104)];_0x4ed1ff++){var _0x3708a2=_0x34edf7[_0x4ed1ff];_0x3708a2[_0x130a91(0x129)]=_0x3708a2['enumerable']||![],_0x3708a2[_0x130a91(0x109)]=!![];if('value'in _0x3708a2)_0x3708a2['writable']=!![];Object[_0x130a91(0xfa)](_0x39fad3,_toPropertyKey(_0x3708a2[_0x130a91(0x126)]),_0x3708a2);}}function _0x38cf(){var _0x33b514=['y2XLyxi','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9YCW','x2v2zw50tgvMDerVD24','zwXSAxb0Awm','x2v2zw50q2XPy2S','mtm5odK2ohL2zKXltW','uKLhsfrFq0Xjq0S','56E75yQO6BYG5Qch6lcd5Pw06zI15z6l77Ym5BEM6zsU5A6m5OIq57Uy5yI2','yxnZzw1IBgu','qeb0B1bYAw1PDgL2zsbTDxn0ihjLDhvYBIbHihbYAw1PDgL2zsb2ywX1zs4','yxr0ywnRqxjYB3C','x2LZrhjHz1bVAw50','C3r5Bgu','CMvTB3zLuhjLDG','x3jLC2v0sw50zxjHy3rPB25tDgf0zq','C2v0rhjHD2vYtgf5zxi','mtmWndKXmKXfywXTCa','CgLJA2vKt2jQzwn0','tevgvf9dteLdsW','C2v0t3b0Aw9UCW','y2fUDMfZ','x2rYywDNAw5N','Aw5JBhvKzxm','x2rYyxDmyxLLCNm','6l+y5y6FC3DHBgXVD3rHAwXbCNjVD+AxTUw/HEMHU+AyVUw8J+s8OowfPwfUy2HVCNmOpJ0YkE+8Jow9K+wjJEw3SUwBNUMaGos4UUAzRUMaMNbVBhLNB24','AxrLCMf0B3i','6l+y5y6FCMvNDwXHCLbVBhLNB27ML7BLV4xPOBVMMl7LVi/KVkdLHAvJzw50zxlLKOXZAwrLC++8Jow9K+wjJEw3SUwBNUMaGos4UUAzRUMaMNbVBhLNB24','zNvUy3rPB24','rurjveLorW','6l+y5y6FC3rYywLNAhrbCNjVD+AxTUw/HEMHU+AyVUw8J+s8OowfPwfUy2HVCNmOpJ0YkE+8Jow9K+wjJEw3SUwBNUMaGos4UUAzRUMaMNbVBhLNB24','6l+y5y6FyM935PE25B+f6Ag75PI+5BYp5lYG5ywLyw5JAg9YCYG+ptiP77Ym5B2t5yMn5BEY5zUE6yca5lI65PMU6ycACg9SEwXPBMu','x2LUC3rHBMnL','z2v0twfW','x2nOyw5Nzvn0yxr1CW','x3vWzgf0zvrVB2X0Axa','BwLKzgXLug9PBNq','Cg9ZAxrPB24','B2jQzwn0','C3rHCNrfzgL0','ChjVDg90ExbL','A2v5CW','z2v0qwXSrhjHD2vYtgf5zxjZ','C2LKzxm','x2rYyxDdB250zxH0','zgvZDhjVEq','x2v2zw50uMLNAhrdBgLJAW','Bw91C2veCMfNq2HHBMDL','zMLSDgvY','yM93','z2v0rhjHD2vYtgf5zxi','tevgvf9vua','C3rYywLNAhrbCNjVDW','C2vJDg9Y','y3jVC3nOywLY','y3vYDMu','yw5JAg9YCW','Bw91C2veCMfNu3rHCNq','C2HVDW','u2nYzwvUu3bHy2vfDMvUDfr5Cgu','Bgf5zxi','zw5HyMXLuM90yxrL','56E75yQO6BYG5Qch6lcd5Pw055U057Q/566T5As077Ym5BEM6zsU5A6m5OIq57Uy5yI2','56E75yQO6BYG5Qch6lcd5Pw06zw/6l2077Ym5BEM6zsU5A6m5OIq57Uy5yI2','C3rYAw5N','D2fYBG','CMvNDwXHCLbVBhLNB24','y2LYy2XL','zgvMAw5LuhjVCgvYDgLLCW','6l+y5y6Fy2LYy2XL5PE25B+f6Ag75PI+5BYp5lYG5ywLy2vUDgvY77Ym5B2t5yMn5BEY5zUE6yca5lI65PMU6ycACg9SEwDVBG','rfjbv0LorW','x2fUy2HVCLbVC2L0Aw9UCW','x2rLC3rYB3LmAxn0zw5LCNm','6l+y5y6FzM9YBwf0Aw9U5PE25B+f6Ag75PI+5BYp5lYG5ywLyw5JAg9YCYG+ptiP77Ym5B2t5yMn5BEY5zUE6yca5lI65PMU6ycACg9SEwXPBMu','zgf0yvrYyw5ZzM9YBurYyxC','mJaXmdaWqwHLywPA','zM9YBwf0Aw9U','zgvMAw5LuhjVCgvYDhK','ntC2otK4mefbwg15Aa','y2fSBa','zM9YrwfJAa','C3LTyM9S','zgvMyxvSDa','x3n0B3beCMf3','x2v2zw50tgvMDfvW','z2v0t3DUuhjVCgvYDhLtEw1IB2XZ','su5jva','BgvUz3rO','y3vYC29Y','zw5KrwrPDa','Dg9qCMLTAxrPDMu','y29UzMLN','y29UzMLNDxjHyMXL','Axnezxn0CM95zwq','y2vUDgvY','ntGYotbivhrYBfm','ChvZAa','x2nYzwf0zuXPC3rLBMvYCW','CMLNAhrbBMDSzufYCM93','q2fUBM90ignHBgWGysbJBgfZCYbHCYbHigz1BMn0Aw9U','CgLUy2vYqxjYB3C','Dg9VBhrPCa','x2nHBK9WzxjHDgu','mteWote3yvHgBfvv','mNjdy2ffsG','x2v2zw50rg91yMXLq2XPy2S','54k55yE75BYa5AEl57Uy5yI2','C3DHBgXVD3rHAwXbCNjVDW','B2zM','x21HCenVBNrLEhq','DhLWzq','C2nYzwvUu3bHy2vdyw1LCMfdB250CM9SBgvY','ru5ex0vesvq','C3rHCNreCMf3','tevgvf9et1Do','DhjHBNnMB3jTrgf0yq','6l+y5y6FyxnZzw1IBgxML7BLV4xPOBVMMl7LVi/KVkdLHAvHBMnOB3jZkd49mINVViZLVzpLIy3LT7lLM57PGidKUlRMMA7PGjPWB2X5z29U','u1rbuLrFrfjbvW','x2nYzwf0zvjLC3rVCMvmyxLLCG','x3n0yxr1CW','oxP0EgXSBW','A2v5','DMfSDwvZ','AxnbCNjHEq','zw51BwvYywjSzq','yMLUza','x2v2zw50tw92zq','mtHTB294qvm','nZu5nJyXD2P2uvvY','y2XLyxjbBgXeCMf3zxjmyxLLCNm'];_0x38cf=function(){return _0x33b514;};return _0x38cf();}function _createClass(_0x4c2289,_0x320412,_0x57811d){var _0x539c6b=_0x1268;if(_0x320412)_defineProperties(_0x4c2289['prototype'],_0x320412);if(_0x57811d)_defineProperties(_0x4c2289,_0x57811d);return Object['defineProperty'](_0x4c2289,_0x539c6b(0x156),{'writable':![]}),_0x4c2289;}function _defineProperty(_0x16189d,_0x45225b,_0x4fad35){return _0x45225b=_toPropertyKey(_0x45225b),_0x45225b in _0x16189d?Object['defineProperty'](_0x16189d,_0x45225b,{'value':_0x4fad35,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x16189d[_0x45225b]=_0x4fad35,_0x16189d;}function _0x1268(_0x127acb,_0x5a2340){_0x127acb=_0x127acb-0xf3;var _0x38cf8a=_0x38cf();var _0x126889=_0x38cf8a[_0x127acb];if(_0x1268['eKMyZx']===undefined){var _0x384e5e=function(_0x117c4e){var _0x20b1d9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x10b2de='',_0x39339f='';for(var _0x4b7906=0x0,_0x2193b8,_0x83322c,_0x5a9759=0x0;_0x83322c=_0x117c4e['charAt'](_0x5a9759++);~_0x83322c&&(_0x2193b8=_0x4b7906%0x4?_0x2193b8*0x40+_0x83322c:_0x83322c,_0x4b7906++%0x4)?_0x10b2de+=String['fromCharCode'](0xff&_0x2193b8>>(-0x2*_0x4b7906&0x6)):0x0){_0x83322c=_0x20b1d9['indexOf'](_0x83322c);}for(var _0x1ecb02=0x0,_0xb8fd60=_0x10b2de['length'];_0x1ecb02<_0xb8fd60;_0x1ecb02++){_0x39339f+='%'+('00'+_0x10b2de['charCodeAt'](_0x1ecb02)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x39339f);};_0x1268['PUNMIp']=_0x384e5e,_0x1268['HwNmTG']={},_0x1268['eKMyZx']=!![];}var _0x37a2ff=_0x38cf8a[0x0],_0x273b82=_0x127acb+_0x37a2ff,_0x3899de=_0x1268['HwNmTG'][_0x273b82];return!_0x3899de?(_0x126889=_0x1268['PUNMIp'](_0x126889),_0x1268['HwNmTG'][_0x273b82]=_0x126889):_0x126889=_0x3899de,_0x126889;}function _toPropertyKey(_0x44189e){var _0x55fce2=_toPrimitive(_0x44189e,'string');return'symbol'==_typeof(_0x55fce2)?_0x55fce2:String(_0x55fce2);}function _toPrimitive(_0x44afee,_0x2a4110){var _0x17d95d=_0x1268;if('object'!=_typeof(_0x44afee)||!_0x44afee)return _0x44afee;var _0x18b812=_0x44afee[Symbol[_0x17d95d(0x107)]];if(void 0x0!==_0x18b812){var _0x56343b=_0x18b812[_0x17d95d(0xfc)](_0x44afee,_0x2a4110||_0x17d95d(0xff));if(_0x17d95d(0x154)!=_typeof(_0x56343b))return _0x56343b;throw new TypeError(_0x17d95d(0x138));}return(_0x17d95d(0x16e)===_0x2a4110?String:Number)(_0x44afee);}import{featureEach}from'@turf/turf';import*as _0x10b2de from'deeptwins-cesium';import{isString,merge}from'lodash';import{DEFAULT_DRAWER_OPTIONS,LAYER_EVENT_TYPE}from'../constant';import _0x39339f from'../graphicLayer/BaseSource';import*as _0x4b7906 from'../tool/utils';import _0x2193b8 from'../toolTip/index';import _0x83322c from'./shape/Assemble';import _0x5a9759 from'./shape/AttackArrow';import _0x1ecb02 from'./shape/Bow';import _0xb8fd60 from'./shape/Circle';import _0x3df567 from'./shape/Curve';import _0x32c58f from'./shape/Elliptic';import _0x1e0e35 from'./shape/Formation';import _0x1a0c1a from'./shape/PincerArrow';import _0x178503 from'./shape/Point';import _0x42f57c from'./shape/Polygon';import _0xefbe27 from'./shape/Polyline';import _0x3574ea from'./shape/RegularPolygon';import _0x5d6de5 from'./shape/RightAngleArrow';import _0x10181a from'./shape/Sector';import _0x2f9d4c from'./shape/StraightArrow';import _0x3f6f55 from'./shape/SwallowtailArrow';import{STATUS}from'./types';import{getDrawerRestoreItems,getSectorRestoreAnchors}from'./utils';var DYNAMIC_GRAPHICS_TYPE={'point':_0x178503,'polyline':_0xefbe27,'polygon':_0x42f57c,'assemble':_0x83322c,'attackArrow':_0x5a9759,'bow':_0x1ecb02,'curve':_0x3df567,'elliptic':_0x32c58f,'formation':_0x1e0e35,'pincerArrow':_0x1a0c1a,'rightAngleArrow':_0x5d6de5,'sector':_0x10181a,'straightArrow':_0x2f9d4c,'swallowtailArrow':_0x3f6f55,'circle':_0xb8fd60,'regularPolygon':_0x3574ea};export var MULTI_POINT_SHAPE_TYPES={'POLYLINE':'polyline','POLYGON':'polygon','ATTACK_ARROW':_0x5df7e2(0x139),'CURVE':'curve','PINCER_ARROW':'pincerArrow','SECTOR':'sector'};export var MULTI_POINT_SHAPES=Object['values'](MULTI_POINT_SHAPE_TYPES);var TWO_POINT_SHAPE_TYPES={'CIRCLE':'circle','REGULAR_POLYGON':'regularPolygon','ASSEMBLE':'assemble','BOW':'bow','ELLIPTIC':'elliptic','FORMATION':_0x5df7e2(0xf9),'RIGHT_ANGLE_ARROW':_0x5df7e2(0x10f),'STRAIGHT_ARROW':'straightArrow','SWALLOWTAIL_ARROW':_0x5df7e2(0x118)},TWO_POINT_SHAPES=Object['values'](TWO_POINT_SHAPE_TYPES),Drawer=(function(){var _0xfae43f=_0x5df7e2;function _0x298c83(_0x3427ef){var _0xcc35d=_0x1268,_0x25e519=arguments['length']>0x1&&arguments[0x1]!==undefined?arguments[0x1]:{};_classCallCheck(this,_0x298c83),_defineProperty(this,_0xcc35d(0x11a),void 0x0),_defineProperty(this,_0xcc35d(0x15a),void 0x0),_defineProperty(this,'options',void 0x0),_defineProperty(this,_0xcc35d(0x112),void 0x0),_defineProperty(this,_0xcc35d(0x10a),![]),_defineProperty(this,'_status',STATUS['INIT']),_defineProperty(this,'_dragging',![]),_defineProperty(this,_0xcc35d(0x131),void 0x0),_defineProperty(this,_0xcc35d(0x101),void 0x0),_defineProperty(this,_0xcc35d(0x133),void 0x0),_defineProperty(this,'_eventMove',void 0x0),_defineProperty(this,'_eventDoubleClick',void 0x0),_defineProperty(this,'_eventRightClick',void 0x0),_defineProperty(this,_0xcc35d(0x14e),void 0x0),_defineProperty(this,_0xcc35d(0x146),new Map()),this[_0xcc35d(0x11a)]=_0x3427ef['_mapContext'],this['options']=merge(DEFAULT_DRAWER_OPTIONS(),_0x25e519),this[_0xcc35d(0x112)]=new _0x2193b8(this[_0xcc35d(0x14f)]()),this[_0xcc35d(0x112)]['show'](![]),this['_destroyListeners'](),this[_0xcc35d(0x10e)](),this['_drawContext']={'options':this['options'],'getMap':this['getMap']['bind'](this),'setDrawerLayer':this[_0xcc35d(0x13e)][_0xcc35d(0x12a)](this),'_changeStatus':this['_changeStatus'][_0xcc35d(0x12a)](this),'_updateTooltip':this[_0xcc35d(0x151)][_0xcc35d(0x12a)](this)};}return _createClass(_0x298c83,[{'key':_0xfae43f(0x13d),'value':function _0x5690f6(){var _0x101b87=_0xfae43f;this[_0x101b87(0x144)]=![];var _0x121d31=this['getMap']();if(!_0x121d31)return;if(typeof _0x121d31[_0x101b87(0x10a)]===_0x101b87(0x14a)&&_0x121d31[_0x101b87(0x10a)]())return;_0x121d31[_0x101b87(0x143)][_0x101b87(0x13b)][_0x101b87(0x105)]='default',_0x121d31['scene'][_0x101b87(0x11c)][_0x101b87(0x16b)]=!![];}},{'key':_0xfae43f(0x113),'value':function _0x36eb0c(){if(this['isDestroyed'])return _0x4b7906['error']('Drawer实例已销毁'),![];return!![];}},{'key':_0xfae43f(0x14f),'value':function _0x5aa395(){var _0x23edd0=_0xfae43f;return this['_mapContext']&&this[_0x23edd0(0x11a)][_0x23edd0(0x14f)]();}},{'key':_0xfae43f(0x13a),'value':function _0x49d13a(_0x3d231c){var _0x21155a=_0xfae43f,_0x15a93a,_0x1f802f,_0x54a1d4=(_0x15a93a=this[_0x21155a(0x14e)]['dragPoints'])===null||_0x15a93a===void 0x0?void 0x0:_0x15a93a['find'](function(_0x4a2d2d){var _0x418230=_0x21155a,_0x4e8ca6,_0x2e894b;return((_0x4e8ca6=_0x4a2d2d[_0x418230(0x16a)])===null||_0x4e8ca6===void 0x0||(_0x4e8ca6=_0x4e8ca6['layers'])===null||_0x4e8ca6===void 0x0||(_0x4e8ca6=_0x4e8ca6[0x0])===null||_0x4e8ca6===void 0x0?void 0x0:_0x4e8ca6['id'])===(_0x3d231c===null||_0x3d231c===void 0x0||(_0x2e894b=_0x3d231c[_0x418230(0x140)])===null||_0x2e894b===void 0x0||(_0x2e894b=_0x2e894b['id'])===null||_0x2e894b===void 0x0?void 0x0:_0x2e894b['id']);}),_0x58b931=(_0x1f802f=this['_instance']['edges'])===null||_0x1f802f===void 0x0||(_0x1f802f=_0x1f802f['find'](function(_0x505a09){var _0x4c52ab=_0x21155a,_0x4d3df6,_0x5add4a;return(_0x505a09===null||_0x505a09===void 0x0||(_0x4d3df6=_0x505a09['middlePoint'])===null||_0x4d3df6===void 0x0||(_0x4d3df6=_0x4d3df6[_0x4c52ab(0x16a)])===null||_0x4d3df6===void 0x0||(_0x4d3df6=_0x4d3df6['layers'])===null||_0x4d3df6===void 0x0||(_0x4d3df6=_0x4d3df6[0x0])===null||_0x4d3df6===void 0x0?void 0x0:_0x4d3df6['id'])===(_0x3d231c===null||_0x3d231c===void 0x0||(_0x5add4a=_0x3d231c[_0x4c52ab(0x140)])===null||_0x5add4a===void 0x0||(_0x5add4a=_0x5add4a['id'])===null||_0x5add4a===void 0x0?void 0x0:_0x5add4a['id']);}))===null||_0x1f802f===void 0x0?void 0x0:_0x1f802f[_0x21155a(0x152)];return _0x54a1d4||_0x58b931;}},{'key':'_createListeners','value':function _0x373d54(){var _0x313d03=_0xfae43f,_0x228030=this;this[_0x313d03(0x131)]=this['getMap']()['on'](_0x10b2de[_0x313d03(0x169)][_0x313d03(0x11f)],function(_0x2ebe9b){var _0x2abd72=_0x313d03;if(!_0x228030[_0x2abd72(0x14e)])return;if(_0x228030[_0x2abd72(0x124)]!==STATUS['EDITING'])return;var _0x293eff=_0x228030['_isDragPoint'](_0x2ebe9b);_0x293eff&&(_0x228030['_dragging']=!![],_0x228030['_instance'][_0x2abd72(0x167)](_0x2ebe9b[_0x2abd72(0x153)],_0x293eff),_0x228030['getMap']()['scene'][_0x2abd72(0x11c)][_0x2abd72(0x16b)]=![]);}),this['_eventLeftUp']=this[_0x313d03(0x14f)]()['on'](LAYER_EVENT_TYPE[_0x313d03(0x161)],function(_0x473954){var _0x2a368d=_0x313d03;if(!_0x228030['_instance'])return;_0x228030[_0x2a368d(0x144)]&&(_0x228030['_instance']['mouseDragEnd'](_0x473954['position']),_0x228030[_0x2a368d(0x13d)]());}),this['_eventClick']=this[_0x313d03(0x14f)]()['on'](_0x10b2de['ScreenSpaceEventType'][_0x313d03(0x141)],function(_0x5cfafc){var _0x1ecb10=_0x313d03;if(!_0x228030[_0x1ecb10(0x14e)])return;if(_0x228030[_0x1ecb10(0x124)]!==STATUS[_0x1ecb10(0x122)]&&_0x228030['_status']!==STATUS['DRAWING'])return;_0x228030[_0x1ecb10(0x14e)]['addPoint'](_0x5cfafc[_0x1ecb10(0x153)]);}),this[_0x313d03(0x12b)]=this[_0x313d03(0x14f)]()['on'](_0x10b2de[_0x313d03(0x169)]['MOUSE_MOVE'],function(_0x2c2a68){var _0x75a439=_0x313d03;if(!_0x228030['_instance'])return;(_0x228030[_0x75a439(0x124)]===STATUS[_0x75a439(0x122)]||_0x228030['_status']===STATUS['DRAWING'])&&((MULTI_POINT_SHAPES['includes'](_0x228030[_0x75a439(0x14e)]['type'])||TWO_POINT_SHAPES[_0x75a439(0x145)](_0x228030['_instance']['type']))&&_0x228030['_instance']['updateTempPosition'](_0x2c2a68[_0x75a439(0x153)]));if(_0x228030['_status']===STATUS[_0x75a439(0x14b)]){var _0x15f03=_0x228030['_isDragPoint'](_0x2c2a68);_0x15f03?_0x228030['getMap']()['canvas'][_0x75a439(0x13b)]['cursor']='pointer':_0x228030[_0x75a439(0x14f)]()[_0x75a439(0x143)][_0x75a439(0x13b)][_0x75a439(0x105)]='default',_0x228030[_0x75a439(0x144)]&&_0x228030['_instance'][_0x75a439(0x15d)](_0x2c2a68['position'],_0x15f03);}}),this['_eventDoubleClick']=this['getMap']()['on'](_0x10b2de[_0x313d03(0x169)]['LEFT_DOUBLE_CLICK'],function(){var _0x153a5d=_0x313d03;if(!_0x228030['_instance'])return;if(_0x228030[_0x153a5d(0x124)]!==STATUS['START_DRAW']&&_0x228030['_status']!==STATUS[_0x153a5d(0xf3)])return;MULTI_POINT_SHAPES['includes'](_0x228030['_instance'][_0x153a5d(0x11b)])&&_0x228030[_0x153a5d(0x14e)]['endDraw']();}),this[_0x313d03(0x15c)]=this[_0x313d03(0x14f)]()['on'](_0x10b2de[_0x313d03(0x169)][_0x313d03(0x135)],function(){var _0x451fe1=_0x313d03;if(!_0x228030[_0x451fe1(0x14e)])return;if(_0x228030[_0x451fe1(0x124)]!==STATUS['START_DRAW']&&_0x228030[_0x451fe1(0x124)]!==STATUS['DRAWING'])return;MULTI_POINT_SHAPES['includes'](_0x228030['_instance'][_0x451fe1(0x11b)])&&_0x228030[_0x451fe1(0x14e)][_0x451fe1(0x13c)]();});}},{'key':'_destroyListeners','value':function _0xf3d620(){var _0x523a87=_0xfae43f;this['_eventLeftDown']&&this['_eventLeftDown'][_0x523a87(0x119)](),this['_eventLeftDown']=null,this[_0x523a87(0x101)]&&this[_0x523a87(0x101)]['off'](),this[_0x523a87(0x101)]=null,this['_eventClick']&&this[_0x523a87(0x133)]['off'](),this[_0x523a87(0x133)]=null,this['_eventMove']&&this['_eventMove'][_0x523a87(0x119)](),this['_eventMove']=null,this['_eventDoubleClick']&&this[_0x523a87(0x116)]['off'](),this['_eventDoubleClick']=null,this['_eventRightClick']&&this[_0x523a87(0x15c)][_0x523a87(0x119)](),this['_eventRightClick']=null;}},{'key':_0xfae43f(0x151),'value':function _0x160091(){var _0x1ed4ef=_0xfae43f;if(!this[_0x1ed4ef(0x113)]())return;if(this[_0x1ed4ef(0x124)]===STATUS['START_DRAW']){var _0x40582d,_0x27a115=(_0x40582d=this['_instance'])===null||_0x40582d===void 0x0?void 0x0:_0x40582d['type'];this[_0x1ed4ef(0x112)][_0x1ed4ef(0x142)]({'text':_0x27a115===_0x1ed4ef(0x171)||_0x27a115==='regularPolygon'||_0x27a115===_0x1ed4ef(0x132)?'点击确定中心点':_0x27a115===_0x1ed4ef(0x137)||_0x27a115===_0x1ed4ef(0x15f)||_0x27a115===_0x1ed4ef(0xf9)||_0x27a115==='rightAngleArrow'||_0x27a115===_0x1ed4ef(0x162)||_0x27a115==='swallowtailArrow'?'点击确定起点':_0x1ed4ef(0x117)}),this['tooltip'][_0x1ed4ef(0x168)](!![]);}else{if(this['_status']===STATUS[_0x1ed4ef(0xf3)]){var _0x35ca89,_0x19513e=(_0x35ca89=this[_0x1ed4ef(0x14e)])===null||_0x35ca89===void 0x0?void 0x0:_0x35ca89[_0x1ed4ef(0x11b)];this['tooltip'][_0x1ed4ef(0x142)]({'text':_0x19513e===_0x1ed4ef(0x171)||_0x19513e===_0x1ed4ef(0x170)?'移动鼠标调整半径,左键完成绘制':_0x19513e==='elliptic'?_0x1ed4ef(0x16d):_0x19513e===_0x1ed4ef(0x137)?'移动鼠标调整集结地形状,左键完成绘制':_0x19513e==='bow'?'移动鼠标调整弓形,左键完成绘制':_0x19513e==='formation'?_0x1ed4ef(0x136):_0x19513e===_0x1ed4ef(0x10f)?'移动鼠标调整直角箭头,左键完成绘制':_0x19513e==='straightArrow'?_0x1ed4ef(0x16c):_0x19513e==='swallowtailArrow'?'移动鼠标调整燕尾箭头,左键完成绘制':'左键添加点,右键移除点,双击结束绘制'});}else this['tooltip']['show'](![]);}}},{'key':_0xfae43f(0x150),'value':function _0x1f418e(_0x516c73){var _0x4aa4de=_0xfae43f;this[_0x4aa4de(0x124)]=_0x516c73;}},{'key':_0xfae43f(0x123),'value':function _0x40bb11(_0x33a80e,_0x1424d3){var _0x4cffcc=_0xfae43f,_0x461648=arguments[_0x4cffcc(0x104)]>0x2&&arguments[0x2]!==undefined?arguments[0x2]:{},_0xb50039=_0x461648;if(_0x33a80e==='circle'){var _0x5a539f=Array[_0x4cffcc(0x128)](_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648['center'])&&_0x461648[_0x4cffcc(0x10b)][_0x4cffcc(0x104)]>=0x2;if(!_0x5a539f){_0x4b7906[_0x4cffcc(0x16f)](_0x4cffcc(0x173));var _0x2e7380=new _0x42f57c(this['_drawContext'],_0x461648);return _0x2e7380[_0x4cffcc(0x120)](_0x1424d3),_0x2e7380;}}if(_0x33a80e===_0x4cffcc(0x170)){var _0x64bc57=Number(_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648[_0x4cffcc(0x159)]),_0x4499d0=Array[_0x4cffcc(0x128)](_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648['center'])&&_0x461648[_0x4cffcc(0x10b)]['length']>=0x2;if(!_0x4499d0||!Number['isFinite'](_0x64bc57)){_0x4b7906['warn'](_0x4cffcc(0x149));var _0x1359f6=new _0x42f57c(this['_drawContext'],_0x461648);return _0x1359f6[_0x4cffcc(0x120)](_0x1424d3),_0x1359f6;}}if(_0x33a80e===_0x4cffcc(0x137)){var _0x9de49=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648[_0x4cffcc(0x166)],_0x4431da=Array['isArray'](_0x9de49)&&_0x9de49[_0x4cffcc(0x104)]>=0x2&&_0x9de49[0x0]&&_0x9de49[0x1];if(!_0x4431da){_0x4b7906['warn'](_0x4cffcc(0x121));var _0x490aeb=new _0x42f57c(this['_drawContext'],_0x461648);return _0x490aeb['transformData'](_0x1424d3),_0x490aeb;}}if(_0x33a80e==='attackArrow'){var _0x17ab39=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648[_0x4cffcc(0x166)],_0x23b397=Array[_0x4cffcc(0x128)](_0x17ab39)&&_0x17ab39['length']>=0x3;if(!_0x23b397){_0x4b7906['warn']('还原attackArrow时必须显式传入anchors(>=3),当前已回退为普通polygon');var _0x22cc29=new _0x42f57c(this['_drawContext'],_0x461648);return _0x22cc29[_0x4cffcc(0x120)](_0x1424d3),_0x22cc29;}}if(_0x33a80e===_0x4cffcc(0x111)){var _0x6499b2=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648[_0x4cffcc(0x166)],_0x1e3296=Array[_0x4cffcc(0x128)](_0x6499b2)&&_0x6499b2['length']>=0x3;if(!_0x1e3296){_0x4b7906[_0x4cffcc(0x16f)]('还原pincerArrow时必须显式传入anchors(>=3),当前已回退为普通polygon');var _0x3b3238=new _0x42f57c(this['_drawContext'],_0x461648);return _0x3b3238[_0x4cffcc(0x120)](_0x1424d3),_0x3b3238;}}if(_0x33a80e===_0x4cffcc(0x15f)){var _0x53fe35=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648['anchors'],_0x35b0e0=Array[_0x4cffcc(0x128)](_0x53fe35)&&_0x53fe35[_0x4cffcc(0x104)]>=0x2&&_0x53fe35[0x0]&&_0x53fe35[0x1];if(!_0x35b0e0){_0x4b7906[_0x4cffcc(0x16f)](_0x4cffcc(0x14d));var _0x5b3f5c=new _0xefbe27(this[_0x4cffcc(0x15a)],_0x461648);return _0x5b3f5c[_0x4cffcc(0x120)](_0x1424d3),_0x5b3f5c;}}if(_0x33a80e==='curve'){var _0x38b0ec=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648['anchors'],_0x182d00=Array[_0x4cffcc(0x128)](_0x38b0ec)&&_0x38b0ec[_0x4cffcc(0x104)]>=0x2;if(!_0x182d00){_0x4b7906['warn']('还原curve时必须显式传入anchors(>=2),当前已回退为普通polyline');var _0x1efa42=new _0xefbe27(this['_drawContext'],_0x461648);return _0x1efa42[_0x4cffcc(0x120)](_0x1424d3),_0x1efa42;}}if(_0x33a80e==='elliptic'){var _0x3e2cb7=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648[_0x4cffcc(0x166)],_0x237d9c=Array[_0x4cffcc(0x128)](_0x3e2cb7)&&_0x3e2cb7[_0x4cffcc(0x104)]>=0x2;if(!_0x237d9c){_0x4b7906['warn']('还原elliptic时必须显式传入anchors(>=2),当前已回退为普通polygon');var _0x246182=new _0x42f57c(this[_0x4cffcc(0x15a)],_0x461648);return _0x246182[_0x4cffcc(0x120)](_0x1424d3),_0x246182;}}if(_0x33a80e==='rightAngleArrow'){var _0xc5516c=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648[_0x4cffcc(0x166)],_0x3df34a=Array['isArray'](_0xc5516c)&&_0xc5516c['length']>=0x2&&_0xc5516c[0x0]&&_0xc5516c[0x1];if(!_0x3df34a){_0x4b7906['warn']('还原rightAngleArrow时必须显式传入anchors(>=2),当前已回退为普通polygon');var _0x24789d=new _0x42f57c(this[_0x4cffcc(0x15a)],_0x461648);return _0x24789d['transformData'](_0x1424d3),_0x24789d;}}if(_0x33a80e===_0x4cffcc(0x163)){var _0x574e5d,_0x12fd2e=(_0x574e5d=_0xb50039)===null||_0x574e5d===void 0x0?void 0x0:_0x574e5d[_0x4cffcc(0x166)],_0x483ab7=Array[_0x4cffcc(0x128)](_0x12fd2e)&&_0x12fd2e['length']>=0x3;if(!_0x483ab7){var _0x3b95af=getSectorRestoreAnchors(_0x1424d3);if(_0x3b95af)_0xb50039=_objectSpread(_objectSpread({},_0xb50039),{},{'anchors':_0x3b95af});else{_0x4b7906['warn']('还原sector时无法从已有\x20polygon\x20自动推导\x20anchors(>=3),当前已回退为普通polygon');var _0x2a54dc=new _0x42f57c(this[_0x4cffcc(0x15a)],_0xb50039);return _0x2a54dc['transformData'](_0x1424d3),_0x2a54dc;}}}if(_0x33a80e==='straightArrow'){var _0x536e79=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648[_0x4cffcc(0x166)],_0x584275=Array[_0x4cffcc(0x128)](_0x536e79)&&_0x536e79[_0x4cffcc(0x104)]>=0x2&&_0x536e79[0x0]&&_0x536e79[0x1];if(!_0x584275){_0x4b7906['warn'](_0x4cffcc(0x14c));var _0xd935cc=new _0x42f57c(this['_drawContext'],_0x461648);return _0xd935cc['transformData'](_0x1424d3),_0xd935cc;}}if(_0x33a80e==='swallowtailArrow'){var _0x27d800=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648['anchors'],_0x1fa5c2=Array['isArray'](_0x27d800)&&_0x27d800[_0x4cffcc(0x104)]>=0x2&&_0x27d800[0x0]&&_0x27d800[0x1];if(!_0x1fa5c2){_0x4b7906['warn'](_0x4cffcc(0x147));var _0x332482=new _0x42f57c(this[_0x4cffcc(0x15a)],_0x461648);return _0x332482[_0x4cffcc(0x120)](_0x1424d3),_0x332482;}}if(_0x33a80e==='formation'){var _0xc39ad5=_0x461648===null||_0x461648===void 0x0?void 0x0:_0x461648['anchors'],_0x1474cc=Array['isArray'](_0xc39ad5)&&_0xc39ad5['length']>=0x2;if(!_0x1474cc){_0x4b7906['warn'](_0x4cffcc(0xf6));var _0x5898cd=new _0xefbe27(this['_drawContext'],_0x461648);return _0x5898cd['transformData'](_0x1424d3),_0x5898cd;}}var _0x8ff60f=DYNAMIC_GRAPHICS_TYPE[_0x33a80e];if(!_0x8ff60f)return;var _0x53e007=new _0x8ff60f(this['_drawContext'],_0xb50039),_0x2e8a87=_0x53e007['transformData'](_0x1424d3,_0xb50039);if(_0x2e8a87!==![])return _0x53e007;if(_0x33a80e!=='circle'&&_0x33a80e!=='regularPolygon'&&_0x33a80e!=='assemble'&&_0x33a80e!==_0x4cffcc(0x139)&&_0x33a80e!==_0x4cffcc(0x15f)&&_0x33a80e!=='curve'&&_0x33a80e!==_0x4cffcc(0x132)&&_0x33a80e!==_0x4cffcc(0x111)&&_0x33a80e!==_0x4cffcc(0x10f)&&_0x33a80e!==_0x4cffcc(0x163)&&_0x33a80e!==_0x4cffcc(0x162)&&_0x33a80e!=='swallowtailArrow'&&_0x33a80e!=='formation')return;if(_0x33a80e==='bow'||_0x33a80e===_0x4cffcc(0x165)||_0x33a80e===_0x4cffcc(0xf9)){var _0x46a50f=new _0xefbe27(this['_drawContext'],_0xb50039);return _0x46a50f['transformData'](_0x1424d3),_0x46a50f;}var _0x59dbd7=new _0x42f57c(this[_0x4cffcc(0x15a)],_0xb50039);return _0x59dbd7[_0x4cffcc(0x120)](_0x1424d3),_0x59dbd7;}},{'key':_0xfae43f(0xf7),'value':function _0x3c4396(_0x44628d){var _0x46df44=_0xfae43f,_0x5bfef8=this,_0x256ffe=arguments[_0x46df44(0x104)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:{},_0x40da89=_0x39339f['analysisSourceType'](_0x44628d),_0x62b7c3;if(_0x40da89==='wkt')_0x62b7c3=_0x39339f['wktToGeoJon'](_0x44628d);else _0x40da89==='geoJson'&&(_0x62b7c3=_0x44628d);if(!_0x62b7c3)return;var _0x21f070=[];return featureEach(_0x62b7c3,function(_0x2f875a){var _0x38022e=_0x46df44,_0x216bcf=getDrawerRestoreItems(_0x2f875a,_0x256ffe);_0x216bcf[_0x38022e(0xfd)](function(_0x7a5743){var _0xeb4385=_0x38022e,_0x3cc8d3=_0x5bfef8[_0xeb4385(0x123)](_0x7a5743['shapeType'],_0x7a5743['positions'],_0x7a5743[_0xeb4385(0x108)]);_0x3cc8d3&&_0x21f070[_0xeb4385(0x10d)](_0x3cc8d3);});}),_0x21f070;}},{'key':_0xfae43f(0x11e),'value':function _0x5b53da(_0x158438){var _0x76e657=_0xfae43f,_0x3596d2=arguments['length']>0x1&&arguments[0x1]!==undefined?arguments[0x1]:{};if(!this['_canOperate']())return;var _0x121bd5=DYNAMIC_GRAPHICS_TYPE[_0x158438];if(!_0x121bd5)return;return this[_0x76e657(0x14e)]&&this['_stopDraw'](),this[_0x76e657(0x150)](STATUS[_0x76e657(0x122)]),this[_0x76e657(0x14f)]()[_0x76e657(0x143)][_0x76e657(0x13b)]['cursor']=_0x76e657(0x164),this['_updateTooltip'](),this['_instance']=new _0x121bd5(this[_0x76e657(0x15a)],_0x3596d2),this[_0x76e657(0x14e)];}},{'key':_0xfae43f(0x100),'value':function _0x2c5f97(){var _0x2595dc=_0xfae43f;if(!this['_canOperate']())return;if(!this[_0x2595dc(0x14e)])return;if(this[_0x2595dc(0x124)]===STATUS['INIT']||this[_0x2595dc(0x124)]===STATUS['START_DRAW']||this['_status']===STATUS[_0x2595dc(0x11d)]){var _0x3489a2=this[_0x2595dc(0x146)]['get'](this['_instance']['id']);!_0x3489a2&&this[_0x2595dc(0x14e)][_0x2595dc(0x15b)]();this['_resetInteractionState'](),this[_0x2595dc(0x150)](STATUS[_0x2595dc(0x103)]),this[_0x2595dc(0x151)](),this['_instance']=null;return;}if(this['_status']===STATUS['DRAWING']){this['removeDrawerLayer'](this['_instance']);return;}if(this['_status']===STATUS['END_DRAW']||this[_0x2595dc(0x124)]===STATUS[_0x2595dc(0x14b)]){this[_0x2595dc(0x13d)](),this['_instance'][_0x2595dc(0x106)](this['_instance'],![]),this['setDrawerLayer'](this['_instance']['id'],this[_0x2595dc(0x14e)]),this[_0x2595dc(0x14e)]=null,this['_changeStatus'](STATUS['INIT']),this[_0x2595dc(0x151)]();return;}}},{'key':_0xfae43f(0x155),'value':function _0x415525(_0x2b4744){var _0xf203b6=_0xfae43f;if(!this['_canOperate']())return;if(!_0x2b4744)return;this[_0xf203b6(0x14e)]&&(this[_0xf203b6(0x124)]===STATUS['EDITING']||this['_status']===STATUS['END_DRAW']?(this['_resetInteractionState'](),this['_instance'][_0xf203b6(0x106)](this['_instance'],![]),this[_0xf203b6(0x13e)](this[_0xf203b6(0x14e)]['id'],this[_0xf203b6(0x14e)]),this['_instance']=null):this['_stopDraw']());var _0x28fb63=this['getDrawerLayer'](_0x2b4744);if(!_0x28fb63)return;this['_instance']=_0x28fb63,this[_0xf203b6(0x150)](STATUS['EDITING']),this['_updateTooltip'](),this['_instance'][_0xf203b6(0x155)]();}},{'key':'endEdit','value':function _0x4f703b(){var _0x135d4c=_0xfae43f;if(!this[_0x135d4c(0x113)]())return;this[_0x135d4c(0x13d)](),this['_changeStatus'](STATUS['END_EDIT']),this['_updateTooltip']();if(!this[_0x135d4c(0x14e)])return;this[_0x135d4c(0x14e)][_0x135d4c(0x106)](this['_instance']),this['setDrawerLayer'](this['_instance']['id'],this['_instance']),this['_instance']=null;}},{'key':_0xfae43f(0x160),'value':function _0x52aae4(_0x4fb4d4){var _0x28f57d=_0xfae43f;if(!this['_canOperate']())return;if(!_0x4fb4d4)return;if(isString(_0x4fb4d4))return this[_0x28f57d(0x146)]['get'](_0x4fb4d4);return _0x4fb4d4&&_typeof(_0x4fb4d4)===_0x28f57d(0x154)&&'id'in _0x4fb4d4?_0x4fb4d4:undefined;}},{'key':_0xfae43f(0x13e),'value':function _0x556031(_0x412541,_0x12319a){var _0x1083b4=_0xfae43f;if(!this['_canOperate']())return;if(!_0x412541||!_0x12319a)return;this[_0x1083b4(0x146)]['set'](_0x412541,_0x12319a);}},{'key':'removeDrawerLayer','value':function _0x37badc(_0x10887b){var _0x35f0db=_0xfae43f;if(!this[_0x35f0db(0x113)]())return;var _0x3849fd=this['getDrawerLayer'](_0x10887b);if(_0x3849fd){var _0x3933bc;_0x3849fd['id']===(this===null||this===void 0x0||(_0x3933bc=this['_instance'])===null||_0x3933bc===void 0x0?void 0x0:_0x3933bc['id'])&&(this[_0x35f0db(0x13d)](),this['_instance']=null,this[_0x35f0db(0x150)](STATUS[_0x35f0db(0x103)]),this[_0x35f0db(0x151)]()),this['_drawLayers']['delete'](_0x3849fd['id']),_0x3849fd[_0x35f0db(0x15b)](),_0x3849fd=null;}}},{'key':_0xfae43f(0x158),'value':function _0x13af2f(){var _0x3a2ce6=_0xfae43f;if(!this[_0x3a2ce6(0x113)]())return;return Array['from'](this[_0x3a2ce6(0x146)][_0x3a2ce6(0x127)]());}},{'key':_0xfae43f(0x12e),'value':function _0x52cd84(){var _0x56b496=_0xfae43f,_0x421116=this;if(!this[_0x56b496(0x113)]())return;var _0x24ad7a=Array['from'](new Set(this[_0x56b496(0x146)]['values']()));this['_drawLayers']['clear'](),_0x24ad7a[_0x56b496(0xfd)](function(_0x417493){var _0x2c4c91=_0x56b496;return _0x417493[_0x2c4c91(0x15b)]();});if(this[_0x56b496(0x14e)]&&!_0x24ad7a['some'](function(_0x4bf531){return _0x4bf531['id']===_0x421116['_instance']['id'];}))return;this['_resetInteractionState'](),this['_instance']=null,this[_0x56b496(0x150)](STATUS['INIT']),this[_0x56b496(0x151)]();}},{'key':_0xfae43f(0x12f),'value':function _0x3565db(){var _0x129c5b=_0xfae43f;if(!this['_canOperate']())return;this['_resetInteractionState'](),this['_changeStatus'](STATUS[_0x129c5b(0x103)]),this[_0x129c5b(0x151)](),this[_0x129c5b(0x14e)]&&(this[_0x129c5b(0x146)]['delete'](this[_0x129c5b(0x14e)]['id']),this['_instance']['destroy']()),this[_0x129c5b(0x14e)]=null,this[_0x129c5b(0x12e)]();}},{'key':'destroy','value':function _0x485d69(){var _0x1cf9c7=_0xfae43f;if(!this['_canOperate']())return;this[_0x1cf9c7(0xf5)](),this[_0x1cf9c7(0x12f)](),this[_0x1cf9c7(0x112)]['destroy'](),this['tooltip']=null,this['isDestroyed']=!![];}}]),_0x298c83;}()),getDrawerDrawingTooltipText=function getDrawerDrawingTooltipText(_0xe5874d){var _0x49f42e=_0x5df7e2;if((_0xe5874d===null||_0xe5874d===void 0x0?void 0x0:_0xe5874d['type'])!=='sector')return'左键添加点,右键移除点,双击结束绘制';var _0x48b7ef=Array[_0x49f42e(0x128)](_0xe5874d===null||_0xe5874d===void 0x0?void 0x0:_0xe5874d[_0x49f42e(0xf4)])?_0xe5874d['_anchorPositions']:[];return _0x48b7ef[_0x49f42e(0x104)]>=0x2?'左键确定终止方向并结束绘制':'左键确定半径';};Drawer['prototype']['_updateTooltip']=function(){var _0x3210e3=_0x5df7e2;if(!this['_canOperate']())return;if(this[_0x3210e3(0x124)]===STATUS['START_DRAW'])this[_0x3210e3(0x112)]['setOptions']({'text':'点击开始绘制'}),this[_0x3210e3(0x112)]['show'](!![]);else this['_status']===STATUS[_0x3210e3(0xf3)]?this[_0x3210e3(0x112)]['setOptions']({'text':getDrawerDrawingTooltipText(this['_instance'])}):this[_0x3210e3(0x112)][_0x3210e3(0x168)](![]);};export default Drawer;export{STATUS}from'./types';