deeptwins-engine-3d 0.1.75 → 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.
- package/dist/assets/Build/DeepTwins/Image/noise.png +0 -0
- package/dist/assets/Build/DeepTwins/Workers/CustomRasterClip.worker.js +1 -2
- package/dist/assets/Build/DeepTwins/Workers/MvtVector.worker.js +1 -1
- package/dist/assets/Build/Map3d/ThirdParty/Workers/zip-web-worker.js +640 -0
- package/dist/assets/Build/Map3d/ThirdParty/wasm_splats_bg.wasm +0 -0
- package/dist/assets/Build/Map3d/ThirdParty/zip-module.wasm +0 -0
- package/dist/assets/Build/Map3d/Workers/chunk-27NG6PQR.js +456 -0
- package/dist/assets/Build/Map3d/Workers/chunk-2JVMMMWT.js +353 -0
- package/dist/assets/Build/Map3d/Workers/chunk-2Y2XYQCS.js +1481 -0
- package/dist/assets/Build/Map3d/Workers/chunk-34RF3V5G.js +220 -0
- package/dist/assets/Build/Map3d/Workers/chunk-35H7BYLJ.js +1800 -0
- package/dist/assets/Build/Map3d/Workers/chunk-57OGEF5V.js +435 -0
- package/dist/assets/Build/Map3d/Workers/chunk-5PX3DYJA.js +196 -0
- package/dist/assets/Build/Map3d/Workers/chunk-7B5XGQRN.js +171 -0
- package/dist/assets/Build/Map3d/Workers/chunk-ATLWOZFF.js +39 -0
- package/dist/assets/Build/Map3d/Workers/chunk-BMSUECTA.js +1055 -0
- package/dist/assets/Build/Map3d/Workers/chunk-C6IA4TKW.js +476 -0
- package/dist/assets/Build/Map3d/Workers/chunk-CZ44I32U.js +157 -0
- package/dist/assets/Build/Map3d/Workers/chunk-DE6UV44R.js +122 -0
- package/dist/assets/Build/Map3d/Workers/chunk-DUCCKVOG.js +834 -0
- package/dist/assets/Build/Map3d/Workers/chunk-EBJBPIYX.js +239 -0
- package/dist/assets/Build/Map3d/Workers/chunk-EYSYQ2R6.js +138 -0
- package/dist/assets/Build/Map3d/Workers/chunk-FMCAAUQI.js +368 -0
- package/dist/assets/Build/Map3d/Workers/chunk-GMYZNRRQ.js +2717 -0
- package/dist/assets/Build/Map3d/Workers/chunk-GWPNZZV4.js +781 -0
- package/dist/assets/Build/Map3d/Workers/chunk-HLP2U4KW.js +758 -0
- package/dist/assets/Build/Map3d/Workers/chunk-HSJSUPQV.js +500 -0
- package/dist/assets/Build/Map3d/Workers/chunk-I73Q3AG7.js +58 -0
- package/dist/assets/Build/Map3d/Workers/chunk-IMZ4YIMV.js +511 -0
- package/dist/assets/Build/Map3d/Workers/chunk-IZSK4DVF.js +421 -0
- package/dist/assets/Build/Map3d/Workers/chunk-JKLMRPKK.js +75 -0
- package/dist/assets/Build/Map3d/Workers/chunk-KGM345JM.js +691 -0
- package/dist/assets/Build/Map3d/Workers/chunk-L4IR5U4G.js +102 -0
- package/dist/assets/Build/Map3d/Workers/chunk-MG4EVQH2.js +44 -0
- package/dist/assets/Build/Map3d/Workers/chunk-NXWEFAZJ.js +300 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PDFAJISJ.js +59 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PHWZFJR5.js +100 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PLE7CHBE.js +101 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PN3GIZ5Q.js +163 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PXL5XLHV.js +1073 -0
- package/dist/assets/Build/Map3d/Workers/chunk-QYXOF5JC.js +959 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R2LIFXV3.js +115 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R4W6IRJZ.js +10357 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R5PZXG56.js +1258 -0
- package/dist/assets/Build/Map3d/Workers/chunk-RZQLZIUI.js +629 -0
- package/dist/assets/Build/Map3d/Workers/chunk-SIBDD6Y4.js +390 -0
- package/dist/assets/Build/Map3d/Workers/chunk-U5NN6JTQ.js +398 -0
- package/dist/assets/Build/Map3d/Workers/chunk-UA5RPPP3.js +73 -0
- package/dist/assets/Build/Map3d/Workers/chunk-UXLKFS3C.js +305 -0
- package/dist/assets/Build/Map3d/Workers/chunk-VUX4BQIM.js +37 -0
- package/dist/assets/Build/Map3d/Workers/chunk-WJDUUUJS.js +684 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XBJOJHWX.js +139 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XJDMTNKD.js +634 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XUCXZZE5.js +963 -0
- package/dist/assets/Build/Map3d/Workers/chunk-YIKGVMJ5.js +287 -0
- package/dist/assets/Build/Map3d/Workers/chunk-YTNCIBPQ.js +262 -0
- package/dist/assets/Build/Map3d/Workers/chunk-ZMDUYETO.js +55 -0
- package/dist/assets/Build/Map3d/Workers/chunk-ZW52HXFN.js +2857 -0
- package/dist/esm/analyze/LineOfSightAnalysis.js +1 -326
- package/dist/esm/analyze/SubmergenceAnalysis.js +1 -137
- package/dist/esm/analyze/SunLightAnalysis.js +1 -91
- package/dist/esm/analyze/TerrainExcavationAnalysis.js +1 -612
- package/dist/esm/analyze/ViewshedAnalysis.js +1 -292
- package/dist/esm/cameraControl/ModelRoamHistory.js +1 -639
- package/dist/esm/cameraControl/ModelRoamRealTime.js +1 -874
- package/dist/esm/cameraControl/Roam.js +1 -418
- package/dist/esm/cameraControl/Rotate.js +1 -134
- package/dist/esm/cameraControl/RotateInPlace.js +1 -99
- package/dist/esm/constant.d.ts +90 -0
- package/dist/esm/constant.js +1 -1287
- package/dist/esm/deepTwins/index.js +1 -121
- package/dist/esm/drawCommand/index.js +1 -3
- package/dist/esm/drawCommand/viewShed/Event.js +1 -142
- package/dist/esm/drawCommand/viewShed/RectangularSensorPrimitive.js +1 -1306
- package/dist/esm/drawCommand/viewShed/ViewShadowPrimitive.js +1 -66
- package/dist/esm/drawCommand/viewShed/ViewShedAnalyserLayer.js +1 -466
- package/dist/esm/drawCommand/viewShed/ViewShedMap.js +1 -1238
- package/dist/esm/drawCommand/viewShed/config.js +1 -21
- package/dist/esm/drawCommand/volumeCloud/GeometryPrimitive.js +1 -89
- package/dist/esm/drawCommand/volumeCloud/ImprovedNoise.js +1 -112
- package/dist/esm/drawCommand/volumeCloud/VolumeClouds.js +1 -91
- package/dist/esm/drawer/algorithm.js +1 -314
- package/dist/esm/drawer/common.js +1 -965
- package/dist/esm/drawer/coordinate.js +1 -184
- package/dist/esm/drawer/index.d.ts +1 -1
- package/dist/esm/drawer/index.js +1 -688
- package/dist/esm/drawer/plotUtil.js +1 -266
- package/dist/esm/drawer/shape/Assemble.js +1 -415
- package/dist/esm/drawer/shape/AttackArrow.js +1 -442
- package/dist/esm/drawer/shape/BaseShape.js +1 -383
- package/dist/esm/drawer/shape/Bow.js +1 -375
- package/dist/esm/drawer/shape/Circle.js +1 -461
- package/dist/esm/drawer/shape/Curve.js +1 -386
- package/dist/esm/drawer/shape/DragPoint.js +1 -211
- package/dist/esm/drawer/shape/Elliptic.js +1 -491
- package/dist/esm/drawer/shape/Formation.js +1 -395
- package/dist/esm/drawer/shape/PincerArrow.js +1 -445
- package/dist/esm/drawer/shape/Point.js +1 -131
- package/dist/esm/drawer/shape/Polygon.js +1 -368
- package/dist/esm/drawer/shape/Polyline.js +1 -325
- package/dist/esm/drawer/shape/RegularPolygon.js +1 -468
- package/dist/esm/drawer/shape/RightAngleArrow.js +1 -423
- package/dist/esm/drawer/shape/Sector.js +1 -568
- package/dist/esm/drawer/shape/StraightArrow.js +1 -422
- package/dist/esm/drawer/shape/SwallowtailArrow.js +1 -438
- package/dist/esm/drawer/types.js +1 -11
- package/dist/esm/drawer/utils.js +1 -381
- package/dist/esm/global.css +22 -1
- package/dist/esm/graphicLayer/BaseEntity.js +1 -51
- package/dist/esm/graphicLayer/BaseLayer.js +1 -730
- package/dist/esm/graphicLayer/BasePointPrimitive.js +1 -45
- package/dist/esm/graphicLayer/BasePrimitive.js +1 -36
- package/dist/esm/graphicLayer/BasePrimitiveInstance.js +1 -37
- package/dist/esm/graphicLayer/BaseSource.d.ts +1 -1
- package/dist/esm/graphicLayer/BaseSource.js +1 -630
- package/dist/esm/graphicLayer/BillboardEntity.js +1 -106
- package/dist/esm/graphicLayer/BillboardPrimitive.js +1 -119
- package/dist/esm/graphicLayer/BoxEntity.js +1 -99
- package/dist/esm/graphicLayer/BoxPrimitive.js +1 -48
- package/dist/esm/graphicLayer/BoxPrimitiveInstance.js +1 -91
- package/dist/esm/graphicLayer/EllipseEntity.js +1 -110
- package/dist/esm/graphicLayer/EllipsePrimitive.js +1 -47
- package/dist/esm/graphicLayer/EllipsePrimitiveInstance.js +1 -98
- package/dist/esm/graphicLayer/EllipsoidEntity.js +1 -118
- package/dist/esm/graphicLayer/EllipsoidPrimitive.js +1 -48
- package/dist/esm/graphicLayer/EllipsoidPrimitiveInstance.js +1 -113
- package/dist/esm/graphicLayer/GraphicLayerCollection.js +1 -491
- package/dist/esm/graphicLayer/HtmlEntity.d.ts +4 -0
- package/dist/esm/graphicLayer/HtmlEntity.js +1 -189
- package/dist/esm/graphicLayer/LabelEntity.js +1 -110
- package/dist/esm/graphicLayer/LabelPrimitive.js +1 -127
- package/dist/esm/graphicLayer/ModelEntity.js +1 -122
- package/dist/esm/graphicLayer/ModelPrimitive.js +1 -59
- package/dist/esm/graphicLayer/ModelPrimitiveInstance.js +1 -86
- package/dist/esm/graphicLayer/PointEntity.js +1 -94
- package/dist/esm/graphicLayer/PointPrimitive.js +1 -107
- package/dist/esm/graphicLayer/PolygonEntity.js +1 -103
- package/dist/esm/graphicLayer/PolygonGroundPrimitive.js +1 -49
- package/dist/esm/graphicLayer/PolygonGroundPrimitiveImageMaterialInstance.js +1 -87
- package/dist/esm/graphicLayer/PolygonPrimitive.js +1 -60
- package/dist/esm/graphicLayer/PolygonPrimitiveImageMaterialInstance.js +1 -84
- package/dist/esm/graphicLayer/PolygonPrimitiveInstance.js +1 -101
- package/dist/esm/graphicLayer/PolylineEntity.js +1 -96
- package/dist/esm/graphicLayer/PolylineGroundPrimitive.js +1 -55
- package/dist/esm/graphicLayer/PolylineGroundPrimitiveInstance.js +1 -85
- package/dist/esm/graphicLayer/PolylinePrimitive.js +1 -53
- package/dist/esm/graphicLayer/PolylinePrimitiveInstance.js +1 -85
- package/dist/esm/graphicLayer/PolylineVolumeEntity.js +1 -105
- package/dist/esm/graphicLayer/PolylineVolumePrimitive.js +1 -47
- package/dist/esm/graphicLayer/PolylineVolumePrimitiveInstance.js +1 -94
- package/dist/esm/graphicLayer/WallEntity.js +1 -96
- package/dist/esm/graphicLayer/WallPrimitive.js +1 -47
- package/dist/esm/graphicLayer/WallPrimitiveInstance.js +1 -88
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +1 -173
- package/dist/esm/lowAltitude/BarrierLayer.js +1 -172
- package/dist/esm/lowAltitude/BaseGridMvtLayer.js +1 -122
- package/dist/esm/lowAltitude/FactorLayer.js +1 -199
- package/dist/esm/lowAltitude/FlightPlanning.js +1 -411
- package/dist/esm/lowAltitude/FlightRiskEvaluation.js +1 -543
- package/dist/esm/lowAltitude/GridDraw.js +1 -137
- package/dist/esm/lowAltitude/PoiLayer.js +1 -74
- package/dist/esm/lowAltitude/RoutePlanning.d.ts +85 -0
- package/dist/esm/lowAltitude/RoutePlanning.js +1 -0
- package/dist/esm/lowAltitude/VisitLayer.js +1 -180
- package/dist/esm/map/Event.js +1 -377
- package/dist/esm/map/GroundSkyBox.js +1 -166
- package/dist/esm/map/Map.js +1 -881
- package/dist/esm/map/Property.js +1 -35
- package/dist/esm/material/AtmosphericDispersion.js +1 -569
- package/dist/esm/material/GlobalVolumetricCloud.js +1 -377
- package/dist/esm/material/VolumeCloud.js +1 -115
- package/dist/esm/material/WeatherEffects.js +1 -351
- package/dist/esm/material/entity/BaseMaterialProperty.js +1 -51
- package/dist/esm/material/entity/CircleWaveMaterialProperty.js +1 -101
- package/dist/esm/material/entity/DynamicWallMaterialProperty.js +1 -101
- package/dist/esm/material/entity/ImageGlowingMaterialProperty.js +1 -89
- package/dist/esm/material/entity/ImageMaterialProperty.js +1 -34
- package/dist/esm/material/entity/PolylineTrailLinkMaterialProperty.js +1 -132
- package/dist/esm/material/primitive/BaseMaterialAppearance.js +1 -28
- package/dist/esm/material/primitive/ImageGlowingMaterialAppearance.js +1 -77
- package/dist/esm/material/primitive/ImageMaterialAppearance.js +1 -77
- package/dist/esm/measure/Area.js +1 -220
- package/dist/esm/measure/BaseDraw.js +1 -105
- package/dist/esm/measure/Distance.js +1 -223
- package/dist/esm/measure/index.js +1 -266
- package/dist/esm/measure/types.js +1 -17
- package/dist/esm/measure/utils.js +1 -319
- package/dist/esm/particle/BaseParticle.js +1 -196
- package/dist/esm/particle/FireParticle.js +1 -65
- package/dist/esm/particle/FountainParticle.js +1 -80
- package/dist/esm/particle/SmokeParticle.js +1 -65
- package/dist/esm/particle/common.js +1 -23
- package/dist/esm/particle/index.js +1 -5
- package/dist/esm/property/PositionProperty.js +1 -56
- package/dist/esm/tileLayer/ArcGisLayer.js +1 -41
- package/dist/esm/tileLayer/CustomRasterClipWorkerClient.js +1 -147
- package/dist/esm/tileLayer/CustomRasterLayer.js +1 -1126
- package/dist/esm/tileLayer/ImageryLayer.js +1 -44
- package/dist/esm/tileLayer/MvtVectorLoad.js +1 -1549
- package/dist/esm/tileLayer/MvtVectorWorkerClient.js +1 -126
- package/dist/esm/tileLayer/RasterLayer.js +1 -23
- package/dist/esm/tileLayer/WmsLayer.js +1 -26
- package/dist/esm/tileLayer/WmtsLayer.js +1 -23
- package/dist/esm/tool/BuildClampedPolygonGrid.js +1 -278
- package/dist/esm/tool/Compass.js +1 -282
- package/dist/esm/tool/PrimitiveCluster.js +1 -706
- package/dist/esm/tool/TimerInterval.js +1 -58
- package/dist/esm/tool/common.js +1 -405
- package/dist/esm/tool/fetch.js +1 -222
- package/dist/esm/tool/heatmap.js +1 -631
- package/dist/esm/tool/utils.d.ts +1 -0
- package/dist/esm/tool/utils.js +1 -501
- package/dist/esm/toolTip/index.js +1 -79
- package/dist/esm/videoFusion/BaseVideo.d.ts +7 -0
- package/dist/esm/videoFusion/BaseVideo.js +1 -330
- package/dist/esm/videoFusion/VideoProject.js +1 -230
- package/dist/esm/videoFusion/VideoTexture.js +1 -163
- package/dist/esm/visualization/BaseHeatmap.js +1 -271
- package/dist/esm/visualization/BoundaryHighlight.d.ts +136 -0
- package/dist/esm/visualization/BoundaryHighlight.js +1 -0
- package/dist/esm/visualization/DynamicWater.js +1 -289
- package/dist/esm/visualization/Frustum.js +1 -248
- package/dist/esm/visualization/Heatmap2d.js +1 -97
- package/dist/esm/visualization/Heatmap3d.js +1 -281
- package/dist/esm/visualization/MigrationEffect.js +1 -397
- package/dist/esm/visualization/PointCluster.js +1 -220
- package/dist/esm/visualization/RadarScan.js +1 -333
- package/dist/esm/visualization/SampledTerrainRiver.d.ts +180 -0
- package/dist/esm/visualization/SampledTerrainRiver.js +1 -0
- package/dist/esm/visualization/SampledTerrainWater.d.ts +170 -0
- package/dist/esm/visualization/SampledTerrainWater.js +1 -0
- package/dist/esm/visualization/WindField.d.ts +72 -0
- package/dist/esm/visualization/WindField.js +1 -0
- package/dist/esm/visualization/windCore.d.ts +161 -0
- package/dist/esm/visualization/windCore.js +8 -0
- package/dist/umd/deeptwins-engine-3d.min.css +1 -1
- package/dist/umd/deeptwins-engine-3d.min.js +1 -1
- package/package.json +6 -4
|
@@ -1,461 +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 _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
3
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
5
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
6
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
7
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
8
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
-
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); } }
|
|
10
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
11
|
-
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
|
12
|
-
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
|
13
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
14
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
15
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
16
|
-
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
17
|
-
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
18
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
19
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
20
|
-
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; }
|
|
21
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
22
|
-
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); }
|
|
23
|
-
import * as Cesium from 'deeptwins-cesium';
|
|
24
|
-
import { isNil } from 'lodash';
|
|
25
|
-
import * as utils from "../../tool/utils";
|
|
26
|
-
import { STATUS } from "../types";
|
|
27
|
-
import { getPolygonRestoreHandlePosition, normalizePolygonPositions } from "../utils";
|
|
28
|
-
import BaseShape from "./BaseShape";
|
|
29
|
-
import DragPoint from "./DragPoint";
|
|
30
|
-
import { ShapePolygon } from "./Polygon";
|
|
31
|
-
import { ShapePolyline } from "./Polyline";
|
|
32
|
-
|
|
33
|
-
// 默认使用 64 段近似圆,兼顾渲染效果和顶点数量。
|
|
34
|
-
var DEFAULT_CIRCLE_SEGMENTS = 64;
|
|
35
|
-
// 过低分段会明显退化成多边形,统一收敛到最小值。
|
|
36
|
-
var MIN_CIRCLE_SEGMENTS = 16;
|
|
37
|
-
// 半径过小时不创建几何,避免出现退化图形。
|
|
38
|
-
var CIRCLE_MIN_RADIUS = 0.01;
|
|
39
|
-
var Circle = /*#__PURE__*/function (_BaseShape) {
|
|
40
|
-
_inherits(Circle, _BaseShape);
|
|
41
|
-
var _super = _createSuper(Circle);
|
|
42
|
-
function Circle(drawContext, config) {
|
|
43
|
-
var _this;
|
|
44
|
-
_classCallCheck(this, Circle);
|
|
45
|
-
_this = _super.call(this, drawContext);
|
|
46
|
-
_defineProperty(_assertThisInitialized(_this), "type", 'circle');
|
|
47
|
-
_defineProperty(_assertThisInitialized(_this), "shapePolylineLayer", void 0);
|
|
48
|
-
_defineProperty(_assertThisInitialized(_this), "shapePolygonLayer", void 0);
|
|
49
|
-
_defineProperty(_assertThisInitialized(_this), "_segments", void 0);
|
|
50
|
-
_defineProperty(_assertThisInitialized(_this), "_centerPosition", void 0);
|
|
51
|
-
_defineProperty(_assertThisInitialized(_this), "_handlePosition", void 0);
|
|
52
|
-
_this._segments = _this._normalizeSegments(config === null || config === void 0 ? void 0 : config.segments);
|
|
53
|
-
_this._centerPosition = null;
|
|
54
|
-
_this._handlePosition = null;
|
|
55
|
-
_this.clampToGround = isNil(config === null || config === void 0 ? void 0 : config.clampToGround) ? _this.clampToGround : config.clampToGround;
|
|
56
|
-
_this.pointStyle.heightReference = _this.clampToGround ? Cesium.HeightReference.CLAMP_TO_GROUND : Cesium.HeightReference.NONE;
|
|
57
|
-
_this.polylineStyle.clampToGround = _this.clampToGround;
|
|
58
|
-
if (_this.clampToGround) {
|
|
59
|
-
_this.polygonStyle.heightReference = Cesium.HeightReference.CLAMP_TO_GROUND;
|
|
60
|
-
_this.polygonStyle.perPositionHeight = false;
|
|
61
|
-
} else {
|
|
62
|
-
_this.polygonStyle.heightReference = Cesium.HeightReference.NONE;
|
|
63
|
-
_this.polygonStyle.perPositionHeight = true;
|
|
64
|
-
}
|
|
65
|
-
return _this;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
// 统一收敛外部传入的精度参数,避免非法值直接进入几何计算。
|
|
69
|
-
_createClass(Circle, [{
|
|
70
|
-
key: "_normalizeSegments",
|
|
71
|
-
value: function _normalizeSegments(segments) {
|
|
72
|
-
var numericSegments = Number(segments);
|
|
73
|
-
if (!Number.isFinite(numericSegments)) {
|
|
74
|
-
return DEFAULT_CIRCLE_SEGMENTS;
|
|
75
|
-
}
|
|
76
|
-
return Math.max(MIN_CIRCLE_SEGMENTS, Math.floor(numericSegments));
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
// 鼠标事件位置统一转成内部经纬高三元组。
|
|
80
|
-
}, {
|
|
81
|
-
key: "_toPositionTuple",
|
|
82
|
-
value: function _toPositionTuple(position) {
|
|
83
|
-
var lng = position.lng,
|
|
84
|
-
lat = position.lat,
|
|
85
|
-
_position$alt = position.alt,
|
|
86
|
-
alt = _position$alt === void 0 ? 0 : _position$alt;
|
|
87
|
-
return [lng, lat, alt];
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
// 外框渲染始终闭合,方便绘制和编辑阶段实时预览圆边界。
|
|
91
|
-
}, {
|
|
92
|
-
key: "_getDrawPolylinePositions",
|
|
93
|
-
value: function _getDrawPolylinePositions() {
|
|
94
|
-
if (!this.positions.length) {
|
|
95
|
-
return [];
|
|
96
|
-
}
|
|
97
|
-
return [].concat(_toConsumableArray(this.positions), [this.positions[0]]);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
// 面渲染和 polygon 一致,末尾补首点形成闭环。
|
|
101
|
-
}, {
|
|
102
|
-
key: "_getDrawPolygonPositions",
|
|
103
|
-
value: function _getDrawPolygonPositions() {
|
|
104
|
-
if (!this.positions.length) {
|
|
105
|
-
return [];
|
|
106
|
-
}
|
|
107
|
-
return [].concat(_toConsumableArray(this.positions), [this.positions[0]]);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
// 统一释放线框和面图层,避免绘制中断后残留几何。
|
|
111
|
-
}, {
|
|
112
|
-
key: "_destroyShapeLayers",
|
|
113
|
-
value: function _destroyShapeLayers() {
|
|
114
|
-
this.shapePolylineLayer && this.shapePolylineLayer.destroy();
|
|
115
|
-
this.shapePolylineLayer = null;
|
|
116
|
-
this.shapePolygonLayer && this.shapePolygonLayer.destroy();
|
|
117
|
-
this.shapePolygonLayer = null;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
// 根据当前圆周点数组同步线框和面图层。
|
|
121
|
-
}, {
|
|
122
|
-
key: "_syncShapeLayers",
|
|
123
|
-
value: function _syncShapeLayers() {
|
|
124
|
-
if (!this.positions.length) {
|
|
125
|
-
this._destroyShapeLayers();
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
var polylinePositions = this._getDrawPolylinePositions();
|
|
129
|
-
var polygonPositions = this._getDrawPolygonPositions();
|
|
130
|
-
if (!this.shapePolylineLayer) {
|
|
131
|
-
this.shapePolylineLayer = new ShapePolyline(this.getMap(), {
|
|
132
|
-
positions: polylinePositions,
|
|
133
|
-
style: this.polylineStyle
|
|
134
|
-
});
|
|
135
|
-
} else {
|
|
136
|
-
this.shapePolylineLayer.update(polylinePositions);
|
|
137
|
-
}
|
|
138
|
-
if (!this.shapePolygonLayer) {
|
|
139
|
-
this.shapePolygonLayer = new ShapePolygon(this.getMap(), {
|
|
140
|
-
positions: polygonPositions,
|
|
141
|
-
style: this.polygonStyle
|
|
142
|
-
});
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
this.shapePolygonLayer.update(polygonPositions);
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
// 通过圆心和半径控制点,在局部 ENU 坐标系中生成近似圆顶点。
|
|
149
|
-
}, {
|
|
150
|
-
key: "_buildCirclePositions",
|
|
151
|
-
value: function _buildCirclePositions(centerPosition, handlePosition) {
|
|
152
|
-
var centerCartesian = this._toCartesian3(centerPosition);
|
|
153
|
-
var handleCartesian = this._toCartesian3(handlePosition);
|
|
154
|
-
if (!centerCartesian || !handleCartesian) {
|
|
155
|
-
return [];
|
|
156
|
-
}
|
|
157
|
-
var transform = Cesium.Transforms.eastNorthUpToFixedFrame(centerCartesian);
|
|
158
|
-
var inverseTransform = Cesium.Matrix4.inverseTransformation(transform, new Cesium.Matrix4());
|
|
159
|
-
var localHandle = Cesium.Matrix4.multiplyByPoint(inverseTransform, handleCartesian, new Cesium.Cartesian3());
|
|
160
|
-
var radius = Math.hypot(localHandle.x, localHandle.y);
|
|
161
|
-
if (!Number.isFinite(radius) || radius <= CIRCLE_MIN_RADIUS) {
|
|
162
|
-
return [];
|
|
163
|
-
}
|
|
164
|
-
var startAngle = Math.atan2(localHandle.y, localHandle.x);
|
|
165
|
-
var localZ = this.clampToGround ? 0 : localHandle.z;
|
|
166
|
-
var positions = [];
|
|
167
|
-
var angleStep = Cesium.Math.TWO_PI / this._segments;
|
|
168
|
-
for (var index = 0; index < this._segments; index += 1) {
|
|
169
|
-
var angle = startAngle + angleStep * index;
|
|
170
|
-
var localPoint = new Cesium.Cartesian3(radius * Math.cos(angle), radius * Math.sin(angle), localZ);
|
|
171
|
-
var worldPoint = Cesium.Matrix4.multiplyByPoint(transform, localPoint, new Cesium.Cartesian3());
|
|
172
|
-
var _utils$cartesian3ToLn = utils.cartesian3ToLngLatAlt(worldPoint),
|
|
173
|
-
lng = _utils$cartesian3ToLn.lng,
|
|
174
|
-
lat = _utils$cartesian3ToLn.lat,
|
|
175
|
-
alt = _utils$cartesian3ToLn.alt;
|
|
176
|
-
positions.push([lng, lat, alt]);
|
|
177
|
-
}
|
|
178
|
-
return positions;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
// 计算半径控制点相对圆心的局部 ENU 向量,用于整体平移时保持半径。
|
|
182
|
-
}, {
|
|
183
|
-
key: "_getLocalHandleVector",
|
|
184
|
-
value: function _getLocalHandleVector(centerPosition, handlePosition) {
|
|
185
|
-
var centerCartesian = this._toCartesian3(centerPosition);
|
|
186
|
-
var handleCartesian = this._toCartesian3(handlePosition);
|
|
187
|
-
if (!centerCartesian || !handleCartesian) {
|
|
188
|
-
return null;
|
|
189
|
-
}
|
|
190
|
-
var transform = Cesium.Transforms.eastNorthUpToFixedFrame(centerCartesian);
|
|
191
|
-
var inverseTransform = Cesium.Matrix4.inverseTransformation(transform, new Cesium.Matrix4());
|
|
192
|
-
return Cesium.Matrix4.multiplyByPoint(inverseTransform, handleCartesian, new Cesium.Cartesian3());
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
// 把局部 ENU 向量重新投回新的圆心,得到新的半径控制点位置。
|
|
196
|
-
}, {
|
|
197
|
-
key: "_getPositionByLocalVector",
|
|
198
|
-
value: function _getPositionByLocalVector(centerPosition, localVector) {
|
|
199
|
-
var centerCartesian = this._toCartesian3(centerPosition);
|
|
200
|
-
if (!centerCartesian) {
|
|
201
|
-
return null;
|
|
202
|
-
}
|
|
203
|
-
var transform = Cesium.Transforms.eastNorthUpToFixedFrame(centerCartesian);
|
|
204
|
-
var worldPoint = Cesium.Matrix4.multiplyByPoint(transform, localVector, new Cesium.Cartesian3());
|
|
205
|
-
var _utils$cartesian3ToLn2 = utils.cartesian3ToLngLatAlt(worldPoint),
|
|
206
|
-
lng = _utils$cartesian3ToLn2.lng,
|
|
207
|
-
lat = _utils$cartesian3ToLn2.lat,
|
|
208
|
-
alt = _utils$cartesian3ToLn2.alt;
|
|
209
|
-
return [lng, lat, alt];
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
// 统一更新圆心、半径控制点、圆周顶点数组和渲染图层。
|
|
213
|
-
}, {
|
|
214
|
-
key: "_applyGeometry",
|
|
215
|
-
value: function _applyGeometry(centerPosition, handlePosition) {
|
|
216
|
-
var positions = this._buildCirclePositions(centerPosition, handlePosition);
|
|
217
|
-
if (positions.length !== this._segments) {
|
|
218
|
-
return false;
|
|
219
|
-
}
|
|
220
|
-
this._centerPosition = centerPosition ? _toConsumableArray(centerPosition) : null;
|
|
221
|
-
this._handlePosition = _toConsumableArray(positions[0]);
|
|
222
|
-
this.positions = positions;
|
|
223
|
-
this._syncShapeLayers();
|
|
224
|
-
return true;
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
// 编辑结束或销毁时统一释放两个控制点。
|
|
228
|
-
}, {
|
|
229
|
-
key: "_destroyEditHandles",
|
|
230
|
-
value: function _destroyEditHandles() {
|
|
231
|
-
this.dragPoints.forEach(function (point) {
|
|
232
|
-
return point.destroy();
|
|
233
|
-
});
|
|
234
|
-
this.dragPoints = [];
|
|
235
|
-
this.dragLayer = null;
|
|
236
|
-
this.dragging = false;
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
// 创建编辑控制点:圆心点负责平移,半径点负责修改半径。
|
|
240
|
-
}, {
|
|
241
|
-
key: "_createEditHandle",
|
|
242
|
-
value: function _createEditHandle(position, role) {
|
|
243
|
-
var handle = new DragPoint(this.getMap(), {
|
|
244
|
-
positions: position,
|
|
245
|
-
style: this.pointStyle
|
|
246
|
-
});
|
|
247
|
-
handle.handleRole = role;
|
|
248
|
-
handle.startEdit();
|
|
249
|
-
return handle;
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
// 几何变化后把两个控制点同步到最新位置。
|
|
253
|
-
}, {
|
|
254
|
-
key: "_syncEditHandles",
|
|
255
|
-
value: function _syncEditHandles() {
|
|
256
|
-
var centerHandle = this.dragPoints.find(function (point) {
|
|
257
|
-
return point.handleRole === 'center';
|
|
258
|
-
});
|
|
259
|
-
var radiusHandle = this.dragPoints.find(function (point) {
|
|
260
|
-
return point.handleRole === 'radius';
|
|
261
|
-
});
|
|
262
|
-
if (centerHandle && this._centerPosition) {
|
|
263
|
-
centerHandle.mouseDragChange({
|
|
264
|
-
lng: this._centerPosition[0],
|
|
265
|
-
lat: this._centerPosition[1],
|
|
266
|
-
alt: this._centerPosition[2]
|
|
267
|
-
});
|
|
268
|
-
}
|
|
269
|
-
if (radiusHandle && this._handlePosition) {
|
|
270
|
-
radiusHandle.mouseDragChange({
|
|
271
|
-
lng: this._handlePosition[0],
|
|
272
|
-
lat: this._handlePosition[1],
|
|
273
|
-
alt: this._handlePosition[2]
|
|
274
|
-
});
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
// 绘制预览阶段透出当前近似圆顶点数组。
|
|
279
|
-
}, {
|
|
280
|
-
key: "_emitMouseMoveChange",
|
|
281
|
-
value: function _emitMouseMoveChange() {
|
|
282
|
-
this._drawContext.options.onMouseMoveChange && this._drawContext.options.onMouseMoveChange({
|
|
283
|
-
layer: this,
|
|
284
|
-
positions: this.positions
|
|
285
|
-
});
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
// 编辑态拖拽时透出最新圆周顶点数组。
|
|
289
|
-
}, {
|
|
290
|
-
key: "_emitPointsChange",
|
|
291
|
-
value: function _emitPointsChange() {
|
|
292
|
-
var _this$_drawContext$op, _this$_drawContext$op2;
|
|
293
|
-
((_this$_drawContext$op = this._drawContext.options) === null || _this$_drawContext$op === void 0 ? void 0 : _this$_drawContext$op.onPointsChange) && ((_this$_drawContext$op2 = this._drawContext.options) === null || _this$_drawContext$op2 === void 0 ? void 0 : _this$_drawContext$op2.onPointsChange({
|
|
294
|
-
layer: this,
|
|
295
|
-
positions: this.positions
|
|
296
|
-
}));
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
// 统一完成绘制:入库、触发回调并进入编辑态。
|
|
300
|
-
}, {
|
|
301
|
-
key: "_finishDraw",
|
|
302
|
-
value: function _finishDraw() {
|
|
303
|
-
if (!this.positions.length) {
|
|
304
|
-
return;
|
|
305
|
-
}
|
|
306
|
-
this._drawContext.setDrawerLayer(this.id, this);
|
|
307
|
-
this.drawEnd(this);
|
|
308
|
-
this.startEdit();
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
// 根据传入 polygon 顶点恢复 circle shape,并回到圆形编辑模型。
|
|
312
|
-
}, {
|
|
313
|
-
key: "transformData",
|
|
314
|
-
value: function transformData(positions) {
|
|
315
|
-
var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
316
|
-
var normalizedPositions = normalizePolygonPositions(positions);
|
|
317
|
-
var centerPosition = Array.isArray(config === null || config === void 0 ? void 0 : config.center) && config.center.length >= 2 ? [config.center[0], config.center[1], config.center[2] || 0] : null;
|
|
318
|
-
var handlePosition = getPolygonRestoreHandlePosition(normalizedPositions);
|
|
319
|
-
this._segments = this._normalizeSegments(config === null || config === void 0 ? void 0 : config.segments);
|
|
320
|
-
if (!centerPosition || !handlePosition) {
|
|
321
|
-
return false;
|
|
322
|
-
}
|
|
323
|
-
if (!this._applyGeometry(centerPosition, handlePosition)) {
|
|
324
|
-
return false;
|
|
325
|
-
}
|
|
326
|
-
this._drawContext.setDrawerLayer(this.id, this);
|
|
327
|
-
return true;
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
// 第一次点击记录圆心,第二次点击根据半径控制点完成圆形绘制。
|
|
331
|
-
}, {
|
|
332
|
-
key: "addPoint",
|
|
333
|
-
value: function addPoint(position) {
|
|
334
|
-
var nextPosition = this._toPositionTuple(position);
|
|
335
|
-
if (!this._centerPosition) {
|
|
336
|
-
this._centerPosition = nextPosition;
|
|
337
|
-
this._handlePosition = null;
|
|
338
|
-
this.positions = [];
|
|
339
|
-
this._drawContext._changeStatus(STATUS.DRAWING);
|
|
340
|
-
this._drawContext._updateTooltip();
|
|
341
|
-
return;
|
|
342
|
-
}
|
|
343
|
-
if (!this._applyGeometry(this._centerPosition, nextPosition)) {
|
|
344
|
-
return;
|
|
345
|
-
}
|
|
346
|
-
this.drawing(this);
|
|
347
|
-
this._finishDraw();
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
// 鼠标移动时根据当前半径实时预览圆形。
|
|
351
|
-
}, {
|
|
352
|
-
key: "updateTempPosition",
|
|
353
|
-
value: function updateTempPosition(position) {
|
|
354
|
-
if (!this._centerPosition) {
|
|
355
|
-
return;
|
|
356
|
-
}
|
|
357
|
-
var nextPosition = this._toPositionTuple(position);
|
|
358
|
-
if (!this._applyGeometry(this._centerPosition, nextPosition)) {
|
|
359
|
-
this.positions = [];
|
|
360
|
-
this._destroyShapeLayers();
|
|
361
|
-
return;
|
|
362
|
-
}
|
|
363
|
-
this._emitMouseMoveChange();
|
|
364
|
-
}
|
|
365
|
-
|
|
366
|
-
// 兼容外部显式结束绘制的调用,按当前控制点收敛最终 geometry。
|
|
367
|
-
}, {
|
|
368
|
-
key: "endDraw",
|
|
369
|
-
value: function endDraw() {
|
|
370
|
-
if (!this._centerPosition || !this._handlePosition) {
|
|
371
|
-
return;
|
|
372
|
-
}
|
|
373
|
-
if (!this._applyGeometry(this._centerPosition, this._handlePosition)) {
|
|
374
|
-
return;
|
|
375
|
-
}
|
|
376
|
-
this._finishDraw();
|
|
377
|
-
}
|
|
378
|
-
|
|
379
|
-
// 编辑态只保留两个控制点,不退化为普通 polygon 的逐点编辑。
|
|
380
|
-
}, {
|
|
381
|
-
key: "startEdit",
|
|
382
|
-
value: function startEdit() {
|
|
383
|
-
if (!this._centerPosition || !this._handlePosition) {
|
|
384
|
-
return;
|
|
385
|
-
}
|
|
386
|
-
_get(_getPrototypeOf(Circle.prototype), "startEdit", this).call(this);
|
|
387
|
-
this._destroyEditHandles();
|
|
388
|
-
this.dragPoints = [this._createEditHandle(this._centerPosition, 'center'), this._createEditHandle(this._handlePosition, 'radius')];
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
// 记录当前拖拽的控制点。
|
|
392
|
-
}, {
|
|
393
|
-
key: "mouseDragStart",
|
|
394
|
-
value: function mouseDragStart(position, dragLayer) {
|
|
395
|
-
var _this$dragLayer;
|
|
396
|
-
this.dragging = true;
|
|
397
|
-
this.dragLayer = dragLayer;
|
|
398
|
-
(_this$dragLayer = this.dragLayer) === null || _this$dragLayer === void 0 || _this$dragLayer.mouseDragStart();
|
|
399
|
-
}
|
|
400
|
-
|
|
401
|
-
// 拖圆心时整体平移,拖半径点时只更新半径。
|
|
402
|
-
}, {
|
|
403
|
-
key: "mouseDragChange",
|
|
404
|
-
value: function mouseDragChange(position) {
|
|
405
|
-
if (!this.dragging || !this.dragLayer) {
|
|
406
|
-
return;
|
|
407
|
-
}
|
|
408
|
-
if (!this._centerPosition || !this._handlePosition) {
|
|
409
|
-
return;
|
|
410
|
-
}
|
|
411
|
-
var nextPosition = this._toPositionTuple(position);
|
|
412
|
-
var nextCenterPosition = _toConsumableArray(this._centerPosition);
|
|
413
|
-
var nextHandlePosition = _toConsumableArray(this._handlePosition);
|
|
414
|
-
if (this.dragLayer.handleRole === 'center') {
|
|
415
|
-
var localHandleVector = this._getLocalHandleVector(nextCenterPosition, nextHandlePosition);
|
|
416
|
-
nextCenterPosition = nextPosition;
|
|
417
|
-
var translatedHandlePosition = localHandleVector && this._getPositionByLocalVector(nextCenterPosition, localHandleVector);
|
|
418
|
-
if (!translatedHandlePosition) {
|
|
419
|
-
return;
|
|
420
|
-
}
|
|
421
|
-
nextHandlePosition = translatedHandlePosition;
|
|
422
|
-
} else {
|
|
423
|
-
nextHandlePosition = nextPosition;
|
|
424
|
-
}
|
|
425
|
-
if (!this._applyGeometry(nextCenterPosition, nextHandlePosition)) {
|
|
426
|
-
return;
|
|
427
|
-
}
|
|
428
|
-
this._syncEditHandles();
|
|
429
|
-
this._emitPointsChange();
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
// 结束拖拽时只清理状态,不生成额外中间点。
|
|
433
|
-
}, {
|
|
434
|
-
key: "mouseDragEnd",
|
|
435
|
-
value: function mouseDragEnd() {
|
|
436
|
-
this.dragging = false;
|
|
437
|
-
this.dragLayer = null;
|
|
438
|
-
}
|
|
439
|
-
|
|
440
|
-
// 结束编辑后销毁两个控制点。
|
|
441
|
-
}, {
|
|
442
|
-
key: "endEdit",
|
|
443
|
-
value: function endEdit(layer) {
|
|
444
|
-
var emitComplete = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
445
|
-
_get(_getPrototypeOf(Circle.prototype), "endEdit", this).call(this, layer, emitComplete);
|
|
446
|
-
this._destroyEditHandles();
|
|
447
|
-
}
|
|
448
|
-
|
|
449
|
-
// 销毁时同时清理渲染图层和内部几何状态。
|
|
450
|
-
}, {
|
|
451
|
-
key: "destroy",
|
|
452
|
-
value: function destroy() {
|
|
453
|
-
_get(_getPrototypeOf(Circle.prototype), "destroy", this).call(this);
|
|
454
|
-
this._destroyShapeLayers();
|
|
455
|
-
this._centerPosition = null;
|
|
456
|
-
this._handlePosition = null;
|
|
457
|
-
}
|
|
458
|
-
}]);
|
|
459
|
-
return Circle;
|
|
460
|
-
}(BaseShape);
|
|
461
|
-
export default Circle;
|
|
1
|
+
(function(_0x398afa,_0x52d3f1){var _0x4d6103=_0x5878,_0x35fa6b=_0x398afa();while(!![]){try{var _0x43f851=-parseInt(_0x4d6103(0x1ea))/0x1+parseInt(_0x4d6103(0x1b5))/0x2*(parseInt(_0x4d6103(0x195))/0x3)+-parseInt(_0x4d6103(0x197))/0x4+-parseInt(_0x4d6103(0x1d0))/0x5+-parseInt(_0x4d6103(0x1b9))/0x6+-parseInt(_0x4d6103(0x1af))/0x7*(parseInt(_0x4d6103(0x1dc))/0x8)+parseInt(_0x4d6103(0x186))/0x9;if(_0x43f851===_0x52d3f1)break;else _0x35fa6b['push'](_0x35fa6b['shift']());}catch(_0x31e44d){_0x35fa6b['push'](_0x35fa6b['shift']());}}}(_0x3a67,0xae7e4));function _typeof(_0x3be0a9){'@babel/helpers - typeof';var _0xd78a93=_0x5878;return _typeof=_0xd78a93(0x1b4)==typeof Symbol&&'symbol'==typeof Symbol[_0xd78a93(0x1a5)]?function(_0x7033cc){return typeof _0x7033cc;}:function(_0x5bb8a6){var _0x7e5850=_0xd78a93;return _0x5bb8a6&&_0x7e5850(0x1b4)==typeof Symbol&&_0x5bb8a6['constructor']===Symbol&&_0x5bb8a6!==Symbol[_0x7e5850(0x1a9)]?_0x7e5850(0x1d6):typeof _0x5bb8a6;},_typeof(_0x3be0a9);}function _toConsumableArray(_0x2fe476){return _arrayWithoutHoles(_0x2fe476)||_iterableToArray(_0x2fe476)||_unsupportedIterableToArray(_0x2fe476)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError('Invalid\x20attempt\x20to\x20spread\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.');}function _unsupportedIterableToArray(_0x367139,_0x36f266){var _0x3e8dfa=_0x5878;if(!_0x367139)return;if(typeof _0x367139==='string')return _arrayLikeToArray(_0x367139,_0x36f266);var _0x1caa8b=Object[_0x3e8dfa(0x1a9)]['toString']['call'](_0x367139)['slice'](0x8,-0x1);if(_0x1caa8b===_0x3e8dfa(0x1ba)&&_0x367139['constructor'])_0x1caa8b=_0x367139['constructor']['name'];if(_0x1caa8b===_0x3e8dfa(0x187)||_0x1caa8b==='Set')return Array[_0x3e8dfa(0x1be)](_0x367139);if(_0x1caa8b==='Arguments'||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x3e8dfa(0x18e)](_0x1caa8b))return _arrayLikeToArray(_0x367139,_0x36f266);}function _iterableToArray(_0x41656a){var _0x1a8700=_0x5878;if(typeof Symbol!==_0x1a8700(0x1d4)&&_0x41656a[Symbol['iterator']]!=null||_0x41656a[_0x1a8700(0x1cc)]!=null)return Array[_0x1a8700(0x1be)](_0x41656a);}function _arrayWithoutHoles(_0x2782a0){if(Array['isArray'](_0x2782a0))return _arrayLikeToArray(_0x2782a0);}function _arrayLikeToArray(_0x19aa34,_0x34ce6f){var _0x10b442=_0x5878;if(_0x34ce6f==null||_0x34ce6f>_0x19aa34[_0x10b442(0x1bd)])_0x34ce6f=_0x19aa34[_0x10b442(0x1bd)];for(var _0x2e5cb7=0x0,_0x4b107d=new Array(_0x34ce6f);_0x2e5cb7<_0x34ce6f;_0x2e5cb7++)_0x4b107d[_0x2e5cb7]=_0x19aa34[_0x2e5cb7];return _0x4b107d;}function _classCallCheck(_0x26234e,_0x37597a){var _0x2fc5b0=_0x5878;if(!(_0x26234e instanceof _0x37597a))throw new TypeError(_0x2fc5b0(0x1eb));}function _defineProperties(_0x1274a5,_0x1331eb){var _0x58635a=_0x5878;for(var _0xcd4d71=0x0;_0xcd4d71<_0x1331eb[_0x58635a(0x1bd)];_0xcd4d71++){var _0xadbf48=_0x1331eb[_0xcd4d71];_0xadbf48['enumerable']=_0xadbf48['enumerable']||![],_0xadbf48[_0x58635a(0x19e)]=!![];if(_0x58635a(0x1e4)in _0xadbf48)_0xadbf48[_0x58635a(0x1ce)]=!![];Object['defineProperty'](_0x1274a5,_toPropertyKey(_0xadbf48['key']),_0xadbf48);}}function _createClass(_0x5e79b8,_0x34404a,_0x59a6c5){var _0x2d0c2f=_0x5878;if(_0x34404a)_defineProperties(_0x5e79b8[_0x2d0c2f(0x1a9)],_0x34404a);if(_0x59a6c5)_defineProperties(_0x5e79b8,_0x59a6c5);return Object['defineProperty'](_0x5e79b8,_0x2d0c2f(0x1a9),{'writable':![]}),_0x5e79b8;}function _get(){var _0xe68ed3=_0x5878;return typeof Reflect!=='undefined'&&Reflect[_0xe68ed3(0x1d5)]?_get=Reflect[_0xe68ed3(0x1d5)][_0xe68ed3(0x1b0)]():_get=function _0x645440(_0x3360fe,_0xecd191,_0xcc7314){var _0x3793ea=_0xe68ed3,_0x5f202e=_superPropBase(_0x3360fe,_0xecd191);if(!_0x5f202e)return;var _0x34869b=Object[_0x3793ea(0x1db)](_0x5f202e,_0xecd191);if(_0x34869b[_0x3793ea(0x1d5)])return _0x34869b[_0x3793ea(0x1d5)][_0x3793ea(0x1da)](arguments[_0x3793ea(0x1bd)]<0x3?_0x3360fe:_0xcc7314);return _0x34869b['value'];},_get['apply'](this,arguments);}function _superPropBase(_0x572136,_0x26982c){var _0xfd2ed1=_0x5878;while(!Object['prototype'][_0xfd2ed1(0x1d1)]['call'](_0x572136,_0x26982c)){_0x572136=_getPrototypeOf(_0x572136);if(_0x572136===null)break;}return _0x572136;}function _inherits(_0x474a4d,_0x3ccfa7){var _0x2bcfbc=_0x5878;if(typeof _0x3ccfa7!=='function'&&_0x3ccfa7!==null)throw new TypeError('Super\x20expression\x20must\x20either\x20be\x20null\x20or\x20a\x20function');_0x474a4d[_0x2bcfbc(0x1a9)]=Object['create'](_0x3ccfa7&&_0x3ccfa7['prototype'],{'constructor':{'value':_0x474a4d,'writable':!![],'configurable':!![]}}),Object['defineProperty'](_0x474a4d,_0x2bcfbc(0x1a9),{'writable':![]});if(_0x3ccfa7)_setPrototypeOf(_0x474a4d,_0x3ccfa7);}function _setPrototypeOf(_0x2c1d90,_0x2e9345){var _0x19691d=_0x5878;return _setPrototypeOf=Object[_0x19691d(0x198)]?Object['setPrototypeOf'][_0x19691d(0x1b0)]():function _0x997730(_0x4c94b4,_0xc59bae){return _0x4c94b4['__proto__']=_0xc59bae,_0x4c94b4;},_setPrototypeOf(_0x2c1d90,_0x2e9345);}function _createSuper(_0x466f64){var _0x284d83=_isNativeReflectConstruct();return function _0x3de6a2(){var _0x3da687=_0x5878,_0x4a7485=_getPrototypeOf(_0x466f64),_0x507da8;if(_0x284d83){var _0x7e8ef0=_getPrototypeOf(this)['constructor'];_0x507da8=Reflect[_0x3da687(0x1ed)](_0x4a7485,arguments,_0x7e8ef0);}else _0x507da8=_0x4a7485[_0x3da687(0x192)](this,arguments);return _possibleConstructorReturn(this,_0x507da8);};}function _0x3a67(){var _0x578d4b=['ChjVDg90ExbL','Bg5N','Bw91C2veCMfNq2HHBMDL','zMLUza','zMXVB3i','y2LYy2XL','ndL5vfrbswG','yMLUza','C2vNBwvUDhm','x2nYzwf0zuvKAxriyw5KBgu','x2fWCgX5r2vVBwv0CNK','zNvUy3rPB24','ndqZnKnzDhDjyW','x3nLz21LBNrZ','CgvYug9ZAxrPB25izwLNAhq','B3b0Aw9UCW','mZuXodrmD3v6v2m','t2jQzwn0','x3rVug9ZAxrPB25uDxbSzq','zgvMAw5LuhjVCgvYDhK','BgvUz3rO','zNjVBq','B2jQzwn0','twf0Aa','AxnbCNjHEq','x3n5BMntAgfWzuXHEwvYCW','x2DLDerYyxDqB2X5BgLUzvbVC2L0Aw9UCW','x2DLDerYyxDqB2X5z29Uug9ZAxrPB25Z','zw5KrhjHDW','B25qB2LUDhndAgfUz2u','Cg9ZAxrPB25Z','Cg9SEwXPBMvtDhLSzq','x2j1AwXKq2LYy2XLug9ZAxrPB25Z','C2HHCgvqB2X5BgLUzuXHEwvY','ywX0','qebPDgvYyxrVCG','x2vTAxrnB3vZzu1VDMvdAgfUz2u','D3jPDgfIBgu','vfDpx1bj','ntqYntmWnwHRvgPrrW','AgfZt3DUuhjVCgvYDhK','x3vWzgf0zvrVB2X0Axa','Cg9PBNrtDhLSzq','Dw5KzwzPBMvK','z2v0','C3LTyM9S','C3rHCNrfzgL0','x2DLDfbVC2L0Aw9UqNLmB2nHBfzLy3rVCG','vhjHBNnMB3jTCW','y2fSBa','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','otK2ntzIENvcvKu','qeb0B1bYAw1PDgL2zsbTDxn0ihjLDhvYBIbHihbYAw1PDgL2zsb2ywX1zs4','x2nLBNrLCLbVC2L0Aw9U','sgvPz2H0uMvMzxjLBMnL','DxbKyxrL','x2HHBMrSzvbVC2L0Aw9U','yxrHBJi','AhLWB3q','DMfSDwu','x3rVq2fYDgvZAwfUmW','Aw52zxjZzvrYyw5ZzM9YBwf0Aw9U','y2XHBxbuB0DYB3vUza','zhjHz2DPBMC','ChvZAa','mtm4mZC0mhbqt3jlDq','q2fUBM90ignHBgWGysbJBgfZCYbHCYbHigz1BMn0Aw9U','x25VCM1HBgL6zvnLz21LBNrZ','y29UC3rYDwn0','AgfUzgXLuM9Szq','AgvPz2H0uMvMzxjLBMnL','q2fYDgvZAwfUmW','mtK3otK1nZDvweD1BKy','twfW','AxngAw5PDgu','DMfSDwvpzG','Bw91C2veCMfNu3rHCNq','zhjHD2LUzW','x2rLC3rYB3LtAgfWzuXHEwvYCW','Cg9SEwDVBLn0EwXL','DgvZDa','z2v0uhjVDg90ExbLt2y','C2HHCgvqB2X5z29Utgf5zxi','twf0CML4na','yxbWBhK','CMfKAxvZ','y2vUDgvY','mtyWnuHywwvtEq','x2rLC3rYB3LfzgL0sgfUzgXLCW','ndm5otGWyLbHqNjK','C2v0uhjVDg90ExbLt2y','BxvSDgLWBhLcEvbVAw50','q0XbtvbFve9Fr1jpvu5e','y2fYDgvZAwfUm1rVtg5Ntgf0qwX0','zgvZDhjVEq','zhjHD0vUza','y29UzMLNDxjHyMXL','y29Uy2f0','zhjHz1bVAw50CW','tK9orq','zhjHz0XHEwvY','x2vTAxrqB2LUDhndAgfUz2u','x2zPBMLZAerYyxC','AxrLCMf0B3i','x2DLDeXVy2fSsgfUzgXLvMvJDg9Y','x2rYyxDdB250zxH0','z2v0twfW'];_0x3a67=function(){return _0x578d4b;};return _0x3a67();}function _possibleConstructorReturn(_0x344a8f,_0x5d65bd){var _0x19ae05=_0x5878;if(_0x5d65bd&&(_typeof(_0x5d65bd)===_0x19ae05(0x1bf)||typeof _0x5d65bd===_0x19ae05(0x1b4)))return _0x5d65bd;else{if(_0x5d65bd!==void 0x0)throw new TypeError('Derived\x20constructors\x20may\x20only\x20return\x20object\x20or\x20undefined');}return _assertThisInitialized(_0x344a8f);}function _assertThisInitialized(_0x3795f3){if(_0x3795f3===void 0x0)throw new ReferenceError('this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called');return _0x3795f3;}function _isNativeReflectConstruct(){var _0x248d02=_0x5878;if(typeof Reflect===_0x248d02(0x1d4)||!Reflect['construct'])return![];if(Reflect[_0x248d02(0x1ed)]['sham'])return![];if(typeof Proxy===_0x248d02(0x1b4))return!![];try{return Boolean['prototype'][_0x248d02(0x189)][_0x248d02(0x1da)](Reflect['construct'](Boolean,[],function(){})),!![];}catch(_0x80cfae){return![];}}function _getPrototypeOf(_0x1fcaf0){var _0x2ca4dc=_0x5878;return _getPrototypeOf=Object['setPrototypeOf']?Object[_0x2ca4dc(0x18f)]['bind']():function _0xe66220(_0x5c25a8){var _0x2602b=_0x2ca4dc;return _0x5c25a8['__proto__']||Object[_0x2602b(0x18f)](_0x5c25a8);},_getPrototypeOf(_0x1fcaf0);}function _defineProperty(_0x55439b,_0x1bf882,_0x2258df){var _0x2781e4=_0x5878;return _0x1bf882=_toPropertyKey(_0x1bf882),_0x1bf882 in _0x55439b?Object[_0x2781e4(0x1bc)](_0x55439b,_0x1bf882,{'value':_0x2258df,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x55439b[_0x1bf882]=_0x2258df,_0x55439b;}function _toPropertyKey(_0x48d3c0){var _0x19ec9d=_0x5878,_0x31d224=_toPrimitive(_0x48d3c0,'string');return _0x19ec9d(0x1d6)==_typeof(_0x31d224)?_0x31d224:String(_0x31d224);}function _toPrimitive(_0x460de3,_0x13439c){var _0x2c3438=_0x5878;if(_0x2c3438(0x1bf)!=_typeof(_0x460de3)||!_0x460de3)return _0x460de3;var _0x43f7b4=_0x460de3[Symbol['toPrimitive']];if(void 0x0!==_0x43f7b4){var _0xfc672d=_0x43f7b4[_0x2c3438(0x1da)](_0x460de3,_0x13439c||'default');if('object'!=_typeof(_0xfc672d))return _0xfc672d;throw new TypeError(_0x2c3438(0x1dd));}return('string'===_0x13439c?String:Number)(_0x460de3);}import*as _0x4993c9 from'deeptwins-cesium';import{isNil}from'lodash';import*as _0x105a4e from'../../tool/utils';import{STATUS}from'../types';function _0x5878(_0x51eea5,_0x16ed2d){_0x51eea5=_0x51eea5-0x186;var _0x3a6723=_0x3a67();var _0x5878fa=_0x3a6723[_0x51eea5];if(_0x5878['dAdEQF']===undefined){var _0x1ad390=function(_0x329c66){var _0x19b75d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4993c9='',_0x105a4e='';for(var _0x18acf8=0x0,_0x3d1577,_0x3be0a9,_0x7033cc=0x0;_0x3be0a9=_0x329c66['charAt'](_0x7033cc++);~_0x3be0a9&&(_0x3d1577=_0x18acf8%0x4?_0x3d1577*0x40+_0x3be0a9:_0x3be0a9,_0x18acf8++%0x4)?_0x4993c9+=String['fromCharCode'](0xff&_0x3d1577>>(-0x2*_0x18acf8&0x6)):0x0){_0x3be0a9=_0x19b75d['indexOf'](_0x3be0a9);}for(var _0x5bb8a6=0x0,_0x2fe476=_0x4993c9['length'];_0x5bb8a6<_0x2fe476;_0x5bb8a6++){_0x105a4e+='%'+('00'+_0x4993c9['charCodeAt'](_0x5bb8a6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x105a4e);};_0x5878['LVsMCH']=_0x1ad390,_0x5878['bEZBZB']={},_0x5878['dAdEQF']=!![];}var _0x21f183=_0x3a6723[0x0],_0x4ca23e=_0x51eea5+_0x21f183,_0x401a71=_0x5878['bEZBZB'][_0x4ca23e];return!_0x401a71?(_0x5878fa=_0x5878['LVsMCH'](_0x5878fa),_0x5878['bEZBZB'][_0x4ca23e]=_0x5878fa):_0x5878fa=_0x401a71,_0x5878fa;}import{getPolygonRestoreHandlePosition,normalizePolygonPositions}from'../utils';import _0x18acf8 from'./BaseShape';import _0x3d1577 from'./DragPoint';import{ShapePolygon}from'./Polygon';import{ShapePolyline}from'./Polyline';var DEFAULT_CIRCLE_SEGMENTS=0x40,MIN_CIRCLE_SEGMENTS=0x10,CIRCLE_MIN_RADIUS=0.01,Circle=function(_0x1904ab){var _0x495392=_0x5878;_inherits(_0x4b65ff,_0x1904ab);var _0x118808=_createSuper(_0x4b65ff);function _0x4b65ff(_0x2293a9,_0x34de83){var _0x32f275=_0x5878,_0x230ff1;return _classCallCheck(this,_0x4b65ff),_0x230ff1=_0x118808[_0x32f275(0x1da)](this,_0x2293a9),_defineProperty(_assertThisInitialized(_0x230ff1),'type',_0x32f275(0x1ae)),_defineProperty(_assertThisInitialized(_0x230ff1),_0x32f275(0x1ca),void 0x0),_defineProperty(_assertThisInitialized(_0x230ff1),_0x32f275(0x190),void 0x0),_defineProperty(_assertThisInitialized(_0x230ff1),'_segments',void 0x0),_defineProperty(_assertThisInitialized(_0x230ff1),_0x32f275(0x1de),void 0x0),_defineProperty(_assertThisInitialized(_0x230ff1),_0x32f275(0x1e1),void 0x0),_0x230ff1['_segments']=_0x230ff1[_0x32f275(0x1ec)](_0x34de83===null||_0x34de83===void 0x0?void 0x0:_0x34de83['segments']),_0x230ff1[_0x32f275(0x1de)]=null,_0x230ff1['_handlePosition']=null,_0x230ff1['clampToGround']=isNil(_0x34de83===null||_0x34de83===void 0x0?void 0x0:_0x34de83['clampToGround'])?_0x230ff1['clampToGround']:_0x34de83[_0x32f275(0x1e7)],_0x230ff1[_0x32f275(0x1d3)][_0x32f275(0x1ef)]=_0x230ff1['clampToGround']?_0x4993c9['HeightReference'][_0x32f275(0x19a)]:_0x4993c9[_0x32f275(0x1df)][_0x32f275(0x1a1)],_0x230ff1['polylineStyle'][_0x32f275(0x1e7)]=_0x230ff1[_0x32f275(0x1e7)],_0x230ff1['clampToGround']?(_0x230ff1[_0x32f275(0x18d)]['heightReference']=_0x4993c9[_0x32f275(0x1df)][_0x32f275(0x19a)],_0x230ff1['polygonStyle']['perPositionHeight']=![]):(_0x230ff1['polygonStyle']['heightReference']=_0x4993c9['HeightReference'][_0x32f275(0x1a1)],_0x230ff1['polygonStyle'][_0x32f275(0x1b7)]=!![]),_0x230ff1;}return _createClass(_0x4b65ff,[{'key':_0x495392(0x1ec),'value':function _0x165e5c(_0x465b2b){var _0x41b74b=_0x495392,_0x432069=Number(_0x465b2b);if(!Number[_0x41b74b(0x188)](_0x432069))return DEFAULT_CIRCLE_SEGMENTS;return Math['max'](MIN_CIRCLE_SEGMENTS,Math[_0x41b74b(0x1ad)](_0x432069));}},{'key':_0x495392(0x1bb),'value':function _0x2e3a15(_0xcf216e){var _0x29a5cd=_0xcf216e['lng'],_0x4d9fa6=_0xcf216e['lat'],_0x30b70b=_0xcf216e['alt'],_0x25de1d=_0x30b70b===void 0x0?0x0:_0x30b70b;return[_0x29a5cd,_0x4d9fa6,_0x25de1d];}},{'key':_0x495392(0x1c3),'value':function _0x4fad65(){var _0x2b0a4e=_0x495392;if(!this[_0x2b0a4e(0x1c7)][_0x2b0a4e(0x1bd)])return[];return[][_0x2b0a4e(0x19f)](_toConsumableArray(this['positions']),[this['positions'][0x0]]);}},{'key':_0x495392(0x1c4),'value':function _0x29678b(){var _0x2e45d9=_0x495392;if(!this[_0x2e45d9(0x1c7)][_0x2e45d9(0x1bd)])return[];return[][_0x2e45d9(0x19f)](_toConsumableArray(this[_0x2e45d9(0x1c7)]),[this[_0x2e45d9(0x1c7)][0x0]]);}},{'key':_0x495392(0x18c),'value':function _0x14343e(){var _0x2462e3=_0x495392;this[_0x2462e3(0x1ca)]&&this[_0x2462e3(0x1ca)]['destroy'](),this['shapePolylineLayer']=null,this['shapePolygonLayer']&&this[_0x2462e3(0x190)][_0x2462e3(0x19c)](),this[_0x2462e3(0x190)]=null;}},{'key':_0x495392(0x1c2),'value':function _0x4ad848(){var _0x45d5b1=_0x495392;if(!this[_0x45d5b1(0x1c7)][_0x45d5b1(0x1bd)]){this[_0x45d5b1(0x18c)]();return;}var _0x43bb66=this['_getDrawPolylinePositions'](),_0x51b11c=this[_0x45d5b1(0x1c4)]();!this['shapePolylineLayer']?this['shapePolylineLayer']=new ShapePolyline(this['getMap'](),{'positions':_0x43bb66,'style':this[_0x45d5b1(0x1c8)]}):this['shapePolylineLayer'][_0x45d5b1(0x1e0)](_0x43bb66);if(!this[_0x45d5b1(0x190)]){this['shapePolygonLayer']=new ShapePolygon(this['getMap'](),{'positions':_0x51b11c,'style':this[_0x45d5b1(0x18d)]});return;}this[_0x45d5b1(0x190)][_0x45d5b1(0x1e0)](_0x51b11c);}},{'key':_0x495392(0x1c9),'value':function _0x1ad138(_0x1144af,_0x8e950){var _0x29683a=_0x495392,_0x3f4c02=this['_toCartesian3'](_0x1144af),_0x14cff8=this['_toCartesian3'](_0x8e950);if(!_0x3f4c02||!_0x14cff8)return[];var _0x36d0ff=_0x4993c9['Transforms']['eastNorthUpToFixedFrame'](_0x3f4c02),_0x1b9eff=_0x4993c9[_0x29683a(0x191)]['inverseTransformation'](_0x36d0ff,new _0x4993c9[(_0x29683a(0x191))]()),_0x23fed6=_0x4993c9[_0x29683a(0x191)]['multiplyByPoint'](_0x1b9eff,_0x14cff8,new _0x4993c9[(_0x29683a(0x1f0))]()),_0x5369e9=Math[_0x29683a(0x1e3)](_0x23fed6['x'],_0x23fed6['y']);if(!Number[_0x29683a(0x188)](_0x5369e9)||_0x5369e9<=CIRCLE_MIN_RADIUS)return[];var _0x4a2d5f=Math[_0x29683a(0x1e2)](_0x23fed6['y'],_0x23fed6['x']),_0x4378cd=this['clampToGround']?0x0:_0x23fed6['z'],_0x52dd71=[],_0x202353=_0x4993c9[_0x29683a(0x1c0)][_0x29683a(0x1cf)]/this[_0x29683a(0x1b6)];for(var _0x433cdc=0x0;_0x433cdc<this['_segments'];_0x433cdc+=0x1){var _0x2fd1bc=_0x4a2d5f+_0x202353*_0x433cdc,_0xefb684=new _0x4993c9[(_0x29683a(0x1f0))](_0x5369e9*Math['cos'](_0x2fd1bc),_0x5369e9*Math['sin'](_0x2fd1bc),_0x4378cd),_0x463c2d=_0x4993c9['Matrix4'][_0x29683a(0x199)](_0x36d0ff,_0xefb684,new _0x4993c9['Cartesian3']()),_0x382b44=_0x105a4e[_0x29683a(0x19b)](_0x463c2d),_0xa291de=_0x382b44['lng'],_0x22c90b=_0x382b44['lat'],_0x5ab4dd=_0x382b44[_0x29683a(0x1cb)];_0x52dd71[_0x29683a(0x1e9)]([_0xa291de,_0x22c90b,_0x5ab4dd]);}return _0x52dd71;}},{'key':_0x495392(0x1a6),'value':function _0x42345b(_0x50ab9b,_0x2dc817){var _0x36d845=_0x495392,_0x2a5918=this['_toCartesian3'](_0x50ab9b),_0x433a9d=this['_toCartesian3'](_0x2dc817);if(!_0x2a5918||!_0x433a9d)return null;var _0x48851b=_0x4993c9['Transforms']['eastNorthUpToFixedFrame'](_0x2a5918),_0x21ff32=_0x4993c9[_0x36d845(0x191)][_0x36d845(0x1e6)](_0x48851b,new _0x4993c9['Matrix4']());return _0x4993c9['Matrix4'][_0x36d845(0x199)](_0x21ff32,_0x433a9d,new _0x4993c9[(_0x36d845(0x1f0))]());}},{'key':'_getPositionByLocalVector','value':function _0x5e94de(_0x4536c2,_0x376344){var _0xbf040e=_0x495392,_0xd9eaca=this[_0xbf040e(0x1e5)](_0x4536c2);if(!_0xd9eaca)return null;var _0x456a07=_0x4993c9[_0xbf040e(0x1d9)]['eastNorthUpToFixedFrame'](_0xd9eaca),_0x1e49ce=_0x4993c9['Matrix4'][_0xbf040e(0x199)](_0x456a07,_0x376344,new _0x4993c9[(_0xbf040e(0x1f0))]()),_0x3f8ba8=_0x105a4e['cartesian3ToLngLatAlt'](_0x1e49ce),_0x58d517=_0x3f8ba8[_0xbf040e(0x1aa)],_0x4cf911=_0x3f8ba8['lat'],_0x4dd30c=_0x3f8ba8['alt'];return[_0x58d517,_0x4cf911,_0x4dd30c];}},{'key':_0x495392(0x1b3),'value':function _0x9794aa(_0x5283f7,_0x2acbe8){var _0x328989=_0x495392,_0x12aaa7=this[_0x328989(0x1c9)](_0x5283f7,_0x2acbe8);if(_0x12aaa7[_0x328989(0x1bd)]!==this[_0x328989(0x1b6)])return![];return this['_centerPosition']=_0x5283f7?_toConsumableArray(_0x5283f7):null,this[_0x328989(0x1e1)]=_toConsumableArray(_0x12aaa7[0x0]),this['positions']=_0x12aaa7,this[_0x328989(0x1c2)](),!![];}},{'key':'_destroyEditHandles','value':function _0x31f1f1(){var _0x197bff=_0x495392;this[_0x197bff(0x1a0)]['forEach'](function(_0x12a66c){var _0xd26bd8=_0x197bff;return _0x12a66c[_0xd26bd8(0x19c)]();}),this[_0x197bff(0x1a0)]=[],this[_0x197bff(0x1a2)]=null,this[_0x197bff(0x1e8)]=![];}},{'key':_0x495392(0x1b2),'value':function _0xc3b226(_0x1856c6,_0x266fd0){var _0x3a008f=_0x495392,_0x158b42=new _0x3d1577(this[_0x3a008f(0x1a8)](),{'positions':_0x1856c6,'style':this['pointStyle']});return _0x158b42[_0x3a008f(0x1ee)]=_0x266fd0,_0x158b42['startEdit'](),_0x158b42;}},{'key':'_syncEditHandles','value':function _0xa0a9f5(){var _0x4e07f8=_0x495392,_0x5d66ca=this['dragPoints'][_0x4e07f8(0x1ac)](function(_0x465e54){return _0x465e54['handleRole']==='center';}),_0x36ca94=this[_0x4e07f8(0x1a0)]['find'](function(_0x460a42){return _0x460a42['handleRole']==='radius';});_0x5d66ca&&this['_centerPosition']&&_0x5d66ca['mouseDragChange']({'lng':this['_centerPosition'][0x0],'lat':this['_centerPosition'][0x1],'alt':this['_centerPosition'][0x2]}),_0x36ca94&&this[_0x4e07f8(0x1e1)]&&_0x36ca94[_0x4e07f8(0x1ab)]({'lng':this['_handlePosition'][0x0],'lat':this[_0x4e07f8(0x1e1)][0x1],'alt':this['_handlePosition'][0x2]});}},{'key':_0x495392(0x1cd),'value':function _0x46ed60(){var _0x78fdd5=_0x495392;this['_drawContext'][_0x78fdd5(0x1b8)]['onMouseMoveChange']&&this[_0x78fdd5(0x1a7)][_0x78fdd5(0x1b8)]['onMouseMoveChange']({'layer':this,'positions':this[_0x78fdd5(0x1c7)]});}},{'key':_0x495392(0x1a3),'value':function _0x459c31(){var _0xa5ca98=_0x495392,_0x8c145f,_0x131535;((_0x8c145f=this['_drawContext'][_0xa5ca98(0x1b8)])===null||_0x8c145f===void 0x0?void 0x0:_0x8c145f[_0xa5ca98(0x1c6)])&&((_0x131535=this['_drawContext'][_0xa5ca98(0x1b8)])===null||_0x131535===void 0x0?void 0x0:_0x131535['onPointsChange']({'layer':this,'positions':this['positions']}));}},{'key':_0x495392(0x1a4),'value':function _0x348a40(){var _0x47de48=_0x495392;if(!this[_0x47de48(0x1c7)][_0x47de48(0x1bd)])return;this[_0x47de48(0x1a7)]['setDrawerLayer'](this['id'],this),this[_0x47de48(0x19d)](this),this['startEdit']();}},{'key':'transformData','value':function _0x1307ac(_0xf7842c){var _0x423e48=_0x495392,_0x543e6d=arguments[_0x423e48(0x1bd)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:{},_0xae19e7=normalizePolygonPositions(_0xf7842c),_0x58a9a1=Array[_0x423e48(0x1c1)](_0x543e6d===null||_0x543e6d===void 0x0?void 0x0:_0x543e6d['center'])&&_0x543e6d['center']['length']>=0x2?[_0x543e6d['center'][0x0],_0x543e6d['center'][0x1],_0x543e6d['center'][0x2]||0x0]:null,_0x5b3587=getPolygonRestoreHandlePosition(_0xae19e7);this[_0x423e48(0x1b6)]=this['_normalizeSegments'](_0x543e6d===null||_0x543e6d===void 0x0?void 0x0:_0x543e6d[_0x423e48(0x1b1)]);if(!_0x58a9a1||!_0x5b3587)return![];if(!this[_0x423e48(0x1b3)](_0x58a9a1,_0x5b3587))return![];return this['_drawContext']['setDrawerLayer'](this['id'],this),!![];}},{'key':'addPoint','value':function _0x47c875(_0x1eb271){var _0x4a0a33=_0x495392,_0x5017c3=this['_toPositionTuple'](_0x1eb271);if(!this['_centerPosition']){this['_centerPosition']=_0x5017c3,this['_handlePosition']=null,this[_0x4a0a33(0x1c7)]=[],this[_0x4a0a33(0x1a7)]['_changeStatus'](STATUS['DRAWING']),this[_0x4a0a33(0x1a7)][_0x4a0a33(0x1d2)]();return;}if(!this['_applyGeometry'](this[_0x4a0a33(0x1de)],_0x5017c3))return;this[_0x4a0a33(0x18b)](this),this[_0x4a0a33(0x1a4)]();}},{'key':'updateTempPosition','value':function _0x3ccba0(_0x2c8f6b){var _0xc1bfd8=_0x495392;if(!this[_0xc1bfd8(0x1de)])return;var _0xf7a978=this['_toPositionTuple'](_0x2c8f6b);if(!this['_applyGeometry'](this[_0xc1bfd8(0x1de)],_0xf7a978)){this['positions']=[],this[_0xc1bfd8(0x18c)]();return;}this[_0xc1bfd8(0x1cd)]();}},{'key':_0x495392(0x1c5),'value':function _0x5c72a0(){var _0x321ee8=_0x495392;if(!this[_0x321ee8(0x1de)]||!this['_handlePosition'])return;if(!this[_0x321ee8(0x1b3)](this['_centerPosition'],this['_handlePosition']))return;this[_0x321ee8(0x1a4)]();}},{'key':_0x495392(0x1d7),'value':function _0x4cf771(){var _0xb8605c=_0x495392;if(!this['_centerPosition']||!this['_handlePosition'])return;_get(_getPrototypeOf(_0x4b65ff[_0xb8605c(0x1a9)]),_0xb8605c(0x1d7),this)['call'](this),this['_destroyEditHandles'](),this[_0xb8605c(0x1a0)]=[this[_0xb8605c(0x1b2)](this[_0xb8605c(0x1de)],_0xb8605c(0x194)),this['_createEditHandle'](this['_handlePosition'],_0xb8605c(0x193))];}},{'key':_0x495392(0x18a),'value':function _0x24b2b9(_0x5aaec4,_0x37a6b8){var _0x121bb9=_0x495392,_0x549eae;this['dragging']=!![],this[_0x121bb9(0x1a2)]=_0x37a6b8,(_0x549eae=this[_0x121bb9(0x1a2)])===null||_0x549eae===void 0x0||_0x549eae['mouseDragStart']();}},{'key':'mouseDragChange','value':function _0x26cf0e(_0x4ce650){var _0x5192f1=_0x495392;if(!this['dragging']||!this['dragLayer'])return;if(!this[_0x5192f1(0x1de)]||!this[_0x5192f1(0x1e1)])return;var _0x21f52d=this['_toPositionTuple'](_0x4ce650),_0x50b0b1=_toConsumableArray(this[_0x5192f1(0x1de)]),_0x4889e7=_toConsumableArray(this['_handlePosition']);if(this[_0x5192f1(0x1a2)]['handleRole']===_0x5192f1(0x194)){var _0x301bad=this[_0x5192f1(0x1a6)](_0x50b0b1,_0x4889e7);_0x50b0b1=_0x21f52d;var _0x3ee4f1=_0x301bad&&this[_0x5192f1(0x1d8)](_0x50b0b1,_0x301bad);if(!_0x3ee4f1)return;_0x4889e7=_0x3ee4f1;}else _0x4889e7=_0x21f52d;if(!this['_applyGeometry'](_0x50b0b1,_0x4889e7))return;this['_syncEditHandles'](),this['_emitPointsChange']();}},{'key':'mouseDragEnd','value':function _0x467c8a(){var _0x4f7397=_0x495392;this[_0x4f7397(0x1e8)]=![],this['dragLayer']=null;}},{'key':'endEdit','value':function _0x2b2206(_0x2a8bb0){var _0x3f3712=_0x495392,_0x304702=arguments[_0x3f3712(0x1bd)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:!![];_get(_getPrototypeOf(_0x4b65ff[_0x3f3712(0x1a9)]),'endEdit',this)[_0x3f3712(0x1da)](this,_0x2a8bb0,_0x304702),this[_0x3f3712(0x196)]();}},{'key':_0x495392(0x19c),'value':function _0x326499(){var _0x27668c=_0x495392;_get(_getPrototypeOf(_0x4b65ff['prototype']),'destroy',this)['call'](this),this[_0x27668c(0x18c)](),this['_centerPosition']=null,this[_0x27668c(0x1e1)]=null;}}]),_0x4b65ff;}(_0x18acf8);export default Circle;
|