cesium-pocket 0.2.1-alpha → 0.3.1-alpha

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.
@@ -0,0 +1,565 @@
1
+ import { CustomDataSource as C, Cartesian3 as r, JulianDate as I, defined as l, ConstantPositionProperty as E, HeightReference as S, Color as u, EntityCollection as B, ScreenSpaceEventType as c, ScreenSpaceEventHandler as w, VerticalOrigin as R, PolylineDashMaterialProperty as M, CallbackProperty as A, PolygonHierarchy as P, Cartographic as y, Transforms as b, Matrix4 as g, EllipsoidGeodesic as k } from "cesium";
2
+ import { toRaw as d } from "vue";
3
+ const h = {
4
+ STOPED: Symbol("STOPED"),
5
+ //未开启状态
6
+ DRAWABLE: Symbol("DRAWABLE"),
7
+ //可绘绘制状态
8
+ EDITABLE: Symbol("EDITABLE"),
9
+ //可编辑经纬度状态
10
+ HIGHTABLE: Symbol("HIGHTABLE"),
11
+ //可编辑经纬度状态
12
+ DELETABLE: Symbol("DELETABLE")
13
+ //可删除状态
14
+ }, o = {
15
+ DRAG_UNABLED: Symbol("DRAG_UNABLED"),
16
+ //不可拖拽
17
+ DRAG_ENABLED: Symbol("DRAG_ENABLED"),
18
+ //可拖拽
19
+ DRAGING: Symbol("DRAGING")
20
+ //正在拖拽中
21
+ }, p = {
22
+ DEL_UNABLED: Symbol("DEL_UNABLED"),
23
+ //不删除
24
+ DEL_ENABLED: Symbol("DEL_ENABLED")
25
+ //可拖拽
26
+ };
27
+ class G {
28
+ constructor(e) {
29
+ this.status = h.STOPED, this.editStatus = o.DRAG_UNABLED, this.delStatus = p.DEL_UNABLED, this.viewer = e;
30
+ }
31
+ getStatus() {
32
+ return this.status;
33
+ }
34
+ getEditStatus() {
35
+ return this.editStatus;
36
+ }
37
+ getDelStatus() {
38
+ return this.delStatus;
39
+ }
40
+ setEditStatus() {
41
+ this.editableStatus();
42
+ }
43
+ setDelStatus() {
44
+ this.deletableStatus();
45
+ }
46
+ /**
47
+ * 可添加点
48
+ */
49
+ drawableStatus() {
50
+ this.status = h.DRAWABLE, this.viewer.canvas.style.cursor = "crosshair";
51
+ }
52
+ /**
53
+ * 可移动点
54
+ */
55
+ editableStatus() {
56
+ this.status = h.EDITABLE, this.viewer.canvas.style.cursor = "pointer";
57
+ }
58
+ deletableStatus() {
59
+ this.status = h.DELETABLE, this.viewer.canvas.style.cursor = "grabbing";
60
+ }
61
+ /**
62
+ * 停止操作
63
+ */
64
+ stopStatus() {
65
+ this.status = h.STOPED, this.viewer.canvas.style.cursor = "default";
66
+ }
67
+ //----------------------------------------
68
+ editDragUnable() {
69
+ this.editStatus = o.DRAG_UNABLED, this.viewer.canvas.style.cursor = "pointer";
70
+ }
71
+ editDragEnable() {
72
+ this.editStatus = o.DRAG_ENABLED, this.viewer.canvas.style.cursor = "grab";
73
+ }
74
+ editDraging() {
75
+ this.editStatus = o.DRAGING, this.viewer.canvas.style.cursor = "move";
76
+ }
77
+ //------------------------
78
+ delUnable() {
79
+ this.delStatus = p.DEL_UNABLED, this.viewer.canvas.style.cursor = "pointer";
80
+ }
81
+ delEnable() {
82
+ this.delStatus = p.DEL_ENABLED, this.viewer.canvas.style.cursor = "grabbing";
83
+ }
84
+ }
85
+ const U = "data:image/png;base64,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";
86
+ class L extends G {
87
+ constructor(e) {
88
+ super(e), this.mainData = [], this.dataSource = new C("drawerDataSource"), this.currentDragPoint = null, this.currentIndex = -1, this.delCallbackFun = this.delCallback, this.viewer.dataSources.add(this.dataSource);
89
+ }
90
+ /**
91
+ * 获取DataSource
92
+ * @returns
93
+ */
94
+ getDataSource() {
95
+ return this.dataSource;
96
+ }
97
+ /**
98
+ * 获取所有节点数据
99
+ * @returns Cartesian3[]
100
+ */
101
+ refreshPositionsData() {
102
+ return this.mainData = [], this.dataSource.entities.values.forEach((e) => {
103
+ var t;
104
+ const i = new r();
105
+ (t = e.position) == null || t.getValue(I.now(), i), this.mainData.push(i);
106
+ }), this.mainData;
107
+ }
108
+ clearAllData() {
109
+ this.mainData = [], this.currentDragPoint = null, this.currentIndex = -1, this.dataSource && this.viewer.dataSources.remove(this.dataSource, !0), super.stopStatus();
110
+ }
111
+ getEntityIndex() {
112
+ var e;
113
+ for (let i = 0, t = this.dataSource.entities.values.length; i < t; i++)
114
+ if (this.dataSource.entities.values[i].id == ((e = this.currentDragPoint) == null ? void 0 : e.id)) {
115
+ this.currentIndex = i;
116
+ break;
117
+ }
118
+ }
119
+ editMoveFun(e, i) {
120
+ if (o.DRAG_UNABLED == super.getEditStatus()) {
121
+ const t = this.viewer.scene.pick(e.endPosition);
122
+ if (l(t) && l(t.id) && this.dataSource.entities.contains(d(t.id))) {
123
+ let a = d(t.id);
124
+ this.currentDragPoint = a, this.editDragEnable();
125
+ }
126
+ } else o.DRAGING == super.getEditStatus() ? this.currentDragPoint && (this.currentDragPoint.position = new E(i), this.mainData[this.currentIndex] = i) : this.editDragUnable();
127
+ }
128
+ deleteMoveFun(e) {
129
+ if (p.DEL_UNABLED == super.getDelStatus()) {
130
+ const i = this.viewer.scene.pick(e.endPosition);
131
+ l(i) && l(i.id) && this.dataSource.entities.contains(d(i.id)) && this.delEnable();
132
+ } else
133
+ this.delUnable();
134
+ }
135
+ addPoint(e) {
136
+ let i = null;
137
+ return this.point ? i = this.point : i = {
138
+ pixelSize: 6,
139
+ color: u.TRANSPARENT,
140
+ outlineColor: u.YELLOW,
141
+ outlineWidth: 2,
142
+ heightReference: S.CLAMP_TO_GROUND
143
+ //贴地
144
+ }, this.dataSource.entities.add({
145
+ position: e,
146
+ point: i,
147
+ properties: {
148
+ entityType: "POINT"
149
+ },
150
+ show: !0
151
+ });
152
+ }
153
+ //在删除状态下,删除节点
154
+ deletePoint(e) {
155
+ this.delCallbackFun && this.delCallbackFun().then((i) => {
156
+ i && (this.dataSource.entities.remove(e), this.refreshPositionsData());
157
+ });
158
+ }
159
+ delCallback() {
160
+ return new Promise((e) => {
161
+ const i = confirm("确定删除吗?");
162
+ e(!!i);
163
+ });
164
+ }
165
+ }
166
+ class T extends L {
167
+ constructor(e, i = null) {
168
+ super(e), this.handler = null, this.pointCollection = new B(), this.billboardCallbackFun = this.addBillboardCallback, this.point_L_ClickEvent = () => {
169
+ var t;
170
+ (t = this.handler) == null || t.setInputAction((a) => {
171
+ if (h.DRAWABLE == super.getStatus()) {
172
+ let s = this.viewer.camera.getPickRay(a.position), n = this.viewer.scene.globe.pick(s, this.viewer.scene);
173
+ if (l(n)) {
174
+ let v = this.billboardCallbackFun(n);
175
+ this.mainData.push(n), this.pointCollection.add(v);
176
+ }
177
+ } else if (h.DELETABLE == super.getStatus()) {
178
+ const s = this.viewer.scene.pick(a.position);
179
+ if (l(s) && l(s.id)) {
180
+ const n = d(s.id);
181
+ this.pointCollection.contains(n) && p.DEL_ENABLED == super.getDelStatus() && this.deleteBillboard(n);
182
+ }
183
+ }
184
+ }, c.LEFT_CLICK);
185
+ }, this.point_L_DownEvent = () => {
186
+ var t;
187
+ (t = this.handler) == null || t.setInputAction(() => {
188
+ h.EDITABLE == super.getStatus() && o.DRAG_ENABLED == super.getEditStatus() && (super.editDraging(), this.viewer.scene.screenSpaceCameraController.enableRotate = !1);
189
+ }, c.LEFT_DOWN);
190
+ }, this.point_L_UpEvent = () => {
191
+ var t;
192
+ (t = this.handler) == null || t.setInputAction((a) => {
193
+ if (o.DRAGING == super.getEditStatus()) {
194
+ const s = this.viewer.scene.pickPosition(a.endPosition);
195
+ l(s) && this.editCallbackFun && this.editCallbackFun(s), this.editDragUnable(), this.currentDragPoint = null, this.viewer.scene.screenSpaceCameraController.enableRotate = !0;
196
+ }
197
+ }, c.LEFT_UP);
198
+ }, this.point_moveEvent = () => {
199
+ var t;
200
+ (t = this.handler) == null || t.setInputAction((a) => {
201
+ if (h.EDITABLE == super.getStatus())
202
+ if (o.DRAG_UNABLED == super.getEditStatus()) {
203
+ const s = this.viewer.scene.pick(a.endPosition);
204
+ if (l(s) && l(s.id) && this.pointCollection.contains(d(s.id))) {
205
+ let n = d(s.id);
206
+ this.currentDragPoint = n, this.editDragEnable();
207
+ }
208
+ } else if (o.DRAGING == super.getEditStatus()) {
209
+ const s = this.viewer.scene.pickPosition(a.endPosition);
210
+ l(s) && this.currentDragPoint && (this.currentDragPoint.position = new E(s));
211
+ } else
212
+ this.editDragUnable();
213
+ else if (h.DELETABLE == super.getStatus())
214
+ if (p.DEL_UNABLED == super.getDelStatus()) {
215
+ const s = this.viewer.scene.pick(a.endPosition);
216
+ l(s) && l(s.id) && this.pointCollection.contains(d(s.id)) && this.delEnable();
217
+ } else
218
+ this.delUnable();
219
+ }, c.MOUSE_MOVE);
220
+ }, i && (this.billboardCallbackFun = i.billboardCallbackFun ? i.billboardCallbackFun : this.addBillboardCallback, this.delCallbackFun = i.delCallbackFun ? i.delCallbackFun : this.delCallback, i.editCallbackFun && (this.editCallbackFun = i.editCallbackFun));
221
+ }
222
+ start() {
223
+ super.drawableStatus(), this.handler || (this.handler = new w(this.viewer.scene.canvas)), this.point_L_ClickEvent(), this.point_L_DownEvent(), this.point_L_UpEvent(), this.point_moveEvent();
224
+ }
225
+ getEntity() {
226
+ return this.pointCollection;
227
+ }
228
+ clearAll() {
229
+ var e;
230
+ this.clearAllData(), this.billboardCallbackFun = this.addBillboardCallback;
231
+ for (let i = 0, t = this.pointCollection.values.length; i < t; i++) {
232
+ const a = this.pointCollection.values[i];
233
+ this.viewer.entities.removeById(a.id);
234
+ }
235
+ (e = this.handler) == null || e.destroy();
236
+ }
237
+ addBillboardCallback(e) {
238
+ return this.viewer.entities.add({
239
+ // 设置经纬度位置 (经度, 纬度, 海拔高度)
240
+ position: e,
241
+ billboard: {
242
+ image: U,
243
+ // 设置图片显示的宽度和高度 (像素)
244
+ width: 40,
245
+ height: 40,
246
+ // 可选项:缩放倍数
247
+ scale: 1,
248
+ verticalOrigin: R.BOTTOM,
249
+ heightReference: S.CLAMP_TO_GROUND
250
+ //贴地
251
+ },
252
+ show: !0
253
+ });
254
+ }
255
+ deleteBillboard(e) {
256
+ this.delCallbackFun ? this.delCallbackFun().then((i) => {
257
+ i && (this.dataSource.entities.remove(e), this.refreshPositionsData());
258
+ }) : confirm("确定要删除吗?") && (this.viewer.entities.remove(e), this.refreshPositionsData());
259
+ }
260
+ }
261
+ const f = {
262
+ LINE: Symbol("LINE"),
263
+ //画线模式
264
+ POLYGON: Symbol("POLYGON")
265
+ //画面模式
266
+ };
267
+ class O extends L {
268
+ constructor(e, i = null) {
269
+ super(e), this.handler = null, this.mainLineEntity = null, this.mainPolygonEntity = null, this.dashLineEntity = null, this.dashEndData = new r(), this.drawerMode = f.LINE, this.line_L_ClickEvent = () => {
270
+ var t;
271
+ (t = this.handler) == null || t.setInputAction((a) => {
272
+ if (h.DRAWABLE == super.getStatus()) {
273
+ let s = this.viewer.camera.getPickRay(a.position), n = this.viewer.scene.globe.pick(s, this.viewer.scene);
274
+ l(n) && (this.addPoint(n), this.mainData.push(n), this.mainData.length > 0 && (this.mainLineEntity || this.createMainLine(), this.dashLineEntity || this.createDashline(), this.mainData.length > 2 && this.drawerMode === f.POLYGON && !this.mainPolygonEntity && this.createMainPolygon()));
275
+ } else if (h.DELETABLE == super.getStatus()) {
276
+ const s = this.viewer.scene.pick(a.position);
277
+ if (l(s) && l(s.id)) {
278
+ const n = d(s.id);
279
+ this.dataSource.entities.contains(n) && p.DEL_ENABLED == super.getDelStatus() && this.deletePoint(n);
280
+ }
281
+ }
282
+ }, c.LEFT_CLICK);
283
+ }, this.line_L_DownEvent = () => {
284
+ var t;
285
+ (t = this.handler) == null || t.setInputAction(() => {
286
+ h.EDITABLE == super.getStatus() && o.DRAG_ENABLED == super.getEditStatus() && (super.editDraging(), this.getEntityIndex(), this.viewer.scene.screenSpaceCameraController.enableRotate = !1);
287
+ }, c.LEFT_DOWN);
288
+ }, this.line_L_UpEvent = () => {
289
+ var t;
290
+ (t = this.handler) == null || t.setInputAction(() => {
291
+ o.DRAGING == super.getEditStatus() && (this.editDragUnable(), this.currentDragPoint = null, this.viewer.scene.screenSpaceCameraController.enableRotate = !0);
292
+ }, c.LEFT_UP);
293
+ }, this.line_moveEvent = () => {
294
+ var t;
295
+ (t = this.handler) == null || t.setInputAction((a) => {
296
+ const s = this.viewer.camera.getPickRay(a.endPosition);
297
+ if (s) {
298
+ const n = this.viewer.scene.globe.pick(s, this.viewer.scene);
299
+ l(n) && (h.DRAWABLE == super.getStatus() ? this.dashEndData = n : h.EDITABLE == super.getStatus() ? (this.dashLineEntity.show = !1, this.editMoveFun(a, n)) : h.DELETABLE == super.getStatus() && (this.dashLineEntity.show = !1, this.deleteMoveFun(a)));
300
+ }
301
+ }, c.MOUSE_MOVE);
302
+ }, this.createDashline = () => {
303
+ let t;
304
+ this.deshline ? t = this.deshline : t = {
305
+ positions: [
306
+ new r(),
307
+ new r()
308
+ ],
309
+ width: 2,
310
+ material: new M({
311
+ color: u.RED,
312
+ dashLength: 15
313
+ }),
314
+ show: !0,
315
+ clampToGround: !0
316
+ }, t.positions = new A(() => {
317
+ let a = this.mainData.length, s = this.mainData[a - 1];
318
+ return s || (s = this.mainData[a - 2]), this.dashEndData || console.log("发生错误了dashEndData"), [s, this.dashEndData];
319
+ }, !1), this.dashLineEntity = this.viewer.entities.add({
320
+ polyline: t,
321
+ properties: {
322
+ entityType: "DASHLINE"
323
+ }
324
+ });
325
+ }, i && (i.drawerMode && (this.drawerMode = i.drawerMode), this.point = i.point, this.polyline = i.polyline, this.deshline = i.deshline, this.polygon = i.polygon, this.delCallbackFun = i.delCallbackFun ? i.delCallbackFun : this.delCallback);
326
+ }
327
+ start() {
328
+ super.drawableStatus(), this.handler || (this.handler = new w(this.viewer.scene.canvas)), this.line_L_ClickEvent(), this.line_L_DownEvent(), this.line_L_UpEvent(), this.line_moveEvent();
329
+ }
330
+ getEntity() {
331
+ if (this.drawerMode === f.LINE)
332
+ return this.mainLineEntity;
333
+ if (this.drawerMode === f.POLYGON)
334
+ return this.mainPolygonEntity;
335
+ }
336
+ clearAll() {
337
+ this.clearAllData(), this.handler = null, this.mainLineEntity && this.viewer.entities.removeById(this.mainLineEntity.id), this.mainPolygonEntity && this.viewer.entities.removeById(this.mainPolygonEntity.id), this.dashLineEntity && this.viewer.entities.removeById(this.dashLineEntity.id);
338
+ }
339
+ //创建主线数据
340
+ createMainLine() {
341
+ let e;
342
+ this.polyline ? e = this.polyline : e = {
343
+ positions: [new r(), new r()],
344
+ // 宽度
345
+ width: 2,
346
+ // 线的颜色
347
+ material: u.RED,
348
+ // 是否显示
349
+ show: !0,
350
+ clampToGround: !0
351
+ }, e.positions = new A(() => this.mainData, !1), this.mainLineEntity = this.viewer.entities.add({
352
+ polyline: e,
353
+ properties: {
354
+ entityType: "LINE"
355
+ }
356
+ });
357
+ }
358
+ //创建主面数据
359
+ createMainPolygon() {
360
+ let e;
361
+ this.polygon ? e = this.polygon : e = {
362
+ hierarchy: [new r(), new r(), new r()],
363
+ material: u.RED.withAlpha(0.4),
364
+ outline: !1
365
+ }, e.hierarchy = new A(() => new P(this.mainData), !1), this.mainPolygonEntity = this.viewer.entities.add({
366
+ polygon: e,
367
+ properties: {
368
+ entityType: "POLYGON"
369
+ }
370
+ });
371
+ }
372
+ }
373
+ class x extends L {
374
+ //主面对象
375
+ constructor(e, i = null) {
376
+ super(e), this.handler = null, this.firstPoint = null, this.endPoint = null, this.lineEntity = null, this.polygonEntity = null, this.rect_L_ClickEvent = () => {
377
+ var t;
378
+ (t = this.handler) == null || t.setInputAction((a) => {
379
+ if (h.DRAWABLE == super.getStatus()) {
380
+ let s = this.viewer.camera.getPickRay(a.position), n = this.viewer.scene.globe.pick(s, this.viewer.scene);
381
+ l(n) && (this.mainData.length === 0 ? (this.addPoint(n), this.firstPoint = n, this.mainData.push(n), this.createLine(), this.createPolygon()) : (this.addPoint(n), this.endPoint = n, this.stopStatus()));
382
+ }
383
+ }, c.LEFT_CLICK);
384
+ }, this.rect_L_DownEvent = () => {
385
+ var t;
386
+ (t = this.handler) == null || t.setInputAction(() => {
387
+ h.EDITABLE == super.getStatus() && o.DRAG_ENABLED == super.getEditStatus() && (super.editDraging(), this.getEntityIndex(), this.viewer.scene.screenSpaceCameraController.enableRotate = !1);
388
+ }, c.LEFT_DOWN);
389
+ }, this.rect_L_UpEvent = () => {
390
+ var t;
391
+ (t = this.handler) == null || t.setInputAction(() => {
392
+ o.DRAGING == super.getEditStatus() && (this.editDragUnable(), this.currentDragPoint = null, this.viewer.scene.screenSpaceCameraController.enableRotate = !0);
393
+ }, c.LEFT_UP);
394
+ }, this.rect_moveEvent = () => {
395
+ var t;
396
+ (t = this.handler) == null || t.setInputAction((a) => {
397
+ const s = this.viewer.camera.getPickRay(a.endPosition);
398
+ if (s) {
399
+ const n = this.viewer.scene.globe.pick(s, this.viewer.scene);
400
+ l(n) && (h.DRAWABLE == super.getStatus() ? this.firstPoint && (this.endPoint = n, this.initMainData()) : h.EDITABLE == super.getStatus() && this.rectMove(a, n));
401
+ }
402
+ }, c.MOUSE_MOVE);
403
+ }, i && (this.point = i.point, this.polyline = i.polyline, this.polygon = i.polygon);
404
+ }
405
+ start() {
406
+ super.drawableStatus(), this.handler || (this.handler = new w(this.viewer.scene.canvas)), this.rect_L_ClickEvent(), this.rect_L_DownEvent(), this.rect_L_UpEvent(), this.rect_moveEvent();
407
+ }
408
+ getEntity() {
409
+ this.polygonEntity;
410
+ }
411
+ clearAll() {
412
+ this.clearAllData(), this.firstPoint = new r(), this.endPoint = new r(), this.handler && (this.handler = null), this.polygonEntity && this.viewer.entities.removeById(this.polygonEntity.id), this.lineEntity && this.viewer.entities.removeById(this.lineEntity.id);
413
+ }
414
+ rectMove(e, i) {
415
+ if (o.DRAG_UNABLED == super.getEditStatus()) {
416
+ const t = this.viewer.scene.pick(e.endPosition);
417
+ if (l(t) && l(t.id) && this.dataSource.entities.contains(d(t.id))) {
418
+ let a = d(t.id);
419
+ this.currentDragPoint = a, this.editDragEnable();
420
+ }
421
+ } else o.DRAGING == super.getEditStatus() ? this.currentDragPoint && (this.currentDragPoint.position = new E(i), this.currentIndex === 0 ? this.firstPoint = i : this.endPoint = i, this.initMainData()) : this.editDragUnable();
422
+ }
423
+ initMainData() {
424
+ if (this.firstPoint && this.endPoint) {
425
+ const e = y.fromCartesian(this.firstPoint), i = e.longitude, t = e.latitude, a = y.fromCartesian(this.endPoint), s = a.longitude, n = a.latitude, v = r.fromRadians(i, n), m = r.fromRadians(s, t);
426
+ this.mainData[0] = this.firstPoint, this.mainData[1] = v, this.mainData[2] = this.endPoint, this.mainData[3] = m;
427
+ }
428
+ }
429
+ //创建主线数据
430
+ createLine() {
431
+ let e = null;
432
+ this.polyline ? e = this.polyline : e = {
433
+ positions: [new r(), new r()],
434
+ // 宽度
435
+ width: 2,
436
+ // 线的颜色
437
+ material: u.RED,
438
+ // 是否显示
439
+ show: !0,
440
+ clampToGround: !0
441
+ }, e.positions = new A(() => [...this.mainData, this.mainData[0]], !1), this.lineEntity = this.viewer.entities.add({
442
+ polyline: e,
443
+ properties: {
444
+ entityType: "LINE"
445
+ }
446
+ });
447
+ }
448
+ //创建主面数据
449
+ createPolygon() {
450
+ let e = null;
451
+ this.polygon ? e = this.polygon : e = {
452
+ hierarchy: [new r(), new r(), new r()],
453
+ material: u.RED.withAlpha(0.4),
454
+ outline: !1
455
+ }, e.hierarchy = new A(() => new P(this.mainData), !1), this.polygonEntity = this.viewer.entities.add({
456
+ polygon: e,
457
+ properties: {
458
+ entityType: "POLYGON"
459
+ }
460
+ });
461
+ }
462
+ }
463
+ class Q extends L {
464
+ //主线对象
465
+ constructor(e, i = null) {
466
+ super(e), this.handler = null, this.firstPoint = new r(), this.endPoint = new r(), this.distance = 0, this.angle = 0, this.endPointEntity = null, this.ellipseEntity = null, this.circle_L_ClickEvent = () => {
467
+ var t;
468
+ (t = this.handler) == null || t.setInputAction((a) => {
469
+ if (h.DRAWABLE == super.getStatus()) {
470
+ let s = this.viewer.camera.getPickRay(a.position), n = this.viewer.scene.globe.pick(s, this.viewer.scene);
471
+ l(n) && (this.mainData.length === 0 ? (this.addPoint(n), this.mainData.push(n), this.firstPoint = n, this.createCircle()) : (this.endPoint = n, this.mainData.push(n), this.endPointEntity = this.addPoint(n), this.getAngle(), this.stopStatus()));
472
+ }
473
+ }, c.LEFT_CLICK);
474
+ }, this.circle_L_DownEvent = () => {
475
+ var t;
476
+ (t = this.handler) == null || t.setInputAction(() => {
477
+ h.EDITABLE == super.getStatus() && o.DRAG_ENABLED == super.getEditStatus() && (super.editDraging(), this.getEntityIndex(), this.viewer.scene.screenSpaceCameraController.enableRotate = !1);
478
+ }, c.LEFT_DOWN);
479
+ }, this.circle_L_UpEvent = () => {
480
+ var t;
481
+ (t = this.handler) == null || t.setInputAction(() => {
482
+ o.DRAGING == super.getEditStatus() && (this.editDragUnable(), this.currentDragPoint = null, this.viewer.scene.screenSpaceCameraController.enableRotate = !0);
483
+ }, c.LEFT_UP);
484
+ }, this.circle_moveEvent = () => {
485
+ var t;
486
+ (t = this.handler) == null || t.setInputAction((a) => {
487
+ const s = this.viewer.camera.getPickRay(a.endPosition);
488
+ if (s) {
489
+ const n = this.viewer.scene.globe.pick(s, this.viewer.scene);
490
+ l(n) && (h.DRAWABLE == super.getStatus() ? this.mainData.length > 0 && (this.endPoint = n, this.countDistance()) : h.EDITABLE == super.getStatus() && this.circleMove(a, n));
491
+ }
492
+ }, c.MOUSE_MOVE);
493
+ }, i && (this.point = i.point, this.ellipse = i.ellipse);
494
+ }
495
+ start() {
496
+ super.drawableStatus(), this.handler || (this.handler = new w(this.viewer.scene.canvas)), this.circle_L_ClickEvent(), this.circle_L_DownEvent(), this.circle_L_UpEvent(), this.circle_moveEvent();
497
+ }
498
+ getEntity() {
499
+ return this.ellipse;
500
+ }
501
+ clearAll() {
502
+ this.clearAllData(), this.firstPoint = new r(), this.endPoint = new r(), this.handler && (this.handler = null), this.ellipseEntity && this.viewer.entities.removeById(this.ellipseEntity.id);
503
+ }
504
+ getAngle() {
505
+ const e = b.eastNorthUpToFixedFrame(this.firstPoint.clone()), i = g.inverse(e, new g()), t = g.multiplyByPoint(i, this.endPoint.clone(), new r());
506
+ this.angle = Math.atan2(t.x, t.y);
507
+ }
508
+ circleMove(e, i) {
509
+ if (o.DRAG_UNABLED == super.getEditStatus()) {
510
+ const t = this.viewer.scene.pick(e.endPosition);
511
+ if (l(t) && l(t.id) && this.dataSource.entities.contains(d(t.id))) {
512
+ let a = d(t.id);
513
+ this.currentDragPoint = a, this.editDragEnable();
514
+ }
515
+ } else o.DRAGING == super.getEditStatus() ? this.currentDragPoint && (this.currentDragPoint.position = new E(i), this.currentIndex === 0 ? (this.firstPoint = i, this.ellipseEntity && (this.ellipseEntity.position = new E(this.firstPoint)), this.endPointEntity && (this.updateEndPoint(), this.endPointEntity.position = new E(this.endPoint))) : (this.endPoint = i, this.countDistance())) : this.editDragUnable();
516
+ }
517
+ updateEndPoint() {
518
+ var e = new r(
519
+ this.distance * Math.sin(this.angle),
520
+ this.distance * Math.cos(this.angle),
521
+ 0
522
+ // 保持水平,如果希望保持高度则设为 localEdge.z
523
+ ), i = b.eastNorthUpToFixedFrame(this.firstPoint), t = g.multiplyByPointAsVector(i, e, new r());
524
+ this.endPoint = r.add(this.firstPoint, t, new r());
525
+ }
526
+ countDistance() {
527
+ if (this.firstPoint && this.endPoint) {
528
+ const e = y.fromCartesian(this.firstPoint), i = y.fromCartesian(this.endPoint), t = new k(e, i);
529
+ this.distance = t.surfaceDistance;
530
+ }
531
+ }
532
+ //创建主面数据
533
+ createCircle() {
534
+ let e = null;
535
+ this.ellipse ? e = this.ellipse : e = {
536
+ semiMinorAxis: 1,
537
+ // 短半轴(米)
538
+ semiMajorAxis: 1,
539
+ // 长半轴(米)— 两者相等即为圆
540
+ material: u.RED.withAlpha(0.6),
541
+ // 填充颜色,半透明
542
+ height: 0,
543
+ // 椭圆所在高度(米),可选
544
+ extrudedHeight: 0,
545
+ // 拉伸高度,>0 会形成圆柱体,设为0则为平面
546
+ outline: !0,
547
+ // 是否显示边框
548
+ outlineColor: u.RED
549
+ }, e.semiMinorAxis = e.semiMajorAxis = new A(() => this.distance, !1), this.ellipseEntity = this.viewer.entities.add({
550
+ position: new E(this.firstPoint),
551
+ ellipse: e,
552
+ properties: {
553
+ entityType: "ELLIPSE"
554
+ }
555
+ });
556
+ }
557
+ }
558
+ export {
559
+ O as C,
560
+ h as D,
561
+ T as P,
562
+ x as R,
563
+ Q as a,
564
+ f as b
565
+ };
package/drawer.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import { PointDrawer } from './src/drawer/PointDrawer.ts';
2
+ import { CP2dDrawer, CP2dOptions, DRAWER_MODE, DRAWER_MODE_TYPE } from './src/drawer/CP2dDrawer.ts';
3
+ import { RectDrawer, RectOptions } from './src/drawer/RectDrawer.ts';
4
+ import { CircleDrawer, CircleOptions } from './src/drawer/CircleDrawer.ts';
5
+ import { DelCallbackFn } from './src/drawer/DataCenter.ts';
6
+ import { DRAW_STATUS, DRAW_STATUS_TYPE } from './src/drawer/DrawerStatus.ts';
7
+ export { PointDrawer, CP2dDrawer, RectDrawer, CircleDrawer, DRAW_STATUS, type DRAW_STATUS_TYPE, DRAWER_MODE, type DRAWER_MODE_TYPE, type CircleOptions, type RectOptions, type CP2dOptions, type DelCallbackFn };
package/drawer.js ADDED
@@ -0,0 +1,9 @@
1
+ import { C as D, a as e, b as s, D as R, P as w, R as o } from "./CircleDrawer-DbOS8_ZI.js";
2
+ export {
3
+ D as CP2dDrawer,
4
+ e as CircleDrawer,
5
+ s as DRAWER_MODE,
6
+ R as DRAW_STATUS,
7
+ w as PointDrawer,
8
+ o as RectDrawer
9
+ };
package/index.d.ts CHANGED
@@ -12,4 +12,4 @@ export default _default;
12
12
  export { cpCompass, cpRuler, cpCoord, cpOverlay, cpPin, cpTianmap };
13
13
  export * from './pin.ts';
14
14
  export * from './tianmap.ts';
15
- export * from './measure.ts';
15
+ export * from './drawer.ts';
package/index.js CHANGED
@@ -3,7 +3,7 @@ import * as PA from "three";
3
3
  import { TrianglesDrawMode as tP, TriangleFanDrawMode as EA, TriangleStripDrawMode as SA, Loader as sP, LoaderUtils as F, FileLoader as qA, Color as S, LinearSRGBColorSpace as H, SpotLight as BP, PointLight as rP, DirectionalLight as vP, MeshBasicMaterial as W, SRGBColorSpace as R, MeshPhysicalMaterial as y, Vector2 as VA, Matrix4 as tA, Vector3 as K, Quaternion as hA, InstancedMesh as gP, InstancedBufferAttribute as CP, Object3D as JA, TextureLoader as DP, ImageBitmapLoader as wP, BufferAttribute as BA, InterleavedBuffer as QP, InterleavedBufferAttribute as cP, LinearMipmapLinearFilter as YA, NearestMipmapLinearFilter as IP, LinearMipmapNearestFilter as EP, NearestMipmapNearestFilter as zP, LinearFilter as zA, NearestFilter as NA, RepeatWrapping as TA, MirroredRepeatWrapping as TP, ClampToEdgeWrapping as lP, PointsMaterial as oP, Material as rA, LineBasicMaterial as aP, MeshStandardMaterial as KA, DoubleSide as MP, PropertyBinding as uP, BufferGeometry as pP, SkinnedMesh as bP, Mesh as iP, LineSegments as fP, Line as UP, LineLoop as yP, Points as dP, Group as vA, PerspectiveCamera as jP, MathUtils as HP, OrthographicCamera as mP, Skeleton as kP, AnimationClip as LP, Bone as OP, InterpolateDiscrete as SP, InterpolateLinear as XA, ColorManagement as MA, Texture as uA, VectorKeyframeTrack as pA, NumberKeyframeTrack as bA, QuaternionKeyframeTrack as iA, FrontSide as qP, Interpolant as VP, Box3 as hP, Sphere as JP } from "three";
4
4
  import { Viewer as h, Math as _, Cartesian2 as eA, Cartesian3 as L, Cartographic as ZA, SceneTransforms as YP, Ray as NP, Color as KP, ScreenSpaceEventType as gA, ScreenSpaceEventHandler as XP, createWorldTerrainAsync as ZP, EllipsoidTerrainProvider as GP, WebMapTileServiceImageryProvider as Y, Credit as N } from "cesium";
5
5
  import { P as G, a as fA, b as xP, c as WP, d as FP, C as UA } from "./index-CcaLwHv1.js";
6
- import { L as Mn, P as un, a as pn } from "./PolygonDrawer-cdggtCBL.js";
6
+ import { C as Mn, a as un, b as pn, D as bn, P as fn, R as Un } from "./CircleDrawer-DbOS8_ZI.js";
7
7
  function yA(D, A) {
8
8
  if (A === tP)
9
9
  return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."), D;
@@ -2397,11 +2397,14 @@ const He = /* @__PURE__ */ q({
2397
2397
  D.component(A, P);
2398
2398
  }), D), ln = { install: cn };
2399
2399
  export {
2400
- Mn as LineDrawer,
2400
+ Mn as CP2dDrawer,
2401
+ un as CircleDrawer,
2402
+ pn as DRAWER_MODE,
2403
+ bn as DRAW_STATUS,
2401
2404
  fA as PIN_CATEGORY,
2402
2405
  G as PIN_MODE,
2403
- un as PointDrawer,
2404
- pn as PolygonDrawer,
2406
+ fn as PointDrawer,
2407
+ Un as RectDrawer,
2405
2408
  me as cpCompass,
2406
2409
  Ve as cpCoord,
2407
2410
  Fe as cpOverlay,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cesium-pocket",
3
- "version": "0.2.1-alpha",
3
+ "version": "0.3.1-alpha",
4
4
  "description": "cesium的插件库;基于vue3的开发",
5
5
  "module": "./index.js",
6
6
  "types": "./index.d.ts",
@@ -17,9 +17,9 @@
17
17
  "import": "./tianmap.js",
18
18
  "types": "./tianmap.d.ts"
19
19
  },
20
- "./measure": {
21
- "import": "./measure.js",
22
- "types": "./measure.d.ts"
20
+ "./drawer": {
21
+ "import": "./drawer.js",
22
+ "types": "./drawer.d.ts"
23
23
  },
24
24
  "./*": "./*"
25
25
  },