@openglobus/og 0.20.4 → 0.22.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 (133) hide show
  1. package/lib/@openglobus/js/Globe.d.ts +5 -1
  2. package/lib/@openglobus/js/Object3d.d.ts +8 -2
  3. package/lib/@openglobus/js/camera/Camera.d.ts +2 -0
  4. package/lib/@openglobus/js/control/geoObjectEditor/GeoObjectEditorScene.d.ts +58 -0
  5. package/lib/@openglobus/js/ellipsoid/Ellipsoid.d.ts +1 -1
  6. package/lib/@openglobus/js/ellipsoid/index.d.ts +4 -3
  7. package/lib/@openglobus/js/ellipsoid/mars.d.ts +6 -0
  8. package/lib/@openglobus/js/ellipsoid/moon.d.ts +6 -0
  9. package/lib/@openglobus/js/entity/Entity.d.ts +4 -2
  10. package/lib/@openglobus/js/entity/EntityCollection.d.ts +3 -2
  11. package/lib/@openglobus/js/entity/GeoObject.d.ts +6 -1
  12. package/lib/@openglobus/js/entity/GeoObjectHandler.d.ts +4 -0
  13. package/lib/@openglobus/js/entity/GeometryHandler.d.ts +3 -2
  14. package/lib/@openglobus/js/entity/Label.d.ts +14 -0
  15. package/lib/@openglobus/js/entity/LabelHandler.d.ts +1 -1
  16. package/lib/@openglobus/js/index.d.ts +3 -3
  17. package/lib/@openglobus/js/layer/Vector.d.ts +12 -29
  18. package/lib/@openglobus/js/proj/equi.d.ts +9 -0
  19. package/lib/@openglobus/js/quadTree/{EPSG4326QuadTreeStrategy.d.ts → EPSG4326/EPSG4326QuadTreeStrategy.d.ts} +2 -2
  20. package/lib/@openglobus/js/quadTree/EntityCollectionNode.d.ts +5 -13
  21. package/lib/@openglobus/js/quadTree/EntityCollectionsTreeStrategy.d.ts +25 -0
  22. package/lib/@openglobus/js/quadTree/QuadTreeStrategy.d.ts +11 -0
  23. package/lib/@openglobus/js/quadTree/earth/EarthEntityCollectionNodeLonLat.d.ts +18 -0
  24. package/lib/@openglobus/js/quadTree/earth/EarthEntityCollectionsTreeStrategy.d.ts +19 -0
  25. package/lib/@openglobus/js/quadTree/earth/EarthQuadTreeStrategy.d.ts +29 -0
  26. package/lib/@openglobus/js/quadTree/equi/EquiEntityCollectionNodeLonLat.d.ts +17 -0
  27. package/lib/@openglobus/js/quadTree/equi/EquiEntityCollectionsTreeStrategy.d.ts +17 -0
  28. package/lib/@openglobus/js/quadTree/equi/EquiQuadTreeStrategy.d.ts +19 -0
  29. package/lib/@openglobus/js/quadTree/index.d.ts +6 -6
  30. package/lib/{js/quadTree → @openglobus/js/quadTree/wgs84}/Wgs84QuadTreeStrategy.d.ts +2 -2
  31. package/lib/@openglobus/js/renderer/Renderer.d.ts +2 -0
  32. package/lib/@openglobus/js/scene/Planet.d.ts +0 -27
  33. package/lib/@openglobus/js/segment/Segment.d.ts +0 -1
  34. package/lib/@openglobus/js/segment/SegmentLonLat.d.ts +0 -4
  35. package/lib/@openglobus/js/segment/{SegmentLonLatWgs84.d.ts → SegmentLonLatEqui.d.ts} +1 -1
  36. package/lib/@openglobus/js/terrain/RgbTerrain.d.ts +20 -0
  37. package/lib/@openglobus/og.esm.js +1 -1
  38. package/lib/@openglobus/og.esm.js.map +1 -1
  39. package/lib/@openglobus/og.umd.js +1 -1
  40. package/lib/@openglobus/og.umd.js.map +1 -1
  41. package/lib/@openglobus/res/fonts/Ephesis-Regular.json +4648 -0
  42. package/lib/@openglobus/res/fonts/Ephesis-Regular.ttf.cfg +1282 -0
  43. package/lib/@openglobus/res/fonts/Ephesis-Regular.ttf.png +0 -0
  44. package/lib/js/Globe.d.ts +5 -1
  45. package/lib/js/Globe.js +13 -4
  46. package/lib/js/Object3d.d.ts +8 -2
  47. package/lib/js/Object3d.js +64 -6
  48. package/lib/js/camera/Camera.d.ts +2 -0
  49. package/lib/js/camera/Camera.js +8 -0
  50. package/lib/js/control/elevationProfile/ElevationProfileScene.js +2 -0
  51. package/lib/js/control/geoObjectEditor/GeoObjectEditorScene.d.ts +58 -0
  52. package/lib/js/control/geoObjectEditor/GeoObjectEditorScene.js +105 -0
  53. package/lib/js/ellipsoid/Ellipsoid.d.ts +1 -1
  54. package/lib/js/ellipsoid/Ellipsoid.js +1 -1
  55. package/lib/js/ellipsoid/index.d.ts +4 -3
  56. package/lib/js/ellipsoid/index.js +4 -3
  57. package/lib/js/ellipsoid/mars.d.ts +6 -0
  58. package/lib/js/ellipsoid/mars.js +6 -0
  59. package/lib/js/ellipsoid/moon.d.ts +6 -0
  60. package/lib/js/ellipsoid/moon.js +6 -0
  61. package/lib/js/entity/Entity.d.ts +4 -2
  62. package/lib/js/entity/Entity.js +4 -1
  63. package/lib/js/entity/EntityCollection.d.ts +3 -2
  64. package/lib/js/entity/EntityCollection.js +26 -2
  65. package/lib/js/entity/GeoObject.d.ts +6 -1
  66. package/lib/js/entity/GeoObject.js +9 -0
  67. package/lib/js/entity/GeoObjectHandler.d.ts +4 -0
  68. package/lib/js/entity/GeoObjectHandler.js +32 -1
  69. package/lib/js/entity/GeometryHandler.d.ts +3 -2
  70. package/lib/js/entity/GeometryHandler.js +58 -0
  71. package/lib/js/entity/Label.d.ts +14 -0
  72. package/lib/js/entity/Label.js +24 -4
  73. package/lib/js/entity/LabelHandler.d.ts +1 -1
  74. package/lib/js/entity/LabelHandler.js +4 -4
  75. package/lib/js/entity/Polyline.js +1 -1
  76. package/lib/js/index.d.ts +3 -3
  77. package/lib/js/index.js +3 -3
  78. package/lib/js/layer/Bing.js +1 -0
  79. package/lib/js/layer/Layer.js +7 -4
  80. package/lib/js/layer/Vector.d.ts +12 -29
  81. package/lib/js/layer/Vector.js +38 -161
  82. package/lib/js/layer/XYZ.js +1 -1
  83. package/lib/js/proj/equi.d.ts +9 -0
  84. package/lib/js/proj/equi.js +9 -0
  85. package/lib/js/quadTree/{EPSG4326QuadTreeStrategy.d.ts → EPSG4326/EPSG4326QuadTreeStrategy.d.ts} +2 -2
  86. package/lib/js/quadTree/EPSG4326/EPSG4326QuadTreeStrategy.js +16 -0
  87. package/lib/js/quadTree/EntityCollectionNode.d.ts +5 -13
  88. package/lib/js/quadTree/EntityCollectionNode.js +18 -83
  89. package/lib/js/quadTree/EntityCollectionsTreeStrategy.d.ts +25 -0
  90. package/lib/js/quadTree/EntityCollectionsTreeStrategy.js +49 -0
  91. package/lib/js/quadTree/Node.js +6 -12
  92. package/lib/js/quadTree/QuadTreeStrategy.d.ts +11 -0
  93. package/lib/js/quadTree/QuadTreeStrategy.js +12 -0
  94. package/lib/js/quadTree/earth/EarthEntityCollectionNodeLonLat.d.ts +18 -0
  95. package/lib/js/quadTree/earth/EarthEntityCollectionNodeLonLat.js +74 -0
  96. package/lib/js/quadTree/earth/EarthEntityCollectionsTreeStrategy.d.ts +19 -0
  97. package/lib/js/quadTree/earth/EarthEntityCollectionsTreeStrategy.js +103 -0
  98. package/lib/js/quadTree/earth/EarthQuadTreeStrategy.d.ts +29 -0
  99. package/lib/js/quadTree/{EarthQuadTreeStrategy.js → earth/EarthQuadTreeStrategy.js} +29 -6
  100. package/lib/js/quadTree/equi/EquiEntityCollectionNodeLonLat.d.ts +17 -0
  101. package/lib/js/quadTree/equi/EquiEntityCollectionNodeLonLat.js +70 -0
  102. package/lib/js/quadTree/equi/EquiEntityCollectionsTreeStrategy.d.ts +17 -0
  103. package/lib/js/quadTree/equi/EquiEntityCollectionsTreeStrategy.js +75 -0
  104. package/lib/js/quadTree/equi/EquiQuadTreeStrategy.d.ts +19 -0
  105. package/lib/js/quadTree/equi/EquiQuadTreeStrategy.js +62 -0
  106. package/lib/js/quadTree/index.d.ts +6 -6
  107. package/lib/js/quadTree/index.js +6 -6
  108. package/lib/{@openglobus/js/quadTree → js/quadTree/wgs84}/Wgs84QuadTreeStrategy.d.ts +2 -2
  109. package/lib/js/quadTree/wgs84/Wgs84QuadTreeStrategy.js +15 -0
  110. package/lib/js/renderer/Renderer.d.ts +2 -0
  111. package/lib/js/renderer/Renderer.js +2 -2
  112. package/lib/js/scene/Planet.d.ts +0 -27
  113. package/lib/js/scene/Planet.js +2 -9
  114. package/lib/js/segment/Segment.d.ts +0 -1
  115. package/lib/js/segment/Segment.js +0 -3
  116. package/lib/js/segment/SegmentLonLat.d.ts +0 -4
  117. package/lib/js/segment/SegmentLonLat.js +0 -11
  118. package/lib/js/segment/{SegmentLonLatWgs84.d.ts → SegmentLonLatEqui.d.ts} +1 -1
  119. package/lib/js/segment/{SegmentLonLatWgs84.js → SegmentLonLatEqui.js} +3 -1
  120. package/lib/js/shaders/geoObject.js +10 -5
  121. package/lib/js/shaders/polyline.js +8 -6
  122. package/lib/js/terrain/RgbTerrain.d.ts +20 -0
  123. package/lib/js/terrain/RgbTerrain.js +227 -214
  124. package/lib/js/utils/PlainSegmentWorker.js +3 -1
  125. package/lib/js/webgl/Handler.js +1 -1
  126. package/package.json +15 -15
  127. package/lib/@openglobus/js/quadTree/EarthQuadTreeStrategy.d.ts +0 -9
  128. package/lib/@openglobus/js/quadTree/MarsQuadTreeStrategy.d.ts +0 -11
  129. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +0 -16
  130. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +0 -9
  131. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +0 -11
  132. package/lib/js/quadTree/MarsQuadTreeStrategy.js +0 -43
  133. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +0 -15
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openglobus/og",
3
- "version": "0.20.4",
3
+ "version": "0.22.0",
4
4
  "description": "[openglobus](https://www.openglobus.org/) is a javascript/typescript library designed to display interactive 3d maps and planets with map tiles, imagery and vector data, markers, and 3D objects. It uses the WebGL technology, open source, and completely free.",
5
5
  "directories": {
6
6
  "example": "./sandbox"
@@ -18,7 +18,7 @@
18
18
  "dev": "rollup -c -w --bundleConfigAsCjs --environment NODE_ENV:development",
19
19
  "test": "jest --env=jsdom --runInBand --ci --coverage=false",
20
20
  "test_watch": "jest --env=jsdom --watch",
21
- "lint": "eslint -c ./.eslintrc.js src/",
21
+ "lint": "eslint src/",
22
22
  "gen_js": "tsc --build tsconfig.json --declaration",
23
23
  "font": "node ./fonts/index.js"
24
24
  },
@@ -34,34 +34,34 @@
34
34
  },
35
35
  "homepage": "https://www.openglobus.org",
36
36
  "devDependencies": {
37
- "@babel/cli": "^7.24.7",
38
- "@babel/core": "^7.24.7",
37
+ "@babel/cli": "^7.25.6",
38
+ "@babel/core": "^7.25.2",
39
39
  "@babel/plugin-proposal-class-properties": "^7.18.6",
40
40
  "@babel/plugin-proposal-object-rest-spread": "^7.20.7",
41
- "@babel/preset-env": "^7.24.7",
41
+ "@babel/preset-env": "^7.25.4",
42
42
  "@babel/preset-typescript": "^7.24.7",
43
43
  "@rollup/plugin-json": "^6.1.0",
44
44
  "@rollup/plugin-terser": "^0.4.4",
45
45
  "@rollup/plugin-typescript": "^11.1.6",
46
46
  "@types/jest": "^29.5.12",
47
- "@typescript-eslint/eslint-plugin": "^7.14.1",
48
- "@typescript-eslint/parser": "^7.14.1",
47
+ "@typescript-eslint/eslint-plugin": "^8.4.0",
48
+ "@typescript-eslint/parser": "^8.4.0",
49
49
  "clean-jsdoc-theme": "^4.3.0",
50
- "eslint": "^8.57.0",
50
+ "eslint": "^9.9.1",
51
51
  "jest": "^29.7.0",
52
52
  "jest-canvas-mock": "^2.5.2",
53
53
  "jest-environment-jsdom": "^29.7.0",
54
54
  "jsdoc": "^4.0.3",
55
55
  "jsdoc-babel": "^0.5.0",
56
- "lint-staged": "^15.2.7",
57
- "local-web-server": "^5.3.3",
58
- "postcss": "^8.4.39",
59
- "prettier": "^3.3.2",
60
- "rollup": "^4.18.0",
56
+ "lint-staged": "^15.2.10",
57
+ "local-web-server": "^5.4.0",
58
+ "postcss": "^8.4.45",
59
+ "prettier": "^3.3.3",
60
+ "rollup": "^4.21.2",
61
61
  "rollup-plugin-copy": "^3.5.0",
62
62
  "rollup-plugin-postcss": "^4.0.2",
63
- "ts-jest": "^29.1.5",
64
- "typescript": "^5.5.2"
63
+ "ts-jest": "^29.2.5",
64
+ "typescript": "^5.5.4"
65
65
  },
66
66
  "lint-staged": {
67
67
  "*.{js,ts}": [
@@ -1,9 +0,0 @@
1
- import { Planet } from "../scene/Planet";
2
- import { QuadTreeStrategy } from "./QuadTreeStrategy";
3
- import { LonLat } from "../LonLat";
4
- export declare class EarthQuadTreeStrategy extends QuadTreeStrategy {
5
- constructor(planet: Planet);
6
- init(): void;
7
- getTileXY(lonLat: LonLat, zoom: number): [number, number, number, number];
8
- getLonLatTileOffset(lonLat: LonLat, x: number, y: number, z: number, gridSize: number): [number, number];
9
- }
@@ -1,11 +0,0 @@
1
- import { Planet } from "../scene/Planet";
2
- import { QuadTreeStrategy } from "./QuadTreeStrategy";
3
- import { LonLat } from "../LonLat";
4
- export declare class MarsQuadTreeStrategy extends QuadTreeStrategy {
5
- private _westExtent;
6
- private _eastExtent;
7
- constructor(planet: Planet);
8
- init(): void;
9
- getTileXY(lonLat: LonLat, zoom: number): [number, number, number, number];
10
- getLonLatTileOffset(lonLat: LonLat, x: number, y: number, z: number, gridSize: number): [number, number];
11
- }
@@ -1,16 +0,0 @@
1
- import { Extent } from "../Extent";
2
- import { EPSG4326 } from "../proj/EPSG4326";
3
- import { Node } from "../quadTree/Node";
4
- import { QuadTreeStrategy } from "./QuadTreeStrategy";
5
- import { SegmentLonLatWgs84 } from "../segment/SegmentLonLatWgs84";
6
- export class EPSG4326QuadTreeStrategy extends QuadTreeStrategy {
7
- constructor(planet) {
8
- super(planet, "EPSG4326", EPSG4326);
9
- }
10
- init() {
11
- this._quadTreeList = [
12
- new Node(SegmentLonLatWgs84, this.planet, 0, null, 0, Extent.createFromArray([-180, -90, 0, 90])),
13
- new Node(SegmentLonLatWgs84, this.planet, 0, null, 0, Extent.createFromArray([0, -90, 180, 90]))
14
- ];
15
- }
16
- }
@@ -1,9 +0,0 @@
1
- import { Planet } from "../scene/Planet";
2
- import { QuadTreeStrategy } from "./QuadTreeStrategy";
3
- import { LonLat } from "../LonLat";
4
- export declare class EarthQuadTreeStrategy extends QuadTreeStrategy {
5
- constructor(planet: Planet);
6
- init(): void;
7
- getTileXY(lonLat: LonLat, zoom: number): [number, number, number, number];
8
- getLonLatTileOffset(lonLat: LonLat, x: number, y: number, z: number, gridSize: number): [number, number];
9
- }
@@ -1,11 +0,0 @@
1
- import { Planet } from "../scene/Planet";
2
- import { QuadTreeStrategy } from "./QuadTreeStrategy";
3
- import { LonLat } from "../LonLat";
4
- export declare class MarsQuadTreeStrategy extends QuadTreeStrategy {
5
- private _westExtent;
6
- private _eastExtent;
7
- constructor(planet: Planet);
8
- init(): void;
9
- getTileXY(lonLat: LonLat, zoom: number): [number, number, number, number];
10
- getLonLatTileOffset(lonLat: LonLat, x: number, y: number, z: number, gridSize: number): [number, number];
11
- }
@@ -1,43 +0,0 @@
1
- import { Extent } from "../Extent";
2
- import { EPSG4326 } from "../proj/EPSG4326";
3
- import { Node } from "../quadTree/Node";
4
- import { SegmentLonLatWgs84 } from "../segment/SegmentLonLatWgs84";
5
- import { QuadTreeStrategy } from "./QuadTreeStrategy";
6
- import { getTileCellExtent, getTileCellIndex, TILEGROUP_COMMON } from "../segment/Segment";
7
- export class MarsQuadTreeStrategy extends QuadTreeStrategy {
8
- constructor(planet) {
9
- super(planet, "Mars", EPSG4326);
10
- this._westExtent = Extent.createFromArray([-180, -90, 0, 90]);
11
- this._eastExtent = Extent.createFromArray([0, -90, 180, 90]);
12
- }
13
- init() {
14
- this._quadTreeList = [
15
- new Node(SegmentLonLatWgs84, this.planet, 0, null, 0, this._westExtent),
16
- new Node(SegmentLonLatWgs84, this.planet, 0, null, 0, this._eastExtent)
17
- ];
18
- }
19
- getTileXY(lonLat, zoom) {
20
- let z = zoom, x = -1, y = -1, pz = (1 << z);
21
- if (lonLat.lon > 0) {
22
- x = getTileCellIndex(lonLat.lon, 180 / pz, 0) + pz;
23
- }
24
- else {
25
- x = getTileCellIndex(lonLat.lon, 180 / pz, -180);
26
- }
27
- y = getTileCellIndex(lonLat.lat, 180 / pz, 90);
28
- return [x, y, z, TILEGROUP_COMMON];
29
- }
30
- getLonLatTileOffset(lonLat, x, y, z, gridSize) {
31
- let coords = lonLat;
32
- let extent = new Extent();
33
- if (lonLat.lon > 0) {
34
- extent = getTileCellExtent(x - (1 << z), y, z, this._westExtent);
35
- }
36
- else {
37
- extent = getTileCellExtent(x, y, z, this._eastExtent);
38
- }
39
- let sizeImgW = extent.getWidth() / (gridSize - 1), sizeImgH = extent.getHeight() / (gridSize - 1);
40
- let i = gridSize - Math.ceil((coords.lat - extent.southWest.lat) / sizeImgH) - 1, j = Math.floor((coords.lon - extent.southWest.lon) / sizeImgW);
41
- return [i, j];
42
- }
43
- }
@@ -1,15 +0,0 @@
1
- import { Extent } from "../Extent";
2
- import { EPSG4326 } from "../proj/EPSG4326";
3
- import { Node } from "../quadTree/Node";
4
- import { SegmentLonLatWgs84 } from "../segment/SegmentLonLatWgs84";
5
- import { QuadTreeStrategy } from "./QuadTreeStrategy";
6
- export class Wgs84QuadTreeStrategy extends QuadTreeStrategy {
7
- constructor(planet) {
8
- super(planet, "wgs84", EPSG4326);
9
- }
10
- init() {
11
- this._quadTreeList = [
12
- new Node(SegmentLonLatWgs84, this.planet, 0, null, 0, Extent.createFromArray([-180, -90, 180, 90]))
13
- ];
14
- }
15
- }