vis-core 0.30.0-beta.63 → 0.30.0-beta.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/index.d.ts +1776 -12
  2. package/dist/index.js +43117 -4888
  3. package/package.json +24 -21
  4. package/dist/accessToken.d.ts +0 -5
  5. package/dist/detect/Benchmark.d.ts +0 -17
  6. package/dist/detect/WebGL.d.ts +0 -23
  7. package/dist/detect/d/blocklistedGPUS.d.ts +0 -1
  8. package/dist/detect/d/tier0GPU.d.ts +0 -2
  9. package/dist/detect/d/types.d.ts +0 -1
  10. package/dist/detect/index.d.ts +0 -20
  11. package/dist/editor/command/AddMaterial.d.ts +0 -20
  12. package/dist/editor/command/AddObject.d.ts +0 -15
  13. package/dist/editor/command/AddVis.d.ts +0 -12
  14. package/dist/editor/command/Command.d.ts +0 -19
  15. package/dist/editor/command/Commands.d.ts +0 -24
  16. package/dist/editor/command/CopyMaterial.d.ts +0 -13
  17. package/dist/editor/command/CopyObject.d.ts +0 -16
  18. package/dist/editor/command/RemoveMaterial.d.ts +0 -13
  19. package/dist/editor/command/RemoveObject.d.ts +0 -13
  20. package/dist/editor/command/SetColor.d.ts +0 -12
  21. package/dist/editor/command/SetGeometry.d.ts +0 -13
  22. package/dist/editor/command/SetMaterial.d.ts +0 -12
  23. package/dist/editor/command/SetMaterialColor.d.ts +0 -14
  24. package/dist/editor/command/SetMaterialMap.d.ts +0 -17
  25. package/dist/editor/command/SetMaterialMapVector.d.ts +0 -15
  26. package/dist/editor/command/SetMaterialRange.d.ts +0 -14
  27. package/dist/editor/command/SetMaterialValue.d.ts +0 -14
  28. package/dist/editor/command/SetMaterialVector.d.ts +0 -14
  29. package/dist/editor/command/SetObjectMaterial.d.ts +0 -15
  30. package/dist/editor/command/SetPosition.d.ts +0 -12
  31. package/dist/editor/command/SetRotation.d.ts +0 -11
  32. package/dist/editor/command/SetScale.d.ts +0 -11
  33. package/dist/editor/command/SetSceenMap.d.ts +0 -4
  34. package/dist/editor/command/SetSetting.d.ts +0 -14
  35. package/dist/editor/command/SetTarget.d.ts +0 -12
  36. package/dist/editor/command/SetValue.d.ts +0 -14
  37. package/dist/editor/command/SetVector.d.ts +0 -14
  38. package/dist/editor/config.d.ts +0 -20
  39. package/dist/editor/helper.d.ts +0 -1
  40. package/dist/editor/history.d.ts +0 -77
  41. package/dist/editor/hooks.d.ts +0 -24
  42. package/dist/editor/index.d.ts +0 -94
  43. package/dist/editor/viewport.d.ts +0 -44
  44. package/dist/fix.d.ts +0 -0
  45. package/dist/getVisConfig.d.ts +0 -22
  46. package/dist/index.module.js +0 -146142
  47. package/dist/utils/animation.d.ts +0 -51
  48. package/dist/utils/base64ArrayBuffer.d.ts +0 -2
  49. package/dist/utils/compareVersion.d.ts +0 -2
  50. package/dist/utils/e.d.ts +0 -2
  51. package/dist/utils/fixVideoTexture.d.ts +0 -1
  52. package/dist/utils/jsonFetch.d.ts +0 -8
  53. package/dist/utils/observeScale.d.ts +0 -1
  54. package/dist/utils/png2webp.d.ts +0 -1
  55. package/dist/version.d.ts +0 -2
  56. package/dist/vis/all/json/china/china.d.ts +0 -104
  57. package/dist/vis/all/json/continents/continents.d.ts +0 -210
  58. package/dist/vis/all/json/index.d.ts +0 -22
  59. package/dist/vis/all/json/world/world.d.ts +0 -42
  60. package/dist/vis/all/objects/Arc/index.d.ts +0 -43
  61. package/dist/vis/all/objects/Arc/utils.d.ts +0 -6
  62. package/dist/vis/all/objects/Box.d.ts +0 -4
  63. package/dist/vis/all/objects/Capsule.d.ts +0 -4
  64. package/dist/vis/all/objects/Circle.d.ts +0 -4
  65. package/dist/vis/all/objects/CrossPlane.d.ts +0 -12
  66. package/dist/vis/all/objects/Cylinder.d.ts +0 -4
  67. package/dist/vis/all/objects/Dodecahedron.d.ts +0 -4
  68. package/dist/vis/all/objects/Icosahedron.d.ts +0 -4
  69. package/dist/vis/all/objects/Lathe.d.ts +0 -4
  70. package/dist/vis/all/objects/Light.d.ts +0 -6
  71. package/dist/vis/all/objects/Model.d.ts +0 -68
  72. package/dist/vis/all/objects/Octahedron.d.ts +0 -4
  73. package/dist/vis/all/objects/Plane.d.ts +0 -4
  74. package/dist/vis/all/objects/PlaneShadow.d.ts +0 -4
  75. package/dist/vis/all/objects/Point.d.ts +0 -15
  76. package/dist/vis/all/objects/Ring.d.ts +0 -4
  77. package/dist/vis/all/objects/Sphere.d.ts +0 -8
  78. package/dist/vis/all/objects/Sprite.d.ts +0 -5
  79. package/dist/vis/all/objects/Tetrahedron.d.ts +0 -4
  80. package/dist/vis/all/objects/Torus.d.ts +0 -4
  81. package/dist/vis/all/objects/TorusKnot.d.ts +0 -4
  82. package/dist/vis/all/objects/Tube.d.ts +0 -13
  83. package/dist/vis/all/objects/index.d.ts +0 -77
  84. package/dist/vis/base/camera.d.ts +0 -24
  85. package/dist/vis/base/event.d.ts +0 -11
  86. package/dist/vis/base/index.d.ts +0 -127
  87. package/dist/vis/city/index.d.ts +0 -112
  88. package/dist/vis/city/objects/area/index.d.ts +0 -21
  89. package/dist/vis/city/objects/building/index.d.ts +0 -26
  90. package/dist/vis/city/objects/index.d.ts +0 -43
  91. package/dist/vis/city/objects/plane/Water.d.ts +0 -1
  92. package/dist/vis/city/objects/plane/Water2.d.ts +0 -68
  93. package/dist/vis/city/objects/plane/index.d.ts +0 -19
  94. package/dist/vis/city/objects/road/index.d.ts +0 -21
  95. package/dist/vis/city/objects/target/index.d.ts +0 -25
  96. package/dist/vis/earth/index.d.ts +0 -86
  97. package/dist/vis/earth/objects/SphereShadow.d.ts +0 -10
  98. package/dist/vis/earth/objects/earth/index.d.ts +0 -11
  99. package/dist/vis/earth/objects/index.d.ts +0 -39
  100. package/dist/vis/earth/styles/base.d.ts +0 -2
  101. package/dist/vis/earth/styles/chinaPlate.d.ts +0 -2
  102. package/dist/vis/earth/styles/countryPlate.d.ts +0 -2
  103. package/dist/vis/earth/styles/index.d.ts +0 -3
  104. package/dist/vis/index.d.ts +0 -4
  105. package/dist/vis/map/MapManager.d.ts +0 -132
  106. package/dist/vis/map/city.d.ts +0 -5
  107. package/dist/vis/map/el.d.ts +0 -1
  108. package/dist/vis/map/index.d.ts +0 -291
  109. package/dist/vis/map/objects/ContinentsBg.d.ts +0 -18
  110. package/dist/vis/map/objects/Mountain.d.ts +0 -30
  111. package/dist/vis/map/objects/PlaneMap.d.ts +0 -87
  112. package/dist/vis/map/objects/index.d.ts +0 -41
  113. package/dist/vis/map/styles/base.d.ts +0 -2
  114. package/dist/vis/map/styles/china.d.ts +0 -2
  115. package/dist/vis/map/styles/index.d.ts +0 -6
  116. package/dist/vis/map/styles/map2/base.d.ts +0 -2
  117. package/dist/vis/map/styles/map2/city350000.d.ts +0 -2
  118. package/dist/vis/map/styles/map2/cityOnMap.d.ts +0 -2
  119. package/dist/vis/map/styles/world.d.ts +0 -2
  120. package/dist/vis/map/styles/worldPacificCentre.d.ts +0 -2
package/dist/index.d.ts CHANGED
@@ -1,12 +1,1776 @@
1
- import '@/styles/vis.css';
2
- import './fix';
3
- export * as TWEEN from '@tweenjs/tween.js';
4
- export * from "./vis/index";
5
- export * from "./vis/map/MapManager";
6
- export * as THREE from 'three';
7
- export * from './getVisConfig';
8
- export * as animationUtils from './utils/animation';
9
- export declare const access: {
10
- token: string;
11
- };
12
- export declare const VERSION = "0.30.0-beta.63";
1
+ import { BaseObject } from 'gl-draw';
2
+ import { ConicPolygon } from 'gl-draw';
3
+ import { default as default_2 } from 'gl-draw';
4
+ import { EventEmitter } from 'events';
5
+ import { ExtrudePolygon } from 'gl-draw';
6
+ import { FeatureCollection } from 'geojson';
7
+ import { GeoJsonProperties } from 'geojson';
8
+ import { GeoProjection } from 'd3-geo';
9
+ import { Group } from 'gl-draw';
10
+ import { Lead } from 'gl-draw';
11
+ import { Light as Light_2 } from 'gl-draw';
12
+ import { Line } from 'gl-draw';
13
+ import { Line2 } from 'gl-draw';
14
+ import { Listener } from 'events';
15
+ import { MeshLineMaterial } from 'gl-draw';
16
+ import { MultiPolygon } from 'geojson';
17
+ import { Node as Node_2 } from 'gl-draw';
18
+ import { PickFunctionsItem } from 'gl-draw';
19
+ import { Polygon } from 'geojson';
20
+ import { Position } from 'geojson';
21
+ import { RoomEnvironment } from 'three/examples/jsm/environments/RoomEnvironment.js';
22
+ import * as THREE from 'three';
23
+ import * as TWEEN from '@tweenjs/tween.js';
24
+ import { Water } from './Water2';
25
+
26
+ export declare const access: {
27
+ token: string;
28
+ };
29
+
30
+ export declare namespace animationUtils {
31
+ export {
32
+ timeOut,
33
+ sinusoidalInOut,
34
+ baseObjectFadeIn,
35
+ baseObjectFadeOut,
36
+ baseObjectBounceIn,
37
+ baseObjectBounce
38
+ }
39
+ }
40
+
41
+ declare class Arc extends BaseObject {
42
+ options: Options_4;
43
+ line: Line;
44
+ helperMeshPosition?: THREE.Vector3[];
45
+ constructor(options: Options_4);
46
+ static getInitOptions(pencil: default_2, options: Options_4): {
47
+ from: THREE.Vector3Tuple;
48
+ to: THREE.Vector3Tuple;
49
+ };
50
+ create(): Promise<void>;
51
+ instantiate(ops?: any): Promise<this>;
52
+ setPath(from: THREE.Vector3 | number[], to: THREE.Vector3 | number[], radius: number, setPointWidth?: (p: number) => number): void;
53
+ pickTube: Tube | null;
54
+ addPickTarget(radius?: number, show?: boolean): Promise<Tube>;
55
+ onPointerEvent(...args: Parameters<BaseObject['onPointerEvent']>): void;
56
+ setColor(color: string): void;
57
+ animateIn({ duration, delay, repeat, onComplete, onRepeat, }?: {
58
+ duration?: number;
59
+ delay?: number;
60
+ repeat?: number;
61
+ onComplete?: (...args: any[]) => void;
62
+ onRepeat?: (count: number) => void;
63
+ }): void;
64
+ update(): void;
65
+ render(): void;
66
+ dispose(): void;
67
+ }
68
+
69
+ declare class Area extends BaseObject {
70
+ options: Options_10;
71
+ area: ExtrudePolygon[];
72
+ constructor(options: Options_10);
73
+ create(): Promise<void>;
74
+ }
75
+
76
+ export declare class Base extends Camera {
77
+ static VisName: string;
78
+ playing: boolean;
79
+ leftTruck: boolean;
80
+ options: BaseOptions;
81
+ showState: boolean;
82
+ settings: Record<string, any>;
83
+ delLoadArr?: string[];
84
+ extendsOptions: Record<string, any>;
85
+ leadObjs: {
86
+ Plane: Plane;
87
+ CrossPlane: CrossPlane;
88
+ PlaneShadow: PlaneShadow;
89
+ Ring: Ring;
90
+ Sphere: Sphere;
91
+ Sprite: Sprite;
92
+ Tetrahedron: Tetrahedron;
93
+ Torus: Torus;
94
+ TorusKnot: TorusKnot;
95
+ Tube: Tube;
96
+ Box: Box;
97
+ Capsule: Capsule;
98
+ Circle: Circle;
99
+ Cylinder: Cylinder;
100
+ Dodecahedron: Dodecahedron;
101
+ Icosahedron: Icosahedron;
102
+ Lathe: Lathe;
103
+ Octahedron: Octahedron;
104
+ Node: typeof Node_2;
105
+ Line: typeof Line;
106
+ Line2: Line2;
107
+ ExtrudePolygon: ExtrudePolygon;
108
+ ConicPolygon: ConicPolygon;
109
+ Group: Group;
110
+ Light: Light;
111
+ Point: Point;
112
+ Arc: typeof Arc;
113
+ Model: Model;
114
+ };
115
+ lead: Lead<typeof objs>;
116
+ mList: default_2['mList'];
117
+ tier0: boolean;
118
+ pmremGenerator: THREE.PMREMGenerator | null;
119
+ re: RoomEnvironment | null;
120
+ roomEnvMap?: THREE.Texture;
121
+ visName: string;
122
+ editor?: Editor;
123
+ publicDir: Record<string, string>;
124
+ constructor(options: BaseOptions);
125
+ private showDetectRes;
126
+ setOptions(options: Record<string, any>): void;
127
+ _baseObjectByUuid: Editor['baseObjectByUuid'];
128
+ _objectByUuid: Editor['objectByUuid'];
129
+ get fromJSON(): (jsonOrUrl: Record<string, any> | string, hooks?: Record<string, any>) => Promise<Record<string, any>>;
130
+ get baseObjectByUuid(): {
131
+ (key: `arc${string}`): Arc;
132
+ (key: `sprite${string}`): Sprite;
133
+ (key: string): BaseObject;
134
+ };
135
+ get objectByUuid(): (key: string) => THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material | THREE.Material[], THREE.Object3DEventMap> | undefined;
136
+ get getDataURL(): () => string;
137
+ loaderAdd(...args: any): void;
138
+ initMaterial(...args: any): Promise<void>;
139
+ initVis(...args: any): Promise<void>;
140
+ init(...args: any[]): Promise<void>;
141
+ private observeScale;
142
+ initPencil(): Promise<void>;
143
+ private sceneActive;
144
+ setSceneActive(): void;
145
+ initCameraUserData(): void;
146
+ initSceneUserData(): void;
147
+ initBaseObjectUserData(baseObject: BaseObject): void;
148
+ addCSS3DRenderer(container?: HTMLElement): void;
149
+ initSettingsObj?: Record<string, any>;
150
+ mouseButtonsActiveStore: Record<string, any> | null;
151
+ initSettings(): void;
152
+ handleSetting(key: string, value: any): Promise<any>;
153
+ show(): void;
154
+ showAction(): void;
155
+ hide(): void;
156
+ addGroup(): Promise<Group>;
157
+ addCSS2D(dom: HTMLElement, options?: {
158
+ display?: string;
159
+ onTop?: number;
160
+ target?: BaseObject;
161
+ }): Promise<Node_2>;
162
+ addCSS3D(dom: HTMLElement, options?: {
163
+ display?: string;
164
+ onTop?: number;
165
+ type?: '3d' | '3dSprite';
166
+ target?: BaseObject;
167
+ }): Promise<Node_2>;
168
+ getRoomEnvMap(): THREE.Texture<unknown>;
169
+ handlePick(objArr: PickFunctionsItem['objArr'], type: PickFunctionsItem['type'], cb: PickFunctionsItem['cb']): void;
170
+ getScreenPosition(x: number, y: number, z: number): {
171
+ x: number;
172
+ y: number;
173
+ };
174
+ dispose(): void;
175
+ }
176
+
177
+ declare const baseObjectBounce: (obj: BaseObject, up: string | undefined, to: number) => {
178
+ start: ({ duration, repeat, repeatResolve, repeatDelay, }?: {
179
+ duration?: number | undefined;
180
+ repeat?: number | undefined;
181
+ repeatResolve?: number | undefined;
182
+ repeatDelay?: number | undefined;
183
+ }) => Promise<any>;
184
+ stop: () => void;
185
+ };
186
+
187
+ declare const baseObjectBounceIn: (obj: BaseObject, up?: string) => {
188
+ start: ({ duration, repeat, repeatResolve, repeatDelay, }?: {
189
+ duration?: number | undefined;
190
+ repeat?: number | undefined;
191
+ repeatResolve?: number | undefined;
192
+ repeatDelay?: number | undefined;
193
+ }) => Promise<any>;
194
+ stop: () => void;
195
+ };
196
+
197
+ declare const baseObjectFadeIn: (obj: BaseObject) => {
198
+ start: ({ duration, repeat, repeatResolve, repeatDelay, }?: {
199
+ duration?: number | undefined;
200
+ repeat?: number | undefined;
201
+ repeatResolve?: number | undefined;
202
+ repeatDelay?: number | undefined;
203
+ }) => Promise<any>;
204
+ stop: () => void;
205
+ };
206
+
207
+ declare const baseObjectFadeOut: (obj: BaseObject) => {
208
+ start: ({ duration, repeat, repeatResolve, repeatDelay, }?: {
209
+ duration?: number | undefined;
210
+ repeat?: number | undefined;
211
+ repeatResolve?: number | undefined;
212
+ repeatDelay?: number | undefined;
213
+ }) => Promise<any>;
214
+ stop: () => void;
215
+ };
216
+
217
+ declare interface BaseOptions {
218
+ container: HTMLElement;
219
+ assetsPrefix?: string;
220
+ css2DContainer?: HTMLElement;
221
+ controlsContainer?: HTMLElement;
222
+ pencil?: any;
223
+ pencil2?: any;
224
+ pencilConfig?: Record<string, any>;
225
+ disableInitShow?: boolean;
226
+ editor?: boolean;
227
+ logarithmicDepthBuffer?: boolean;
228
+ tier?: number;
229
+ observeParentScale?: boolean;
230
+ [key: string]: any;
231
+ }
232
+
233
+ declare class Box extends BaseObject {
234
+ create(): void;
235
+ }
236
+
237
+ declare class Building extends BaseObject {
238
+ options: Options_8;
239
+ constructor(options: Options_8);
240
+ create(): Promise<void>;
241
+ worldPositionZ: {
242
+ value: number;
243
+ };
244
+ sideGradient(color?: string, maxGradientHeight?: number): void;
245
+ update(): void;
246
+ }
247
+
248
+ declare class Camera extends Event_2 {
249
+ container: HTMLElement;
250
+ pencil: default_2;
251
+ cameraState: Record<string, number[]>;
252
+ setSaveCamera(type: string): void;
253
+ useSaveCamera(type: string, enableTransition?: boolean): Promise<boolean>;
254
+ lookAt(positionX: number, positionY: number, positionZ: number, targetX: number, targetY: number, targetZ: number, enableTransition?: boolean, smoothTime?: number): Promise<void>;
255
+ truck(x: number, y: number, enableTransition?: boolean, smoothTime?: number): Promise<void>;
256
+ dollyTo(distance: number | `+=${number}` | `-=${number}` | `*=${number}` | `/=${number}`, enableTransition?: boolean, smoothTime?: number): Promise<void>;
257
+ absoluteAngle(targetAngle: number, sourceAngle: number): number;
258
+ lookAtTarget(ops: {
259
+ target?: THREE.Vector3;
260
+ distance?: number;
261
+ polarAngle?: number;
262
+ azimuthAngle?: number;
263
+ }, enableTransition?: boolean, smoothTime?: number): Promise<void>;
264
+ paddingInCssPixel(obj: BaseObject, top: number, right: number, bottom: number, left: number, enableTransition: boolean): Promise<void[]>;
265
+ resetCamera(enableTransition?: boolean, smoothTime?: number): Promise<void>;
266
+ unproject(e: MouseEvent, targetZ?: number): THREE.Vector3;
267
+ dispose(): void;
268
+ }
269
+
270
+ declare class Capsule extends BaseObject {
271
+ create(): void;
272
+ }
273
+
274
+ declare class Circle extends BaseObject {
275
+ create(): void;
276
+ }
277
+
278
+ export declare class City extends Base {
279
+ static VisName: string;
280
+ leadObjs: {
281
+ Building: typeof Building;
282
+ Road: typeof Road;
283
+ Area: Area;
284
+ CityPlane: CityPlane;
285
+ Target: Target;
286
+ Plane: Plane;
287
+ CrossPlane: CrossPlane;
288
+ PlaneShadow: PlaneShadow;
289
+ Ring: Ring;
290
+ Sphere: Sphere;
291
+ Sprite: Sprite;
292
+ Tetrahedron: Tetrahedron;
293
+ Torus: Torus;
294
+ TorusKnot: TorusKnot;
295
+ Tube: Tube;
296
+ Box: Box;
297
+ Capsule: Capsule;
298
+ Circle: Circle;
299
+ Cylinder: Cylinder;
300
+ Dodecahedron: Dodecahedron;
301
+ Icosahedron: Icosahedron;
302
+ Lathe: Lathe;
303
+ Octahedron: Octahedron;
304
+ Node: Node_2;
305
+ Line: Line;
306
+ Line2: Line2;
307
+ ExtrudePolygon: ExtrudePolygon;
308
+ ConicPolygon: ConicPolygon;
309
+ Group: typeof Group;
310
+ Light: Light;
311
+ Point: Point;
312
+ Arc: Arc;
313
+ Model: Model;
314
+ };
315
+ lead: Lead<typeof objs_2>;
316
+ adcode: number;
317
+ pcenter: [number, number];
318
+ pscale: number;
319
+ projection: ReturnType<typeof getProjection>;
320
+ options: CityOptions;
321
+ group: Group;
322
+ building: Building;
323
+ road: Road;
324
+ setOptions(options: CityOptions): void;
325
+ multiplyScalar: number;
326
+ loaderAdd(): void;
327
+ initMaterial(): Promise<void>;
328
+ disableSSAO(): void;
329
+ enabledSSAO(): void;
330
+ init(): Promise<void>;
331
+ getInvert(vector3: THREE.Vector3): [number, number] | null | undefined;
332
+ fitTo(obj: BaseObject, enableTransition?: boolean): Promise<void>;
333
+ initVis(): Promise<void>;
334
+ drawCityPlane(adcode: number, target?: BaseObject): Promise<void>;
335
+ drawBuilding(options?: {
336
+ jsonUrl?: string;
337
+ meters?: number;
338
+ grey?: boolean;
339
+ sideGradient?: boolean;
340
+ hasSide?: boolean;
341
+ }): Promise<Building | undefined>;
342
+ drawArea(options?: {
343
+ jsonUrl?: string;
344
+ type?: 'river' | 'grassland';
345
+ oArr?: number[];
346
+ grey?: boolean;
347
+ }): Promise<Area | undefined>;
348
+ drawRoad(options?: {
349
+ jsonUrl?: string;
350
+ meters?: number;
351
+ z?: number;
352
+ grey?: boolean;
353
+ }): Promise<Road | undefined>;
354
+ getWorldPosition(longitude: number, latitude: number): {
355
+ x: number;
356
+ y: number;
357
+ };
358
+ }
359
+
360
+ declare class city extends City {
361
+ multiplyScalar: number;
362
+ fixNearFar(n?: number, f?: number): void;
363
+ }
364
+
365
+ declare interface CityOptions extends BaseOptions {
366
+ adcode: number;
367
+ jsonName: string;
368
+ cacheKey?: string;
369
+ center?: [number, number];
370
+ fitTo?: boolean;
371
+ coordtransformFunc?: (lng: number, lat: number) => {
372
+ longitude: number;
373
+ latitude: number;
374
+ };
375
+ plane?: boolean;
376
+ grey?: boolean;
377
+ showBuilding?: boolean;
378
+ buildingSideGradient?: boolean;
379
+ buildingHasSide?: boolean;
380
+ showRoad?: boolean;
381
+ showGrassland?: boolean;
382
+ showRiver?: boolean;
383
+ setWaterMaterial?: boolean;
384
+ ssao?: boolean;
385
+ }
386
+
387
+ declare class CityPlane extends BaseObject {
388
+ options: Options_11;
389
+ constructor(options: Options_11);
390
+ plane: THREE.PlaneGeometry;
391
+ water?: Water;
392
+ create(): Promise<void>;
393
+ addWater(): void;
394
+ }
395
+
396
+ declare class Config {
397
+ editor: Editor;
398
+ meta: {
399
+ name: string;
400
+ key: string;
401
+ open: boolean;
402
+ jsonVersion: string;
403
+ sdkVersion: string;
404
+ __template: string;
405
+ };
406
+ constructor(editor: Editor);
407
+ setConfig<K extends keyof Config['meta']>(key: K, value: Config['meta'][K]): void;
408
+ fromJSON(json: any): void;
409
+ compareVersion(): void;
410
+ toJSON(): {
411
+ version: string;
412
+ };
413
+ }
414
+
415
+ declare class ContinentsBg extends BaseObject {
416
+ options: Options_15;
417
+ mapArr: PlaneMap[];
418
+ constructor(options: Options_15);
419
+ create(): Promise<void>;
420
+ private getPointInContinentInfo;
421
+ getPointInContinent(location: [number, number]): boolean;
422
+ getLocationPosition(location: [number, number], tName?: string): [number, number, number] | undefined;
423
+ render(): void;
424
+ dispose(): void;
425
+ }
426
+
427
+ declare class CrossPlane extends BaseObject {
428
+ options: Options;
429
+ constructor(options: Options);
430
+ create(): Promise<void>;
431
+ }
432
+
433
+ declare class Cylinder extends BaseObject {
434
+ create(): void;
435
+ }
436
+
437
+ declare class Dodecahedron extends BaseObject {
438
+ create(): void;
439
+ }
440
+
441
+ export declare class Earth extends Base {
442
+ static VisName: string;
443
+ leadObjs: {
444
+ Earth: Earth_2;
445
+ SphereShadow: SphereShadow;
446
+ Countries: typeof PlaneMap;
447
+ Plane: Plane;
448
+ CrossPlane: CrossPlane;
449
+ PlaneShadow: PlaneShadow;
450
+ Ring: Ring;
451
+ Sphere: Sphere;
452
+ Sprite: Sprite;
453
+ Tetrahedron: Tetrahedron;
454
+ Torus: Torus;
455
+ TorusKnot: TorusKnot;
456
+ Tube: Tube;
457
+ Box: Box;
458
+ Capsule: Capsule;
459
+ Circle: Circle;
460
+ Cylinder: Cylinder;
461
+ Dodecahedron: Dodecahedron;
462
+ Icosahedron: Icosahedron;
463
+ Lathe: Lathe;
464
+ Octahedron: Octahedron;
465
+ Node: Node_2;
466
+ Line: Line;
467
+ Line2: Line2;
468
+ ExtrudePolygon: ExtrudePolygon;
469
+ ConicPolygon: ConicPolygon;
470
+ Group: Group;
471
+ Light: Light;
472
+ Point: Point;
473
+ Arc: Arc;
474
+ Model: Model;
475
+ };
476
+ leftTruck: boolean;
477
+ lead: Lead<typeof objs_3>;
478
+ options: Required<EarthOptions>;
479
+ extendsOptions: Record<string, any>;
480
+ map: PlaneMap;
481
+ get mapArea(): ExtrudePolygon[];
482
+ setOptions(options: EarthOptions): void;
483
+ handleSetting(key: string, value: any): Promise<any>;
484
+ show(): void;
485
+ animationIn(): void;
486
+ initLight(): Promise<void>;
487
+ getLocationPosition(location: [number, number], dr?: number): [number, number, number];
488
+ setAreaMaterialByProperty(key: string, value: any, ops: {
489
+ color?: string;
490
+ emissive?: string;
491
+ emissiveIntensity?: number;
492
+ } | 'origin'): void;
493
+ setLineMaterialByProperty(key: string, value: any, ops: {
494
+ color?: string;
495
+ width?: number;
496
+ } | 'origin'): void;
497
+ addAreaPlaneByProperty(key: string, value: any, options: {
498
+ area: ConstructorParameters<typeof THREE.MeshBasicMaterial>[0];
499
+ line: ConstructorParameters<typeof MeshLineMaterial>[0];
500
+ }): Promise<PlaneMap | undefined>;
501
+ getRadius(): number;
502
+ checkBehindEarth(objArr: () => BaseObject[], cb: (obj: BaseObject[], res: boolean[]) => any): void;
503
+ /**
504
+ * 设置物体在球面上的位置和旋转,使其垂直于球面
505
+ * @param object - 要设置的物体
506
+ * @param location - 经纬度 [经度, 纬度]
507
+ * @param height - 距离球面的高度,默认为0
508
+ * @param upAxis - 物体的up轴方向,默认为Y轴 [0, 1, 0]
509
+ */
510
+ setObjectOnSphere(baseObject: BaseObject, location: [number, number], height?: number, upAxis?: [number, number, number]): void;
511
+ }
512
+
513
+ declare class Earth_2 extends Sphere {
514
+ options: Required<Options_12>;
515
+ constructor(options: Options_12);
516
+ create(): void;
517
+ }
518
+
519
+ declare interface EarthOptions extends BaseOptions {
520
+ mapDepth?: number;
521
+ otherMapDepth?: number;
522
+ radius?: number;
523
+ copyChinaPlane?: boolean;
524
+ mergeSide?: boolean;
525
+ style?: 'chinaPlate' | 'countryPlate' | 'base';
526
+ }
527
+
528
+ declare class Editor {
529
+ selected: BaseObject | null;
530
+ playing: boolean;
531
+ currentMaterialSlot: number;
532
+ events: EventEmitter;
533
+ history: History_2;
534
+ viewport: Viewport;
535
+ hooks: Hooks;
536
+ config: Config;
537
+ pencil: default_2;
538
+ on: (type: string | number, listener: Listener) => EventEmitter;
539
+ emit: (type: string | number, ...args: any[]) => boolean;
540
+ options: Options_7;
541
+ constructor(options: Options_7);
542
+ getObjectMaterial(object?: THREE.Mesh | null, slot?: number): THREE.Material | THREE.Material[] | undefined;
543
+ getMListFixBaseObjectByObject(object: THREE.Mesh, slot: number): any;
544
+ materialObjectByUuid(uuid: string): any;
545
+ uuidByMaterialObject(object: THREE.Object3D): any;
546
+ setObjectMaterial(object: THREE.Mesh, slot: number, newMaterial: THREE.Material): void;
547
+ uuidByObject(object: THREE.Object3D): string | undefined;
548
+ objectByUuid(key: string): THREE.Mesh<THREE.BufferGeometry<THREE.NormalBufferAttributes, THREE.BufferGeometryEventMap>, THREE.Material | THREE.Material[], THREE.Object3DEventMap> | undefined;
549
+ uuidByBaseObject(object: BaseObject): string | undefined;
550
+ baseObjectByUuid(key: `arc${string}`): Arc;
551
+ baseObjectByUuid(key: `sprite${string}`): Sprite;
552
+ baseObjectByUuid(key: string): BaseObject;
553
+ private _selectOptionMaps;
554
+ findSelectItem(key: any, val: any): SelectedMeta | undefined;
555
+ selectOption: SelectedMeta[];
556
+ changeSelectOption(): void;
557
+ private _buildCacheMapsRecursively;
558
+ private _mListOptionsMaps;
559
+ findMListSelectItem(key: any, val: any): any;
560
+ mListOptions: {
561
+ key: string;
562
+ name: string;
563
+ type: string;
564
+ use: number;
565
+ object: THREE.Mesh;
566
+ material: THREE.Material;
567
+ baseObject: BaseObject;
568
+ }[];
569
+ changeMListOptions(): never[] | undefined;
570
+ execute(cmd: any, optionalName?: string): Promise<void>;
571
+ private static urlCache;
572
+ private static _loadingCount;
573
+ /**
574
+ * 清除特定 URL 的缓存
575
+ * @param url 要清除的 URL,如果不提供则清除所有缓存
576
+ */
577
+ static clearUrlCache(url?: string): void;
578
+ fromJSON(jsonOrUrl: Record<string, any> | string, hooks?: Record<string, any>): Promise<Record<string, any>>;
579
+ appendJSON(jsonOrUrl: Record<string, any> | string): Promise<void>;
580
+ toJSON(): {};
581
+ select(...args: any[]): void;
582
+ setViewportVis(...args: any[]): void;
583
+ getDataURL(): string;
584
+ _dispose: boolean;
585
+ dispose(): void;
586
+ }
587
+
588
+ declare class Event_2 {
589
+ event: EventEmitter;
590
+ private eventHandlers;
591
+ on: (type: string | number, listener: Listener) => EventEmitter;
592
+ emit: (type: string | number, ...args: any[]) => boolean;
593
+ addListener(node: HTMLElement, event: string, handler: (e: MouseEvent) => void, capture?: boolean): void;
594
+ removeListener(targetNode: HTMLElement | '', event: string): void;
595
+ removeAllListeners(): void;
596
+ dispose(): void;
597
+ }
598
+
599
+ declare const findAdcodeInfo: (adcode: number) => {
600
+ adcode: number;
601
+ lng: number;
602
+ lat: number;
603
+ name: string;
604
+ level: string;
605
+ parent: number;
606
+ c: number[];
607
+ b: number[];
608
+ } | undefined;
609
+
610
+ export declare interface FixConfig {
611
+ [key: `${string}`]: {
612
+ s: string[];
613
+ z: string[];
614
+ };
615
+ }
616
+
617
+ declare type GeoJSON_2 = FeatureCollection<Polygon | MultiPolygon>;
618
+
619
+ declare type GeoJSON_3 = FeatureCollection<Polygon | MultiPolygon>;
620
+
621
+ declare type GeoJSON_4 = FeatureCollection<Polygon | MultiPolygon>;
622
+
623
+ /**
624
+ * 获取城市配置
625
+ * @param adcode 区域代码
626
+ */
627
+ export declare const getCityConfig: (adcode: number) => {
628
+ center: number[];
629
+ adcode: number;
630
+ jsonName: string;
631
+ };
632
+
633
+ /**
634
+ * 获取地图配置
635
+ * @param adcode 区域代码
636
+ * @param base 基础URL
637
+ * @param prevConfig 之前的配置
638
+ * @param imgArr 图像数组
639
+ */
640
+ export declare const getMapConfig: (adcode: number, base?: string, prevConfig?: any, imgArr?: string[] | Record<string, string>) => Promise<any>;
641
+
642
+ declare const getProjection: (options: {
643
+ center: [number, number];
644
+ scale: number;
645
+ projectionType?: "equirectangular" | "mercator" | "winkel3";
646
+ translate?: [number, number];
647
+ precision?: number;
648
+ rotate?: [number, number];
649
+ }) => GeoProjection;
650
+
651
+ declare const getProjection_2: (options: {
652
+ center: [number, number];
653
+ scale: number;
654
+ projectionType?: "equirectangular" | "mercator" | "winkel3";
655
+ translate?: [number, number];
656
+ precision?: number;
657
+ rotate?: [number, number];
658
+ }) => GeoProjection;
659
+
660
+ declare class History_2 {
661
+ editor: Editor;
662
+ undos: any[];
663
+ redos: any[];
664
+ lastCmdTime: number;
665
+ idCounter: number;
666
+ historyDisabled: boolean;
667
+ constructor(editor: Editor);
668
+ /**
669
+ * 检查两个命令是否可以合并
670
+ */
671
+ private canMergeCommands;
672
+ execute(cmd: any, optionalName?: string): Promise<void>;
673
+ undo(): any;
674
+ redo(): any;
675
+ /**
676
+ * 处理图片数据,将ArrayBuffer转换为Base64字符串并建立引用映射
677
+ */
678
+ private processImageData;
679
+ /**
680
+ * 处理包含图片的命令
681
+ */
682
+ private processCommandWithImages;
683
+ toJSON(): {
684
+ u: any[];
685
+ i: Record<string, string>;
686
+ };
687
+ /**
688
+ * 处理图片引用,将引用字符串还原为实际URL或数据
689
+ */
690
+ private processImageReference;
691
+ /**
692
+ * 还原包含图片的命令数据
693
+ */
694
+ private restoreCommandImages;
695
+ /**
696
+ * 验证和规范化命令类型
697
+ */
698
+ private normalizeCommandType;
699
+ /**
700
+ * 创建命令实例
701
+ */
702
+ private createCommand;
703
+ fromJSON(json: any): void;
704
+ /**
705
+ * 批量处理撤销操作,支持分帧执行以避免阻塞UI
706
+ */
707
+ processUndos(maxFrameTime?: number): Promise<string>;
708
+ /**
709
+ * 执行单个撤销命令
710
+ */
711
+ private executeUndo;
712
+ /**
713
+ * 清空所有历史记录
714
+ */
715
+ clear(): void;
716
+ /**
717
+ * 获取历史记录状态信息
718
+ */
719
+ getState(): {
720
+ undoCount: number;
721
+ redoCount: number;
722
+ canUndo: boolean;
723
+ canRedo: boolean;
724
+ isDisabled: boolean;
725
+ };
726
+ /**
727
+ * 启用/禁用历史记录功能
728
+ */
729
+ setEnabled(enabled: boolean): void;
730
+ /**
731
+ * 获取最后执行的命令
732
+ */
733
+ getLastCommand(): any;
734
+ }
735
+
736
+ declare class Hooks {
737
+ editor: Editor;
738
+ events: {
739
+ beforeSetVisOptions: Function[];
740
+ afterSetVisOptions: Function[];
741
+ beforeExecuteUndo: Function[];
742
+ afterExecuteUndo: Function[];
743
+ beforeShow: Function[];
744
+ afterShow: Function[];
745
+ beforeFromJSON: Function[];
746
+ afterFromJSON: Function[];
747
+ errorFromJSON: Function[];
748
+ };
749
+ source: string;
750
+ constructor(editor: Editor);
751
+ addEvents(event: Record<string, Function>): void;
752
+ addStaticEvents(func: Function): void;
753
+ fromJSON(source: string): void;
754
+ toJSON(): string;
755
+ clear(): void;
756
+ dispatch(type: keyof Hooks['events'], ...args: any[]): any;
757
+ }
758
+
759
+ declare class Icosahedron extends BaseObject {
760
+ create(): void;
761
+ }
762
+
763
+ declare class Lathe extends BaseObject {
764
+ create(): void;
765
+ }
766
+
767
+ declare class Light extends Light_2 {
768
+ constructor(options: any);
769
+ update(delta: number, elapsed: number): void;
770
+ render(): void;
771
+ }
772
+
773
+ declare class Map_2 extends Base {
774
+ static VisName: string;
775
+ leadObjs: {
776
+ PlaneMap: typeof PlaneMap;
777
+ CityPlane: CityPlane;
778
+ ContinentsBg: typeof ContinentsBg;
779
+ Mountain: PlaneMap_2;
780
+ Plane: Plane;
781
+ CrossPlane: CrossPlane;
782
+ PlaneShadow: PlaneShadow;
783
+ Ring: Ring;
784
+ Sphere: Sphere;
785
+ Sprite: Sprite;
786
+ Tetrahedron: Tetrahedron;
787
+ Torus: Torus;
788
+ TorusKnot: TorusKnot;
789
+ Tube: Tube;
790
+ Box: Box;
791
+ Capsule: Capsule;
792
+ Circle: Circle;
793
+ Cylinder: Cylinder;
794
+ Dodecahedron: Dodecahedron;
795
+ Icosahedron: Icosahedron;
796
+ Lathe: Lathe;
797
+ Octahedron: Octahedron;
798
+ Node: Node_2;
799
+ Line: Line;
800
+ Line2: Line2;
801
+ ExtrudePolygon: typeof ExtrudePolygon;
802
+ ConicPolygon: ConicPolygon;
803
+ Group: typeof Group;
804
+ Light: Light;
805
+ Point: Point;
806
+ Arc: Arc;
807
+ Model: Model;
808
+ };
809
+ lead: Lead<typeof objs_4>;
810
+ options: Required<MapCityOptions>;
811
+ mapHistory: {
812
+ map: PlaneMap;
813
+ mapInfo: NonNullable<ReturnType<typeof findAdcodeInfo>>;
814
+ z: number;
815
+ cX: number;
816
+ cY: number;
817
+ depth: number;
818
+ controls?: {
819
+ lookAt: [number, number, number, number, number, number];
820
+ polarAngle: number;
821
+ azimuthAngle: number;
822
+ };
823
+ userControls?: {
824
+ lookAt: [number, number, number, number, number, number];
825
+ polarAngle: number;
826
+ azimuthAngle: number;
827
+ };
828
+ }[];
829
+ get mapObj(): {
830
+ map: PlaneMap;
831
+ mapInfo: NonNullable<ReturnType<typeof findAdcodeInfo>>;
832
+ z: number;
833
+ cX: number;
834
+ cY: number;
835
+ depth: number;
836
+ controls?: {
837
+ lookAt: [number, number, number, number, number, number];
838
+ polarAngle: number;
839
+ azimuthAngle: number;
840
+ };
841
+ userControls?: {
842
+ lookAt: [number, number, number, number, number, number];
843
+ polarAngle: number;
844
+ azimuthAngle: number;
845
+ };
846
+ };
847
+ get map(): PlaneMap;
848
+ get mapInfo(): {
849
+ adcode: number;
850
+ lng: number;
851
+ lat: number;
852
+ name: string;
853
+ level: string;
854
+ parent: number;
855
+ c: number[];
856
+ b: number[];
857
+ };
858
+ get mapArea(): ExtrudePolygon[];
859
+ get mapLine(): Line[];
860
+ get adcodes(): number[];
861
+ activePlaneMap: PlaneMap | null;
862
+ isAnimating: boolean;
863
+ parentBg: PlaneMap[];
864
+ continentsBg?: ContinentsBg;
865
+ group: Group;
866
+ projection: ReturnType<typeof getProjection_2>;
867
+ pcenter: [number, number];
868
+ pscale: number;
869
+ meters: number;
870
+ cityVis: city[];
871
+ extendsOptions: Record<string, any>;
872
+ setOptions(options: MapOptions): void;
873
+ initSettingsObj: Record<string, any>;
874
+ handleSetting(key: string, value: any): Promise<any>;
875
+ init(): Promise<void>;
876
+ initCityVis(adcode: number, grey?: boolean): Promise<city>;
877
+ initCityOnMap(adcode: number): Promise<void>;
878
+ initVisBg(): Promise<void>;
879
+ initVis(adcode: number): Promise<void>;
880
+ loaderAddBg(): void;
881
+ initMaterialBg(): Promise<void>;
882
+ consoleMousePostion(): void;
883
+ setAreaMaterialByProperty(key: string, value: any, ops: {
884
+ color?: string;
885
+ emissive?: string;
886
+ emissiveIntensity?: number;
887
+ } | 'origin'): void;
888
+ setLineMaterialByProperty(key: string, value: any, ops: {
889
+ color?: string;
890
+ width?: number;
891
+ } | 'origin'): void;
892
+ addAreaPlaneByProperty(key: string, value: any, options: {
893
+ material?: ConstructorParameters<typeof THREE.MeshBasicMaterial>[0];
894
+ lineMaterial?: ConstructorParameters<typeof MeshLineMaterial>[0];
895
+ sideMaterial?: ConstructorParameters<typeof THREE.MeshBasicMaterial>[0];
896
+ depth?: number;
897
+ lineBloom?: boolean;
898
+ topSegments?: number;
899
+ area?: string;
900
+ line?: string;
901
+ }): Promise<PlaneMap | undefined>;
902
+ caId: string | number | undefined;
903
+ showAction(): Promise<void>;
904
+ hide(): Promise<void>;
905
+ shadowMapLight?: BaseObject;
906
+ planeShadow?: BaseObject;
907
+ shadowMapEnabled(): Promise<void>;
908
+ shadowMapDisabled(): void;
909
+ getOptionsDepth(adcode: number): number;
910
+ getDepth(adcode: number, futureBox: number[]): number;
911
+ getReferenceScale(bboxa: number[], bboxb: number[]): number;
912
+ getAdcodeShowLevel(adcode: number, fix?: boolean): string | undefined;
913
+ handleClick(area?: ExtrudePolygon): void;
914
+ beforeShowMap(adcodes: number[]): boolean;
915
+ getAdcodes(adcode: number): number[];
916
+ showMap({ adcode, adcodes: prevAdcodes, duration, }: {
917
+ adcode?: number;
918
+ adcodes?: number[];
919
+ duration?: number;
920
+ }): Promise<void>;
921
+ drawLabels(): Promise<void>;
922
+ eraseLabels(): void;
923
+ geAdcodePosition(adcode: number): [number, number, number] | undefined;
924
+ getLocationPosition(location: [number, number]): [number, number, number];
925
+ /**
926
+ * 设置物体在平面地图上的位置
927
+ * @param object - 要设置的物体
928
+ * @param location - 经纬度 [经度, 纬度]
929
+ * @param height - 距离地图平面的高度,默认为0
930
+ */
931
+ setObjectOnMap(object: BaseObject, location: [number, number], height?: number): void;
932
+ setObjectOnMapAreaByProperty(object: BaseObject, key: string, value: any, height?: number): void;
933
+ getAdcodeScreenPosition(adcode: number): {
934
+ x: number;
935
+ y: number;
936
+ } | undefined;
937
+ booleanPointInCn(location: [number, number]): boolean;
938
+ /**
939
+ * 判断经纬度是否在当前地图板块内
940
+ * @param location - 经纬度坐标 [经度, 纬度]
941
+ * @param adcode - 可选,指定板块的行政区划代码,不传则使用当前地图的adcode
942
+ * @returns 是否在板块内
943
+ */
944
+ booleanPointInMap(location: [number, number], adcode?: number): boolean;
945
+ private getGeojson;
946
+ handleDrillDown({ adcode, duration, handleLook, saveBackCamvasState, extrudelineBloom, }: {
947
+ adcode: number;
948
+ duration?: number;
949
+ handleLook?: boolean;
950
+ saveBackCamvasState?: boolean;
951
+ extrudelineBloom?: boolean;
952
+ }): Promise<void>;
953
+ saveCamvasState(type: 'userControls' | 'controls', index: number): void;
954
+ fixNear(adcode: number): void;
955
+ fitTo(obj?: BaseObject, { polarAngle, azimuthAngle, z, handleStart, adcode, enableTransition, }?: {
956
+ adcode?: number;
957
+ polarAngle?: number;
958
+ azimuthAngle?: number;
959
+ enableTransition?: boolean;
960
+ z?: number;
961
+ handleStart?: () => void;
962
+ }): Promise<void>;
963
+ drawPlaneMap({ geojson, extrudeLineGeojson, bbox, depth, extrudelineBloom, adcode, }: {
964
+ geojson: GeoJSON_4;
965
+ extrudeLineGeojson?: GeoJSON_4;
966
+ bbox?: number[];
967
+ depth: number;
968
+ adcode: number;
969
+ extrudelineBloom?: boolean;
970
+ }): Promise<PlaneMap>;
971
+ handleBack({ duration, handleLookBack, keepOne, }?: {
972
+ duration?: number | undefined;
973
+ handleLookBack?: boolean | undefined;
974
+ keepOne?: boolean | undefined;
975
+ }): Promise<void>;
976
+ handleLookBack(duration?: number): Promise<void>;
977
+ compareLocations(currentO: any[], destinationO: any[]): number[];
978
+ setAdcode({ adcodes, duration, }: {
979
+ adcodes: number[];
980
+ duration?: number;
981
+ }): Promise<void>;
982
+ setPadding(padding: number[], fitTo?: boolean, enableTransition?: boolean): void;
983
+ findAdcodeInfo(adcode: number): {
984
+ adcode: number;
985
+ lng: number;
986
+ lat: number;
987
+ name: string;
988
+ level: string;
989
+ parent: number;
990
+ c: number[];
991
+ b: number[];
992
+ } | undefined;
993
+ dispose(): void;
994
+ }
995
+ export { Map_2 as Map }
996
+
997
+ declare interface MapCityOptions extends MapOptions {
998
+ cacheCity?: boolean;
999
+ nearbyCities?: boolean | 'full';
1000
+ showBuilding?: boolean;
1001
+ buildingSideGradient?: boolean;
1002
+ showRoad?: boolean;
1003
+ showGrassland?: boolean;
1004
+ showRiver?: boolean;
1005
+ setWaterMaterial?: boolean;
1006
+ showCityOnMapInnerLine?: boolean;
1007
+ bloom?: boolean;
1008
+ citySSAO?: boolean;
1009
+ }
1010
+
1011
+ export declare interface MapEventHandlers {
1012
+ [key: string]: (...args: any[]) => void;
1013
+ }
1014
+
1015
+ /**
1016
+ * MapManager - 地图管理类
1017
+ */
1018
+ export declare class MapManager {
1019
+ private container;
1020
+ private controlsContainer?;
1021
+ private assetsPrefix?;
1022
+ private fixConfig?;
1023
+ private raycasterPointsThreshold;
1024
+ private readonly MAX_ZOOM_FACTOR;
1025
+ private readonly MIN_ZOOM_FACTOR;
1026
+ private mapInstances;
1027
+ private mapDistances;
1028
+ private mapConfigs;
1029
+ private currentMap;
1030
+ private currentZoom;
1031
+ private mapPadding;
1032
+ private isInitializing;
1033
+ private rmTemplateIdentifier;
1034
+ private geojsonExtensions;
1035
+ private groups;
1036
+ private eventHandlers;
1037
+ private areaCloseTimer;
1038
+ static findAdcodeInfoByName: (name: string) => {
1039
+ adcode: number;
1040
+ lng: number;
1041
+ lat: number;
1042
+ name: string;
1043
+ level: string;
1044
+ parent: number;
1045
+ c: number[];
1046
+ b: number[];
1047
+ } | undefined;
1048
+ static getAdcodeShowLevel: (adcode: number, fix?: boolean) => string | undefined;
1049
+ static findAdcodeInfo: (adcode: number) => {
1050
+ adcode: number;
1051
+ lng: number;
1052
+ lat: number;
1053
+ name: string;
1054
+ level: string;
1055
+ parent: number;
1056
+ c: number[];
1057
+ b: number[];
1058
+ } | undefined;
1059
+ static extendsAdcodeAll: (cb: any) => void;
1060
+ constructor(config: MapManagerConfig);
1061
+ /**
1062
+ * 设置事件处理器
1063
+ */
1064
+ setEventHandlers(handlers: MapEventHandlers): void;
1065
+ /**
1066
+ * 触发事件
1067
+ */
1068
+ emit<K extends keyof MapEventHandlers>(eventName: K, ...args: Parameters<MapEventHandlers[K]>): void;
1069
+ /**
1070
+ * 获取当前地图实例
1071
+ */
1072
+ getCurrentMap(): Map_2 | null;
1073
+ /**
1074
+ * 获取当前缩放级别
1075
+ */
1076
+ getCurrentZoom(): number;
1077
+ /**
1078
+ * 初始化地图
1079
+ */
1080
+ initMap(adcodeArr: number[], fixedAdcode?: boolean): Promise<Map_2 | null | undefined>;
1081
+ /**
1082
+ * 创建地图实例
1083
+ */
1084
+ private createMapInstance;
1085
+ /**
1086
+ * 应用地图修复配置
1087
+ */
1088
+ private applyFixConfig;
1089
+ /**
1090
+ * 绑定区域交互事件
1091
+ */
1092
+ private bindAreaEvents;
1093
+ /**
1094
+ * 设置缩放级别
1095
+ */
1096
+ setZoom(zoom: number): void;
1097
+ /**
1098
+ * 创建分组
1099
+ * @param groupId 分组ID,用于后续管理
1100
+ * @returns 分组实例
1101
+ */
1102
+ createGroup(groupId: string): Promise<Awaited<ReturnType<Map_2['addGroup']>> | null>;
1103
+ /**
1104
+ * 获取分组
1105
+ */
1106
+ getGroup(groupId: string): Awaited<ReturnType<Map_2['addGroup']>> | undefined;
1107
+ /**
1108
+ * 清除指定分组
1109
+ */
1110
+ clearGroup(groupId: string): void;
1111
+ /**
1112
+ * 清除所有分组
1113
+ */
1114
+ clearAllGroups(): void;
1115
+ /**
1116
+ * 清除区域关闭定时器(供 PortalModal 调用)
1117
+ */
1118
+ clearAreaCloseTimer(): void;
1119
+ triggerAreaLeave({ areaName }?: {
1120
+ areaName: string;
1121
+ }): void;
1122
+ /**
1123
+ * 销毁所有地图实例
1124
+ */
1125
+ dispose(): void;
1126
+ }
1127
+
1128
+ export declare interface MapManagerConfig {
1129
+ container: HTMLDivElement;
1130
+ controlsContainer?: HTMLDivElement;
1131
+ assetsPrefix?: string;
1132
+ fixConfig?: FixConfig;
1133
+ raycasterPointsThreshold?: number;
1134
+ mapPadding?: [number, number, number, number];
1135
+ rmTemplateIdentifier?: boolean;
1136
+ geojsonExtensions?: Record<string, any[]>;
1137
+ }
1138
+
1139
+ declare interface MapOptions extends BaseOptions {
1140
+ adcode: number;
1141
+ center?: [number, number];
1142
+ parentBg?: boolean | number;
1143
+ parentBgDepth?: number;
1144
+ topSegments?: number;
1145
+ continentsBg?: boolean;
1146
+ continentsBgDepth?: number;
1147
+ clickOusideBack?: boolean;
1148
+ mapDepth?: number[];
1149
+ depthReference?: number[];
1150
+ mapPadding?: number[];
1151
+ geojsonMap?: Record<string, GeoJSON_4>;
1152
+ extrudeLineGeojsonMap?: Record<string, GeoJSON_4>;
1153
+ fixGeojson?: Record<string, string>;
1154
+ plateInCenter?: boolean;
1155
+ clickHandleDrillDown?: boolean;
1156
+ drillDownPlateInCenter?: boolean;
1157
+ drillDownHideParent?: boolean;
1158
+ drillDownRestrictions?: 'city' | 'district';
1159
+ drillDownSecondLevelMats?: boolean;
1160
+ drillDownThirdLevelMats?: boolean;
1161
+ showDistrict?: boolean;
1162
+ showLabel?: boolean | 'lite';
1163
+ lineWidth?: number;
1164
+ lineOffset?: number;
1165
+ extrudeLineWidth?: number;
1166
+ extrudeLine?: boolean;
1167
+ equirectangular?: boolean;
1168
+ winkel3?: boolean;
1169
+ projectionType?: 'mercator' | 'equirectangular' | 'winkel3';
1170
+ polarAngle?: number;
1171
+ azimuthAngle?: number;
1172
+ showOneLevel?: boolean;
1173
+ handleBackKeepCamvasState?: boolean;
1174
+ worldPacificCentre?: boolean;
1175
+ mapBoundary?: boolean;
1176
+ mergeSide?: boolean;
1177
+ style?: 'map2Base' | 'map2CityOnMap';
1178
+ bottomPlane?: boolean;
1179
+ bottomPlaneWater?: boolean;
1180
+ geojsonExtensions?: Record<string, GeoJSON_4 | string | number | (GeoJSON_4 | string | number)[]>;
1181
+ }
1182
+
1183
+ declare class Model extends BaseObject {
1184
+ options: Options_5;
1185
+ mixer: THREE.AnimationMixer | null;
1186
+ clips: THREE.AnimationClip[];
1187
+ actions: THREE.AnimationAction[];
1188
+ actionStates: Record<string, boolean>;
1189
+ constructor(options: Options_5);
1190
+ create(): Promise<void>;
1191
+ render(): void;
1192
+ /**
1193
+ * Set animation clips for the model
1194
+ * @param clips Array of animation clips from GLTF
1195
+ */
1196
+ setClips(clips: THREE.AnimationClip[]): void;
1197
+ /**
1198
+ * Play all animation clips
1199
+ */
1200
+ playAllClips(): void;
1201
+ /**
1202
+ * Play a specific animation clip by name
1203
+ * @param clipName Name of the animation clip to play
1204
+ */
1205
+ playClip(clipName: string): void;
1206
+ /**
1207
+ * Stop a specific animation clip by name
1208
+ * @param clipName Name of the animation clip to stop
1209
+ */
1210
+ stopClip(clipName: string): void;
1211
+ /**
1212
+ * Stop all animation clips
1213
+ */
1214
+ stopAllClips(): void;
1215
+ /**
1216
+ * Set the playback speed for all animations
1217
+ * @param speed Playback speed (1.0 = normal speed)
1218
+ */
1219
+ setPlaybackSpeed(speed: number): void;
1220
+ /**
1221
+ * Get the current playback speed
1222
+ */
1223
+ getPlaybackSpeed(): number;
1224
+ /**
1225
+ * Check if a specific animation is playing
1226
+ * @param clipName Name of the animation clip
1227
+ */
1228
+ isPlaying(clipName: string): boolean;
1229
+ /**
1230
+ * Get all available animation clip names
1231
+ */
1232
+ getClipNames(): string[];
1233
+ /**
1234
+ * Update animations - should be called in render loop
1235
+ * @param deltaTime Time elapsed since last frame
1236
+ */
1237
+ update(deltaTime: number): void;
1238
+ /**
1239
+ * Dispose of resources including animation mixer
1240
+ */
1241
+ dispose(): void;
1242
+ }
1243
+
1244
+ declare const objs: {
1245
+ Plane: typeof Plane;
1246
+ CrossPlane: typeof CrossPlane;
1247
+ PlaneShadow: typeof PlaneShadow;
1248
+ Ring: typeof Ring;
1249
+ Sphere: typeof Sphere;
1250
+ Sprite: typeof Sprite;
1251
+ Tetrahedron: typeof Tetrahedron;
1252
+ Torus: typeof Torus;
1253
+ TorusKnot: typeof TorusKnot;
1254
+ Tube: typeof Tube;
1255
+ Box: typeof Box;
1256
+ Capsule: typeof Capsule;
1257
+ Circle: typeof Circle;
1258
+ Cylinder: typeof Cylinder;
1259
+ Dodecahedron: typeof Dodecahedron;
1260
+ Icosahedron: typeof Icosahedron;
1261
+ Lathe: typeof Lathe;
1262
+ Octahedron: typeof Octahedron;
1263
+ Node: typeof Node_2;
1264
+ Line: typeof Line;
1265
+ Line2: typeof Line2;
1266
+ ExtrudePolygon: typeof ExtrudePolygon;
1267
+ ConicPolygon: typeof ConicPolygon;
1268
+ Group: typeof Group;
1269
+ Light: typeof Light;
1270
+ Point: typeof Point;
1271
+ Arc: typeof Arc;
1272
+ Model: typeof Model;
1273
+ };
1274
+
1275
+ declare const objs_2: {
1276
+ Building: typeof Building;
1277
+ Road: typeof Road;
1278
+ Area: typeof Area;
1279
+ CityPlane: typeof CityPlane;
1280
+ Target: typeof Target;
1281
+ Plane: Plane;
1282
+ CrossPlane: CrossPlane;
1283
+ PlaneShadow: PlaneShadow;
1284
+ Ring: Ring;
1285
+ Sphere: Sphere;
1286
+ Sprite: Sprite;
1287
+ Tetrahedron: Tetrahedron;
1288
+ Torus: Torus;
1289
+ TorusKnot: TorusKnot;
1290
+ Tube: Tube;
1291
+ Box: Box;
1292
+ Capsule: Capsule;
1293
+ Circle: Circle;
1294
+ Cylinder: Cylinder;
1295
+ Dodecahedron: Dodecahedron;
1296
+ Icosahedron: Icosahedron;
1297
+ Lathe: Lathe;
1298
+ Octahedron: Octahedron;
1299
+ Node: Node_2;
1300
+ Line: Line;
1301
+ Line2: Line2;
1302
+ ExtrudePolygon: ExtrudePolygon;
1303
+ ConicPolygon: ConicPolygon;
1304
+ Group: Group;
1305
+ Light: Light;
1306
+ Point: Point;
1307
+ Arc: Arc;
1308
+ Model: Model;
1309
+ };
1310
+
1311
+ declare const objs_3: {
1312
+ Earth: typeof Earth_2;
1313
+ SphereShadow: typeof SphereShadow;
1314
+ Countries: typeof PlaneMap;
1315
+ Plane: Plane;
1316
+ CrossPlane: CrossPlane;
1317
+ PlaneShadow: PlaneShadow;
1318
+ Ring: Ring;
1319
+ Sphere: Sphere;
1320
+ Sprite: Sprite;
1321
+ Tetrahedron: Tetrahedron;
1322
+ Torus: Torus;
1323
+ TorusKnot: TorusKnot;
1324
+ Tube: Tube;
1325
+ Box: Box;
1326
+ Capsule: Capsule;
1327
+ Circle: Circle;
1328
+ Cylinder: Cylinder;
1329
+ Dodecahedron: Dodecahedron;
1330
+ Icosahedron: Icosahedron;
1331
+ Lathe: Lathe;
1332
+ Octahedron: Octahedron;
1333
+ Node: Node_2;
1334
+ Line: Line;
1335
+ Line2: Line2;
1336
+ ExtrudePolygon: ExtrudePolygon;
1337
+ ConicPolygon: ConicPolygon;
1338
+ Group: Group;
1339
+ Light: Light;
1340
+ Point: Point;
1341
+ Arc: Arc;
1342
+ Model: Model;
1343
+ };
1344
+
1345
+ declare const objs_4: {
1346
+ PlaneMap: typeof PlaneMap;
1347
+ CityPlane: typeof CityPlane;
1348
+ ContinentsBg: typeof ContinentsBg;
1349
+ Mountain: typeof PlaneMap_2;
1350
+ Plane: Plane;
1351
+ CrossPlane: CrossPlane;
1352
+ PlaneShadow: PlaneShadow;
1353
+ Ring: Ring;
1354
+ Sphere: Sphere;
1355
+ Sprite: Sprite;
1356
+ Tetrahedron: Tetrahedron;
1357
+ Torus: Torus;
1358
+ TorusKnot: TorusKnot;
1359
+ Tube: Tube;
1360
+ Box: Box;
1361
+ Capsule: Capsule;
1362
+ Circle: Circle;
1363
+ Cylinder: Cylinder;
1364
+ Dodecahedron: Dodecahedron;
1365
+ Icosahedron: Icosahedron;
1366
+ Lathe: Lathe;
1367
+ Octahedron: Octahedron;
1368
+ Node: Node_2;
1369
+ Line: Line;
1370
+ Line2: Line2;
1371
+ ExtrudePolygon: ExtrudePolygon;
1372
+ ConicPolygon: ConicPolygon;
1373
+ Group: Group;
1374
+ Light: Light;
1375
+ Point: Point;
1376
+ Arc: Arc;
1377
+ Model: Model;
1378
+ };
1379
+
1380
+ declare class Octahedron extends BaseObject {
1381
+ create(): void;
1382
+ }
1383
+
1384
+ declare interface Opt {
1385
+ scale?: number;
1386
+ }
1387
+
1388
+ declare interface Options {
1389
+ material?: THREE.Material;
1390
+ key?: string;
1391
+ }
1392
+
1393
+ declare interface Options_10 {
1394
+ jsonUrl: string;
1395
+ projection: {
1396
+ center: [number, number];
1397
+ scale: number;
1398
+ };
1399
+ material: THREE.Material;
1400
+ type: string;
1401
+ cacheKey?: string;
1402
+ oArr?: number[];
1403
+ }
1404
+
1405
+ declare interface Options_11 {
1406
+ width: number;
1407
+ height: number;
1408
+ material?: THREE.Material;
1409
+ color?: string;
1410
+ map?: THREE.Texture | null;
1411
+ }
1412
+
1413
+ declare interface Options_12 {
1414
+ radius?: number;
1415
+ rotationY?: number;
1416
+ }
1417
+
1418
+ declare interface Options_13 {
1419
+ radius?: number;
1420
+ }
1421
+
1422
+ declare interface Options_14 {
1423
+ areaGroup?: boolean;
1424
+ geojson: GeoJSON_2;
1425
+ projection?: {
1426
+ center: [number, number];
1427
+ scale: number;
1428
+ rotate?: [number, number];
1429
+ projectionType?: 'mercator' | 'equirectangular' | 'winkel3';
1430
+ };
1431
+ extrudeLineGeojson?: GeoJSON_2;
1432
+ hasSide?: boolean;
1433
+ hasTop?: boolean;
1434
+ mergeSide?: boolean;
1435
+ hasLine?: boolean;
1436
+ start?: number;
1437
+ depth?: number;
1438
+ lineOffset?: number;
1439
+ bbox?: number[];
1440
+ topSegments?: number;
1441
+ conic?: boolean;
1442
+ materialOptions: {
1443
+ topMat: THREE.Material;
1444
+ sideMat?: THREE.Material;
1445
+ lineMat?: MeshLineMaterial;
1446
+ extrudeLineMat?: MeshLineMaterial;
1447
+ bgTopMat?: THREE.Material;
1448
+ bgSideMat?: THREE.Material;
1449
+ bgLineMat?: MeshLineMaterial;
1450
+ bgExtrudeLineMat?: MeshLineMaterial;
1451
+ };
1452
+ onTop?: number;
1453
+ bloom?: boolean;
1454
+ }
1455
+
1456
+ declare interface Options_15 {
1457
+ scale: number;
1458
+ depth: number;
1459
+ }
1460
+
1461
+ declare interface Options_16 {
1462
+ geojson: GeoJSON_3;
1463
+ projection: {
1464
+ center: [number, number];
1465
+ scale: number;
1466
+ rotate?: [number, number];
1467
+ projectionType?: 'mercator' | 'equirectangular' | 'winkel3';
1468
+ };
1469
+ depth?: number;
1470
+ bbox?: number[];
1471
+ }
1472
+
1473
+ declare interface Options_2 {
1474
+ path?: THREE.Curve<THREE.Vector3>;
1475
+ radius?: number;
1476
+ multiplyScalar?: number;
1477
+ }
1478
+
1479
+ declare interface Options_3 {
1480
+ sprite?: boolean;
1481
+ }
1482
+
1483
+ declare interface Options_4 {
1484
+ from: number[];
1485
+ to: number[];
1486
+ radius?: number;
1487
+ globe?: boolean;
1488
+ color?: string;
1489
+ lineWidth?: number;
1490
+ offsetLoop?: boolean;
1491
+ key?: string;
1492
+ }
1493
+
1494
+ declare interface Options_5 {
1495
+ src?: string;
1496
+ autoPlay?: boolean;
1497
+ playbackSpeed?: number;
1498
+ }
1499
+
1500
+ declare interface Options_6 {
1501
+ visFactories?: Base;
1502
+ }
1503
+
1504
+ declare interface Options_7 {
1505
+ visFactories?: Base;
1506
+ assetsPrefix?: string;
1507
+ processUndosMaxFrameTime?: number;
1508
+ }
1509
+
1510
+ declare interface Options_8 {
1511
+ jsonUrl: string;
1512
+ projection: {
1513
+ center: [number, number];
1514
+ scale: number;
1515
+ };
1516
+ cacheKey?: string;
1517
+ material?: THREE.Material | THREE.Material[];
1518
+ meters?: number;
1519
+ hasSide?: boolean;
1520
+ sideGradient?: boolean;
1521
+ grey?: boolean;
1522
+ }
1523
+
1524
+ declare interface Options_9 {
1525
+ jsonUrl: string;
1526
+ projection: {
1527
+ center: [number, number];
1528
+ scale: number;
1529
+ };
1530
+ cacheKey?: string;
1531
+ meters?: number;
1532
+ grey?: boolean;
1533
+ }
1534
+
1535
+ declare class Plane extends BaseObject {
1536
+ create(): void;
1537
+ }
1538
+
1539
+ declare class PlaneMap extends BaseObject {
1540
+ options: Required<Omit<Options_14, 'bbox' | 'extrudeLineGeojson'>> & Pick<Options_14, 'bbox' | 'extrudeLineGeojson'>;
1541
+ isActive: boolean;
1542
+ groupArr: Group[];
1543
+ areaArr: ExtrudePolygon[];
1544
+ lineArr: Line[];
1545
+ mergeSideArea: ExtrudePolygon | null;
1546
+ extrudelineArr?: Line[];
1547
+ splitPolygons: number;
1548
+ constructor(options: Options_14);
1549
+ create(): Promise<void>;
1550
+ addArea(geojson: GeoJSON_2, options: {
1551
+ material: THREE.Material | THREE.Material[];
1552
+ bbox?: number[];
1553
+ areaGroup?: boolean;
1554
+ hasSide?: boolean;
1555
+ hasTop?: boolean;
1556
+ onTop?: number;
1557
+ castShadow?: boolean;
1558
+ }): Promise<ExtrudePolygon[]>;
1559
+ addLine(geojson: GeoJSON_2, options: {
1560
+ material?: MeshLineMaterial;
1561
+ onTop?: number;
1562
+ areaGroup?: boolean;
1563
+ }): Promise<Line[]>;
1564
+ getPropertiesKey(properties: Record<string, any>): string;
1565
+ geojson2Meta(geojson: GeoJSON_2): {
1566
+ coords: Position[][];
1567
+ properties: GeoJsonProperties;
1568
+ }[];
1569
+ update(delta: number, elapsed: number): void;
1570
+ findGroup(adcode: string | number, fix?: boolean): Group | undefined;
1571
+ setAreaMaterial(key: string, material: THREE.Material[] | THREE.Material): void;
1572
+ useAreaMaterial(key: string): void;
1573
+ setLineMaterial(key: string, material: THREE.Material): void;
1574
+ useLineMaterial(key: string): void;
1575
+ setExtrudeLineMaterial(key: string, material: THREE.Material): void;
1576
+ useExtrudeLineMaterial(key: string): void;
1577
+ changeLineAnimateParams({ speed, extrude, }: {
1578
+ speed?: number;
1579
+ extrude?: boolean;
1580
+ }): void;
1581
+ deactive(): void;
1582
+ render(): void;
1583
+ toggleExtrudelineBloom(s: boolean): void;
1584
+ active(): void;
1585
+ dispose(): void;
1586
+ }
1587
+
1588
+ declare class PlaneMap_2 extends BaseObject {
1589
+ options: Required<Omit<Options_16, 'bbox'>> & Pick<Options_16, 'bbox'>;
1590
+ extrudePolygon: ExtrudePolygon;
1591
+ constructor(options: Options_16);
1592
+ geojson2Meta(geojson: GeoJSON_3): {
1593
+ coords: Position[][];
1594
+ properties: GeoJsonProperties;
1595
+ }[];
1596
+ create(): Promise<void>;
1597
+ setNoise(geometry: THREE.BufferGeometry, image: HTMLImageElement, maxHeight?: number): void;
1598
+ render(): void;
1599
+ dispose(): void;
1600
+ }
1601
+
1602
+ declare class PlaneShadow extends BaseObject {
1603
+ create(): Promise<void>;
1604
+ }
1605
+
1606
+ declare class Point extends BaseObject {
1607
+ options: Options_3;
1608
+ constructor(options: Options_3);
1609
+ get material(): THREE.SpriteMaterial | THREE.MeshBasicMaterial;
1610
+ getMaterial(): THREE.SpriteMaterial | THREE.MeshBasicMaterial;
1611
+ create(): Promise<void>;
1612
+ scaleValue: number;
1613
+ setScale(n: number): void;
1614
+ }
1615
+
1616
+ /**
1617
+ * 移除摄像机历史记录
1618
+ * @param u 历史记录数组
1619
+ */
1620
+ export declare const removeCameraHistory: (u: any) => any;
1621
+
1622
+ declare class Ring extends BaseObject {
1623
+ create(): void;
1624
+ }
1625
+
1626
+ declare class Road extends BaseObject {
1627
+ options: Options_9;
1628
+ constructor(options: Options_9);
1629
+ linePrimary: Line[];
1630
+ lineSecondary: Line[];
1631
+ create(): Promise<void>;
1632
+ dispose(): void;
1633
+ }
1634
+
1635
+ declare interface SelectedMeta {
1636
+ name: string;
1637
+ key: string;
1638
+ object: THREE.Mesh;
1639
+ baseObject: BaseObject;
1640
+ useMaterialType: string;
1641
+ visible: boolean;
1642
+ disabledC: boolean;
1643
+ disabledR: boolean;
1644
+ disabledTC: boolean;
1645
+ disabledVisible: boolean;
1646
+ children: SelectedMeta[];
1647
+ }
1648
+
1649
+ declare const sinusoidalInOut: ({ onUpdate, onComplete, backwards, }?: {
1650
+ onUpdate?: ((v: number) => void) | undefined;
1651
+ onComplete?: (() => void) | undefined;
1652
+ backwards?: boolean | undefined;
1653
+ }) => {
1654
+ start: ({ duration, repeat, repeatResolve, repeatDelay, }?: {
1655
+ duration?: number | undefined;
1656
+ repeat?: number | undefined;
1657
+ repeatResolve?: number | undefined;
1658
+ repeatDelay?: number | undefined;
1659
+ }) => Promise<any>;
1660
+ stop: () => void;
1661
+ };
1662
+
1663
+ declare class Sphere extends BaseObject {
1664
+ radius: number;
1665
+ material?: THREE.Material;
1666
+ options?: any;
1667
+ create(): void;
1668
+ }
1669
+
1670
+ declare class SphereShadow extends BaseObject {
1671
+ options: Required<Options_13>;
1672
+ constructor(options: Options_13);
1673
+ create(): Promise<void>;
1674
+ }
1675
+
1676
+ declare class Sprite extends BaseObject {
1677
+ create(): void;
1678
+ setDesiredPixelSize(size: number): void;
1679
+ }
1680
+
1681
+ declare class Target extends BaseObject {
1682
+ options: Opt;
1683
+ time: {
1684
+ value: number;
1685
+ };
1686
+ offset: THREE.Vector2;
1687
+ timer: ReturnType<typeof setTimeout> | null;
1688
+ inTween: TWEEN.Tween<any> | null;
1689
+ outTween: TWEEN.Tween<any> | null;
1690
+ constructor(options: Opt);
1691
+ createWave(color: string): THREE.Mesh<THREE.PlaneGeometry, THREE.ShaderMaterial, THREE.Object3DEventMap>;
1692
+ createRipple(texture: THREE.Texture): THREE.Mesh<THREE.CylinderGeometry, THREE.ShaderMaterial, THREE.Object3DEventMap>;
1693
+ createCylinder(texture: THREE.Texture): THREE.Object3D<THREE.Object3DEventMap>;
1694
+ createTorus(color: string): THREE.Mesh<THREE.TorusGeometry, THREE.MeshBasicMaterial, THREE.Object3DEventMap>;
1695
+ create(): Promise<void>;
1696
+ erase(): void;
1697
+ update(delta: number, elapsed: number): void;
1698
+ }
1699
+
1700
+ declare class Tetrahedron extends BaseObject {
1701
+ create(): void;
1702
+ }
1703
+
1704
+ export { THREE }
1705
+
1706
+ declare const timeOut: (ms: number) => Promise<any>;
1707
+
1708
+ declare class Torus extends BaseObject {
1709
+ create(): void;
1710
+ }
1711
+
1712
+ declare class TorusKnot extends BaseObject {
1713
+ create(): void;
1714
+ }
1715
+
1716
+ declare class Tube extends BaseObject {
1717
+ options: Options_2;
1718
+ constructor(options: Options_2);
1719
+ create(): void;
1720
+ }
1721
+
1722
+ export { TWEEN }
1723
+
1724
+ export declare const VERSION = "0.30.0-beta.70";
1725
+
1726
+ declare class Viewport {
1727
+ editor: Editor;
1728
+ vis?: Base;
1729
+ extendsOptions: Record<string, any>;
1730
+ cameraState: Record<string, number[]>;
1731
+ delLoadObj?: string[];
1732
+ options: Options_6;
1733
+ constructor(editor: Editor, options: Options_6);
1734
+ setSaveCamera(type: string): void;
1735
+ addVis(type: string, options?: Record<string, any>): Promise<void>;
1736
+ replaceVis(): boolean;
1737
+ setVis(type: string, options?: Record<string, any>): Promise<void>;
1738
+ setResetCameraUp(): void;
1739
+ initEvent(): void;
1740
+ addObj(type: string, options?: Record<string, any>): Promise<void>;
1741
+ removeObj(uuid?: string): Promise<void>;
1742
+ private copyObjKey;
1743
+ copyObj(key: string): void;
1744
+ clearCopyObj(): void;
1745
+ pasteObj(): Promise<void>;
1746
+ copyMListMaterial(key: string): Promise<void>;
1747
+ clearCopyMListMaterial(): Promise<void>;
1748
+ pasteMListMaterial(): Promise<void>;
1749
+ pasteMListMaterial2Replace(replaceKey: string): Promise<void>;
1750
+ addMListMaterial(material?: string | Record<string, any>, object3d?: THREE.Mesh, slot?: number): Promise<string | undefined>;
1751
+ removeMListMaterial(key: string): Promise<void>;
1752
+ setExtendsOptions(name: string, value: any): void;
1753
+ toJSON(): {
1754
+ eo: Record<string, any>;
1755
+ cs: Record<string, number[]>;
1756
+ delLoadObj: string[] | undefined;
1757
+ };
1758
+ fromJSON(json: any): void;
1759
+ getLoadObj(): string[];
1760
+ setTransformControlsModal(modal: 'translate' | 'rotate' | 'scale'): void;
1761
+ dispose(): void;
1762
+ }
1763
+
1764
+ export { }
1765
+
1766
+
1767
+
1768
+ declare module '@turf/turf' {
1769
+ export function point(...args: any[]): any;
1770
+ export function polygon(...args: any[]): any;
1771
+ export function booleanPointInPolygon(...args: any[]): boolean;
1772
+ export function center(...args: any[]): any;
1773
+ export function centroid(...args: any[]): any;
1774
+ export function bbox(...args: any[]): any;
1775
+ export function union(...args: any[]): any;
1776
+ }