@openglobus/og 0.11.8 → 0.12.4

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 (197) hide show
  1. package/css/og.css +2 -0
  2. package/dist/@openglobus/og.css +1 -0
  3. package/dist/@openglobus/og.esm.js +21 -0
  4. package/dist/@openglobus/og.esm.js.map +1 -0
  5. package/dist/@openglobus/og.umd.js +21 -0
  6. package/dist/@openglobus/og.umd.js.map +1 -0
  7. package/package.json +11 -11
  8. package/src/og/Globe.js +18 -6
  9. package/src/og/camera/Camera.js +70 -79
  10. package/src/og/camera/PlanetCamera.js +25 -30
  11. package/src/og/control/DebugInfo.js +2 -2
  12. package/src/og/control/EarthNavigation.js +26 -17
  13. package/src/og/control/MouseNavigation.js +11 -13
  14. package/src/og/control/MouseWheelZoomControl.js +5 -5
  15. package/src/og/control/Sun.js +3 -3
  16. package/src/og/entity/Entity.js +742 -742
  17. package/src/og/entity/GeoObjectHandler.js +138 -134
  18. package/src/og/entity/LabelHandler.js +2 -1
  19. package/src/og/layer/CanvasTiles.js +8 -11
  20. package/src/og/layer/KML.js +19 -12
  21. package/src/og/layer/Layer.js +9 -2
  22. package/src/og/layer/XYZ.js +27 -28
  23. package/src/og/math/Vec3.js +18 -2
  24. package/src/og/quadTree/Node.js +48 -93
  25. package/src/og/quadTree/quadTree.js +1 -1
  26. package/src/og/renderer/Renderer.js +3 -5
  27. package/src/og/scene/Planet.js +147 -127
  28. package/src/og/segment/Segment.js +63 -136
  29. package/src/og/shaders/drawnode.js +132 -221
  30. package/src/og/shaders/geoObject.js +15 -6
  31. package/src/og/terrain/EmptyTerrain.js +3 -2
  32. package/src/og/terrain/GlobusTerrain.js +2 -0
  33. package/src/og/utils/Loader.js +1 -1
  34. package/src/og/utils/PlainSegmentWorker.js +0 -13
  35. package/src/og/webgl/Handler.js +13 -9
  36. package/types/Clock.d.ts +94 -0
  37. package/types/Deferred.d.ts +6 -0
  38. package/types/Events.d.ts +77 -0
  39. package/types/Extent.d.ts +166 -0
  40. package/types/Globe.d.ts +85 -0
  41. package/types/ImageCanvas.d.ts +123 -0
  42. package/types/Lock.d.ts +12 -0
  43. package/types/LonLat.d.ts +108 -0
  44. package/types/Popup.d.ts +42 -0
  45. package/types/QueueArray.d.ts +19 -0
  46. package/types/Rectangle.d.ts +80 -0
  47. package/types/Stack.d.ts +19 -0
  48. package/types/ajax.d.ts +24 -0
  49. package/types/arial.d.ts +48 -0
  50. package/types/astro/astro.d.ts +38 -0
  51. package/types/astro/earth.d.ts +7 -0
  52. package/types/astro/jd.d.ts +254 -0
  53. package/types/bv/Box.d.ts +30 -0
  54. package/types/bv/Sphere.d.ts +38 -0
  55. package/types/bv/index.d.ts +3 -0
  56. package/types/camera/Camera.d.ts +312 -0
  57. package/types/camera/Frustum.d.ts +133 -0
  58. package/types/camera/PlanetCamera.d.ts +219 -0
  59. package/types/camera/index.d.ts +3 -0
  60. package/types/cons.d.ts +40 -0
  61. package/types/control/CompassButton.d.ts +17 -0
  62. package/types/control/Control.d.ts +104 -0
  63. package/types/control/DebugInfo.d.ts +15 -0
  64. package/types/control/EarthCoordinates.d.ts +47 -0
  65. package/types/control/EarthNavigation.d.ts +43 -0
  66. package/types/control/GeoImageDragControl.d.ts +6 -0
  67. package/types/control/KeyboardNavigation.d.ts +21 -0
  68. package/types/control/LayerSwitcher.d.ts +21 -0
  69. package/types/control/Lighting.d.ts +16 -0
  70. package/types/control/MouseNavigation.d.ts +48 -0
  71. package/types/control/MouseWheelZoomControl.d.ts +45 -0
  72. package/types/control/ScaleControl.d.ts +22 -0
  73. package/types/control/ShowFps.d.ts +11 -0
  74. package/types/control/SimpleNavigation.d.ts +25 -0
  75. package/types/control/Sun.d.ts +50 -0
  76. package/types/control/ToggleWireframe.d.ts +12 -0
  77. package/types/control/TouchNavigation.d.ts +48 -0
  78. package/types/control/ZoomControl.d.ts +27 -0
  79. package/types/control/index.d.ts +18 -0
  80. package/types/ellipsoid/Ellipsoid.d.ts +146 -0
  81. package/types/ellipsoid/index.d.ts +3 -0
  82. package/types/ellipsoid/wgs84.d.ts +6 -0
  83. package/types/entity/BaseBillboard.d.ts +215 -0
  84. package/types/entity/Billboard.d.ts +94 -0
  85. package/types/entity/BillboardHandler.d.ts +79 -0
  86. package/types/entity/Entity.d.ts +348 -0
  87. package/types/entity/EntityCollection.d.ts +317 -0
  88. package/types/entity/GeoObject.d.ts +111 -0
  89. package/types/entity/GeoObjectHandler.d.ts +81 -0
  90. package/types/entity/Geometry.d.ts +74 -0
  91. package/types/entity/GeometryHandler.d.ts +76 -0
  92. package/types/entity/Label.d.ts +189 -0
  93. package/types/entity/LabelHandler.d.ts +31 -0
  94. package/types/entity/LabelWorker.d.ts +11 -0
  95. package/types/entity/PointCloud.d.ts +174 -0
  96. package/types/entity/PointCloudHandler.d.ts +38 -0
  97. package/types/entity/Polyline.d.ts +306 -0
  98. package/types/entity/PolylineHandler.d.ts +18 -0
  99. package/types/entity/Ray.d.ts +124 -0
  100. package/types/entity/RayHandler.d.ts +67 -0
  101. package/types/entity/ShapeHandler.d.ts +22 -0
  102. package/types/entity/Strip.d.ts +119 -0
  103. package/types/entity/StripHandler.d.ts +38 -0
  104. package/types/entity/index.d.ts +8 -0
  105. package/types/index.core.d.ts +65 -0
  106. package/types/index.d.ts +45 -0
  107. package/types/index.webgl.d.ts +7 -0
  108. package/types/input/KeyboardHandler.d.ts +10 -0
  109. package/types/input/MouseHandler.d.ts +5 -0
  110. package/types/input/TouchHandler.d.ts +5 -0
  111. package/types/input/input.d.ts +34 -0
  112. package/types/layer/BaseGeoImage.d.ts +94 -0
  113. package/types/layer/CanvasTiles.d.ts +67 -0
  114. package/types/layer/GeoImage.d.ts +52 -0
  115. package/types/layer/GeoTexture2d.d.ts +8 -0
  116. package/types/layer/GeoVideo.d.ts +55 -0
  117. package/types/layer/KML.d.ts +68 -0
  118. package/types/layer/Layer.d.ts +311 -0
  119. package/types/layer/Material.d.ts +45 -0
  120. package/types/layer/Vector.d.ts +208 -0
  121. package/types/layer/WMS.d.ts +61 -0
  122. package/types/layer/XYZ.d.ts +119 -0
  123. package/types/layer/index.d.ts +10 -0
  124. package/types/light/LightSource.d.ts +178 -0
  125. package/types/math/Line2.d.ts +11 -0
  126. package/types/math/Line3.d.ts +10 -0
  127. package/types/math/Mat3.d.ts +65 -0
  128. package/types/math/Mat4.d.ts +176 -0
  129. package/types/math/Plane.d.ts +18 -0
  130. package/types/math/Quat.d.ts +379 -0
  131. package/types/math/Ray.d.ts +82 -0
  132. package/types/math/Vec2.d.ts +309 -0
  133. package/types/math/Vec3.d.ts +467 -0
  134. package/types/math/Vec4.d.ts +162 -0
  135. package/types/math/coder.d.ts +43 -0
  136. package/types/math/index.d.ts +11 -0
  137. package/types/math.d.ts +261 -0
  138. package/types/mercator.d.ts +92 -0
  139. package/types/proj/EPSG3857.d.ts +6 -0
  140. package/types/proj/EPSG4326.d.ts +6 -0
  141. package/types/proj/Proj.d.ts +42 -0
  142. package/types/quadTree/EntityCollectionNode.d.ts +34 -0
  143. package/types/quadTree/Node.d.ts +60 -0
  144. package/types/quadTree/quadTree.d.ts +40 -0
  145. package/types/renderer/Renderer.d.ts +290 -0
  146. package/types/renderer/RendererEvents.d.ts +237 -0
  147. package/types/res/images.d.ts +3 -0
  148. package/types/scene/Axes.d.ts +11 -0
  149. package/types/scene/BaseNode.d.ts +60 -0
  150. package/types/scene/Planet.d.ts +576 -0
  151. package/types/scene/RenderNode.d.ts +142 -0
  152. package/types/scene/SkyBox.d.ts +10 -0
  153. package/types/scene/index.d.ts +4 -0
  154. package/types/segment/Segment.d.ts +275 -0
  155. package/types/segment/SegmentLonLat.d.ts +17 -0
  156. package/types/segment/Slice.d.ts +10 -0
  157. package/types/segment/segmentHelper.d.ts +13 -0
  158. package/types/shaders/billboard.d.ts +3 -0
  159. package/types/shaders/depth.d.ts +2 -0
  160. package/types/shaders/drawnode.d.ts +7 -0
  161. package/types/shaders/geoObject.d.ts +3 -0
  162. package/types/shaders/label.d.ts +4 -0
  163. package/types/shaders/pointCloud.d.ts +2 -0
  164. package/types/shaders/polyline.d.ts +3 -0
  165. package/types/shaders/ray.d.ts +2 -0
  166. package/types/shaders/screenFrame.d.ts +2 -0
  167. package/types/shaders/shape.d.ts +4 -0
  168. package/types/shaders/skybox.d.ts +2 -0
  169. package/types/shaders/toneMapping.d.ts +2 -0
  170. package/types/shapes/BaseShape.d.ts +250 -0
  171. package/types/shapes/Sphere.d.ts +41 -0
  172. package/types/terrain/BilTerrain.d.ts +7 -0
  173. package/types/terrain/EmptyTerrain.d.ts +73 -0
  174. package/types/terrain/Geoid.d.ts +26 -0
  175. package/types/terrain/GlobusTerrain.d.ts +116 -0
  176. package/types/terrain/MapboxTerrain.d.ts +7 -0
  177. package/types/terrain/index.d.ts +5 -0
  178. package/types/utils/FontAtlas.d.ts +15 -0
  179. package/types/utils/GeoImageCreator.d.ts +30 -0
  180. package/types/utils/ImagesCacheManager.d.ts +10 -0
  181. package/types/utils/Loader.d.ts +25 -0
  182. package/types/utils/NormalMapCreator.d.ts +39 -0
  183. package/types/utils/PlainSegmentWorker.d.ts +10 -0
  184. package/types/utils/TerrainWorker.d.ts +9 -0
  185. package/types/utils/TextureAtlas.d.ts +111 -0
  186. package/types/utils/VectorTileCreator.d.ts +16 -0
  187. package/types/utils/colorTable.d.ts +143 -0
  188. package/types/utils/earcut.d.ts +6 -0
  189. package/types/utils/shared.d.ts +231 -0
  190. package/types/webgl/Framebuffer.d.ts +135 -0
  191. package/types/webgl/Handler.d.ts +417 -0
  192. package/types/webgl/Multisample.d.ts +89 -0
  193. package/types/webgl/Program.d.ts +161 -0
  194. package/types/webgl/ProgramController.d.ts +89 -0
  195. package/types/webgl/callbacks.d.ts +1 -0
  196. package/types/webgl/index.d.ts +6 -0
  197. package/types/webgl/types.d.ts +2 -0
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Console logging singleton object.
3
+ * @class
4
+ */
5
+ export class Cons {
6
+ _container: HTMLDivElement;
7
+ _visibility: boolean;
8
+ getVisibility(): boolean;
9
+ setVisibility(visibility: any): void;
10
+ /**
11
+ * Show console panel.
12
+ * @public
13
+ */
14
+ public show(): void;
15
+ /**
16
+ * Hide console panel.
17
+ * @public
18
+ */
19
+ public hide(): void;
20
+ /**
21
+ * Adds error text in the console.
22
+ * @public
23
+ * @param {string} str - Error text.
24
+ */
25
+ public logErr(str: string): void;
26
+ /**
27
+ * Adds warning text in the console.
28
+ * @public
29
+ * @param {string} str - Warning text.
30
+ */
31
+ public logWrn(str: string): void;
32
+ /**
33
+ * Adds log text in the console.
34
+ * @public
35
+ * @param {string} str - Log text.
36
+ * @param {Object} [style] - HTML style.
37
+ */
38
+ public log(str: string, style?: any): void;
39
+ }
40
+ export const cons: Cons;
@@ -0,0 +1,17 @@
1
+ export function compassButton(options: any): CompassButton;
2
+ /**
3
+ * Planet compass button
4
+ * @class
5
+ * @extends {Control}
6
+ * @params {Object} [options] - Control options.
7
+ */
8
+ export class CompassButton extends Control {
9
+ planet: any;
10
+ compassSvg: any;
11
+ _heading: any;
12
+ _svg: any;
13
+ _onClick(): void;
14
+ _draw(e: any): void;
15
+ setHeading(heading: any): void;
16
+ }
17
+ import { Control } from "./Control.js";
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Base control class for implementing renderer controls.
3
+ * All other controls extend from this class.
4
+ * @class
5
+ * @param {Object} [options] - Control activation options:
6
+ * @param {Boolean} [options.autoActivated=true] - If true - calls initialize function after the renderer assigning.
7
+ */
8
+ export class Control {
9
+ static set __staticCounter(arg: any);
10
+ static get __staticCounter(): any;
11
+ /**
12
+ * @param {Object} [options] - Control activation options:
13
+ */
14
+ constructor(options?: any);
15
+ _id: number;
16
+ _name: any;
17
+ /**
18
+ * Control initialized.
19
+ * @protected
20
+ * @type {Boolean}
21
+ */
22
+ protected _initialized: boolean;
23
+ /**
24
+ * Assigned renderer.
25
+ * @public
26
+ * @type {Renderer}
27
+ */
28
+ public renderer: Renderer;
29
+ /**
30
+ * Auto activation flag.
31
+ * @public
32
+ * @type {Boolean}
33
+ */
34
+ public autoActivate: boolean;
35
+ /**
36
+ * Control activity.
37
+ * @protected
38
+ * @type {Boolean}
39
+ */
40
+ protected _active: boolean;
41
+ /**
42
+ * Returns control name.
43
+ * @public
44
+ * @virtual
45
+ */
46
+ public get name(): any;
47
+ /**
48
+ * Control initialization function have to be overriden.
49
+ * @public
50
+ * @virtual
51
+ */
52
+ public oninit(): void;
53
+ /**
54
+ * Control renderer assigning function have to be overriden.
55
+ * @public
56
+ * @virtual
57
+ */
58
+ public onadd(): void;
59
+ /**
60
+ * Control remove function have to be overriden.
61
+ * @public
62
+ * @virtual
63
+ */
64
+ public onremove(): void;
65
+ /**
66
+ * Control activation function have to be overriden.
67
+ * @public
68
+ * @virtual
69
+ */
70
+ public onactivate(): void;
71
+ /**
72
+ * Control deactivation function have to be overriden.
73
+ * @public
74
+ * @virtual
75
+ */
76
+ public ondeactivate(): void;
77
+ /**
78
+ * Assign renderer to the control.
79
+ * @public
80
+ * @type {Renderer}
81
+ */
82
+ public addTo(renderer: any): void;
83
+ /**
84
+ * Assign renderer to the control.
85
+ * @public
86
+ */
87
+ public remove(): void;
88
+ /**
89
+ * Activate control.
90
+ * @public
91
+ */
92
+ public activate(): void;
93
+ /**
94
+ * Deactivate control.
95
+ * @public
96
+ */
97
+ public deactivate(): void;
98
+ /**
99
+ * Is control active.
100
+ * @public
101
+ */
102
+ public isActive(): boolean;
103
+ isEqual(control: any): boolean;
104
+ }
@@ -0,0 +1,15 @@
1
+ export function debugInfo(options: any): DebugInfo;
2
+ /**
3
+ * Debug information
4
+ * @class
5
+ * @extends {Control}
6
+ * @param {Object} [options] - Control options.
7
+ */
8
+ export class DebugInfo extends Control {
9
+ el: HTMLDivElement;
10
+ _watch: any;
11
+ addWatches(watches: any): void;
12
+ addWatch(watch: any): void;
13
+ _frame(): void;
14
+ }
15
+ import { Control } from "./Control.js";
@@ -0,0 +1,47 @@
1
+ export function earthCoordinates(options: any): EarthCoordinates;
2
+ /**
3
+ * Control displays mouse or screen center Earth coordinates.
4
+ * @class
5
+ * @extends {Control}
6
+ * @param {Object} [options] - Options:
7
+ * @param {Boolean} [options.center] - Earth coordiantes by screen center otherwise mouse pointer. False is default.
8
+ * @param {Boolean} [options.type] - Coordinates shown: 0 - is decimal degrees, 1 - degrees, 2 - mercator geodetic coordinates.
9
+ */
10
+ export class EarthCoordinates extends Control {
11
+ /**
12
+ * Display type.
13
+ * @private
14
+ * @type {Boolean}
15
+ */
16
+ private _displayType;
17
+ /**
18
+ * Current coordinates type converter.
19
+ * @private
20
+ * @function
21
+ */
22
+ private _converter;
23
+ /**
24
+ * Display dom element.
25
+ * @private
26
+ * @type {Object}
27
+ */
28
+ private _display;
29
+ _center: any;
30
+ _centerDiv: HTMLDivElement;
31
+ /**
32
+ * Current position.
33
+ * @public
34
+ * @type {Vec3}
35
+ */
36
+ public position: Vec3;
37
+ /**
38
+ * Sets coordinates capturing type.
39
+ * @public
40
+ * @param {Boolean} center - True - capture screen center, false - mouse pointer.
41
+ */
42
+ public setCenter(center: boolean): void;
43
+ _showPosition(): void;
44
+ _grabCoordinates(): void;
45
+ _onMouseMove(): void;
46
+ }
47
+ import { Control } from "./Control.js";
@@ -0,0 +1,43 @@
1
+ export class EarthNavigation extends Control {
2
+ grabbedPoint: Vec3;
3
+ grabbedDir: Vec3;
4
+ inertia: number;
5
+ grabbedSpheroid: Sphere;
6
+ planet: any;
7
+ _vRot: Quat;
8
+ _hRot: Quat;
9
+ _a: number;
10
+ scaleRot: number;
11
+ currState: number;
12
+ positionState: {
13
+ h: number;
14
+ max: number;
15
+ min: number;
16
+ }[];
17
+ touches: Touch[];
18
+ switchZoomState(wheelDelta: any): void;
19
+ onMouseWheel(event: any): void;
20
+ onTouchStart(e: any): void;
21
+ onTouchEnd(e: any): void;
22
+ onTouchMove(e: any): void;
23
+ onMouseLeftButtonClick(e: any): void;
24
+ stopRotation(): void;
25
+ onMouseLeftButtonUp(e: any): void;
26
+ onMouseLeftButtonDown(e: any): void;
27
+ onDraw(e: any): void;
28
+ }
29
+ import { Control } from "./Control.js";
30
+ import { Vec3 } from "../math/Vec3.js";
31
+ import { Sphere } from "../bv/Sphere.js";
32
+ import { Quat } from "../math/Quat.js";
33
+ declare class Touch {
34
+ x: number;
35
+ y: number;
36
+ prev_x: number;
37
+ prev_y: number;
38
+ grabbedPoint: Vec3;
39
+ grabbedSpheroid: Sphere;
40
+ dX: () => number;
41
+ dY: () => number;
42
+ }
43
+ export {};
@@ -0,0 +1,6 @@
1
+ export class GeoImageDragControl extends Control {
2
+ _cornerIndex: number;
3
+ _catchCorner: boolean;
4
+ _bindLayer(layer: any): void;
5
+ }
6
+ import { Control } from "./Control.js";
@@ -0,0 +1,21 @@
1
+ export function keyboardNavigation(options: any): KeyboardNavigation;
2
+ /**
3
+ * Planet camera keyboard navigation. Use W,S,A,D and left shift key for fly around a planet.
4
+ * @class
5
+ * @extends {Control}
6
+ * @param {Object} [options] - Control options.
7
+ */
8
+ export class KeyboardNavigation extends Control {
9
+ step: any;
10
+ onCameraMoveForward(event: any): void;
11
+ onCameraMoveBackward(event: any): void;
12
+ onCameraStrifeLeft(event: any): void;
13
+ onCameraStrifeRight(event: any): void;
14
+ onCameraLookUp(event: any): void;
15
+ onCameraLookDown(event: any): void;
16
+ onCameraTurnLeft(event: any): void;
17
+ onCameraTurnRight(event: any): void;
18
+ onCameraRollLeft(event: any): void;
19
+ onCameraRollRight(event: any): void;
20
+ }
21
+ import { Control } from "./Control.js";
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Simple(OpenLayers like)layer switcher, includes base layers, overlays, geo images etc. groups.
3
+ * @class
4
+ * @extends {Control}
5
+ * @param {Object} [options] - Control options.
6
+ */
7
+ export class LayerSwitcher extends Control {
8
+ static set numSwitches(arg: any);
9
+ static get numSwitches(): any;
10
+ dialog: HTMLDivElement;
11
+ baseLayersDiv: HTMLDivElement;
12
+ overlaysDiv: HTMLDivElement;
13
+ onLayerAdded(layer: any): void;
14
+ onLayerRemoved(layer: any): void;
15
+ addSwitcher(type: any, obj: any, container: any, id: any): void;
16
+ createBaseLayersContainer(): void;
17
+ createOverlaysContainer(): void;
18
+ createDialog(): void;
19
+ createSwitcher(): void;
20
+ }
21
+ import { Control } from "./Control.js";
@@ -0,0 +1,16 @@
1
+ export function lighting(options: any): Lighting;
2
+ /**
3
+ * Helps to setup lighting.
4
+ * @class
5
+ * @extends {Control}
6
+ * @param {Object} [options] -
7
+ */
8
+ export class Lighting extends Control {
9
+ constructor(options?: {});
10
+ _selectedLayer: any;
11
+ bindLayer(layer: any): void;
12
+ _fetchLayers(): void;
13
+ _onLayerAdd(e: any): void;
14
+ _onLayerRemove(e: any): void;
15
+ }
16
+ import { Control } from "./Control.js";
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Mouse planet camera dragging control.
3
+ * @class
4
+ * @extends {Control}
5
+ * @param {Object} [options] - Control options.
6
+ */
7
+ export class MouseNavigation extends Control {
8
+ static getMovePointsFromPixelTerrain(cam: any, planet: any, stepsCount: any, delta: any, point: any, forward: any, dir: any): {}[];
9
+ grabbedPoint: Vec3;
10
+ _eye0: Vec3;
11
+ pointOnEarth: Vec3;
12
+ earthUp: Vec3;
13
+ inertia: number;
14
+ grabbedSpheroid: Sphere;
15
+ planet: any;
16
+ qRot: Quat;
17
+ scaleRot: number;
18
+ distDiff: number;
19
+ stepsCount: number;
20
+ stepsForward: {}[];
21
+ stepIndex: number;
22
+ _lmbDoubleClickActive: boolean;
23
+ minSlope: any;
24
+ _wheelDirection: number;
25
+ _keyLock: Key;
26
+ activateDoubleClickZoom(): void;
27
+ deactivateDoubleClickZoom(): void;
28
+ onMouseEnter(e: any): void;
29
+ onMouseLeave(e: any): void;
30
+ onMouseWheel(event: any): void;
31
+ _deactivate: boolean;
32
+ onMouseLeftButtonDoubleClick(): void;
33
+ onMouseLeftButtonClick(): void;
34
+ stopRotation(): void;
35
+ onMouseLeftButtonUp(e: any): void;
36
+ onMouseLeftButtonDown(e: any): void;
37
+ onMouseRightButtonClick(e: any): void;
38
+ onMouseRightButtonDown(e: any): void;
39
+ onShiftFree(): void;
40
+ _shiftBusy: boolean;
41
+ onMouseMove(e: any): void;
42
+ onDraw(e: any): void;
43
+ }
44
+ import { Control } from "./Control.js";
45
+ import { Vec3 } from "../math/Vec3.js";
46
+ import { Sphere } from "../bv/Sphere.js";
47
+ import { Quat } from "../math/Quat.js";
48
+ import { Key } from "../Lock.js";
@@ -0,0 +1,45 @@
1
+ export function mouseWheelZoomControl(options: any): MouseWheelZoomControl;
2
+ /**
3
+ * Planet zoom buttons control.
4
+ * @class
5
+ * @extends {Control}
6
+ * @params {Object} [options] - Control options.
7
+ */
8
+ export class MouseWheelZoomControl extends Control {
9
+ grabbedPoint: Vec3;
10
+ _eye0: Vec3;
11
+ pointOnEarth: Vec3;
12
+ earthUp: Vec3;
13
+ inertia: number;
14
+ grabbedSpheroid: Sphere;
15
+ planet: any;
16
+ qRot: Quat;
17
+ scaleRot: number;
18
+ distDiff: number;
19
+ stepsCount: number;
20
+ stepsForward: {}[];
21
+ stepIndex: number;
22
+ _lmbDoubleClickActive: boolean;
23
+ minSlope: any;
24
+ _keyLock: Key;
25
+ /**
26
+ * Planet zoom in.
27
+ * @public
28
+ */
29
+ public zoomIn(): void;
30
+ _deactivate: boolean;
31
+ /**
32
+ * Planet zoom out.
33
+ * @public
34
+ */
35
+ public zoomOut(): void;
36
+ stopRotation(): void;
37
+ stopZoom(): void;
38
+ _move: number;
39
+ _draw(e: any): void;
40
+ }
41
+ import { Control } from "./Control.js";
42
+ import { Vec3 } from "../math/Vec3.js";
43
+ import { Sphere } from "../bv/Sphere.js";
44
+ import { Quat } from "../math/Quat.js";
45
+ import { Key } from "../Lock.js";
@@ -0,0 +1,22 @@
1
+ export function scaleControl(options: any): ScaleControl;
2
+ /**
3
+ * Planet zoom buttons control.
4
+ * @class
5
+ * @extends {Control}
6
+ * @params {Object} [options] - Control options.
7
+ */
8
+ export class ScaleControl extends Control {
9
+ constructor(options?: {});
10
+ _template: string;
11
+ planet: any;
12
+ _minWidth: number;
13
+ _maxWidth: number;
14
+ _renderTemplate(): ChildNode;
15
+ el: ChildNode;
16
+ _scaleLabelEl: any;
17
+ _draw(e: any): void;
18
+ _mPx: number;
19
+ currWidth: number;
20
+ _metersInMinSize: number;
21
+ }
22
+ import { Control } from "./Control.js";
@@ -0,0 +1,11 @@
1
+ export function showFps(options: any): ShowFps;
2
+ /**
3
+ * Frame per second(FPS) display control.
4
+ * @class
5
+ * @extends {Control}
6
+ * @param {Object} [options] - Control options.
7
+ */
8
+ export class ShowFps extends Control {
9
+ _draw(): void;
10
+ }
11
+ import { Control } from "./Control.js";
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Creates simple navigation control instance.
3
+ */
4
+ export function simpleNavigation(options: any): SimpleNavigation;
5
+ /**
6
+ * Simple keyboard camera navigation with W,S,A,D and shift keys to fly around the scene.
7
+ * @class
8
+ * @extends {Control}
9
+ * @param {Object} [options] - Control options.
10
+ */
11
+ export class SimpleNavigation extends Control {
12
+ camera: any;
13
+ speed: any;
14
+ onCameraMoveForward(): void;
15
+ onCameraMoveBackward(): void;
16
+ onCameraStrifeLeft(): void;
17
+ onCameraStrifeRight(): void;
18
+ onCameraLookUp(): void;
19
+ onCameraLookDown(): void;
20
+ onCameraTurnLeft(): void;
21
+ onCameraTurnRight(): void;
22
+ onCameraRollLeft(): void;
23
+ onCameraRollRight(): void;
24
+ }
25
+ import { Control } from "./Control.js";
@@ -0,0 +1,50 @@
1
+ export function sun(options: any): any;
2
+ /**
3
+ * Real Sun geocentric position control that place the Sun on the right place by the Earth.
4
+ * @class
5
+ * @extends {Control}
6
+ * @param {Object} [options] - Control options.
7
+ */
8
+ export class Sun extends Control {
9
+ /**
10
+ * Earth planet node.
11
+ * @public
12
+ * @type {Planet}
13
+ */
14
+ public planet: Planet;
15
+ /**
16
+ * Sunlight position placed in the camera eye.
17
+ * @private
18
+ * @type {boolean}
19
+ */
20
+ private offsetVertical;
21
+ offsetHorizontal: any;
22
+ /**
23
+ * Light source.
24
+ * @public
25
+ * @type {LightSource}
26
+ */
27
+ public sunlight: LightSource;
28
+ /**
29
+ * Current frame handler clock date and time.
30
+ * @private
31
+ * @type {Number}
32
+ */
33
+ private _currDate;
34
+ /**
35
+ * Previous frame handler clock date and time.
36
+ * @private
37
+ * @type {Number}
38
+ */
39
+ private _prevDate;
40
+ _clockPtr: any;
41
+ _lightOn: boolean;
42
+ _stopped: any;
43
+ stop(): void;
44
+ bindClock(clock: any): void;
45
+ _draw(): void;
46
+ _f: number;
47
+ _k: number;
48
+ }
49
+ import { Control } from "./Control.js";
50
+ import { LightSource } from "../light/LightSource.js";
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Planet GL draw mode(TRIANGLE_STRIP/LINE_STRING) changer.
3
+ * @class
4
+ * @extends {Control}
5
+ * @param {Object} [options] - Control options.
6
+ */
7
+ export class ToggleWireframe extends Control {
8
+ constructor(options?: {});
9
+ _isActive: any;
10
+ toogleWireframe(e: any): void;
11
+ }
12
+ import { Control } from "./Control.js";
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Touch pad planet camera dragging control.
3
+ * @class
4
+ * @extends {Control}
5
+ * @param {Object} [options] - Control options.
6
+ */
7
+ export class TouchNavigation extends Control {
8
+ grabbedPoint: Vec3;
9
+ inertia: number;
10
+ grabbedSpheroid: Sphere;
11
+ planet: any;
12
+ qRot: Quat;
13
+ scaleRot: number;
14
+ rot: number;
15
+ _eye0: Vec3;
16
+ stepsCount: number;
17
+ stepsForward: any;
18
+ stepIndex: number;
19
+ pointOnEarth: any;
20
+ earthUp: any;
21
+ touches: Touch[];
22
+ _keyLock: Key;
23
+ onTouchStart(e: any): void;
24
+ _touching: boolean;
25
+ _startTouchOne(e: any): void;
26
+ stopRotation(): void;
27
+ onDoubleTouch(e: any): void;
28
+ onTouchEnd(e: any): void;
29
+ onTouchCancel(e: any): void;
30
+ onTouchMove(e: any): void;
31
+ onDraw(e: any): void;
32
+ }
33
+ import { Control } from "./Control.js";
34
+ import { Vec3 } from "../math/Vec3.js";
35
+ import { Sphere } from "../bv/Sphere.js";
36
+ import { Quat } from "../math/Quat.js";
37
+ declare class Touch {
38
+ x: number;
39
+ y: number;
40
+ prev_x: number;
41
+ prev_y: number;
42
+ grabbedPoint: Vec3;
43
+ grabbedSpheroid: Sphere;
44
+ dX: () => number;
45
+ dY: () => number;
46
+ }
47
+ import { Key } from "../Lock.js";
48
+ export {};
@@ -0,0 +1,27 @@
1
+ export function zoomControl(options: any): ZoomControl;
2
+ /**
3
+ * Planet zoom buttons control.
4
+ * @class
5
+ * @extends {Control}
6
+ * @params {Object} [options] - Control options.
7
+ */
8
+ export class ZoomControl extends Control {
9
+ _keyLock: Key;
10
+ planet: any;
11
+ _move: number;
12
+ /**
13
+ * Planet zoom in.
14
+ * @public
15
+ */
16
+ public zoomIn(): void;
17
+ _targetPoint: any;
18
+ /**
19
+ * Planet zoom out.
20
+ * @public
21
+ */
22
+ public zoomOut(): void;
23
+ stopZoom(): void;
24
+ _draw(e: any): void;
25
+ }
26
+ import { Control } from "./Control.js";
27
+ import { Key } from "../Lock.js";
@@ -0,0 +1,18 @@
1
+ import { Control } from "./Control.js";
2
+ import { CompassButton } from "./CompassButton.js";
3
+ import { DebugInfo } from "./DebugInfo";
4
+ import { EarthNavigation } from "./EarthNavigation.js";
5
+ import { EarthCoordinates } from "./EarthCoordinates.js";
6
+ import { GeoImageDragControl } from "./GeoImageDragControl.js";
7
+ import { KeyboardNavigation } from "./KeyboardNavigation.js";
8
+ import { LayerSwitcher } from "./LayerSwitcher.js";
9
+ import { MouseNavigation } from "./MouseNavigation.js";
10
+ import { ToggleWireframe } from "./ToggleWireframe.js";
11
+ import { TouchNavigation } from "./TouchNavigation.js";
12
+ import { SimpleNavigation } from "./SimpleNavigation.js";
13
+ import { ShowFps } from "./ShowFps.js";
14
+ import { Sun } from "./Sun.js";
15
+ import { ZoomControl } from "./ZoomControl.js";
16
+ import { MouseWheelZoomControl } from "./MouseWheelZoomControl.js";
17
+ import { Lighting } from "./Lighting.js";
18
+ export { Control, CompassButton, DebugInfo, EarthNavigation, EarthCoordinates, GeoImageDragControl, KeyboardNavigation, LayerSwitcher, MouseNavigation, ToggleWireframe, TouchNavigation, SimpleNavigation, ShowFps, Sun, ZoomControl, MouseWheelZoomControl, Lighting };