@openglobus/og 0.23.0 → 0.24.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 (84) hide show
  1. package/lib/@openglobus/js/Globe.d.ts +0 -1
  2. package/lib/@openglobus/js/camera/Camera.d.ts +48 -15
  3. package/lib/@openglobus/js/camera/PlanetCamera.d.ts +13 -0
  4. package/lib/@openglobus/js/control/MouseNavigation.d.ts +62 -51
  5. package/lib/@openglobus/js/control/OldMouseNavigation.d.ts +64 -0
  6. package/lib/@openglobus/js/control/index.d.ts +1 -2
  7. package/lib/@openglobus/js/entity/Entity.d.ts +24 -20
  8. package/lib/@openglobus/js/entity/GeoObject.d.ts +0 -9
  9. package/lib/@openglobus/js/input/MouseHandler.d.ts +1 -0
  10. package/lib/@openglobus/js/math/Mat3.d.ts +1 -1
  11. package/lib/@openglobus/js/math/Mat4.d.ts +10 -1
  12. package/lib/@openglobus/js/math/Plane.d.ts +3 -1
  13. package/lib/@openglobus/js/math/Quat.d.ts +1 -0
  14. package/lib/@openglobus/js/math/Ray.d.ts +6 -16
  15. package/lib/@openglobus/js/math/Vec2.d.ts +22 -0
  16. package/lib/@openglobus/js/renderer/RendererEvents.d.ts +1 -0
  17. package/lib/@openglobus/js/scene/Planet.d.ts +4 -0
  18. package/lib/@openglobus/js/webgl/Handler.d.ts +21 -12
  19. package/lib/@openglobus/og.esm.js +1 -1
  20. package/lib/@openglobus/og.esm.js.map +1 -1
  21. package/lib/@openglobus/og.umd.js +1 -1
  22. package/lib/@openglobus/og.umd.js.map +1 -1
  23. package/lib/js/Globe.d.ts +0 -1
  24. package/lib/js/Globe.js +4 -2
  25. package/lib/js/Popup.js +1 -1
  26. package/lib/js/camera/Camera.d.ts +48 -15
  27. package/lib/js/camera/Camera.js +82 -28
  28. package/lib/js/camera/PlanetCamera.d.ts +13 -0
  29. package/lib/js/camera/PlanetCamera.js +52 -5
  30. package/lib/js/control/CameraLock.js +1 -1
  31. package/lib/js/control/DebugInfo.js +30 -10
  32. package/lib/js/control/KeyboardNavigation.js +8 -8
  33. package/lib/js/control/MouseNavigation.d.ts +62 -51
  34. package/lib/js/control/MouseNavigation.js +361 -305
  35. package/lib/js/control/MouseWheelZoomControl.d.ts +0 -44
  36. package/lib/js/control/MouseWheelZoomControl.js +270 -181
  37. package/lib/js/control/OldMouseNavigation.d.ts +64 -0
  38. package/lib/js/control/OldMouseNavigation.js +368 -0
  39. package/lib/js/control/ScaleControl.js +2 -2
  40. package/lib/js/control/SimpleNavigation.js +8 -7
  41. package/lib/js/control/Sun.js +5 -5
  42. package/lib/js/control/TouchNavigation.js +11 -8
  43. package/lib/js/control/elevationProfile/ElevationProfileScene.js +2 -1
  44. package/lib/js/control/geoObjectEditor/GeoObjectEditorDialog.js +19 -33
  45. package/lib/js/control/geoObjectEditor/GeoObjectEditorScene.js +18 -18
  46. package/lib/js/control/geoObjectEditor/MoveAxisEntity.js +3 -2
  47. package/lib/js/control/geoObjectEditor/MovePlaneEntity.js +1 -4
  48. package/lib/js/control/geoObjectEditor/RotateEntity.js +1 -1
  49. package/lib/js/control/index.d.ts +1 -2
  50. package/lib/js/control/index.js +1 -2
  51. package/lib/js/control/visibleExtent/Segment.js +4 -4
  52. package/lib/js/entity/Entity.d.ts +24 -20
  53. package/lib/js/entity/Entity.js +62 -47
  54. package/lib/js/entity/GeoObject.d.ts +0 -9
  55. package/lib/js/entity/GeoObject.js +0 -3
  56. package/lib/js/entity/InstanceData.js +6 -3
  57. package/lib/js/input/MouseHandler.d.ts +1 -0
  58. package/lib/js/input/MouseHandler.js +12 -1
  59. package/lib/js/math/Mat3.d.ts +1 -1
  60. package/lib/js/math/Mat3.js +1 -1
  61. package/lib/js/math/Mat4.d.ts +10 -1
  62. package/lib/js/math/Mat4.js +17 -1
  63. package/lib/js/math/Plane.d.ts +3 -1
  64. package/lib/js/math/Plane.js +11 -1
  65. package/lib/js/math/Quat.d.ts +1 -0
  66. package/lib/js/math/Quat.js +1 -0
  67. package/lib/js/math/Ray.d.ts +6 -16
  68. package/lib/js/math/Ray.js +53 -46
  69. package/lib/js/math/Vec2.d.ts +22 -0
  70. package/lib/js/math/Vec2.js +32 -0
  71. package/lib/js/renderer/Renderer.js +10 -6
  72. package/lib/js/renderer/RendererEvents.d.ts +1 -0
  73. package/lib/js/renderer/RendererEvents.js +3 -1
  74. package/lib/js/scene/Planet.d.ts +4 -0
  75. package/lib/js/scene/Planet.js +24 -3
  76. package/lib/js/segment/Segment.js +4 -4
  77. package/lib/js/terrain/GlobusTerrain.js +2 -2
  78. package/lib/js/webgl/Handler.d.ts +21 -12
  79. package/lib/js/webgl/Handler.js +42 -33
  80. package/package.json +2 -2
  81. package/lib/@openglobus/js/control/EarthNavigation.d.ts +0 -50
  82. package/lib/@openglobus/js/control/MouseWheelZoomControl.d.ts +0 -44
  83. package/lib/js/control/EarthNavigation.d.ts +0 -50
  84. package/lib/js/control/EarthNavigation.js +0 -202
@@ -92,6 +92,15 @@ export declare class Vec2 {
92
92
  * @returns {Vec2}
93
93
  */
94
94
  static orthoNormalize(normal: Vec2, tangent: Vec2): Vec2;
95
+ /**
96
+ * Get projection of the vector to plane where n - normal to the plane.
97
+ * @static
98
+ * @param {Vec2} b - Vector to project.
99
+ * @param {Vec2} n - Plane normal.
100
+ * @param {Vec2} [def] - Default value for non existed result.
101
+ * @returns {Vec2} -
102
+ */
103
+ static proj_b_to_plane(b: Vec2, n: Vec2, def?: Vec3): Vec2;
95
104
  /**
96
105
  * Converts to 3d vector, third value is 0.0.
97
106
  * @public
@@ -221,10 +230,17 @@ export declare class Vec2 {
221
230
  clear(): Vec2;
222
231
  /**
223
232
  * Returns normalized vector.
233
+ * @deprecated
224
234
  * @public
225
235
  * @returns {Vec2}
226
236
  */
227
237
  normal(): Vec2;
238
+ /**
239
+ * Returns normalized vector.
240
+ * @public
241
+ * @returns {Vec2}
242
+ */
243
+ getNormal(): Vec2;
228
244
  /**
229
245
  * Normalize current vector.
230
246
  * @public
@@ -299,6 +315,12 @@ export declare class Vec2 {
299
315
  * @returns {Vec2}
300
316
  */
301
317
  slerp(v2: Vec2, t: number): Vec2;
318
+ /**
319
+ * Returns true if vector's values are zero.
320
+ * @public
321
+ * @returns {boolean} -
322
+ */
323
+ isZero(): boolean;
302
324
  }
303
325
  /**
304
326
  * Vector 2d object creator.
@@ -111,6 +111,7 @@ export interface IMouseState extends IBaseInputState {
111
111
  wheelDelta: number;
112
112
  /** JavaScript mouse system event message. */
113
113
  sys: MouseEvent | null;
114
+ isTouchPad: boolean;
114
115
  }
115
116
  export interface ITouchState extends IBaseInputState {
116
117
  /** Touch has ended right now.*/
@@ -631,5 +631,9 @@ export declare class Planet extends RenderNode {
631
631
  getHeightDefault(lonLat: LonLat): Promise<number>;
632
632
  getHeightAboveELL(lonLat: LonLat): Promise<number>;
633
633
  onremove(): void;
634
+ /**
635
+ * @todo: refactor with events or something better
636
+ */
637
+ stopDragging(): void;
634
638
  }
635
639
  export {};
@@ -17,7 +17,7 @@ export type WebGLTextureExt = {
17
17
  default?: boolean;
18
18
  } & WebGLTexture;
19
19
  export type ImageSource = HTMLCanvasElement | ImageBitmap | ImageData | HTMLImageElement | HTMLVideoElement;
20
- type CreateTextureFunc = (image: ImageSource, internalFormat?: number, texture?: WebGLTextureExt) => WebGLTextureExt | null;
20
+ type CreateTextureFunc = (image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTextureExt) => WebGLTextureExt | null;
21
21
  export interface IHandlerParameters {
22
22
  anisotropy?: number;
23
23
  width?: number;
@@ -197,7 +197,7 @@ declare class Handler {
197
197
  * @param {number} [level=0] - Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
198
198
  * @returns {WebGLTexture | null} - WebGL texture object.
199
199
  */
200
- createEmptyTexture2DExt(width?: number, height?: number, filter?: string, internalFormat?: string, format?: string, type?: string, level?: number): WebGLTexture | null;
200
+ createEmptyTexture2DExt(width?: number, height?: number, filter?: string, internalFormat?: string, format?: string, type?: string, param?: string, level?: number): WebGLTexture | null;
201
201
  /**
202
202
  * Creates Empty NEAREST filtered texture.
203
203
  * @public
@@ -206,88 +206,97 @@ declare class Handler {
206
206
  * @param {number} [internalFormat]
207
207
  * @returns {WebGLTexture | null} - WebGL texture object.
208
208
  */
209
- createEmptyTexture_n(width: number, height: number, internalFormat?: number): WebGLTexture | null;
209
+ createEmptyTexture_n(width: number, height: number, internalFormat?: number | null, texParami?: number | null): WebGLTexture | null;
210
210
  /**
211
211
  * Creates empty LINEAR filtered texture.
212
212
  * @public
213
213
  * @param {number} width - Empty texture width.
214
214
  * @param {number} height - Empty texture height.
215
215
  * @param {number} [internalFormat]
216
+ * @param {number} [texParami]
216
217
  * @returns {WebGLTexture | null} - WebGL texture object.
217
218
  */
218
- createEmptyTexture_l(width: number, height: number, internalFormat?: number): WebGLTexture | null;
219
+ createEmptyTexture_l(width: number, height: number, internalFormat?: number | null, texParami?: number | null): WebGLTexture | null;
219
220
  /**
220
221
  * Creates NEAREST filter texture.
221
222
  * @public
222
223
  * @param {HTMLCanvasElement | Image} image - Image or Canvas object.
223
224
  * @param {number} [internalFormat]
225
+ * @param {number} [texParami]
224
226
  * @param {WebGLTexture | null} [texture=null]
225
227
  * @returns {WebGLTexture | null} - WebGL texture object.
226
228
  */
227
- createTexture_n_webgl1(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
229
+ createTexture_n_webgl1(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
228
230
  /**
229
231
  * Creates LINEAR filter texture.
230
232
  * @public
231
233
  * @param {ImageSource} image - Image or Canvas object.
232
234
  * @param {number} [internalFormat]
235
+ * @param {number} [texParami]
233
236
  * @param {WebGLTexture | null} [texture]
234
237
  * @returns {WebGLTexture | null} - WebGL texture object.
235
238
  */
236
- createTexture_l_webgl1(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
239
+ createTexture_l_webgl1(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
237
240
  /**
238
241
  * Creates MIPMAP filter texture.
239
242
  * @public
240
243
  * @param {ImageSource} image - Image or Canvas object.
241
244
  * @param {number} [internalFormat]
245
+ * @param {number} [texParami]
242
246
  * @param {WebGLTexture | null} [texture]
243
247
  * @returns {WebGLTexture | null} - WebGL texture object.
244
248
  */
245
- createTexture_mm_webgl1(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
249
+ createTexture_mm_webgl1(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
246
250
  /**
247
251
  * Creates ANISOTROPY filter texture.
248
252
  * @public
249
253
  * @param {ImageSource} image - Image or Canvas object.
250
254
  * @param {number} [internalFormat]
255
+ * @param {number} [texParami]
251
256
  * @param {WebGLTexture | null} [texture]
252
257
  * @returns {WebGLTexture | null} - WebGL texture object.
253
258
  */
254
- createTexture_a_webgl1(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
259
+ createTexture_a_webgl1(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
255
260
  /**
256
261
  * Creates NEAREST filter texture.
257
262
  * @public
258
263
  * @param {ImageSource} image - Image or Canvas object.
259
264
  * @param {number} [internalFormat]
265
+ * @param {number} [texParami]
260
266
  * @param {WebGLTexture | null} [texture]
261
267
  * @returns {WebGLTexture | null} - WebGL texture object.
262
268
  */
263
- createTexture_n_webgl2(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
269
+ createTexture_n_webgl2(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
264
270
  /**
265
271
  * Creates LINEAR filter texture.
266
272
  * @public
267
273
  * @param {ImageSource} image - Image or Canvas object.
268
274
  * @param {number} [internalFormat]
275
+ * @param {number} [texParami]
269
276
  * @param {WebGLTexture | null} [texture]
270
277
  * @returns {WebGLTexture | null} - WebGL texture object.
271
278
  */
272
- createTexture_l_webgl2(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
279
+ createTexture_l_webgl2(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
273
280
  /**
274
281
  * Creates MIPMAP filter texture.
275
282
  * @public
276
283
  * @param {ImageSource} image - Image or Canvas object.
277
284
  * @param {number} [internalFormat]
285
+ * @param {number} [texParami]
278
286
  * @param {WebGLTexture | null} [texture]
279
287
  * @returns {WebGLTexture | null} - WebGL texture object.
280
288
  */
281
- createTexture_mm_webgl2(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
289
+ createTexture_mm_webgl2(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
282
290
  /**
283
291
  * Creates ANISOTROPY filter texture.
284
292
  * @public
285
293
  * @param {ImageSource} image - Image or Canvas object.
286
294
  * @param {number} [internalFormat]
295
+ * @param {number} [texParami]
287
296
  * @param {WebGLTexture | null} [texture]
288
297
  * @returns {WebGLTexture | null} - WebGL texture object.
289
298
  */
290
- createTexture_a_webgl2(image: ImageSource, internalFormat?: number, texture?: WebGLTexture | null): WebGLTexture | null;
299
+ createTexture_a_webgl2(image: ImageSource, internalFormat?: number | null, texParami?: number | null, texture?: WebGLTexture | null): WebGLTexture | null;
291
300
  /**
292
301
  * Creates cube texture.
293
302
  * @public