@openglobus/og 0.12.1 → 0.12.3

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 (173) hide show
  1. package/dist/@openglobus/og.css +1 -0
  2. package/dist/@openglobus/og.esm.js +21 -0
  3. package/dist/@openglobus/og.esm.js.map +1 -0
  4. package/dist/@openglobus/og.umd.js +21 -0
  5. package/dist/@openglobus/og.umd.js.map +1 -0
  6. package/package.json +2 -2
  7. package/src/og/entity/GeoObjectHandler.js +35 -16
  8. package/src/og/layer/KML.js +19 -12
  9. package/src/og/layer/Layer.js +4 -1
  10. package/src/og/scene/Planet.js +14 -14
  11. package/src/og/shaders/geoObject.js +15 -6
  12. package/types/Clock.d.ts +94 -0
  13. package/types/Deferred.d.ts +6 -0
  14. package/types/Events.d.ts +77 -0
  15. package/types/Extent.d.ts +166 -0
  16. package/types/Globe.d.ts +85 -0
  17. package/types/ImageCanvas.d.ts +123 -0
  18. package/types/Lock.d.ts +12 -0
  19. package/types/LonLat.d.ts +108 -0
  20. package/types/Popup.d.ts +42 -0
  21. package/types/QueueArray.d.ts +19 -0
  22. package/types/Rectangle.d.ts +80 -0
  23. package/types/Stack.d.ts +19 -0
  24. package/types/ajax.d.ts +24 -0
  25. package/types/arial.d.ts +48 -0
  26. package/types/astro/astro.d.ts +38 -0
  27. package/types/astro/earth.d.ts +7 -0
  28. package/types/astro/jd.d.ts +254 -0
  29. package/types/bv/Box.d.ts +30 -0
  30. package/types/bv/Sphere.d.ts +38 -0
  31. package/types/bv/index.d.ts +3 -0
  32. package/types/camera/Camera.d.ts +312 -0
  33. package/types/camera/Frustum.d.ts +133 -0
  34. package/types/camera/PlanetCamera.d.ts +219 -0
  35. package/types/camera/index.d.ts +3 -0
  36. package/types/cons.d.ts +40 -0
  37. package/types/control/CompassButton.d.ts +17 -0
  38. package/types/control/Control.d.ts +104 -0
  39. package/types/control/DebugInfo.d.ts +15 -0
  40. package/types/control/EarthCoordinates.d.ts +47 -0
  41. package/types/control/EarthNavigation.d.ts +43 -0
  42. package/types/control/GeoImageDragControl.d.ts +6 -0
  43. package/types/control/KeyboardNavigation.d.ts +21 -0
  44. package/types/control/LayerSwitcher.d.ts +21 -0
  45. package/types/control/Lighting.d.ts +16 -0
  46. package/types/control/MouseNavigation.d.ts +48 -0
  47. package/types/control/MouseWheelZoomControl.d.ts +45 -0
  48. package/types/control/ScaleControl.d.ts +22 -0
  49. package/types/control/ShowFps.d.ts +11 -0
  50. package/types/control/SimpleNavigation.d.ts +25 -0
  51. package/types/control/Sun.d.ts +50 -0
  52. package/types/control/ToggleWireframe.d.ts +12 -0
  53. package/types/control/TouchNavigation.d.ts +48 -0
  54. package/types/control/ZoomControl.d.ts +27 -0
  55. package/types/control/index.d.ts +18 -0
  56. package/types/ellipsoid/Ellipsoid.d.ts +146 -0
  57. package/types/ellipsoid/index.d.ts +3 -0
  58. package/types/ellipsoid/wgs84.d.ts +6 -0
  59. package/types/entity/BaseBillboard.d.ts +215 -0
  60. package/types/entity/Billboard.d.ts +94 -0
  61. package/types/entity/BillboardHandler.d.ts +79 -0
  62. package/types/entity/Entity.d.ts +348 -0
  63. package/types/entity/EntityCollection.d.ts +317 -0
  64. package/types/entity/GeoObject.d.ts +111 -0
  65. package/types/entity/GeoObjectHandler.d.ts +81 -0
  66. package/types/entity/Geometry.d.ts +74 -0
  67. package/types/entity/GeometryHandler.d.ts +76 -0
  68. package/types/entity/Label.d.ts +189 -0
  69. package/types/entity/LabelHandler.d.ts +31 -0
  70. package/types/entity/LabelWorker.d.ts +11 -0
  71. package/types/entity/PointCloud.d.ts +174 -0
  72. package/types/entity/PointCloudHandler.d.ts +38 -0
  73. package/types/entity/Polyline.d.ts +306 -0
  74. package/types/entity/PolylineHandler.d.ts +18 -0
  75. package/types/entity/Ray.d.ts +124 -0
  76. package/types/entity/RayHandler.d.ts +67 -0
  77. package/types/entity/ShapeHandler.d.ts +22 -0
  78. package/types/entity/Strip.d.ts +119 -0
  79. package/types/entity/StripHandler.d.ts +38 -0
  80. package/types/entity/index.d.ts +8 -0
  81. package/types/index.core.d.ts +65 -0
  82. package/types/index.d.ts +45 -0
  83. package/types/index.webgl.d.ts +7 -0
  84. package/types/input/KeyboardHandler.d.ts +10 -0
  85. package/types/input/MouseHandler.d.ts +5 -0
  86. package/types/input/TouchHandler.d.ts +5 -0
  87. package/types/input/input.d.ts +34 -0
  88. package/types/layer/BaseGeoImage.d.ts +94 -0
  89. package/types/layer/CanvasTiles.d.ts +67 -0
  90. package/types/layer/GeoImage.d.ts +52 -0
  91. package/types/layer/GeoTexture2d.d.ts +8 -0
  92. package/types/layer/GeoVideo.d.ts +55 -0
  93. package/types/layer/KML.d.ts +68 -0
  94. package/types/layer/Layer.d.ts +310 -0
  95. package/types/layer/Material.d.ts +45 -0
  96. package/types/layer/Vector.d.ts +208 -0
  97. package/types/layer/WMS.d.ts +61 -0
  98. package/types/layer/XYZ.d.ts +119 -0
  99. package/types/layer/index.d.ts +10 -0
  100. package/types/light/LightSource.d.ts +178 -0
  101. package/types/math/Line2.d.ts +11 -0
  102. package/types/math/Line3.d.ts +10 -0
  103. package/types/math/Mat3.d.ts +65 -0
  104. package/types/math/Mat4.d.ts +176 -0
  105. package/types/math/Plane.d.ts +18 -0
  106. package/types/math/Quat.d.ts +379 -0
  107. package/types/math/Ray.d.ts +82 -0
  108. package/types/math/Vec2.d.ts +309 -0
  109. package/types/math/Vec3.d.ts +467 -0
  110. package/types/math/Vec4.d.ts +162 -0
  111. package/types/math/coder.d.ts +43 -0
  112. package/types/math/index.d.ts +11 -0
  113. package/types/math.d.ts +261 -0
  114. package/types/mercator.d.ts +92 -0
  115. package/types/proj/EPSG3857.d.ts +6 -0
  116. package/types/proj/EPSG4326.d.ts +6 -0
  117. package/types/proj/Proj.d.ts +42 -0
  118. package/types/quadTree/EntityCollectionNode.d.ts +34 -0
  119. package/types/quadTree/Node.d.ts +60 -0
  120. package/types/quadTree/quadTree.d.ts +40 -0
  121. package/types/renderer/Renderer.d.ts +290 -0
  122. package/types/renderer/RendererEvents.d.ts +237 -0
  123. package/types/res/images.d.ts +3 -0
  124. package/types/scene/Axes.d.ts +11 -0
  125. package/types/scene/BaseNode.d.ts +60 -0
  126. package/types/scene/Planet.d.ts +576 -0
  127. package/types/scene/RenderNode.d.ts +142 -0
  128. package/types/scene/SkyBox.d.ts +10 -0
  129. package/types/scene/index.d.ts +4 -0
  130. package/types/segment/Segment.d.ts +275 -0
  131. package/types/segment/SegmentLonLat.d.ts +17 -0
  132. package/types/segment/Slice.d.ts +10 -0
  133. package/types/segment/segmentHelper.d.ts +13 -0
  134. package/types/shaders/billboard.d.ts +3 -0
  135. package/types/shaders/depth.d.ts +2 -0
  136. package/types/shaders/drawnode.d.ts +7 -0
  137. package/types/shaders/geoObject.d.ts +3 -0
  138. package/types/shaders/label.d.ts +4 -0
  139. package/types/shaders/pointCloud.d.ts +2 -0
  140. package/types/shaders/polyline.d.ts +3 -0
  141. package/types/shaders/ray.d.ts +2 -0
  142. package/types/shaders/screenFrame.d.ts +2 -0
  143. package/types/shaders/shape.d.ts +4 -0
  144. package/types/shaders/skybox.d.ts +2 -0
  145. package/types/shaders/toneMapping.d.ts +2 -0
  146. package/types/shapes/BaseShape.d.ts +250 -0
  147. package/types/shapes/Sphere.d.ts +41 -0
  148. package/types/terrain/BilTerrain.d.ts +7 -0
  149. package/types/terrain/EmptyTerrain.d.ts +73 -0
  150. package/types/terrain/Geoid.d.ts +26 -0
  151. package/types/terrain/GlobusTerrain.d.ts +116 -0
  152. package/types/terrain/MapboxTerrain.d.ts +7 -0
  153. package/types/terrain/index.d.ts +5 -0
  154. package/types/utils/FontAtlas.d.ts +15 -0
  155. package/types/utils/GeoImageCreator.d.ts +30 -0
  156. package/types/utils/ImagesCacheManager.d.ts +10 -0
  157. package/types/utils/Loader.d.ts +25 -0
  158. package/types/utils/NormalMapCreator.d.ts +39 -0
  159. package/types/utils/PlainSegmentWorker.d.ts +10 -0
  160. package/types/utils/TerrainWorker.d.ts +9 -0
  161. package/types/utils/TextureAtlas.d.ts +111 -0
  162. package/types/utils/VectorTileCreator.d.ts +16 -0
  163. package/types/utils/colorTable.d.ts +143 -0
  164. package/types/utils/earcut.d.ts +6 -0
  165. package/types/utils/shared.d.ts +231 -0
  166. package/types/webgl/Framebuffer.d.ts +135 -0
  167. package/types/webgl/Handler.d.ts +417 -0
  168. package/types/webgl/Multisample.d.ts +89 -0
  169. package/types/webgl/Program.d.ts +161 -0
  170. package/types/webgl/ProgramController.d.ts +89 -0
  171. package/types/webgl/callbacks.d.ts +1 -0
  172. package/types/webgl/index.d.ts +6 -0
  173. package/types/webgl/types.d.ts +2 -0
@@ -0,0 +1,166 @@
1
+ /**
2
+ * Represents geographical coordinates extent.
3
+ * @class
4
+ * @param {LonLat} [sw] - South West extent corner coordiantes.
5
+ * @param {LonLat} [ne] - North East extent corner coordiantes.
6
+ */
7
+ export class Extent {
8
+ /**
9
+ * Whole mercator extent.
10
+ * @const
11
+ */
12
+ static get FULL_MERC(): Extent;
13
+ /**
14
+ * Degrees extent from north mercator limit to north pole.
15
+ * @const
16
+ */
17
+ static get NORTH_POLE_DEG(): Extent;
18
+ /**
19
+ * Degrees extent from south pole to south mercator limit.
20
+ * @const
21
+ */
22
+ static get SOUTH_POLE_DEG(): Extent;
23
+ /**
24
+ * Creates extent instance from values in array.
25
+ * @static
26
+ * @param {Array.<number>} arr - South west and north east longitude and latidudes packed in array. (exactly 4 entries)
27
+ * @return {Extent} Extent object.
28
+ */
29
+ static createFromArray(arr: Array<number>): Extent;
30
+ /**
31
+ * Creates bound extent instance by coordinate array.
32
+ * @static
33
+ * @param {Array.<LonLat>} arr - Coordinate array.
34
+ * @return {Extent} Extent object.
35
+ */
36
+ static createByCoordinates(arr: Array<LonLat>): Extent;
37
+ /**
38
+ * Creates bound extent instance by coordinate array.
39
+ * @static
40
+ * @param {Array.<Array<number>>} arr - Coordinate array. (exactly 2 entries)
41
+ * @return {Extent} Extent object.
42
+ */
43
+ static createByCoordinatesArr(arr: Array<Array<number>>): Extent;
44
+ /**
45
+ * Creates extent by meractor grid tile coordinates.
46
+ * @static
47
+ * @param {number} x -
48
+ * @param {number} y -
49
+ * @param {number} z -
50
+ * @param {number} width -
51
+ * @param {number} height -
52
+ * @returns {Extent} -
53
+ */
54
+ static fromTile(x: number, y: number, z: number, width: number, height: number): Extent;
55
+ /**
56
+ * @param {LonLat} [sw] - South West extent corner coordiantes.
57
+ * @param {LonLat} [ne] - North East extent corner coordiantes.
58
+ */
59
+ constructor(sw?: LonLat, ne?: LonLat);
60
+ /**
61
+ * @public
62
+ */
63
+ public southWest: LonLat;
64
+ /**
65
+ * @public
66
+ */
67
+ public northEast: LonLat;
68
+ /**
69
+ * Sets current bounding extent object by coordinate array.
70
+ * @public
71
+ * @param {Array.<LonLat>} arr - Coordinate array.
72
+ * @return {Extent} Current extent.
73
+ */
74
+ public setByCoordinates(arr: Array<LonLat>): Extent;
75
+ /**
76
+ * Determines if point inside extent.
77
+ * @public
78
+ * @param {LonLat} lonlat - Coordinate point.
79
+ * @return {boolean} Returns true if point inside extent.
80
+ */
81
+ public isInside(lonlat: LonLat): boolean;
82
+ /**
83
+ * Returns true if two extent overlap each other.
84
+ * @public
85
+ * @param {Extent} e - Another extent.
86
+ * @return {boolean} -
87
+ */
88
+ public overlaps(e: Extent): boolean;
89
+ /**
90
+ * Gets extent width.
91
+ * @public
92
+ * @return {number} Extent width.
93
+ */
94
+ public getWidth(): number;
95
+ /**
96
+ * Gets extent height.
97
+ * @public
98
+ * @return {number} Extent height.
99
+ */
100
+ public getHeight(): number;
101
+ /**
102
+ * Creates clone instance of the current extent.
103
+ * @public
104
+ * @return {Extent} Extent clone.
105
+ */
106
+ public clone(): Extent;
107
+ /**
108
+ * Gets the center coordinate of the extent.
109
+ * @public
110
+ * @return {number} Center coordinate.
111
+ */
112
+ public getCenter(): number;
113
+ /**
114
+ * @public
115
+ */
116
+ public getNorthWest(): LonLat;
117
+ /**
118
+ * @public
119
+ */
120
+ public getNorthEast(): LonLat;
121
+ getSouthWest(): LonLat;
122
+ /**
123
+ * @public
124
+ */
125
+ public getSouthEast(): LonLat;
126
+ /**
127
+ * @public
128
+ */
129
+ public getNorth(): number;
130
+ getEast(): number;
131
+ /**
132
+ * @public
133
+ */
134
+ public getWest(): number;
135
+ /**
136
+ * @public
137
+ */
138
+ public getSouth(): number;
139
+ /**
140
+ * Returns extents are equals.
141
+ * @param {Extent} extent - Extent.
142
+ * @returns {boolean} -
143
+ */
144
+ equals(extent: Extent): boolean;
145
+ /**
146
+ * Converts extent coordinates to mercator projection coordinates.
147
+ * @public
148
+ * @return {Extent} New instance of the current extent.
149
+ */
150
+ public forwardMercator(): Extent;
151
+ /**
152
+ * Converts extent coordinates from mercator projection to degrees.
153
+ * @public
154
+ * @return {Extent} New instance of the current extent.
155
+ */
156
+ public inverseMercator(): Extent;
157
+ /**
158
+ * Gets cartesian bounding bounds of the current ellipsoid.
159
+ * @public
160
+ * @param {Ellipsoid} ellipsoid - Ellipsoid.
161
+ * @return {Array.<number>} Cartesian 3d coordinate array. (exactly 6 entries)
162
+ */
163
+ public getCartesianBounds(ellipsoid: Ellipsoid): Array<number>;
164
+ toString(): string;
165
+ }
166
+ import { LonLat } from "./LonLat.js";
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Creates a WebGL context with globe.
3
+ * @class
4
+ *
5
+ * @example <caption>Basic initialization</caption>
6
+ * globus = new og.Globe({
7
+ * 'atmosphere': false,
8
+ * 'target': 'globus',
9
+ * 'name': 'Earth',
10
+ * 'controls': [
11
+ * new og.control.MouseNavigation({ autoActivate: true }),
12
+ * new og.control.KeyboardNavigation({ autoActivate: true }),
13
+ * new og.control.EarthCoordinates({ autoActivate: true, center: false }),
14
+ * new og.control.LayerSwitcher({ autoActivate: true }),
15
+ * new og.control.ZoomControl({ autoActivate: true }),
16
+ * new og.control.TouchNavigation({ autoActivate: true }),
17
+ * new og.control.Sun({ autoActivate: true })
18
+ * ],
19
+ * 'terrain': new og.terrain.GlobusTerrain(),
20
+ * 'layers': [
21
+ * new og.layer.XYZ("OpenStreetMap", { isBaseLayer: true, url: "http://b.tile.openstreetmap.org/{z}/{x}/{y}.png", visibility: true, attribution: 'Data @ <a href="http://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="http://www.openstreetmap.org/copyright">ODbL</a>' })
22
+ * ],
23
+ * 'autoActivate': true
24
+ * });
25
+ *
26
+ * @param {object} options - Options:
27
+ * @param {string} options.target - HTML element id where planet canvas have to be created.
28
+ * @param {RenderNode} [options.skybox] - Render skybox. null - default.
29
+ * @param {string} [options.name] - Planet name. Default is unic identifier.
30
+ * @param {Terrain} [options.terrain] - Terrain provider. Default no terrain - og.terrain.EmptyTerrain.
31
+ * @param {Array.<control.Control>} [options.controls] - Renderer controls array.
32
+ * @param {Array.<Layer>} [options.layers] - Planet layers.
33
+ * @param {Extent} [options.viewExtent] - Viewable starting extent.
34
+ * @param {boolean} [options.autoActivate] - Globe rendering auto activation flag. True is default.
35
+ * @param {DOMElement} [options.attributionContainer] - Container for attribution list.
36
+ * @param {Number} [options.maxGridSize] = Maximal segment grid size. 128 is default
37
+ * @param {boolean} [options.useSpecularTexture] - use specular water mask
38
+ * @param {boolean} [options.useNightTexture] - show night cities
39
+ * @param {Number} [options.maxAltitude=15000000.0] - Maximal camera altitude above terrain
40
+ * @param {Number} [options.minAltitude=1.0] - Minimal camera altitude above terrain
41
+ * @param {Number} [options.maxEqualZoomAltitude=15000000.0] - Maximal altitude since segments on the screen bacame the same zoom level
42
+ * @param {Number} [options.minEqualZoomAltitude=10000.0] - Minimal altitude since segments on the screen bacame the same zoom level
43
+ * @param {Number} [options.minEqualZoomCameraSlope=0.8] - Minimal camera slope above te globe where segments on the screen bacame the same zoom level
44
+ * @param {Number} [options.loadingBatchSize=12] -
45
+ */
46
+ export class Globe {
47
+ static set _staticCounter(arg: any);
48
+ static get _staticCounter(): any;
49
+ /**
50
+ * @param {*} options
51
+ */
52
+ constructor(options: any);
53
+ _canvas: HTMLCanvasElement;
54
+ div: any;
55
+ /**
56
+ * Interface for the renderer context(events, input states, renderer nodes etc.)
57
+ * @public
58
+ * @type {Renderer}
59
+ */
60
+ public renderer: Renderer;
61
+ /**
62
+ * Planet node name. Access with this.renderer.<name>
63
+ * @private
64
+ * @type {String}
65
+ */
66
+ private _planetName;
67
+ planet: Planet;
68
+ sun: any;
69
+ _opacityCounter: number;
70
+ _fadeHandler: any;
71
+ _stopHandler: any;
72
+ /**
73
+ * Starts screen brightness fading in effect by the duration time.
74
+ * @public
75
+ */
76
+ public fadeIn(): void;
77
+ /**
78
+ * Starts screen brightness fading out effect by the duration time.
79
+ * @public
80
+ * @param {number} duration - Fadeout duration time.
81
+ */
82
+ public fadeOut(): void;
83
+ }
84
+ import { Renderer } from "./renderer/Renderer.js";
85
+ import { Planet } from "./scene/Planet.js";
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Usefull class for working with JS canvas object.
3
+ * @class
4
+ */
5
+ export class ImageCanvas {
6
+ /**
7
+ * @param {number} [width] - Canvas width. Default 256.
8
+ * @param {number} [height] - Canvas height. Default 256.
9
+ */
10
+ constructor(width?: number, height?: number);
11
+ /**
12
+ * Canvas object.
13
+ * @protected
14
+ * @type {Object}
15
+ */
16
+ protected _canvas: any;
17
+ /**
18
+ * Canvas context.
19
+ * @protected
20
+ * @type {Object}
21
+ */
22
+ protected _context: any;
23
+ /**
24
+ * Returns canvas object.
25
+ * @public
26
+ * @returns {Object}
27
+ */
28
+ public getCanvas(): any;
29
+ /**
30
+ * Returns canvas context pointer.
31
+ * @public
32
+ * @returns {Object}
33
+ */
34
+ public getContext(): any;
35
+ /**
36
+ * Fills canvas RGBA with zeroes.
37
+ * @public
38
+ */
39
+ public fillEmpty(): void;
40
+ /**
41
+ * Gets canvas pixels RGBA data.
42
+ * @public
43
+ * @returns {Array.<number>}
44
+ */
45
+ public getData(): Array<number>;
46
+ /**
47
+ * Fill the canvas by color.
48
+ * @public
49
+ * @param {string} color - CSS string color.
50
+ */
51
+ public fillColor(color: string): void;
52
+ /**
53
+ * Sets RGBA pixel data.
54
+ * @public
55
+ * @param {Array.<number>} data - Array RGBA data.
56
+ */
57
+ public setData(data: Array<number>): void;
58
+ /**
59
+ * Resize canvas.
60
+ * @public
61
+ * @param {number} width - Width.
62
+ * @param {number} height - Height.
63
+ */
64
+ public resize(width: number, height: number): void;
65
+ /**
66
+ * Draw an image on the canvas.
67
+ * @public
68
+ * @param {Image} img - Draw image.
69
+ * @param {number} [x] - Left top image corner X coordinate on the canvas.
70
+ * @param {number} [y] - Left top image corner Y coordinate on the canvas.
71
+ * @param {number} [width] - Image width slice. Image width is default.
72
+ * @param {number} [height] - Image height slice. Image height is default.
73
+ */
74
+ public drawImage(img: new (width?: number, height?: number) => HTMLImageElement, x?: number, y?: number, width?: number, height?: number): void;
75
+ /**
76
+ * Converts canvas to JS image object.
77
+ * @public
78
+ * @returns {Image}
79
+ */
80
+ public getImage(): new (width?: number, height?: number) => HTMLImageElement;
81
+ /**
82
+ * Get measured text width.
83
+ * @public
84
+ * @param {string} text - Measured text.
85
+ * @returns {number}
86
+ */
87
+ public getTextWidth(text: string): number;
88
+ /**
89
+ * Draw a text on the canvas.
90
+ * @public
91
+ * @param {string} text - Text.
92
+ * @param {number} [x] - Canvas X - coordinate. 0 - default.
93
+ * @param {number} [y] - Canvas Y - coordinate. 0 - default.
94
+ * @param {string} [font] - Font style. 'normal 14px Verdana' - is default.
95
+ * @param {string} [color] - Css font color.
96
+ */
97
+ public drawText(text: string, x?: number, y?: number, font?: string, color?: string): void;
98
+ /**
99
+ * Gets canvas width.
100
+ * @public
101
+ * @returns {number}
102
+ */
103
+ public getWidth(): number;
104
+ /**
105
+ * Gets canvas height.
106
+ * @public
107
+ * @returns {number}
108
+ */
109
+ public getHeight(): number;
110
+ /**
111
+ * Load image to canvas.
112
+ * @public
113
+ * @param {string} url - Image url.
114
+ * @pararm {imageCallback} [callback] - Image onload callback.
115
+ */
116
+ public load(url: string, callback: any): void;
117
+ /**
118
+ * Open canvas image in the new window.
119
+ * @public
120
+ */
121
+ public openImage(): void;
122
+ destroy(): void;
123
+ }
@@ -0,0 +1,12 @@
1
+ export class Lock {
2
+ _lock: number;
3
+ lock(key: any): void;
4
+ free(key: any): void;
5
+ isFree(): boolean;
6
+ isLocked(): boolean;
7
+ }
8
+ export class Key {
9
+ static set _staticCounter(arg: any);
10
+ static get _staticCounter(): any;
11
+ _id: number;
12
+ }
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Represents a geographical point with a certain latitude, longitude and height.
3
+ * @class
4
+ * @param {number} [lon] - Longitude.
5
+ * @param {number} [lat] - Latitude.
6
+ * @param {number} [height] - Height over the surface.
7
+ */
8
+ export class LonLat {
9
+ /**
10
+ * Creates coordinates array.
11
+ * @static
12
+ * @param{Array.<Array<number>>} arr - Coordinates array data. (exactly 3 entries)
13
+ * @return{Array.<LonLat>} the same coordinates array but each element is LonLat instance.
14
+ */
15
+ static join(arr: Array<Array<number>>): Array<LonLat>;
16
+ /**
17
+ * Creates an object by coordinate array.
18
+ * @static
19
+ * @param {Array.<number>} arr - Coordiante array, where first is longitude, second is latitude and third is a height. (exactly 3 entries)
20
+ * @returns {LonLat} -
21
+ */
22
+ static createFromArray(arr: Array<number>): LonLat;
23
+ /**
24
+ * Converts degrees to mercator coordinates.
25
+ * @static
26
+ * @param {number} lon - Degrees longitude.
27
+ * @param {number} lat - Degrees latitude.
28
+ * @param {number} [height] - Height.
29
+ * @returns {LonLat} -
30
+ */
31
+ static forwardMercator(lon: number, lat: number, height?: number): LonLat;
32
+ /**
33
+ * Converts mercator to degrees coordinates.
34
+ * @static
35
+ * @param {number} x - Mercator longitude.
36
+ * @param {number} y - Mercator latitude.
37
+ * @param {number} [height] - Height.
38
+ * @returns {LonLat} -
39
+ */
40
+ static inverseMercator(x: number, y: number, height?: number): LonLat;
41
+ /**
42
+ * @param {number} [lon] - Longitude.
43
+ * @param {number} [lat] - Latitude.
44
+ * @param {number} [height] - Height over the surface.
45
+ */
46
+ constructor(lon?: number, lat?: number, height?: number);
47
+ /**
48
+ * Longitude.
49
+ * @public
50
+ * @type {number}
51
+ */
52
+ public lon: number;
53
+ /**
54
+ * Latitude.
55
+ * @public
56
+ * @type {number}
57
+ */
58
+ public lat: number;
59
+ /**
60
+ * Height.
61
+ * @public
62
+ * @type {number}
63
+ */
64
+ public height: number;
65
+ isZero(): boolean;
66
+ /**
67
+ * Sets coordinates.
68
+ * @public
69
+ * @param {number} [lon] - Longitude.
70
+ * @param {number} [lat] - Latitude.
71
+ * @param {number} [height] - Height.
72
+ * @returns {LonLat} -
73
+ */
74
+ public set(lon?: number, lat?: number, height?: number): LonLat;
75
+ /**
76
+ * Copy coordinates.
77
+ * @public
78
+ * @param {LonLat} [lonLat] - Coordinates to copy.
79
+ * @returns {LonLat} -
80
+ */
81
+ public copy(lonLat?: LonLat): LonLat;
82
+ /**
83
+ * Clone the coordiante.
84
+ * @public
85
+ * @returns {LonLat} -
86
+ */
87
+ public clone(): LonLat;
88
+ /**
89
+ * Converts to mercator coordinates.
90
+ * @public
91
+ * @returns {LonLat} -
92
+ */
93
+ public forwardMercator(): LonLat;
94
+ forwardMercatorEPS01(): LonLat;
95
+ /**
96
+ * Converts from mercator coordinates.
97
+ * @public
98
+ * @returns {LonLat} -
99
+ */
100
+ public inverseMercator(): LonLat;
101
+ /**
102
+ * Compares coordinates.
103
+ * @public
104
+ * @param {LonLat} b - Coordinate to compare with.
105
+ * @returns {boolean} -
106
+ */
107
+ public equal(b: LonLat): boolean;
108
+ }
@@ -0,0 +1,42 @@
1
+ export class Popup {
2
+ static set _staticCounter(arg: any);
3
+ static get _staticCounter(): any;
4
+ /**
5
+ *
6
+ * @param {*} options
7
+ */
8
+ constructor(options: any);
9
+ _id: number;
10
+ events: Events;
11
+ _template: string;
12
+ el: ChildNode;
13
+ _title: any;
14
+ _content: any;
15
+ _contentEl: any;
16
+ _titleEl: any;
17
+ _planet: any;
18
+ _offset: any;
19
+ _lonLat: any;
20
+ _cartPos: Vec3;
21
+ _visibility: any;
22
+ _renderTemplate(): ChildNode;
23
+ _updatePosition(): void;
24
+ setScreen(p: any): void;
25
+ get clientWidth(): any;
26
+ get clientHeight(): any;
27
+ setOffset(x?: number, y?: number): Popup;
28
+ render(params: any): Popup;
29
+ _tipEl: any;
30
+ setVisibility(visibility: any): Popup;
31
+ getContainer(): any;
32
+ getToolbarContainer(): any;
33
+ show(): Popup;
34
+ hide(): Popup;
35
+ setCartesian3v(cart: any, height?: number): Popup;
36
+ setTitle(html: any): Popup;
37
+ setLonLat(lonLat: any): Popup;
38
+ setContent(content: any): Popup;
39
+ clear(): void;
40
+ }
41
+ import { Events } from "./Events.js";
42
+ import { Vec3 } from "./math/Vec3.js";
@@ -0,0 +1,19 @@
1
+ export class QueueArray {
2
+ /**
3
+ *
4
+ * @param {number} [size]
5
+ */
6
+ constructor(size?: number);
7
+ _size: number;
8
+ _array: any[];
9
+ _popIndex: number;
10
+ _shiftIndex: number;
11
+ length: number;
12
+ reset(): void;
13
+ clear(): void;
14
+ push(data: any): void;
15
+ pop(): any;
16
+ unshift(data: any): void;
17
+ shift(): any;
18
+ each(callback: any): void;
19
+ }
@@ -0,0 +1,80 @@
1
+ /**
2
+ * 2D Rectangle class.
3
+ * @class
4
+ * @param {number} [left] - Left coordinate. 0 - default.
5
+ * @param {number} [top] - Top coordinate. 0 - default.
6
+ * @param {number} [right] - Right coordinate. 0 - default.
7
+ * @param {number} [bottom] - Bottom coordinate. 0 - default.
8
+ */
9
+ export class Rectangle {
10
+ /**
11
+ * @param {number} [left] - Left coordinate. 0 - default.
12
+ * @param {number} [top] - Top coordinate. 0 - default.
13
+ * @param {number} [right] - Right coordinate. 0 - default.
14
+ * @param {number} [bottom] - Bottom coordinate. 0 - default.
15
+ */
16
+ constructor(left?: number, top?: number, right?: number, bottom?: number);
17
+ /**
18
+ * Left coordinate.
19
+ * @public
20
+ * @type {number}
21
+ */
22
+ public left: number;
23
+ /**
24
+ * Right coordinate.
25
+ * @public
26
+ * @type {number}
27
+ */
28
+ public right: number;
29
+ /**
30
+ * Top coordinate.
31
+ * @public
32
+ * @type {number}
33
+ */
34
+ public top: number;
35
+ /**
36
+ * Top coordinate.
37
+ * @public
38
+ * @type {number}
39
+ */
40
+ public bottom: number;
41
+ /**
42
+ * Clone rectangle object.
43
+ * @public
44
+ * @returns {Rectangle}
45
+ */
46
+ public clone(): Rectangle;
47
+ /**
48
+ * Returns rectangle width.
49
+ * @public
50
+ * @type {number}
51
+ */
52
+ public getWidth(): number;
53
+ /**
54
+ * Returns rectangle height.
55
+ * @public
56
+ * @type {number}
57
+ */
58
+ public getHeight(): number;
59
+ /**
60
+ * Returns rectangle area.
61
+ * @public
62
+ * @type {number}
63
+ */
64
+ public getSquare(): number;
65
+ /**
66
+ * Returns rectangle diagonal size.
67
+ * @public
68
+ * @type {number}
69
+ */
70
+ public getDiagonal(): number;
71
+ /**
72
+ * Returns true if rectangle fits their size in width and height.
73
+ * @public
74
+ * @param {number} width - Width.
75
+ * @param {number} height - Height.
76
+ * @type {boolean}
77
+ */
78
+ public fit(width: number, height: number): boolean;
79
+ isInside(x: any, y: any): boolean;
80
+ }
@@ -0,0 +1,19 @@
1
+ export class Stack {
2
+ /**
3
+ *
4
+ * @param {number} [size]
5
+ */
6
+ constructor(size?: number);
7
+ _current: Node;
8
+ _head: Node;
9
+ current(): Node;
10
+ push(data: any): void;
11
+ pop(data: any): any;
12
+ popPrev(data: any): any;
13
+ }
14
+ declare class Node {
15
+ next: any;
16
+ prev: any;
17
+ data: any;
18
+ }
19
+ export {};
@@ -0,0 +1,24 @@
1
+ export namespace ajax {
2
+ /**
3
+ * Send an ajax request.
4
+ * @function
5
+ * @param {string} url - Url path.
6
+ * @param {Object} [params] - Ajax parameters:
7
+ * @param {ajax.Method|string} [params.type] - 'POST' or 'GET' ajax method. 'GET' is default.
8
+ * @param {boolean} [params.async] - Asynchronous ajax flag. True is default.
9
+ * @param {Object} [params.data] - Qery data.
10
+ * @param {Object} [params.sender] - Sender object, that success callback binded with. ActiveXObject is default.
11
+ * @param {string} [params.responseType] - Responce data type. Culd be 'text', 'json', 'jsonp', 'html'. 'text' is default.
12
+ * @param {ajax.Xhr~successCallback} [params.success] - The callback that handles the success response.
13
+ * @param {ajax.Xhr~errorCallback} [params.error] - The callback that handles the failed response.
14
+ * @param {ajax.Xhr~abortCallback} [params.abort] - The callback that handles aborted requests.
15
+ * @returns {ajax.Xhr} - Returns object that could be aborted.
16
+ */
17
+ function request(url: string, params?: {
18
+ type?: any;
19
+ async?: boolean;
20
+ data?: any;
21
+ sender?: any;
22
+ responseType?: string;
23
+ }): ajax.Xhr;
24
+ }