itowns 2.42.1-next.9 → 2.43.1-next.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 (174) hide show
  1. package/changelog.md +90 -0
  2. package/dist/debug.js +1 -1
  3. package/dist/debug.js.map +1 -1
  4. package/dist/itowns.js +1 -1
  5. package/dist/itowns.js.map +1 -1
  6. package/dist/itowns_widgets.js +1 -1
  7. package/dist/itowns_widgets.js.map +1 -1
  8. package/examples/{.eslintrc.js → .eslintrc.cjs} +1 -1
  9. package/examples/effects_stereo.html +2 -2
  10. package/examples/misc_collada.html +2 -2
  11. package/examples/source_stream_wfs_25d.html +11 -11
  12. package/examples/source_stream_wfs_3d.html +1 -1
  13. package/examples/view_25d_map.html +2 -2
  14. package/examples/view_3d_map.html +2 -2
  15. package/examples/view_3d_map_webxr.html +1 -1
  16. package/examples/view_3d_mns_map.html +2 -2
  17. package/examples/view_immersive.html +1 -1
  18. package/examples/view_multi_25d.html +2 -2
  19. package/examples/widgets_searchbar.html +2 -2
  20. package/lib/Controls/FirstPersonControls.js +5 -12
  21. package/lib/Controls/FlyControls.js +4 -13
  22. package/lib/Controls/GlobeControls.js +33 -43
  23. package/lib/Controls/PlanarControls.js +9 -20
  24. package/lib/Controls/StateControl.js +2 -11
  25. package/lib/Controls/StreetControls.js +14 -24
  26. package/lib/Converter/Feature2Mesh.js +28 -38
  27. package/lib/Converter/Feature2Texture.js +15 -25
  28. package/lib/Converter/convertToTile.js +16 -26
  29. package/lib/Converter/textureConverter.js +9 -19
  30. package/lib/Core/3DTiles/C3DTBatchTable.js +5 -13
  31. package/lib/Core/3DTiles/C3DTBatchTableHierarchyExtension.js +1 -8
  32. package/lib/Core/3DTiles/C3DTBoundingVolume.js +17 -27
  33. package/lib/Core/3DTiles/C3DTExtensions.js +1 -8
  34. package/lib/Core/3DTiles/C3DTFeature.js +3 -10
  35. package/lib/Core/3DTiles/C3DTilesEnums.js +3 -11
  36. package/lib/Core/3DTiles/C3DTileset.js +7 -16
  37. package/lib/Core/3DTiles/utils/BinaryPropertyAccessor.js +5 -11
  38. package/lib/Core/AnimationPlayer.js +2 -11
  39. package/lib/Core/Deprecated/Undeprecator.js +9 -20
  40. package/lib/Core/EntwinePointTileNode.js +6 -16
  41. package/lib/Core/Feature.js +16 -30
  42. package/lib/Core/Geographic/CoordStars.js +3 -12
  43. package/lib/Core/Geographic/Coordinates.js +12 -22
  44. package/lib/Core/Geographic/Crs.js +7 -15
  45. package/lib/Core/Geographic/Extent.js +36 -47
  46. package/lib/Core/Geographic/GeoidGrid.js +6 -16
  47. package/lib/Core/Label.js +7 -17
  48. package/lib/Core/MainLoop.js +7 -16
  49. package/lib/Core/Math/Ellipsoid.js +6 -17
  50. package/lib/Core/Picking.js +10 -20
  51. package/lib/Core/PointCloudNode.js +2 -11
  52. package/lib/Core/PotreeNode.js +4 -13
  53. package/lib/Core/Prefab/Globe/Atmosphere.js +17 -26
  54. package/lib/Core/Prefab/Globe/BuilderEllipsoidTile.js +6 -16
  55. package/lib/Core/Prefab/Globe/GlobeLayer.js +19 -28
  56. package/lib/Core/Prefab/Globe/SkyShader.js +2 -11
  57. package/lib/Core/Prefab/GlobeView.js +27 -45
  58. package/lib/Core/Prefab/Planar/PlanarLayer.js +11 -20
  59. package/lib/Core/Prefab/Planar/PlanarTileBuilder.js +6 -16
  60. package/lib/Core/Prefab/PlanarView.js +10 -25
  61. package/lib/Core/Prefab/TileBuilder.js +13 -22
  62. package/lib/Core/Prefab/computeBufferTileGeometry.js +12 -16
  63. package/lib/Core/Scheduler/Cache.js +2 -10
  64. package/lib/Core/Scheduler/CancelledCommandException.js +1 -8
  65. package/lib/Core/Scheduler/Scheduler.js +15 -23
  66. package/lib/Core/Style.js +24 -38
  67. package/lib/Core/System/Capabilities.js +2 -13
  68. package/lib/Core/TileGeometry.js +13 -15
  69. package/lib/Core/TileMesh.js +6 -15
  70. package/lib/Core/View.js +43 -58
  71. package/lib/Layer/C3DTilesLayer.js +29 -41
  72. package/lib/Layer/ColorLayer.js +10 -16
  73. package/lib/Layer/ElevationLayer.js +7 -14
  74. package/lib/Layer/EntwinePointTileLayer.js +9 -18
  75. package/lib/Layer/FeatureGeometryLayer.js +9 -16
  76. package/lib/Layer/GeoidLayer.js +6 -15
  77. package/lib/Layer/GeometryLayer.js +11 -17
  78. package/lib/Layer/InfoLayer.js +5 -14
  79. package/lib/Layer/LabelLayer.js +22 -32
  80. package/lib/Layer/Layer.js +16 -26
  81. package/lib/Layer/LayerUpdateState.js +1 -8
  82. package/lib/Layer/LayerUpdateStrategy.js +7 -18
  83. package/lib/Layer/OrientedImageLayer.js +15 -25
  84. package/lib/Layer/PointCloudLayer.js +9 -19
  85. package/lib/Layer/PotreeLayer.js +8 -18
  86. package/lib/Layer/RasterLayer.js +9 -17
  87. package/lib/Layer/ReferencingLayerProperties.js +1 -8
  88. package/lib/Layer/TiledGeometryLayer.js +37 -33
  89. package/lib/Main.js +87 -708
  90. package/lib/MainBundle.js +4 -34
  91. package/lib/Parser/B3dmParser.js +80 -131
  92. package/lib/Parser/CameraCalibrationParser.js +5 -14
  93. package/lib/Parser/GDFParser.js +11 -22
  94. package/lib/Parser/GLTFParser.js +88 -0
  95. package/lib/Parser/GTXParser.js +9 -21
  96. package/lib/Parser/GeoJsonParser.js +14 -22
  97. package/lib/Parser/GpxParser.js +7 -14
  98. package/lib/Parser/ISGParser.js +19 -28
  99. package/lib/Parser/KMLParser.js +7 -14
  100. package/lib/Parser/LASLoader.js +20 -21
  101. package/lib/Parser/LASParser.js +6 -15
  102. package/lib/Parser/MapBoxUrlParser.js +2 -9
  103. package/lib/Parser/PntsParser.js +4 -14
  104. package/lib/Parser/PotreeBinParser.js +8 -16
  105. package/lib/Parser/PotreeCinParser.js +3 -12
  106. package/lib/Parser/ShapefileParser.js +11 -18
  107. package/lib/Parser/VectorTileParser.js +23 -31
  108. package/lib/Parser/XbilParser.js +5 -13
  109. package/lib/Parser/deprecated/LegacyGLTFLoader.js +2 -12
  110. package/lib/Process/3dTilesProcessing.js +14 -27
  111. package/lib/Process/FeatureProcessing.js +14 -22
  112. package/lib/Process/LayeredMaterialNodeProcessing.js +14 -26
  113. package/lib/Process/ObjectRemovalHelper.js +2 -9
  114. package/lib/Process/handlerNodeError.js +1 -7
  115. package/lib/Provider/3dTilesProvider.js +32 -29
  116. package/lib/Provider/DataSourceProvider.js +2 -9
  117. package/lib/Provider/Fetcher.js +40 -22
  118. package/lib/Provider/PointCloudProvider.js +7 -19
  119. package/lib/Provider/TileProvider.js +4 -12
  120. package/lib/Provider/URLBuilder.js +4 -12
  121. package/lib/Renderer/Camera.js +7 -17
  122. package/lib/Renderer/Color.js +3 -11
  123. package/lib/Renderer/ColorLayersOrdering.js +14 -22
  124. package/lib/Renderer/CommonMaterial.js +3 -12
  125. package/lib/Renderer/Label2DRenderer.js +5 -16
  126. package/lib/Renderer/LayeredMaterial.js +33 -53
  127. package/lib/Renderer/OBB.js +12 -21
  128. package/lib/Renderer/OrientedImageCamera.js +2 -11
  129. package/lib/Renderer/OrientedImageMaterial.js +17 -35
  130. package/lib/Renderer/PointsMaterial.js +37 -60
  131. package/lib/Renderer/RasterTile.js +16 -29
  132. package/lib/Renderer/RenderMode.js +2 -9
  133. package/lib/Renderer/Shader/ShaderChunk.js +5 -23
  134. package/lib/Renderer/Shader/ShaderUtils.js +2 -9
  135. package/lib/Renderer/SphereHelper.js +2 -11
  136. package/lib/Renderer/WebXR.js +2 -11
  137. package/lib/Renderer/c3DEngine.js +20 -53
  138. package/lib/Source/C3DTilesGoogleSource.js +76 -0
  139. package/lib/Source/C3DTilesIonSource.js +6 -13
  140. package/lib/Source/C3DTilesSource.js +5 -12
  141. package/lib/Source/EntwinePointTileSource.js +12 -19
  142. package/lib/Source/FileSource.js +7 -14
  143. package/lib/Source/OrientedImageSource.js +6 -14
  144. package/lib/Source/PotreeSource.js +9 -16
  145. package/lib/Source/Source.js +26 -39
  146. package/lib/Source/TMSSource.js +11 -22
  147. package/lib/Source/VectorTilesSource.js +75 -34
  148. package/lib/Source/WFSSource.js +7 -14
  149. package/lib/Source/WMSSource.js +5 -12
  150. package/lib/Source/WMTSSource.js +3 -10
  151. package/lib/ThreeExtended/capabilities/WebGL.js +1 -8
  152. package/lib/ThreeExtended/libs/ktx-parse.module.js +2 -256
  153. package/lib/ThreeExtended/libs/zstddec.module.js +2 -8
  154. package/lib/ThreeExtended/loaders/DDSLoader.js +10 -16
  155. package/lib/ThreeExtended/loaders/DRACOLoader.js +14 -19
  156. package/lib/ThreeExtended/loaders/GLTFLoader.js +124 -129
  157. package/lib/ThreeExtended/loaders/KTX2Loader.js +73 -78
  158. package/lib/ThreeExtended/utils/BufferGeometryUtils.js +40 -59
  159. package/lib/ThreeExtended/utils/WorkerPool.js +2 -9
  160. package/lib/Utils/CameraUtils.js +32 -44
  161. package/lib/Utils/DEMUtils.js +8 -19
  162. package/lib/Utils/FeaturesUtils.js +8 -16
  163. package/lib/Utils/Gradients.js +3 -12
  164. package/lib/Utils/OrientationUtils.js +8 -18
  165. package/lib/Utils/ThreeUtils.js +2 -9
  166. package/lib/Utils/gui/C3DTilesStyle.js +7 -15
  167. package/lib/Utils/gui/Main.js +7 -48
  168. package/lib/Utils/gui/Minimap.js +12 -20
  169. package/lib/Utils/gui/Navigation.js +6 -14
  170. package/lib/Utils/gui/Scale.js +11 -19
  171. package/lib/Utils/gui/Searchbar.js +5 -13
  172. package/lib/Utils/gui/Widget.js +1 -8
  173. package/lib/Utils/placeObjectOnGround.js +13 -23
  174. package/package.json +13 -8
@@ -1,15 +1,6 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var THREE = _interopRequireWildcard(require("three"));
9
- var _Coordinates = _interopRequireDefault(require("../../Geographic/Coordinates"));
10
- var _Extent = _interopRequireDefault(require("../../Geographic/Extent"));
11
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
1
+ import * as THREE from 'three';
2
+ import Coordinates from "../../Geographic/Coordinates.js";
3
+ import Extent from "../../Geographic/Extent.js";
13
4
  const quaternion = new THREE.Quaternion();
14
5
  const center = new THREE.Vector3();
15
6
  class PlanarTileBuilder {
@@ -26,7 +17,7 @@ class PlanarTileBuilder {
26
17
  throw new Error('options.crs is mandatory for PlanarTileBuilder');
27
18
  }
28
19
  this.tmp = {
29
- coords: new _Coordinates.default('EPSG:4326', 0, 0),
20
+ coords: new Coordinates('EPSG:4326', 0, 0),
30
21
  position: new THREE.Vector3(),
31
22
  normal: new THREE.Vector3(0, 0, 1)
32
23
  };
@@ -70,7 +61,7 @@ class PlanarTileBuilder {
70
61
  // compute sharable extent to pool the geometries
71
62
  // the geometry in common extent is identical to the existing input
72
63
  // with a translation
73
- const sharableExtent = new _Extent.default(extent.crs, 0, Math.abs(extent.west - extent.east), 0, Math.abs(extent.north - extent.south));
64
+ const sharableExtent = new Extent(extent.crs, 0, Math.abs(extent.west - extent.east), 0, Math.abs(extent.north - extent.south));
74
65
  return {
75
66
  sharableExtent,
76
67
  quaternion,
@@ -78,5 +69,4 @@ class PlanarTileBuilder {
78
69
  };
79
70
  }
80
71
  }
81
- var _default = PlanarTileBuilder;
82
- exports.default = _default;
72
+ export default PlanarTileBuilder;
@@ -1,27 +1,13 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var THREE = _interopRequireWildcard(require("three"));
9
- var _View = _interopRequireDefault(require("../View"));
10
- var _CameraUtils = _interopRequireDefault(require("../../Utils/CameraUtils"));
11
- var _PlanarControls = _interopRequireDefault(require("../../Controls/PlanarControls"));
12
- var _PlanarLayer = _interopRequireDefault(require("./Planar/PlanarLayer"));
13
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
- class PlanarView extends _View.default {
1
+ import * as THREE from 'three';
2
+ import View from "../View.js";
3
+ import CameraUtils from "../../Utils/CameraUtils.js";
4
+ import PlanarControls from "../../Controls/PlanarControls.js";
5
+ import PlanarLayer from "./Planar/PlanarLayer.js";
6
+ class PlanarView extends View {
16
7
  /**
17
8
  * @constructor
18
9
  * @extends View
19
10
  *
20
- * @example <caption><b>Enable WebGl 1.0 instead of WebGl 2.0.</b></caption>
21
- * var viewerDiv = document.getElementById('viewerDiv');
22
- * const extent = new Extent('EPSG:3946', 1837816.94334, 1847692.32501, 5170036.4587, 5178412.82698);
23
- * var view = new itowns.PlanarView(viewerDiv, extent, { renderer: { isWebGL2: false } });
24
- *
25
11
  * @example <caption><b>Instance with placement on the ground.</b></caption>
26
12
  * var viewerDiv = document.getElementById('viewerDiv');
27
13
  * const extent = new Extent('EPSG:3946', 1837816.94334, 1847692.32501, 5170036.4587, 5178412.82698);
@@ -52,7 +38,7 @@ class PlanarView extends _View.default {
52
38
  this.camera3D.near = 0.1;
53
39
  this.camera3D.far = this.camera3D.isOrthographicCamera ? 2000 : 2 * max;
54
40
  this.camera3D.updateProjectionMatrix();
55
- const tileLayer = new _PlanarLayer.default('planar', extent, options.object3d, options);
41
+ const tileLayer = new PlanarLayer('planar', extent, options.object3d, options);
56
42
  this.mainLoop.gfxEngine.label2dRenderer.infoTileLayer = tileLayer.info;
57
43
  this.addLayer(tileLayer);
58
44
 
@@ -64,9 +50,9 @@ class PlanarView extends _View.default {
64
50
  placement.heading = placement.heading || 0;
65
51
  placement.range = placement.range || max;
66
52
  }
67
- _CameraUtils.default.transformCameraToLookAtTarget(this, this.camera3D, placement);
53
+ CameraUtils.transformCameraToLookAtTarget(this, this.camera3D, placement);
68
54
  if (!options.noControls) {
69
- this.controls = new _PlanarControls.default(this, options.controls);
55
+ this.controls = new PlanarControls(this, options.controls);
70
56
  }
71
57
  this.tileLayer = tileLayer;
72
58
  }
@@ -74,5 +60,4 @@ class PlanarView extends _View.default {
74
60
  return super.addLayer(layer, this.tileLayer);
75
61
  }
76
62
  }
77
- var _default = PlanarView;
78
- exports.default = _default;
63
+ export default PlanarView;
@@ -1,27 +1,18 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = newTileGeometry;
8
- var THREE = _interopRequireWildcard(require("three"));
9
- var _TileGeometry = _interopRequireDefault(require("../TileGeometry"));
10
- var _Cache = _interopRequireDefault(require("../Scheduler/Cache"));
11
- var _computeBufferTileGeometry = _interopRequireDefault(require("./computeBufferTileGeometry"));
12
- var _OBB = _interopRequireDefault(require("../../Renderer/OBB"));
13
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
1
+ import * as THREE from 'three';
2
+ import TileGeometry from "../TileGeometry.js";
3
+ import Cache from "../Scheduler/Cache.js";
4
+ import computeBuffers from "./computeBufferTileGeometry.js";
5
+ import OBB from "../../Renderer/OBB.js";
15
6
  const cacheBuffer = new Map();
16
- const cacheTile = new _Cache.default();
17
- function newTileGeometry(builder, params) {
7
+ const cacheTile = new Cache();
8
+ export default function newTileGeometry(builder, params) {
18
9
  const {
19
10
  sharableExtent,
20
11
  quaternion,
21
12
  position
22
13
  } = builder.computeSharableExtent(params.extent);
23
14
  const south = sharableExtent.south.toFixed(6);
24
- const bufferKey = `${builder.crs}_${params.disableSkirt ? 0 : 1}_${params.segment}`;
15
+ const bufferKey = `${builder.crs}_${params.disableSkirt ? 0 : 1}_${params.segments}`;
25
16
  let promiseGeometry = cacheTile.get(south, params.level, bufferKey);
26
17
 
27
18
  // build geometry if doesn't exist
@@ -39,7 +30,7 @@ function newTileGeometry(builder, params) {
39
30
  params.builder = builder;
40
31
  let buffers;
41
32
  try {
42
- buffers = (0, _computeBufferTileGeometry.default)(params);
33
+ buffers = computeBuffers(params);
43
34
  } catch (e) {
44
35
  return Promise.reject(e);
45
36
  }
@@ -58,18 +49,18 @@ function newTileGeometry(builder, params) {
58
49
  if (params.builder.uvCount > 1) {
59
50
  buffers.uvs[1] = new THREE.BufferAttribute(buffers.uvs[1], 1);
60
51
  }
61
- const geometry = new _TileGeometry.default(params, buffers);
62
- geometry.OBB = new _OBB.default(geometry.boundingBox.min, geometry.boundingBox.max);
52
+ const geometry = new TileGeometry(params, buffers);
53
+ geometry.OBB = new OBB(geometry.boundingBox.min, geometry.boundingBox.max);
63
54
  geometry._count = 0;
64
55
  geometry.dispose = () => {
65
56
  geometry._count--;
66
57
  if (geometry._count <= 0) {
67
- // To avoid remove index buffer and attribute buffer uv_0
58
+ // To avoid remove index buffer and attribute buffer uv
68
59
  // error un-bound buffer in webgl with VAO rendering.
69
60
  // Could be removed if the attribute buffer deleting is
70
61
  // taken into account in the buffer binding state (in THREE.WebGLBindingStates code).
71
62
  geometry.index = null;
72
- delete geometry.attributes.uv_0;
63
+ delete geometry.attributes.uv;
73
64
  THREE.BufferGeometry.prototype.dispose.call(geometry);
74
65
  cacheTile.delete(south, params.level, bufferKey);
75
66
  }
@@ -1,19 +1,15 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = computeBuffers;
7
- var THREE = _interopRequireWildcard(require("three"));
8
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
9
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
10
- function computeBuffers(params) {
1
+ import * as THREE from 'three';
2
+ export function getBufferIndexSize(segments, noSkirt) {
3
+ const triangles = segments * segments * 2 + (noSkirt ? 0 : 4 * segments * 2);
4
+ return triangles * 3;
5
+ }
6
+ export default function computeBuffers(params) {
11
7
  // Create output buffers.
12
8
  const outBuffers = {
13
9
  index: null,
14
10
  position: null,
15
11
  normal: null,
16
- // 2 UV set per tile: wgs84 (uv_0) and pm (uv_1)
12
+ // 2 UV set per tile: wgs84 (uv[0]) and pm (uv[1])
17
13
  // - wgs84: 1 texture per tile because tiles are using wgs84 projection
18
14
  // - pm: use multiple textures per tile.
19
15
  // +-------------------------+
@@ -32,7 +28,7 @@ function computeBuffers(params) {
32
28
  };
33
29
  const computeUvs = [];
34
30
  const builder = params.builder;
35
- const nSeg = params.segment || 8;
31
+ const nSeg = params.segments;
36
32
  // segments count :
37
33
  // Tile : (nSeg + 1) * (nSeg + 1)
38
34
  // Skirt : 8 * (nSeg - 1)
@@ -40,7 +36,6 @@ function computeBuffers(params) {
40
36
  if (nVertex > 2 ** 32) {
41
37
  throw new Error('Tile segments count is too big');
42
38
  }
43
- const triangles = nSeg * nSeg * 2 + (params.disableSkirt ? 0 : 4 * nSeg * 2);
44
39
  outBuffers.position = new Float32Array(nVertex * 3);
45
40
  outBuffers.normal = new Float32Array(nVertex * 3);
46
41
  const uvCount = params.builder.uvCount;
@@ -48,13 +43,14 @@ function computeBuffers(params) {
48
43
  outBuffers.uvs[1] = new Float32Array(nVertex);
49
44
  }
50
45
  computeUvs[0] = () => {};
46
+ const bufferIndexSize = getBufferIndexSize(nSeg, params.disableSkirt);
51
47
  if (params.buildIndexAndUv_0) {
52
48
  if (nVertex < 2 ** 8) {
53
- outBuffers.index = new Uint8Array(triangles * 3);
49
+ outBuffers.index = new Uint8Array(bufferIndexSize);
54
50
  } else if (nVertex < 2 ** 16) {
55
- outBuffers.index = new Uint16Array(triangles * 3);
51
+ outBuffers.index = new Uint16Array(bufferIndexSize);
56
52
  } else if (nVertex < 2 ** 32) {
57
- outBuffers.index = new Uint32Array(triangles * 3);
53
+ outBuffers.index = new Uint32Array(bufferIndexSize);
58
54
  }
59
55
  outBuffers.uvs[0] = new Float32Array(nVertex * 2);
60
56
  computeUvs[0] = (id, u, v) => {
@@ -1,9 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = exports.CACHE_POLICIES = void 0;
7
1
  let entry;
8
2
 
9
3
  /**
@@ -18,7 +12,7 @@ let entry;
18
12
  * @property {number} GEOMETRY - Shortcut for geometry resources. Time is 15 minutes.
19
13
  * minutes.
20
14
  */
21
- const CACHE_POLICIES = {
15
+ export const CACHE_POLICIES = {
22
16
  INFINITE: Infinity,
23
17
  TEXTURE: 900000,
24
18
  GEOMETRY: 900000
@@ -43,7 +37,6 @@ const CACHE_POLICIES = {
43
37
  *
44
38
  * cache.flush();
45
39
  */
46
- exports.CACHE_POLICIES = CACHE_POLICIES;
47
40
  class Cache {
48
41
  /**
49
42
  * @param {number} [lifetime=CACHE_POLICIES.INFINITE] The cache expiration time for all values.
@@ -260,5 +253,4 @@ class Cache {
260
253
  }
261
254
  }
262
255
  }
263
- var _default = Cache;
264
- exports.default = _default;
256
+ export default Cache;
@@ -1,9 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
1
  /**
8
2
  * Custom error thrown when cancelling commands. Allows the caller to act differently if needed.
9
3
  * @class
@@ -18,5 +12,4 @@ class CancelledCommandException {
18
12
  return `Cancelled command ${this.command.requester.id}/${this.command.layer.id}`;
19
13
  }
20
14
  }
21
- var _default = CancelledCommandException;
22
- exports.default = _default;
15
+ export default CancelledCommandException;
@@ -1,23 +1,16 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _jsPriorityQueue = _interopRequireDefault(require("js-priority-queue"));
9
- var _DataSourceProvider = _interopRequireDefault(require("../../Provider/DataSourceProvider"));
10
- var _TileProvider = _interopRequireDefault(require("../../Provider/TileProvider"));
11
- var _dTilesProvider = _interopRequireDefault(require("../../Provider/3dTilesProvider"));
12
- var _PointCloudProvider = _interopRequireDefault(require("../../Provider/PointCloudProvider"));
13
- var _URLBuilder = _interopRequireDefault(require("../../Provider/URLBuilder"));
14
- var _CancelledCommandException = _interopRequireDefault(require("./CancelledCommandException"));
15
1
  /**
16
2
  * Generated On: 2015-10-5
17
3
  * Class: Scheduler
18
4
  * Description: Cette classe singleton gère les requetes/Commandes de la scène. Ces commandes peuvent etre synchrone ou asynchrone. Elle permet d'executer, de prioriser et d'annuler les commandes de la pile. Les commandes executées sont placées dans une autre file d'attente.
19
5
  */
20
6
 
7
+ import PriorityQueue from 'js-priority-queue';
8
+ import DataSourceProvider from "../../Provider/DataSourceProvider.js";
9
+ import TileProvider from "../../Provider/TileProvider.js";
10
+ import $3dTilesProvider from "../../Provider/3dTilesProvider.js";
11
+ import PointCloudProvider from "../../Provider/PointCloudProvider.js";
12
+ import URLBuilder from "../../Provider/URLBuilder.js";
13
+ import CancelledCommandException from "./CancelledCommandException.js";
21
14
  function queueOrdering(a, b) {
22
15
  const cmp = b.priority - a.priority;
23
16
  // Prioritize recent commands
@@ -56,7 +49,7 @@ function _instanciateQueue() {
56
49
  let st = this.storages.get(layer.id);
57
50
  if (!st) {
58
51
  st = {
59
- q: new _jsPriorityQueue.default({
52
+ q: new PriorityQueue({
60
53
  comparator: queueOrdering
61
54
  }),
62
55
  priority: 1,
@@ -120,9 +113,9 @@ function Scheduler() {
120
113
  Scheduler.prototype.constructor = Scheduler;
121
114
  Scheduler.prototype.initDefaultProviders = function () {
122
115
  // Register all providers
123
- this.addProtocolProvider('tile', _TileProvider.default);
124
- this.addProtocolProvider('3d-tiles', _dTilesProvider.default);
125
- this.addProtocolProvider('pointcloud', _PointCloudProvider.default);
116
+ this.addProtocolProvider('tile', TileProvider);
117
+ this.addProtocolProvider('3d-tiles', $3dTilesProvider);
118
+ this.addProtocolProvider('pointcloud', PointCloudProvider);
126
119
  };
127
120
  Scheduler.prototype.runCommand = function (command, queue, executingCounterUpToDate) {
128
121
  const provider = this.getProtocolProvider(command.layer.protocol);
@@ -147,7 +140,7 @@ Scheduler.prototype.execute = function (command) {
147
140
 
148
141
  // parse host
149
142
  const layer = command.layer;
150
- const host = layer.source && layer.source.url ? new URL(_URLBuilder.default.subDomains(layer.source.url), document.location).host : undefined;
143
+ const host = layer.source && layer.source.url ? new URL(URLBuilder.subDomains(layer.source.url), document.location).host : undefined;
151
144
  command.promise = new Promise((resolve, reject) => {
152
145
  command.resolve = resolve;
153
146
  command.reject = reject;
@@ -259,7 +252,7 @@ Scheduler.prototype.addProtocolProvider = function (protocol, provider) {
259
252
  * @return {Provider}
260
253
  */
261
254
  Scheduler.prototype.getProtocolProvider = function (protocol) {
262
- return this.providers[protocol] || _DataSourceProvider.default;
255
+ return this.providers[protocol] || DataSourceProvider;
263
256
  };
264
257
  Scheduler.prototype.commandsWaitingExecutionCount = function () {
265
258
  let sum = this.defaultQueue.counters.pending + this.defaultQueue.counters.executing;
@@ -291,12 +284,11 @@ Scheduler.prototype.deQueue = function (queue) {
291
284
  if (cmd.earlyDropFunction && cmd.earlyDropFunction(cmd)) {
292
285
  queue.counters.pending--;
293
286
  queue.counters.cancelled++;
294
- cmd.reject(new _CancelledCommandException.default(cmd));
287
+ cmd.reject(new CancelledCommandException(cmd));
295
288
  } else {
296
289
  return cmd;
297
290
  }
298
291
  }
299
292
  return undefined;
300
293
  };
301
- var _default = Scheduler;
302
- exports.default = _default;
294
+ export default Scheduler;
package/lib/Core/Style.js CHANGED
@@ -1,33 +1,21 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = exports.cacheStyle = exports.StyleOptions = exports.StyleContext = void 0;
8
- exports.readExpression = readExpression;
9
- var _Feature = require("./Feature");
10
- var _Cache = _interopRequireDefault(require("./Scheduler/Cache"));
11
- var _Fetcher = _interopRequireDefault(require("../Provider/Fetcher"));
12
- var mapbox = _interopRequireWildcard(require("@mapbox/mapbox-gl-style-spec"));
13
- var _three = require("three");
14
- var _Color = require("../Renderer/Color");
15
- var _Coordinates = _interopRequireDefault(require("./Geographic/Coordinates"));
16
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
1
+ import { FEATURE_TYPES } from "./Feature.js";
2
+ import Cache from "./Scheduler/Cache.js";
3
+ import Fetcher from "../Provider/Fetcher.js";
4
+ import * as mapbox from '@mapbox/mapbox-gl-style-spec';
5
+ import { Color } from 'three';
6
+ import { deltaE } from "../Renderer/Color.js";
7
+ import Coordinates from "./Geographic/Coordinates.js";
18
8
  /* babel-plugin-inline-import './StyleChunk/itowns_stroke_single_before.css' */
19
9
  const itowns_stroke_single_before = ".itowns-stroke-single:before {\n display: var(--text_stroke_display);\n content: attr(data-before);\n opacity: 1;\n position: absolute;\n -webkit-text-stroke-width: var(--text_stroke_width);\n -webkit-text-stroke-color: var(--text_stroke_color);\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: -1;\n white-space: inherit;\n overflow-wrap: inherit;\n letter-spacing: inherit;\n text-align: inherit;\n padding: inherit;\n font-family: inherit;\n text-transform: inherit;\n max-width: inherit;\n font-size: inherit;\n}\n";
20
- const cacheStyle = new _Cache.default();
21
- exports.cacheStyle = cacheStyle;
22
- const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
23
- const matrix = svg.createSVGMatrix();
10
+ export const cacheStyle = new Cache();
11
+ const matrix = document.createElementNS('http://www.w3.org/2000/svg', 'svg').createSVGMatrix();
12
+ const canvas = document.createElement('canvas');
24
13
  const inv255 = 1 / 255;
25
- const canvas = typeof document !== 'undefined' ? document.createElement('canvas') : {};
26
14
  function baseAltitudeDefault(properties, ctx) {
27
15
  var _ctx$coordinates;
28
16
  return (ctx === null || ctx === void 0 ? void 0 : (_ctx$coordinates = ctx.coordinates) === null || _ctx$coordinates === void 0 ? void 0 : _ctx$coordinates.z) || 0;
29
17
  }
30
- function readExpression(property, ctx) {
18
+ export function readExpression(property, ctx) {
31
19
  if (property != undefined) {
32
20
  if (property.expression) {
33
21
  return property.expression.evaluate(ctx);
@@ -95,7 +83,7 @@ function readVectorProperty(property, options) {
95
83
  async function loadImage(source) {
96
84
  let promise = cacheStyle.get(source, 'null');
97
85
  if (!promise) {
98
- promise = _Fetcher.default.texture(source, {
86
+ promise = Fetcher.texture(source, {
99
87
  crossOrigin: 'anonymous'
100
88
  });
101
89
  cacheStyle.set(promise, source, 'null');
@@ -122,10 +110,10 @@ function replaceWhitePxl(imgd, color, id) {
122
110
  const imgdColored = cacheStyle.get(id, color);
123
111
  if (!imgdColored) {
124
112
  const pix = imgd.data;
125
- const newColor = new _three.Color(color);
126
- const colorToChange = new _three.Color('white');
113
+ const newColor = new Color(color);
114
+ const colorToChange = new Color('white');
127
115
  for (let i = 0, n = pix.length; i < n; i += 4) {
128
- const d = (0, _Color.deltaE)(pix.slice(i, i + 3), colorToChange) / 100;
116
+ const d = deltaE(pix.slice(i, i + 3), colorToChange) / 100;
129
117
  pix[i] = pix[i] * d + newColor.r * 255 * (1 - d);
130
118
  pix[i + 1] = pix[i + 1] * d + newColor.g * 255 * (1 - d);
131
119
  pix[i + 2] = pix[i + 2] * d + newColor.b * 255 * (1 - d);
@@ -211,9 +199,9 @@ function defineStyleProperty(style, category, parameter, userValue, defaultValue
211
199
  * @property {Feature} feature @private The itowns feature of interest.
212
200
  * @property {FeatureGeometry} geometry @private The FeatureGeometry to compute the style.
213
201
  */
214
- class StyleContext {
215
- #worldCoord = new _Coordinates.default('EPSG:4326', 0, 0, 0);
216
- #localCoordinates = new _Coordinates.default('EPSG:4326', 0, 0, 0);
202
+ export class StyleContext {
203
+ #worldCoord = new Coordinates('EPSG:4326', 0, 0, 0);
204
+ #localCoordinates = new Coordinates('EPSG:4326', 0, 0, 0);
217
205
  #worldCoordsComputed = true;
218
206
  #feature = {};
219
207
  #geometry = {};
@@ -258,7 +246,6 @@ class StyleContext {
258
246
  return this.#worldCoord;
259
247
  }
260
248
  }
261
- exports.StyleContext = StyleContext;
262
249
  function _addIcon(icon, domElement, opt) {
263
250
  const cIcon = icon.cloneNode();
264
251
  cIcon.setAttribute('class', 'itowns-icon');
@@ -459,7 +446,7 @@ function _addIcon(icon, domElement, opt) {
459
446
  * Used for the instanciation of a {@link Style}.
460
447
  * @hideconstructor
461
448
  */
462
- class StyleOptions {}
449
+ export class StyleOptions {}
463
450
 
464
451
  /**
465
452
  * @class
@@ -629,7 +616,7 @@ class StyleOptions {}
629
616
  *
630
617
  * view.addLayer(layer);
631
618
  */
632
- exports.StyleOptions = StyleOptions;
619
+
633
620
  class Style {
634
621
  /**
635
622
  * @param {StyleOptions} [params={}] An object that contain any properties
@@ -746,7 +733,7 @@ class Style {
746
733
  static setFromProperties(properties, featCtx) {
747
734
  const type = featCtx.type;
748
735
  const style = {};
749
- if (type === _Feature.FEATURE_TYPES.POINT) {
736
+ if (type === FEATURE_TYPES.POINT) {
750
737
  const point = {
751
738
  ...(properties.fill !== undefined && {
752
739
  color: properties.fill
@@ -810,7 +797,7 @@ class Style {
810
797
  if (Object.keys(stroke).length) {
811
798
  style.stroke = stroke;
812
799
  }
813
- if (type !== _Feature.FEATURE_TYPES.LINE) {
800
+ if (type !== FEATURE_TYPES.LINE) {
814
801
  const fill = {
815
802
  ...(properties.fill !== undefined && {
816
803
  color: properties.fill
@@ -1131,7 +1118,7 @@ class Style {
1131
1118
  const CustomStyle = {
1132
1119
  itowns_stroke_single_before
1133
1120
  };
1134
- const customStyleSheet = typeof document !== 'undefined' ? document.createElement('style') : {};
1121
+ const customStyleSheet = document.createElement('style');
1135
1122
  customStyleSheet.type = 'text/css';
1136
1123
  Object.keys(CustomStyle).forEach(key => {
1137
1124
  customStyleSheet.innerHTML += `${CustomStyle[key]}\n\n`;
@@ -1139,5 +1126,4 @@ Object.keys(CustomStyle).forEach(key => {
1139
1126
  if (typeof document !== 'undefined') {
1140
1127
  document.getElementsByTagName('head')[0].appendChild(customStyleSheet);
1141
1128
  }
1142
- var _default = Style;
1143
- exports.default = _default;
1129
+ export default Style;
@@ -1,9 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
1
  /* babel-plugin-inline-import '../../Renderer/Shader/SampleTestFS.glsl' */
8
2
  const SampleTestFS = "uniform sampler2D uni[SAMPLE];\nvoid main() {\n gl_FragColor += texture2D(uni[SAMPLE-1], vec2(0));\n}";
9
3
  /* babel-plugin-inline-import '../../Renderer/Shader/SampleTestVS.glsl' */
@@ -21,15 +15,11 @@ function _WebGLShader(renderer, type, string) {
21
15
  function isFirefox() {
22
16
  return navigator && navigator.userAgent && navigator.userAgent.toLowerCase().includes('firefox');
23
17
  }
24
- var _default = {
18
+ export default {
25
19
  isLogDepthBufferSupported() {
26
20
  return logDepthBufferSupported;
27
21
  },
28
22
  isFirefox,
29
- isInternetExplorer() {
30
- const internetExplorer = false || !!document.documentMode;
31
- return internetExplorer;
32
- },
33
23
  getMaxTextureUnitsCount() {
34
24
  return maxTexturesUnits;
35
25
  },
@@ -70,5 +60,4 @@ var _default = {
70
60
  gl.deleteShader(glFragmentShader);
71
61
  logDepthBufferSupported = renderer.capabilities.logarithmicDepthBuffer;
72
62
  }
73
- };
74
- exports.default = _default;
63
+ };
@@ -1,18 +1,9 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var THREE = _interopRequireWildcard(require("three"));
9
- var _computeBufferTileGeometry = _interopRequireDefault(require("./Prefab/computeBufferTileGeometry"));
10
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
1
+ import * as THREE from 'three';
2
+ import computeBuffers, { getBufferIndexSize } from "./Prefab/computeBufferTileGeometry.js";
12
3
  function defaultBuffers(params) {
13
4
  params.buildIndexAndUv_0 = true;
14
5
  params.center = params.builder.center(params.extent).clone();
15
- const buffers = (0, _computeBufferTileGeometry.default)(params);
6
+ const buffers = computeBuffers(params);
16
7
  buffers.index = new THREE.BufferAttribute(buffers.index, 1);
17
8
  buffers.uvs[0] = new THREE.BufferAttribute(buffers.uvs[0], 2);
18
9
  buffers.position = new THREE.BufferAttribute(buffers.position, 3);
@@ -28,15 +19,22 @@ class TileGeometry extends THREE.BufferGeometry {
28
19
  super();
29
20
  this.center = params.center;
30
21
  this.extent = params.extent;
22
+ this.segments = params.segments;
31
23
  this.setIndex(buffers.index);
32
24
  this.setAttribute('position', buffers.position);
33
25
  this.setAttribute('normal', buffers.normal);
34
- for (let i = 0; i < buffers.uvs.length; i++) {
26
+ this.setAttribute('uv', buffers.uvs[0]);
27
+ for (let i = 1; i < buffers.uvs.length; i++) {
35
28
  this.setAttribute(`uv_${i}`, buffers.uvs[i]);
36
29
  }
37
30
  this.computeBoundingBox();
38
31
  this.OBB = {};
32
+ if (params.hideSkirt) {
33
+ this.hideSkirt = params.hideSkirt;
34
+ }
35
+ }
36
+ set hideSkirt(value) {
37
+ this.setDrawRange(0, getBufferIndexSize(this.segments, value));
39
38
  }
40
39
  }
41
- var _default = TileGeometry;
42
- exports.default = _default;
40
+ export default TileGeometry;
@@ -1,15 +1,7 @@
1
- "use strict";
1
+ import * as THREE from 'three';
2
+ import CRS from "./Geographic/Crs.js";
3
+ import { geoidLayerIsVisible } from "../Layer/GeoidLayer.js";
2
4
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var THREE = _interopRequireWildcard(require("three"));
9
- var _Crs = _interopRequireDefault(require("./Geographic/Crs"));
10
- var _GeoidLayer = require("../Layer/GeoidLayer");
11
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
5
  /**
14
6
  * A TileMesh is a THREE.Mesh with a geometricError and an OBB
15
7
  * The objectId property of the material is the with the id of the TileMesh
@@ -71,7 +63,7 @@ class TileMesh extends THREE.Mesh {
71
63
  * @param {number} [elevation.scale]
72
64
  */
73
65
  setBBoxZ(elevation) {
74
- elevation.geoidHeight = (0, _GeoidLayer.geoidLayerIsVisible)(this.layer) ? this.geoidHeight : 0;
66
+ elevation.geoidHeight = geoidLayerIsVisible(this.layer) ? this.geoidHeight : 0;
75
67
  this.obb.updateZ(elevation);
76
68
  if (this.horizonCullingPointElevationScaled) {
77
69
  this.horizonCullingPointElevationScaled.setLength(this.obb.z.delta + this.horizonCullingPoint.length());
@@ -79,7 +71,7 @@ class TileMesh extends THREE.Mesh {
79
71
  this.obb.box3D.getBoundingSphere(this.boundingSphere);
80
72
  }
81
73
  getExtentsByProjection(crs) {
82
- return this.#_tms.get(_Crs.default.formatToTms(crs));
74
+ return this.#_tms.get(CRS.formatToTms(crs));
83
75
  }
84
76
 
85
77
  /**
@@ -114,5 +106,4 @@ class TileMesh extends THREE.Mesh {
114
106
  }
115
107
  }
116
108
  }
117
- var _default = TileMesh;
118
- exports.default = _default;
109
+ export default TileMesh;