deeptwins-engine-3d 0.1.76 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +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 +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,314 +1 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 几何算法
|
|
3
|
-
*/
|
|
4
|
-
import * as Cesium from 'deeptwins-cesium';
|
|
5
|
-
import P from "./plotUtil";
|
|
6
|
-
var xp = {};
|
|
7
|
-
var doubleArrowDefualParam = {
|
|
8
|
-
type: 'doublearrow',
|
|
9
|
-
headHeightFactor: 0.25,
|
|
10
|
-
headWidthFactor: 0.3,
|
|
11
|
-
neckHeightFactor: 0.85,
|
|
12
|
-
fixPointCount: 4,
|
|
13
|
-
neckWidthFactor: 0.15
|
|
14
|
-
};
|
|
15
|
-
var tailedAttackArrowDefualParam = {
|
|
16
|
-
headHeightFactor: 0.18,
|
|
17
|
-
headWidthFactor: 0.3,
|
|
18
|
-
neckHeightFactor: 0.85,
|
|
19
|
-
neckWidthFactor: 0.15,
|
|
20
|
-
tailWidthFactor: 0.1,
|
|
21
|
-
headTailFactor: 0.8,
|
|
22
|
-
swallowTailFactor: 1
|
|
23
|
-
};
|
|
24
|
-
var fineArrowDefualParam = {
|
|
25
|
-
tailWidthFactor: 0.15,
|
|
26
|
-
neckWidthFactor: 0.2,
|
|
27
|
-
headWidthFactor: 0.25,
|
|
28
|
-
headAngle: Math.PI / 8.5,
|
|
29
|
-
neckAngle: Math.PI / 13
|
|
30
|
-
};
|
|
31
|
-
xp.algorithm = {};
|
|
32
|
-
xp.algorithm.doubleArrow = function (inputPoint) {
|
|
33
|
-
this.connPoint = null;
|
|
34
|
-
this.tempPoint4 = null;
|
|
35
|
-
this.points = inputPoint;
|
|
36
|
-
var result = {
|
|
37
|
-
controlPoint: null,
|
|
38
|
-
polygonalPoint: null
|
|
39
|
-
};
|
|
40
|
-
//获取已经点击的坐标数
|
|
41
|
-
var t = inputPoint.length;
|
|
42
|
-
if (!(2 > t)) {
|
|
43
|
-
if (2 == t) return inputPoint;
|
|
44
|
-
var o = this.points[0],
|
|
45
|
-
//第一个点
|
|
46
|
-
e = this.points[1],
|
|
47
|
-
//第二个点
|
|
48
|
-
r = this.points[2]; //第三个点
|
|
49
|
-
//下面的是移动点位后的坐标
|
|
50
|
-
3 == t ? this.tempPoint4 = xp.algorithm.getTempPoint4(o, e, r) : this.tempPoint4 = this.points[3], 3 == t || 4 == t ? this.connPoint = P.PlotUtils.mid(o, e) : this.connPoint = this.points[4];
|
|
51
|
-
var n, g;
|
|
52
|
-
P.PlotUtils.isClockWise(o, e, r) ? (n = xp.algorithm.getArrowPoints(o, this.connPoint, this.tempPoint4, !1), g = xp.algorithm.getArrowPoints(this.connPoint, e, r, !0)) : (n = xp.algorithm.getArrowPoints(e, this.connPoint, r, !1), g = xp.algorithm.getArrowPoints(this.connPoint, o, this.tempPoint4, !0));
|
|
53
|
-
var i = n.length,
|
|
54
|
-
s = (i - 5) / 2,
|
|
55
|
-
a = n.slice(0, s),
|
|
56
|
-
l = n.slice(s, s + 5),
|
|
57
|
-
p = g.slice(s, s + 5),
|
|
58
|
-
h = g.slice(s + 5, i);
|
|
59
|
-
var c = g.slice(0, s);
|
|
60
|
-
var u = n.slice(s + 5, i);
|
|
61
|
-
c = P.PlotUtils.getBezierPoints(c);
|
|
62
|
-
var d = P.PlotUtils.getBezierPoints(h.concat(a.slice(1)));
|
|
63
|
-
u = P.PlotUtils.getBezierPoints(u);
|
|
64
|
-
var f = c.concat(p, d, l, u);
|
|
65
|
-
var newArray = xp.algorithm.array2Dto1D(f);
|
|
66
|
-
result.controlPoint = [o, e, r, this.tempPoint4, this.connPoint];
|
|
67
|
-
result.polygonalPoint = Cesium.Cartesian3.fromDegreesArray(newArray);
|
|
68
|
-
}
|
|
69
|
-
return result;
|
|
70
|
-
};
|
|
71
|
-
xp.algorithm.threeArrow = function (inputPoint) {
|
|
72
|
-
this.connPoint = null;
|
|
73
|
-
this.tempPoint4 = null;
|
|
74
|
-
this.tempPoint5 = null;
|
|
75
|
-
this.points = inputPoint;
|
|
76
|
-
var result = {
|
|
77
|
-
controlPoint: null,
|
|
78
|
-
polygonalPoint: null
|
|
79
|
-
};
|
|
80
|
-
//获取已经点击的坐标数
|
|
81
|
-
var t = inputPoint.length;
|
|
82
|
-
if (t >= 2) {
|
|
83
|
-
if (t == 2) {
|
|
84
|
-
return inputPoint;
|
|
85
|
-
}
|
|
86
|
-
var o = this.points[0],
|
|
87
|
-
//第一个点
|
|
88
|
-
e = this.points[1],
|
|
89
|
-
//第二个点
|
|
90
|
-
r = this.points[2]; //第三个点
|
|
91
|
-
//下面的是移动点位后的坐标
|
|
92
|
-
if (t == 3) {
|
|
93
|
-
this.tempPoint4 = xp.algorithm.getTempPoint4(o, e, r);
|
|
94
|
-
this.tempPoint5 = P.PlotUtils.mid(r, this.tempPoint4);
|
|
95
|
-
} else {
|
|
96
|
-
this.tempPoint4 = this.points[3];
|
|
97
|
-
this.tempPoint5 = this.points[4];
|
|
98
|
-
}
|
|
99
|
-
if (t < 6) {
|
|
100
|
-
this.connPoint = P.PlotUtils.mid(o, e);
|
|
101
|
-
} else {
|
|
102
|
-
this.connPoint = this.points[5];
|
|
103
|
-
}
|
|
104
|
-
var n, g;
|
|
105
|
-
if (P.PlotUtils.isClockWise(o, e, r)) {
|
|
106
|
-
n = xp.algorithm.getArrowPoints(o, this.connPoint, this.tempPoint4, !1);
|
|
107
|
-
g = xp.algorithm.getArrowPoints(this.connPoint, e, r, !0);
|
|
108
|
-
} else {
|
|
109
|
-
n = xp.algorithm.getArrowPoints(e, this.connPoint, r, !1);
|
|
110
|
-
g = xp.algorithm.getArrowPoints(this.connPoint, o, this.tempPoint4, !0);
|
|
111
|
-
}
|
|
112
|
-
var i = n.length,
|
|
113
|
-
s = (i - 5) / 2,
|
|
114
|
-
a = n.slice(0, s),
|
|
115
|
-
l = n.slice(s, s + 5),
|
|
116
|
-
p = g.slice(s, s + 5),
|
|
117
|
-
h = g.slice(s + 5, i);
|
|
118
|
-
var c = g.slice(0, s);
|
|
119
|
-
var u = n.slice(s + 5, i);
|
|
120
|
-
c = P.PlotUtils.getBezierPoints(c);
|
|
121
|
-
var d = P.PlotUtils.getBezierPoints(h.concat(a.slice(1)));
|
|
122
|
-
u = P.PlotUtils.getBezierPoints(u);
|
|
123
|
-
var f = c.concat(p, d, l, u);
|
|
124
|
-
var newArray = xp.algorithm.array2Dto1D(f);
|
|
125
|
-
result.controlPoint = [o, e, r, this.tempPoint4, this.tempPoint5, this.connPoint];
|
|
126
|
-
result.polygonalPoint = Cesium.Cartesian3.fromDegreesArray(newArray);
|
|
127
|
-
}
|
|
128
|
-
return result;
|
|
129
|
-
};
|
|
130
|
-
xp.algorithm.array2Dto1D = function (array) {
|
|
131
|
-
var newArray = [];
|
|
132
|
-
array.forEach(function (elt) {
|
|
133
|
-
newArray.push(elt[0]);
|
|
134
|
-
newArray.push(elt[1]);
|
|
135
|
-
});
|
|
136
|
-
return newArray;
|
|
137
|
-
};
|
|
138
|
-
xp.algorithm.getArrowPoints = function (t, o, e, r) {
|
|
139
|
-
this.type = doubleArrowDefualParam.type, this.headHeightFactor = doubleArrowDefualParam.headHeightFactor, this.headWidthFactor = doubleArrowDefualParam.headWidthFactor, this.neckHeightFactor = doubleArrowDefualParam.neckHeightFactor, this.neckWidthFactor = doubleArrowDefualParam.neckWidthFactor;
|
|
140
|
-
var n = P.PlotUtils.mid(t, o),
|
|
141
|
-
g = P.PlotUtils.distance(n, e);
|
|
142
|
-
var i = P.PlotUtils.getThirdPoint(e, n, 0, 0.3 * g, !0);
|
|
143
|
-
var s = P.PlotUtils.getThirdPoint(e, n, 0, 0.5 * g, !0);
|
|
144
|
-
i = P.PlotUtils.getThirdPoint(n, i, P.Constants.HALF_PI, g / 5, r), s = P.PlotUtils.getThirdPoint(n, s, P.Constants.HALF_PI, g / 4, r);
|
|
145
|
-
var a = [n, i, s, e],
|
|
146
|
-
l = xp.algorithm.getArrowHeadPoints(a, this.headHeightFactor, this.headWidthFactor, this.neckHeightFactor, this.neckWidthFactor),
|
|
147
|
-
u = l[0],
|
|
148
|
-
c = l[4],
|
|
149
|
-
p = P.PlotUtils.distance(t, o) / P.PlotUtils.getBaseLength(a) / 2,
|
|
150
|
-
h = xp.algorithm.getArrowBodyPoints(a, u, c, p),
|
|
151
|
-
d = h.length;
|
|
152
|
-
var f = h.slice(0, d / 2);
|
|
153
|
-
var E = h.slice(d / 2, d);
|
|
154
|
-
return f.push(u), E.push(c), f = f.reverse(), f.push(o), E = E.reverse(), E.push(t), f.reverse().concat(l, E);
|
|
155
|
-
};
|
|
156
|
-
xp.algorithm.getArrowHeadPoints = function (t, o, e) {
|
|
157
|
-
this.type = doubleArrowDefualParam.type, this.headHeightFactor = doubleArrowDefualParam.headHeightFactor, this.headWidthFactor = doubleArrowDefualParam.headWidthFactor, this.neckHeightFactor = doubleArrowDefualParam.neckHeightFactor, this.neckWidthFactor = doubleArrowDefualParam.neckWidthFactor;
|
|
158
|
-
var r = P.PlotUtils.getBaseLength(t),
|
|
159
|
-
n = r * this.headHeightFactor,
|
|
160
|
-
g = t[t.length - 1],
|
|
161
|
-
i = (P.PlotUtils.distance(o, e), n * this.headWidthFactor),
|
|
162
|
-
s = n * this.neckWidthFactor,
|
|
163
|
-
a = n * this.neckHeightFactor,
|
|
164
|
-
l = P.PlotUtils.getThirdPoint(t[t.length - 2], g, 0, n, !0),
|
|
165
|
-
u = P.PlotUtils.getThirdPoint(t[t.length - 2], g, 0, a, !0),
|
|
166
|
-
c = P.PlotUtils.getThirdPoint(g, l, P.Constants.HALF_PI, i, !1),
|
|
167
|
-
p = P.PlotUtils.getThirdPoint(g, l, P.Constants.HALF_PI, i, !0),
|
|
168
|
-
h = P.PlotUtils.getThirdPoint(g, u, P.Constants.HALF_PI, s, !1),
|
|
169
|
-
d = P.PlotUtils.getThirdPoint(g, u, P.Constants.HALF_PI, s, !0);
|
|
170
|
-
return [h, c, g, p, d];
|
|
171
|
-
};
|
|
172
|
-
xp.algorithm.getArrowBodyPoints = function (t, o, e, r) {
|
|
173
|
-
var u = [];
|
|
174
|
-
var c = [];
|
|
175
|
-
for (var p = 1, n = P.PlotUtils.wholeDistance(t), g = P.PlotUtils.getBaseLength(t), i = g * r, s = P.PlotUtils.distance(o, e), a = (i - s) / 2, l = 0; p < t.length - 1; p++) {
|
|
176
|
-
var h = P.PlotUtils.getAngleOfThreePoints(t[p - 1], t[p], t[p + 1]) / 2;
|
|
177
|
-
l += P.PlotUtils.distance(t[p - 1], t[p]);
|
|
178
|
-
var d = (i / 2 - l / n * a) / Math.sin(h),
|
|
179
|
-
f = P.PlotUtils.getThirdPoint(t[p - 1], t[p], Math.PI - h, d, !0),
|
|
180
|
-
E = P.PlotUtils.getThirdPoint(t[p - 1], t[p], h, d, !1);
|
|
181
|
-
u.push(f), c.push(E);
|
|
182
|
-
}
|
|
183
|
-
return u.concat(c);
|
|
184
|
-
};
|
|
185
|
-
xp.algorithm.getTempPoint4 = function (t, o, e) {
|
|
186
|
-
var r, n, g, i;
|
|
187
|
-
var s = P.PlotUtils.mid(t, o),
|
|
188
|
-
a = P.PlotUtils.distance(s, e),
|
|
189
|
-
l = P.PlotUtils.getAngleOfThreePoints(t, s, e);
|
|
190
|
-
return l < P.Constants.HALF_PI ? (n = a * Math.sin(l), g = a * Math.cos(l), i = P.PlotUtils.getThirdPoint(t, s, P.Constants.HALF_PI, n, !1), r = P.PlotUtils.getThirdPoint(s, i, P.Constants.HALF_PI, g, !0)) : l >= P.Constants.HALF_PI && l < Math.PI ? (n = a * Math.sin(Math.PI - l), g = a * Math.cos(Math.PI - l), i = P.PlotUtils.getThirdPoint(t, s, P.Constants.HALF_PI, n, !1), r = P.PlotUtils.getThirdPoint(s, i, P.Constants.HALF_PI, g, !1)) : l >= Math.PI && l < 1.5 * Math.PI ? (n = a * Math.sin(l - Math.PI), g = a * Math.cos(l - Math.PI), i = P.PlotUtils.getThirdPoint(t, s, P.Constants.HALF_PI, n, !0), r = P.PlotUtils.getThirdPoint(s, i, P.Constants.HALF_PI, g, !0)) : (n = a * Math.sin(2 * Math.PI - l), g = a * Math.cos(2 * Math.PI - l), i = P.PlotUtils.getThirdPoint(t, s, P.Constants.HALF_PI, n, !0), r = P.PlotUtils.getThirdPoint(s, i, P.Constants.HALF_PI, g, !1)), r;
|
|
191
|
-
};
|
|
192
|
-
xp.algorithm.tailedAttackArrow = function (inputPoint) {
|
|
193
|
-
inputPoint = xp.algorithm.dereplication(inputPoint);
|
|
194
|
-
this.tailWidthFactor = tailedAttackArrowDefualParam.tailWidthFactor;
|
|
195
|
-
this.swallowTailFactor = tailedAttackArrowDefualParam.swallowTailFactor;
|
|
196
|
-
this.swallowTailPnt = tailedAttackArrowDefualParam.swallowTailPnt;
|
|
197
|
-
//控制点
|
|
198
|
-
var result = {
|
|
199
|
-
controlPoint: null,
|
|
200
|
-
polygonalPoint: []
|
|
201
|
-
};
|
|
202
|
-
result.controlPoint = inputPoint;
|
|
203
|
-
var t = inputPoint.length;
|
|
204
|
-
if (!(2 > t)) {
|
|
205
|
-
if (2 == inputPoint.length) {
|
|
206
|
-
result.polygonalPoint = inputPoint;
|
|
207
|
-
return result;
|
|
208
|
-
}
|
|
209
|
-
var o = inputPoint;
|
|
210
|
-
var e = o[0],
|
|
211
|
-
r = o[1];
|
|
212
|
-
P.PlotUtils.isClockWise(o[0], o[1], o[2]) && (e = o[1], r = o[0]);
|
|
213
|
-
var n = P.PlotUtils.mid(e, r),
|
|
214
|
-
g = [n].concat(o.slice(2)),
|
|
215
|
-
i = xp.algorithm.getAttackArrowHeadPoints(g, e, r, tailedAttackArrowDefualParam),
|
|
216
|
-
s = i[0],
|
|
217
|
-
a = i[4],
|
|
218
|
-
l = P.PlotUtils.distance(e, r),
|
|
219
|
-
u = P.PlotUtils.getBaseLength(g),
|
|
220
|
-
c = u * this.tailWidthFactor * this.swallowTailFactor;
|
|
221
|
-
this.swallowTailPnt = P.PlotUtils.getThirdPoint(g[1], g[0], 0, c, !0);
|
|
222
|
-
var p = l / u,
|
|
223
|
-
h = xp.algorithm.getAttackArrowBodyPoints(g, s, a, p),
|
|
224
|
-
_t = h.length;
|
|
225
|
-
var d = [e].concat(h.slice(0, _t / 2));
|
|
226
|
-
d.push(s);
|
|
227
|
-
var f = [r].concat(h.slice(_t / 2, _t));
|
|
228
|
-
var newArray = [];
|
|
229
|
-
f.push(a), d = P.PlotUtils.getQBSplinePoints(d), f = P.PlotUtils.getQBSplinePoints(f), newArray = xp.algorithm.array2Dto1D(d.concat(i, f.reverse(), [this.swallowTailPnt, d[0]]));
|
|
230
|
-
result.polygonalPoint = Cesium.Cartesian3.fromDegreesArray(newArray);
|
|
231
|
-
}
|
|
232
|
-
return result;
|
|
233
|
-
};
|
|
234
|
-
xp.algorithm.getAttackArrowHeadPoints = function (t, o, e, defaultParam) {
|
|
235
|
-
this.headHeightFactor = defaultParam.headHeightFactor;
|
|
236
|
-
this.headTailFactor = defaultParam.headTailFactor;
|
|
237
|
-
this.headWidthFactor = defaultParam.headWidthFactor;
|
|
238
|
-
this.neckWidthFactor = defaultParam.neckWidthFactor;
|
|
239
|
-
this.neckHeightFactor = defaultParam.neckHeightFactor;
|
|
240
|
-
var r = P.PlotUtils.getBaseLength(t),
|
|
241
|
-
n = r * this.headHeightFactor;
|
|
242
|
-
var g = t[t.length - 1];
|
|
243
|
-
r = P.PlotUtils.distance(g, t[t.length - 2]);
|
|
244
|
-
var i = P.PlotUtils.distance(o, e);
|
|
245
|
-
n > i * this.headTailFactor && (n = i * this.headTailFactor);
|
|
246
|
-
var s = n * this.headWidthFactor,
|
|
247
|
-
a = n * this.neckWidthFactor;
|
|
248
|
-
n = n > r ? r : n;
|
|
249
|
-
var l = n * this.neckHeightFactor,
|
|
250
|
-
u = P.PlotUtils.getThirdPoint(t[t.length - 2], g, 0, n, !0),
|
|
251
|
-
c = P.PlotUtils.getThirdPoint(t[t.length - 2], g, 0, l, !0),
|
|
252
|
-
p = P.PlotUtils.getThirdPoint(g, u, P.Constants.HALF_PI, s, !1),
|
|
253
|
-
h = P.PlotUtils.getThirdPoint(g, u, P.Constants.HALF_PI, s, !0),
|
|
254
|
-
d = P.PlotUtils.getThirdPoint(g, c, P.Constants.HALF_PI, a, !1),
|
|
255
|
-
f = P.PlotUtils.getThirdPoint(g, c, P.Constants.HALF_PI, a, !0);
|
|
256
|
-
return [d, p, g, h, f];
|
|
257
|
-
};
|
|
258
|
-
xp.algorithm.getAttackArrowBodyPoints = function (t, o, e, r) {
|
|
259
|
-
var u = [];
|
|
260
|
-
var c = [];
|
|
261
|
-
for (var p = 1, n = P.PlotUtils.wholeDistance(t), g = P.PlotUtils.getBaseLength(t), i = g * r, s = P.PlotUtils.distance(o, e), a = (i - s) / 2, l = 0; p < t.length - 1; p++) {
|
|
262
|
-
var h = P.PlotUtils.getAngleOfThreePoints(t[p - 1], t[p], t[p + 1]) / 2;
|
|
263
|
-
l += P.PlotUtils.distance(t[p - 1], t[p]);
|
|
264
|
-
var d = (i / 2 - l / n * a) / Math.sin(h),
|
|
265
|
-
f = P.PlotUtils.getThirdPoint(t[p - 1], t[p], Math.PI - h, d, !0),
|
|
266
|
-
E = P.PlotUtils.getThirdPoint(t[p - 1], t[p], h, d, !1);
|
|
267
|
-
u.push(f), c.push(E);
|
|
268
|
-
}
|
|
269
|
-
return u.concat(c);
|
|
270
|
-
};
|
|
271
|
-
xp.algorithm.dereplication = function (array) {
|
|
272
|
-
var last = array[array.length - 1];
|
|
273
|
-
var change = false;
|
|
274
|
-
var newArray = [];
|
|
275
|
-
newArray = array.filter(function (i) {
|
|
276
|
-
if (i[0] != last[0] && i[1] != last[1]) {
|
|
277
|
-
return i;
|
|
278
|
-
}
|
|
279
|
-
change = true;
|
|
280
|
-
});
|
|
281
|
-
if (change) newArray.push(last);
|
|
282
|
-
return newArray;
|
|
283
|
-
};
|
|
284
|
-
xp.algorithm.fineArrow = function (tailPoint, headerPoint) {
|
|
285
|
-
if (tailPoint.length < 2 || headerPoint.length < 2) return;
|
|
286
|
-
//画箭头的函数
|
|
287
|
-
var tailWidthFactor = fineArrowDefualParam.tailWidthFactor;
|
|
288
|
-
var neckWidthFactor = fineArrowDefualParam.neckWidthFactor;
|
|
289
|
-
var headWidthFactor = fineArrowDefualParam.headWidthFactor;
|
|
290
|
-
var headAngle = fineArrowDefualParam.headAngle;
|
|
291
|
-
var neckAngle = fineArrowDefualParam.neckAngle;
|
|
292
|
-
var o = [];
|
|
293
|
-
o[0] = tailPoint;
|
|
294
|
-
o[1] = headerPoint;
|
|
295
|
-
var e = o[0],
|
|
296
|
-
r = o[1],
|
|
297
|
-
n = P.PlotUtils.getBaseLength(o),
|
|
298
|
-
g = n * tailWidthFactor,
|
|
299
|
-
//尾部宽度因子
|
|
300
|
-
i = n * neckWidthFactor,
|
|
301
|
-
//脖子宽度银子
|
|
302
|
-
s = n * headWidthFactor,
|
|
303
|
-
//头部宽度因子
|
|
304
|
-
a = P.PlotUtils.getThirdPoint(r, e, P.Constants.HALF_PI, g, !0),
|
|
305
|
-
l = P.PlotUtils.getThirdPoint(r, e, P.Constants.HALF_PI, g, !1),
|
|
306
|
-
u = P.PlotUtils.getThirdPoint(e, r, headAngle, s, !1),
|
|
307
|
-
c = P.PlotUtils.getThirdPoint(e, r, headAngle, s, !0),
|
|
308
|
-
p = P.PlotUtils.getThirdPoint(e, r, neckAngle, i, !1),
|
|
309
|
-
h = P.PlotUtils.getThirdPoint(e, r, neckAngle, i, !0),
|
|
310
|
-
d = [];
|
|
311
|
-
d.push(a[0], a[1], p[0], p[1], u[0], u[1], r[0], r[1], c[0], c[1], h[0], h[1], l[0], l[1], e[0], e[1]);
|
|
312
|
-
return Cesium.Cartesian3.fromDegreesArray(d);
|
|
313
|
-
};
|
|
314
|
-
export default xp;
|
|
1
|
+
var _0x271009=_0x1181;function _0x1181(_0x467aae,_0x27098f){_0x467aae=_0x467aae-0x121;var _0x16c7d0=_0x16c7();var _0x1181ff=_0x16c7d0[_0x467aae];if(_0x1181['brXdiu']===undefined){var _0x3767b7=function(_0x84391c){var _0x2098b7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x5c4d7b='',_0x5060e0='';for(var _0x47f148=0x0,_0x5cbdb8,_0xa9d2d2,_0xb0068c=0x0;_0xa9d2d2=_0x84391c['charAt'](_0xb0068c++);~_0xa9d2d2&&(_0x5cbdb8=_0x47f148%0x4?_0x5cbdb8*0x40+_0xa9d2d2:_0xa9d2d2,_0x47f148++%0x4)?_0x5c4d7b+=String['fromCharCode'](0xff&_0x5cbdb8>>(-0x2*_0x47f148&0x6)):0x0){_0xa9d2d2=_0x2098b7['indexOf'](_0xa9d2d2);}for(var _0x1bdd4a=0x0,_0xe7010d=_0x5c4d7b['length'];_0x1bdd4a<_0xe7010d;_0x1bdd4a++){_0x5060e0+='%'+('00'+_0x5c4d7b['charCodeAt'](_0x1bdd4a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5060e0);};_0x1181['JiVGcV']=_0x3767b7,_0x1181['VkVHFu']={},_0x1181['brXdiu']=!![];}var _0x4e2e6c=_0x16c7d0[0x0],_0x25b5f4=_0x467aae+_0x4e2e6c,_0x45846b=_0x1181['VkVHFu'][_0x25b5f4];return!_0x45846b?(_0x1181ff=_0x1181['JiVGcV'](_0x1181ff),_0x1181['VkVHFu'][_0x25b5f4]=_0x1181ff):_0x1181ff=_0x45846b,_0x1181ff;}(function(_0x45b734,_0x47430d){var _0x153c06=_0x1181,_0x13438e=_0x45b734();while(!![]){try{var _0x575257=-parseInt(_0x153c06(0x158))/0x1+-parseInt(_0x153c06(0x149))/0x2+parseInt(_0x153c06(0x135))/0x3*(parseInt(_0x153c06(0x13b))/0x4)+-parseInt(_0x153c06(0x137))/0x5+parseInt(_0x153c06(0x13e))/0x6+-parseInt(_0x153c06(0x129))/0x7*(-parseInt(_0x153c06(0x122))/0x8)+parseInt(_0x153c06(0x14c))/0x9*(parseInt(_0x153c06(0x141))/0xa);if(_0x575257===_0x47430d)break;else _0x13438e['push'](_0x13438e['shift']());}catch(_0x51e893){_0x13438e['push'](_0x13438e['shift']());}}}(_0x16c7,0xe57e5));import*as _0x5c4d7b from'deeptwins-cesium';import _0x5060e0 from'./plotUtil';var xp={},doubleArrowDefualParam={'type':_0x271009(0x12a),'headHeightFactor':0.25,'headWidthFactor':0.3,'neckHeightFactor':0.85,'fixPointCount':0x4,'neckWidthFactor':0.15},tailedAttackArrowDefualParam={'headHeightFactor':0.18,'headWidthFactor':0.3,'neckHeightFactor':0.85,'neckWidthFactor':0.15,'tailWidthFactor':0.1,'headTailFactor':0.8,'swallowTailFactor':0x1},fineArrowDefualParam={'tailWidthFactor':0.15,'neckWidthFactor':0.2,'headWidthFactor':0.25,'headAngle':Math['PI']/8.5,'neckAngle':Math['PI']/0xd};function _0x16c7(){var _0x42b2e8=['DgHYzwvbCNjVDW','BwLK','z2v0qxjYB3DqB2LUDhm','Cg9PBNrZ','Cg9SEwDVBMfSug9PBNq','zgLZDgfUy2u','z2v0qxr0ywnRqxjYB3DizwfKug9PBNrZ','DgvTCfbVAw50nq','ndaYD1bnCM1k','yxjYyxKYrhrVmuq','nde5mJeXmgPoD3bMBW','DgfPBgvKqxr0ywnRqxjYB3C','z2v0vgvTCfbVAw50na','AgvHzfDPzhrOrMfJDg9Y','mJuWnJHfu0zSEuK','ywXNB3jPDgHT','y29UDhjVBfbVAw50','mty3mZy5nhPwsfrgBq','C2LU','BMvJA0HLAwDODezHy3rVCG','mteYmdeYmtbZBw5pDKC','z2v0vgHPCMrqB2LUDa','q2fYDgvZAwfUmW','z2v0qw5NBgvpzLrOCMvLug9PBNrZ','z2v0qxjYB3DizwfKug9PBNrZ','C2XPy2u','z2v0qMfZzuXLBMD0Aa','z2v0qMv6AwvYug9PBNrZ','mZm3mZu4neHeuhDuBG','BMvJA0fUz2XL','zMLUzufYCM93','mtH6BvbKEKy','C3DHBgXVD1rHAwXqBNq','z2v0qxjYB3DcB2r5ug9PBNrZ','DgvTCfbVAw50na','zg91yMXLqxjYB3C','DhLWzq','BMvJA1DPzhrOrMfJDg9Y','DgfPBfDPzhrOrMfJDg9Y','z2v0qxr0ywnRqxjYB3DcB2r5ug9PBNrZ','sefmrL9qsq','ChvZAa','AgvHzfrHAwXgywn0B3i','mtyXmJi5mNDhDMHwvG','zgvYzxbSAwnHDgLVBG','BgvUz3rO','AxndBg9JA1DPC2u','y29Uy2f0','q29UC3rHBNrZ','mtK2nda0ofj0DNLtta','y29UBLbVAw50','y29Z','C3DHBgXVD1rHAwXgywn0B3i','zNjVBurLz3jLzxnbCNjHEq','AgvHzefUz2XL','AgvHzeHLAwDODezHy3rVCG','ndLAzerSyvm','zg91yMXLyxjYB3C','z2v0uujtCgXPBMvqB2LUDhm','ugXVDfv0AwXZ'];_0x16c7=function(){return _0x42b2e8;};return _0x16c7();}xp['algorithm']={},xp[_0x271009(0x13c)][_0x271009(0x150)]=function(_0x47f148){var _0x57b829=_0x271009;this[_0x57b829(0x123)]=null,this[_0x57b829(0x14f)]=null,this['points']=_0x47f148;var _0x5cbdb8={'controlPoint':null,'polygonalPoint':null},_0xa9d2d2=_0x47f148[_0x57b829(0x15a)];if(!(0x2>_0xa9d2d2)){if(0x2==_0xa9d2d2)return _0x47f148;var _0xb0068c=this['points'][0x0],_0x1bdd4a=this['points'][0x1],_0xe7010d=this['points'][0x2];0x3==_0xa9d2d2?this[_0x57b829(0x14f)]=xp['algorithm'][_0x57b829(0x139)](_0xb0068c,_0x1bdd4a,_0xe7010d):this['tempPoint4']=this[_0x57b829(0x130)][0x3],0x3==_0xa9d2d2||0x4==_0xa9d2d2?this['connPoint']=_0x5060e0['PlotUtils']['mid'](_0xb0068c,_0x1bdd4a):this['connPoint']=this['points'][0x4];var _0x4a2c31,_0x303e41;_0x5060e0['PlotUtils'][_0x57b829(0x15b)](_0xb0068c,_0x1bdd4a,_0xe7010d)?(_0x4a2c31=xp['algorithm']['getArrowPoints'](_0xb0068c,this['connPoint'],this['tempPoint4'],!0x1),_0x303e41=xp['algorithm']['getArrowPoints'](this[_0x57b829(0x123)],_0x1bdd4a,_0xe7010d,!0x0)):(_0x4a2c31=xp[_0x57b829(0x13c)][_0x57b829(0x12f)](_0x1bdd4a,this['connPoint'],_0xe7010d,!0x1),_0x303e41=xp['algorithm'][_0x57b829(0x12f)](this[_0x57b829(0x123)],_0xb0068c,this['tempPoint4'],!0x0));var _0x929bca=_0x4a2c31['length'],_0x2afa29=(_0x929bca-0x5)/0x2,_0x18eb18=_0x4a2c31['slice'](0x0,_0x2afa29),_0x429ada=_0x4a2c31['slice'](_0x2afa29,_0x2afa29+0x5),_0x2783de=_0x303e41[_0x57b829(0x146)](_0x2afa29,_0x2afa29+0x5),_0x2a0796=_0x303e41['slice'](_0x2afa29+0x5,_0x929bca),_0x72c77a=_0x303e41[_0x57b829(0x146)](0x0,_0x2afa29),_0x164eb7=_0x4a2c31[_0x57b829(0x146)](_0x2afa29+0x5,_0x929bca);_0x72c77a=_0x5060e0[_0x57b829(0x12c)]['getBezierPoints'](_0x72c77a);var _0x2023dd=_0x5060e0['PlotUtils'][_0x57b829(0x148)](_0x2a0796[_0x57b829(0x15c)](_0x18eb18['slice'](0x1)));_0x164eb7=_0x5060e0['PlotUtils'][_0x57b829(0x148)](_0x164eb7);var _0x19f839=_0x72c77a[_0x57b829(0x15c)](_0x2783de,_0x2023dd,_0x429ada,_0x164eb7),_0xb38b3f=xp[_0x57b829(0x13c)]['array2Dto1D'](_0x19f839);_0x5cbdb8[_0x57b829(0x13d)]=[_0xb0068c,_0x1bdd4a,_0xe7010d,this[_0x57b829(0x14f)],this[_0x57b829(0x123)]],_0x5cbdb8[_0x57b829(0x131)]=_0x5c4d7b[_0x57b829(0x143)][_0x57b829(0x126)](_0xb38b3f);}return _0x5cbdb8;},xp['algorithm'][_0x271009(0x12d)]=function(_0x560417){var _0x5d511b=_0x271009;this['connPoint']=null,this['tempPoint4']=null,this['tempPoint5']=null,this['points']=_0x560417;var _0x248b74={'controlPoint':null,'polygonalPoint':null},_0x20a73d=_0x560417[_0x5d511b(0x15a)];if(_0x20a73d>=0x2){if(_0x20a73d==0x2)return _0x560417;var _0x3c5c81=this['points'][0x0],_0x192c0a=this[_0x5d511b(0x130)][0x1],_0x208b7d=this['points'][0x2];_0x20a73d==0x3?(this['tempPoint4']=xp[_0x5d511b(0x13c)]['getTempPoint4'](_0x3c5c81,_0x192c0a,_0x208b7d),this['tempPoint5']=_0x5060e0['PlotUtils'][_0x5d511b(0x12e)](_0x208b7d,this['tempPoint4'])):(this[_0x5d511b(0x14f)]=this['points'][0x3],this[_0x5d511b(0x134)]=this[_0x5d511b(0x130)][0x4]);_0x20a73d<0x6?this['connPoint']=_0x5060e0['PlotUtils']['mid'](_0x3c5c81,_0x192c0a):this[_0x5d511b(0x123)]=this[_0x5d511b(0x130)][0x5];var _0x55d6d9,_0x57a730;_0x5060e0['PlotUtils'][_0x5d511b(0x15b)](_0x3c5c81,_0x192c0a,_0x208b7d)?(_0x55d6d9=xp['algorithm'][_0x5d511b(0x12f)](_0x3c5c81,this['connPoint'],this['tempPoint4'],!0x1),_0x57a730=xp['algorithm'][_0x5d511b(0x12f)](this['connPoint'],_0x192c0a,_0x208b7d,!0x0)):(_0x55d6d9=xp['algorithm'][_0x5d511b(0x12f)](_0x192c0a,this[_0x5d511b(0x123)],_0x208b7d,!0x1),_0x57a730=xp[_0x5d511b(0x13c)]['getArrowPoints'](this[_0x5d511b(0x123)],_0x3c5c81,this['tempPoint4'],!0x0));var _0x554683=_0x55d6d9['length'],_0x18d684=(_0x554683-0x5)/0x2,_0x4ebef7=_0x55d6d9['slice'](0x0,_0x18d684),_0x4207d5=_0x55d6d9[_0x5d511b(0x146)](_0x18d684,_0x18d684+0x5),_0x4941d7=_0x57a730['slice'](_0x18d684,_0x18d684+0x5),_0x3b8865=_0x57a730[_0x5d511b(0x146)](_0x18d684+0x5,_0x554683),_0x4fcced=_0x57a730['slice'](0x0,_0x18d684),_0x44a9a4=_0x55d6d9['slice'](_0x18d684+0x5,_0x554683);_0x4fcced=_0x5060e0['PlotUtils'][_0x5d511b(0x148)](_0x4fcced);var _0x37aca0=_0x5060e0[_0x5d511b(0x12c)]['getBezierPoints'](_0x3b8865['concat'](_0x4ebef7['slice'](0x1)));_0x44a9a4=_0x5060e0['PlotUtils']['getBezierPoints'](_0x44a9a4);var _0xde2896=_0x4fcced['concat'](_0x4941d7,_0x37aca0,_0x4207d5,_0x44a9a4),_0x53893d=xp[_0x5d511b(0x13c)]['array2Dto1D'](_0xde2896);_0x248b74[_0x5d511b(0x13d)]=[_0x3c5c81,_0x192c0a,_0x208b7d,this[_0x5d511b(0x14f)],this['tempPoint5'],this['connPoint']],_0x248b74[_0x5d511b(0x131)]=_0x5c4d7b[_0x5d511b(0x143)]['fromDegreesArray'](_0x53893d);}return _0x248b74;},xp[_0x271009(0x13c)][_0x271009(0x136)]=function(_0x5cd88f){var _0xda1d09=[];return _0x5cd88f['forEach'](function(_0x1ea1e4){var _0x267c37=_0x1181;_0xda1d09['push'](_0x1ea1e4[0x0]),_0xda1d09[_0x267c37(0x156)](_0x1ea1e4[0x1]);}),_0xda1d09;},xp[_0x271009(0x13c)]['getArrowPoints']=function(_0x4f7377,_0xefb0d,_0x245468,_0xae2822){var _0x15d452=_0x271009;this['type']=doubleArrowDefualParam['type'],this['headHeightFactor']=doubleArrowDefualParam[_0x15d452(0x128)],this['headWidthFactor']=doubleArrowDefualParam[_0x15d452(0x13a)],this['neckHeightFactor']=doubleArrowDefualParam['neckHeightFactor'],this[_0x15d452(0x152)]=doubleArrowDefualParam[_0x15d452(0x152)];var _0x2e2b0c=_0x5060e0['PlotUtils']['mid'](_0x4f7377,_0xefb0d),_0x3b1538=_0x5060e0['PlotUtils'][_0x15d452(0x132)](_0x2e2b0c,_0x245468),_0x468826=_0x5060e0[_0x15d452(0x12c)][_0x15d452(0x142)](_0x245468,_0x2e2b0c,0x0,0.3*_0x3b1538,!0x0),_0x17eb85=_0x5060e0[_0x15d452(0x12c)]['getThirdPoint'](_0x245468,_0x2e2b0c,0x0,0.5*_0x3b1538,!0x0);_0x468826=_0x5060e0['PlotUtils']['getThirdPoint'](_0x2e2b0c,_0x468826,_0x5060e0['Constants'][_0x15d452(0x155)],_0x3b1538/0x5,_0xae2822),_0x17eb85=_0x5060e0['PlotUtils']['getThirdPoint'](_0x2e2b0c,_0x17eb85,_0x5060e0[_0x15d452(0x121)][_0x15d452(0x155)],_0x3b1538/0x4,_0xae2822);var _0x1ac8c2=[_0x2e2b0c,_0x468826,_0x17eb85,_0x245468],_0x570813=xp['algorithm'][_0x15d452(0x145)](_0x1ac8c2,this['headHeightFactor'],this['headWidthFactor'],this['neckHeightFactor'],this[_0x15d452(0x152)]),_0x24f4cf=_0x570813[0x0],_0x4fd0da=_0x570813[0x4],_0x478c58=_0x5060e0['PlotUtils'][_0x15d452(0x132)](_0x4f7377,_0xefb0d)/_0x5060e0[_0x15d452(0x12c)][_0x15d452(0x147)](_0x1ac8c2)/0x2,_0x3d9645=xp[_0x15d452(0x13c)][_0x15d452(0x14e)](_0x1ac8c2,_0x24f4cf,_0x4fd0da,_0x478c58),_0x26dc6b=_0x3d9645['length'],_0x327ed0=_0x3d9645['slice'](0x0,_0x26dc6b/0x2),_0x28c865=_0x3d9645['slice'](_0x26dc6b/0x2,_0x26dc6b);return _0x327ed0['push'](_0x24f4cf),_0x28c865[_0x15d452(0x156)](_0x4fd0da),_0x327ed0=_0x327ed0['reverse'](),_0x327ed0['push'](_0xefb0d),_0x28c865=_0x28c865['reverse'](),_0x28c865['push'](_0x4f7377),_0x327ed0['reverse']()['concat'](_0x570813,_0x28c865);},xp[_0x271009(0x13c)]['getArrowHeadPoints']=function(_0x397372,_0xca0eec,_0x27aaaf){var _0x24968b=_0x271009;this[_0x24968b(0x151)]=doubleArrowDefualParam[_0x24968b(0x151)],this[_0x24968b(0x128)]=doubleArrowDefualParam[_0x24968b(0x128)],this['headWidthFactor']=doubleArrowDefualParam['headWidthFactor'],this[_0x24968b(0x140)]=doubleArrowDefualParam['neckHeightFactor'],this[_0x24968b(0x152)]=doubleArrowDefualParam['neckWidthFactor'];var _0x1f034a=_0x5060e0[_0x24968b(0x12c)][_0x24968b(0x147)](_0x397372),_0x387d15=_0x1f034a*this[_0x24968b(0x128)],_0x40fe1b=_0x397372[_0x397372['length']-0x1],_0xa4ee09=(_0x5060e0[_0x24968b(0x12c)]['distance'](_0xca0eec,_0x27aaaf),_0x387d15*this['headWidthFactor']),_0x24d50d=_0x387d15*this[_0x24968b(0x152)],_0x13911d=_0x387d15*this[_0x24968b(0x140)],_0xab9628=_0x5060e0['PlotUtils']['getThirdPoint'](_0x397372[_0x397372[_0x24968b(0x15a)]-0x2],_0x40fe1b,0x0,_0x387d15,!0x0),_0x11d0c0=_0x5060e0[_0x24968b(0x12c)][_0x24968b(0x142)](_0x397372[_0x397372[_0x24968b(0x15a)]-0x2],_0x40fe1b,0x0,_0x13911d,!0x0),_0x52f1dd=_0x5060e0['PlotUtils']['getThirdPoint'](_0x40fe1b,_0xab9628,_0x5060e0[_0x24968b(0x121)][_0x24968b(0x155)],_0xa4ee09,!0x1),_0xf0cb09=_0x5060e0['PlotUtils'][_0x24968b(0x142)](_0x40fe1b,_0xab9628,_0x5060e0['Constants'][_0x24968b(0x155)],_0xa4ee09,!0x0),_0x3f85be=_0x5060e0['PlotUtils']['getThirdPoint'](_0x40fe1b,_0x11d0c0,_0x5060e0['Constants']['HALF_PI'],_0x24d50d,!0x1),_0x19657d=_0x5060e0[_0x24968b(0x12c)]['getThirdPoint'](_0x40fe1b,_0x11d0c0,_0x5060e0[_0x24968b(0x121)]['HALF_PI'],_0x24d50d,!0x0);return[_0x3f85be,_0x52f1dd,_0x40fe1b,_0xf0cb09,_0x19657d];},xp['algorithm'][_0x271009(0x14e)]=function(_0x28d5e0,_0x3729d0,_0x3b26c8,_0x3f309e){var _0x3c340c=_0x271009,_0x3d5cdf=[],_0x13c6b3=[];for(var _0x1b68f1=0x1,_0x4af134=_0x5060e0[_0x3c340c(0x12c)]['wholeDistance'](_0x28d5e0),_0x25ac62=_0x5060e0['PlotUtils'][_0x3c340c(0x147)](_0x28d5e0),_0x534822=_0x25ac62*_0x3f309e,_0x31b854=_0x5060e0['PlotUtils'][_0x3c340c(0x132)](_0x3729d0,_0x3b26c8),_0xaa9610=(_0x534822-_0x31b854)/0x2,_0x48e048=0x0;_0x1b68f1<_0x28d5e0['length']-0x1;_0x1b68f1++){var _0xdd241f=_0x5060e0[_0x3c340c(0x12c)]['getAngleOfThreePoints'](_0x28d5e0[_0x1b68f1-0x1],_0x28d5e0[_0x1b68f1],_0x28d5e0[_0x1b68f1+0x1])/0x2;_0x48e048+=_0x5060e0[_0x3c340c(0x12c)]['distance'](_0x28d5e0[_0x1b68f1-0x1],_0x28d5e0[_0x1b68f1]);var _0x5a8e29=(_0x534822/0x2-_0x48e048/_0x4af134*_0xaa9610)/Math['sin'](_0xdd241f),_0x56da8a=_0x5060e0['PlotUtils']['getThirdPoint'](_0x28d5e0[_0x1b68f1-0x1],_0x28d5e0[_0x1b68f1],Math['PI']-_0xdd241f,_0x5a8e29,!0x0),_0x213edc=_0x5060e0['PlotUtils'][_0x3c340c(0x142)](_0x28d5e0[_0x1b68f1-0x1],_0x28d5e0[_0x1b68f1],_0xdd241f,_0x5a8e29,!0x1);_0x3d5cdf[_0x3c340c(0x156)](_0x56da8a),_0x13c6b3['push'](_0x213edc);}return _0x3d5cdf['concat'](_0x13c6b3);},xp['algorithm']['getTempPoint4']=function(_0x1a0c28,_0x39a9e2,_0x26fd35){var _0x491aec=_0x271009,_0x3080c6,_0x1fa6c7,_0x49337e,_0x47db58,_0x2cddcc=_0x5060e0[_0x491aec(0x12c)][_0x491aec(0x12e)](_0x1a0c28,_0x39a9e2),_0x13f025=_0x5060e0['PlotUtils']['distance'](_0x2cddcc,_0x26fd35),_0x4964f6=_0x5060e0['PlotUtils'][_0x491aec(0x144)](_0x1a0c28,_0x2cddcc,_0x26fd35);return _0x4964f6<_0x5060e0['Constants']['HALF_PI']?(_0x1fa6c7=_0x13f025*Math['sin'](_0x4964f6),_0x49337e=_0x13f025*Math['cos'](_0x4964f6),_0x47db58=_0x5060e0['PlotUtils']['getThirdPoint'](_0x1a0c28,_0x2cddcc,_0x5060e0['Constants']['HALF_PI'],_0x1fa6c7,!0x1),_0x3080c6=_0x5060e0[_0x491aec(0x12c)]['getThirdPoint'](_0x2cddcc,_0x47db58,_0x5060e0[_0x491aec(0x121)][_0x491aec(0x155)],_0x49337e,!0x0)):_0x4964f6>=_0x5060e0[_0x491aec(0x121)][_0x491aec(0x155)]&&_0x4964f6<Math['PI']?(_0x1fa6c7=_0x13f025*Math[_0x491aec(0x13f)](Math['PI']-_0x4964f6),_0x49337e=_0x13f025*Math['cos'](Math['PI']-_0x4964f6),_0x47db58=_0x5060e0[_0x491aec(0x12c)][_0x491aec(0x142)](_0x1a0c28,_0x2cddcc,_0x5060e0[_0x491aec(0x121)]['HALF_PI'],_0x1fa6c7,!0x1),_0x3080c6=_0x5060e0['PlotUtils']['getThirdPoint'](_0x2cddcc,_0x47db58,_0x5060e0[_0x491aec(0x121)][_0x491aec(0x155)],_0x49337e,!0x1)):_0x4964f6>=Math['PI']&&_0x4964f6<1.5*Math['PI']?(_0x1fa6c7=_0x13f025*Math['sin'](_0x4964f6-Math['PI']),_0x49337e=_0x13f025*Math['cos'](_0x4964f6-Math['PI']),_0x47db58=_0x5060e0[_0x491aec(0x12c)][_0x491aec(0x142)](_0x1a0c28,_0x2cddcc,_0x5060e0[_0x491aec(0x121)][_0x491aec(0x155)],_0x1fa6c7,!0x0),_0x3080c6=_0x5060e0['PlotUtils']['getThirdPoint'](_0x2cddcc,_0x47db58,_0x5060e0[_0x491aec(0x121)]['HALF_PI'],_0x49337e,!0x0)):(_0x1fa6c7=_0x13f025*Math['sin'](0x2*Math['PI']-_0x4964f6),_0x49337e=_0x13f025*Math[_0x491aec(0x124)](0x2*Math['PI']-_0x4964f6),_0x47db58=_0x5060e0[_0x491aec(0x12c)][_0x491aec(0x142)](_0x1a0c28,_0x2cddcc,_0x5060e0[_0x491aec(0x121)][_0x491aec(0x155)],_0x1fa6c7,!0x0),_0x3080c6=_0x5060e0['PlotUtils'][_0x491aec(0x142)](_0x2cddcc,_0x47db58,_0x5060e0['Constants']['HALF_PI'],_0x49337e,!0x1)),_0x3080c6;},xp['algorithm'][_0x271009(0x138)]=function(_0x34e850){var _0x150969=_0x271009;_0x34e850=xp[_0x150969(0x13c)][_0x150969(0x159)](_0x34e850),this['tailWidthFactor']=tailedAttackArrowDefualParam[_0x150969(0x153)],this['swallowTailFactor']=tailedAttackArrowDefualParam[_0x150969(0x125)],this['swallowTailPnt']=tailedAttackArrowDefualParam[_0x150969(0x14d)];var _0x5cc1cd={'controlPoint':null,'polygonalPoint':[]};_0x5cc1cd[_0x150969(0x13d)]=_0x34e850;var _0x559aab=_0x34e850[_0x150969(0x15a)];if(!(0x2>_0x559aab)){if(0x2==_0x34e850[_0x150969(0x15a)])return _0x5cc1cd['polygonalPoint']=_0x34e850,_0x5cc1cd;var _0x367810=_0x34e850,_0x1ec88a=_0x367810[0x0],_0xe6ebb0=_0x367810[0x1];_0x5060e0[_0x150969(0x12c)]['isClockWise'](_0x367810[0x0],_0x367810[0x1],_0x367810[0x2])&&(_0x1ec88a=_0x367810[0x1],_0xe6ebb0=_0x367810[0x0]);var _0x318e0c=_0x5060e0[_0x150969(0x12c)][_0x150969(0x12e)](_0x1ec88a,_0xe6ebb0),_0x364681=[_0x318e0c][_0x150969(0x15c)](_0x367810['slice'](0x2)),_0x42f21e=xp['algorithm'][_0x150969(0x133)](_0x364681,_0x1ec88a,_0xe6ebb0,tailedAttackArrowDefualParam),_0xdf3900=_0x42f21e[0x0],_0x4f34fe=_0x42f21e[0x4],_0x25daca=_0x5060e0[_0x150969(0x12c)]['distance'](_0x1ec88a,_0xe6ebb0),_0x572b1e=_0x5060e0['PlotUtils'][_0x150969(0x147)](_0x364681),_0x125c2e=_0x572b1e*this[_0x150969(0x153)]*this[_0x150969(0x125)];this[_0x150969(0x14d)]=_0x5060e0['PlotUtils']['getThirdPoint'](_0x364681[0x1],_0x364681[0x0],0x0,_0x125c2e,!0x0);var _0x3c5575=_0x25daca/_0x572b1e,_0x2495a3=xp['algorithm'][_0x150969(0x154)](_0x364681,_0xdf3900,_0x4f34fe,_0x3c5575),_0x164d2f=_0x2495a3[_0x150969(0x15a)],_0x4a2990=[_0x1ec88a]['concat'](_0x2495a3[_0x150969(0x146)](0x0,_0x164d2f/0x2));_0x4a2990[_0x150969(0x156)](_0xdf3900);var _0x34ab71=[_0xe6ebb0][_0x150969(0x15c)](_0x2495a3[_0x150969(0x146)](_0x164d2f/0x2,_0x164d2f)),_0x3f2df7=[];_0x34ab71['push'](_0x4f34fe),_0x4a2990=_0x5060e0[_0x150969(0x12c)]['getQBSplinePoints'](_0x4a2990),_0x34ab71=_0x5060e0[_0x150969(0x12c)][_0x150969(0x12b)](_0x34ab71),_0x3f2df7=xp[_0x150969(0x13c)][_0x150969(0x136)](_0x4a2990['concat'](_0x42f21e,_0x34ab71['reverse'](),[this[_0x150969(0x14d)],_0x4a2990[0x0]])),_0x5cc1cd[_0x150969(0x131)]=_0x5c4d7b['Cartesian3']['fromDegreesArray'](_0x3f2df7);}return _0x5cc1cd;},xp['algorithm'][_0x271009(0x133)]=function(_0x54299a,_0x46b522,_0x4423f5,_0xa24311){var _0x1f78fb=_0x271009;this[_0x1f78fb(0x128)]=_0xa24311[_0x1f78fb(0x128)],this[_0x1f78fb(0x157)]=_0xa24311[_0x1f78fb(0x157)],this['headWidthFactor']=_0xa24311['headWidthFactor'],this['neckWidthFactor']=_0xa24311['neckWidthFactor'],this[_0x1f78fb(0x140)]=_0xa24311[_0x1f78fb(0x140)];var _0x4d6705=_0x5060e0[_0x1f78fb(0x12c)][_0x1f78fb(0x147)](_0x54299a),_0x33581e=_0x4d6705*this['headHeightFactor'],_0x205748=_0x54299a[_0x54299a[_0x1f78fb(0x15a)]-0x1];_0x4d6705=_0x5060e0[_0x1f78fb(0x12c)]['distance'](_0x205748,_0x54299a[_0x54299a[_0x1f78fb(0x15a)]-0x2]);var _0x10d0b0=_0x5060e0['PlotUtils']['distance'](_0x46b522,_0x4423f5);_0x33581e>_0x10d0b0*this['headTailFactor']&&(_0x33581e=_0x10d0b0*this['headTailFactor']);var _0x532e85=_0x33581e*this[_0x1f78fb(0x13a)],_0x46cde5=_0x33581e*this['neckWidthFactor'];_0x33581e=_0x33581e>_0x4d6705?_0x4d6705:_0x33581e;var _0x56419e=_0x33581e*this[_0x1f78fb(0x140)],_0x370b6c=_0x5060e0['PlotUtils']['getThirdPoint'](_0x54299a[_0x54299a['length']-0x2],_0x205748,0x0,_0x33581e,!0x0),_0x271499=_0x5060e0[_0x1f78fb(0x12c)][_0x1f78fb(0x142)](_0x54299a[_0x54299a[_0x1f78fb(0x15a)]-0x2],_0x205748,0x0,_0x56419e,!0x0),_0x42900f=_0x5060e0['PlotUtils'][_0x1f78fb(0x142)](_0x205748,_0x370b6c,_0x5060e0[_0x1f78fb(0x121)]['HALF_PI'],_0x532e85,!0x1),_0x2e3489=_0x5060e0[_0x1f78fb(0x12c)]['getThirdPoint'](_0x205748,_0x370b6c,_0x5060e0['Constants']['HALF_PI'],_0x532e85,!0x0),_0x516712=_0x5060e0['PlotUtils']['getThirdPoint'](_0x205748,_0x271499,_0x5060e0[_0x1f78fb(0x121)]['HALF_PI'],_0x46cde5,!0x1),_0x3b8d31=_0x5060e0['PlotUtils']['getThirdPoint'](_0x205748,_0x271499,_0x5060e0['Constants']['HALF_PI'],_0x46cde5,!0x0);return[_0x516712,_0x42900f,_0x205748,_0x2e3489,_0x3b8d31];},xp[_0x271009(0x13c)][_0x271009(0x154)]=function(_0x44a2b3,_0x596d02,_0x38e6bf,_0x1a1a6c){var _0x3def82=_0x271009,_0x57cf5d=[],_0x169454=[];for(var _0x282161=0x1,_0x381dae=_0x5060e0[_0x3def82(0x12c)]['wholeDistance'](_0x44a2b3),_0x12e72f=_0x5060e0['PlotUtils']['getBaseLength'](_0x44a2b3),_0x28c978=_0x12e72f*_0x1a1a6c,_0x34291b=_0x5060e0['PlotUtils'][_0x3def82(0x132)](_0x596d02,_0x38e6bf),_0x1c37bb=(_0x28c978-_0x34291b)/0x2,_0x358e7a=0x0;_0x282161<_0x44a2b3[_0x3def82(0x15a)]-0x1;_0x282161++){var _0x274d73=_0x5060e0[_0x3def82(0x12c)][_0x3def82(0x144)](_0x44a2b3[_0x282161-0x1],_0x44a2b3[_0x282161],_0x44a2b3[_0x282161+0x1])/0x2;_0x358e7a+=_0x5060e0[_0x3def82(0x12c)][_0x3def82(0x132)](_0x44a2b3[_0x282161-0x1],_0x44a2b3[_0x282161]);var _0x3062d3=(_0x28c978/0x2-_0x358e7a/_0x381dae*_0x1c37bb)/Math[_0x3def82(0x13f)](_0x274d73),_0x654cc=_0x5060e0[_0x3def82(0x12c)][_0x3def82(0x142)](_0x44a2b3[_0x282161-0x1],_0x44a2b3[_0x282161],Math['PI']-_0x274d73,_0x3062d3,!0x0),_0x4f6797=_0x5060e0['PlotUtils']['getThirdPoint'](_0x44a2b3[_0x282161-0x1],_0x44a2b3[_0x282161],_0x274d73,_0x3062d3,!0x1);_0x57cf5d[_0x3def82(0x156)](_0x654cc),_0x169454[_0x3def82(0x156)](_0x4f6797);}return _0x57cf5d[_0x3def82(0x15c)](_0x169454);},xp[_0x271009(0x13c)][_0x271009(0x159)]=function(_0x238474){var _0x5a3bdc=_0x271009,_0x5d1657=_0x238474[_0x238474[_0x5a3bdc(0x15a)]-0x1],_0xba8cfa=![],_0x20b52d=[];_0x20b52d=_0x238474['filter'](function(_0x20b29e){if(_0x20b29e[0x0]!=_0x5d1657[0x0]&&_0x20b29e[0x1]!=_0x5d1657[0x1])return _0x20b29e;_0xba8cfa=!![];});if(_0xba8cfa)_0x20b52d[_0x5a3bdc(0x156)](_0x5d1657);return _0x20b52d;},xp['algorithm'][_0x271009(0x14b)]=function(_0x3159cd,_0x287bf0){var _0x28ae0a=_0x271009;if(_0x3159cd['length']<0x2||_0x287bf0[_0x28ae0a(0x15a)]<0x2)return;var _0x298077=fineArrowDefualParam['tailWidthFactor'],_0x295cb4=fineArrowDefualParam[_0x28ae0a(0x152)],_0x12f751=fineArrowDefualParam['headWidthFactor'],_0x4e63e1=fineArrowDefualParam[_0x28ae0a(0x127)],_0x2d838a=fineArrowDefualParam[_0x28ae0a(0x14a)],_0x466732=[];_0x466732[0x0]=_0x3159cd,_0x466732[0x1]=_0x287bf0;var _0x3551de=_0x466732[0x0],_0x25dca4=_0x466732[0x1],_0x5cf087=_0x5060e0['PlotUtils']['getBaseLength'](_0x466732),_0xcefd6=_0x5cf087*_0x298077,_0x34db57=_0x5cf087*_0x295cb4,_0x513306=_0x5cf087*_0x12f751,_0x3eb3d3=_0x5060e0[_0x28ae0a(0x12c)]['getThirdPoint'](_0x25dca4,_0x3551de,_0x5060e0['Constants']['HALF_PI'],_0xcefd6,!0x0),_0x17f8ed=_0x5060e0['PlotUtils']['getThirdPoint'](_0x25dca4,_0x3551de,_0x5060e0['Constants'][_0x28ae0a(0x155)],_0xcefd6,!0x1),_0x3ddb13=_0x5060e0['PlotUtils'][_0x28ae0a(0x142)](_0x3551de,_0x25dca4,_0x4e63e1,_0x513306,!0x1),_0x1e74eb=_0x5060e0[_0x28ae0a(0x12c)]['getThirdPoint'](_0x3551de,_0x25dca4,_0x4e63e1,_0x513306,!0x0),_0x20bc4a=_0x5060e0[_0x28ae0a(0x12c)][_0x28ae0a(0x142)](_0x3551de,_0x25dca4,_0x2d838a,_0x34db57,!0x1),_0x4674d5=_0x5060e0[_0x28ae0a(0x12c)][_0x28ae0a(0x142)](_0x3551de,_0x25dca4,_0x2d838a,_0x34db57,!0x0),_0x187f82=[];return _0x187f82['push'](_0x3eb3d3[0x0],_0x3eb3d3[0x1],_0x20bc4a[0x0],_0x20bc4a[0x1],_0x3ddb13[0x0],_0x3ddb13[0x1],_0x25dca4[0x0],_0x25dca4[0x1],_0x1e74eb[0x0],_0x1e74eb[0x1],_0x4674d5[0x0],_0x4674d5[0x1],_0x17f8ed[0x0],_0x17f8ed[0x1],_0x3551de[0x0],_0x3551de[0x1]),_0x5c4d7b[_0x28ae0a(0x143)]['fromDegreesArray'](_0x187f82);};export default xp;
|