@openglobus/og 0.16.3 → 0.17.1

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/README.md +1 -1
  2. package/css/og.css +24 -2
  3. package/dist/@openglobus/og.css +1 -1
  4. package/dist/@openglobus/og.esm.js +2 -2
  5. package/dist/@openglobus/og.esm.js.map +1 -1
  6. package/dist/@openglobus/og.umd.js +2 -2
  7. package/dist/@openglobus/og.umd.js.map +1 -1
  8. package/package.json +1 -1
  9. package/src/og/Clock.js +1 -5
  10. package/src/og/Events.js +2 -6
  11. package/src/og/Extent.js +5 -9
  12. package/src/og/Globe.js +93 -56
  13. package/src/og/ImageCanvas.js +13 -6
  14. package/src/og/Lock.js +44 -48
  15. package/src/og/LonLat.js +1 -5
  16. package/src/og/Object3d.js +2 -2
  17. package/src/og/QueueArray.js +1 -1
  18. package/src/og/Stack.js +49 -53
  19. package/src/og/astro/earth.js +112 -116
  20. package/src/og/astro/jd.js +514 -518
  21. package/src/og/astro/orbit.js +119 -123
  22. package/src/og/astro/rotation.js +36 -40
  23. package/src/og/bv/Box.js +77 -81
  24. package/src/og/bv/Sphere.js +57 -61
  25. package/src/og/camera/Camera.js +20 -7
  26. package/src/og/camera/Frustum.js +4 -4
  27. package/src/og/camera/PlanetCamera.js +15 -22
  28. package/src/og/cons.js +1 -1
  29. package/src/og/control/Atmosphere.js +0 -4
  30. package/src/og/control/Control.js +9 -8
  31. package/src/og/control/DebugInfo.js +3 -7
  32. package/src/og/control/DrawingSwitcher.js +117 -0
  33. package/src/og/control/EarthCoordinates.js +214 -214
  34. package/src/og/control/EarthNavigation.js +6 -13
  35. package/src/og/control/GeoImageDragControl.js +0 -4
  36. package/src/og/control/KeyboardNavigation.js +0 -4
  37. package/src/og/control/LayerAnimation.js +0 -4
  38. package/src/og/control/LayerSwitcher.js +2 -4
  39. package/src/og/control/Lighting.js +12 -16
  40. package/src/og/control/MouseNavigation.js +1 -5
  41. package/src/og/control/MouseWheelZoomControl.js +0 -4
  42. package/src/og/control/RulerSwitcher.js +0 -4
  43. package/src/og/control/ScaleControl.js +2 -6
  44. package/src/og/control/ShowFps.js +40 -44
  45. package/src/og/control/SimpleNavigation.js +10 -10
  46. package/src/og/control/SimpleSkyBackground.js +0 -4
  47. package/src/og/control/Sun.js +0 -4
  48. package/src/og/control/ToggleWireframe.js +35 -39
  49. package/src/og/control/ZoomControl.js +0 -4
  50. package/src/og/control/drawing/DrawingControl.js +51 -0
  51. package/src/og/control/drawing/LineStringDrawingScene.js +203 -0
  52. package/src/og/control/drawing/PolygonDrawingScene.js +785 -0
  53. package/src/og/control/elevationProfile/ElevationProfile.js +275 -0
  54. package/src/og/control/index.js +5 -1
  55. package/src/og/control/ruler/Ruler.js +0 -4
  56. package/src/og/control/ruler/RulerScene.js +3 -2
  57. package/src/og/control/selection/Selection.js +0 -4
  58. package/src/og/control/selection/SelectionScene.js +2 -4
  59. package/src/og/control/timeline/TimelineControl.js +4 -4
  60. package/src/og/control/timeline/TimelineModel.js +2 -2
  61. package/src/og/control/timeline/TimelineView.js +1 -0
  62. package/src/og/control/visibleExtent/Segment.js +7 -7
  63. package/src/og/control/visibleExtent/drawnode.js +0 -4
  64. package/src/og/ellipsoid/Ellipsoid.js +236 -325
  65. package/src/og/ellipsoid/wgs84.js +0 -4
  66. package/src/og/entity/BaseBillboard.js +375 -379
  67. package/src/og/entity/Billboard.js +0 -4
  68. package/src/og/entity/BillboardHandler.js +3 -7
  69. package/src/og/entity/Entity.js +22 -22
  70. package/src/og/entity/EntityCollection.js +14 -18
  71. package/src/og/entity/GeoObject.js +6 -8
  72. package/src/og/entity/GeoObjectHandler.js +30 -24
  73. package/src/og/entity/Geometry.js +5 -4
  74. package/src/og/entity/GeometryHandler.js +18 -19
  75. package/src/og/entity/Label.js +0 -4
  76. package/src/og/entity/LabelHandler.js +10 -14
  77. package/src/og/entity/LabelWorker.js +1 -1
  78. package/src/og/entity/PointCloud.js +2 -6
  79. package/src/og/entity/PointCloudHandler.js +122 -126
  80. package/src/og/entity/Polyline.js +15 -17
  81. package/src/og/entity/PolylineHandler.js +104 -108
  82. package/src/og/entity/Ray.js +29 -29
  83. package/src/og/entity/RayHandler.js +2 -2
  84. package/src/og/entity/Strip.js +1 -1
  85. package/src/og/entity/StripHandler.js +2 -2
  86. package/src/og/index.js +3 -1
  87. package/src/og/input/KeyboardHandler.js +128 -132
  88. package/src/og/input/MouseHandler.js +94 -98
  89. package/src/og/input/TouchHandler.js +59 -63
  90. package/src/og/input/input.js +44 -48
  91. package/src/og/layer/BaseGeoImage.js +6 -9
  92. package/src/og/layer/CanvasTiles.js +1 -5
  93. package/src/og/layer/GeoImage.js +0 -4
  94. package/src/og/layer/GeoTexture2d.js +0 -4
  95. package/src/og/layer/GeoVideo.js +0 -4
  96. package/src/og/layer/KML.js +1 -0
  97. package/src/og/layer/Layer.js +22 -26
  98. package/src/og/layer/Material.js +0 -4
  99. package/src/og/layer/Vector.js +25 -22
  100. package/src/og/layer/WMS.js +182 -186
  101. package/src/og/layer/XYZ.js +0 -4
  102. package/src/og/light/LightSource.js +0 -4
  103. package/src/og/math/Line2.js +28 -32
  104. package/src/og/math/Mat3.js +152 -156
  105. package/src/og/math/Ray.js +0 -4
  106. package/src/og/math/Vec2.js +0 -4
  107. package/src/og/math/Vec3.js +5 -4
  108. package/src/og/math/Vec4.js +0 -4
  109. package/src/og/math/coder.js +104 -104
  110. package/src/og/math.js +42 -10
  111. package/src/og/mercator.js +1 -1
  112. package/src/og/proj/EPSG3857.js +13 -13
  113. package/src/og/proj/Proj.js +59 -63
  114. package/src/og/quadTree/EPSG4326QuadTreeStrategy.js +1 -0
  115. package/src/og/quadTree/EarthQuadTreeStrategy.js +1 -0
  116. package/src/og/quadTree/EntityCollectionNode.js +12 -16
  117. package/src/og/quadTree/MarsQuadTreeStrategy.js +1 -0
  118. package/src/og/quadTree/Node.js +15 -14
  119. package/src/og/quadTree/QuadTreeStrategy.js +1 -0
  120. package/src/og/quadTree/Wgs84QuadTreeStrategy.js +1 -0
  121. package/src/og/renderer/Renderer.js +114 -27
  122. package/src/og/renderer/RendererEvents.js +0 -4
  123. package/src/og/scene/Axes.js +74 -78
  124. package/src/og/scene/BaseNode.js +1 -5
  125. package/src/og/scene/Planet.js +127 -130
  126. package/src/og/scene/RenderNode.js +20 -12
  127. package/src/og/scene/SkyBox.js +104 -108
  128. package/src/og/segment/Segment.js +10 -6
  129. package/src/og/segment/SegmentLonLat.js +3 -7
  130. package/src/og/segment/segmentHelper.js +229 -225
  131. package/src/og/shaders/atmos.js +1 -1
  132. package/src/og/shaders/billboard.js +0 -4
  133. package/src/og/shaders/drawnode.js +5 -9
  134. package/src/og/shaders/geoObject.js +0 -4
  135. package/src/og/shaders/label.js +0 -4
  136. package/src/og/shaders/pickingMask.js +0 -4
  137. package/src/og/shaders/pointCloud.js +0 -4
  138. package/src/og/shaders/polyline.js +0 -4
  139. package/src/og/shaders/ray.js +0 -4
  140. package/src/og/shaders/skybox.js +0 -4
  141. package/src/og/terrain/EmptyTerrain.js +0 -4
  142. package/src/og/utils/FontAtlas.js +0 -4
  143. package/src/og/utils/GeoImageCreator.js +2 -3
  144. package/src/og/utils/NormalMapCreator.js +11 -12
  145. package/src/og/utils/PlainSegmentWorker.js +9 -9
  146. package/src/og/utils/TerrainWorker.js +2 -2
  147. package/src/og/utils/TextureAtlas.js +1 -1
  148. package/src/og/utils/VectorTileCreator.js +3 -9
  149. package/src/og/utils/earcut.js +8 -8
  150. package/src/og/utils/shared.js +30 -11
  151. package/src/og/webgl/Framebuffer.js +2 -6
  152. package/src/og/webgl/Handler.js +46 -20
  153. package/src/og/webgl/Multisample.js +2 -6
  154. package/src/og/webgl/Program.js +4 -8
  155. package/src/og/webgl/ProgramController.js +2 -2
  156. package/types/Clock.d.ts +1 -1
  157. package/types/Extent.d.ts +5 -5
  158. package/types/Globe.d.ts +15 -1
  159. package/types/ImageCanvas.d.ts +5 -0
  160. package/types/bv/Box.d.ts +1 -1
  161. package/types/bv/Sphere.d.ts +3 -3
  162. package/types/camera/Camera.d.ts +3 -2
  163. package/types/camera/PlanetCamera.d.ts +4 -4
  164. package/types/control/DrawingSwitcher.d.ts +13 -0
  165. package/types/control/EarthCoordinates.d.ts +1 -1
  166. package/types/control/Lighting.d.ts +8 -8
  167. package/types/control/drawing/DrawingControl.d.ts +14 -0
  168. package/types/control/drawing/LineStringDrawingScene.d.ts +5 -0
  169. package/types/control/drawing/PolygonDrawingScene.d.ts +99 -0
  170. package/types/control/index.d.ts +3 -1
  171. package/types/control/ruler/RulerScene.d.ts +0 -1
  172. package/types/control/selection/SelectionScene.d.ts +0 -1
  173. package/types/ellipsoid/Ellipsoid.d.ts +53 -64
  174. package/types/entity/Entity.d.ts +3 -2
  175. package/types/entity/GeoObject.d.ts +1 -2
  176. package/types/entity/Geometry.d.ts +5 -0
  177. package/types/entity/Polyline.d.ts +1 -1
  178. package/types/entity/Ray.d.ts +1 -0
  179. package/types/index.d.ts +1 -0
  180. package/types/layer/BaseGeoImage.d.ts +1 -1
  181. package/types/layer/CanvasTiles.d.ts +1 -1
  182. package/types/layer/Layer.d.ts +1 -1
  183. package/types/layer/Vector.d.ts +1 -0
  184. package/types/math/Vec3.d.ts +2 -0
  185. package/types/math.d.ts +7 -0
  186. package/types/renderer/Renderer.d.ts +7 -1
  187. package/types/scene/Axes.d.ts +0 -1
  188. package/types/scene/Planet.d.ts +27 -26
  189. package/types/scene/RenderNode.d.ts +2 -0
  190. package/types/scene/SkyBox.d.ts +0 -1
  191. package/types/segment/Segment.d.ts +3 -2
  192. package/types/segment/SegmentLonLat.d.ts +0 -1
  193. package/types/utils/GeoImageCreator.d.ts +1 -1
  194. package/types/utils/NormalMapCreator.d.ts +1 -1
  195. package/types/utils/VectorTileCreator.d.ts +2 -2
  196. package/types/utils/shared.d.ts +2 -0
  197. package/types/webgl/Handler.d.ts +6 -4
@@ -1,63 +1,59 @@
1
- /**
2
- * @module og/input/TouchHandler
3
- */
4
-
5
- 'use strict';
6
-
7
- class TouchHandler {
8
-
9
- constructor(htmlObject) {
10
- this._htmlObject = htmlObject;
11
- }
12
-
13
- setEvent(event, sender, callback) {
14
- switch (event) {
15
- case "touchcancel":
16
- this._htmlObject.addEventListener('touchcancel', function (event) {
17
- event.preventDefault();
18
- var rect = this.getBoundingClientRect();
19
- event.offsetLeft = rect.left;
20
- event.offsetTop = rect.top;
21
- callback.call(sender, event);
22
- event.preventDefault();
23
- });
24
- break;
25
-
26
- case "touchstart":
27
- this._htmlObject.addEventListener('touchstart', function (event) {
28
- event.preventDefault();
29
- var rect = this.getBoundingClientRect();
30
- event.offsetLeft = rect.left;
31
- event.offsetTop = rect.top;
32
- callback.call(sender, event);
33
- event.preventDefault();
34
- });
35
- break;
36
-
37
- case "touchend":
38
- this._htmlObject.addEventListener('touchend', function (event) {
39
- event.preventDefault();
40
- var rect = this.getBoundingClientRect();
41
- event.offsetLeft = rect.left;
42
- event.offsetTop = rect.top;
43
- callback.call(sender, event);
44
- event.preventDefault();
45
- });
46
- break;
47
-
48
- case "touchmove":
49
- this._htmlObject.addEventListener('touchmove', function (event) {
50
- event.preventDefault();
51
- var rect = this.getBoundingClientRect();
52
- event.offsetLeft = rect.left;
53
- event.offsetTop = rect.top;
54
- callback.call(sender, event);
55
- event.preventDefault();
56
- });
57
- break;
58
- }
59
- }
60
- }
61
-
62
- export { TouchHandler };
63
-
1
+ 'use strict';
2
+
3
+ class TouchHandler {
4
+
5
+ constructor(htmlObject) {
6
+ this._htmlObject = htmlObject;
7
+ }
8
+
9
+ setEvent(event, sender, callback) {
10
+ switch (event) {
11
+ case "touchcancel":
12
+ this._htmlObject.addEventListener('touchcancel', function (event) {
13
+ event.preventDefault();
14
+ var rect = this.getBoundingClientRect();
15
+ event.offsetLeft = rect.left;
16
+ event.offsetTop = rect.top;
17
+ callback.call(sender, event);
18
+ event.preventDefault();
19
+ });
20
+ break;
21
+
22
+ case "touchstart":
23
+ this._htmlObject.addEventListener('touchstart', function (event) {
24
+ event.preventDefault();
25
+ var rect = this.getBoundingClientRect();
26
+ event.offsetLeft = rect.left;
27
+ event.offsetTop = rect.top;
28
+ callback.call(sender, event);
29
+ event.preventDefault();
30
+ });
31
+ break;
32
+
33
+ case "touchend":
34
+ this._htmlObject.addEventListener('touchend', function (event) {
35
+ event.preventDefault();
36
+ var rect = this.getBoundingClientRect();
37
+ event.offsetLeft = rect.left;
38
+ event.offsetTop = rect.top;
39
+ callback.call(sender, event);
40
+ event.preventDefault();
41
+ });
42
+ break;
43
+
44
+ case "touchmove":
45
+ this._htmlObject.addEventListener('touchmove', function (event) {
46
+ event.preventDefault();
47
+ var rect = this.getBoundingClientRect();
48
+ event.offsetLeft = rect.left;
49
+ event.offsetTop = rect.top;
50
+ callback.call(sender, event);
51
+ event.preventDefault();
52
+ });
53
+ break;
54
+ }
55
+ }
56
+ }
57
+
58
+ export { TouchHandler };
59
+
@@ -1,48 +1,44 @@
1
- /**
2
- * @module og/input/input
3
- */
4
-
5
- 'use strict';
6
-
7
- export const input = {
8
- KEY_CTRL: 17,
9
- KEY_ALT: 18,
10
- KEY_SHIFT: 16,
11
- KEY_SPACE: 32,
12
- KEY_PGUP: 33,
13
- KEY_PGDN: 34,
14
- KEY_LEFT: 37,
15
- KEY_UP: 38,
16
- KEY_RIGHT: 39,
17
- KEY_DOWN: 40,
18
- KEY_PRINTSCREEN: 44,
19
- KEY_EQUALS: 61,
20
- KEY_A: 65,
21
- KEY_C: 67,
22
- KEY_D: 68,
23
- KEY_E: 69,
24
- KEY_F: 70,
25
- KEY_H: 72,
26
- KEY_I: 73,
27
- KEY_K: 75,
28
- KEY_L: 76,
29
- KEY_N: 78,
30
- KEY_O: 79,
31
- KEY_P: 80,
32
- KEY_Q: 81,
33
- KEY_R: 82,
34
- KEY_S: 83,
35
- KEY_V: 86,
36
- KEY_W: 87,
37
- KEY_X: 88,
38
- KEY_Z: 90,
39
- KEY_PLUS: 107,
40
- KEY_F1: 112,
41
- KEY_MINUS: 173,
42
- KEY_APOSTROPHE: 192,
43
- MB_LEFT: 0,
44
- MB_RIGHT: 2,
45
- MB_MIDDLE: 1,
46
- KEY_BACK_SLASH: 220,
47
- KEY_SINGLE_QUOTE: 222
48
- };
1
+ 'use strict';
2
+
3
+ export const input = {
4
+ KEY_CTRL: 17,
5
+ KEY_ALT: 18,
6
+ KEY_SHIFT: 16,
7
+ KEY_SPACE: 32,
8
+ KEY_PGUP: 33,
9
+ KEY_PGDN: 34,
10
+ KEY_LEFT: 37,
11
+ KEY_UP: 38,
12
+ KEY_RIGHT: 39,
13
+ KEY_DOWN: 40,
14
+ KEY_PRINTSCREEN: 44,
15
+ KEY_EQUALS: 61,
16
+ KEY_A: 65,
17
+ KEY_C: 67,
18
+ KEY_D: 68,
19
+ KEY_E: 69,
20
+ KEY_F: 70,
21
+ KEY_H: 72,
22
+ KEY_I: 73,
23
+ KEY_K: 75,
24
+ KEY_L: 76,
25
+ KEY_N: 78,
26
+ KEY_O: 79,
27
+ KEY_P: 80,
28
+ KEY_Q: 81,
29
+ KEY_R: 82,
30
+ KEY_S: 83,
31
+ KEY_V: 86,
32
+ KEY_W: 87,
33
+ KEY_X: 88,
34
+ KEY_Z: 90,
35
+ KEY_PLUS: 107,
36
+ KEY_F1: 112,
37
+ KEY_MINUS: 173,
38
+ KEY_APOSTROPHE: 192,
39
+ MB_LEFT: 0,
40
+ MB_RIGHT: 2,
41
+ MB_MIDDLE: 1,
42
+ KEY_BACK_SLASH: 220,
43
+ KEY_SINGLE_QUOTE: 222
44
+ };
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/BaseGeoImage
3
- */
4
-
5
1
  "use strict";
6
2
 
7
3
  import { Extent } from "../Extent.js";
@@ -150,7 +146,7 @@ class BaseGeoImage extends Layer {
150
146
  corners[3].clone()
151
147
  ] || [0, 0, 0, 0];
152
148
 
153
- for (var i = 0; i < this._cornersWgs84.length; i++) {
149
+ for (let i = 0; i < this._cornersWgs84.length; i++) {
154
150
  if (this._cornersWgs84[i].lat >= 89.9) {
155
151
  this._cornersWgs84[i].lat = 89.9;
156
152
  }
@@ -265,10 +261,11 @@ class BaseGeoImage extends Layer {
265
261
  this._creationProceeding && p._geoImageCreator.remove(this);
266
262
  p._clearLayerMaterial(this);
267
263
 
268
- gl.deleteBuffer(this._gridBuffer);
269
-
270
- gl.deleteTexture(this._sourceTexture);
271
- !this._materialTexture.default && gl.deleteTexture(this._materialTexture);
264
+ if (gl) {
265
+ gl.deleteBuffer(this._gridBuffer);
266
+ gl.deleteTexture(this._sourceTexture);
267
+ this._materialTexture && !this._materialTexture.default && gl.deleteTexture(this._materialTexture);
268
+ }
272
269
  }
273
270
 
274
271
  this._sourceTexture = null;
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/CanvasTiles
3
- */
4
-
5
1
  "use strict";
6
2
 
7
3
  import * as quadTree from "../quadTree/quadTree.js";
@@ -106,7 +102,7 @@ class CanvasTiles extends Layer {
106
102
  */
107
103
  abortLoading() {
108
104
  var q = this._pendingsQueue;
109
- for (var i = q._shiftIndex + 1; i < q._popIndex + 1; i++) {
105
+ for (let i = q._shiftIndex + 1; i < q._popIndex + 1; i++) {
110
106
  if (q._array[i]) {
111
107
  this.abortMaterialLoading(q._array[i]);
112
108
  }
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/GeoImage
3
- */
4
-
5
1
  "use strict";
6
2
 
7
3
  import { nextHighestPowerOfTwo } from "../math.js";
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/GeoTexture2d
3
- */
4
-
5
1
  'use strict';
6
2
 
7
3
  import * as math from '../math.js';
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/GeoVideo
3
- */
4
-
5
1
  "use strict";
6
2
 
7
3
  import { BaseGeoImage } from "./BaseGeoImage.js";
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+
2
3
  import { Billboard } from "../entity/Billboard.js";
3
4
  import { Entity } from "../entity/Entity.js";
4
5
  import { Extent } from "../Extent.js";
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/Layer
3
- */
4
-
5
1
  "use strict";
6
2
 
7
3
  import { Events } from "../Events.js";
@@ -360,32 +356,33 @@ class Layer {
360
356
  * @param {Planet} planet - Planet render node.
361
357
  */
362
358
  _assignPlanet(planet) {
363
- // TODO: webgl1
364
- if (this._isSRGB) {
365
- this._internalFormat = planet.renderer.handler.gl.SRGB8_ALPHA8;
366
- } else {
367
- this._internalFormat = planet.renderer.handler.gl.RGBA8;
368
- }
369
359
 
370
- this.createTexture = planet.renderer.handler.createTexture[this._textureFilter];
371
-
372
- // TODO: replace to planet
360
+ this._planet = planet;
373
361
  planet._layers.push(this);
374
362
 
375
- this._planet = planet;
376
- this.events.on("visibilitychange", planet._onLayerVisibilityChanged, planet);
377
- if (this._isBaseLayer && this._visibility) {
378
- planet.setBaseLayer(this);
379
- }
363
+ if (planet.renderer.isInitialized()) {
364
+ // TODO: webgl1
365
+ if (this._isSRGB) {
366
+ this._internalFormat = planet.renderer.handler.gl.SRGB8_ALPHA8;
367
+ } else {
368
+ this._internalFormat = planet.renderer.handler.gl.RGBA8;
369
+ }
370
+ this.createTexture = planet.renderer.handler.createTexture[this._textureFilter];
380
371
 
381
- if (this._visibility && this.hasImageryTiles()) {
382
- this._preLoad();
383
- }
372
+ this.events.on("visibilitychange", planet._onLayerVisibilityChanged, planet);
373
+ if (this._isBaseLayer && this._visibility) {
374
+ planet.setBaseLayer(this);
375
+ }
384
376
 
385
- planet.events.dispatch(planet.events.layeradd, this);
386
- this.events.dispatch(this.events.add, planet);
387
- planet.updateVisibleLayers();
388
- this._bindPicking();
377
+ planet.events.dispatch(planet.events.layeradd, this);
378
+ this.events.dispatch(this.events.add, planet);
379
+ planet.updateVisibleLayers();
380
+ this._bindPicking();
381
+
382
+ if (this._visibility && this.hasImageryTiles()) {
383
+ this._preLoad();
384
+ }
385
+ }
389
386
  }
390
387
 
391
388
  get isIdle() {
@@ -410,7 +407,6 @@ class Layer {
410
407
  if (!this._planet) {
411
408
  this._assignPlanet(planet);
412
409
  }
413
- return this;
414
410
  }
415
411
 
416
412
  /**
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/Material
3
- */
4
-
5
1
  "use strict";
6
2
 
7
3
  class Material {
@@ -1,7 +1,3 @@
1
- /**
2
- * @module og/layer/Vector
3
- */
4
-
5
1
  "use strict";
6
2
 
7
3
  import { Entity } from "../entity/Entity.js";
@@ -26,7 +22,7 @@ import { Layer } from "./Layer.js";
26
22
  */
27
23
  function _entitiesConstructor(entities) {
28
24
  var res = [];
29
- for (var i = 0; i < entities.length; i++) {
25
+ for (let i = 0; i < entities.length; i++) {
30
26
  var ei = entities[i];
31
27
  if (ei.instanceName === "Entity") {
32
28
  res.push(ei);
@@ -198,6 +194,13 @@ class Vector extends Layer {
198
194
  return this;
199
195
  }
200
196
 
197
+ remove() {
198
+ super.remove();
199
+ this._polylineEntityCollection.remove();
200
+ this._stripEntityCollection.remove();
201
+ this._geoObjectEntityCollection.remove();
202
+ }
203
+
201
204
  /**
202
205
  * Returns stored entities.
203
206
  * @public
@@ -300,21 +303,21 @@ class Vector extends Layer {
300
303
  }
301
304
  }
302
305
 
303
- if (entity.billboard || entity.label) {
306
+ if (entity.billboard || entity.label || entity.geoObject) {
304
307
  if (this._planet) {
305
- if (entity._cartesian.isZero() && !entity._lonlat.isZero()) {
308
+ if (entity._cartesian.isZero() && !entity._lonLat.isZero()) {
306
309
  entity._setCartesian3vSilent(
307
- this._planet.ellipsoid.lonLatToCartesian(entity._lonlat)
310
+ this._planet.ellipsoid.lonLatToCartesian(entity._lonLat)
308
311
  );
309
312
  } else {
310
- entity._lonlat = this._planet.ellipsoid.cartesianToLonLat(entity._cartesian);
313
+ entity._lonLat = this._planet.ellipsoid.cartesianToLonLat(entity._cartesian);
311
314
  }
312
315
 
313
316
  // north tree
314
- if (entity._lonlat.lat > mercator.MAX_LAT) {
317
+ if (entity._lonLat.lat > mercator.MAX_LAT) {
315
318
  this._entityCollectionsTreeNorth.__setLonLat__(entity);
316
319
  this._entityCollectionsTreeNorth.insertEntity(entity, rightNow);
317
- } else if (entity._lonlat.lat < mercator.MIN_LAT) {
320
+ } else if (entity._lonLat.lat < mercator.MIN_LAT) {
318
321
  // south tree
319
322
  this._entityCollectionsTreeSouth.__setLonLat__(entity);
320
323
  this._entityCollectionsTreeSouth.insertEntity(entity, rightNow);
@@ -444,7 +447,7 @@ class Vector extends Layer {
444
447
  */
445
448
  _reindexEntitiesArray(startIndex) {
446
449
  var e = this._entities;
447
- for (var i = startIndex; i < e.length; i++) {
450
+ for (let i = startIndex; i < e.length; i++) {
448
451
  e[i]._layerIndex = i;
449
452
  }
450
453
  }
@@ -609,9 +612,9 @@ class Vector extends Layer {
609
612
  for (let i = 0, len = entitiesForTree.length; i < len; i++) {
610
613
  let entity = entitiesForTree[i];
611
614
  // north tree
612
- if (entity._lonlat.lat > mercator.MAX_LAT) {
615
+ if (entity._lonLat.lat > mercator.MAX_LAT) {
613
616
  this._entityCollectionsTreeNorth.__setLonLat__(entity);
614
- } else if (entity._lonlat.lat < mercator.MIN_LAT) {
617
+ } else if (entity._lonLat.lat < mercator.MIN_LAT) {
615
618
  // south tree
616
619
  this._entityCollectionsTreeSouth.__setLonLat__(entity);
617
620
  } else {
@@ -845,7 +848,7 @@ class Vector extends Layer {
845
848
  // Merc nodes
846
849
  this._secondPASS = [];
847
850
  this._entityCollectionsTree &&
848
- this._entityCollectionsTree.collectRenderCollectionsPASS1(p._visibleNodes, outArr);
851
+ this._entityCollectionsTree.collectRenderCollectionsPASS1(p._visibleNodes, outArr);
849
852
  var i = this._secondPASS.length;
850
853
  while (i--) {
851
854
  this._secondPASS[i].collectRenderCollectionsPASS2(
@@ -858,9 +861,9 @@ class Vector extends Layer {
858
861
  // North nodes
859
862
  this._secondPASS = [];
860
863
  this._entityCollectionsTreeNorth &&
861
- this._entityCollectionsTreeNorth.collectRenderCollectionsPASS1(
862
- p._visibleNodesNorth,
863
- outArr
864
+ this._entityCollectionsTreeNorth.collectRenderCollectionsPASS1(
865
+ p._visibleNodesNorth,
866
+ outArr
864
867
  );
865
868
  i = this._secondPASS.length;
866
869
  while (i--) {
@@ -874,10 +877,10 @@ class Vector extends Layer {
874
877
  // South nodes
875
878
  this._secondPASS = [];
876
879
  this._entityCollectionsTreeSouth &&
877
- this._entityCollectionsTreeSouth.collectRenderCollectionsPASS1(
878
- p._visibleNodesSouth,
879
- outArr
880
- );
880
+ this._entityCollectionsTreeSouth.collectRenderCollectionsPASS1(
881
+ p._visibleNodesSouth,
882
+ outArr
883
+ );
881
884
  i = this._secondPASS.length;
882
885
  while (i--) {
883
886
  this._secondPASS[i].collectRenderCollectionsPASS2(