@cognite/reveal 3.0.0-alpha.2 → 3.0.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 (265) hide show
  1. package/core/cad.d.ts +4 -4
  2. package/core/index.d.ts +6 -7
  3. package/core/src/index.d.ts +13 -19
  4. package/core/src/internals.d.ts +10 -15
  5. package/core/src/public/RevealManager.d.ts +61 -64
  6. package/core/src/public/createRevealManager.d.ts +23 -23
  7. package/core/src/public/migration/Cognite3DViewer.d.ts +485 -559
  8. package/core/src/public/migration/NotSupportedInMigrationWrapperError.d.ts +11 -11
  9. package/core/src/public/migration/RenderController.d.ts +4 -4
  10. package/core/src/public/migration/types.d.ts +199 -253
  11. package/core/src/public/types.d.ts +25 -47
  12. package/core/src/storage/RevealManagerHelper.d.ts +59 -58
  13. package/core/src/utilities/Spinner.d.ts +27 -27
  14. package/core/src/utilities/ViewStateHelper.d.ts +49 -37
  15. package/core/src/utilities/index.d.ts +6 -8
  16. package/core/src/utilities/reflection.d.ts +7 -7
  17. package/core/utilities.d.ts +4 -4
  18. package/extensions/datasource.d.ts +9 -9
  19. package/extensions/datasource.js +5 -8
  20. package/extensions/datasource.map +1 -1
  21. package/index.d.ts +13 -9
  22. package/index.js +195 -167
  23. package/index.map +1 -1
  24. package/package.json +18 -17
  25. package/packages/cad-geometry-loaders/index.d.ts +7 -13
  26. package/packages/cad-geometry-loaders/src/CadLoadingHints.d.ts +11 -11
  27. package/packages/cad-geometry-loaders/src/CadModelBudget.d.ts +21 -19
  28. package/packages/cad-geometry-loaders/src/CadModelUpdateHandler.d.ts +44 -42
  29. package/packages/cad-geometry-loaders/src/sector/ModelStateHandler.d.ts +12 -12
  30. package/packages/cad-geometry-loaders/src/sector/SectorDownloadScheduler.d.ts +22 -22
  31. package/packages/cad-geometry-loaders/src/sector/SectorLoader.d.ts +32 -31
  32. package/packages/cad-geometry-loaders/src/sector/culling/ByScreenSizeSectorCuller.d.ts +23 -23
  33. package/packages/cad-geometry-loaders/src/sector/culling/ByVisibilityGpuSectorCuller.d.ts +51 -51
  34. package/packages/cad-geometry-loaders/src/sector/culling/OrderSectorsByVisibilityCoverage.d.ts +106 -107
  35. package/packages/cad-geometry-loaders/src/sector/culling/RenderAlreadyLoadedGeometryProvider.d.ts +9 -0
  36. package/packages/cad-geometry-loaders/src/sector/culling/SectorCuller.d.ts +33 -33
  37. package/packages/cad-geometry-loaders/src/sector/culling/WeightFunctionsHelper.d.ts +50 -50
  38. package/packages/cad-geometry-loaders/src/sector/culling/computeNdcAreaOfBox.d.ts +12 -12
  39. package/packages/cad-geometry-loaders/src/sector/culling/computeSectorCost.d.ts +7 -7
  40. package/packages/cad-geometry-loaders/src/sector/culling/createV8SectorCuller.d.ts +7 -7
  41. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenSectorMapBase.d.ts +11 -11
  42. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorMap.d.ts +17 -17
  43. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorTree.d.ts +24 -24
  44. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV9SectorMap.d.ts +20 -20
  45. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/index.d.ts +5 -5
  46. package/packages/cad-geometry-loaders/src/sector/culling/transformBoxToNDC.d.ts +5 -5
  47. package/packages/cad-geometry-loaders/src/sector/culling/types.d.ts +83 -83
  48. package/packages/cad-geometry-loaders/src/sector/rxSectorUtilities.d.ts +12 -12
  49. package/packages/cad-geometry-loaders/src/utilities/PromiseUtils.d.ts +28 -28
  50. package/packages/cad-geometry-loaders/src/utilities/rxOperations.d.ts +6 -6
  51. package/packages/cad-model/index.d.ts +12 -0
  52. package/{core/src/utilities → packages/cad-model/src}/BoundingBoxClipper.d.ts +23 -23
  53. package/{core/src/datamodels/cad → packages/cad-model/src}/CadManager.d.ts +48 -43
  54. package/packages/cad-model/src/CadModelFactory.d.ts +16 -0
  55. package/{core/src/datamodels/cad → packages/cad-model/src}/CadModelSectorLoadStatistics.d.ts +38 -38
  56. package/{core/src/public/migration → packages/cad-model/src}/Cognite3DModel.d.ts +337 -340
  57. package/packages/cad-model/src/GeometryFilter.d.ts +20 -0
  58. package/packages/cad-model/src/InternalRevealCadOptions.d.ts +13 -0
  59. package/packages/cad-model/src/WellKnownUnit.d.ts +7 -0
  60. package/{core/src/utilities → packages/cad-model/src}/callActionWithIndicesAsync.d.ts +4 -4
  61. package/{core/src/datamodels/cad → packages/cad-model/src}/createCadManager.d.ts +10 -9
  62. package/{core/src/datamodels/cad → packages/cad-model/src}/picking.d.ts +28 -28
  63. package/packages/cad-parsers/index.d.ts +20 -21
  64. package/packages/cad-parsers/src/cad/CadSectorParser.d.ts +15 -15
  65. package/packages/cad-parsers/src/cad/LevelOfDetail.d.ts +8 -8
  66. package/packages/cad-parsers/src/cad/filterInstanceMesh.d.ts +6 -6
  67. package/packages/cad-parsers/src/cad/filterPrimitivesCommon.d.ts +5 -5
  68. package/packages/cad-parsers/src/cad/filterPrimitivesV8.d.ts +9 -9
  69. package/packages/cad-parsers/src/cad/filterPrimitivesV9.d.ts +6 -6
  70. package/packages/cad-parsers/src/cad/primitiveGeometries.d.ts +30 -31
  71. package/packages/cad-parsers/src/cad/triangleMeshes.d.ts +6 -6
  72. package/packages/cad-parsers/src/cad/types.d.ts +56 -56
  73. package/packages/cad-parsers/src/metadata/CadMetadataParser.d.ts +7 -7
  74. package/{core/src/datamodels/cad/sector → packages/cad-parsers/src/metadata}/CadModelClipper.d.ts +10 -10
  75. package/packages/cad-parsers/src/metadata/CadModelMetadata.d.ts +54 -54
  76. package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +16 -16
  77. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserGltf.d.ts +8 -6
  78. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserV8.d.ts +6 -6
  79. package/packages/cad-parsers/src/metadata/parsers/types.d.ts +62 -60
  80. package/packages/cad-parsers/src/metadata/types.d.ts +53 -52
  81. package/packages/cad-parsers/src/sector/RootSectorNode.d.ts +13 -12
  82. package/packages/cad-parsers/src/sector/SectorNode.d.ts +22 -21
  83. package/packages/cad-parsers/src/utilities/SectorScene.d.ts +23 -21
  84. package/packages/cad-parsers/src/utilities/SectorSceneFactory.d.ts +9 -9
  85. package/packages/cad-parsers/src/utilities/computeBoundingBoxFromAttributes.d.ts +10 -10
  86. package/packages/cad-parsers/src/utilities/float32BufferToMatrix.d.ts +12 -12
  87. package/packages/cad-parsers/src/utilities/types.d.ts +71 -74
  88. package/packages/cad-styling/index.d.ts +20 -13
  89. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/AssetNodeCollection.d.ts +47 -45
  90. package/packages/cad-styling/src/CdfModelNodeCollectionDataProvider.d.ts +26 -0
  91. package/packages/cad-styling/src/CombineNodeCollectionBase.d.ts +34 -33
  92. package/packages/cad-styling/src/IntersectionNodeCollection.d.ts +20 -19
  93. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/InvertedNodeCollection.d.ts +27 -25
  94. package/packages/cad-styling/src/NodeAppearance.d.ts +85 -85
  95. package/packages/cad-styling/src/NodeAppearanceProvider.d.ts +38 -36
  96. package/packages/cad-styling/src/NodeCollection.d.ts +26 -0
  97. package/packages/cad-styling/src/NodeCollectionDeserializer.d.ts +26 -0
  98. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/PopulateIndexSetFromPagedResponseHelper.d.ts +30 -30
  99. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/PropertyFilterNodeCollection.d.ts +57 -55
  100. package/packages/cad-styling/src/SerializedNodeCollection.d.ts +8 -0
  101. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/SinglePropertyFilterNodeCollection.d.ts +53 -51
  102. package/packages/cad-styling/src/TreeIndexNodeCollection.d.ts +40 -39
  103. package/packages/cad-styling/src/UnionNodeCollection.d.ts +19 -18
  104. package/packages/cad-styling/src/prioritized/AreaCollection.d.ts +39 -39
  105. package/packages/cad-styling/src/prioritized/BoxClusterer.d.ts +29 -29
  106. package/packages/cad-styling/src/prioritized/ClusteredAreaCollection.d.ts +17 -17
  107. package/packages/cad-styling/src/prioritized/EmptyAreaCollection.d.ts +18 -18
  108. package/packages/cad-styling/src/prioritized/types.d.ts +7 -7
  109. package/packages/camera-manager/index.d.ts +8 -6
  110. package/packages/camera-manager/src/CameraManager.d.ts +73 -84
  111. package/packages/camera-manager/src/CameraManagerHelper.d.ts +42 -0
  112. package/packages/camera-manager/src/ComboControls.d.ts +112 -101
  113. package/packages/camera-manager/src/DefaultCameraManager.d.ts +136 -0
  114. package/packages/camera-manager/src/Keyboard.d.ts +17 -17
  115. package/packages/camera-manager/src/types.d.ts +75 -64
  116. package/packages/data-source/index.d.ts +6 -6
  117. package/packages/data-source/src/CdfDataSource.d.ts +19 -19
  118. package/packages/data-source/src/DataSource.d.ts +25 -25
  119. package/packages/data-source/src/LocalDataSource.d.ts +15 -15
  120. package/packages/logger/index.d.ts +5 -5
  121. package/packages/logger/src/Log.d.ts +5 -5
  122. package/packages/metrics/index.d.ts +4 -5
  123. package/packages/metrics/src/MetricsLogger.d.ts +21 -21
  124. package/packages/metrics/src/types.d.ts +7 -7
  125. package/packages/model-base/index.d.ts +8 -0
  126. package/{core/src/public/migration → packages/model-base/src}/CogniteModelBase.d.ts +17 -17
  127. package/packages/{cad-parsers/src/metadata → model-base/src}/MetadataRepository.d.ts +7 -7
  128. package/{core/src/public/migration → packages/model-base/src}/NodeIdAndTreeIndexMaps.d.ts +4 -4
  129. package/{core/src/datamodels/base → packages/model-base/src}/SupportedModelTypes.d.ts +4 -4
  130. package/packages/{cad-geometry-loaders/src/utilities → model-base/src}/types.d.ts +36 -25
  131. package/packages/modeldata-api/index.d.ts +12 -13
  132. package/packages/modeldata-api/src/CdfModelDataProvider.d.ts +17 -17
  133. package/packages/modeldata-api/src/CdfModelIdentifier.d.ts +15 -15
  134. package/packages/modeldata-api/src/CdfModelMetadataProvider.d.ts +20 -20
  135. package/packages/modeldata-api/src/LocalModelDataProvider.d.ts +10 -10
  136. package/packages/modeldata-api/src/LocalModelIdentifier.d.ts +14 -14
  137. package/packages/modeldata-api/src/LocalModelMetadataProvider.d.ts +16 -16
  138. package/packages/modeldata-api/src/ModelIdentifier.d.ts +12 -12
  139. package/packages/modeldata-api/src/ModelMetadataProvider.d.ts +18 -18
  140. package/packages/modeldata-api/src/applyDefaultModelTransformation.d.ts +6 -6
  141. package/packages/modeldata-api/src/types.d.ts +47 -47
  142. package/packages/modeldata-api/src/utilities.d.ts +7 -7
  143. package/packages/nodes-api/index.d.ts +6 -6
  144. package/packages/nodes-api/src/NodesApiClient.d.ts +50 -50
  145. package/packages/nodes-api/src/NodesCdfClient.d.ts +24 -24
  146. package/packages/nodes-api/src/NodesLocalClient.d.ts +30 -30
  147. package/packages/nodes-api/src/types.d.ts +10 -10
  148. package/packages/pointclouds/index.d.ts +13 -0
  149. package/{core/src/public/migration → packages/pointclouds/src}/CognitePointCloudModel.d.ts +120 -121
  150. package/packages/pointclouds/src/PointCloudBudget.d.ts +14 -0
  151. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudFactory.d.ts +9 -9
  152. package/packages/pointclouds/src/PointCloudIntersection.d.ts +26 -0
  153. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudManager.d.ts +26 -26
  154. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudMetadata.d.ts +14 -14
  155. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudMetadataRepository.d.ts +14 -14
  156. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudNode.d.ts +62 -62
  157. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PotreeGroupWrapper.d.ts +39 -39
  158. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PotreeNodeWrapper.d.ts +38 -38
  159. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/createPointCloudManager.d.ts +6 -6
  160. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/picking.d.ts +29 -29
  161. package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/types.d.ts +114 -114
  162. package/packages/rendering/index.d.ts +14 -17
  163. package/packages/rendering/src/CadMaterialManager.d.ts +39 -37
  164. package/packages/rendering/src/GeometryBatchingManager.d.ts +31 -30
  165. package/packages/rendering/src/InstancedMeshManager.d.ts +20 -20
  166. package/packages/rendering/src/rendering/EffectRenderManager.d.ts +99 -99
  167. package/packages/rendering/src/rendering/NodeAppearanceTextureBuilder.d.ts +51 -51
  168. package/packages/rendering/src/rendering/RenderMode.d.ts +15 -15
  169. package/packages/rendering/src/rendering/createSimpleGeometryMesh.d.ts +6 -6
  170. package/packages/rendering/src/rendering/matCapTextureData.d.ts +5 -5
  171. package/packages/rendering/src/rendering/materials.d.ts +23 -23
  172. package/packages/rendering/src/rendering/primitives.d.ts +12 -12
  173. package/packages/rendering/src/rendering/shaders.d.ts +101 -101
  174. package/packages/rendering/src/rendering/types.d.ts +76 -76
  175. package/packages/rendering/src/sector/CadNode.d.ts +57 -63
  176. package/packages/rendering/src/transform/NodeTransformProvider.d.ts +13 -13
  177. package/packages/rendering/src/transform/NodeTransformTextureBuilder.d.ts +23 -23
  178. package/packages/rendering/src/transform/TransformOverrideBuffer.d.ts +21 -21
  179. package/packages/rendering/src/utilities/types.d.ts +26 -26
  180. package/packages/sector-loader/index.d.ts +6 -6
  181. package/packages/sector-loader/src/GltfSectorLoader.d.ts +12 -0
  182. package/packages/sector-loader/src/GltfSectorRepository.d.ts +19 -14
  183. package/packages/sector-loader/src/SectorRepository.d.ts +10 -9
  184. package/packages/sector-loader/src/V8SectorRepository.d.ts +26 -25
  185. package/packages/sector-loader/src/v8/SimpleAndDetailedToSector3D.d.ts +20 -20
  186. package/packages/sector-loader/src/v8/arrays.d.ts +5 -5
  187. package/packages/sector-loader/src/v8/groupMeshesByNumber.d.ts +8 -8
  188. package/packages/sector-loader/src/v8/sectorUtilities.d.ts +16 -16
  189. package/packages/sector-parser/index.d.ts +5 -5
  190. package/packages/sector-parser/src/DracoDecoderHelper.d.ts +32 -0
  191. package/packages/sector-parser/src/GltfSectorParser.d.ts +19 -18
  192. package/packages/sector-parser/src/constants.d.ts +6 -0
  193. package/packages/sector-parser/src/reveal-glb-parser/GlbMetadataParser.d.ts +14 -14
  194. package/packages/sector-parser/src/reveal-glb-parser/primitiveGeometries.d.ts +12 -12
  195. package/packages/sector-parser/src/types.d.ts +106 -98
  196. package/packages/tools/index.d.ts +15 -15
  197. package/packages/tools/src/AxisView/AxisViewTool.d.ts +32 -32
  198. package/packages/tools/src/AxisView/types.d.ts +98 -98
  199. package/packages/tools/src/Cognite3DViewerToolBase.d.ts +25 -25
  200. package/packages/tools/src/DebugCameraTool.d.ts +20 -20
  201. package/packages/tools/src/DebugLoadedSectorsTool.d.ts +23 -23
  202. package/packages/tools/src/ExplodedViewTool.d.ts +12 -12
  203. package/packages/tools/src/Geomap/Geomap.d.ts +17 -17
  204. package/packages/tools/src/Geomap/GeomapTool.d.ts +23 -23
  205. package/packages/tools/src/Geomap/MapConfig.d.ts +195 -195
  206. package/packages/tools/src/HtmlOverlay/BucketGrid2D.d.ts +28 -28
  207. package/packages/tools/src/HtmlOverlay/HtmlOverlayTool.d.ts +160 -160
  208. package/packages/tools/src/Timeline/Keyframe.d.ts +39 -39
  209. package/packages/tools/src/Timeline/TimelineTool.d.ts +79 -79
  210. package/packages/tools/src/Timeline/types.d.ts +13 -13
  211. package/packages/tools/src/types.d.ts +4 -4
  212. package/packages/utilities/index.d.ts +32 -28
  213. package/packages/utilities/src/CameraConfiguration.d.ts +10 -10
  214. package/packages/utilities/src/DeferredPromise.d.ts +17 -17
  215. package/packages/utilities/src/IndexSet.d.ts +1 -1
  216. package/packages/utilities/src/NumericRange.d.ts +22 -22
  217. package/packages/utilities/src/RandomColors.d.ts +34 -34
  218. package/packages/utilities/src/WebGLRendererStateHelper.d.ts +15 -15
  219. package/packages/utilities/src/assertNever.d.ts +7 -7
  220. package/packages/utilities/src/cache/MemoryRequestCache.d.ts +24 -22
  221. package/packages/utilities/src/cache/MostFrequentlyUsedCache.d.ts +19 -19
  222. package/packages/utilities/src/cache/RequestCache.d.ts +13 -13
  223. package/packages/utilities/src/calculateVolumeOfMesh.d.ts +4 -0
  224. package/packages/utilities/src/counterMap.d.ts +5 -5
  225. package/packages/utilities/src/datastructures/DynamicDefragmentedBuffer.d.ts +33 -35
  226. package/packages/utilities/src/determinePowerOfTwoDimensions.d.ts +11 -11
  227. package/packages/utilities/src/disposeAttributeArrayOnUpload.d.ts +17 -17
  228. package/packages/utilities/src/events/EventTrigger.d.ts +13 -13
  229. package/packages/utilities/src/events/InputHandler.d.ts +34 -25
  230. package/packages/utilities/src/events/clickOrTouchEventOffset.d.ts +13 -13
  231. package/packages/utilities/src/events/index.d.ts +6 -6
  232. package/packages/utilities/src/indexset/IndexSet.d.ts +26 -26
  233. package/packages/utilities/src/indexset/IntermediateIndexNode.d.ts +26 -26
  234. package/packages/utilities/src/indexset/LeafIndexNode.d.ts +16 -16
  235. package/packages/utilities/src/isMobileOrTablet.d.ts +4 -4
  236. package/packages/utilities/src/networking/isTheSameDomain.d.ts +11 -11
  237. package/packages/utilities/src/objectTraversal.d.ts +8 -8
  238. package/packages/utilities/src/packFloat.d.ts +6 -6
  239. package/packages/utilities/src/revealEnv.d.ts +10 -10
  240. package/packages/utilities/src/three/AutoDisposeGroup.d.ts +17 -17
  241. package/packages/utilities/src/three/BoundingBoxLOD.d.ts +27 -27
  242. package/packages/utilities/src/three/isBox3OnPositiveSideOfPlane.d.ts +10 -10
  243. package/packages/utilities/src/three/toThreeBox3.d.ts +6 -6
  244. package/packages/utilities/src/three/unionBoxes.d.ts +5 -0
  245. package/packages/utilities/src/three/visitBox3CornerPoints.d.ts +12 -12
  246. package/packages/utilities/src/transformCameraConfiguration.d.ts +6 -6
  247. package/packages/utilities/src/types.d.ts +11 -11
  248. package/packages/utilities/src/workers/WorkerPool.d.ts +14 -14
  249. package/{core/src/utilities → packages/utilities/src}/worldToViewport.d.ts +30 -30
  250. package/tools.d.ts +7 -7
  251. package/tools.js +98 -74
  252. package/tools.map +1 -1
  253. package/core/src/datamodels/base/index.d.ts +0 -6
  254. package/core/src/datamodels/base/types.d.ts +0 -14
  255. package/core/src/datamodels/cad/CadModelFactory.d.ts +0 -13
  256. package/core/src/datamodels/cad/rendering/RenderAlreadyLoadedGeometryProvider.d.ts +0 -10
  257. package/core/src/datamodels/cad/styling/NodeCollectionDeserializer.d.ts +0 -26
  258. package/core/src/datamodels/cad/styling/index.d.ts +0 -8
  259. package/core/src/datamodels/pointcloud/index.d.ts +0 -5
  260. package/core/src/migration.d.ts +0 -8
  261. package/packages/cad-geometry-loaders/src/sector/culling/OccludingGeometryProvider.d.ts +0 -6
  262. package/packages/cad-styling/src/NodeCollectionBase.d.ts +0 -54
  263. package/packages/modeldata-api/src/CdfModelOutputsProvider.d.ts +0 -16
  264. package/packages/modeldata-api/src/Model3DOutputList.d.ts +0 -17
  265. package/packages/rendering/src/cameraconfig.d.ts +0 -12
@@ -1,16 +1,16 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import { CadModelMetadata } from './CadModelMetadata';
5
- import { MetadataRepository } from './MetadataRepository';
6
- import { ModelDataProvider, ModelMetadataProvider, ModelIdentifier } from '../../../modeldata-api';
7
- export declare class CadModelMetadataRepository implements MetadataRepository<Promise<CadModelMetadata>> {
8
- private readonly _modelMetadataProvider;
9
- private readonly _modelDataProvider;
10
- private readonly _cadSceneParser;
11
- private readonly _blobFileName;
12
- private _currentModelIdentifier;
13
- constructor(modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider, blobFileName?: string);
14
- loadData(modelIdentifier: ModelIdentifier): Promise<CadModelMetadata>;
15
- private getSupportedOutput;
16
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import { CadModelMetadata } from './CadModelMetadata';
5
+ import { MetadataRepository } from '../../../model-base';
6
+ import { ModelDataProvider, ModelMetadataProvider, ModelIdentifier } from '../../../modeldata-api';
7
+ export declare class CadModelMetadataRepository implements MetadataRepository<Promise<CadModelMetadata>> {
8
+ private readonly _modelMetadataProvider;
9
+ private readonly _modelDataProvider;
10
+ private readonly _cadSceneParser;
11
+ private readonly _blobFileName;
12
+ private _currentModelIdentifier;
13
+ constructor(modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider, blobFileName?: string);
14
+ loadData(modelIdentifier: ModelIdentifier): Promise<CadModelMetadata>;
15
+ private getSupportedOutput;
16
+ }
@@ -1,6 +1,8 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import { SectorScene } from '../../utilities/types';
5
- import { CadSceneRootMetadata } from './types';
6
- export declare function parseCadMetadataGltf(metadata: CadSceneRootMetadata): SectorScene;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { SectorScene } from '../../utilities/types';
6
+ import { BoundingBox, CadSceneRootMetadata } from './types';
7
+ export declare function parseCadMetadataGltf(metadata: CadSceneRootMetadata): SectorScene;
8
+ export declare function toThreeBoundingBox(box: BoundingBox): THREE.Box3;
@@ -1,6 +1,6 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import { SectorScene } from '../../utilities/types';
5
- import { CadSceneRootMetadata } from './types';
6
- export declare function parseCadMetadataV8(metadata: CadSceneRootMetadata): SectorScene;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import { SectorScene } from '../../utilities/types';
5
+ import { CadSceneRootMetadata } from './types';
6
+ export declare function parseCadMetadataV8(metadata: CadSceneRootMetadata): SectorScene;
@@ -1,60 +1,62 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- export declare type CadSceneRootMetadata = {
5
- readonly version: number;
6
- readonly maxTreeIndex: number;
7
- readonly sectors: SceneSectorMetadata[];
8
- readonly unit: string | null;
9
- };
10
- export declare type SceneSectorMetadata = BaseSceneSectorMetadata & (GltfSceneSectorMetadata | I3dF3dSceneSectorMetadata);
11
- export declare type V8SceneSectorMetadata = BaseSceneSectorMetadata & I3dF3dSceneSectorMetadata;
12
- export declare type V9SceneSectorMetadata = BaseSceneSectorMetadata & GltfSceneSectorMetadata;
13
- export declare type BaseSceneSectorMetadata = {
14
- readonly id: number;
15
- readonly parentId: number | null;
16
- readonly path: string;
17
- readonly depth: number;
18
- readonly estimatedDrawCallCount: number;
19
- readonly estimatedTriangleCount: number;
20
- readonly boundingBox: {
21
- readonly min: {
22
- x: number;
23
- y: number;
24
- z: number;
25
- };
26
- readonly max: {
27
- x: number;
28
- y: number;
29
- z: number;
30
- };
31
- };
32
- };
33
- export declare type GltfSceneSectorMetadata = {
34
- readonly sectorFileName: string | null;
35
- readonly maxDiagonalLength: number;
36
- readonly minDiagonalLength: number;
37
- readonly downloadSize: number;
38
- };
39
- export declare type I3dF3dSceneSectorMetadata = {
40
- readonly indexFile: {
41
- readonly fileName: string;
42
- readonly peripheralFiles: string[];
43
- readonly downloadSize: number;
44
- };
45
- readonly facesFile: {
46
- readonly quadSize: number;
47
- readonly coverageFactors: {
48
- xy: number;
49
- yz: number;
50
- xz: number;
51
- };
52
- readonly recursiveCoverageFactors: {
53
- xy: number;
54
- yz: number;
55
- xz: number;
56
- } | undefined;
57
- readonly fileName: string | null;
58
- readonly downloadSize: number;
59
- } | null;
60
- };
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export declare type CadSceneRootMetadata = {
5
+ readonly version: number;
6
+ readonly maxTreeIndex: number;
7
+ readonly sectors: SceneSectorMetadata[];
8
+ readonly unit: string | null;
9
+ };
10
+ export declare type SceneSectorMetadata = BaseSceneSectorMetadata & (GltfSceneSectorMetadata | I3dF3dSceneSectorMetadata);
11
+ export declare type V8SceneSectorMetadata = BaseSceneSectorMetadata & I3dF3dSceneSectorMetadata;
12
+ export declare type V9SceneSectorMetadata = BaseSceneSectorMetadata & GltfSceneSectorMetadata;
13
+ export declare type BoundingBox = {
14
+ readonly min: {
15
+ x: number;
16
+ y: number;
17
+ z: number;
18
+ };
19
+ readonly max: {
20
+ x: number;
21
+ y: number;
22
+ z: number;
23
+ };
24
+ };
25
+ export declare type BaseSceneSectorMetadata = {
26
+ readonly id: number;
27
+ readonly parentId: number | null;
28
+ readonly path: string;
29
+ readonly depth: number;
30
+ readonly estimatedDrawCallCount: number;
31
+ readonly estimatedTriangleCount: number;
32
+ readonly boundingBox: BoundingBox;
33
+ readonly geometryBoundingBox?: BoundingBox;
34
+ };
35
+ export declare type GltfSceneSectorMetadata = {
36
+ readonly sectorFileName: string | null;
37
+ readonly maxDiagonalLength: number;
38
+ readonly minDiagonalLength: number;
39
+ readonly downloadSize: number;
40
+ };
41
+ export declare type I3dF3dSceneSectorMetadata = {
42
+ readonly indexFile: {
43
+ readonly fileName: string;
44
+ readonly peripheralFiles: string[];
45
+ readonly downloadSize: number;
46
+ };
47
+ readonly facesFile: {
48
+ readonly quadSize: number;
49
+ readonly coverageFactors: {
50
+ xy: number;
51
+ yz: number;
52
+ xz: number;
53
+ };
54
+ readonly recursiveCoverageFactors: {
55
+ xy: number;
56
+ yz: number;
57
+ xz: number;
58
+ } | undefined;
59
+ readonly fileName: string | null;
60
+ readonly downloadSize: number;
61
+ } | null;
62
+ };
@@ -1,52 +1,53 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- export interface SectorMetadataIndexFileSection {
6
- readonly fileName: string;
7
- readonly peripheralFiles: string[];
8
- readonly downloadSize: number;
9
- }
10
- export interface SectorMetadataFacesFileSection {
11
- readonly quadSize: number;
12
- /**
13
- * Coverage factors for the sector without children.
14
- */
15
- readonly coverageFactors: {
16
- xy: number;
17
- yz: number;
18
- xz: number;
19
- };
20
- /**
21
- * Coverage factor for the sectors including children.
22
- */
23
- readonly recursiveCoverageFactors: {
24
- xy: number;
25
- yz: number;
26
- xz: number;
27
- };
28
- readonly fileName: string | null;
29
- readonly downloadSize: number;
30
- }
31
- export declare type BaseSectorMetadata = {
32
- readonly id: number;
33
- readonly path: string;
34
- readonly depth: number;
35
- readonly bounds: THREE.Box3;
36
- readonly children: SectorMetadata[];
37
- readonly estimatedDrawCallCount: number;
38
- readonly estimatedRenderCost: number;
39
- };
40
- export declare type SectorMetadata = BaseSectorMetadata & (I3dF3dSectorMetadata | GltfSectorMetadata);
41
- export declare type V8SectorMetadata = BaseSectorMetadata & I3dF3dSectorMetadata;
42
- export declare type V9SectorMetadata = BaseSectorMetadata & GltfSectorMetadata;
43
- export declare type I3dF3dSectorMetadata = {
44
- readonly indexFile: SectorMetadataIndexFileSection;
45
- readonly facesFile: SectorMetadataFacesFileSection;
46
- };
47
- export declare type GltfSectorMetadata = {
48
- readonly sectorFileName: string | null;
49
- readonly maxDiagonalLength: number;
50
- readonly minDiagonalLength: number;
51
- readonly downloadSize: number;
52
- };
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ export interface SectorMetadataIndexFileSection {
6
+ readonly fileName: string;
7
+ readonly peripheralFiles: string[];
8
+ readonly downloadSize: number;
9
+ }
10
+ export interface SectorMetadataFacesFileSection {
11
+ readonly quadSize: number;
12
+ /**
13
+ * Coverage factors for the sector without children.
14
+ */
15
+ readonly coverageFactors: {
16
+ xy: number;
17
+ yz: number;
18
+ xz: number;
19
+ };
20
+ /**
21
+ * Coverage factor for the sectors including children.
22
+ */
23
+ readonly recursiveCoverageFactors: {
24
+ xy: number;
25
+ yz: number;
26
+ xz: number;
27
+ };
28
+ readonly fileName: string | null;
29
+ readonly downloadSize: number;
30
+ }
31
+ export declare type BaseSectorMetadata = {
32
+ readonly id: number;
33
+ readonly path: string;
34
+ readonly depth: number;
35
+ readonly subtreeBoundingBox: THREE.Box3;
36
+ readonly children: SectorMetadata[];
37
+ readonly estimatedDrawCallCount: number;
38
+ readonly estimatedRenderCost: number;
39
+ };
40
+ export declare type SectorMetadata = BaseSectorMetadata & (I3dF3dSectorMetadata | GltfSectorMetadata);
41
+ export declare type V8SectorMetadata = BaseSectorMetadata & I3dF3dSectorMetadata;
42
+ export declare type V9SectorMetadata = BaseSectorMetadata & GltfSectorMetadata;
43
+ export declare type I3dF3dSectorMetadata = {
44
+ readonly indexFile: SectorMetadataIndexFileSection;
45
+ readonly facesFile: SectorMetadataFacesFileSection;
46
+ };
47
+ export declare type GltfSectorMetadata = {
48
+ readonly sectorFileName: string | null;
49
+ readonly maxDiagonalLength: number;
50
+ readonly minDiagonalLength: number;
51
+ readonly downloadSize: number;
52
+ readonly geometryBoundingBox: THREE.Box3;
53
+ };
@@ -1,12 +1,13 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { SectorNode } from './SectorNode';
6
- import { CadModelMetadata } from '../metadata/CadModelMetadata';
7
- export declare class RootSectorNode extends SectorNode {
8
- readonly sectorNodeMap: Map<number, SectorNode>;
9
- constructor(modelMetadata: CadModelMetadata);
10
- setModelTransformation(matrix: THREE.Matrix4): void;
11
- getModelTransformation(out?: THREE.Matrix4): THREE.Matrix4;
12
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { SectorNode } from './SectorNode';
6
+ import { CadModelMetadata } from '../metadata/CadModelMetadata';
7
+ export declare class RootSectorNode extends SectorNode {
8
+ readonly sectorNodeMap: Map<number, SectorNode>;
9
+ constructor(modelMetadata: CadModelMetadata);
10
+ dereferenceAllNodes(): void;
11
+ setModelTransformation(matrix: THREE.Matrix4): void;
12
+ getModelTransformation(out?: THREE.Matrix4): THREE.Matrix4;
13
+ }
@@ -1,21 +1,22 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { AutoDisposeGroup } from '../../../utilities';
6
- import { LevelOfDetail } from '../cad/LevelOfDetail';
7
- export declare class SectorNode extends THREE.Group {
8
- readonly sectorPath: string;
9
- readonly sectorId: number;
10
- readonly bounds: THREE.Box3;
11
- readonly depth: number;
12
- private _group?;
13
- private _lod;
14
- private _updatedTimestamp;
15
- constructor(sectorId: number, sectorPath: string, bounds: THREE.Box3);
16
- get levelOfDetail(): LevelOfDetail;
17
- get group(): THREE.Group | undefined;
18
- get updatedTimestamp(): number;
19
- updateGeometry(geomtryGroup: AutoDisposeGroup | undefined, levelOfDetail: LevelOfDetail): void;
20
- resetGeometry(): void;
21
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { AutoDisposeGroup } from '../../../utilities';
6
+ import { LevelOfDetail } from '../cad/LevelOfDetail';
7
+ export declare class SectorNode extends THREE.Group {
8
+ readonly sectorPath: string;
9
+ readonly sectorId: number;
10
+ readonly bounds: THREE.Box3;
11
+ readonly depth: number;
12
+ private _group?;
13
+ private _lod;
14
+ private _updatedTimestamp;
15
+ constructor(sectorId: number, sectorPath: string, bounds: THREE.Box3);
16
+ get levelOfDetail(): LevelOfDetail;
17
+ get group(): THREE.Group | undefined;
18
+ get updatedTimestamp(): number;
19
+ updateGeometry(geomtryGroup: AutoDisposeGroup | undefined, levelOfDetail: LevelOfDetail): void;
20
+ dereference(): void;
21
+ resetGeometry(): void;
22
+ }
@@ -1,21 +1,23 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { SectorScene } from './types';
6
- import { SectorMetadata } from '../metadata/types';
7
- export declare class SectorSceneImpl implements SectorScene {
8
- readonly version: number;
9
- readonly maxTreeIndex: number;
10
- readonly root: SectorMetadata;
11
- readonly unit: string;
12
- private readonly sectors;
13
- constructor(version: number, maxTreeIndex: number, unit: string, root: SectorMetadata, sectorsById: Map<number, SectorMetadata>);
14
- get sectorCount(): number;
15
- getSectorById(sectorId: number): SectorMetadata | undefined;
16
- getAllSectors(): SectorMetadata[];
17
- getSectorsContainingPoint(p: THREE.Vector3): SectorMetadata[];
18
- getSectorsIntersectingBox(b: THREE.Box3): SectorMetadata[];
19
- getBoundsOfMostGeometry(): THREE.Box3;
20
- getSectorsIntersectingFrustum(projectionMatrix: THREE.Matrix4, inverseCameraModelMatrix: THREE.Matrix4): SectorMetadata[];
21
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { SectorScene } from './types';
6
+ import { SectorMetadata } from '../metadata/types';
7
+ export declare class SectorSceneImpl implements SectorScene {
8
+ readonly version: number;
9
+ readonly maxTreeIndex: number;
10
+ readonly root: SectorMetadata;
11
+ readonly unit: string;
12
+ private readonly sectors;
13
+ private _cachedBoundsOfMostGeometry;
14
+ constructor(version: number, maxTreeIndex: number, unit: string, root: SectorMetadata, sectorsById: Map<number, SectorMetadata>);
15
+ get sectorCount(): number;
16
+ getSectorById(sectorId: number): SectorMetadata | undefined;
17
+ getAllSectors(): SectorMetadata[];
18
+ getSectorsContainingPoint(p: THREE.Vector3): SectorMetadata[];
19
+ getSectorsIntersectingBox(b: THREE.Box3): SectorMetadata[];
20
+ getBoundsOfMostGeometry(): THREE.Box3;
21
+ getSectorsIntersectingFrustum(projectionMatrix: THREE.Matrix4, inverseCameraModelMatrix: THREE.Matrix4): SectorMetadata[];
22
+ private computeBoundsOfMostGeometry;
23
+ }
@@ -1,9 +1,9 @@
1
- import { SectorMetadata } from '../metadata/types';
2
- import { SectorScene } from './types';
3
- /**
4
- * Factory for creating instance of {@link SectorScene} based on
5
- * the version of the format provided.
6
- */
7
- export declare class SectorSceneFactory {
8
- createSectorScene(version: number, maxTreeIndex: number, unit: string, root: SectorMetadata): SectorScene;
9
- }
1
+ import { SectorMetadata } from '../metadata/types';
2
+ import { SectorScene } from './types';
3
+ /**
4
+ * Factory for creating instance of {@link SectorScene} based on
5
+ * the version of the format provided.
6
+ */
7
+ export declare class SectorSceneFactory {
8
+ createSectorScene(version: number, maxTreeIndex: number, unit: string, root: SectorMetadata): SectorScene;
9
+ }
@@ -1,10 +1,10 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { ParsePrimitiveAttribute } from '@cognite/reveal-parser-worker';
6
- export declare function computeBoundingBoxFromCenterAndRadiusAttributes(attributeFloatValues: Float32Array, centerAByteOffset: number, centerBByteOffset: number, radiusAByteOffset: number, radiusBByteOffset: number, elementSize: number, elementIndex: number, out: THREE.Box3): THREE.Box3;
7
- export declare function computeBoundingBoxFromVertexAttributes(vertex1AttributeByteOffset: number, vertex2AttributeByteOffset: number, vertex3AttributeByteOffset: number, vertex4AttributeByteOffset: number, attributeFloatValues: Float32Array, elementSize: number, elementIndex: number, out: THREE.Box3): THREE.Box3;
8
- export declare function computeBoundingBoxFromInstanceMatrixAttributes(attributeFloatValues: Float32Array, byteOffset: number, elementSize: number, elementIndex: number, baseBoundingBox: THREE.Box3, out: THREE.Box3): THREE.Box3;
9
- export declare function computeBoundingBoxFromEllipseValues(radius1: number, radius2: number, height: number, center: THREE.Vector3, out: THREE.Box3): THREE.Box3;
10
- export declare function computeBoundingBoxFromEllipseAttributes(centerAttribute: ParsePrimitiveAttribute, radius1Attribute: ParsePrimitiveAttribute, radius2Attribute: ParsePrimitiveAttribute, heightAttribute: ParsePrimitiveAttribute, attributeFloatValues: Float32Array, elementSize: number, elementIndex: number, out: THREE.Box3): THREE.Box3;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { ParsePrimitiveAttribute } from '@cognite/reveal-parser-worker';
6
+ export declare function computeBoundingBoxFromCenterAndRadiusAttributes(attributeFloatValues: Float32Array, centerAByteOffset: number, centerBByteOffset: number, radiusAByteOffset: number, radiusBByteOffset: number, elementSize: number, elementIndex: number, out: THREE.Box3): THREE.Box3;
7
+ export declare function computeBoundingBoxFromVertexAttributes(vertex1AttributeByteOffset: number, vertex2AttributeByteOffset: number, vertex3AttributeByteOffset: number, vertex4AttributeByteOffset: number, attributeFloatValues: Float32Array, elementSize: number, elementIndex: number, out: THREE.Box3): THREE.Box3;
8
+ export declare function computeBoundingBoxFromInstanceMatrixAttributes(attributeFloatValues: Float32Array, byteOffset: number, elementSize: number, elementIndex: number, baseBoundingBox: THREE.Box3, out: THREE.Box3): THREE.Box3;
9
+ export declare function computeBoundingBoxFromEllipseValues(radius1: number, radius2: number, height: number, center: THREE.Vector3, out: THREE.Box3): THREE.Box3;
10
+ export declare function computeBoundingBoxFromEllipseAttributes(centerAttribute: ParsePrimitiveAttribute, radius1Attribute: ParsePrimitiveAttribute, radius2Attribute: ParsePrimitiveAttribute, heightAttribute: ParsePrimitiveAttribute, attributeFloatValues: Float32Array, elementSize: number, elementIndex: number, out: THREE.Box3): THREE.Box3;
@@ -1,12 +1,12 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- /**
6
- * Sets the elements of a matrix from a row-major
7
- * matrix stored in a Float32Array.
8
- * @param buffer
9
- * @param indexOffset
10
- * @param outMatrix
11
- */
12
- export declare function float32BufferToMatrix(buffer: Float32Array, indexOffset: number, outMatrix: THREE.Matrix4): THREE.Matrix4;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ /**
6
+ * Sets the elements of a matrix from a row-major
7
+ * matrix stored in a Float32Array.
8
+ * @param buffer
9
+ * @param indexOffset
10
+ * @param outMatrix
11
+ */
12
+ export declare function float32BufferToMatrix(buffer: Float32Array, indexOffset: number, outMatrix: THREE.Matrix4): THREE.Matrix4;
@@ -1,74 +1,71 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { SectorMetadata } from '../metadata/types';
6
- /**
7
- * Conversion factors from a given unit to meters.
8
- */
9
- export declare const WellKnownDistanceToMeterConversionFactors: Map<string, number>;
10
- export interface SectorScene {
11
- readonly version: number;
12
- readonly maxTreeIndex: number;
13
- readonly root: SectorMetadata;
14
- readonly unit: string;
15
- readonly sectorCount: number;
16
- getSectorById(sectorId: number): SectorMetadata | undefined;
17
- getSectorsContainingPoint(p: THREE.Vector3): SectorMetadata[];
18
- getSectorsIntersectingBox(b: THREE.Box3): SectorMetadata[];
19
- /**
20
- * Returns bounds that contains "most geometry". This bounds is an
21
- * attempt to remove junk geometry from the bounds to allow e.g. setting
22
- * a good camera position.
23
- */
24
- getBoundsOfMostGeometry(): THREE.Box3;
25
- /**
26
- * Gets the sectors intersecting the frustum provided from the projection and inverse
27
- * camera matrix. Note that this function expects matrices in the the coordinate system
28
- * of the metadata. See below how to convert ThreeJS camera matrices to the correct format.
29
- *
30
- * @example Converting a ThreeJS camera to a frustum
31
- * ```
32
- * const cameraMatrixWorldInverse = camera.matrixWorldInverse;
33
- * const cameraProjectionMatrix = camera.projectionMatrix;
34
- *
35
- * const transformedCameraMatrixWorldInverse =
36
- * new THREE.Matrix4().multiplyMatrices(cameraMatrixWorldInverse, model.modelMatrix)
37
- *
38
- * const intersectingSectors = model.scene.getSectorsIntersectingFrustum(
39
- * cameraProjectionMatrix,
40
- * transformedCameraMatrixWorldInverse
41
- * );
42
- * ```
43
- * @param projectionMatrix
44
- * @param inverseCameraModelMatrix
45
- */
46
- getSectorsIntersectingFrustum(projectionMatrix: THREE.Matrix4, inverseCameraModelMatrix: THREE.Matrix4): SectorMetadata[];
47
- getAllSectors(): SectorMetadata[];
48
- }
49
- export interface SectorMetadataIndexFileSection {
50
- readonly fileName: string;
51
- readonly peripheralFiles: string[];
52
- readonly downloadSize: number;
53
- }
54
- export interface SectorMetadataFacesFileSection {
55
- readonly quadSize: number;
56
- /**
57
- * Coverage factors for the sector without children.
58
- */
59
- readonly coverageFactors: {
60
- xy: number;
61
- yz: number;
62
- xz: number;
63
- };
64
- /**
65
- * Coverage factor for the sectors including children.
66
- */
67
- readonly recursiveCoverageFactors: {
68
- xy: number;
69
- yz: number;
70
- xz: number;
71
- };
72
- readonly fileName: string | null;
73
- readonly downloadSize: number;
74
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { SectorMetadata } from '../metadata/types';
6
+ export declare function getDistanceToMeterConversionFactor(unit: string | undefined): number | undefined;
7
+ export interface SectorScene {
8
+ readonly version: number;
9
+ readonly maxTreeIndex: number;
10
+ readonly root: SectorMetadata;
11
+ readonly unit: string;
12
+ readonly sectorCount: number;
13
+ getSectorById(sectorId: number): SectorMetadata | undefined;
14
+ getSectorsContainingPoint(p: THREE.Vector3): SectorMetadata[];
15
+ getSectorsIntersectingBox(b: THREE.Box3): SectorMetadata[];
16
+ /**
17
+ * Returns bounds that contains "most geometry". This bounds is an
18
+ * attempt to remove junk geometry from the bounds to allow e.g. setting
19
+ * a good camera position.
20
+ */
21
+ getBoundsOfMostGeometry(): THREE.Box3;
22
+ /**
23
+ * Gets the sectors intersecting the frustum provided from the projection and inverse
24
+ * camera matrix. Note that this function expects matrices in the the coordinate system
25
+ * of the metadata. See below how to convert ThreeJS camera matrices to the correct format.
26
+ *
27
+ * @example Converting a ThreeJS camera to a frustum
28
+ * ```
29
+ * const cameraMatrixWorldInverse = camera.matrixWorldInverse;
30
+ * const cameraProjectionMatrix = camera.projectionMatrix;
31
+ *
32
+ * const transformedCameraMatrixWorldInverse =
33
+ * new THREE.Matrix4().multiplyMatrices(cameraMatrixWorldInverse, model.modelMatrix)
34
+ *
35
+ * const intersectingSectors = model.scene.getSectorsIntersectingFrustum(
36
+ * cameraProjectionMatrix,
37
+ * transformedCameraMatrixWorldInverse
38
+ * );
39
+ * ```
40
+ * @param projectionMatrix
41
+ * @param inverseCameraModelMatrix
42
+ */
43
+ getSectorsIntersectingFrustum(projectionMatrix: THREE.Matrix4, inverseCameraModelMatrix: THREE.Matrix4): SectorMetadata[];
44
+ getAllSectors(): SectorMetadata[];
45
+ }
46
+ export interface SectorMetadataIndexFileSection {
47
+ readonly fileName: string;
48
+ readonly peripheralFiles: string[];
49
+ readonly downloadSize: number;
50
+ }
51
+ export interface SectorMetadataFacesFileSection {
52
+ readonly quadSize: number;
53
+ /**
54
+ * Coverage factors for the sector without children.
55
+ */
56
+ readonly coverageFactors: {
57
+ xy: number;
58
+ yz: number;
59
+ xz: number;
60
+ };
61
+ /**
62
+ * Coverage factor for the sectors including children.
63
+ */
64
+ readonly recursiveCoverageFactors: {
65
+ xy: number;
66
+ yz: number;
67
+ xz: number;
68
+ };
69
+ readonly fileName: string | null;
70
+ readonly downloadSize: number;
71
+ }