@openglobus/og 0.11.5 → 0.12.0

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 (267) hide show
  1. package/css/og.css +5 -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 +25 -10
  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/Camera.js +70 -79
  18. package/src/og/camera/Frustum.js +19 -12
  19. package/src/og/camera/PlanetCamera.js +33 -34
  20. package/src/og/control/CompassButton.js +1 -2
  21. package/src/og/control/Control.js +7 -9
  22. package/src/og/control/DebugInfo.js +2 -3
  23. package/src/og/control/EarthNavigation.js +26 -17
  24. package/src/og/control/KeyboardNavigation.js +9 -9
  25. package/src/og/control/LayerSwitcher.js +21 -20
  26. package/src/og/control/Lighting.js +74 -64
  27. package/src/og/control/MouseNavigation.js +30 -29
  28. package/src/og/control/MouseWheelZoomControl.js +257 -0
  29. package/src/og/control/SegmentBoundVisualization.js +5 -6
  30. package/src/og/control/ShowFps.js +12 -7
  31. package/src/og/control/SimpleNavigation.js +5 -7
  32. package/src/og/control/Sun.js +24 -14
  33. package/src/og/control/ToggleWireframe.js +3 -3
  34. package/src/og/control/TouchNavigation.js +43 -32
  35. package/src/og/control/ZoomControl.js +40 -24
  36. package/src/og/control/index.js +2 -0
  37. package/src/og/control/visibleExtent/Segment.js +1862 -0
  38. package/src/og/control/visibleExtent/VisibleExtent.js +80 -0
  39. package/src/og/control/visibleExtent/drawnode.js +751 -0
  40. package/src/og/ellipsoid/Ellipsoid.js +149 -57
  41. package/src/og/ellipsoid/wgs84.js +3 -3
  42. package/src/og/entity/BaseBillboard.js +72 -30
  43. package/src/og/entity/Billboard.js +9 -5
  44. package/src/og/entity/BillboardHandler.js +315 -62
  45. package/src/og/entity/Entity.js +742 -704
  46. package/src/og/entity/EntityCollection.js +47 -24
  47. package/src/og/entity/GeoObject.js +228 -0
  48. package/src/og/entity/GeoObjectHandler.js +895 -0
  49. package/src/og/entity/GeometryHandler.js +595 -123
  50. package/src/og/entity/Label.js +62 -30
  51. package/src/og/entity/LabelHandler.js +42 -243
  52. package/src/og/entity/LabelWorker.js +218 -0
  53. package/src/og/entity/Object3d.js +504 -0
  54. package/src/og/entity/PointCloud.js +76 -28
  55. package/src/og/entity/PointCloudHandler.js +5 -5
  56. package/src/og/entity/Ray.js +49 -16
  57. package/src/og/entity/Strip.js +72 -43
  58. package/src/og/entity/StripHandler.js +23 -23
  59. package/src/og/layer/BaseGeoImage.js +50 -19
  60. package/src/og/layer/CanvasTiles.js +16 -17
  61. package/src/og/layer/GeoImage.js +8 -16
  62. package/src/og/layer/GeoTexture2d.js +2 -10
  63. package/src/og/layer/GeoVideo.js +2 -10
  64. package/src/og/layer/KML.js +55 -33
  65. package/src/og/layer/Layer.js +24 -33
  66. package/src/og/layer/Material.js +1 -1
  67. package/src/og/layer/Vector.js +94 -48
  68. package/src/og/layer/WMS.js +33 -18
  69. package/src/og/layer/XYZ.js +24 -26
  70. package/src/og/light/LightSource.js +19 -12
  71. package/src/og/math/Mat3.js +24 -12
  72. package/src/og/math/Mat4.js +603 -603
  73. package/src/og/math/Plane.js +19 -18
  74. package/src/og/math/Ray.js +17 -12
  75. package/src/og/math/Vec2.js +24 -14
  76. package/src/og/math/Vec3.js +78 -32
  77. package/src/og/math/coder.js +7 -7
  78. package/src/og/proj/EPSG3857.js +3 -3
  79. package/src/og/proj/EPSG4326.js +3 -3
  80. package/src/og/proj/Proj.js +2 -4
  81. package/src/og/quadTree/Node.js +50 -95
  82. package/src/og/quadTree/quadTree.js +1 -1
  83. package/src/og/renderer/Renderer.js +106 -126
  84. package/src/og/renderer/RendererEvents.js +45 -23
  85. package/src/og/scene/BaseNode.js +2 -3
  86. package/src/og/scene/Planet.js +139 -191
  87. package/src/og/scene/RenderNode.js +15 -8
  88. package/src/og/segment/Segment.js +93 -268
  89. package/src/og/segment/Slice.js +45 -0
  90. package/src/og/shaders/drawnode.js +174 -360
  91. package/src/og/shaders/geoObject.js +211 -0
  92. package/src/og/shaders/pointCloud.js +41 -41
  93. package/src/og/shaders/shape.js +12 -18
  94. package/src/og/shaders/skybox.js +36 -36
  95. package/src/og/shaders/toneMapping.js +1 -0
  96. package/src/og/shapes/BaseShape.js +108 -36
  97. package/src/og/shapes/Icosphere.js +25 -10
  98. package/src/og/shapes/Sphere.js +8 -11
  99. package/src/og/terrain/EmptyTerrain.js +3 -2
  100. package/src/og/terrain/GlobusTerrain.js +2 -0
  101. package/src/og/utils/FontAtlas.js +6 -2
  102. package/src/og/utils/GeoImageCreator.js +5 -1
  103. package/src/og/utils/Loader.js +1 -1
  104. package/src/og/utils/PlainSegmentWorker.js +0 -13
  105. package/src/og/utils/TextureAtlas.js +18 -20
  106. package/src/og/utils/VectorTileCreator.js +1 -3
  107. package/src/og/utils/shared.js +2 -2
  108. package/src/og/webgl/Handler.js +219 -162
  109. package/src/og/webgl/Multisample.js +44 -16
  110. package/src/og/webgl/Program.js +78 -33
  111. package/src/og/webgl/callbacks.js +3 -3
  112. package/types/Clock.d.ts +0 -94
  113. package/types/Deferred.d.ts +0 -6
  114. package/types/Events.d.ts +0 -77
  115. package/types/Extent.d.ts +0 -166
  116. package/types/Globe.d.ts +0 -82
  117. package/types/ImageCanvas.d.ts +0 -123
  118. package/types/Lock.d.ts +0 -12
  119. package/types/LonLat.d.ts +0 -108
  120. package/types/Popup.d.ts +0 -42
  121. package/types/QueueArray.d.ts +0 -19
  122. package/types/Rectangle.d.ts +0 -80
  123. package/types/Stack.d.ts +0 -19
  124. package/types/ajax.d.ts +0 -24
  125. package/types/arial.d.ts +0 -48
  126. package/types/astro/astro.d.ts +0 -38
  127. package/types/astro/earth.d.ts +0 -7
  128. package/types/astro/jd.d.ts +0 -254
  129. package/types/bv/Box.d.ts +0 -30
  130. package/types/bv/Sphere.d.ts +0 -38
  131. package/types/bv/index.d.ts +0 -3
  132. package/types/camera/Camera.d.ts +0 -312
  133. package/types/camera/Frustum.d.ts +0 -133
  134. package/types/camera/PlanetCamera.d.ts +0 -218
  135. package/types/camera/index.d.ts +0 -3
  136. package/types/cons.d.ts +0 -40
  137. package/types/control/CompassButton.d.ts +0 -17
  138. package/types/control/Control.d.ts +0 -104
  139. package/types/control/DebugInfo.d.ts +0 -15
  140. package/types/control/EarthCoordinates.d.ts +0 -47
  141. package/types/control/EarthNavigation.d.ts +0 -42
  142. package/types/control/GeoImageDragControl.d.ts +0 -6
  143. package/types/control/KeyboardNavigation.d.ts +0 -21
  144. package/types/control/LayerSwitcher.d.ts +0 -21
  145. package/types/control/Lighting.d.ts +0 -16
  146. package/types/control/MouseNavigation.d.ts +0 -47
  147. package/types/control/ScaleControl.d.ts +0 -22
  148. package/types/control/ShowFps.d.ts +0 -11
  149. package/types/control/SimpleNavigation.d.ts +0 -25
  150. package/types/control/Sun.d.ts +0 -50
  151. package/types/control/ToggleWireframe.d.ts +0 -12
  152. package/types/control/TouchNavigation.d.ts +0 -48
  153. package/types/control/ZoomControl.d.ts +0 -27
  154. package/types/control/index.d.ts +0 -17
  155. package/types/ellipsoid/Ellipsoid.d.ts +0 -146
  156. package/types/ellipsoid/index.d.ts +0 -3
  157. package/types/ellipsoid/wgs84.d.ts +0 -6
  158. package/types/entity/BaseBillboard.d.ts +0 -208
  159. package/types/entity/Billboard.d.ts +0 -94
  160. package/types/entity/BillboardHandler.d.ts +0 -78
  161. package/types/entity/Entity.d.ts +0 -333
  162. package/types/entity/EntityCollection.d.ts +0 -311
  163. package/types/entity/Geometry.d.ts +0 -74
  164. package/types/entity/GeometryHandler.d.ts +0 -76
  165. package/types/entity/Label.d.ts +0 -189
  166. package/types/entity/LabelHandler.d.ts +0 -29
  167. package/types/entity/PointCloud.d.ts +0 -174
  168. package/types/entity/PointCloudHandler.d.ts +0 -38
  169. package/types/entity/Polyline.d.ts +0 -306
  170. package/types/entity/PolylineHandler.d.ts +0 -18
  171. package/types/entity/Ray.d.ts +0 -124
  172. package/types/entity/RayHandler.d.ts +0 -67
  173. package/types/entity/ShapeHandler.d.ts +0 -22
  174. package/types/entity/Strip.d.ts +0 -119
  175. package/types/entity/StripHandler.d.ts +0 -38
  176. package/types/entity/index.d.ts +0 -8
  177. package/types/index.core.d.ts +0 -65
  178. package/types/index.d.ts +0 -45
  179. package/types/index.webgl.d.ts +0 -7
  180. package/types/input/KeyboardHandler.d.ts +0 -10
  181. package/types/input/MouseHandler.d.ts +0 -5
  182. package/types/input/TouchHandler.d.ts +0 -5
  183. package/types/input/input.d.ts +0 -34
  184. package/types/layer/BaseGeoImage.d.ts +0 -94
  185. package/types/layer/CanvasTiles.d.ts +0 -68
  186. package/types/layer/GeoImage.d.ts +0 -52
  187. package/types/layer/GeoTexture2d.d.ts +0 -8
  188. package/types/layer/GeoVideo.d.ts +0 -55
  189. package/types/layer/KML.d.ts +0 -63
  190. package/types/layer/Layer.d.ts +0 -326
  191. package/types/layer/Material.d.ts +0 -45
  192. package/types/layer/Vector.d.ts +0 -208
  193. package/types/layer/WMS.d.ts +0 -63
  194. package/types/layer/XYZ.d.ts +0 -120
  195. package/types/layer/index.d.ts +0 -10
  196. package/types/light/LightSource.d.ts +0 -178
  197. package/types/math/Line2.d.ts +0 -11
  198. package/types/math/Line3.d.ts +0 -10
  199. package/types/math/Mat3.d.ts +0 -65
  200. package/types/math/Mat4.d.ts +0 -176
  201. package/types/math/Plane.d.ts +0 -18
  202. package/types/math/Quat.d.ts +0 -379
  203. package/types/math/Ray.d.ts +0 -82
  204. package/types/math/Vec2.d.ts +0 -309
  205. package/types/math/Vec3.d.ts +0 -460
  206. package/types/math/Vec4.d.ts +0 -162
  207. package/types/math/coder.d.ts +0 -43
  208. package/types/math/index.d.ts +0 -11
  209. package/types/math.d.ts +0 -261
  210. package/types/mercator.d.ts +0 -92
  211. package/types/proj/EPSG3857.d.ts +0 -6
  212. package/types/proj/EPSG4326.d.ts +0 -6
  213. package/types/proj/Proj.d.ts +0 -42
  214. package/types/quadTree/EntityCollectionNode.d.ts +0 -34
  215. package/types/quadTree/Node.d.ts +0 -61
  216. package/types/quadTree/quadTree.d.ts +0 -40
  217. package/types/renderer/Renderer.d.ts +0 -298
  218. package/types/renderer/RendererEvents.d.ts +0 -233
  219. package/types/res/images.d.ts +0 -3
  220. package/types/scene/Axes.d.ts +0 -11
  221. package/types/scene/BaseNode.d.ts +0 -60
  222. package/types/scene/Planet.d.ts +0 -577
  223. package/types/scene/RenderNode.d.ts +0 -142
  224. package/types/scene/SkyBox.d.ts +0 -10
  225. package/types/scene/index.d.ts +0 -4
  226. package/types/segment/Segment.d.ts +0 -279
  227. package/types/segment/SegmentLonLat.d.ts +0 -16
  228. package/types/segment/segmentHelper.d.ts +0 -13
  229. package/types/shaders/billboard.d.ts +0 -3
  230. package/types/shaders/depth.d.ts +0 -2
  231. package/types/shaders/drawnode.d.ts +0 -7
  232. package/types/shaders/label.d.ts +0 -4
  233. package/types/shaders/pointCloud.d.ts +0 -2
  234. package/types/shaders/polyline.d.ts +0 -3
  235. package/types/shaders/ray.d.ts +0 -2
  236. package/types/shaders/screenFrame.d.ts +0 -2
  237. package/types/shaders/shape.d.ts +0 -4
  238. package/types/shaders/skybox.d.ts +0 -2
  239. package/types/shaders/toneMapping.d.ts +0 -2
  240. package/types/shapes/BaseShape.d.ts +0 -250
  241. package/types/shapes/Sphere.d.ts +0 -41
  242. package/types/terrain/BilTerrain.d.ts +0 -7
  243. package/types/terrain/EmptyTerrain.d.ts +0 -72
  244. package/types/terrain/Geoid.d.ts +0 -26
  245. package/types/terrain/GlobusTerrain.d.ts +0 -116
  246. package/types/terrain/MapboxTerrain.d.ts +0 -7
  247. package/types/terrain/index.d.ts +0 -5
  248. package/types/utils/FontAtlas.d.ts +0 -14
  249. package/types/utils/GeoImageCreator.d.ts +0 -30
  250. package/types/utils/ImagesCacheManager.d.ts +0 -10
  251. package/types/utils/Loader.d.ts +0 -25
  252. package/types/utils/NormalMapCreator.d.ts +0 -39
  253. package/types/utils/PlainSegmentWorker.d.ts +0 -10
  254. package/types/utils/TerrainWorker.d.ts +0 -9
  255. package/types/utils/TextureAtlas.d.ts +0 -111
  256. package/types/utils/VectorTileCreator.d.ts +0 -16
  257. package/types/utils/colorTable.d.ts +0 -143
  258. package/types/utils/earcut.d.ts +0 -6
  259. package/types/utils/shared.d.ts +0 -231
  260. package/types/webgl/Framebuffer.d.ts +0 -135
  261. package/types/webgl/Handler.d.ts +0 -388
  262. package/types/webgl/Multisample.d.ts +0 -89
  263. package/types/webgl/Program.d.ts +0 -155
  264. package/types/webgl/ProgramController.d.ts +0 -89
  265. package/types/webgl/callbacks.d.ts +0 -1
  266. package/types/webgl/index.d.ts +0 -6
  267. package/types/webgl/types.d.ts +0 -2
package/src/og/Popup.js CHANGED
@@ -1,11 +1,10 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
- import { Events } from './Events.js';
4
- import { Vec3 } from './math/Vec3.js';
5
- import { getHTML, parseHTML, createLonLat } from './utils/shared.js';
3
+ import { Events } from "./Events.js";
4
+ import { Vec3 } from "./math/Vec3.js";
5
+ import { getHTML, parseHTML, createLonLat } from "./utils/shared.js";
6
6
 
7
- const TEMPLATE =
8
- `<div class="og-popup {className}">
7
+ const TEMPLATE = `<div class="og-popup {className}">
9
8
  <div class="og-popup-content-wrapper">
10
9
  <div class="og-popup-content"></div>
11
10
  </div>
@@ -20,13 +19,11 @@ const TEMPLATE =
20
19
  </div>`;
21
20
 
22
21
  class Popup {
23
-
24
22
  /**
25
- *
26
- * @param {*} options
23
+ *
24
+ * @param {*} options
27
25
  */
28
26
  constructor(options) {
29
-
30
27
  this._id = Popup._staticCounter++;
31
28
 
32
29
  this.events = new Events(["open", "close"]);
@@ -77,7 +74,13 @@ class Popup {
77
74
 
78
75
  setScreen(p) {
79
76
  if (this._planet) {
80
- this.el.style.transform = "translate(" + (p.x - this.clientWidth * 0.5) + "px, " + (p.y - this._planet.renderer.handler.canvas.height - this._tipEl.clientHeight) + "px)"
77
+ let r = this._planet.renderer.handler.pixelRatio;
78
+ this.el.style.transform =
79
+ "translate(" +
80
+ (p.x / r - this.clientWidth * 0.5) +
81
+ "px, " +
82
+ (p.y / r - this._planet.renderer.handler.canvas.clientHeight - this._tipEl.clientHeight) +
83
+ "px)";
81
84
  }
82
85
  }
83
86
 
@@ -102,8 +105,8 @@ class Popup {
102
105
  render(params) {
103
106
  this.el = this._renderTemplate(params);
104
107
  this._contentEl = this.el.querySelector(".og-popup-content");
105
- this._titleEl = this.el.querySelector(".og-popup-title")
106
- this._tipEl = this.el.querySelector(".og-popup-tip-container")
108
+ this._titleEl = this.el.querySelector(".og-popup-title");
109
+ this._tipEl = this.el.querySelector(".og-popup-tip-container");
107
110
  this.setOffset(this._offset[0], this._offset[1]);
108
111
  this.setContent(this._content);
109
112
  this.setTitle(this._title);
@@ -153,7 +156,6 @@ class Popup {
153
156
  }
154
157
 
155
158
  setCartesian3v(cart, height = 0) {
156
-
157
159
  this._cartPos = cart;
158
160
 
159
161
  if (this._planet) {
@@ -192,10 +194,10 @@ class Popup {
192
194
  if (content) {
193
195
  this.clear();
194
196
  this._content = content;
195
- if (typeof content === 'string') {
197
+ if (typeof content === "string") {
196
198
  this._contentEl.innerHTML = content;
197
199
  } else {
198
- this._contentEl.appendChild(content)
200
+ this._contentEl.appendChild(content);
199
201
  }
200
202
  }
201
203
  return this;
@@ -207,4 +209,4 @@ class Popup {
207
209
  }
208
210
  }
209
211
 
210
- export { Popup };
212
+ export { Popup };
@@ -1,9 +1,8 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
3
  class QueueArray {
4
-
5
4
  /**
6
- *
5
+ *
7
6
  * @param {number} [size]
8
7
  */
9
8
  constructor(size) {
@@ -73,4 +72,4 @@ class QueueArray {
73
72
  }
74
73
  }
75
74
 
76
- export { QueueArray };
75
+ export { QueueArray };
@@ -1,4 +1,4 @@
1
- 'use strict';
1
+ "use strict";
2
2
 
3
3
  /**
4
4
  * 2D Rectangle class.
@@ -7,9 +7,8 @@
7
7
  * @param {number} [top] - Top coordinate. 0 - default.
8
8
  * @param {number} [right] - Right coordinate. 0 - default.
9
9
  * @param {number} [bottom] - Bottom coordinate. 0 - default.
10
- */
10
+ */
11
11
  class Rectangle {
12
-
13
12
  /**
14
13
  * @param {number} [left] - Left coordinate. 0 - default.
15
14
  * @param {number} [top] - Top coordinate. 0 - default.
@@ -17,7 +16,6 @@ class Rectangle {
17
16
  * @param {number} [bottom] - Bottom coordinate. 0 - default.
18
17
  */
19
18
  constructor(left, top, right, bottom) {
20
-
21
19
  /**
22
20
  * Left coordinate.
23
21
  * @public
@@ -102,7 +100,7 @@ class Rectangle {
102
100
  * @type {boolean}
103
101
  */
104
102
  fit(width, height) {
105
- return (this.getWidth() == width && this.getHeight() == height);
103
+ return this.getWidth() == width && this.getHeight() == height;
106
104
  }
107
105
 
108
106
  isInside(x, y) {
@@ -110,4 +108,4 @@ class Rectangle {
110
108
  }
111
109
  }
112
110
 
113
- export { Rectangle };
111
+ export { Rectangle };
package/src/og/Stack.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * @module og/Stack
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
7
  class Node {
8
8
  constructor() {
@@ -13,13 +13,11 @@ class Node {
13
13
  }
14
14
 
15
15
  class Stack {
16
-
17
16
  /**
18
- *
17
+ *
19
18
  * @param {number} [size]
20
19
  */
21
20
  constructor(size = 256) {
22
-
23
21
  this._current = new Node();
24
22
  this._head = this._current;
25
23
 
package/src/og/ajax.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * @module og/ajax
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
7
  /**
8
8
  * Ajax parameters.
@@ -13,8 +13,7 @@ const ajax = {
13
13
  * Ajax ready state result.
14
14
  * @enum
15
15
  */
16
- ReadyState:
17
- {
16
+ ReadyState: {
18
17
  Uninitialized: 0,
19
18
  Loading: 1,
20
19
  Loaded: 2,
@@ -25,8 +24,7 @@ const ajax = {
25
24
  * Ajax status code.
26
25
  * @enum
27
26
  */
28
- Status:
29
- {
27
+ Status: {
30
28
  OK: 200,
31
29
  Created: 201,
32
30
  Accepted: 202,
@@ -104,10 +102,10 @@ const defaultParams = {
104
102
  * @returns {ajax.Xhr} - Returns object that could be aborted.
105
103
  */
106
104
  ajax.request = function (url, params) {
107
-
108
105
  params = params || {};
109
106
 
110
- var p = {}, i;
107
+ var p = {},
108
+ i;
111
109
 
112
110
  for (i in defaultParams) {
113
111
  p[i] = defaultParams[i];
@@ -123,14 +121,19 @@ ajax.request = function (url, params) {
123
121
 
124
122
  var customXhr = new Xhr(xhr);
125
123
 
126
- var body = null, d;
124
+ var body = null,
125
+ d;
127
126
 
128
127
  if (p.type === ajax.Method.Post) {
129
128
  if (p.data) {
130
129
  body = "";
131
130
  for (let key in p.data) {
132
131
  d = p.data[key];
133
- body += key + "=" + encodeURIComponent(d instanceof Object ? JSON.stringify(d) : d) + "&";
132
+ body +=
133
+ key +
134
+ "=" +
135
+ encodeURIComponent(d instanceof Object ? JSON.stringify(d) : d) +
136
+ "&";
134
137
  }
135
138
  body = body.slice(0, -1);
136
139
  }
@@ -140,7 +143,8 @@ ajax.request = function (url, params) {
140
143
  var tail = "?";
141
144
  for (let key in p.data) {
142
145
  d = p.data[key];
143
- tail += key + "=" + encodeURIComponent(d instanceof Object ? JSON.stringify(d) : d) + "&";
146
+ tail +=
147
+ key + "=" + encodeURIComponent(d instanceof Object ? JSON.stringify(d) : d) + "&";
144
148
  }
145
149
  tail = tail.slice(0, -1);
146
150
  xhr.open(p.type, url + tail, p.async);
@@ -172,7 +176,8 @@ ajax.request = function (url, params) {
172
176
  * @param {Object} Response data
173
177
  * @param {Object} Status object
174
178
  */
175
- params.abort && params.abort.call(params.sender || customXhr, xhr.response, xhr.status);
179
+ params.abort &&
180
+ params.abort.call(params.sender || customXhr, xhr.response, xhr.status);
176
181
  } else {
177
182
  /**
178
183
  * Error callback.
@@ -180,9 +185,10 @@ ajax.request = function (url, params) {
180
185
  * @param {Object} Response data
181
186
  * @param {Object} Status object
182
187
  */
183
- params.error && params.error.call(params.sender || customXhr, xhr.response, xhr.status);
188
+ params.error &&
189
+ params.error.call(params.sender || customXhr, xhr.response, xhr.status);
184
190
  }
185
- delete xhr['onreadystatechange'];
191
+ delete xhr["onreadystatechange"];
186
192
  xhr.onreadystatechange = null;
187
193
  xhr = null;
188
194
  } else {
@@ -195,4 +201,4 @@ ajax.request = function (url, params) {
195
201
  return customXhr;
196
202
  };
197
203
 
198
- export { ajax };
204
+ export { ajax };
@@ -2,13 +2,13 @@
2
2
  * @module og/astro/earth
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
- import * as jd from './jd.js';
8
- import * as math from '../math.js';
9
- import * as astro from './astro.js';
10
- import { Quat } from '../math/Quat.js';
11
- import { Vec3 } from '../math/Vec3.js';
7
+ import * as jd from "./jd.js";
8
+ import * as math from "../math.js";
9
+ import * as astro from "./astro.js";
10
+ import { Quat } from "../math/Quat.js";
11
+ import { Vec3 } from "../math/Vec3.js";
12
12
 
13
13
  /**
14
14
  * Returns Sun position in the geocentric coordinate system by the time.
@@ -21,7 +21,7 @@ export function getSunPosition(jDate) {
21
21
  // e Eccentricity
22
22
  // T Time at perihelion
23
23
 
24
- // q Perihelion distance = a * (1 - e)
24
+ // q Perihelion distance = a * (1 - e)
25
25
  // Q Aphelion distance = a * (1 + e)
26
26
 
27
27
  // i Inclination, i.e. the "tilt" of the orbit relative to the
@@ -70,16 +70,17 @@ export function getSunPosition(jDate) {
70
70
 
71
71
  var d = jDate - jd.J2000;
72
72
 
73
- var w = 282.9404 + 4.70935E-5 * d; // longitude of perihelion
73
+ var w = 282.9404 + 4.70935e-5 * d; // longitude of perihelion
74
74
  // var a = 1.000000; // mean distance, a.u.
75
- var e = 0.016709 - 1.151E-9 * d; // eccentricity
76
- var M = math.rev(356.0470 + 0.9856002585 * d); // mean anomaly
75
+ var e = 0.016709 - 1.151e-9 * d; // eccentricity
76
+ var M = math.rev(356.047 + 0.9856002585 * d); // mean anomaly
77
77
 
78
- var oblecl = astro.J2000_OBLIQUITY - 3.563E-7 * d; // obliquity of the ecliptic
78
+ var oblecl = astro.J2000_OBLIQUITY - 3.563e-7 * d; // obliquity of the ecliptic
79
79
 
80
80
  // var L = math.rev(w + M); // Sun's mean longitude
81
81
 
82
- var E = M + math.DEGREES * e * Math.sin(M * math.RADIANS) * (1 + e * Math.cos(M * math.RADIANS)); // eccentric anomaly
82
+ var E =
83
+ M + math.DEGREES * e * Math.sin(M * math.RADIANS) * (1 + e * Math.cos(M * math.RADIANS)); // eccentric anomaly
83
84
 
84
85
  // Sun rectangular coordiantes, where the X axis points towards the perihelion
85
86
  var x = Math.cos(E * math.RADIANS) - e;
@@ -99,10 +100,15 @@ export function getSunPosition(jDate) {
99
100
  var yequat = y * Math.cos(oblecl * math.RADIANS);
100
101
  var zequat = y * Math.sin(oblecl * math.RADIANS);
101
102
 
102
- var theta = math.TWO_PI * (d * 24.0 / 23.9344694 - 259.853 / 360.0); // Siderial spin time
103
+ var theta = math.TWO_PI * ((d * 24.0) / 23.9344694 - 259.853 / 360.0); // Siderial spin time
103
104
 
104
- return Quat.yRotation(-theta).mulVec3(new Vec3(-yequat * astro.AU_TO_METERS,
105
- zequat * astro.AU_TO_METERS, -xequat * astro.AU_TO_METERS));
105
+ return Quat.yRotation(-theta).mulVec3(
106
+ new Vec3(
107
+ -yequat * astro.AU_TO_METERS,
108
+ zequat * astro.AU_TO_METERS,
109
+ -xequat * astro.AU_TO_METERS
110
+ )
111
+ );
106
112
 
107
113
  // Convert to RA and Decl
108
114
  // var RA = Math.atan2(yequat, xequat) * math.DEGREES;
package/src/og/bv/Box.js CHANGED
@@ -11,10 +11,9 @@ import { Vec3 } from "../math/Vec3.js";
11
11
  * @class
12
12
  */
13
13
  class Box {
14
-
15
14
  /**
16
- *
17
- * @param {*} boundsArr
15
+ *
16
+ * @param {*} boundsArr
18
17
  */
19
18
  constructor(boundsArr) {
20
19
  /**
@@ -2,9 +2,9 @@
2
2
  * @module og/bv/Sphere
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
- import { Vec3 } from '../math/Vec3.js';
7
+ import { Vec3 } from "../math/Vec3.js";
8
8
 
9
9
  /**
10
10
  * Bounding sphere class.
@@ -14,12 +14,11 @@ import { Vec3 } from '../math/Vec3.js';
14
14
  */
15
15
  class Sphere {
16
16
  /**
17
- *
18
- * @param {number} radius
19
- * @param {Vec3} center
17
+ *
18
+ * @param {number} radius
19
+ * @param {Vec3} center
20
20
  */
21
21
  constructor(radius, center) {
22
-
23
22
  /**
24
23
  * Sphere radius.
25
24
  * @public
@@ -41,7 +40,11 @@ class Sphere {
41
40
  */
42
41
  setFromBounds(bounds) {
43
42
  let m = new Vec3(bounds[0], bounds[1], bounds[2]);
44
- this.center.set(m.x + (bounds[3] - m.x) * 0.5, m.y + (bounds[3] - m.y) * 0.5, m.z + (bounds[5] - m.z) * 0.5);
43
+ this.center.set(
44
+ m.x + (bounds[3] - m.x) * 0.5,
45
+ m.y + (bounds[3] - m.y) * 0.5,
46
+ m.z + (bounds[5] - m.z) * 0.5
47
+ );
45
48
  this.radius = this.center.distance(m);
46
49
  }
47
50
 
@@ -98,26 +98,26 @@ class Camera {
98
98
  * @protected
99
99
  * @type {Vec3}
100
100
  */
101
- this._u = new Vec3(0.0, 1.0, 0.0); // up x n
101
+ this._r = new Vec3(1.0, 0.0, 0.0); // up x n
102
102
 
103
103
  /**
104
104
  * Camera up vector.
105
105
  * @protected
106
106
  * @type {Vec3}
107
107
  */
108
- this._v = new Vec3(1.0, 0.0, 0.0); // n x u - UP
108
+ this._u = new Vec3(0.0, 1.0, 0.0); // n x u - UP
109
109
 
110
110
  /**
111
111
  * Camera forward vector.
112
112
  * @protected
113
113
  * @type {Vec3}
114
114
  */
115
- this._n = new Vec3(0.0, 0.0, 1.0); // eye - look - FORWARD
115
+ this._b = new Vec3(0.0, 0.0, 1.0); // eye - look - FORWARD
116
116
 
117
117
  // Previous frame values
118
- this._pu = this._u.clone();
119
- this._pv = this._v.clone();
120
- this._pn = this._n.clone();
118
+ this._pu = this._r.clone();
119
+ this._pv = this._u.clone();
120
+ this._pn = this._b.clone();
121
121
  this._peye = this.eye.clone();
122
122
  this.isMoved = false;
123
123
 
@@ -173,9 +173,9 @@ class Camera {
173
173
  }
174
174
 
175
175
  checkMoveEnd() {
176
- var u = this._u,
177
- v = this._v,
178
- n = this._n,
176
+ var u = this._r,
177
+ v = this._u,
178
+ n = this._b,
179
179
  eye = this.eye;
180
180
 
181
181
  if (this._peye.equal(eye) && this._pu.equal(u) && this._pv.equal(v) && this._pn.equal(n)) {
@@ -216,27 +216,27 @@ class Camera {
216
216
  }
217
217
 
218
218
  getUp() {
219
- return this._v.clone();
219
+ return this._u.clone();
220
220
  }
221
221
 
222
222
  getDown() {
223
- return this._v.negateTo();
223
+ return this._u.negateTo();
224
224
  }
225
225
 
226
226
  getRight() {
227
- return this._u.clone();
227
+ return this._r.clone();
228
228
  }
229
229
 
230
230
  getLeft() {
231
- return this._u.negateTo();
231
+ return this._r.negateTo();
232
232
  }
233
233
 
234
234
  getForward() {
235
- return this._n.negateTo();
235
+ return this._b.negateTo();
236
236
  }
237
237
 
238
238
  getBackward() {
239
- return this._n.clone();
239
+ return this._b.clone();
240
240
  }
241
241
 
242
242
  /**
@@ -245,9 +245,9 @@ class Camera {
245
245
  * @virtual
246
246
  */
247
247
  update() {
248
- var u = this._u,
249
- v = this._v,
250
- n = this._n,
248
+ var u = this._r,
249
+ v = this._u,
250
+ n = this._b,
251
251
  eye = this.eye;
252
252
 
253
253
  Vec3.doubleToTwoFloat32Array(eye, this.eyeHigh, this.eyeLow);
@@ -321,12 +321,7 @@ class Camera {
321
321
  this._tanViewAngle_hradOneByHeight =
322
322
  this._tanViewAngle_hrad * this.renderer.handler._oneByHeight;
323
323
  var c = this.renderer.handler.canvas;
324
- this._projSizeConst =
325
- Math.min(
326
- c.clientWidth < 256 ? 256 : c.clientWidth,
327
- c.clientHeight < 256 ? 256 : c.clientHeight
328
- ) /
329
- (angle * math.RADIANS);
324
+ this._projSizeConst = Math.min(c.clientWidth < 256 ? 256 : c.clientWidth, c.clientHeight < 256 ? 256 : c.clientHeight) / (angle * math.RADIANS);
330
325
  for (let i = 0, len = this.frustums.length; i < len; i++) {
331
326
  this.frustums[i].setProjectionMatrix(
332
327
  angle,
@@ -368,15 +363,15 @@ class Camera {
368
363
  this.eye.x = eye.x;
369
364
  this.eye.y = eye.y;
370
365
  this.eye.z = eye.z;
371
- look = look || this._n;
372
- up = up || this._v;
373
- this._n.x = eye.x - look.x;
374
- this._n.y = eye.y - look.y;
375
- this._n.z = eye.z - look.z;
376
- this._u.copy(up.cross(this._n));
377
- this._n.normalize();
378
- this._u.normalize();
379
- this._v.copy(this._n.cross(this._u));
366
+ look = look || this._b;
367
+ up = up || this._u;
368
+ this._b.x = eye.x - look.x;
369
+ this._b.y = eye.y - look.y;
370
+ this._b.z = eye.z - look.z;
371
+ this._r.copy(up.cross(this._b));
372
+ this._b.normalize();
373
+ this._r.normalize();
374
+ this._u.copy(this._b.cross(this._r));
380
375
  return this;
381
376
  }
382
377
 
@@ -384,14 +379,14 @@ class Camera {
384
379
  * Sets camera look point
385
380
  * @public
386
381
  * @param {Vec3} look - Look point
387
- * @param {Vec3} [up] - Camera up vector otherwise camera current up vector(this._v)
382
+ * @param {Vec3} [up] - Camera up vector otherwise camera current up vector(this._u)
388
383
  */
389
384
  look(look, up) {
390
- this._n.set(this.eye.x - look.x, this.eye.y - look.y, this.eye.z - look.z);
391
- this._u.copy((up || this._v).cross(this._n));
392
- this._n.normalize();
393
- this._u.normalize();
394
- this._v.copy(this._n.cross(this._u));
385
+ this._b.set(this.eye.x - look.x, this.eye.y - look.y, this.eye.z - look.z);
386
+ this._r.copy((up || this._u).cross(this._b));
387
+ this._b.normalize();
388
+ this._r.normalize();
389
+ this._u.copy(this._b.cross(this._r));
395
390
  }
396
391
 
397
392
  /**
@@ -402,9 +397,9 @@ class Camera {
402
397
  * @param {number} dn - delta Z
403
398
  */
404
399
  slide(du, dv, dn) {
405
- this.eye.x += du * this._u.x + dv * this._v.x + dn * this._n.x;
406
- this.eye.y += du * this._u.y + dv * this._v.y + dn * this._n.y;
407
- this.eye.z += du * this._u.z + dv * this._v.z + dn * this._n.z;
400
+ this.eye.x += du * this._r.x + dv * this._u.x + dn * this._b.x;
401
+ this.eye.y += du * this._r.y + dv * this._u.y + dn * this._b.y;
402
+ this.eye.z += du * this._r.z + dv * this._u.z + dn * this._b.z;
408
403
  }
409
404
 
410
405
  /**
@@ -415,16 +410,16 @@ class Camera {
415
410
  roll(angle) {
416
411
  var cs = Math.cos(math.RADIANS * angle);
417
412
  var sn = Math.sin(math.RADIANS * angle);
418
- var t = this._u.clone();
419
- this._u.set(
420
- cs * t.x - sn * this._v.x,
421
- cs * t.y - sn * this._v.y,
422
- cs * t.z - sn * this._v.z
413
+ var t = this._r.clone();
414
+ this._r.set(
415
+ cs * t.x - sn * this._u.x,
416
+ cs * t.y - sn * this._u.y,
417
+ cs * t.z - sn * this._u.z
423
418
  );
424
- this._v.set(
425
- sn * t.x + cs * this._v.x,
426
- sn * t.y + cs * this._v.y,
427
- sn * t.z + cs * this._v.z
419
+ this._u.set(
420
+ sn * t.x + cs * this._u.x,
421
+ sn * t.y + cs * this._u.y,
422
+ sn * t.z + cs * this._u.z
428
423
  );
429
424
  }
430
425
 
@@ -436,16 +431,16 @@ class Camera {
436
431
  pitch(angle) {
437
432
  var cs = Math.cos(math.RADIANS * angle);
438
433
  var sn = Math.sin(math.RADIANS * angle);
439
- var t = this._n.clone();
440
- this._n.set(
441
- cs * t.x - sn * this._v.x,
442
- cs * t.y - sn * this._v.y,
443
- cs * t.z - sn * this._v.z
434
+ var t = this._b.clone();
435
+ this._b.set(
436
+ cs * t.x - sn * this._u.x,
437
+ cs * t.y - sn * this._u.y,
438
+ cs * t.z - sn * this._u.z
444
439
  );
445
- this._v.set(
446
- sn * t.x + cs * this._v.x,
447
- sn * t.y + cs * this._v.y,
448
- sn * t.z + cs * this._v.z
440
+ this._u.set(
441
+ sn * t.x + cs * this._u.x,
442
+ sn * t.y + cs * this._u.y,
443
+ sn * t.z + cs * this._u.z
449
444
  );
450
445
  }
451
446
 
@@ -457,16 +452,16 @@ class Camera {
457
452
  yaw(angle) {
458
453
  var cs = Math.cos(math.RADIANS * angle);
459
454
  var sn = Math.sin(math.RADIANS * angle);
460
- var t = this._u.clone();
461
- this._u.set(
462
- cs * t.x - sn * this._n.x,
463
- cs * t.y - sn * this._n.y,
464
- cs * t.z - sn * this._n.z
455
+ var t = this._r.clone();
456
+ this._r.set(
457
+ cs * t.x - sn * this._b.x,
458
+ cs * t.y - sn * this._b.y,
459
+ cs * t.z - sn * this._b.z
465
460
  );
466
- this._n.set(
467
- sn * t.x + cs * this._n.x,
468
- sn * t.y + cs * this._n.y,
469
- sn * t.z + cs * this._n.z
461
+ this._b.set(
462
+ sn * t.x + cs * this._b.x,
463
+ sn * t.y + cs * this._b.y,
464
+ sn * t.z + cs * this._b.z
470
465
  );
471
466
  }
472
467
 
@@ -485,12 +480,8 @@ class Camera {
485
480
  var px = (x - w) / w,
486
481
  py = -(y - h) / h;
487
482
 
488
- var world1 = this.frustums[0]._inverseProjectionViewMatrix
489
- .mulVec4(new Vec4(px, py, -1.0, 1.0))
490
- .affinity(),
491
- world2 = this.frustums[0]._inverseProjectionViewMatrix
492
- .mulVec4(new Vec4(px, py, 0.0, 1.0))
493
- .affinity();
483
+ var world1 = this.frustums[0]._inverseProjectionViewMatrix.mulVec4(new Vec4(px, py, -1.0, 1.0)).affinity(),
484
+ world2 = this.frustums[0]._inverseProjectionViewMatrix.mulVec4(new Vec4(px, py, 0.0, 1.0)).affinity();
494
485
 
495
486
  return world2.subA(world1).toVec3().normalize();
496
487
  }
@@ -520,16 +511,16 @@ class Camera {
520
511
  center = center || Vec3.ZERO;
521
512
  up = up || Vec3.UP;
522
513
 
523
- var rot = new Mat4().setRotation(isArc ? this._v : up, angle);
514
+ var rot = new Mat4().setRotation(isArc ? this._u : up, angle);
524
515
  var tr = new Mat4().setIdentity().translate(center);
525
516
  var ntr = new Mat4().setIdentity().translate(center.negateTo());
526
517
 
527
518
  var trm = tr.mul(rot).mul(ntr);
528
519
 
529
520
  this.eye = trm.mulVec3(this.eye);
530
- this._v = rot.mulVec3(this._v).normalize();
531
521
  this._u = rot.mulVec3(this._u).normalize();
532
- this._n = rot.mulVec3(this._n).normalize();
522
+ this._r = rot.mulVec3(this._r).normalize();
523
+ this._b = rot.mulVec3(this._b).normalize();
533
524
  }
534
525
 
535
526
  /**
@@ -551,7 +542,7 @@ class Camera {
551
542
  * @param {Vec3} center - Point that the camera rotates around.
552
543
  */
553
544
  rotateVertical(angle, center) {
554
- this.rotateAround(angle, false, center, this._u);
545
+ this.rotateAround(angle, false, center, this._r);
555
546
  }
556
547
 
557
548
  /**