astro-viewer 3.9.0 → 3.11.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 (58) hide show
  1. package/README.md +66 -4
  2. package/dist/astroviewer.cjs +536 -120
  3. package/dist/astroviewer.cjs.map +1 -1
  4. package/dist/astroviewer.js +536 -120
  5. package/dist/astroviewer.js.map +1 -1
  6. package/dist/astroviewer.min.js +1 -1
  7. package/dist/astroviewer.min.js.map +1 -1
  8. package/lib-esm/AstroSphere.d.ts +1 -0
  9. package/lib-esm/AstroSphere.d.ts.map +1 -1
  10. package/lib-esm/AstroSphere.js +15 -0
  11. package/lib-esm/AstroSphere.js.map +1 -1
  12. package/lib-esm/AstroViewer.d.ts +1 -0
  13. package/lib-esm/AstroViewer.d.ts.map +1 -1
  14. package/lib-esm/AstroViewer.js +6 -3
  15. package/lib-esm/AstroViewer.js.map +1 -1
  16. package/lib-esm/Camera.d.ts +6 -0
  17. package/lib-esm/Camera.d.ts.map +1 -1
  18. package/lib-esm/Camera.js +102 -8
  19. package/lib-esm/Camera.js.map +1 -1
  20. package/lib-esm/Global.d.ts +3 -3
  21. package/lib-esm/Global.d.ts.map +1 -1
  22. package/lib-esm/Global.js +38 -16
  23. package/lib-esm/Global.js.map +1 -1
  24. package/lib-esm/model/Source.d.ts +11 -0
  25. package/lib-esm/model/Source.d.ts.map +1 -1
  26. package/lib-esm/model/Source.js +9 -1
  27. package/lib-esm/model/Source.js.map +1 -1
  28. package/lib-esm/model/catalogues/CatalogueGL.d.ts +31 -8
  29. package/lib-esm/model/catalogues/CatalogueGL.d.ts.map +1 -1
  30. package/lib-esm/model/catalogues/CatalogueGL.js +286 -87
  31. package/lib-esm/model/catalogues/CatalogueGL.js.map +1 -1
  32. package/lib-esm/model/footprints/FootprintSetGL.d.ts +1 -3
  33. package/lib-esm/model/footprints/FootprintSetGL.d.ts.map +1 -1
  34. package/lib-esm/model/footprints/FootprintSetGL.js +1 -3
  35. package/lib-esm/model/footprints/FootprintSetGL.js.map +1 -1
  36. package/lib-esm/model/hips/VisibleTilesManager.d.ts +6 -3
  37. package/lib-esm/model/hips/VisibleTilesManager.d.ts.map +1 -1
  38. package/lib-esm/model/hips/VisibleTilesManager.js.map +1 -1
  39. package/lib-esm/model/meships/MeshHiPS.d.ts +4 -4
  40. package/lib-esm/model/meships/MeshHiPS.d.ts.map +1 -1
  41. package/lib-esm/model/meships/MeshHiPS.js +28 -12
  42. package/lib-esm/model/meships/MeshHiPS.js.map +1 -1
  43. package/lib-esm/model/terra/TerraFootprintSetGL.d.ts +2 -0
  44. package/lib-esm/model/terra/TerraFootprintSetGL.d.ts.map +1 -1
  45. package/lib-esm/model/terra/TerraFootprintSetGL.js +19 -0
  46. package/lib-esm/model/terra/TerraFootprintSetGL.js.map +1 -1
  47. package/lib-esm/model/terra/TerraPointSetGL.d.ts +4 -0
  48. package/lib-esm/model/terra/TerraPointSetGL.d.ts.map +1 -1
  49. package/lib-esm/model/terra/TerraPointSetGL.js +36 -0
  50. package/lib-esm/model/terra/TerraPointSetGL.js.map +1 -1
  51. package/lib-esm/model/terra/TerraPolylineSetGL.d.ts +1 -3
  52. package/lib-esm/model/terra/TerraPolylineSetGL.d.ts.map +1 -1
  53. package/lib-esm/model/terra/TerraPolylineSetGL.js +1 -3
  54. package/lib-esm/model/terra/TerraPolylineSetGL.js.map +1 -1
  55. package/lib-esm/utils/MouseHelper.d.ts.map +1 -1
  56. package/lib-esm/utils/MouseHelper.js +2 -1
  57. package/lib-esm/utils/MouseHelper.js.map +1 -1
  58. package/package.json +1 -1
package/README.md CHANGED
@@ -21,8 +21,12 @@ AstroViewer is developed from scratch without depending on visualization framewo
21
21
  - HiPS coverage handling
22
22
  - HEALPix hierarchical sky tessellation
23
23
  - FITS astronomical data support
24
+ - FITS display scaling (linear, sqrt, log, asinh, gamma)
25
+ - FITS display range modes
26
+ - Runtime color maps
24
27
  - Astronomical coordinate systems and transformations
25
28
  - Field-of-view calculations
29
+ - Interactive navigation and animated Fly To
26
30
  - Grid and coordinate visualization
27
31
  - TAP-based astronomical data access
28
32
 
@@ -34,6 +38,7 @@ AstroViewer is developed from scratch without depending on visualization framewo
34
38
  - GeoJSON geometries and overlays
35
39
  - Satellite tracks and observation geometry
36
40
  - Sensor footprints and cones
41
+ - Longitude/latitude navigation and animated Fly To
37
42
  - Earth-oriented coordinate and picking utilities
38
43
 
39
44
  ### 3D and Scientific Visualization
@@ -42,7 +47,7 @@ AstroViewer is developed from scratch without depending on visualization framewo
42
47
  - Inside/outside sphere visualization
43
48
  - MeshHiPS OBJ tiled meshes
44
49
  - Runtime color maps
45
- - Interactive camera and navigation
50
+ - Interactive camera, navigation and animated Fly To
46
51
  - Ray picking
47
52
  - Scientific overlays and geometries
48
53
  - Framework-independent architecture
@@ -100,6 +105,7 @@ A HiPS survey can be activated using a `HiPSDescriptor`:
100
105
  import { AstroViewer, HiPSDescriptor } from "astro-viewer";
101
106
 
102
107
  const canvas = document.getElementById("astrocanvas");
108
+
103
109
  const viewer = new AstroViewer(canvas);
104
110
 
105
111
  const hipsUrl = "https://alasky.cds.unistra.fr/DSS/DSSColor/";
@@ -189,6 +195,26 @@ AstroViewer supports conventional image-based HiPS tiles and FITS HiPS tiles.
189
195
 
190
196
  ---
191
197
 
198
+ ## FITS HiPS Visualization
199
+
200
+ AstroViewer can render FITS tiles directly as part of the HiPS rendering pipeline.
201
+
202
+ FITS visualization supports multiple display scaling functions:
203
+
204
+ ```text
205
+ linear
206
+ sqrt
207
+ log
208
+ asinh
209
+ gamma
210
+ ```
211
+
212
+ The display range and scaling parameters can be changed at runtime, allowing scientific image data with different dynamic ranges to be explored interactively.
213
+
214
+ Color maps can also be applied at runtime to FITS-based HiPS data.
215
+
216
+ ---
217
+
192
218
  ## HiPS Coverage
193
219
 
194
220
  AstroViewer supports survey coverage information associated with HiPS datasets.
@@ -199,6 +225,38 @@ This is particularly useful for partial-sky surveys.
199
225
 
200
226
  ---
201
227
 
228
+ ## Navigation and Fly To
229
+
230
+ AstroViewer provides immediate and animated camera navigation.
231
+
232
+ The viewer can move directly to a target coordinate:
233
+
234
+ ```js
235
+ viewer.goTo(firstDeg, secondDeg);
236
+ ```
237
+
238
+ or smoothly animate the camera towards the target:
239
+
240
+ ```js
241
+ viewer.flyTo(firstDeg, secondDeg);
242
+ ```
243
+
244
+ An optional duration can be specified in milliseconds:
245
+
246
+ ```js
247
+ viewer.flyTo(firstDeg, secondDeg, 1500);
248
+ ```
249
+
250
+ The coordinate semantics depend on the active visualization domain:
251
+
252
+ - Astronomy uses right ascension and declination.
253
+ - Earth visualization uses longitude and latitude.
254
+ - Planetary and MeshHiPS visualization uses longitude and latitude.
255
+
256
+ Fly To uses spherical interpolation and integrates with the viewer rendering loop. User interaction interrupts an active Fly To operation, allowing normal interactive navigation to resume immediately.
257
+
258
+ ---
259
+
202
260
  ## Earth Maps
203
261
 
204
262
  AstroViewer also supports tiled Earth observation maps.
@@ -265,17 +323,21 @@ addHiPS(...)
265
323
  addHiPSFromUrl(...)
266
324
  removeHiPS(...)
267
325
  removeAllHiPS()
268
-
269
326
  getActiveHiPS()
270
327
  getActiveHiPSLayers()
271
328
  setActiveHiPS(...)
272
-
273
329
  getActiveHiPSFormats()
274
330
  changeHiPSFormat(...)
275
-
276
331
  setHiPSOpacity(...)
277
332
  ```
278
333
 
334
+ ### Navigation
335
+
336
+ ```ts
337
+ goTo(...)
338
+ flyTo(...)
339
+ ```
340
+
279
341
  ### Maps and visualization
280
342
 
281
343
  AstroViewer also exposes functionality around: