deeptwins-engine-3d 0.1.76 → 0.2.1
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.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 +4 -0
- package/dist/esm/index.js +1 -175
- 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.js +1 -318
- 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 -1136
- 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 +135 -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,468 +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
|
-
// 正多边形默认最少 3 条边。
|
|
34
|
-
var DEFAULT_REGULAR_POLYGON_SIDES = 3;
|
|
35
|
-
// 半径过小时不创建几何,避免生成退化图形。
|
|
36
|
-
var REGULAR_POLYGON_MIN_RADIUS = 0.01;
|
|
37
|
-
var RegularPolygon = /*#__PURE__*/function (_BaseShape) {
|
|
38
|
-
_inherits(RegularPolygon, _BaseShape);
|
|
39
|
-
var _super = _createSuper(RegularPolygon);
|
|
40
|
-
function RegularPolygon(drawContext, config) {
|
|
41
|
-
var _this;
|
|
42
|
-
_classCallCheck(this, RegularPolygon);
|
|
43
|
-
_this = _super.call(this, drawContext);
|
|
44
|
-
_defineProperty(_assertThisInitialized(_this), "type", 'regularPolygon');
|
|
45
|
-
// 正多边形外框图层。
|
|
46
|
-
_defineProperty(_assertThisInitialized(_this), "shapePolylineLayer", void 0);
|
|
47
|
-
// 正多边形面图层。
|
|
48
|
-
_defineProperty(_assertThisInitialized(_this), "shapePolygonLayer", void 0);
|
|
49
|
-
// 正多边形边数。
|
|
50
|
-
_defineProperty(_assertThisInitialized(_this), "_sides", void 0);
|
|
51
|
-
// 绘制和编辑时统一维护中心点。
|
|
52
|
-
_defineProperty(_assertThisInitialized(_this), "_centerPosition", void 0);
|
|
53
|
-
// 半径控制点,同时决定半径和初始朝向。
|
|
54
|
-
_defineProperty(_assertThisInitialized(_this), "_handlePosition", void 0);
|
|
55
|
-
_this._sides = _this._normalizeSides(config === null || config === void 0 ? void 0 : config.sides);
|
|
56
|
-
_this._centerPosition = null;
|
|
57
|
-
_this._handlePosition = null;
|
|
58
|
-
_this.clampToGround = isNil(config === null || config === void 0 ? void 0 : config.clampToGround) ? _this.clampToGround : config.clampToGround;
|
|
59
|
-
_this.pointStyle.heightReference = _this.clampToGround ? Cesium.HeightReference.CLAMP_TO_GROUND : Cesium.HeightReference.NONE;
|
|
60
|
-
_this.polylineStyle.clampToGround = _this.clampToGround;
|
|
61
|
-
if (_this.clampToGround) {
|
|
62
|
-
_this.polygonStyle.heightReference = Cesium.HeightReference.CLAMP_TO_GROUND;
|
|
63
|
-
_this.polygonStyle.perPositionHeight = false;
|
|
64
|
-
} else {
|
|
65
|
-
_this.polygonStyle.heightReference = Cesium.HeightReference.NONE;
|
|
66
|
-
_this.polygonStyle.perPositionHeight = true;
|
|
67
|
-
}
|
|
68
|
-
return _this;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
// 统一收敛边数,避免外部传入无效值。
|
|
72
|
-
_createClass(RegularPolygon, [{
|
|
73
|
-
key: "_normalizeSides",
|
|
74
|
-
value: function _normalizeSides(sides) {
|
|
75
|
-
var numericSides = Number(sides);
|
|
76
|
-
if (!Number.isFinite(numericSides)) {
|
|
77
|
-
return DEFAULT_REGULAR_POLYGON_SIDES;
|
|
78
|
-
}
|
|
79
|
-
return Math.max(DEFAULT_REGULAR_POLYGON_SIDES, Math.floor(numericSides));
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
// 鼠标事件位置统一转成内部经纬高三元组。
|
|
83
|
-
}, {
|
|
84
|
-
key: "_toPositionTuple",
|
|
85
|
-
value: function _toPositionTuple(position) {
|
|
86
|
-
var lng = position.lng,
|
|
87
|
-
lat = position.lat,
|
|
88
|
-
_position$alt = position.alt,
|
|
89
|
-
alt = _position$alt === void 0 ? 0 : _position$alt;
|
|
90
|
-
return [lng, lat, alt];
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// 线框渲染始终闭合,方便在绘制阶段实时预览边界。
|
|
94
|
-
}, {
|
|
95
|
-
key: "_getDrawPolylinePositions",
|
|
96
|
-
value: function _getDrawPolylinePositions() {
|
|
97
|
-
if (!this.positions.length) {
|
|
98
|
-
return [];
|
|
99
|
-
}
|
|
100
|
-
return [].concat(_toConsumableArray(this.positions), [this.positions[0]]);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
// 面渲染和普通 polygon 一致,末尾补首点闭环。
|
|
104
|
-
}, {
|
|
105
|
-
key: "_getDrawPolygonPositions",
|
|
106
|
-
value: function _getDrawPolygonPositions() {
|
|
107
|
-
if (!this.positions.length) {
|
|
108
|
-
return [];
|
|
109
|
-
}
|
|
110
|
-
return [].concat(_toConsumableArray(this.positions), [this.positions[0]]);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
// 统一释放线框和面图层,避免绘制中断后残留几何。
|
|
114
|
-
}, {
|
|
115
|
-
key: "_destroyShapeLayers",
|
|
116
|
-
value: function _destroyShapeLayers() {
|
|
117
|
-
this.shapePolylineLayer && this.shapePolylineLayer.destroy();
|
|
118
|
-
this.shapePolylineLayer = null;
|
|
119
|
-
this.shapePolygonLayer && this.shapePolygonLayer.destroy();
|
|
120
|
-
this.shapePolygonLayer = null;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
// 根据当前顶点数组同步线框和面图层。
|
|
124
|
-
}, {
|
|
125
|
-
key: "_syncShapeLayers",
|
|
126
|
-
value: function _syncShapeLayers() {
|
|
127
|
-
if (!this.positions.length) {
|
|
128
|
-
this._destroyShapeLayers();
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
var polylinePositions = this._getDrawPolylinePositions();
|
|
132
|
-
var polygonPositions = this._getDrawPolygonPositions();
|
|
133
|
-
if (!this.shapePolylineLayer) {
|
|
134
|
-
this.shapePolylineLayer = new ShapePolyline(this.getMap(), {
|
|
135
|
-
positions: polylinePositions,
|
|
136
|
-
style: this.polylineStyle
|
|
137
|
-
});
|
|
138
|
-
} else {
|
|
139
|
-
this.shapePolylineLayer.update(polylinePositions);
|
|
140
|
-
}
|
|
141
|
-
if (!this.shapePolygonLayer) {
|
|
142
|
-
this.shapePolygonLayer = new ShapePolygon(this.getMap(), {
|
|
143
|
-
positions: polygonPositions,
|
|
144
|
-
style: this.polygonStyle
|
|
145
|
-
});
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
this.shapePolygonLayer.update(polygonPositions);
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
// 通过中心点和控制点,按等角度生成整圈正多边形顶点。
|
|
152
|
-
}, {
|
|
153
|
-
key: "_buildRegularPolygonPositions",
|
|
154
|
-
value: function _buildRegularPolygonPositions(centerPosition, handlePosition) {
|
|
155
|
-
var centerCartesian = this._toCartesian3(centerPosition);
|
|
156
|
-
var handleCartesian = this._toCartesian3(handlePosition);
|
|
157
|
-
if (!centerCartesian || !handleCartesian) {
|
|
158
|
-
return [];
|
|
159
|
-
}
|
|
160
|
-
var transform = Cesium.Transforms.eastNorthUpToFixedFrame(centerCartesian);
|
|
161
|
-
var inverseTransform = Cesium.Matrix4.inverseTransformation(transform, new Cesium.Matrix4());
|
|
162
|
-
var localHandle = Cesium.Matrix4.multiplyByPoint(inverseTransform, handleCartesian, new Cesium.Cartesian3());
|
|
163
|
-
var radius = Math.hypot(localHandle.x, localHandle.y);
|
|
164
|
-
if (!Number.isFinite(radius) || radius <= REGULAR_POLYGON_MIN_RADIUS) {
|
|
165
|
-
return [];
|
|
166
|
-
}
|
|
167
|
-
var startAngle = Math.atan2(localHandle.y, localHandle.x);
|
|
168
|
-
var localZ = this.clampToGround ? 0 : localHandle.z;
|
|
169
|
-
var positions = [];
|
|
170
|
-
var angleStep = Cesium.Math.TWO_PI / this._sides;
|
|
171
|
-
for (var index = 0; index < this._sides; index += 1) {
|
|
172
|
-
var angle = startAngle + angleStep * index;
|
|
173
|
-
var localPoint = new Cesium.Cartesian3(radius * Math.cos(angle), radius * Math.sin(angle), localZ);
|
|
174
|
-
var worldPoint = Cesium.Matrix4.multiplyByPoint(transform, localPoint, new Cesium.Cartesian3());
|
|
175
|
-
var _utils$cartesian3ToLn = utils.cartesian3ToLngLatAlt(worldPoint),
|
|
176
|
-
lng = _utils$cartesian3ToLn.lng,
|
|
177
|
-
lat = _utils$cartesian3ToLn.lat,
|
|
178
|
-
alt = _utils$cartesian3ToLn.alt;
|
|
179
|
-
positions.push([lng, lat, alt]);
|
|
180
|
-
}
|
|
181
|
-
return positions;
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
// 计算控制点相对于中心点的局部 ENU 向量,用于平移时保持半径和朝向。
|
|
185
|
-
}, {
|
|
186
|
-
key: "_getLocalHandleVector",
|
|
187
|
-
value: function _getLocalHandleVector(centerPosition, handlePosition) {
|
|
188
|
-
var centerCartesian = this._toCartesian3(centerPosition);
|
|
189
|
-
var handleCartesian = this._toCartesian3(handlePosition);
|
|
190
|
-
if (!centerCartesian || !handleCartesian) {
|
|
191
|
-
return null;
|
|
192
|
-
}
|
|
193
|
-
var transform = Cesium.Transforms.eastNorthUpToFixedFrame(centerCartesian);
|
|
194
|
-
var inverseTransform = Cesium.Matrix4.inverseTransformation(transform, new Cesium.Matrix4());
|
|
195
|
-
return Cesium.Matrix4.multiplyByPoint(inverseTransform, handleCartesian, new Cesium.Cartesian3());
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
// 把局部 ENU 向量重新投回新的中心点,得到新的控制点位置。
|
|
199
|
-
}, {
|
|
200
|
-
key: "_getPositionByLocalVector",
|
|
201
|
-
value: function _getPositionByLocalVector(centerPosition, localVector) {
|
|
202
|
-
var centerCartesian = this._toCartesian3(centerPosition);
|
|
203
|
-
if (!centerCartesian) {
|
|
204
|
-
return null;
|
|
205
|
-
}
|
|
206
|
-
var transform = Cesium.Transforms.eastNorthUpToFixedFrame(centerCartesian);
|
|
207
|
-
var worldPoint = Cesium.Matrix4.multiplyByPoint(transform, localVector, new Cesium.Cartesian3());
|
|
208
|
-
var _utils$cartesian3ToLn2 = utils.cartesian3ToLngLatAlt(worldPoint),
|
|
209
|
-
lng = _utils$cartesian3ToLn2.lng,
|
|
210
|
-
lat = _utils$cartesian3ToLn2.lat,
|
|
211
|
-
alt = _utils$cartesian3ToLn2.alt;
|
|
212
|
-
return [lng, lat, alt];
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
// 统一更新中心点、控制点、顶点数组和渲染图层。
|
|
216
|
-
}, {
|
|
217
|
-
key: "_applyGeometry",
|
|
218
|
-
value: function _applyGeometry(centerPosition, handlePosition) {
|
|
219
|
-
var positions = this._buildRegularPolygonPositions(centerPosition, handlePosition);
|
|
220
|
-
if (positions.length !== this._sides) {
|
|
221
|
-
return false;
|
|
222
|
-
}
|
|
223
|
-
this._centerPosition = centerPosition ? _toConsumableArray(centerPosition) : null;
|
|
224
|
-
this._handlePosition = _toConsumableArray(positions[0]);
|
|
225
|
-
this.positions = positions;
|
|
226
|
-
this._syncShapeLayers();
|
|
227
|
-
return true;
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
// 编辑结束或销毁时统一释放两个控制点。
|
|
231
|
-
}, {
|
|
232
|
-
key: "_destroyEditHandles",
|
|
233
|
-
value: function _destroyEditHandles() {
|
|
234
|
-
this.dragPoints.forEach(function (point) {
|
|
235
|
-
return point.destroy();
|
|
236
|
-
});
|
|
237
|
-
this.dragPoints = [];
|
|
238
|
-
this.dragLayer = null;
|
|
239
|
-
this.dragging = false;
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
// 创建编辑控制点:中心点负责平移,顶点负责半径和旋转。
|
|
243
|
-
}, {
|
|
244
|
-
key: "_createEditHandle",
|
|
245
|
-
value: function _createEditHandle(position, role) {
|
|
246
|
-
var handle = new DragPoint(this.getMap(), {
|
|
247
|
-
positions: position,
|
|
248
|
-
style: this.pointStyle
|
|
249
|
-
});
|
|
250
|
-
handle.handleRole = role;
|
|
251
|
-
handle.startEdit();
|
|
252
|
-
return handle;
|
|
253
|
-
}
|
|
254
|
-
|
|
255
|
-
// 几何更新后把两个控制点同步到最新位置。
|
|
256
|
-
}, {
|
|
257
|
-
key: "_syncEditHandles",
|
|
258
|
-
value: function _syncEditHandles() {
|
|
259
|
-
var centerHandle = this.dragPoints.find(function (point) {
|
|
260
|
-
return point.handleRole === 'center';
|
|
261
|
-
});
|
|
262
|
-
var radiusHandle = this.dragPoints.find(function (point) {
|
|
263
|
-
return point.handleRole === 'radius';
|
|
264
|
-
});
|
|
265
|
-
if (centerHandle && this._centerPosition) {
|
|
266
|
-
centerHandle.mouseDragChange({
|
|
267
|
-
lng: this._centerPosition[0],
|
|
268
|
-
lat: this._centerPosition[1],
|
|
269
|
-
alt: this._centerPosition[2]
|
|
270
|
-
});
|
|
271
|
-
}
|
|
272
|
-
if (radiusHandle && this._handlePosition) {
|
|
273
|
-
radiusHandle.mouseDragChange({
|
|
274
|
-
lng: this._handlePosition[0],
|
|
275
|
-
lat: this._handlePosition[1],
|
|
276
|
-
alt: this._handlePosition[2]
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
// 绘制预览阶段透出当前顶点数组。
|
|
282
|
-
}, {
|
|
283
|
-
key: "_emitMouseMoveChange",
|
|
284
|
-
value: function _emitMouseMoveChange() {
|
|
285
|
-
this._drawContext.options.onMouseMoveChange && this._drawContext.options.onMouseMoveChange({
|
|
286
|
-
layer: this,
|
|
287
|
-
positions: this.positions
|
|
288
|
-
});
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
// 编辑态拖拽时透出最新顶点数组。
|
|
292
|
-
}, {
|
|
293
|
-
key: "_emitPointsChange",
|
|
294
|
-
value: function _emitPointsChange() {
|
|
295
|
-
var _this$_drawContext$op, _this$_drawContext$op2;
|
|
296
|
-
((_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({
|
|
297
|
-
layer: this,
|
|
298
|
-
positions: this.positions
|
|
299
|
-
}));
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
// 统一完成绘制:入库、回调并进入编辑态。
|
|
303
|
-
}, {
|
|
304
|
-
key: "_finishDraw",
|
|
305
|
-
value: function _finishDraw() {
|
|
306
|
-
if (!this.positions.length) {
|
|
307
|
-
return;
|
|
308
|
-
}
|
|
309
|
-
this._drawContext.setDrawerLayer(this.id, this);
|
|
310
|
-
this.drawEnd(this);
|
|
311
|
-
this.startEdit();
|
|
312
|
-
}
|
|
313
|
-
|
|
314
|
-
// 根据传入 polygon 顶点恢复 regularPolygon shape,并回到正多边形编辑模型。
|
|
315
|
-
}, {
|
|
316
|
-
key: "transformData",
|
|
317
|
-
value: function transformData(positions) {
|
|
318
|
-
var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
319
|
-
var normalizedPositions = normalizePolygonPositions(positions);
|
|
320
|
-
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;
|
|
321
|
-
var handlePosition = getPolygonRestoreHandlePosition(normalizedPositions);
|
|
322
|
-
var restoreSides = Number(config === null || config === void 0 ? void 0 : config.sides);
|
|
323
|
-
if (!Number.isFinite(restoreSides)) {
|
|
324
|
-
return false;
|
|
325
|
-
}
|
|
326
|
-
this._sides = this._normalizeSides(restoreSides);
|
|
327
|
-
if (!centerPosition || !handlePosition) {
|
|
328
|
-
return false;
|
|
329
|
-
}
|
|
330
|
-
if (!this._applyGeometry(centerPosition, handlePosition)) {
|
|
331
|
-
return false;
|
|
332
|
-
}
|
|
333
|
-
this._drawContext.setDrawerLayer(this.id, this);
|
|
334
|
-
return true;
|
|
335
|
-
}
|
|
336
|
-
|
|
337
|
-
// 第一次点击记录中心点,第二次点击根据半径控制点完成绘制。
|
|
338
|
-
}, {
|
|
339
|
-
key: "addPoint",
|
|
340
|
-
value: function addPoint(position) {
|
|
341
|
-
var nextPosition = this._toPositionTuple(position);
|
|
342
|
-
if (!this._centerPosition) {
|
|
343
|
-
this._centerPosition = nextPosition;
|
|
344
|
-
this._handlePosition = null;
|
|
345
|
-
this.positions = [];
|
|
346
|
-
this._drawContext._changeStatus(STATUS.DRAWING);
|
|
347
|
-
this._drawContext._updateTooltip();
|
|
348
|
-
return;
|
|
349
|
-
}
|
|
350
|
-
if (!this._applyGeometry(this._centerPosition, nextPosition)) {
|
|
351
|
-
return;
|
|
352
|
-
}
|
|
353
|
-
this.drawing(this);
|
|
354
|
-
this._finishDraw();
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
// 鼠标移动时根据当前半径和朝向实时预览正多边形。
|
|
358
|
-
}, {
|
|
359
|
-
key: "updateTempPosition",
|
|
360
|
-
value: function updateTempPosition(position) {
|
|
361
|
-
if (!this._centerPosition) {
|
|
362
|
-
return;
|
|
363
|
-
}
|
|
364
|
-
var nextPosition = this._toPositionTuple(position);
|
|
365
|
-
if (!this._applyGeometry(this._centerPosition, nextPosition)) {
|
|
366
|
-
this.positions = [];
|
|
367
|
-
this._destroyShapeLayers();
|
|
368
|
-
return;
|
|
369
|
-
}
|
|
370
|
-
this._emitMouseMoveChange();
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
// 兼容外部显式结束绘制的调用,按当前控制点收敛最终 geometry。
|
|
374
|
-
}, {
|
|
375
|
-
key: "endDraw",
|
|
376
|
-
value: function endDraw() {
|
|
377
|
-
if (!this._centerPosition || !this._handlePosition) {
|
|
378
|
-
return;
|
|
379
|
-
}
|
|
380
|
-
if (!this._applyGeometry(this._centerPosition, this._handlePosition)) {
|
|
381
|
-
return;
|
|
382
|
-
}
|
|
383
|
-
this._finishDraw();
|
|
384
|
-
}
|
|
385
|
-
|
|
386
|
-
// 编辑态只保留两个控制点,不退化为普通 polygon 的逐点编辑。
|
|
387
|
-
}, {
|
|
388
|
-
key: "startEdit",
|
|
389
|
-
value: function startEdit() {
|
|
390
|
-
if (!this._centerPosition || !this._handlePosition) {
|
|
391
|
-
return;
|
|
392
|
-
}
|
|
393
|
-
_get(_getPrototypeOf(RegularPolygon.prototype), "startEdit", this).call(this);
|
|
394
|
-
this._destroyEditHandles();
|
|
395
|
-
this.dragPoints = [this._createEditHandle(this._centerPosition, 'center'), this._createEditHandle(this._handlePosition, 'radius')];
|
|
396
|
-
}
|
|
397
|
-
|
|
398
|
-
// 记录当前拖拽的控制点。
|
|
399
|
-
}, {
|
|
400
|
-
key: "mouseDragStart",
|
|
401
|
-
value: function mouseDragStart(position, dragLayer) {
|
|
402
|
-
var _this$dragLayer;
|
|
403
|
-
this.dragging = true;
|
|
404
|
-
this.dragLayer = dragLayer;
|
|
405
|
-
(_this$dragLayer = this.dragLayer) === null || _this$dragLayer === void 0 || _this$dragLayer.mouseDragStart();
|
|
406
|
-
}
|
|
407
|
-
|
|
408
|
-
// 拖中心时整体平移,拖顶点时同步调整半径和旋转。
|
|
409
|
-
}, {
|
|
410
|
-
key: "mouseDragChange",
|
|
411
|
-
value: function mouseDragChange(position) {
|
|
412
|
-
if (!this.dragging || !this.dragLayer) {
|
|
413
|
-
return;
|
|
414
|
-
}
|
|
415
|
-
if (!this._centerPosition || !this._handlePosition) {
|
|
416
|
-
return;
|
|
417
|
-
}
|
|
418
|
-
var nextPosition = this._toPositionTuple(position);
|
|
419
|
-
var nextCenterPosition = _toConsumableArray(this._centerPosition);
|
|
420
|
-
var nextHandlePosition = _toConsumableArray(this._handlePosition);
|
|
421
|
-
if (this.dragLayer.handleRole === 'center') {
|
|
422
|
-
var localHandleVector = this._getLocalHandleVector(nextCenterPosition, nextHandlePosition);
|
|
423
|
-
nextCenterPosition = nextPosition;
|
|
424
|
-
var translatedHandlePosition = localHandleVector && this._getPositionByLocalVector(nextCenterPosition, localHandleVector);
|
|
425
|
-
if (!translatedHandlePosition) {
|
|
426
|
-
return;
|
|
427
|
-
}
|
|
428
|
-
nextHandlePosition = translatedHandlePosition;
|
|
429
|
-
} else {
|
|
430
|
-
nextHandlePosition = nextPosition;
|
|
431
|
-
}
|
|
432
|
-
if (!this._applyGeometry(nextCenterPosition, nextHandlePosition)) {
|
|
433
|
-
return;
|
|
434
|
-
}
|
|
435
|
-
this._syncEditHandles();
|
|
436
|
-
this._emitPointsChange();
|
|
437
|
-
}
|
|
438
|
-
|
|
439
|
-
// 结束拖拽时只清理状态,不生成额外中间点。
|
|
440
|
-
}, {
|
|
441
|
-
key: "mouseDragEnd",
|
|
442
|
-
value: function mouseDragEnd() {
|
|
443
|
-
this.dragging = false;
|
|
444
|
-
this.dragLayer = null;
|
|
445
|
-
}
|
|
446
|
-
|
|
447
|
-
// 结束编辑后销毁两个控制点。
|
|
448
|
-
}, {
|
|
449
|
-
key: "endEdit",
|
|
450
|
-
value: function endEdit(layer) {
|
|
451
|
-
var emitComplete = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
452
|
-
_get(_getPrototypeOf(RegularPolygon.prototype), "endEdit", this).call(this, layer, emitComplete);
|
|
453
|
-
this._destroyEditHandles();
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
// 销毁时同时清理渲染图层和内部几何状态。
|
|
457
|
-
}, {
|
|
458
|
-
key: "destroy",
|
|
459
|
-
value: function destroy() {
|
|
460
|
-
_get(_getPrototypeOf(RegularPolygon.prototype), "destroy", this).call(this);
|
|
461
|
-
this._destroyShapeLayers();
|
|
462
|
-
this._centerPosition = null;
|
|
463
|
-
this._handlePosition = null;
|
|
464
|
-
}
|
|
465
|
-
}]);
|
|
466
|
-
return RegularPolygon;
|
|
467
|
-
}(BaseShape);
|
|
468
|
-
export default RegularPolygon;
|
|
1
|
+
(function(_0x459476,_0x29a034){var _0x2513e9=_0x2082,_0x2cf5af=_0x459476();while(!![]){try{var _0x50b1a5=-parseInt(_0x2513e9(0x96))/0x1+parseInt(_0x2513e9(0x98))/0x2+parseInt(_0x2513e9(0xe8))/0x3+-parseInt(_0x2513e9(0xf9))/0x4*(-parseInt(_0x2513e9(0xc7))/0x5)+-parseInt(_0x2513e9(0xf7))/0x6*(-parseInt(_0x2513e9(0xe0))/0x7)+-parseInt(_0x2513e9(0xf8))/0x8+-parseInt(_0x2513e9(0xa7))/0x9*(parseInt(_0x2513e9(0x97))/0xa);if(_0x50b1a5===_0x29a034)break;else _0x2cf5af['push'](_0x2cf5af['shift']());}catch(_0x117cf3){_0x2cf5af['push'](_0x2cf5af['shift']());}}}(_0x372e,0x8dfce));function _typeof(_0x372560){'@babel/helpers - typeof';var _0x2ab88e=_0x2082;return _typeof='function'==typeof Symbol&&_0x2ab88e(0xf0)==typeof Symbol[_0x2ab88e(0xe6)]?function(_0x3d9588){return typeof _0x3d9588;}:function(_0x33afba){var _0xc9084=_0x2ab88e;return _0x33afba&&'function'==typeof Symbol&&_0x33afba['constructor']===Symbol&&_0x33afba!==Symbol[_0xc9084(0xa4)]?'symbol':typeof _0x33afba;},_typeof(_0x372560);}function _toConsumableArray(_0xc142a6){return _arrayWithoutHoles(_0xc142a6)||_iterableToArray(_0xc142a6)||_unsupportedIterableToArray(_0xc142a6)||_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 _0x2082(_0x4ade63,_0x8edfd2){_0x4ade63=_0x4ade63-0x92;var _0x372ec2=_0x372e();var _0x2082cb=_0x372ec2[_0x4ade63];if(_0x2082['XWRAkq']===undefined){var _0x5795cd=function(_0x404915){var _0x73281e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4a8725='',_0x46b80e='';for(var _0x2378ca=0x0,_0x41facc,_0x372560,_0x3d9588=0x0;_0x372560=_0x404915['charAt'](_0x3d9588++);~_0x372560&&(_0x41facc=_0x2378ca%0x4?_0x41facc*0x40+_0x372560:_0x372560,_0x2378ca++%0x4)?_0x4a8725+=String['fromCharCode'](0xff&_0x41facc>>(-0x2*_0x2378ca&0x6)):0x0){_0x372560=_0x73281e['indexOf'](_0x372560);}for(var _0x33afba=0x0,_0xc142a6=_0x4a8725['length'];_0x33afba<_0xc142a6;_0x33afba++){_0x46b80e+='%'+('00'+_0x4a8725['charCodeAt'](_0x33afba)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x46b80e);};_0x2082['gTkSdT']=_0x5795cd,_0x2082['kUXVQA']={},_0x2082['XWRAkq']=!![];}var _0x1c5f82=_0x372ec2[0x0],_0x1ce533=_0x4ade63+_0x1c5f82,_0x4822ef=_0x2082['kUXVQA'][_0x1ce533];return!_0x4822ef?(_0x2082cb=_0x2082['gTkSdT'](_0x2082cb),_0x2082['kUXVQA'][_0x1ce533]=_0x2082cb):_0x2082cb=_0x4822ef,_0x2082cb;}function _unsupportedIterableToArray(_0x5ac80b,_0x2fde4a){var _0x4acf5d=_0x2082;if(!_0x5ac80b)return;if(typeof _0x5ac80b==='string')return _arrayLikeToArray(_0x5ac80b,_0x2fde4a);var _0xe54a25=Object[_0x4acf5d(0xa4)][_0x4acf5d(0xb3)]['call'](_0x5ac80b)['slice'](0x8,-0x1);if(_0xe54a25==='Object'&&_0x5ac80b['constructor'])_0xe54a25=_0x5ac80b['constructor'][_0x4acf5d(0xaa)];if(_0xe54a25==='Map'||_0xe54a25==='Set')return Array[_0x4acf5d(0xe7)](_0x5ac80b);if(_0xe54a25==='Arguments'||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x4acf5d(0xb4)](_0xe54a25))return _arrayLikeToArray(_0x5ac80b,_0x2fde4a);}function _iterableToArray(_0x2b8708){var _0x190bd0=_0x2082;if(typeof Symbol!=='undefined'&&_0x2b8708[Symbol['iterator']]!=null||_0x2b8708['@@iterator']!=null)return Array[_0x190bd0(0xe7)](_0x2b8708);}function _arrayWithoutHoles(_0xe5a841){var _0x7b94ab=_0x2082;if(Array[_0x7b94ab(0xcb)](_0xe5a841))return _arrayLikeToArray(_0xe5a841);}function _arrayLikeToArray(_0x32dd2b,_0x165b38){var _0x2eed45=_0x2082;if(_0x165b38==null||_0x165b38>_0x32dd2b[_0x2eed45(0xd0)])_0x165b38=_0x32dd2b[_0x2eed45(0xd0)];for(var _0x4a4ad2=0x0,_0x437b68=new Array(_0x165b38);_0x4a4ad2<_0x165b38;_0x4a4ad2++)_0x437b68[_0x4a4ad2]=_0x32dd2b[_0x4a4ad2];return _0x437b68;}function _classCallCheck(_0x3fc453,_0x51b495){if(!(_0x3fc453 instanceof _0x51b495))throw new TypeError('Cannot\x20call\x20a\x20class\x20as\x20a\x20function');}function _defineProperties(_0x12dd5d,_0x5086d4){var _0x3cd04f=_0x2082;for(var _0xd4d83f=0x0;_0xd4d83f<_0x5086d4[_0x3cd04f(0xd0)];_0xd4d83f++){var _0x158ff9=_0x5086d4[_0xd4d83f];_0x158ff9['enumerable']=_0x158ff9[_0x3cd04f(0xa9)]||![],_0x158ff9[_0x3cd04f(0xd7)]=!![];if('value'in _0x158ff9)_0x158ff9['writable']=!![];Object[_0x3cd04f(0xae)](_0x12dd5d,_toPropertyKey(_0x158ff9['key']),_0x158ff9);}}function _createClass(_0x36fbed,_0x375de0,_0x1ed8c9){var _0x483325=_0x2082;if(_0x375de0)_defineProperties(_0x36fbed[_0x483325(0xa4)],_0x375de0);if(_0x1ed8c9)_defineProperties(_0x36fbed,_0x1ed8c9);return Object[_0x483325(0xae)](_0x36fbed,'prototype',{'writable':![]}),_0x36fbed;}function _get(){var _0x383ed4=_0x2082;return typeof Reflect!=='undefined'&&Reflect['get']?_get=Reflect['get'][_0x383ed4(0xcf)]():_get=function _0x4ab3a0(_0x3946a5,_0x53f83,_0x34fd5e){var _0x10ee44=_0x383ed4,_0x228c6c=_superPropBase(_0x3946a5,_0x53f83);if(!_0x228c6c)return;var _0x2bcb83=Object['getOwnPropertyDescriptor'](_0x228c6c,_0x53f83);if(_0x2bcb83['get'])return _0x2bcb83['get'][_0x10ee44(0xdf)](arguments[_0x10ee44(0xd0)]<0x3?_0x3946a5:_0x34fd5e);return _0x2bcb83['value'];},_get['apply'](this,arguments);}function _superPropBase(_0x41b823,_0x38c318){var _0x2f45c2=_0x2082;while(!Object['prototype'][_0x2f45c2(0xc2)][_0x2f45c2(0xdf)](_0x41b823,_0x38c318)){_0x41b823=_getPrototypeOf(_0x41b823);if(_0x41b823===null)break;}return _0x41b823;}function _inherits(_0xea5591,_0x409b82){var _0x12fdaf=_0x2082;if(typeof _0x409b82!==_0x12fdaf(0xc0)&&_0x409b82!==null)throw new TypeError(_0x12fdaf(0xeb));_0xea5591[_0x12fdaf(0xa4)]=Object['create'](_0x409b82&&_0x409b82[_0x12fdaf(0xa4)],{'constructor':{'value':_0xea5591,'writable':!![],'configurable':!![]}}),Object[_0x12fdaf(0xae)](_0xea5591,_0x12fdaf(0xa4),{'writable':![]});if(_0x409b82)_setPrototypeOf(_0xea5591,_0x409b82);}function _setPrototypeOf(_0x2f6c7c,_0x290af5){var _0x1af4eb=_0x2082;return _setPrototypeOf=Object[_0x1af4eb(0xaf)]?Object['setPrototypeOf'][_0x1af4eb(0xcf)]():function _0x9e4334(_0x4cbf80,_0x19d1c4){return _0x4cbf80['__proto__']=_0x19d1c4,_0x4cbf80;},_setPrototypeOf(_0x2f6c7c,_0x290af5);}function _createSuper(_0x449ca1){var _0x4ff794=_isNativeReflectConstruct();return function _0x50bf61(){var _0x104890=_0x2082,_0x3edd0a=_getPrototypeOf(_0x449ca1),_0x578d7f;if(_0x4ff794){var _0x1f0278=_getPrototypeOf(this)['constructor'];_0x578d7f=Reflect[_0x104890(0x9a)](_0x3edd0a,arguments,_0x1f0278);}else _0x578d7f=_0x3edd0a[_0x104890(0xea)](this,arguments);return _possibleConstructorReturn(this,_0x578d7f);};}function _possibleConstructorReturn(_0x5ad933,_0x342d68){var _0x156379=_0x2082;if(_0x342d68&&(_typeof(_0x342d68)==='object'||typeof _0x342d68===_0x156379(0xc0)))return _0x342d68;else{if(_0x342d68!==void 0x0)throw new TypeError(_0x156379(0xdb));}return _assertThisInitialized(_0x5ad933);}function _assertThisInitialized(_0x4bba72){if(_0x4bba72===void 0x0)throw new ReferenceError('this\x20hasn\x27t\x20been\x20initialised\x20-\x20super()\x20hasn\x27t\x20been\x20called');return _0x4bba72;}function _isNativeReflectConstruct(){var _0x516080=_0x2082;if(typeof Reflect==='undefined'||!Reflect['construct'])return![];if(Reflect['construct'][_0x516080(0xd5)])return![];if(typeof Proxy==='function')return!![];try{return Boolean['prototype']['valueOf'][_0x516080(0xdf)](Reflect['construct'](Boolean,[],function(){})),!![];}catch(_0x12ac53){return![];}}function _getPrototypeOf(_0x40898c){var _0x327f09=_0x2082;return _getPrototypeOf=Object[_0x327f09(0xaf)]?Object['getPrototypeOf'][_0x327f09(0xcf)]():function _0xf4d1f(_0x4acf8f){var _0x148f7a=_0x327f09;return _0x4acf8f[_0x148f7a(0xb2)]||Object['getPrototypeOf'](_0x4acf8f);},_getPrototypeOf(_0x40898c);}function _defineProperty(_0x10b549,_0x387751,_0x46452d){var _0x5bd3e4=_0x2082;return _0x387751=_toPropertyKey(_0x387751),_0x387751 in _0x10b549?Object[_0x5bd3e4(0xae)](_0x10b549,_0x387751,{'value':_0x46452d,'enumerable':!![],'configurable':!![],'writable':!![]}):_0x10b549[_0x387751]=_0x46452d,_0x10b549;}function _toPropertyKey(_0x5b1e99){var _0x4dae9f=_0x2082,_0x1027a3=_toPrimitive(_0x5b1e99,'string');return _0x4dae9f(0xf0)==_typeof(_0x1027a3)?_0x1027a3:String(_0x1027a3);}function _toPrimitive(_0xa0ab3a,_0x43ad66){var _0x41ca4b=_0x2082;if('object'!=_typeof(_0xa0ab3a)||!_0xa0ab3a)return _0xa0ab3a;var _0x9e2a49=_0xa0ab3a[Symbol[_0x41ca4b(0xd4)]];if(void 0x0!==_0x9e2a49){var _0x4902ce=_0x9e2a49['call'](_0xa0ab3a,_0x43ad66||'default');if('object'!=_typeof(_0x4902ce))return _0x4902ce;throw new TypeError('@@toPrimitive\x20must\x20return\x20a\x20primitive\x20value.');}return('string'===_0x43ad66?String:Number)(_0xa0ab3a);}import*as _0x4a8725 from'deeptwins-cesium';import{isNil}from'lodash';import*as _0x46b80e from'../../tool/utils';function _0x372e(){var _0x312130=['rgvYAxzLzcbJB25ZDhj1y3rVCNmGBwf5ig9UBhKGCMv0DxjUig9IAMvJDcbVCIb1BMrLzMLUzwq','ChvZAa','x2DLDfbVC2L0Aw9UqNLmB2nHBfzLy3rVCG','C2HHCgvqB2X5z29Utgf5zxi','y2fSBa','nZqXmtzssxLZqMq','Bw91C2veCMfNu3rHCNq','x3n5BMnfzgL0sgfUzgXLCW','y2fYDgvZAwfUm1rVtg5Ntgf0qwX0','x2vTAxrqB2LUDhndAgfUz2u','Cg9SEwDVBLn0EwXL','AxrLCMf0B3i','zNjVBq','mJKXnty2n1z0v29uEG','zgvZDhjVEq','yxbWBhK','u3vWzxiGzxHWCMvZC2LVBIbTDxn0igvPDgHLCIbIzsbUDwXSig9YigeGzNvUy3rPB24','BxvSDgLWBhLcEvbVAw50','AgfUzgXLuM9Szq','x2rLC3rYB3LfzgL0sgfUzgXLCW','CgvYug9ZAxrPB25izwLNAhq','C3LTyM9S','sgvPz2H0uMvMzxjLBMnL','z2v0twfW','DhLWzq','q2fYDgvZAwfUmW','DxbKyxrL','zhjHz1bVAw50CW','mJK0uNzlzg5g','odq0nZmZnNLnz3zfrq','ndbIy21crvu','x3n5BMntAgfWzuXHEwvYCW','x2rLC3rYB3LtAgfWzuXHEwvYCW','B25qB2LUDhndAgfUz2u','AhLWB3q','x2nYzwf0zuvKAxriyw5KBgu','DxbKyxrLvgvTCfbVC2L0Aw9U','zw5KrwrPDa','oty3otmYuMTuyuXU','mtqWmtaYmfnQB1vKBW','mJi0mtuWogDxy3z6Eq','x2zPBMLZAerYyxC','y29UC3rYDwn0','y2vUDgvY','x2DLDerYyxDqB2X5z29Uug9ZAxrPB25Z','CMfKAxvZ','twf0CML4na','zhjHz2DPBMC','y29Uy2f0','C3rHCNrfzgL0','B3b0Aw9UCW','x2nLBNrLCLbVC2L0Aw9U','ChjVDg90ExbL','Cg9PBNrtDhLSzq','x2HHBMrSzvbVC2L0Aw9U','nJnZzfH5C0u','x2rYyxDdB250zxH0','zw51BwvYywjSzq','BMfTzq','zhjHD0vUza','twf0Aa','Aw52zxjZzvrYyw5ZzM9YBwf0Aw9U','zgvMAw5LuhjVCgvYDhK','C2v0uhjVDg90ExbLt2y','x2DLDeXVy2fSsgfUzgXLvMvJDg9Y','zwfZDe5VCNrOvxbuB0zPEgvKrNjHBwu','x19WCM90B19F','Dg9tDhjPBMC','DgvZDa','C2HHCgvqB2X5BgLUzuXHEwvY','DhjHBNnMB3jTrgf0yq','zMXVB3i','Bw91C2veCMfNq2HHBMDL','Bgf0','x2vTAxrnB3vZzu1VDMvdAgfUz2u','B25nB3vZzu1VDMvdAgfUz2u','x2fWCgX5r2vVBwv0CNK','x3vWzgf0zvrVB2X0Axa','ywrKug9PBNq','q0XbtvbFve9Fr1jpvu5e','zNvUy3rPB24','y2XHBxbuB0DYB3vUza','AgfZt3DUuhjVCgvYDhK','vfDpx1bj','x2DLDerYyxDqB2X5BgLUzvbVC2L0Aw9UCW','zM9YrwfJAa','Cg9ZAxrPB25Z','ndG3mZq1DNbXqLnR','AgvPz2H0uMvMzxjLBMnL','zhjHz0XHEwvY','C2LKzxm','AxnbCNjHEq','CMvNDwXHCLbVBhLNB24','Bg5N','x3rVug9ZAxrPB25uDxbSzq','yMLUza','BgvUz3rO','tK9orq','AxngAw5PDgu','x3nPzgvZ','Dg9qCMLTAxrPDMu','C2HHBq','vhjHBNnMB3jTCW','y29UzMLNDxjHyMXL','x2nOyw5Nzvn0yxr1CW','x3rVq2fYDgvZAwfUmW','ywX0'];_0x372e=function(){return _0x312130;};return _0x372e();}import{STATUS}from'../types';import{getPolygonRestoreHandlePosition,normalizePolygonPositions}from'../utils';import _0x2378ca from'./BaseShape';import _0x41facc from'./DragPoint';import{ShapePolygon}from'./Polygon';import{ShapePolyline}from'./Polyline';var DEFAULT_REGULAR_POLYGON_SIDES=0x3,REGULAR_POLYGON_MIN_RADIUS=0.01,RegularPolygon=function(_0x426121){var _0x5b002a=_0x2082;_inherits(_0x3ceee5,_0x426121);var _0x504448=_createSuper(_0x3ceee5);function _0x3ceee5(_0x5a62b5,_0x18ea83){var _0xd960fe=_0x2082,_0x21204c;return _classCallCheck(this,_0x3ceee5),_0x21204c=_0x504448['call'](this,_0x5a62b5),_defineProperty(_assertThisInitialized(_0x21204c),_0xd960fe(0xf3),_0xd960fe(0xcc)),_defineProperty(_assertThisInitialized(_0x21204c),_0xd960fe(0xb5),void 0x0),_defineProperty(_assertThisInitialized(_0x21204c),'shapePolygonLayer',void 0x0),_defineProperty(_assertThisInitialized(_0x21204c),'_sides',void 0x0),_defineProperty(_assertThisInitialized(_0x21204c),'_centerPosition',void 0x0),_defineProperty(_assertThisInitialized(_0x21204c),_0xd960fe(0xa6),void 0x0),_0x21204c['_sides']=_0x21204c['_normalizeSides'](_0x18ea83===null||_0x18ea83===void 0x0?void 0x0:_0x18ea83[_0xd960fe(0xca)]),_0x21204c[_0xd960fe(0xa3)]=null,_0x21204c[_0xd960fe(0xa6)]=null,_0x21204c[_0xd960fe(0xc1)]=isNil(_0x18ea83===null||_0x18ea83===void 0x0?void 0x0:_0x18ea83[_0xd960fe(0xc1)])?_0x21204c[_0xd960fe(0xc1)]:_0x18ea83[_0xd960fe(0xc1)],_0x21204c[_0xd960fe(0xa5)]['heightReference']=_0x21204c[_0xd960fe(0xc1)]?_0x4a8725['HeightReference'][_0xd960fe(0xbf)]:_0x4a8725[_0xd960fe(0xf1)][_0xd960fe(0xd1)],_0x21204c['polylineStyle'][_0xd960fe(0xc1)]=_0x21204c['clampToGround'],_0x21204c['clampToGround']?(_0x21204c['polygonStyle'][_0xd960fe(0xc8)]=_0x4a8725[_0xd960fe(0xf1)]['CLAMP_TO_GROUND'],_0x21204c['polygonStyle'][_0xd960fe(0xef)]=![]):(_0x21204c['polygonStyle'][_0xd960fe(0xc8)]=_0x4a8725['HeightReference'][_0xd960fe(0xd1)],_0x21204c[_0xd960fe(0xe5)][_0xd960fe(0xef)]=!![]),_0x21204c;}return _createClass(_0x3ceee5,[{'key':'_normalizeSides','value':function _0x340e1c(_0x25ae42){var _0xbeec2c=_0x2082,_0x126459=Number(_0x25ae42);if(!Number[_0xbeec2c(0xd2)](_0x126459))return DEFAULT_REGULAR_POLYGON_SIDES;return Math['max'](DEFAULT_REGULAR_POLYGON_SIDES,Math[_0xbeec2c(0xb7)](_0x126459));}},{'key':'_toPositionTuple','value':function _0x1f9419(_0x50c4e0){var _0x1396d1=_0x2082,_0x264f86=_0x50c4e0[_0x1396d1(0xcd)],_0x428f7b=_0x50c4e0[_0x1396d1(0xb9)],_0x2153a3=_0x50c4e0[_0x1396d1(0xda)],_0x49e6d4=_0x2153a3===void 0x0?0x0:_0x2153a3;return[_0x264f86,_0x428f7b,_0x49e6d4];}},{'key':'_getDrawPolylinePositions','value':function _0x1edde7(){var _0x2a8801=_0x2082;if(!this[_0x2a8801(0xc6)]['length'])return[];return[][_0x2a8801(0xa0)](_toConsumableArray(this[_0x2a8801(0xc6)]),[this[_0x2a8801(0xc6)][0x0]]);}},{'key':_0x5b002a(0x9c),'value':function _0x26a83e(){var _0x4098d9=_0x5b002a;if(!this[_0x4098d9(0xc6)][_0x4098d9(0xd0)])return[];return[]['concat'](_toConsumableArray(this[_0x4098d9(0xc6)]),[this['positions'][0x0]]);}},{'key':_0x5b002a(0xfb),'value':function _0x1a95ea(){var _0x51aa60=_0x5b002a;this[_0x51aa60(0xb5)]&&this['shapePolylineLayer']['destroy'](),this[_0x51aa60(0xb5)]=null,this[_0x51aa60(0xde)]&&this['shapePolygonLayer']['destroy'](),this[_0x51aa60(0xde)]=null;}},{'key':_0x5b002a(0xfa),'value':function _0x2b8aa7(){var _0x1beea8=_0x5b002a;if(!this[_0x1beea8(0xc6)]['length']){this[_0x1beea8(0xfb)]();return;}var _0x4948bf=this[_0x1beea8(0xc4)](),_0x2ffb8c=this[_0x1beea8(0x9c)]();!this[_0x1beea8(0xb5)]?this['shapePolylineLayer']=new ShapePolyline(this['getMap'](),{'positions':_0x4948bf,'style':this['polylineStyle']}):this[_0x1beea8(0xb5)][_0x1beea8(0xf5)](_0x4948bf);if(!this['shapePolygonLayer']){this[_0x1beea8(0xde)]=new ShapePolygon(this['getMap'](),{'positions':_0x2ffb8c,'style':this[_0x1beea8(0xe5)]});return;}this['shapePolygonLayer'][_0x1beea8(0xf5)](_0x2ffb8c);}},{'key':'_buildRegularPolygonPositions','value':function _0x5e7a01(_0x3c7a11,_0x57d855){var _0xe931f=_0x5b002a,_0x21db80=this[_0xe931f(0xd9)](_0x3c7a11),_0x2961be=this['_toCartesian3'](_0x57d855);if(!_0x21db80||!_0x2961be)return[];var _0xe03623=_0x4a8725['Transforms'][_0xe931f(0xb1)](_0x21db80),_0x3cf058=_0x4a8725['Matrix4']['inverseTransformation'](_0xe03623,new _0x4a8725[(_0xe931f(0x9e))]()),_0x10ea6a=_0x4a8725['Matrix4']['multiplyByPoint'](_0x3cf058,_0x2961be,new _0x4a8725['Cartesian3']()),_0x3a9975=Math[_0xe931f(0x92)](_0x10ea6a['x'],_0x10ea6a['y']);if(!Number['isFinite'](_0x3a9975)||_0x3a9975<=REGULAR_POLYGON_MIN_RADIUS)return[];var _0x2c66bb=Math['atan2'](_0x10ea6a['y'],_0x10ea6a['x']),_0x1e6169=this['clampToGround']?0x0:_0x10ea6a['z'],_0x489277=[],_0x2b2263=_0x4a8725[_0xe931f(0xac)][_0xe931f(0xc3)]/this[_0xe931f(0xd3)];for(var _0x47266c=0x0;_0x47266c<this['_sides'];_0x47266c+=0x1){var _0x4bfa78=_0x2c66bb+_0x2b2263*_0x47266c,_0x17b0e8=new _0x4a8725['Cartesian3'](_0x3a9975*Math['cos'](_0x4bfa78),_0x3a9975*Math['sin'](_0x4bfa78),_0x1e6169),_0x58fca9=_0x4a8725['Matrix4']['multiplyByPoint'](_0xe03623,_0x17b0e8,new _0x4a8725[(_0xe931f(0xf4))]()),_0x533fcb=_0x46b80e['cartesian3ToLngLatAlt'](_0x58fca9),_0x5623c0=_0x533fcb[_0xe931f(0xcd)],_0x2e567b=_0x533fcb['lat'],_0x5ac43c=_0x533fcb[_0xe931f(0xda)];_0x489277[_0xe931f(0xdc)]([_0x5623c0,_0x2e567b,_0x5ac43c]);}return _0x489277;}},{'key':'_getLocalHandleVector','value':function _0x5170c1(_0x201550,_0x10269f){var _0x35dcf4=_0x5b002a,_0x327b32=this[_0x35dcf4(0xd9)](_0x201550),_0x5d7ad1=this['_toCartesian3'](_0x10269f);if(!_0x327b32||!_0x5d7ad1)return null;var _0x1cb5bb=_0x4a8725[_0x35dcf4(0xd6)][_0x35dcf4(0xb1)](_0x327b32),_0x2030bf=_0x4a8725['Matrix4'][_0x35dcf4(0xad)](_0x1cb5bb,new _0x4a8725['Matrix4']());return _0x4a8725[_0x35dcf4(0x9e)][_0x35dcf4(0xec)](_0x2030bf,_0x5d7ad1,new _0x4a8725['Cartesian3']());}},{'key':_0x5b002a(0xdd),'value':function _0x323a39(_0x1bd81d,_0x421a6b){var _0x2b72d8=_0x5b002a,_0xf0d08=this['_toCartesian3'](_0x1bd81d);if(!_0xf0d08)return null;var _0x33a54d=_0x4a8725['Transforms'][_0x2b72d8(0xb1)](_0xf0d08),_0x2b7dcd=_0x4a8725['Matrix4'][_0x2b72d8(0xec)](_0x33a54d,_0x421a6b,new _0x4a8725[(_0x2b72d8(0xf4))]()),_0x589a75=_0x46b80e[_0x2b72d8(0xe3)](_0x2b7dcd),_0x531b4e=_0x589a75['lng'],_0x1b9b9f=_0x589a75[_0x2b72d8(0xb9)],_0x240be1=_0x589a75['alt'];return[_0x531b4e,_0x1b9b9f,_0x240be1];}},{'key':'_applyGeometry','value':function _0x3b8115(_0x498926,_0x1e3be6){var _0x5bc8ec=_0x5b002a,_0x28a9ff=this['_buildRegularPolygonPositions'](_0x498926,_0x1e3be6);if(_0x28a9ff[_0x5bc8ec(0xd0)]!==this[_0x5bc8ec(0xd3)])return![];return this['_centerPosition']=_0x498926?_toConsumableArray(_0x498926):null,this['_handlePosition']=_toConsumableArray(_0x28a9ff[0x0]),this[_0x5bc8ec(0xc6)]=_0x28a9ff,this[_0x5bc8ec(0xfa)](),!![];}},{'key':_0x5b002a(0xee),'value':function _0x35af99(){var _0x3d3441=_0x5b002a;this[_0x3d3441(0xf6)][_0x3d3441(0xc5)](function(_0x2cf431){return _0x2cf431['destroy']();}),this['dragPoints']=[],this[_0x3d3441(0xc9)]=null,this[_0x3d3441(0x9f)]=![];}},{'key':_0x5b002a(0x93),'value':function _0x560dd1(_0x4c2843,_0x4888b0){var _0x4fb028=_0x5b002a,_0x5bbf48=new _0x41facc(this[_0x4fb028(0xf2)](),{'positions':_0x4c2843,'style':this['pointStyle']});return _0x5bbf48['handleRole']=_0x4888b0,_0x5bbf48['startEdit'](),_0x5bbf48;}},{'key':'_syncEditHandles','value':function _0x516f81(){var _0x284bbb=_0x5b002a,_0x2cfb67=this['dragPoints']['find'](function(_0x50ff60){var _0xb03ed2=_0x2082;return _0x50ff60[_0xb03ed2(0xed)]===_0xb03ed2(0x9b);}),_0x452195=this['dragPoints']['find'](function(_0x33c2e0){var _0x61d0f4=_0x2082;return _0x33c2e0['handleRole']===_0x61d0f4(0x9d);});_0x2cfb67&&this[_0x284bbb(0xa3)]&&_0x2cfb67[_0x284bbb(0xb8)]({'lng':this['_centerPosition'][0x0],'lat':this[_0x284bbb(0xa3)][0x1],'alt':this[_0x284bbb(0xa3)][0x2]}),_0x452195&&this['_handlePosition']&&_0x452195['mouseDragChange']({'lng':this['_handlePosition'][0x0],'lat':this[_0x284bbb(0xa6)][0x1],'alt':this['_handlePosition'][0x2]});}},{'key':'_emitMouseMoveChange','value':function _0x5aa131(){var _0x4ae80b=_0x5b002a;this['_drawContext']['options'][_0x4ae80b(0xbb)]&&this['_drawContext']['options'][_0x4ae80b(0xbb)]({'layer':this,'positions':this[_0x4ae80b(0xc6)]});}},{'key':_0x5b002a(0xe4),'value':function _0x307840(){var _0x5dbf4f=_0x5b002a,_0x8475d5,_0x362d21;((_0x8475d5=this[_0x5dbf4f(0xa8)][_0x5dbf4f(0xa2)])===null||_0x8475d5===void 0x0?void 0x0:_0x8475d5[_0x5dbf4f(0xfc)])&&((_0x362d21=this[_0x5dbf4f(0xa8)][_0x5dbf4f(0xa2)])===null||_0x362d21===void 0x0?void 0x0:_0x362d21[_0x5dbf4f(0xfc)]({'layer':this,'positions':this[_0x5dbf4f(0xc6)]}));}},{'key':'_finishDraw','value':function _0x2557d7(){var _0x5c74bc=_0x5b002a;if(!this[_0x5c74bc(0xc6)][_0x5c74bc(0xd0)])return;this[_0x5c74bc(0xa8)]['setDrawerLayer'](this['id'],this),this[_0x5c74bc(0xab)](this),this['startEdit']();}},{'key':_0x5b002a(0xb6),'value':function _0x134e68(_0x2e1163){var _0x9d52e9=_0x5b002a,_0x39883a=arguments[_0x9d52e9(0xd0)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:{},_0x5ae0b9=normalizePolygonPositions(_0x2e1163),_0x24e9e1=Array[_0x9d52e9(0xcb)](_0x39883a===null||_0x39883a===void 0x0?void 0x0:_0x39883a[_0x9d52e9(0x9b)])&&_0x39883a[_0x9d52e9(0x9b)][_0x9d52e9(0xd0)]>=0x2?[_0x39883a[_0x9d52e9(0x9b)][0x0],_0x39883a['center'][0x1],_0x39883a['center'][0x2]||0x0]:null,_0x15dc53=getPolygonRestoreHandlePosition(_0x5ae0b9),_0x54ee3c=Number(_0x39883a===null||_0x39883a===void 0x0?void 0x0:_0x39883a['sides']);if(!Number['isFinite'](_0x54ee3c))return![];this[_0x9d52e9(0xd3)]=this['_normalizeSides'](_0x54ee3c);if(!_0x24e9e1||!_0x15dc53)return![];if(!this['_applyGeometry'](_0x24e9e1,_0x15dc53))return![];return this['_drawContext']['setDrawerLayer'](this['id'],this),!![];}},{'key':_0x5b002a(0xbe),'value':function _0x36ecc1(_0x495400){var _0x197c1f=_0x5b002a,_0x9dcb58=this['_toPositionTuple'](_0x495400);if(!this['_centerPosition']){this['_centerPosition']=_0x9dcb58,this['_handlePosition']=null,this[_0x197c1f(0xc6)]=[],this[_0x197c1f(0xa8)][_0x197c1f(0xd8)](STATUS['DRAWING']),this['_drawContext'][_0x197c1f(0xbd)]();return;}if(!this['_applyGeometry'](this[_0x197c1f(0xa3)],_0x9dcb58))return;this['drawing'](this),this[_0x197c1f(0x99)]();}},{'key':_0x5b002a(0x94),'value':function _0x5417a4(_0x1495fa){var _0x5d53f0=_0x5b002a;if(!this['_centerPosition'])return;var _0x1d1df=this['_toPositionTuple'](_0x1495fa);if(!this['_applyGeometry'](this['_centerPosition'],_0x1d1df)){this[_0x5d53f0(0xc6)]=[],this[_0x5d53f0(0xfb)]();return;}this[_0x5d53f0(0xba)]();}},{'key':'endDraw','value':function _0x1b40ef(){var _0x54d02f=_0x5b002a;if(!this['_centerPosition']||!this['_handlePosition'])return;if(!this[_0x54d02f(0xbc)](this['_centerPosition'],this[_0x54d02f(0xa6)]))return;this['_finishDraw']();}},{'key':_0x5b002a(0xa1),'value':function _0x160d44(){var _0x4e9a3c=_0x5b002a;if(!this['_centerPosition']||!this['_handlePosition'])return;_get(_getPrototypeOf(_0x3ceee5['prototype']),'startEdit',this)[_0x4e9a3c(0xdf)](this),this['_destroyEditHandles'](),this[_0x4e9a3c(0xf6)]=[this['_createEditHandle'](this[_0x4e9a3c(0xa3)],_0x4e9a3c(0x9b)),this['_createEditHandle'](this['_handlePosition'],'radius')];}},{'key':_0x5b002a(0xe1),'value':function _0x279dfa(_0x1d0a3d,_0x56c5b2){var _0x2eea88=_0x5b002a,_0x2f6c71;this[_0x2eea88(0x9f)]=!![],this['dragLayer']=_0x56c5b2,(_0x2f6c71=this[_0x2eea88(0xc9)])===null||_0x2f6c71===void 0x0||_0x2f6c71['mouseDragStart']();}},{'key':'mouseDragChange','value':function _0x13bad6(_0x2f7747){var _0x521f41=_0x5b002a;if(!this[_0x521f41(0x9f)]||!this[_0x521f41(0xc9)])return;if(!this[_0x521f41(0xa3)]||!this[_0x521f41(0xa6)])return;var _0x225a28=this[_0x521f41(0xce)](_0x2f7747),_0x3f12dc=_toConsumableArray(this['_centerPosition']),_0x2b4298=_toConsumableArray(this['_handlePosition']);if(this[_0x521f41(0xc9)][_0x521f41(0xed)]===_0x521f41(0x9b)){var _0x2b761f=this[_0x521f41(0xb0)](_0x3f12dc,_0x2b4298);_0x3f12dc=_0x225a28;var _0x16051f=_0x2b761f&&this['_getPositionByLocalVector'](_0x3f12dc,_0x2b761f);if(!_0x16051f)return;_0x2b4298=_0x16051f;}else _0x2b4298=_0x225a28;if(!this['_applyGeometry'](_0x3f12dc,_0x2b4298))return;this[_0x521f41(0xe2)](),this[_0x521f41(0xe4)]();}},{'key':'mouseDragEnd','value':function _0x50a74f(){var _0x4d087a=_0x5b002a;this[_0x4d087a(0x9f)]=![],this[_0x4d087a(0xc9)]=null;}},{'key':_0x5b002a(0x95),'value':function _0x34eeb0(_0x975eed){var _0xd50175=_0x5b002a,_0x21e49a=arguments[_0xd50175(0xd0)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:!![];_get(_getPrototypeOf(_0x3ceee5['prototype']),'endEdit',this)['call'](this,_0x975eed,_0x21e49a),this['_destroyEditHandles']();}},{'key':_0x5b002a(0xe9),'value':function _0x584c0f(){var _0x1a3d4e=_0x5b002a;_get(_getPrototypeOf(_0x3ceee5['prototype']),'destroy',this)['call'](this),this['_destroyShapeLayers'](),this['_centerPosition']=null,this[_0x1a3d4e(0xa6)]=null;}}]),_0x3ceee5;}(_0x2378ca);export default RegularPolygon;
|