@openglobus/og 0.11.4 → 0.11.8

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 (260) hide show
  1. package/css/og.css +3 -2
  2. package/package.json +12 -14
  3. package/src/og/Clock.js +6 -10
  4. package/src/og/Events.js +5 -7
  5. package/src/og/Extent.js +73 -32
  6. package/src/og/Globe.js +8 -5
  7. package/src/og/ImageCanvas.js +18 -15
  8. package/src/og/LonLat.js +13 -10
  9. package/src/og/Popup.js +19 -17
  10. package/src/og/QueueArray.js +3 -4
  11. package/src/og/Rectangle.js +4 -6
  12. package/src/og/Stack.js +2 -4
  13. package/src/og/ajax.js +20 -14
  14. package/src/og/astro/earth.js +21 -15
  15. package/src/og/bv/Box.js +2 -3
  16. package/src/og/bv/Sphere.js +10 -7
  17. package/src/og/camera/Frustum.js +19 -12
  18. package/src/og/camera/PlanetCamera.js +9 -5
  19. package/src/og/control/CompassButton.js +1 -2
  20. package/src/og/control/Control.js +7 -9
  21. package/src/og/control/DebugInfo.js +0 -1
  22. package/src/og/control/KeyboardNavigation.js +9 -9
  23. package/src/og/control/LayerSwitcher.js +21 -20
  24. package/src/og/control/Lighting.js +74 -64
  25. package/src/og/control/MouseNavigation.js +21 -18
  26. package/src/og/control/MouseWheelZoomControl.js +257 -0
  27. package/src/og/control/SegmentBoundVisualization.js +5 -6
  28. package/src/og/control/ShowFps.js +12 -7
  29. package/src/og/control/SimpleNavigation.js +5 -7
  30. package/src/og/control/Sun.js +22 -12
  31. package/src/og/control/ToggleWireframe.js +3 -3
  32. package/src/og/control/TouchNavigation.js +43 -32
  33. package/src/og/control/ZoomControl.js +40 -24
  34. package/src/og/control/index.js +2 -0
  35. package/src/og/control/visibleExtent/Segment.js +1862 -0
  36. package/src/og/control/visibleExtent/VisibleExtent.js +80 -0
  37. package/src/og/control/visibleExtent/drawnode.js +751 -0
  38. package/src/og/ellipsoid/Ellipsoid.js +149 -57
  39. package/src/og/ellipsoid/wgs84.js +3 -3
  40. package/src/og/entity/BaseBillboard.js +72 -30
  41. package/src/og/entity/Billboard.js +9 -5
  42. package/src/og/entity/BillboardHandler.js +315 -62
  43. package/src/og/entity/Entity.js +39 -1
  44. package/src/og/entity/EntityCollection.js +47 -24
  45. package/src/og/entity/GeoObject.js +228 -0
  46. package/src/og/entity/GeoObjectHandler.js +910 -0
  47. package/src/og/entity/GeometryHandler.js +595 -123
  48. package/src/og/entity/Label.js +62 -30
  49. package/src/og/entity/LabelHandler.js +40 -242
  50. package/src/og/entity/LabelWorker.js +218 -0
  51. package/src/og/entity/Object3d.js +504 -0
  52. package/src/og/entity/PointCloud.js +76 -28
  53. package/src/og/entity/PointCloudHandler.js +5 -5
  54. package/src/og/entity/Ray.js +49 -16
  55. package/src/og/entity/Strip.js +72 -43
  56. package/src/og/entity/StripHandler.js +23 -23
  57. package/src/og/layer/BaseGeoImage.js +50 -19
  58. package/src/og/layer/CanvasTiles.js +16 -17
  59. package/src/og/layer/GeoImage.js +8 -16
  60. package/src/og/layer/GeoTexture2d.js +2 -10
  61. package/src/og/layer/GeoVideo.js +2 -10
  62. package/src/og/layer/KML.js +55 -33
  63. package/src/og/layer/Layer.js +24 -32
  64. package/src/og/layer/Material.js +1 -1
  65. package/src/og/layer/Vector.js +94 -48
  66. package/src/og/layer/WMS.js +33 -18
  67. package/src/og/layer/XYZ.js +4 -5
  68. package/src/og/light/LightSource.js +19 -12
  69. package/src/og/math/Mat3.js +24 -12
  70. package/src/og/math/Mat4.js +603 -603
  71. package/src/og/math/Plane.js +19 -18
  72. package/src/og/math/Ray.js +17 -12
  73. package/src/og/math/Vec2.js +24 -14
  74. package/src/og/math/Vec3.js +60 -30
  75. package/src/og/math/coder.js +7 -7
  76. package/src/og/proj/EPSG3857.js +3 -3
  77. package/src/og/proj/EPSG4326.js +3 -3
  78. package/src/og/proj/Proj.js +2 -4
  79. package/src/og/quadTree/Node.js +3 -3
  80. package/src/og/renderer/Renderer.js +106 -124
  81. package/src/og/renderer/RendererEvents.js +45 -23
  82. package/src/og/scene/BaseNode.js +2 -3
  83. package/src/og/scene/Planet.js +51 -90
  84. package/src/og/scene/RenderNode.js +15 -8
  85. package/src/og/segment/Segment.js +60 -156
  86. package/src/og/segment/Slice.js +45 -0
  87. package/src/og/shaders/drawnode.js +245 -342
  88. package/src/og/shaders/geoObject.js +211 -0
  89. package/src/og/shaders/pointCloud.js +41 -41
  90. package/src/og/shaders/shape.js +12 -18
  91. package/src/og/shaders/skybox.js +36 -36
  92. package/src/og/shaders/toneMapping.js +1 -0
  93. package/src/og/shapes/BaseShape.js +108 -36
  94. package/src/og/shapes/Icosphere.js +25 -10
  95. package/src/og/shapes/Sphere.js +8 -11
  96. package/src/og/utils/FontAtlas.js +6 -2
  97. package/src/og/utils/GeoImageCreator.js +5 -1
  98. package/src/og/utils/TextureAtlas.js +18 -20
  99. package/src/og/utils/VectorTileCreator.js +1 -3
  100. package/src/og/utils/shared.js +2 -2
  101. package/src/og/webgl/Handler.js +215 -162
  102. package/src/og/webgl/Multisample.js +44 -16
  103. package/src/og/webgl/Program.js +78 -33
  104. package/src/og/webgl/callbacks.js +3 -3
  105. package/types/Clock.d.ts +0 -94
  106. package/types/Deferred.d.ts +0 -6
  107. package/types/Events.d.ts +0 -77
  108. package/types/Extent.d.ts +0 -166
  109. package/types/Globe.d.ts +0 -82
  110. package/types/ImageCanvas.d.ts +0 -123
  111. package/types/Lock.d.ts +0 -12
  112. package/types/LonLat.d.ts +0 -108
  113. package/types/Popup.d.ts +0 -42
  114. package/types/QueueArray.d.ts +0 -19
  115. package/types/Rectangle.d.ts +0 -80
  116. package/types/Stack.d.ts +0 -19
  117. package/types/ajax.d.ts +0 -24
  118. package/types/arial.d.ts +0 -48
  119. package/types/astro/astro.d.ts +0 -38
  120. package/types/astro/earth.d.ts +0 -7
  121. package/types/astro/jd.d.ts +0 -254
  122. package/types/bv/Box.d.ts +0 -30
  123. package/types/bv/Sphere.d.ts +0 -38
  124. package/types/bv/index.d.ts +0 -3
  125. package/types/camera/Camera.d.ts +0 -312
  126. package/types/camera/Frustum.d.ts +0 -133
  127. package/types/camera/PlanetCamera.d.ts +0 -218
  128. package/types/camera/index.d.ts +0 -3
  129. package/types/cons.d.ts +0 -40
  130. package/types/control/CompassButton.d.ts +0 -17
  131. package/types/control/Control.d.ts +0 -104
  132. package/types/control/DebugInfo.d.ts +0 -15
  133. package/types/control/EarthCoordinates.d.ts +0 -47
  134. package/types/control/EarthNavigation.d.ts +0 -42
  135. package/types/control/GeoImageDragControl.d.ts +0 -6
  136. package/types/control/KeyboardNavigation.d.ts +0 -21
  137. package/types/control/LayerSwitcher.d.ts +0 -21
  138. package/types/control/Lighting.d.ts +0 -16
  139. package/types/control/MouseNavigation.d.ts +0 -47
  140. package/types/control/ScaleControl.d.ts +0 -22
  141. package/types/control/ShowFps.d.ts +0 -11
  142. package/types/control/SimpleNavigation.d.ts +0 -25
  143. package/types/control/Sun.d.ts +0 -50
  144. package/types/control/ToggleWireframe.d.ts +0 -12
  145. package/types/control/TouchNavigation.d.ts +0 -48
  146. package/types/control/ZoomControl.d.ts +0 -27
  147. package/types/control/index.d.ts +0 -17
  148. package/types/ellipsoid/Ellipsoid.d.ts +0 -146
  149. package/types/ellipsoid/index.d.ts +0 -3
  150. package/types/ellipsoid/wgs84.d.ts +0 -6
  151. package/types/entity/BaseBillboard.d.ts +0 -208
  152. package/types/entity/Billboard.d.ts +0 -94
  153. package/types/entity/BillboardHandler.d.ts +0 -78
  154. package/types/entity/Entity.d.ts +0 -333
  155. package/types/entity/EntityCollection.d.ts +0 -311
  156. package/types/entity/Geometry.d.ts +0 -74
  157. package/types/entity/GeometryHandler.d.ts +0 -76
  158. package/types/entity/Label.d.ts +0 -189
  159. package/types/entity/LabelHandler.d.ts +0 -29
  160. package/types/entity/PointCloud.d.ts +0 -174
  161. package/types/entity/PointCloudHandler.d.ts +0 -38
  162. package/types/entity/Polyline.d.ts +0 -306
  163. package/types/entity/PolylineHandler.d.ts +0 -18
  164. package/types/entity/Ray.d.ts +0 -124
  165. package/types/entity/RayHandler.d.ts +0 -67
  166. package/types/entity/ShapeHandler.d.ts +0 -22
  167. package/types/entity/Strip.d.ts +0 -119
  168. package/types/entity/StripHandler.d.ts +0 -38
  169. package/types/entity/index.d.ts +0 -8
  170. package/types/index.core.d.ts +0 -65
  171. package/types/index.d.ts +0 -45
  172. package/types/index.webgl.d.ts +0 -7
  173. package/types/input/KeyboardHandler.d.ts +0 -10
  174. package/types/input/MouseHandler.d.ts +0 -5
  175. package/types/input/TouchHandler.d.ts +0 -5
  176. package/types/input/input.d.ts +0 -34
  177. package/types/layer/BaseGeoImage.d.ts +0 -94
  178. package/types/layer/CanvasTiles.d.ts +0 -68
  179. package/types/layer/GeoImage.d.ts +0 -52
  180. package/types/layer/GeoTexture2d.d.ts +0 -8
  181. package/types/layer/GeoVideo.d.ts +0 -55
  182. package/types/layer/KML.d.ts +0 -63
  183. package/types/layer/Layer.d.ts +0 -325
  184. package/types/layer/Material.d.ts +0 -45
  185. package/types/layer/Vector.d.ts +0 -208
  186. package/types/layer/WMS.d.ts +0 -63
  187. package/types/layer/XYZ.d.ts +0 -120
  188. package/types/layer/index.d.ts +0 -10
  189. package/types/light/LightSource.d.ts +0 -178
  190. package/types/math/Line2.d.ts +0 -11
  191. package/types/math/Line3.d.ts +0 -10
  192. package/types/math/Mat3.d.ts +0 -65
  193. package/types/math/Mat4.d.ts +0 -176
  194. package/types/math/Plane.d.ts +0 -18
  195. package/types/math/Quat.d.ts +0 -379
  196. package/types/math/Ray.d.ts +0 -82
  197. package/types/math/Vec2.d.ts +0 -309
  198. package/types/math/Vec3.d.ts +0 -460
  199. package/types/math/Vec4.d.ts +0 -162
  200. package/types/math/coder.d.ts +0 -43
  201. package/types/math/index.d.ts +0 -11
  202. package/types/math.d.ts +0 -261
  203. package/types/mercator.d.ts +0 -92
  204. package/types/proj/EPSG3857.d.ts +0 -6
  205. package/types/proj/EPSG4326.d.ts +0 -6
  206. package/types/proj/Proj.d.ts +0 -42
  207. package/types/quadTree/EntityCollectionNode.d.ts +0 -34
  208. package/types/quadTree/Node.d.ts +0 -61
  209. package/types/quadTree/quadTree.d.ts +0 -40
  210. package/types/renderer/Renderer.d.ts +0 -298
  211. package/types/renderer/RendererEvents.d.ts +0 -233
  212. package/types/res/images.d.ts +0 -3
  213. package/types/scene/Axes.d.ts +0 -11
  214. package/types/scene/BaseNode.d.ts +0 -60
  215. package/types/scene/Planet.d.ts +0 -577
  216. package/types/scene/RenderNode.d.ts +0 -142
  217. package/types/scene/SkyBox.d.ts +0 -10
  218. package/types/scene/index.d.ts +0 -4
  219. package/types/segment/Segment.d.ts +0 -279
  220. package/types/segment/SegmentLonLat.d.ts +0 -16
  221. package/types/segment/segmentHelper.d.ts +0 -13
  222. package/types/shaders/billboard.d.ts +0 -3
  223. package/types/shaders/depth.d.ts +0 -2
  224. package/types/shaders/drawnode.d.ts +0 -7
  225. package/types/shaders/label.d.ts +0 -4
  226. package/types/shaders/pointCloud.d.ts +0 -2
  227. package/types/shaders/polyline.d.ts +0 -3
  228. package/types/shaders/ray.d.ts +0 -2
  229. package/types/shaders/screenFrame.d.ts +0 -2
  230. package/types/shaders/shape.d.ts +0 -4
  231. package/types/shaders/skybox.d.ts +0 -2
  232. package/types/shaders/toneMapping.d.ts +0 -2
  233. package/types/shapes/BaseShape.d.ts +0 -250
  234. package/types/shapes/Sphere.d.ts +0 -41
  235. package/types/terrain/BilTerrain.d.ts +0 -7
  236. package/types/terrain/EmptyTerrain.d.ts +0 -72
  237. package/types/terrain/Geoid.d.ts +0 -26
  238. package/types/terrain/GlobusTerrain.d.ts +0 -116
  239. package/types/terrain/MapboxTerrain.d.ts +0 -7
  240. package/types/terrain/index.d.ts +0 -5
  241. package/types/utils/FontAtlas.d.ts +0 -14
  242. package/types/utils/GeoImageCreator.d.ts +0 -30
  243. package/types/utils/ImagesCacheManager.d.ts +0 -10
  244. package/types/utils/Loader.d.ts +0 -25
  245. package/types/utils/NormalMapCreator.d.ts +0 -39
  246. package/types/utils/PlainSegmentWorker.d.ts +0 -10
  247. package/types/utils/TerrainWorker.d.ts +0 -9
  248. package/types/utils/TextureAtlas.d.ts +0 -111
  249. package/types/utils/VectorTileCreator.d.ts +0 -16
  250. package/types/utils/colorTable.d.ts +0 -143
  251. package/types/utils/earcut.d.ts +0 -6
  252. package/types/utils/shared.d.ts +0 -231
  253. package/types/webgl/Framebuffer.d.ts +0 -135
  254. package/types/webgl/Handler.d.ts +0 -388
  255. package/types/webgl/Multisample.d.ts +0 -89
  256. package/types/webgl/Program.d.ts +0 -155
  257. package/types/webgl/ProgramController.d.ts +0 -89
  258. package/types/webgl/callbacks.d.ts +0 -1
  259. package/types/webgl/index.d.ts +0 -6
  260. package/types/webgl/types.d.ts +0 -2
@@ -1,55 +0,0 @@
1
- /**
2
- * Used to load and display a video stream by specific corners coordinates on the globe, implements og.layer.BaseGeoImage interface.
3
- * @class
4
- * @extends {BaseGeoImage}
5
- */
6
- export class GeoVideo extends BaseGeoImage {
7
- /**
8
- * HTML5 video element object.
9
- * @private
10
- * @type {Object}
11
- */
12
- private _video;
13
- /**
14
- * VIdeo source url path.
15
- * @private
16
- * @type {String}
17
- */
18
- private _src;
19
- /**
20
- * Sets video source url path.
21
- * @public
22
- * @param {String} srs - Video url path.
23
- */
24
- public setSrc(src: any): void;
25
- /**
26
- * Sets HTML5 video object.
27
- * @public
28
- * @param {Object} video - HTML5 video element object.
29
- */
30
- public setVideoElement(video: any): void;
31
- /**
32
- * Creates or refresh source video GL texture.
33
- * @virtual
34
- * @protected
35
- */
36
- protected _createSourceTexture(): void;
37
- /**
38
- * @private
39
- */
40
- private _onCanPlay;
41
- /**
42
- * @private
43
- */
44
- private _onError;
45
- /**
46
- * Loads planet segment material. In this case - GeoImage source video.
47
- * @virtual
48
- * @public
49
- * @param {Material} material - GeoImage planet material.
50
- */
51
- public loadMaterial(material: any): void;
52
- _renderingProjType1(): void;
53
- _renderingProjType0(): void;
54
- }
55
- import { BaseGeoImage } from "./BaseGeoImage.js";
@@ -1,63 +0,0 @@
1
- /**
2
- * Layer to render KMLs files
3
- * @class
4
- * @extends {Vector}
5
- */
6
- export class KML extends Vector {
7
- _billboard: any;
8
- /**
9
- * @type {string}
10
- */
11
- _color: string;
12
- /**
13
- * @private
14
- */
15
- private _extractCoordonatesFromKml;
16
- /**
17
- * Creates billboards or polylines from array of lonlat.
18
- * @private
19
- * @param {Array} coordonates
20
- * @param {string} color
21
- * @returns {Array<Entity>}
22
- */
23
- private _convertCoordonatesIntoEntities;
24
- /**
25
- * @private
26
- * @returns {Document}
27
- */
28
- private _getXmlContent;
29
- /**
30
- * @private
31
- */
32
- private _expandExtents;
33
- /**
34
- * @public
35
- * @param {File[]} kmls
36
- * @returns {Promise<{entities: Entity[], extent: Extent}>}
37
- */
38
- public addKmlFromFiles(kmls: File[]): Promise<{
39
- entities: Entity[];
40
- extent: Extent;
41
- }>;
42
- /**
43
- * @param {string} color
44
- * @public
45
- */
46
- public setColor(color: string): void;
47
- /**
48
- * @private
49
- */
50
- private _getKmlFromUrl;
51
- /**
52
- * @public
53
- * @param {string} url - Url of the KML to display. './myFile.kml' or 'http://mySite/myFile.kml' for example.
54
- * @returns {Promise<{entities: Entity[], extent: Extent}>}
55
- */
56
- public addKmlFromUrl(url: string): Promise<{
57
- entities: Entity[];
58
- extent: Extent;
59
- }>;
60
- }
61
- import { Vector } from "./Vector.js";
62
- import { Entity } from "../entity/Entity.js";
63
- import { Extent } from "../Extent.js";
@@ -1,325 +0,0 @@
1
- export const FADING_FACTOR: 0.29;
2
- /**
3
- * @classdesc
4
- * Base class; normally only used for creating subclasses and not instantiated in apps.
5
- * A visual representation of raster or vector map data well known as a layer.
6
- * @class
7
- * @param {String} [name="noname"] - Layer name.
8
- * @param {Object} [options] - Layer options:
9
- * @param {number} [options.opacity=1.0] - Layer opacity.
10
- * @param {Array.<number>} [options.transparentColor=[-1,-1,-1]] - RGB color that defines transparent color. (exactly 3 entries)
11
- * @param {number} [options.minZoom=0] - Minimal visibility zoom level.
12
- * @param {number} [options.maxZoom=0] - Maximal visibility zoom level.
13
- * @param {string} [options.attribution] - Layer attribution that displayed in the attribution area on the screen.
14
- * @param {boolean} [options.isBaseLayer=false] - This is a base layer.
15
- * @param {boolean} [options.visibility=true] - Layer visibility.
16
- * @param {Extent} [options.extent=[[-180.0, -90.0], [180.0, 90.0]]] - Visible extent.
17
- * @param {Vec3} [options.ambient=[0.1, 0.1, 0.21]] - Ambient RGB color.
18
- * @param {Vec3} [options.diffuse=[1.0, 1.0, 1.0]] - Diffuse RGB color.
19
- * @param {Vec3} [options.specular=[0.00025, 0.00015, 0.0001]] - Specular RGB color.
20
- * @param {Number} [options.shininess=100] - Shininess.
21
- *
22
- * @fires og.Layer#visibilitychange
23
- * @fires og.Layer#add
24
- * @fires og.Layer#remove
25
- * @fires og.layer.Vector#mousemove
26
- * @fires og.layer.Vector#mouseenter
27
- * @fires og.layer.Vector#mouseleave
28
- * @fires og.layer.Vector#lclick
29
- * @fires og.layer.Vector#rclick
30
- * @fires og.layer.Vector#mclick
31
- * @fires og.layer.Vector#ldblclick
32
- * @fires og.layer.Vector#rdblclick
33
- * @fires og.layer.Vector#mdblclick
34
- * @fires og.layer.Vector#lup
35
- * @fires og.layer.Vector#rup
36
- * @fires og.layer.Vector#mup
37
- * @fires og.layer.Vector#ldown
38
- * @fires og.layer.Vector#rdown
39
- * @fires og.layer.Vector#mdown
40
- * @fires og.layer.Vector#lhold
41
- * @fires og.layer.Vector#rhold
42
- * @fires og.layer.Vector#mhold
43
- * @fires og.layer.Vector#mousewheel
44
- * @fires og.layer.Vector#touchmove
45
- * @fires og.layer.Vector#touchstart
46
- * @fires og.layer.Vector#touchend
47
- * @fires og.layer.Vector#doubletouch
48
- */
49
- export class Layer {
50
- static getTMS(x: any, y: any, z: any): {
51
- x: any;
52
- y: number;
53
- z: any;
54
- };
55
- static getTileIndex(...arr: any[]): string;
56
- static set __layersCounter(arg: any);
57
- static get __layersCounter(): any;
58
- static set __requestsCounter(arg: any);
59
- static get __requestsCounter(): any;
60
- /**
61
- * Maximum loading queries at one time.
62
- * @const
63
- * @type {number}
64
- */
65
- static get MAX_REQUESTS(): number;
66
- constructor(name: any, options?: {});
67
- /**
68
- * Layer user name.
69
- * @public
70
- * @type {string}
71
- */
72
- public name: string;
73
- _labelMaxLetters: any;
74
- displayInLayerSwitcher: any;
75
- _hasImageryTiles: boolean;
76
- /**
77
- * Layer global opacity.
78
- * @public
79
- * @type {number}
80
- */
81
- public _opacity: number;
82
- /**
83
- * Transparent RGB color mask.
84
- * @public
85
- * @type {Array.<number>} - (exactly 3 entries)
86
- */
87
- public transparentColor: Array<number>;
88
- /**
89
- * Minimal zoom level when layer is visibile.
90
- * @public
91
- * @type {number}
92
- */
93
- public minZoom: number;
94
- /**
95
- * Maximal zoom level when layer is visibile.
96
- * @public
97
- * @type {number}
98
- */
99
- public maxZoom: number;
100
- /**
101
- * Layer light material parameters.
102
- * @public
103
- * @type {Object}
104
- */
105
- public ambient: any;
106
- diffuse: any;
107
- specular: any;
108
- shininess: any;
109
- /**
110
- * Planet node.
111
- * @protected
112
- * @type {Planet}
113
- */
114
- protected _planet: any;
115
- /**
116
- * Unic identifier.
117
- * @protected
118
- * @type {number}
119
- */
120
- protected _id: number;
121
- /**
122
- * Layer attribution.
123
- * @protected
124
- * @type {string}
125
- */
126
- protected _attribution: string;
127
- /**
128
- * Layer z-index.
129
- * @protected
130
- * @type {number}
131
- */
132
- protected _zIndex: number;
133
- /**
134
- * Base layer type flag.
135
- * @protected
136
- * @type {boolean}
137
- */
138
- protected _isBaseLayer: boolean;
139
- _defaultTextures: any;
140
- /**
141
- * Layer visibility.
142
- * @protected
143
- * @type {boolean}
144
- */
145
- protected _visibility: boolean;
146
- _fading: any;
147
- _fadingFactor: number;
148
- _fadingOpacity: number;
149
- /**
150
- * Height over the ground.
151
- * @protected
152
- * @type {number}
153
- */
154
- protected _height: number;
155
- /**
156
- * Visible degrees extent.
157
- * @protected
158
- * @type {Extent}
159
- */
160
- protected _extent: Extent;
161
- createTexture: any;
162
- /**
163
- * Visible mercator extent.
164
- * @protected
165
- * @type {Extent}
166
- */
167
- protected _extentMerc: Extent;
168
- /**
169
- * Layer picking color. Assign when added to the planet.
170
- * @protected
171
- * @type {Vec3}
172
- */
173
- protected _pickingColor: Vec3;
174
- _pickingEnabled: any;
175
- /**
176
- * Events handler.
177
- * @public
178
- * @type {Events}
179
- */
180
- public events: Events;
181
- get instanceName(): string;
182
- get rendererEvents(): Events;
183
- set opacity(arg: number);
184
- get opacity(): number;
185
- set pickingEnabled(arg: boolean);
186
- get pickingEnabled(): boolean;
187
- /**
188
- * Returns true if a layer has imagery tiles.
189
- * @public
190
- * @virtual
191
- * @returns {boolean} - Imagery tiles flag.
192
- */
193
- public hasImageryTiles(): boolean;
194
- /**
195
- * Gets layer identifier.
196
- * @public
197
- * @returns {string} - Layer object id.
198
- */
199
- public getID(): string;
200
- /**
201
- * Compares layers instances.
202
- * @public
203
- * @param {Layer} layer - Layer instance to compare.
204
- * @returns {boolean} - Returns true if the layers is the same instance of the input.
205
- */
206
- public isEqual(layer: Layer): boolean;
207
- /**
208
- * Assign the planet.
209
- * @protected
210
- * @virtual
211
- * @param {Planet} planet - Planet render node.
212
- */
213
- protected _assignPlanet(planet: any): void;
214
- /**
215
- * Assign picking color to the layer.
216
- * @protected
217
- * @virtual
218
- */
219
- protected _bindPicking(): void;
220
- /**
221
- * Adds layer to the planet.
222
- * @public
223
- * @param {Planet} planet - Adds layer to the planet.
224
- */
225
- public addTo(planet: any): Layer;
226
- /**
227
- * Removes from planet.
228
- * @public
229
- * @returns {Layer} -This layer.
230
- */
231
- public remove(): Layer;
232
- /**
233
- * Clears layer material.
234
- * @virtual
235
- */
236
- clear(): void;
237
- /**
238
- * Returns planet instance.
239
- * @virtual
240
- */
241
- get planet(): any;
242
- /**
243
- * Sets layer attribution text.
244
- * @public
245
- * @param {string} html - HTML code that represents layer attribution, it could be just a text.
246
- */
247
- public setAttribution(html: string): void;
248
- /**
249
- * Sets height over the ground.
250
- * @public
251
- * @param {number} height - Layer height.
252
- */
253
- public setHeight(height: number): void;
254
- /**
255
- * Gets layer height.
256
- * @public
257
- * @returns {number} -
258
- */
259
- public getHeight(): number;
260
- /**
261
- * Sets z-index.
262
- * @public
263
- * @param {number} zIndex - Layer z-index.
264
- */
265
- public setZIndex(zIndex: number): void;
266
- /**
267
- * Gets z-index.
268
- * @public
269
- * @returns {number} -
270
- */
271
- public getZIndex(): number;
272
- /**
273
- * Set zIndex to the maximal value depend on other layers on the planet.
274
- * @public
275
- */
276
- public bringToFront(): void;
277
- /**
278
- * Returns true if the layer is a base.
279
- * @public
280
- * @returns {boolean} - Base layer flag.
281
- */
282
- public isBaseLayer(): boolean;
283
- /**
284
- * Sets base layer type true.
285
- * @public
286
- * @param {boolean} flag - Base layer flag.
287
- */
288
- public setBaseLayer(flag: boolean): void;
289
- /**
290
- * Sets layer visibility.
291
- * @public
292
- * @virtual
293
- * @param {boolean} visibility - Layer visibility.
294
- */
295
- public setVisibility(visibility: boolean): void;
296
- /**
297
- * Gets layer visibility.
298
- * @public
299
- * @returns {boolean} - Layer visibility.
300
- */
301
- public getVisibility(): boolean;
302
- /**
303
- * Sets visible geographical extent.
304
- * @public
305
- * @param {Extent} extent - Layer visible geographical extent.
306
- */
307
- public setExtent(extent: Extent): void;
308
- /**
309
- * Gets layer extent.
310
- * @public
311
- * @return {Extent} - Layer geodetic extent.
312
- */
313
- public getExtent(): Extent;
314
- /**
315
- * Special correction of the whole globe extent.
316
- * @protected
317
- */
318
- protected _correctFullExtent(): void;
319
- _refreshFadingOpacity(): boolean;
320
- createMaterial(segment: any): Material;
321
- }
322
- import { Extent } from "../Extent.js";
323
- import { Vec3 } from "../math/Vec3.js";
324
- import { Events } from "../Events.js";
325
- import { Material } from "./Material.js";
@@ -1,45 +0,0 @@
1
- export class Material {
2
- /**
3
- *
4
- * @param {*} segment
5
- * @param {*} layer
6
- */
7
- constructor(segment: any, layer: any);
8
- segment: any;
9
- layer: any;
10
- isReady: boolean;
11
- isLoading: boolean;
12
- texture: any;
13
- pickingMask: any;
14
- textureExists: boolean;
15
- appliedNodeId: number;
16
- texOffset: number[];
17
- loadingAttempts: number;
18
- _updateTexture: any;
19
- _updatePickingMask: any;
20
- pickingReady: boolean;
21
- /**
22
- *
23
- */
24
- abortLoading(): void;
25
- _createTexture(img: any): any;
26
- /**
27
- *
28
- * @param {*} img
29
- */
30
- applyImage(img: any): void;
31
- /**
32
- *
33
- * @param {*} texture
34
- * @param {*} pickingMask
35
- */
36
- applyTexture(texture: any, pickingMask: any): void;
37
- /**
38
- *
39
- */
40
- textureNotExists(): void;
41
- /**
42
- *
43
- */
44
- clear(): void;
45
- }
@@ -1,208 +0,0 @@
1
- /**
2
- * Vector layer represents alternative entities store. Used for geospatial data rendering like
3
- * points, lines, polygons, geometry objects etc.
4
- * @class
5
- * @extends {Layer}
6
- * @param {string} [name="noname"] - Layer name.
7
- * @param {Object} [options] - Layer options:
8
- * @param {number} [options.minZoom=0] - Minimal visible zoom. 0 is default
9
- * @param {number} [options.maxZoom=50] - Maximal visible zoom. 50 is default.
10
- * @param {string} [options.attribution] - Layer attribution.
11
- * @param {string} [options.zIndex=0] - Layer Z-order index. 0 is default.
12
- * @param {boolean} [options.visibility=true] - Layer visibility. True is default.
13
- * @param {boolean} [options.isBaseLayer=false] - Layer base layer. False is default.
14
- * @param {Array.<Entity>} [options.entities] - Entities array.
15
- * @param {Array.<number>} [options.scaleByDistance] - Scale by distance parameters. (exactly 3 entries)
16
- * First index - near distance to the entity, after entity becomes full scale.
17
- * Second index - far distance to the entity, when entity becomes zero scale.
18
- * Third index - far distance to the entity, when entity becomes invisible.
19
- * @param {number} [options.nodeCapacity=30] - Maximum entities quantity in the tree node. Rendering optimization parameter. 30 is default.
20
- * @param {boolean} [options.async=true] - Asynchronous vector data handling before rendering. True for optimization huge data.
21
- * @param {boolean} [options.clampToGround = false] - Clamp vector data to the ground.
22
- * @param {boolean} [options.relativeToGround = false] - Place vector data relative to the ground relief.
23
- * @param {Number} [options.polygonOffsetFactor=0.0] - The scale factor for the variable depth offset. The default value is 0.
24
- * @param {Number} [options.polygonOffsetUnits=-637000.0] - The multiplier by which an implementation-specific value is multiplied with to create a constant depth offset.
25
- *
26
- * @fires og.layer.Vector#entitymove
27
- * @fires og.layer.Vector#draw
28
- * @fires og.layer.Vector#add
29
- * @fires og.layer.Vector#remove
30
- * @fires og.layer.Vector#entityadd
31
- * @fires og.layer.Vector#entityremove
32
- * @fires og.layer.Vector#visibilitychange
33
- */
34
- export class Vector extends Layer {
35
- /**
36
- * @param {string} name
37
- * @param {*} [options]
38
- */
39
- constructor(name: string, options?: any);
40
- isVector: boolean;
41
- /**
42
- * First index - near distance to the entity, after that entity becomes full scale.
43
- * Second index - far distance to the entity, when entity becomes zero scale.
44
- * Third index - far distance to the entity, when entity becomes invisible.
45
- * @public
46
- * @type {Array.<number>} - (exactly 3 entries)
47
- */
48
- public scaleByDistance: Array<number>;
49
- pickingScale: any;
50
- /**
51
- * Asynchronous data handling before rendering.
52
- * @public
53
- * @type {boolean}
54
- */
55
- public async: boolean;
56
- /**
57
- * Vector data clamp to ground flag.
58
- * @public
59
- * @type {boolean}
60
- */
61
- public clampToGround: boolean;
62
- /**
63
- * Sets vector data relative to the ground relief.
64
- * @public
65
- * @type {boolean}
66
- */
67
- public relativeToGround: boolean;
68
- /**
69
- * Maximum entities quantity in the tree node.
70
- * @private
71
- */
72
- private _nodeCapacity;
73
- /**
74
- * Stored entities.
75
- * @private
76
- */
77
- private _entities;
78
- _stripEntityCollection: EntityCollection;
79
- _polylineEntityCollection: EntityCollection;
80
- _geometryHandler: GeometryHandler;
81
- _entityCollectionsTree: EntityCollectionNode;
82
- _entityCollectionsTreeNorth: EntityCollectionNodeWGS84;
83
- _entityCollectionsTreeSouth: EntityCollectionNodeWGS84;
84
- _renderingNodes: {};
85
- _renderingNodesNorth: {};
86
- _renderingNodesSouth: {};
87
- _counter: number;
88
- _deferredEntitiesPendingQueue: QueueArray;
89
- _pendingsQueue: any[];
90
- /**
91
- * Specifies the scale factor for gl.polygonOffset function to calculate depth values, 0.0 is default.
92
- * @public
93
- * @type {Number}
94
- */
95
- public polygonOffsetFactor: number;
96
- /**
97
- * Specifies the scale Units for gl.polygonOffset function to calculate depth values, 0.0 is default.
98
- * @public
99
- * @type {Number}
100
- */
101
- public polygonOffsetUnits: number;
102
- /**
103
- * Returns stored entities.
104
- * @public
105
- * @returns {Array.<Entity>} -
106
- */
107
- public getEntities(): Array<Entity>;
108
- /**
109
- * Adds entity to the layer.
110
- * @public
111
- * @param {Entity} entity - Entity.
112
- * @param {boolean} [rightNow] - Entity insertion option. False is deafult.
113
- * @returns {layer.Vector} - Returns this layer.
114
- */
115
- public add(entity: Entity, rightNow?: boolean): any;
116
- /**
117
- * Adds entity to the layer in the index position.
118
- * @public
119
- * @param {Entity} entity - Entity.
120
- * @param {Number} index - Index position.
121
- * @param {boolean} [rightNow] - Entity insertion option. False is deafult.
122
- * @returns {layer.Vector} - Returns this layer.
123
- */
124
- public insert(entity: Entity, index: number, rightNow?: boolean): any;
125
- _proceedEntity(entity: any, rightNow: any): void;
126
- /**
127
- * Adds entity array to the layer.
128
- * @public
129
- * @param {Array.<Entity>} entities - Entities array.
130
- * @param {boolean} [rightNow] - Entity insertion option. False is deafult.
131
- * @returns {layer.Vector} - Returns this layer.
132
- */
133
- public addEntities(entities: Array<Entity>, rightNow?: boolean): any;
134
- /**
135
- * Remove entity from layer.
136
- * TODO: memory leaks.
137
- * @public
138
- * @param {Entity} entity - Entity to remove.
139
- * @returns {layer.Vector} - Returns this layer.
140
- */
141
- public removeEntity(entity: Entity): any;
142
- /**
143
- * Refresh collected entities indexes from startIndex entitytes collection array position.
144
- * @public
145
- * @param {number} startIndex - Entity array index.
146
- */
147
- public _reindexEntitiesArray(startIndex: number): void;
148
- /**
149
- * Removes entities from layer.
150
- * @public
151
- * @param {Array.<Entity>} entities - Entity array.
152
- * @returns {layer.Vector} - Returns this layer.
153
- */
154
- public removeEntities(entities: Array<Entity>): any;
155
- /**
156
- * Sets scale by distance parameters.
157
- * @public
158
- * @param {number} near - Full scale entity distance.
159
- * @param {number} far - Zerol scale entity distance.
160
- * @param {number} [farInvisible] - Entity visibility distance.
161
- * @returns {layer.Vector} -
162
- */
163
- public setScaleByDistance(near: number, far: number, farInvisible?: number): any;
164
- /**
165
- * Safety entities loop.
166
- * @public
167
- * @param {callback} callback - Entity callback.
168
- */
169
- public each(callback: any): void;
170
- /**
171
- * Removes current entities from layer and adds new entities.
172
- * @public
173
- * @param {Array.<Entity>} entities - New entity array.
174
- * @returns {layer.Vector} - Returns layer instance.
175
- */
176
- public setEntities(entities: Array<Entity>): any;
177
- _createEntityCollectionsTree(entitiesForTree: any): void;
178
- _bindEventsDefault(entityCollection: any): void;
179
- _collectStripCollectionPASS(outArr: any): void;
180
- _collectPolylineCollectionPASS(outArr: any): void;
181
- collectVisibleCollections(outArr: any): void;
182
- _secondPASS: any[];
183
- _queueDeferredNode(node: any): void;
184
- _execDeferredNode(node: any): void;
185
- /**
186
- * Start to load tile material.
187
- * @public
188
- * @virtual
189
- * @param {Segment.Material} material - Current material.
190
- */
191
- public loadMaterial(material: any): void;
192
- /**
193
- * Abort exact material loading.
194
- * @public
195
- * @param {Material} material - Segment material.
196
- */
197
- public abortMaterialLoading(material: any): void;
198
- applyMaterial(material: any): number[];
199
- clearMaterial(material: any): void;
200
- update(): void;
201
- }
202
- import { Layer } from "./Layer.js";
203
- import { EntityCollection } from "../entity/EntityCollection.js";
204
- import { GeometryHandler } from "../entity/GeometryHandler.js";
205
- import { EntityCollectionNode } from "../quadTree/EntityCollectionNode.js";
206
- import { EntityCollectionNodeWGS84 } from "../quadTree/EntityCollectionNode.js";
207
- import { QueueArray } from "../QueueArray.js";
208
- import { Entity } from "../entity/Entity.js";