@cognite/reveal 2.2.2 → 3.0.0-beta.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 (255) hide show
  1. package/core/cad.d.ts +4 -4
  2. package/core/index.d.ts +7 -7
  3. package/core/src/datamodels/base/SupportedModelTypes.d.ts +4 -4
  4. package/core/src/datamodels/base/index.d.ts +6 -6
  5. package/core/src/datamodels/base/types.d.ts +14 -14
  6. package/core/src/datamodels/cad/CadManager.d.ts +43 -45
  7. package/core/src/datamodels/cad/CadModelFactory.d.ts +14 -7
  8. package/core/src/datamodels/cad/CadModelSectorLoadStatistics.d.ts +38 -38
  9. package/core/src/datamodels/cad/createCadManager.d.ts +9 -9
  10. package/core/src/datamodels/cad/picking.d.ts +28 -28
  11. package/core/src/datamodels/cad/rendering/RenderAlreadyLoadedGeometryProvider.d.ts +10 -10
  12. package/core/src/datamodels/cad/sector/CadModelClipper.d.ts +10 -10
  13. package/core/src/datamodels/cad/styling/AssetNodeCollection.d.ts +45 -38
  14. package/core/src/datamodels/cad/styling/InvertedNodeCollection.d.ts +25 -24
  15. package/core/src/datamodels/cad/styling/NodeCollectionDeserializer.d.ts +26 -26
  16. package/core/src/datamodels/cad/styling/PopulateIndexSetFromPagedResponseHelper.d.ts +30 -24
  17. package/core/src/datamodels/cad/styling/PropertyFilterNodeCollection.d.ts +55 -54
  18. package/core/src/datamodels/cad/styling/SinglePropertyFilterNodeCollection.d.ts +51 -50
  19. package/core/src/datamodels/cad/styling/index.d.ts +8 -8
  20. package/core/src/datamodels/pointcloud/PointCloudFactory.d.ts +9 -9
  21. package/core/src/datamodels/pointcloud/PointCloudManager.d.ts +26 -26
  22. package/core/src/datamodels/pointcloud/PointCloudMetadata.d.ts +14 -11
  23. package/core/src/datamodels/pointcloud/PointCloudMetadataRepository.d.ts +14 -13
  24. package/core/src/datamodels/pointcloud/PointCloudNode.d.ts +62 -62
  25. package/core/src/datamodels/pointcloud/PotreeGroupWrapper.d.ts +39 -39
  26. package/core/src/datamodels/pointcloud/PotreeNodeWrapper.d.ts +38 -38
  27. package/core/src/datamodels/pointcloud/createPointCloudManager.d.ts +6 -6
  28. package/core/src/datamodels/pointcloud/index.d.ts +5 -5
  29. package/core/src/datamodels/pointcloud/picking.d.ts +29 -29
  30. package/core/src/datamodels/pointcloud/types.d.ts +114 -114
  31. package/core/src/index.d.ts +21 -19
  32. package/core/src/internals.d.ts +15 -15
  33. package/core/src/migration.d.ts +8 -8
  34. package/core/src/public/RevealManager.d.ts +64 -64
  35. package/core/src/public/createRevealManager.d.ts +23 -23
  36. package/core/src/public/migration/Cognite3DModel.d.ts +339 -339
  37. package/core/src/public/migration/Cognite3DViewer.d.ts +486 -611
  38. package/core/src/public/migration/CogniteModelBase.d.ts +17 -17
  39. package/core/src/public/migration/CognitePointCloudModel.d.ts +121 -121
  40. package/core/src/public/migration/NodeIdAndTreeIndexMaps.d.ts +4 -4
  41. package/core/src/public/migration/NotSupportedInMigrationWrapperError.d.ts +11 -11
  42. package/core/src/public/migration/RenderController.d.ts +4 -4
  43. package/core/src/public/migration/types.d.ts +239 -290
  44. package/core/src/public/types.d.ts +47 -46
  45. package/core/src/storage/RevealManagerHelper.d.ts +58 -58
  46. package/core/src/utilities/BoundingBoxClipper.d.ts +23 -23
  47. package/core/src/utilities/Spinner.d.ts +27 -27
  48. package/core/src/utilities/ViewStateHelper.d.ts +49 -33
  49. package/core/src/utilities/callActionWithIndicesAsync.d.ts +4 -4
  50. package/core/src/utilities/index.d.ts +8 -8
  51. package/core/src/utilities/reflection.d.ts +7 -7
  52. package/core/src/utilities/worldToViewport.d.ts +30 -30
  53. package/core/utilities.d.ts +4 -4
  54. package/extensions/datasource.d.ts +9 -9
  55. package/extensions/datasource.js +9 -12
  56. package/extensions/datasource.map +1 -1
  57. package/index.d.ts +9 -8
  58. package/index.js +219 -124
  59. package/index.map +1 -1
  60. package/package.json +17 -18
  61. package/packages/cad-geometry-loaders/index.d.ts +13 -14
  62. package/packages/cad-geometry-loaders/src/CadLoadingHints.d.ts +11 -11
  63. package/packages/cad-geometry-loaders/src/{CadModelSectorBudget.d.ts → CadModelBudget.d.ts} +21 -26
  64. package/packages/cad-geometry-loaders/src/CadModelUpdateHandler.d.ts +44 -44
  65. package/packages/cad-geometry-loaders/src/sector/ModelStateHandler.d.ts +12 -12
  66. package/packages/cad-geometry-loaders/src/sector/SectorDownloadScheduler.d.ts +22 -0
  67. package/packages/cad-geometry-loaders/src/sector/SectorLoader.d.ts +31 -28
  68. package/packages/cad-geometry-loaders/src/sector/culling/ByScreenSizeSectorCuller.d.ts +23 -0
  69. package/packages/cad-geometry-loaders/src/sector/culling/ByVisibilityGpuSectorCuller.d.ts +51 -53
  70. package/packages/cad-geometry-loaders/src/sector/culling/OccludingGeometryProvider.d.ts +6 -6
  71. package/packages/cad-geometry-loaders/src/sector/culling/OrderSectorsByVisibilityCoverage.d.ts +107 -107
  72. package/packages/cad-geometry-loaders/src/sector/culling/SectorCuller.d.ts +33 -33
  73. package/packages/cad-geometry-loaders/src/sector/culling/WeightFunctionsHelper.d.ts +50 -0
  74. package/packages/cad-geometry-loaders/src/sector/culling/computeNdcAreaOfBox.d.ts +12 -0
  75. package/packages/cad-geometry-loaders/src/sector/culling/computeSectorCost.d.ts +7 -0
  76. package/packages/cad-geometry-loaders/src/sector/culling/createV8SectorCuller.d.ts +7 -0
  77. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenSectorMapBase.d.ts +11 -0
  78. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorMap.d.ts +17 -0
  79. package/packages/cad-geometry-loaders/src/sector/culling/{TakenSectorTree.d.ts → takensectors/TakenV8SectorTree.d.ts} +24 -24
  80. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV9SectorMap.d.ts +20 -0
  81. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/index.d.ts +5 -0
  82. package/packages/cad-geometry-loaders/src/sector/culling/transformBoxToNDC.d.ts +5 -0
  83. package/packages/cad-geometry-loaders/src/sector/culling/types.d.ts +83 -71
  84. package/packages/cad-geometry-loaders/src/sector/rxSectorUtilities.d.ts +12 -12
  85. package/packages/cad-geometry-loaders/src/utilities/PromiseUtils.d.ts +28 -18
  86. package/packages/cad-geometry-loaders/src/utilities/rxOperations.d.ts +6 -6
  87. package/packages/cad-geometry-loaders/src/utilities/types.d.ts +25 -25
  88. package/packages/cad-parsers/index.d.ts +21 -21
  89. package/packages/cad-parsers/src/cad/CadSectorParser.d.ts +15 -15
  90. package/packages/cad-parsers/src/cad/LevelOfDetail.d.ts +8 -8
  91. package/packages/cad-parsers/src/cad/filterInstanceMesh.d.ts +6 -6
  92. package/packages/cad-parsers/src/cad/filterPrimitivesCommon.d.ts +5 -0
  93. package/packages/cad-parsers/src/cad/{filterPrimitives.d.ts → filterPrimitivesV8.d.ts} +9 -9
  94. package/packages/cad-parsers/src/cad/filterPrimitivesV9.d.ts +6 -0
  95. package/packages/cad-parsers/src/cad/primitiveGeometries.d.ts +31 -31
  96. package/packages/cad-parsers/src/cad/triangleMeshes.d.ts +6 -6
  97. package/packages/cad-parsers/src/cad/types.d.ts +56 -56
  98. package/packages/cad-parsers/src/metadata/CadMetadataParser.d.ts +7 -7
  99. package/packages/cad-parsers/src/metadata/CadModelMetadata.d.ts +54 -44
  100. package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +16 -16
  101. package/packages/cad-parsers/src/metadata/MetadataRepository.d.ts +7 -7
  102. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserGltf.d.ts +8 -0
  103. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserV8.d.ts +6 -51
  104. package/packages/cad-parsers/src/metadata/parsers/types.d.ts +62 -0
  105. package/packages/cad-parsers/src/metadata/types.d.ts +53 -41
  106. package/packages/cad-parsers/src/sector/RootSectorNode.d.ts +12 -12
  107. package/packages/cad-parsers/src/sector/SectorNode.d.ts +21 -21
  108. package/packages/cad-parsers/src/utilities/SectorScene.d.ts +21 -21
  109. package/packages/cad-parsers/src/utilities/SectorSceneFactory.d.ts +9 -9
  110. package/packages/cad-parsers/src/utilities/computeBoundingBoxFromAttributes.d.ts +10 -9
  111. package/packages/cad-parsers/src/utilities/float32BufferToMatrix.d.ts +12 -12
  112. package/packages/cad-parsers/src/utilities/types.d.ts +71 -48
  113. package/packages/cad-styling/index.d.ts +14 -9
  114. package/packages/cad-styling/src/CombineNodeCollectionBase.d.ts +34 -31
  115. package/packages/cad-styling/src/IntersectionNodeCollection.d.ts +20 -15
  116. package/packages/cad-styling/src/NodeAppearance.d.ts +85 -62
  117. package/packages/cad-styling/src/NodeAppearanceProvider.d.ts +38 -33
  118. package/packages/cad-styling/src/NodeCollection.d.ts +26 -0
  119. package/packages/cad-styling/src/SerializedNodeCollection.d.ts +8 -0
  120. package/packages/cad-styling/src/TreeIndexNodeCollection.d.ts +40 -23
  121. package/packages/cad-styling/src/UnionNodeCollection.d.ts +19 -15
  122. package/packages/cad-styling/src/prioritized/AreaCollection.d.ts +39 -0
  123. package/packages/cad-styling/src/prioritized/BoxClusterer.d.ts +29 -0
  124. package/packages/cad-styling/src/prioritized/ClusteredAreaCollection.d.ts +17 -0
  125. package/packages/cad-styling/src/prioritized/EmptyAreaCollection.d.ts +18 -0
  126. package/packages/cad-styling/src/prioritized/types.d.ts +7 -0
  127. package/packages/camera-manager/index.d.ts +6 -4
  128. package/packages/camera-manager/src/CameraManager.d.ts +72 -0
  129. package/packages/camera-manager/src/ComboControls.d.ts +112 -100
  130. package/packages/camera-manager/src/DefaultCameraManager.d.ts +138 -0
  131. package/packages/camera-manager/src/Keyboard.d.ts +17 -17
  132. package/packages/camera-manager/src/types.d.ts +78 -0
  133. package/packages/data-source/index.d.ts +6 -6
  134. package/packages/data-source/src/CdfDataSource.d.ts +19 -19
  135. package/packages/data-source/src/DataSource.d.ts +25 -26
  136. package/packages/data-source/src/LocalDataSource.d.ts +15 -15
  137. package/packages/logger/index.d.ts +5 -5
  138. package/packages/logger/src/Log.d.ts +5 -5
  139. package/packages/metrics/index.d.ts +5 -5
  140. package/packages/metrics/src/MetricsLogger.d.ts +21 -21
  141. package/packages/metrics/src/types.d.ts +7 -7
  142. package/packages/modeldata-api/index.d.ts +13 -13
  143. package/packages/modeldata-api/src/CdfModelDataProvider.d.ts +17 -15
  144. package/packages/modeldata-api/src/CdfModelIdentifier.d.ts +15 -17
  145. package/packages/modeldata-api/src/CdfModelMetadataProvider.d.ts +20 -19
  146. package/packages/modeldata-api/src/CdfModelOutputsProvider.d.ts +16 -15
  147. package/packages/modeldata-api/src/LocalModelDataProvider.d.ts +10 -10
  148. package/packages/modeldata-api/src/LocalModelIdentifier.d.ts +14 -14
  149. package/packages/modeldata-api/src/LocalModelMetadataProvider.d.ts +16 -14
  150. package/packages/modeldata-api/src/Model3DOutputList.d.ts +17 -17
  151. package/packages/modeldata-api/src/ModelIdentifier.d.ts +12 -12
  152. package/packages/modeldata-api/src/ModelMetadataProvider.d.ts +18 -17
  153. package/packages/modeldata-api/src/applyDefaultModelTransformation.d.ts +6 -6
  154. package/packages/modeldata-api/src/types.d.ts +47 -41
  155. package/packages/modeldata-api/src/utilities.d.ts +7 -7
  156. package/packages/nodes-api/index.d.ts +6 -6
  157. package/packages/nodes-api/src/NodesApiClient.d.ts +50 -52
  158. package/packages/nodes-api/src/NodesCdfClient.d.ts +24 -24
  159. package/packages/nodes-api/src/NodesLocalClient.d.ts +30 -30
  160. package/packages/nodes-api/src/types.d.ts +10 -10
  161. package/packages/rendering/index.d.ts +17 -17
  162. package/packages/rendering/src/CadMaterialManager.d.ts +37 -37
  163. package/packages/rendering/src/GeometryBatchingManager.d.ts +30 -0
  164. package/packages/rendering/src/InstancedMeshManager.d.ts +20 -20
  165. package/packages/rendering/src/rendering/EffectRenderManager.d.ts +99 -99
  166. package/packages/rendering/src/rendering/NodeAppearanceTextureBuilder.d.ts +51 -51
  167. package/packages/rendering/src/rendering/RenderMode.d.ts +15 -15
  168. package/packages/rendering/src/rendering/createSimpleGeometryMesh.d.ts +6 -6
  169. package/packages/rendering/src/rendering/matCapTextureData.d.ts +5 -5
  170. package/packages/rendering/src/rendering/materials.d.ts +23 -23
  171. package/packages/rendering/src/rendering/primitives.d.ts +12 -12
  172. package/packages/rendering/src/rendering/shaders.d.ts +101 -101
  173. package/packages/rendering/src/rendering/types.d.ts +76 -76
  174. package/packages/rendering/src/sector/CadNode.d.ts +57 -54
  175. package/packages/rendering/src/transform/NodeTransformProvider.d.ts +13 -13
  176. package/packages/rendering/src/transform/NodeTransformTextureBuilder.d.ts +23 -23
  177. package/packages/rendering/src/transform/TransformOverrideBuffer.d.ts +21 -21
  178. package/packages/rendering/src/utilities/types.d.ts +26 -26
  179. package/packages/sector-loader/index.d.ts +6 -0
  180. package/packages/sector-loader/src/GltfSectorLoader.d.ts +12 -0
  181. package/packages/sector-loader/src/GltfSectorRepository.d.ts +19 -0
  182. package/packages/sector-loader/src/SectorRepository.d.ts +10 -0
  183. package/packages/{cad-geometry-loaders/src/sector/CachedRepository.d.ts → sector-loader/src/V8SectorRepository.d.ts} +26 -25
  184. package/packages/{cad-geometry-loaders/src/sector → sector-loader/src/v8}/SimpleAndDetailedToSector3D.d.ts +20 -20
  185. package/packages/{cad-geometry-loaders/src/utilities → sector-loader/src/v8}/arrays.d.ts +5 -5
  186. package/packages/{cad-geometry-loaders/src/utilities → sector-loader/src/v8}/groupMeshesByNumber.d.ts +8 -8
  187. package/packages/sector-loader/src/v8/sectorUtilities.d.ts +16 -0
  188. package/packages/sector-parser/index.d.ts +5 -0
  189. package/packages/sector-parser/src/DracoDecoderHelper.d.ts +32 -0
  190. package/packages/sector-parser/src/GltfSectorParser.d.ts +19 -0
  191. package/packages/sector-parser/src/constants.d.ts +6 -0
  192. package/packages/sector-parser/src/reveal-glb-parser/GlbMetadataParser.d.ts +14 -0
  193. package/packages/sector-parser/src/reveal-glb-parser/primitiveGeometries.d.ts +12 -0
  194. package/packages/sector-parser/src/types.d.ts +106 -0
  195. package/packages/tools/index.d.ts +15 -15
  196. package/packages/tools/src/AxisView/AxisViewTool.d.ts +32 -32
  197. package/packages/tools/src/AxisView/types.d.ts +98 -98
  198. package/packages/tools/src/Cognite3DViewerToolBase.d.ts +25 -25
  199. package/packages/tools/src/DebugCameraTool.d.ts +20 -20
  200. package/packages/tools/src/DebugLoadedSectorsTool.d.ts +23 -23
  201. package/packages/tools/src/ExplodedViewTool.d.ts +12 -12
  202. package/packages/tools/src/Geomap/Geomap.d.ts +17 -17
  203. package/packages/tools/src/Geomap/GeomapTool.d.ts +23 -24
  204. package/packages/tools/src/Geomap/MapConfig.d.ts +195 -195
  205. package/packages/tools/src/HtmlOverlay/BucketGrid2D.d.ts +28 -28
  206. package/packages/tools/src/HtmlOverlay/HtmlOverlayTool.d.ts +160 -159
  207. package/packages/tools/src/Timeline/Keyframe.d.ts +39 -38
  208. package/packages/tools/src/Timeline/TimelineTool.d.ts +79 -79
  209. package/packages/tools/src/Timeline/types.d.ts +13 -13
  210. package/packages/tools/src/types.d.ts +4 -4
  211. package/packages/utilities/index.d.ts +30 -24
  212. package/packages/utilities/src/CameraConfiguration.d.ts +10 -10
  213. package/packages/utilities/src/DeferredPromise.d.ts +17 -0
  214. package/packages/utilities/src/IndexSet.d.ts +1 -1
  215. package/packages/utilities/src/NumericRange.d.ts +22 -22
  216. package/packages/utilities/src/RandomColors.d.ts +34 -34
  217. package/packages/utilities/src/WebGLRendererStateHelper.d.ts +15 -15
  218. package/packages/utilities/src/assertNever.d.ts +7 -7
  219. package/packages/utilities/src/cache/MemoryRequestCache.d.ts +24 -22
  220. package/packages/utilities/src/cache/MostFrequentlyUsedCache.d.ts +19 -19
  221. package/packages/utilities/src/cache/RequestCache.d.ts +13 -13
  222. package/packages/utilities/src/calculateVolumeOfMesh.d.ts +4 -0
  223. package/packages/utilities/src/counterMap.d.ts +5 -0
  224. package/packages/utilities/src/datastructures/DynamicDefragmentedBuffer.d.ts +33 -22
  225. package/packages/utilities/src/determinePowerOfTwoDimensions.d.ts +11 -11
  226. package/packages/utilities/src/disposeAttributeArrayOnUpload.d.ts +17 -17
  227. package/packages/utilities/src/events/EventTrigger.d.ts +13 -13
  228. package/packages/utilities/src/events/InputHandler.d.ts +34 -0
  229. package/packages/utilities/src/events/clickOrTouchEventOffset.d.ts +13 -13
  230. package/packages/utilities/src/events/index.d.ts +6 -5
  231. package/packages/utilities/src/indexset/IndexSet.d.ts +26 -26
  232. package/packages/utilities/src/indexset/IntermediateIndexNode.d.ts +26 -26
  233. package/packages/utilities/src/indexset/LeafIndexNode.d.ts +16 -16
  234. package/packages/utilities/src/isMobileOrTablet.d.ts +4 -4
  235. package/packages/utilities/src/networking/isTheSameDomain.d.ts +11 -11
  236. package/packages/utilities/src/objectTraversal.d.ts +8 -8
  237. package/packages/utilities/src/packFloat.d.ts +6 -6
  238. package/packages/utilities/src/revealEnv.d.ts +10 -10
  239. package/packages/utilities/src/three/AutoDisposeGroup.d.ts +17 -17
  240. package/packages/utilities/src/three/BoundingBoxLOD.d.ts +27 -27
  241. package/packages/utilities/src/three/isBox3OnPositiveSideOfPlane.d.ts +10 -0
  242. package/packages/utilities/src/three/toThreeBox3.d.ts +6 -0
  243. package/packages/utilities/src/three/unionBoxes.d.ts +5 -0
  244. package/packages/utilities/src/three/visitBox3CornerPoints.d.ts +12 -0
  245. package/packages/utilities/src/transformCameraConfiguration.d.ts +6 -6
  246. package/packages/utilities/src/types.d.ts +11 -10
  247. package/packages/utilities/src/workers/WorkerPool.d.ts +14 -14
  248. package/tools.d.ts +7 -7
  249. package/tools.js +82 -68
  250. package/tools.map +1 -1
  251. package/packages/cad-geometry-loaders/src/sector/Repository.d.ts +0 -9
  252. package/packages/cad-geometry-loaders/src/sector/sectorUtilities.d.ts +0 -20
  253. package/packages/cad-styling/src/NodeCollectionBase.d.ts +0 -47
  254. package/packages/rendering/src/cameraconfig.d.ts +0 -12
  255. package/packages/utilities/src/three/getBox3CornerPoints.d.ts +0 -5
@@ -1,58 +1,58 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { AddModelOptions } from '../public/migration/types';
6
- import { RevealOptions } from '../public/types';
7
- import { PointCloudNode, RevealManager } from '../internals';
8
- import { DataSource } from '../../../packages/data-source';
9
- import { CadNode } from '../../../packages/rendering';
10
- import { CogniteClient } from '@cognite/sdk';
11
- /**
12
- * Helper for {@link RevealManager} for creating a uniform interface for
13
- * working with instances that fetch models from CDF or instances that fetch
14
- * models from local storage (i.e. in development/debugging).
15
- */
16
- export declare class RevealManagerHelper {
17
- private readonly _revealManager;
18
- addCadModel: (model: AddModelOptions) => Promise<CadNode>;
19
- addPointCloudModel: (model: AddModelOptions) => Promise<PointCloudNode>;
20
- private constructor();
21
- private constructor();
22
- /**
23
- * Create helper for RevealManager that loads models from local storage. This is only
24
- * meant for use in debugging and development.
25
- * @param renderer
26
- * @param scene
27
- * @param revealOptions
28
- */
29
- static createLocalHelper(renderer: THREE.WebGLRenderer, scene: THREE.Scene, revealOptions: RevealOptions): RevealManagerHelper;
30
- /**
31
- * Creates a helper for RevealManager that loads models from CDF.
32
- * @param renderer
33
- * @param scene
34
- * @param revealOptions
35
- * @param sdkClient
36
- */
37
- static createCdfHelper(renderer: THREE.WebGLRenderer, scene: THREE.Scene, revealOptions: RevealOptions, sdkClient: CogniteClient): RevealManagerHelper;
38
- static createCustomDataSourceHelper(renderer: THREE.WebGLRenderer, scene: THREE.Scene, revealOptions: RevealOptions, dataSource: DataSource): RevealManagerHelper;
39
- get revealManager(): RevealManager;
40
- /**
41
- * Adds a local CAD model.
42
- * @param model
43
- * @param revealManager
44
- */
45
- private static addLocalCadModel;
46
- /**
47
- * Adds a CDF hosted CAD model.
48
- * @param model
49
- * @param revealManager
50
- */
51
- private static addCdfCadModel;
52
- /**
53
- * Add a CDF hosted point cloud model.
54
- * @param model
55
- * @param revealManager
56
- */
57
- private static addCdfPointCloudModel;
58
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { AddModelOptions } from '../public/migration/types';
6
+ import { RevealOptions } from '../public/types';
7
+ import { PointCloudNode, RevealManager } from '../internals';
8
+ import { DataSource } from '../../../packages/data-source';
9
+ import { CadNode } from '../../../packages/rendering';
10
+ import { CogniteClient } from '@cognite/sdk';
11
+ /**
12
+ * Helper for {@link RevealManager} for creating a uniform interface for
13
+ * working with instances that fetch models from CDF or instances that fetch
14
+ * models from local storage (i.e. in development/debugging).
15
+ */
16
+ export declare class RevealManagerHelper {
17
+ private readonly _revealManager;
18
+ addCadModel: (model: AddModelOptions) => Promise<CadNode>;
19
+ addPointCloudModel: (model: AddModelOptions) => Promise<PointCloudNode>;
20
+ private constructor();
21
+ private constructor();
22
+ /**
23
+ * Create helper for RevealManager that loads models from local storage. This is only
24
+ * meant for use in debugging and development.
25
+ * @param renderer
26
+ * @param scene
27
+ * @param revealOptions
28
+ */
29
+ static createLocalHelper(renderer: THREE.WebGLRenderer, scene: THREE.Scene, revealOptions: RevealOptions): RevealManagerHelper;
30
+ /**
31
+ * Creates a helper for RevealManager that loads models from CDF.
32
+ * @param renderer
33
+ * @param scene
34
+ * @param revealOptions
35
+ * @param sdkClient
36
+ */
37
+ static createCdfHelper(renderer: THREE.WebGLRenderer, scene: THREE.Scene, revealOptions: RevealOptions, sdkClient: CogniteClient): RevealManagerHelper;
38
+ static createCustomDataSourceHelper(renderer: THREE.WebGLRenderer, scene: THREE.Scene, revealOptions: RevealOptions, dataSource: DataSource): RevealManagerHelper;
39
+ get revealManager(): RevealManager;
40
+ /**
41
+ * Adds a local CAD model.
42
+ * @param model
43
+ * @param revealManager
44
+ */
45
+ private static addLocalCadModel;
46
+ /**
47
+ * Adds a CDF hosted CAD model.
48
+ * @param model
49
+ * @param revealManager
50
+ */
51
+ private static addCdfCadModel;
52
+ /**
53
+ * Add a CDF hosted point cloud model.
54
+ * @param model
55
+ * @param revealManager
56
+ */
57
+ private static addCdfPointCloudModel;
58
+ }
@@ -1,23 +1,23 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- export declare class BoundingBoxClipper {
6
- private readonly _box;
7
- private readonly _clippingPlanes;
8
- constructor(box?: THREE.Box3);
9
- set minX(x: number);
10
- get minX(): number;
11
- set minY(y: number);
12
- get minY(): number;
13
- set minZ(z: number);
14
- get minZ(): number;
15
- set maxX(x: number);
16
- get maxX(): number;
17
- set maxY(y: number);
18
- get maxY(): number;
19
- set maxZ(z: number);
20
- get maxZ(): number;
21
- private updatePlanes;
22
- get clippingPlanes(): THREE.Plane[];
23
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ export declare class BoundingBoxClipper {
6
+ private readonly _box;
7
+ private readonly _clippingPlanes;
8
+ constructor(box?: THREE.Box3);
9
+ set minX(x: number);
10
+ get minX(): number;
11
+ set minY(y: number);
12
+ get minY(): number;
13
+ set minZ(z: number);
14
+ get minZ(): number;
15
+ set maxX(x: number);
16
+ get maxX(): number;
17
+ set maxY(y: number);
18
+ get maxY(): number;
19
+ set maxZ(z: number);
20
+ get maxZ(): number;
21
+ private updatePlanes;
22
+ get clippingPlanes(): THREE.Plane[];
23
+ }
@@ -1,27 +1,27 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- export declare type Corner = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';
6
- export declare class Spinner {
7
- private static readonly stylesId;
8
- private static readonly classnames;
9
- private static readonly titles;
10
- private _loading;
11
- private static loadStyles;
12
- private readonly el;
13
- constructor(parent: HTMLElement);
14
- set placement(placement: Corner);
15
- set opacity(fractionOpacity: number);
16
- get loading(): boolean;
17
- set loading(loadingState: boolean);
18
- /**
19
- * Pass background cover of the viewer to adjust Logo color
20
- * @param color
21
- * @param color.r 0..1 red
22
- * @param color.g 0..1 green
23
- * @param color.b 0..1 blue
24
- */
25
- updateBackgroundColor(color: Pick<THREE.Color, 'getHSL'>): void;
26
- dispose(): void;
27
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ export declare type Corner = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';
6
+ export declare class Spinner {
7
+ private static readonly stylesId;
8
+ private static readonly classnames;
9
+ private static readonly titles;
10
+ private _loading;
11
+ private static loadStyles;
12
+ private readonly el;
13
+ constructor(parent: HTMLElement);
14
+ set placement(placement: Corner);
15
+ set opacity(fractionOpacity: number);
16
+ get loading(): boolean;
17
+ set loading(loadingState: boolean);
18
+ /**
19
+ * Pass background cover of the viewer to adjust Logo color
20
+ * @param color
21
+ * @param color.r 0..1 red
22
+ * @param color.g 0..1 green
23
+ * @param color.b 0..1 blue
24
+ */
25
+ updateBackgroundColor(color: Pick<THREE.Color, 'getHSL'>): void;
26
+ dispose(): void;
27
+ }
@@ -1,33 +1,49 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { Cognite3DViewer } from '../public/migration/Cognite3DViewer';
6
- import { NodeAppearance } from '../../../packages/cad-styling';
7
- import { CogniteClient } from '@cognite/sdk';
8
- export declare type ViewerState = {
9
- camera: {
10
- position: THREE.Vector3;
11
- target: THREE.Vector3;
12
- };
13
- models: ModelState[];
14
- };
15
- export declare type ModelState = {
16
- defaultNodeAppearance: NodeAppearance;
17
- modelId: number;
18
- revisionId: number;
19
- styledSets: {
20
- token: string;
21
- state: any;
22
- options?: any;
23
- appearance: NodeAppearance;
24
- }[];
25
- };
26
- export declare class ViewStateHelper {
27
- private readonly _cameraControls;
28
- private readonly _viewer;
29
- private readonly _cdfClient;
30
- constructor(viewer: Cognite3DViewer, cdfClient: CogniteClient);
31
- getCurrentState(): ViewerState;
32
- setState(viewerState: ViewerState): Promise<void>;
33
- }
1
+ import { Cognite3DViewer } from '../public/migration/Cognite3DViewer';
2
+ import { NodeAppearance } from '../../../packages/cad-styling';
3
+ import { CogniteClient } from '@cognite/sdk';
4
+ export declare type ViewerState = {
5
+ camera?: {
6
+ position: {
7
+ x: number;
8
+ y: number;
9
+ z: number;
10
+ };
11
+ target: {
12
+ x: number;
13
+ y: number;
14
+ z: number;
15
+ };
16
+ };
17
+ models?: ModelState[];
18
+ clippingPlanes?: ClippingPlanesState[];
19
+ };
20
+ export declare type ClippingPlanesState = {
21
+ nx: number;
22
+ ny: number;
23
+ nz: number;
24
+ constant: number;
25
+ };
26
+ export declare type ModelState = {
27
+ defaultNodeAppearance: NodeAppearance;
28
+ modelId: number;
29
+ revisionId: number;
30
+ styledSets: {
31
+ token: string;
32
+ state: any;
33
+ options?: any;
34
+ appearance: NodeAppearance;
35
+ }[];
36
+ };
37
+ export declare class ViewStateHelper {
38
+ private readonly _cameraManager;
39
+ private readonly _viewer;
40
+ private readonly _cdfClient;
41
+ constructor(viewer: Cognite3DViewer, cdfClient: CogniteClient);
42
+ getCurrentState(): ViewerState;
43
+ setState(viewerState: ViewerState): Promise<void>;
44
+ private getModelsState;
45
+ private getClippingPlanesState;
46
+ private setCameraFromState;
47
+ private setModelState;
48
+ private setClippingPlanesState;
49
+ }
@@ -1,4 +1,4 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- export declare function callActionWithIndicesAsync(startIndex: number, lastIndexInclusive: number, action: (index: number) => any, timesPerChunk?: number): Promise<void>;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export declare function callActionWithIndicesAsync(startIndex: number, lastIndexInclusive: number, action: (index: number) => any, timesPerChunk?: number): Promise<void>;
@@ -1,8 +1,8 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- export { worldToViewportCoordinates, worldToNormalizedViewportCoordinates } from './worldToViewport';
5
- export { BoundingBoxClipper } from './BoundingBoxClipper';
6
- export { assertNever, EventTrigger } from '../../../packages/utilities';
7
- export { LoadingState } from '../../../packages/cad-geometry-loaders';
8
- export { LocalModelIdentifier, CdfModelIdentifier } from '../../../packages/modeldata-api';
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export { worldToViewportCoordinates, worldToNormalizedViewportCoordinates } from './worldToViewport';
5
+ export { BoundingBoxClipper } from './BoundingBoxClipper';
6
+ export { assertNever, EventTrigger } from '../../../packages/utilities';
7
+ export { LoadingState } from '../../../packages/cad-geometry-loaders';
8
+ export { LocalModelIdentifier, CdfModelIdentifier } from '../../../packages/modeldata-api';
@@ -1,7 +1,7 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- /**
5
- * Retrieves the property type of a single property of a type.
6
- */
7
- export declare type PropType<TObj, TProp extends keyof TObj> = TObj[TProp];
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ /**
5
+ * Retrieves the property type of a single property of a type.
6
+ */
7
+ export declare type PropType<TObj, TProp extends keyof TObj> = TObj[TProp];
@@ -1,30 +1,30 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- /**
6
- * Maps from 3D world coordinates to normalized screen coordinates
7
- * relative to the canvas being rendered to. X and Y will
8
- * be in range [0, 1]. Z is in range [-1, 1] if the coordinate
9
- * is inside the camera near and far planes.
10
- * @param camera Camera used to project point from 3D to NDC coordinates
11
- * @param position3D World position in 3D
12
- * @param out Optionally pre-allocated THREE.Vector3
13
- * @returns Relative screen coordinates in X, Y and Z in range [-1, 1] if point
14
- * is within near/far of camera.
15
- */
16
- export declare function worldToNormalizedViewportCoordinates(camera: THREE.PerspectiveCamera, position3D: THREE.Vector3, out?: THREE.Vector3): THREE.Vector3;
17
- /**
18
- * Maps from 3D world coordinates to screen coordinates
19
- * relative to the canvas. X and Y will be in absolute
20
- * coordinates (0,0 being the top left of the canvas). Z is
21
- * in range [-1, 1] if the coordinate
22
- * is inside the camera near and far planes.
23
- * @param renderer Renderer used to render the "world"
24
- * @param camera Camera used to project point from 3D to NDC coordinates
25
- * @param position3D World position in 3D
26
- * @param out Optionally pre-allocated THREE.Vector3
27
- * @returns Relative screen coordinates in X, Y and Z in range [-1, 1] if point
28
- * is within near/far of camera.
29
- */
30
- export declare function worldToViewportCoordinates(renderer: THREE.WebGLRenderer, camera: THREE.PerspectiveCamera, position3D: THREE.Vector3, out?: THREE.Vector3): THREE.Vector3;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ /**
6
+ * Maps from 3D world coordinates to normalized screen coordinates
7
+ * relative to the canvas being rendered to. X and Y will
8
+ * be in range [0, 1]. Z is in range [-1, 1] if the coordinate
9
+ * is inside the camera near and far planes.
10
+ * @param camera Camera used to project point from 3D to NDC coordinates
11
+ * @param position3D World position in 3D
12
+ * @param out Optionally pre-allocated THREE.Vector3
13
+ * @returns Relative screen coordinates in X, Y and Z in range [-1, 1] if point
14
+ * is within near/far of camera.
15
+ */
16
+ export declare function worldToNormalizedViewportCoordinates(camera: THREE.PerspectiveCamera, position3D: THREE.Vector3, out?: THREE.Vector3): THREE.Vector3;
17
+ /**
18
+ * Maps from 3D world coordinates to screen coordinates
19
+ * relative to the canvas. X and Y will be in absolute
20
+ * coordinates (0,0 being the top left of the canvas). Z is
21
+ * in range [-1, 1] if the coordinate
22
+ * is inside the camera near and far planes.
23
+ * @param renderer Renderer used to render the "world"
24
+ * @param camera Camera used to project point from 3D to NDC coordinates
25
+ * @param position3D World position in 3D
26
+ * @param out Optionally pre-allocated THREE.Vector3
27
+ * @returns Relative screen coordinates in X, Y and Z in range [-1, 1] if point
28
+ * is within near/far of camera.
29
+ */
30
+ export declare function worldToViewportCoordinates(renderer: THREE.WebGLRenderer, camera: THREE.PerspectiveCamera, position3D: THREE.Vector3, out?: THREE.Vector3): THREE.Vector3;
@@ -1,4 +1,4 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- export * from './src/utilities';
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export * from './src/utilities';
@@ -1,9 +1,9 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- /**
5
- * @module @cognite/reveal/extensions/datasource
6
- */
7
- export { DataSource } from '../packages/data-source';
8
- export { NodesApiClient } from '../packages/nodes-api';
9
- export { ModelIdentifier, CdfModelIdentifier, ModelMetadataProvider, ModelDataProvider } from '../packages/modeldata-api';
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ /**
5
+ * @module @cognite/reveal/extensions/datasource
6
+ */
7
+ export { DataSource } from '../packages/data-source';
8
+ export { NodesApiClient } from '../packages/nodes-api';
9
+ export { ModelIdentifier, CdfModelIdentifier, ModelMetadataProvider, ModelDataProvider, BlobOutputMetadata, File3dFormat } from '../packages/modeldata-api';
@@ -1,33 +1,30 @@
1
- !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r=e();for(var o in r)("object"==typeof exports?exports:t)[o]=r[o]}}("undefined"!=typeof self?self:this,(function(){return function(t){var e={};function r(o){if(e[o])return e[o].exports;var n=e[o]={i:o,l:!1,exports:{}};return t[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,o){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)r.d(o,n,function(e){return t[e]}.bind(null,n));return o},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="https://apps-cdn.cogniteapp.com/@cognite/reveal-parser-worker/1.2.0/",r(r.s=63)}({0:function(t,e){t.exports=require("three")},16:function(t,e){t.exports=require("@cognite/sdk-core")},6:function(t,e,r){"use strict";r.d(e,"a",(function(){return o})),r.d(e,"b",(function(){return n})),r.d(e,"c",(function(){return l})),r.d(e,"d",(function(){return d})),r.d(e,"f",(function(){return m})),r.d(e,"g",(function(){return h})),r.d(e,"h",(function(){return v})),r.d(e,"e",(function(){return i}));class o{constructor(t){this.client=t}get headers(){return this.client.getDefaultRequestHeaders()}async getBinaryFile(t,e){const r=`${t}/${e}`,o={...this.client.getDefaultRequestHeaders(),Accept:"*/*"};return(await async function(t,e,r=3){let o;for(let n=0;n<r;n++)try{return await fetch(t,e)}catch(t){void 0!==o&&(o=t)}throw o}(r,{headers:o,method:"GET"})).arrayBuffer()}async getJsonFile(t,e){return(await this.client.get(`${t}/${e}`)).data}}class n{constructor(t,e,r){this.revealInternalId=Symbol(`${t}/${e}[${r}]`),this.modelId=t,this.revisionId=e,this.modelFormat=r}toString(){return`${n.name} (${String(this.revealInternalId)} - ${this.modelFormat})`}}var i,s=r(0);
1
+ !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r=e();for(var n in r)("object"==typeof exports?exports:t)[n]=r[n]}}("undefined"!=typeof self?self:this,(function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)r.d(n,o,function(e){return t[e]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="https://apps-cdn.cogniteapp.com/@cognite/reveal-parser-worker/1.3.0/",r(r.s=75)}({0:function(t,e){t.exports=require("three")},21:function(t,e){t.exports=require("@cognite/sdk-core")},5:function(t,e,r){"use strict";r.d(e,"a",(function(){return n})),r.d(e,"b",(function(){return o})),r.d(e,"c",(function(){return u})),r.d(e,"e",(function(){return f})),r.d(e,"f",(function(){return h})),r.d(e,"g",(function(){return m})),r.d(e,"d",(function(){return i}));class n{constructor(t){this.client=t,this.authenticationPromise=t.authenticate()}get headers(){return this.client.getDefaultRequestHeaders()}async getBinaryFile(t,e){const r=`${t}/${e}`,n={...this.client.getDefaultRequestHeaders(),Accept:"*/*"};return(await this.fetchWithRetry(r,{headers:n,method:"GET"}).catch(t=>{throw Error("Could not download binary file")})).arrayBuffer()}async getJsonFile(t,e){return(await this.client.get(`${t}/${e}`).catch(t=>{throw Error("Could not download Json file")})).data}async fetchWithRetry(t,e,r=3){let n;for(let o=0;o<r;o++)try{await this.authenticationPromise;const r=await fetch(t,e);if(401===r.status){this.authenticationPromise=this.client.authenticate();continue}return r}catch(t){void 0!==n&&(n=t)}throw n}}class o{constructor(t,e){this.revealInternalId=Symbol(`${t}/${e}`),this.modelId=t,this.revisionId=e}toString(){return`${o.name} (${String(this.revealInternalId)})`}}var i,a=r(0);
2
2
  /*!
3
3
  * Copyright 2021 Cognite AS
4
- */!function(t){t.EptPointCloud="ept-pointcloud",t.RevealCadModel="reveal-directory",t.AnyFormat="all-outputs"}(i||(i={}));
4
+ */!function(t){t.EptPointCloud="ept-pointcloud",t.RevealCadModel="reveal-directory",t.GltfCadModel="gltf-directory",t.AnyFormat="all-outputs"}(i||(i={}));
5
5
  /*!
6
6
  * Copyright 2021 Cognite AS
7
7
  */
8
- const a=(new s.Matrix4).set(1,0,0,0,0,0,1,0,0,-1,0,0,0,0,0,1);function u(t,e){switch(e){case i.RevealCadModel:t.premultiply(a);break;case i.EptPointCloud:break;default:throw new Error("Unknown model format '"+e)}}
8
+ const s=(new a.Matrix4).set(1,0,0,0,0,0,1,0,0,-1,0,0,0,0,0,1);function c(t,e){switch(e){case i.RevealCadModel:case i.GltfCadModel:t.premultiply(s);break;case i.EptPointCloud:break;default:throw new Error("Unknown model format '"+e)}}
9
9
  /*!
10
10
  * Copyright 2021 Cognite AS
11
- */class c{constructor(t,e,r){this.modelId=t,this.revisionId=e,this.outputs=r}findMostRecentOutput(t,e){const r=this.outputs.filter(r=>r.format===t&&(!e||-1!==e.indexOf(r.version)));return r.length>0?r.reduce((t,e)=>e.version>t.version?e:t):void 0}}
11
+ */class u{constructor(t){this._client=t}async getModelMatrix(t,e){if(!(t instanceof o))throw new Error(`Model must be a ${o.name}, but got ${t.toString()}`);const{modelId:r,revisionId:n}=t,i=await this._client.revisions3D.retrieve(r,n),s=new a.Matrix4;return i.rotation&&s.makeRotationFromEuler(new a.Euler(...i.rotation)),c(s,e),s}async getModelCamera(t){if(!(t instanceof o))throw new Error(`Model must be a ${o.name}, but got ${t.toString()}`);const{modelId:e,revisionId:r}=t,n=await this._client.revisions3D.retrieve(e,r);if(n.camera&&n.camera.position&&n.camera.target){const{position:t,target:e}=n.camera;return{position:new a.Vector3(t[0],t[1],t[2]),target:new a.Vector3(e[0],e[1],e[2])}}}async getModelUri(t,e){if(!(t instanceof o))throw new Error(`Model must be a ${o.name}, but got ${t.toString()}`);return`${this._client.getBaseUrl()}${this.getRequestPath(e.blobId)}`}async getModelOutputs(t){if(!(t instanceof o))throw new Error(`Model must be a ${o.name}, but got ${t.toString()}`);const{modelId:e,revisionId:r}=t,n=`/api/v1/projects/${this._client.project}/3d/models/${e}/revisions/${r}/outputs`,a=await this._client.get(n,{params:{format:i.AnyFormat}});if(200===a.status)return a.data.items.filter(t=>Object.values(i).includes(t.format));throw new Error(`Unexpected response ${a.status} (payload: '${a.data})`)}getRequestPath(t){return`/api/v1/projects/${this._client.project}/3d/files/${t}`}}
12
12
  /*!
13
13
  * Copyright 2021 Cognite AS
14
- */class l{constructor(t){this._client=t}async getModelMatrix(t){if(!(t instanceof n))throw new Error(`Model must be a ${n.name}, but got ${t.toString()}`);const{modelId:e,revisionId:r,modelFormat:o}=t,i=await this._client.revisions3D.retrieve(e,r),a=new s.Matrix4;return i.rotation&&a.makeRotationFromEuler(new s.Euler(...i.rotation)),u(a,o),a}async getModelCamera(t){if(!(t instanceof n))throw new Error(`Model must be a ${n.name}, but got ${t.toString()}`);const{modelId:e,revisionId:r}=t,o=await this._client.revisions3D.retrieve(e,r);if(o.camera&&o.camera.position&&o.camera.target){const{position:t,target:e}=o.camera;return{position:new s.Vector3(t[0],t[1],t[2]),target:new s.Vector3(e[0],e[1],e[2])}}}async getModelUri(t){if(!(t instanceof n))throw new Error(`Model must be a ${n.name}, but got ${t.toString()}`);const{modelId:e,revisionId:r,modelFormat:o}=t,i=(await this.getOutputs(t)).findMostRecentOutput(o);if(!i)throw new Error(`Model '${e}/${r}' is not compatible with this version of Reveal, because no outputs for format '(${o})' was found. If this model works with a previous version of Reveal it must be reprocessed to support this version.`);const s=i.blobId;return`${this._client.getBaseUrl()}${this.getRequestPath(s)}`}async getOutputs(t){const{modelId:e,revisionId:r,modelFormat:o}=t,n=`/api/v1/projects/${this._client.project}/3d/models/${e}/revisions/${r}/outputs`,i=void 0!==o?{params:{format:o}}:void 0,s=await this._client.get(n,i);if(200===s.status)return new c(e,r,s.data.items);throw new Error(`Unexpected response ${s.status} (payload: '${s.data})`)}getRequestPath(t){return`/api/v1/projects/${this._client.project}/3d/files/${t}`}}
14
+ */var l=r(21);
15
15
  /*!
16
16
  * Copyright 2021 Cognite AS
17
- */class d{constructor(t){this._client=t}async getOutputs(t){const{modelId:e,revisionId:r,modelFormat:o}=t,n=`/api/v1/projects/${this._client.project}/3d/models/${e}/revisions/${r}/outputs`,i=void 0!==o?{params:{format:o}}:void 0,s=await this._client.get(n,i);if(200===s.status)return new c(e,r,s.data.items);throw new Error(`Unexpected response ${s.status} (payload: '${s.data})`)}}var f=r(16);
17
+ */async function d(t){const e=await fetch(t);if(!e.ok){const t={};throw e.headers.forEach((e,r)=>{t[e]=r}),new l.HttpError(e.status,e.body,t)}return e}
18
18
  /*!
19
19
  * Copyright 2021 Cognite AS
20
- */async function p(t){const e=await fetch(t);if(!e.ok){const t={};throw e.headers.forEach((e,r)=>{t[e]=r}),new f.HttpError(e.status,e.body,t)}return e}
21
- /*!
22
- * Copyright 2021 Cognite AS
23
- */class m{get headers(){return{}}async getBinaryFile(t,e){return(await p(`${t}/${e}`)).arrayBuffer()}async getJsonFile(t,e){return(await p(`${t}/${e}`)).json()}}
20
+ */class f{get headers(){return{}}async getBinaryFile(t,e){return(await d(`${t}/${e}`)).arrayBuffer()}async getJsonFile(t,e){return(await d(`${t}/${e}`)).json()}}
24
21
  /*!
25
22
  * Copyright 2021 Cognite AS
26
23
  */class h{constructor(t){this.revealInternalId=Symbol(t),this.localPath=t}toString(){return`${h.name} (${this.localPath})`}}
27
24
  /*!
28
25
  * Copyright 2021 Cognite AS
29
- */class v{getModelUri(t){if(!(t instanceof h))throw new Error(`Model must be a ${h.name}, but got ${t.toString()}`);return Promise.resolve(`${location.origin}/${t.localPath}`)}async getModelMatrix(t){if(!(t instanceof h))throw new Error(`Model must be a ${h.name}, but got ${t.toString()}`);const e=new s.Matrix4;return u(e,i.RevealCadModel),e}getModelCamera(t){if(!(t instanceof h))throw new Error(`Model must be a ${h.name}, but got ${t.toString()}`);return Promise.resolve(void 0)}}
26
+ */class m{getModelUri(t){if(!(t instanceof h))throw new Error(`Model must be a ${h.name}, but got ${t.toString()}`);return Promise.resolve(`${location.origin}/${t.localPath}`)}async getModelMatrix(t){if(!(t instanceof h))throw new Error(`Model must be a ${h.name}, but got ${t.toString()}`);const e=new a.Matrix4;return c(e,i.RevealCadModel),e}getModelCamera(t){if(!(t instanceof h))throw new Error(`Model must be a ${h.name}, but got ${t.toString()}`);return Promise.resolve(void 0)}async getModelOutputs(t){var e;const r=await this.getModelUri(t),n=null!==(e=await async function(t){let e;try{e=(await(await d(t+"/scene.json")).json()).version}catch(t){return}switch(e){case 8:return Promise.resolve({blobId:-1,format:i.RevealCadModel,version:8});case 9:return Promise.resolve({blobId:-1,format:i.GltfCadModel,version:9});default:return}}(r))&&void 0!==e?e:await async function(t){let e;try{e=await(await d(t+"/ept.json")).json()}catch(t){return}return e?Promise.resolve({blobId:-1,format:i.EptPointCloud,version:-1}):void 0}(r);if(n)return[n];throw new Error("Only point cloud or CAD models (version 8 and 9) are supported)")}}
30
27
  /*!
31
28
  * Copyright 2021 Cognite AS
32
- */},63:function(t,e,r){"use strict";r.r(e);var o=r(6);r.d(e,"CdfModelIdentifier",(function(){return o.b}))}})}));
29
+ */},75:function(t,e,r){"use strict";r.r(e);var n=r(5);r.d(e,"CdfModelIdentifier",(function(){return n.b})),r.d(e,"File3dFormat",(function(){return n.d}))}})}));
33
30
  //# sourceMappingURL=datasource.map