@cognite/reveal 2.1.0 → 2.2.2

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 (226) hide show
  1. package/core/cad.d.ts +4 -5
  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 +45 -48
  7. package/core/src/datamodels/cad/CadModelFactory.d.ts +7 -8
  8. package/core/src/datamodels/cad/CadModelSectorLoadStatistics.d.ts +38 -38
  9. package/core/src/datamodels/cad/createCadManager.d.ts +9 -13
  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 +38 -39
  14. package/core/src/datamodels/cad/styling/InvertedNodeCollection.d.ts +24 -24
  15. package/core/src/datamodels/cad/styling/NodeCollectionDeserializer.d.ts +26 -26
  16. package/core/src/datamodels/cad/styling/PopulateIndexSetFromPagedResponseHelper.d.ts +24 -25
  17. package/core/src/datamodels/cad/styling/PropertyFilterNodeCollection.d.ts +54 -61
  18. package/core/src/datamodels/cad/styling/SinglePropertyFilterNodeCollection.d.ts +50 -60
  19. package/core/src/datamodels/cad/styling/index.d.ts +8 -13
  20. package/core/src/datamodels/pointcloud/PointCloudFactory.d.ts +9 -9
  21. package/core/src/datamodels/pointcloud/PointCloudManager.d.ts +26 -25
  22. package/core/src/datamodels/pointcloud/PointCloudMetadata.d.ts +11 -11
  23. package/core/src/datamodels/pointcloud/PointCloudMetadataRepository.d.ts +13 -12
  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 -10
  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 +19 -20
  32. package/core/src/internals.d.ts +15 -27
  33. package/core/src/migration.d.ts +8 -8
  34. package/core/src/public/RevealManager.d.ts +64 -62
  35. package/core/src/public/createRevealManager.d.ts +23 -24
  36. package/core/src/public/migration/Cognite3DModel.d.ts +339 -323
  37. package/core/src/public/migration/Cognite3DViewer.d.ts +611 -545
  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 +290 -240
  44. package/core/src/public/types.d.ts +46 -121
  45. package/core/src/{public/migration → 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 -28
  48. package/core/src/utilities/ViewStateHelper.d.ts +33 -33
  49. package/core/src/utilities/callActionWithIndicesAsync.d.ts +4 -4
  50. package/core/src/utilities/index.d.ts +8 -14
  51. package/core/src/utilities/reflection.d.ts +7 -13
  52. package/core/src/utilities/worldToViewport.d.ts +30 -31
  53. package/core/utilities.d.ts +4 -4
  54. package/extensions/datasource.d.ts +9 -0
  55. package/extensions/datasource.js +33 -0
  56. package/extensions/datasource.map +1 -0
  57. package/index.d.ts +8 -7
  58. package/index.js +174 -125
  59. package/index.map +1 -1
  60. package/package.json +5 -5
  61. package/packages/cad-geometry-loaders/index.d.ts +14 -0
  62. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/CadLoadingHints.d.ts +11 -11
  63. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/CadModelSectorBudget.d.ts +26 -26
  64. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/CadModelUpdateHandler.d.ts +44 -44
  65. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/CachedRepository.d.ts +25 -26
  66. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/ModelStateHandler.d.ts +12 -12
  67. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/Repository.d.ts +9 -9
  68. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/SectorLoader.d.ts +28 -28
  69. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/SimpleAndDetailedToSector3D.d.ts +20 -20
  70. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/culling/ByVisibilityGpuSectorCuller.d.ts +53 -53
  71. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/culling/OccludingGeometryProvider.d.ts +6 -6
  72. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/culling/OrderSectorsByVisibilityCoverage.d.ts +107 -108
  73. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/culling/SectorCuller.d.ts +33 -33
  74. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/culling/TakenSectorTree.d.ts +24 -24
  75. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/culling/types.d.ts +71 -73
  76. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/rxSectorUtilities.d.ts +12 -12
  77. package/{core/src/datamodels/cad → packages/cad-geometry-loaders/src}/sector/sectorUtilities.d.ts +20 -20
  78. package/{core → packages/cad-geometry-loaders}/src/utilities/PromiseUtils.d.ts +18 -18
  79. package/{core → packages/cad-geometry-loaders}/src/utilities/arrays.d.ts +5 -5
  80. package/{core/src/datamodels/cad/sector → packages/cad-geometry-loaders/src/utilities}/groupMeshesByNumber.d.ts +8 -8
  81. package/packages/cad-geometry-loaders/src/utilities/rxOperations.d.ts +6 -0
  82. package/packages/cad-geometry-loaders/src/utilities/types.d.ts +25 -0
  83. package/packages/cad-parsers/index.d.ts +21 -0
  84. package/{core/src/datamodels/cad/sector → packages/cad-parsers/src/cad}/CadSectorParser.d.ts +15 -16
  85. package/{core/src/datamodels/cad/sector → packages/cad-parsers/src/cad}/LevelOfDetail.d.ts +8 -8
  86. package/{core/src/datamodels/cad/rendering → packages/cad-parsers/src/cad}/filterInstanceMesh.d.ts +6 -6
  87. package/{core/src/datamodels/cad/rendering → packages/cad-parsers/src/cad}/filterPrimitives.d.ts +9 -9
  88. package/{core/src/datamodels/cad/rendering → packages/cad-parsers/src/cad}/primitiveGeometries.d.ts +31 -31
  89. package/{core/src/datamodels/cad/rendering → packages/cad-parsers/src/cad}/triangleMeshes.d.ts +6 -6
  90. package/packages/cad-parsers/src/cad/types.d.ts +56 -0
  91. package/{core/src/datamodels/cad/parsers → packages/cad-parsers/src/metadata}/CadMetadataParser.d.ts +7 -7
  92. package/{core/src/datamodels/cad → packages/cad-parsers/src/metadata}/CadModelMetadata.d.ts +44 -44
  93. package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +16 -0
  94. package/packages/cad-parsers/src/metadata/MetadataRepository.d.ts +7 -0
  95. package/{core/src/datamodels/cad → packages/cad-parsers/src/metadata}/parsers/CadMetadataParserV8.d.ts +51 -51
  96. package/packages/cad-parsers/src/metadata/types.d.ts +41 -0
  97. package/{core/src/datamodels/cad → packages/cad-parsers/src}/sector/RootSectorNode.d.ts +12 -12
  98. package/{core/src/datamodels/cad → packages/cad-parsers/src}/sector/SectorNode.d.ts +21 -21
  99. package/{core/src/datamodels/cad/sector → packages/cad-parsers/src/utilities}/SectorScene.d.ts +21 -21
  100. package/packages/cad-parsers/src/utilities/SectorSceneFactory.d.ts +9 -0
  101. package/{core/src/datamodels/cad/rendering → packages/cad-parsers/src/utilities}/computeBoundingBoxFromAttributes.d.ts +9 -9
  102. package/{core/src/datamodels/cad/rendering → packages/cad-parsers/src/utilities}/float32BufferToMatrix.d.ts +12 -12
  103. package/packages/cad-parsers/src/utilities/types.d.ts +48 -0
  104. package/packages/cad-styling/index.d.ts +9 -0
  105. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/CombineNodeCollectionBase.d.ts +31 -31
  106. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/IntersectionNodeCollection.d.ts +15 -15
  107. package/{core/src/datamodels/cad → packages/cad-styling/src}/NodeAppearance.d.ts +62 -68
  108. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/NodeAppearanceProvider.d.ts +33 -29
  109. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/NodeCollectionBase.d.ts +47 -47
  110. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/TreeIndexNodeCollection.d.ts +23 -24
  111. package/{core/src/datamodels/cad/styling → packages/cad-styling/src}/UnionNodeCollection.d.ts +15 -15
  112. package/packages/camera-manager/index.d.ts +4 -4
  113. package/packages/camera-manager/src/ComboControls.d.ts +100 -83
  114. package/packages/camera-manager/src/Keyboard.d.ts +17 -14
  115. package/packages/data-source/index.d.ts +6 -0
  116. package/packages/data-source/src/CdfDataSource.d.ts +19 -0
  117. package/packages/data-source/src/DataSource.d.ts +26 -0
  118. package/packages/data-source/src/LocalDataSource.d.ts +15 -0
  119. package/packages/logger/index.d.ts +5 -5
  120. package/packages/logger/src/Log.d.ts +5 -5
  121. package/packages/metrics/index.d.ts +5 -0
  122. package/packages/metrics/src/MetricsLogger.d.ts +21 -0
  123. package/packages/metrics/src/types.d.ts +7 -0
  124. package/packages/modeldata-api/index.d.ts +13 -0
  125. package/packages/modeldata-api/src/CdfModelDataProvider.d.ts +15 -0
  126. package/packages/modeldata-api/src/CdfModelIdentifier.d.ts +17 -0
  127. package/packages/modeldata-api/src/CdfModelMetadataProvider.d.ts +19 -0
  128. package/packages/modeldata-api/src/CdfModelOutputsProvider.d.ts +15 -0
  129. package/packages/modeldata-api/src/LocalModelDataProvider.d.ts +10 -0
  130. package/packages/modeldata-api/src/LocalModelIdentifier.d.ts +14 -0
  131. package/packages/modeldata-api/src/LocalModelMetadataProvider.d.ts +14 -0
  132. package/{core/src/utilities/networking → packages/modeldata-api/src}/Model3DOutputList.d.ts +17 -18
  133. package/packages/modeldata-api/src/ModelIdentifier.d.ts +12 -0
  134. package/packages/modeldata-api/src/ModelMetadataProvider.d.ts +17 -0
  135. package/{core/src/utilities/networking → packages/modeldata-api/src}/applyDefaultModelTransformation.d.ts +6 -6
  136. package/packages/modeldata-api/src/types.d.ts +41 -0
  137. package/packages/modeldata-api/src/utilities.d.ts +7 -0
  138. package/packages/nodes-api/index.d.ts +6 -7
  139. package/packages/nodes-api/src/NodesApiClient.d.ts +52 -43
  140. package/packages/nodes-api/src/NodesCdfClient.d.ts +24 -19
  141. package/packages/nodes-api/src/NodesLocalClient.d.ts +30 -25
  142. package/packages/nodes-api/src/types.d.ts +10 -14
  143. package/packages/rendering/index.d.ts +17 -0
  144. package/{core/src/datamodels/cad → packages/rendering/src}/CadMaterialManager.d.ts +37 -38
  145. package/{core/src/datamodels/cad → packages/rendering/src}/InstancedMeshManager.d.ts +20 -20
  146. package/{core/src/datamodels/cad → packages/rendering/src}/cameraconfig.d.ts +12 -12
  147. package/{core/src/datamodels/cad → packages/rendering/src}/rendering/EffectRenderManager.d.ts +99 -83
  148. package/{core/src/datamodels/cad/styling → packages/rendering/src/rendering}/NodeAppearanceTextureBuilder.d.ts +51 -51
  149. package/{core/src/datamodels/cad → packages/rendering/src}/rendering/RenderMode.d.ts +15 -15
  150. package/{core/src/datamodels/cad → packages/rendering/src}/rendering/createSimpleGeometryMesh.d.ts +6 -6
  151. package/{core/src/datamodels/cad → packages/rendering/src}/rendering/matCapTextureData.d.ts +5 -5
  152. package/{core/src/datamodels/cad → packages/rendering/src}/rendering/materials.d.ts +23 -23
  153. package/{core/src/datamodels/cad → packages/rendering/src}/rendering/primitives.d.ts +12 -12
  154. package/{core/src/datamodels/cad → packages/rendering/src}/rendering/shaders.d.ts +101 -101
  155. package/packages/rendering/src/rendering/types.d.ts +76 -0
  156. package/{core/src/datamodels/cad → packages/rendering/src/sector}/CadNode.d.ts +54 -57
  157. package/{core/src/datamodels/cad/styling → packages/rendering/src/transform}/NodeTransformProvider.d.ts +13 -13
  158. package/{core/src/datamodels/cad/styling → packages/rendering/src/transform}/NodeTransformTextureBuilder.d.ts +23 -23
  159. package/{core/src/datamodels/cad/styling → packages/rendering/src/transform}/TransformOverrideBuffer.d.ts +21 -21
  160. package/packages/rendering/src/utilities/types.d.ts +26 -0
  161. package/packages/tools/index.d.ts +15 -12
  162. package/packages/tools/src/AxisView/AxisViewTool.d.ts +32 -32
  163. package/packages/tools/src/AxisView/types.d.ts +98 -98
  164. package/packages/tools/src/Cognite3DViewerToolBase.d.ts +25 -25
  165. package/packages/tools/src/DebugCameraTool.d.ts +20 -20
  166. package/packages/tools/src/DebugLoadedSectorsTool.d.ts +23 -23
  167. package/packages/tools/src/ExplodedViewTool.d.ts +12 -12
  168. package/packages/tools/src/Geomap/Geomap.d.ts +17 -14
  169. package/packages/tools/src/Geomap/GeomapTool.d.ts +24 -21
  170. package/packages/tools/src/Geomap/MapConfig.d.ts +195 -195
  171. package/packages/tools/src/HtmlOverlay/BucketGrid2D.d.ts +28 -0
  172. package/packages/tools/src/HtmlOverlay/HtmlOverlayTool.d.ts +159 -0
  173. package/packages/tools/src/Timeline/Keyframe.d.ts +38 -0
  174. package/packages/tools/src/Timeline/TimelineTool.d.ts +79 -0
  175. package/packages/tools/src/Timeline/types.d.ts +13 -0
  176. package/packages/tools/src/types.d.ts +4 -4
  177. package/packages/utilities/index.d.ts +24 -0
  178. package/packages/utilities/src/CameraConfiguration.d.ts +10 -0
  179. package/{core/src/utilities → packages/utilities/src}/IndexSet.d.ts +1 -1
  180. package/{core/src/utilities → packages/utilities/src}/NumericRange.d.ts +22 -21
  181. package/packages/utilities/src/RandomColors.d.ts +34 -0
  182. package/{core/src/utilities → packages/utilities/src}/WebGLRendererStateHelper.d.ts +15 -15
  183. package/{core/src/utilities → packages/utilities/src}/assertNever.d.ts +7 -7
  184. package/{core/src/utilities → packages/utilities/src}/cache/MemoryRequestCache.d.ts +22 -22
  185. package/{core/src/utilities → packages/utilities/src/cache}/MostFrequentlyUsedCache.d.ts +19 -19
  186. package/{core/src/utilities → packages/utilities/src}/cache/RequestCache.d.ts +13 -13
  187. package/{core/src/utilities → packages/utilities/src}/datastructures/DynamicDefragmentedBuffer.d.ts +22 -22
  188. package/{core/src/utilities → packages/utilities/src}/determinePowerOfTwoDimensions.d.ts +11 -11
  189. package/{core/src/utilities → packages/utilities/src}/disposeAttributeArrayOnUpload.d.ts +17 -17
  190. package/{core/src/utilities → packages/utilities/src}/events/EventTrigger.d.ts +13 -13
  191. package/packages/utilities/src/events/clickOrTouchEventOffset.d.ts +13 -0
  192. package/{core/src/utilities → packages/utilities/src}/events/index.d.ts +5 -5
  193. package/{core/src/utilities → packages/utilities/src}/indexset/IndexSet.d.ts +26 -26
  194. package/{core/src/utilities → packages/utilities/src}/indexset/IntermediateIndexNode.d.ts +26 -26
  195. package/{core/src/utilities → packages/utilities/src}/indexset/LeafIndexNode.d.ts +16 -16
  196. package/{core/src/utilities → packages/utilities/src}/isMobileOrTablet.d.ts +4 -4
  197. package/{core/src/utilities → packages/utilities/src}/networking/isTheSameDomain.d.ts +11 -11
  198. package/{core/src/utilities → packages/utilities/src}/objectTraversal.d.ts +8 -8
  199. package/{core/src/utilities → packages/utilities/src}/packFloat.d.ts +6 -6
  200. package/{core → packages/utilities}/src/revealEnv.d.ts +10 -10
  201. package/{core/src/utilities → packages/utilities/src}/three/AutoDisposeGroup.d.ts +17 -17
  202. package/{core/src/utilities → packages/utilities/src}/three/BoundingBoxLOD.d.ts +27 -27
  203. package/{core/src/utilities → packages/utilities/src}/three/getBox3CornerPoints.d.ts +5 -5
  204. package/{core/src/utilities → packages/utilities/src}/transformCameraConfiguration.d.ts +6 -6
  205. package/packages/utilities/src/types.d.ts +10 -0
  206. package/{core/src/utilities → packages/utilities/src}/workers/WorkerPool.d.ts +14 -14
  207. package/tools.d.ts +7 -7
  208. package/tools.js +189 -15
  209. package/tools.map +1 -1
  210. package/core/src/datamodels/base/MetadataRepository.d.ts +0 -6
  211. package/core/src/datamodels/cad/CadModelMetadataRepository.d.ts +0 -15
  212. package/core/src/datamodels/cad/index.d.ts +0 -8
  213. package/core/src/datamodels/cad/rendering/types.d.ts +0 -25
  214. package/core/src/datamodels/cad/sector/types.d.ts +0 -115
  215. package/core/src/utilities/events/clickOrTouchEventOffset.d.ts +0 -4
  216. package/core/src/utilities/metrics.d.ts +0 -15
  217. package/core/src/utilities/networking/CdfModelDataClient.d.ts +0 -45
  218. package/core/src/utilities/networking/HttpHeadersProvider.d.ts +0 -7
  219. package/core/src/utilities/networking/LocalModelDataClient.d.ts +0 -23
  220. package/core/src/utilities/networking/types.d.ts +0 -37
  221. package/core/src/utilities/networking/utilities.d.ts +0 -13
  222. package/core/src/utilities/rxOperations.d.ts +0 -5
  223. package/core/src/utilities/three/dumpRendererToImage.d.ts +0 -5
  224. package/core/src/utilities/three/index.d.ts +0 -7
  225. package/core/src/utilities/types.d.ts +0 -67
  226. package/packages/tools/src/HtmlOverlayTool.d.ts +0 -88
@@ -1,51 +1,51 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { NodeAppearance } from '../NodeAppearance';
6
- import { IndexSet } from '../../../utilities/IndexSet';
7
- import { NodeAppearanceProvider } from './NodeAppearanceProvider';
8
- export declare class NodeAppearanceTextureBuilder {
9
- private _defaultAppearance;
10
- private readonly _styleProvider;
11
- private readonly _handleStylesChangedListener;
12
- private _needsUpdate;
13
- private readonly _allTreeIndices;
14
- private readonly _overrideColorDefaultAppearanceRgba;
15
- private readonly _overrideColorPerTreeIndexTexture;
16
- private readonly _regularNodesTreeIndices;
17
- private readonly _ghostedNodesTreeIndices;
18
- private readonly _infrontNodesTreeIndices;
19
- constructor(treeIndexCount: number, styleProvider: NodeAppearanceProvider);
20
- getDefaultAppearance(): NodeAppearance;
21
- /**
22
- * Sets the default style and invalidates the builder. Note that this causes a full
23
- * recomputation of values the next time {@link build} is called, so using this might be
24
- * expensive.
25
- * @param appearance New style that is applied to all 'unstyled' elements.
26
- */
27
- setDefaultAppearance(appearance: NodeAppearance): void;
28
- get regularNodeTreeIndices(): IndexSet;
29
- get ghostedNodeTreeIndices(): IndexSet;
30
- get infrontNodeTreeIndices(): IndexSet;
31
- get needsUpdate(): boolean;
32
- /**
33
- * A texture holding at least one element per node with color override
34
- * and style information. RGB is used to store color, A is used to store
35
- * style toggles, with the following bit layout:
36
- * - 0 : visible bit - when set the node is visible
37
- * - 1 : in front bit - when set the node is rendered in front of other objects
38
- * - 2 : ghosted bit - when set the node is rendered 'ghosted'
39
- * - 3-5: outline color - outline toggle and color ({@see OutlineColor}).
40
- * - 6-7: unused
41
- * Note that in-front and ghost information also is available from
42
- * the {@see inFrontTreeIndices} and {@see ghostedTreeIndices} collections.
43
- */
44
- get overrideColorPerTreeIndexTexture(): THREE.DataTexture;
45
- dispose(): void;
46
- build(): void;
47
- private populateTexture;
48
- private populateNodeSets;
49
- private applyStyleToNodes;
50
- private handleStylesChanged;
51
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { IndexSet } from '../../../utilities';
6
+ import { NodeAppearanceProvider, NodeAppearance } from '../../../cad-styling';
7
+ export declare class NodeAppearanceTextureBuilder {
8
+ private _defaultAppearance;
9
+ private readonly _styleProvider;
10
+ private readonly _handleStylesChangedListener;
11
+ private _needsUpdate;
12
+ private readonly _allTreeIndices;
13
+ private readonly _overrideColorDefaultAppearanceRgba;
14
+ private readonly _overrideColorPerTreeIndexTexture;
15
+ private readonly _regularNodesTreeIndices;
16
+ private readonly _ghostedNodesTreeIndices;
17
+ private readonly _infrontNodesTreeIndices;
18
+ constructor(treeIndexCount: number, styleProvider: NodeAppearanceProvider);
19
+ getDefaultAppearance(): NodeAppearance;
20
+ /**
21
+ * Sets the default style and invalidates the builder. Note that this causes a full
22
+ * recomputation of values the next time {@link build} is called, so using this might be
23
+ * expensive.
24
+ * @param appearance New style that is applied to all 'unstyled' elements.
25
+ */
26
+ setDefaultAppearance(appearance: NodeAppearance): void;
27
+ get regularNodeTreeIndices(): IndexSet;
28
+ get ghostedNodeTreeIndices(): IndexSet;
29
+ get infrontNodeTreeIndices(): IndexSet;
30
+ get needsUpdate(): boolean;
31
+ /**
32
+ * A texture holding at least one element per node with color override
33
+ * and style information. RGB is used to store color, A is used to store
34
+ * style toggles, with the following bit layout:
35
+ * - 0 : visible bit - when set the node is visible
36
+ * - 1 : in front bit - when set the node is rendered in front of other objects
37
+ * - 2 : ghosted bit - when set the node is rendered 'ghosted'
38
+ * - 3 : unused
39
+ * - 4 : unused
40
+ * - 5-7: outline color - outline toggle and color ({@see OutlineColor}).
41
+ * Note that in-front and ghost information also is available from
42
+ * the {@see inFrontTreeIndices} and {@see ghostedTreeIndices} collections.
43
+ */
44
+ get overrideColorPerTreeIndexTexture(): THREE.DataTexture;
45
+ dispose(): void;
46
+ build(): void;
47
+ private populateTexture;
48
+ private populateNodeSets;
49
+ private applyStyleToNodes;
50
+ private handleStylesChanged;
51
+ }
@@ -1,15 +1,15 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- export declare enum RenderMode {
5
- Color = 1,
6
- Normal = 2,
7
- TreeIndex = 3,
8
- PackColorAndNormal = 4,
9
- Depth = 5,
10
- Effects = 6,
11
- Ghost = 7,
12
- LOD = 8,
13
- DepthBufferOnly = 9,
14
- GeometryType = 10
15
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export declare enum RenderMode {
5
+ Color = 1,
6
+ Normal = 2,
7
+ TreeIndex = 3,
8
+ PackColorAndNormal = 4,
9
+ Depth = 5,
10
+ Effects = 6,
11
+ Ghost = 7,
12
+ LOD = 8,
13
+ DepthBufferOnly = 9,
14
+ GeometryType = 10
15
+ }
@@ -1,6 +1,6 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { Materials } from './materials';
6
- export declare function createSimpleGeometryMesh(attributeValues: Float32Array, materials: Materials, sectorBounds: THREE.Box3, geometryClipBox: THREE.Box3 | null): THREE.Mesh | undefined;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { Materials } from './materials';
6
+ export declare function createSimpleGeometryMesh(attributeValues: Float32Array, materials: Materials, sectorBounds: THREE.Box3, geometryClipBox: THREE.Box3 | null): THREE.Mesh | undefined;
@@ -1,5 +1,5 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- declare const image: HTMLImageElement;
5
- export default image;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ declare const image: HTMLImageElement;
5
+ export default image;
@@ -1,23 +1,23 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { RenderMode } from './RenderMode';
6
- export interface Materials {
7
- box: THREE.ShaderMaterial;
8
- circle: THREE.ShaderMaterial;
9
- generalRing: THREE.ShaderMaterial;
10
- nut: THREE.ShaderMaterial;
11
- quad: THREE.ShaderMaterial;
12
- cone: THREE.ShaderMaterial;
13
- eccentricCone: THREE.ShaderMaterial;
14
- sphericalSegment: THREE.ShaderMaterial;
15
- torusSegment: THREE.ShaderMaterial;
16
- generalCylinder: THREE.ShaderMaterial;
17
- trapezium: THREE.ShaderMaterial;
18
- ellipsoidSegment: THREE.ShaderMaterial;
19
- instancedMesh: THREE.ShaderMaterial;
20
- triangleMesh: THREE.ShaderMaterial;
21
- simple: THREE.ShaderMaterial;
22
- }
23
- export declare function createMaterials(renderMode: RenderMode, clippingPlanes: THREE.Plane[], overrideColorPerTreeIndex: THREE.DataTexture, transformOverrideIndexTexture: THREE.DataTexture, transformOverrideLookupTexture: THREE.DataTexture): Materials;
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { RenderMode } from './RenderMode';
6
+ export interface Materials {
7
+ box: THREE.ShaderMaterial;
8
+ circle: THREE.ShaderMaterial;
9
+ generalRing: THREE.ShaderMaterial;
10
+ nut: THREE.ShaderMaterial;
11
+ quad: THREE.ShaderMaterial;
12
+ cone: THREE.ShaderMaterial;
13
+ eccentricCone: THREE.ShaderMaterial;
14
+ sphericalSegment: THREE.ShaderMaterial;
15
+ torusSegment: THREE.ShaderMaterial;
16
+ generalCylinder: THREE.ShaderMaterial;
17
+ trapezium: THREE.ShaderMaterial;
18
+ ellipsoidSegment: THREE.ShaderMaterial;
19
+ instancedMesh: THREE.ShaderMaterial;
20
+ triangleMesh: THREE.ShaderMaterial;
21
+ simple: THREE.ShaderMaterial;
22
+ }
23
+ export declare function createMaterials(renderMode: RenderMode, clippingPlanes: THREE.Plane[], overrideColorPerTreeIndex: THREE.DataTexture, transformOverrideIndexTexture: THREE.DataTexture, transformOverrideLookupTexture: THREE.DataTexture): Materials;
@@ -1,12 +1,12 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { SectorGeometry } from '../sector/types';
6
- import { Materials } from './materials';
7
- import { BoundingBoxLOD } from '../../../utilities/three';
8
- export declare function createPrimitives(sector: SectorGeometry, materials: Materials, sectorBounds: THREE.Box3, geometryClipBox?: THREE.Box3 | null): Generator<THREE.Mesh<THREE.BufferGeometry, THREE.Material | THREE.Material[]> | THREE.Mesh<THREE.InstancedBufferGeometry, THREE.ShaderMaterial> | BoundingBoxLOD, void, unknown>;
9
- export declare function determineBoundsFromInstanceMatrices(geometry: THREE.InstancedBufferGeometry): {
10
- boundingBox: THREE.Box3;
11
- boundingSphere: THREE.Sphere;
12
- };
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { SectorGeometry } from '../../../cad-parsers';
6
+ import { BoundingBoxLOD } from '../../../utilities';
7
+ import { Materials } from './materials';
8
+ export declare function createPrimitives(sector: SectorGeometry, materials: Materials, sectorBounds: THREE.Box3, geometryClipBox?: THREE.Box3 | null): Generator<THREE.Mesh | BoundingBoxLOD>;
9
+ export declare function determineBoundsFromInstanceMatrices(geometry: THREE.InstancedBufferGeometry): {
10
+ boundingBox: THREE.Box3;
11
+ boundingSphere: THREE.Sphere;
12
+ };
@@ -1,101 +1,101 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- /**
5
- * Defines used to enable debugging features in shaders.
6
- */
7
- export declare const shaderDefines: {
8
- defines: {
9
- COGNITE_COLOR_BY_TREE_INDEX: boolean;
10
- };
11
- };
12
- export declare const sectorShaders: {
13
- simpleMesh: {
14
- fragment: string;
15
- vertex: string;
16
- };
17
- detailedMesh: {
18
- fragment: string;
19
- vertex: string;
20
- };
21
- instancedMesh: {
22
- fragment: string;
23
- vertex: string;
24
- };
25
- boxPrimitive: {
26
- fragment: string;
27
- vertex: string;
28
- };
29
- circlePrimitive: {
30
- fragment: string;
31
- vertex: string;
32
- };
33
- conePrimitive: {
34
- fragment: string;
35
- vertex: string;
36
- };
37
- eccentricConePrimitive: {
38
- fragment: string;
39
- vertex: string;
40
- };
41
- ellipsoidSegmentPrimitive: {
42
- fragment: string;
43
- vertex: string;
44
- };
45
- generalCylinderPrimitive: {
46
- fragment: string;
47
- vertex: string;
48
- };
49
- generalRingPrimitive: {
50
- fragment: string;
51
- vertex: string;
52
- };
53
- nutPrimitive: {
54
- fragment: string;
55
- vertex: string;
56
- };
57
- quadPrimitive: {
58
- fragment: string;
59
- vertex: string;
60
- };
61
- torusSegmentPrimitive: {
62
- fragment: string;
63
- vertex: string;
64
- };
65
- trapeziumPrimitive: {
66
- fragment: string;
67
- vertex: string;
68
- };
69
- };
70
- export declare const outlineDetectionShaders: {
71
- fragment: string;
72
- vertex: string;
73
- };
74
- /**
75
- * FXAA anti-aliasing shader
76
- */
77
- export declare const fxaaShaders: {
78
- fragment: string;
79
- vertex: string;
80
- };
81
- /**
82
- * Screen space ambient occlusion shader
83
- */
84
- export declare const ssaoShaders: {
85
- fragment: string;
86
- vertex: string;
87
- };
88
- /**
89
- * Shader to blur ambient occlusion texture and combine with diffuse
90
- */
91
- export declare const ssaoBlurCombineShaders: {
92
- fragment: string;
93
- vertex: string;
94
- };
95
- /**
96
- * Shaders use to estimate how many pixels a sector covers on screen.
97
- */
98
- export declare const coverageShaders: {
99
- fragment: string;
100
- vertex: string;
101
- };
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ /**
5
+ * Defines used to enable debugging features in shaders.
6
+ */
7
+ export declare const shaderDefines: {
8
+ defines: {
9
+ COGNITE_COLOR_BY_TREE_INDEX: boolean;
10
+ };
11
+ };
12
+ export declare const sectorShaders: {
13
+ simpleMesh: {
14
+ fragment: string;
15
+ vertex: string;
16
+ };
17
+ detailedMesh: {
18
+ fragment: string;
19
+ vertex: string;
20
+ };
21
+ instancedMesh: {
22
+ fragment: string;
23
+ vertex: string;
24
+ };
25
+ boxPrimitive: {
26
+ fragment: string;
27
+ vertex: string;
28
+ };
29
+ circlePrimitive: {
30
+ fragment: string;
31
+ vertex: string;
32
+ };
33
+ conePrimitive: {
34
+ fragment: string;
35
+ vertex: string;
36
+ };
37
+ eccentricConePrimitive: {
38
+ fragment: string;
39
+ vertex: string;
40
+ };
41
+ ellipsoidSegmentPrimitive: {
42
+ fragment: string;
43
+ vertex: string;
44
+ };
45
+ generalCylinderPrimitive: {
46
+ fragment: string;
47
+ vertex: string;
48
+ };
49
+ generalRingPrimitive: {
50
+ fragment: string;
51
+ vertex: string;
52
+ };
53
+ nutPrimitive: {
54
+ fragment: string;
55
+ vertex: string;
56
+ };
57
+ quadPrimitive: {
58
+ fragment: string;
59
+ vertex: string;
60
+ };
61
+ torusSegmentPrimitive: {
62
+ fragment: string;
63
+ vertex: string;
64
+ };
65
+ trapeziumPrimitive: {
66
+ fragment: string;
67
+ vertex: string;
68
+ };
69
+ };
70
+ export declare const outlineDetectionShaders: {
71
+ fragment: string;
72
+ vertex: string;
73
+ };
74
+ /**
75
+ * FXAA anti-aliasing shader
76
+ */
77
+ export declare const fxaaShaders: {
78
+ fragment: string;
79
+ vertex: string;
80
+ };
81
+ /**
82
+ * Screen space ambient occlusion shader
83
+ */
84
+ export declare const ssaoShaders: {
85
+ fragment: string;
86
+ vertex: string;
87
+ };
88
+ /**
89
+ * Full one-pass SSAO blur shader
90
+ */
91
+ export declare const ssaoBlurCombineShaders: {
92
+ fragment: string;
93
+ vertex: string;
94
+ };
95
+ /**
96
+ * Shaders use to estimate how many pixels a sector covers on screen.
97
+ */
98
+ export declare const coverageShaders: {
99
+ fragment: string;
100
+ vertex: string;
101
+ };
@@ -0,0 +1,76 @@
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export { SectorQuads } from '@cognite/reveal-parser-worker';
5
+ /**
6
+ * Anti-aliasing modes supported by Reveal.
7
+ */
8
+ export declare enum AntiAliasingMode {
9
+ /**
10
+ * No anti-aliasing (0).
11
+ */
12
+ NoAA = 0,
13
+ /**
14
+ * Fast-approximate anti-aliasing (FXAA) (1).
15
+ */
16
+ FXAA = 1
17
+ }
18
+ /**
19
+ * Options and hints for how the Reveal viewer applies rendering effects.
20
+ */
21
+ export declare type RenderOptions = {
22
+ /**
23
+ * Anti-aliasing mode used to avoid aliasing effects in the rendered view.
24
+ */
25
+ antiAliasing?: AntiAliasingMode;
26
+ /**
27
+ * When provided, Reveal will use multi-sampling to reduce aliasing effects when WebGL 2 is
28
+ * available. Ignored if using WebGL 1.
29
+ */
30
+ multiSampleCountHint?: number;
31
+ /**
32
+ * Determines the parameters used for ambient occlusion heuristic shading.
33
+ */
34
+ ssaoRenderParameters?: SsaoParameters;
35
+ /**
36
+ * Determines the parameters used for visualizing edges of the geometry.
37
+ */
38
+ edgeDetectionParameters?: EdgeDetectionParameters;
39
+ };
40
+ /**
41
+ * SSAO rendering quality modes supported by Reveal.
42
+ */
43
+ export declare enum SsaoSampleQuality {
44
+ Medium = 32,
45
+ High = 64,
46
+ VeryHigh = 128,
47
+ None = 1,
48
+ Default = 32
49
+ }
50
+ /**
51
+ * Defaults for {@ref RevealRenderOptions}.
52
+ */
53
+ export declare const defaultRenderOptions: Required<RenderOptions>;
54
+ /**
55
+ * Edge detection parameters supported by Reveal.
56
+ */
57
+ export declare type EdgeDetectionParameters = {
58
+ enabled: boolean;
59
+ };
60
+ /**
61
+ * Screen-space ambient occlusion parameters supported by Reveal.
62
+ */
63
+ export declare type SsaoParameters = {
64
+ /**
65
+ * Quality (Number of samples) tond estimate occlusion factor.
66
+ */
67
+ sampleSize: SsaoSampleQuality;
68
+ /**
69
+ * Maximum length of sample vector.
70
+ */
71
+ sampleRadius: number;
72
+ /**
73
+ * Applied bias when depth testing to reduce output noise.
74
+ */
75
+ depthCheckBias: number;
76
+ };
@@ -1,57 +1,54 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { SectorGeometry, SectorScene } from './sector/types';
6
- import { InstancedMeshFile, SectorQuads } from './rendering/types';
7
- import { RootSectorNode } from './sector/RootSectorNode';
8
- import { RenderMode } from './rendering/RenderMode';
9
- import { CadMaterialManager } from './CadMaterialManager';
10
- import { CadModelMetadata } from './CadModelMetadata';
11
- import { NodeTransformProvider } from './styling/NodeTransformProvider';
12
- import { NodeAppearanceProvider } from './styling/NodeAppearanceProvider';
13
- import { NodeAppearance } from './NodeAppearance';
14
- export declare type ParseCallbackDelegate = (parsed: {
15
- lod: string;
16
- data: SectorGeometry | SectorQuads;
17
- }) => void;
18
- export interface SuggestedCameraConfig {
19
- position: THREE.Vector3;
20
- target: THREE.Vector3;
21
- near: number;
22
- far: number;
23
- }
24
- export declare class CadNode extends THREE.Object3D {
25
- private readonly _rootSector;
26
- private readonly _cadModelMetadata;
27
- private readonly _materialManager;
28
- private readonly _sectorScene;
29
- private readonly _previousCameraMatrix;
30
- private readonly _instancedMeshManager;
31
- constructor(model: CadModelMetadata, materialManager: CadMaterialManager);
32
- get nodeTransformProvider(): NodeTransformProvider;
33
- get nodeAppearanceProvider(): NodeAppearanceProvider;
34
- get defaultNodeAppearance(): NodeAppearance;
35
- set defaultNodeAppearance(appearance: NodeAppearance);
36
- get clippingPlanes(): THREE.Plane[];
37
- set clippingPlanes(planes: THREE.Plane[]);
38
- get cadModelMetadata(): CadModelMetadata;
39
- get sectorScene(): SectorScene;
40
- get rootSector(): RootSectorNode;
41
- get materialManager(): CadMaterialManager;
42
- set renderMode(mode: RenderMode);
43
- get renderMode(): RenderMode;
44
- /**
45
- * Sets transformation matrix of the model. This overrides the current transformation.
46
- * @param matrix Transformation matrix.
47
- */
48
- setModelTransformation(matrix: THREE.Matrix4): void;
49
- /**
50
- * Gets transformation matrix of the model
51
- * @param out Preallocated `THREE.Matrix4` (optional).
52
- */
53
- getModelTransformation(out?: THREE.Matrix4): THREE.Matrix4;
54
- suggestCameraConfig(): SuggestedCameraConfig;
55
- updateInstancedMeshes(instanceMeshFiles: InstancedMeshFile[], modelIdentifier: string, sectorId: number): void;
56
- discardInstancedMeshes(sectorId: number): void;
57
- }
1
+ /**
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { CadMaterialManager } from '../CadMaterialManager';
6
+ import { SectorQuads } from '../rendering/types';
7
+ import { NodeTransformProvider } from '../transform/NodeTransformProvider';
8
+ import { RenderMode } from '../rendering/RenderMode';
9
+ import { NodeAppearanceProvider, NodeAppearance } from '../../../cad-styling';
10
+ import { SectorScene, CadModelMetadata, SectorGeometry, InstancedMeshFile, RootSectorNode } from '../../../cad-parsers';
11
+ export declare type ParseCallbackDelegate = (parsed: {
12
+ lod: string;
13
+ data: SectorGeometry | SectorQuads;
14
+ }) => void;
15
+ export interface SuggestedCameraConfig {
16
+ position: THREE.Vector3;
17
+ target: THREE.Vector3;
18
+ near: number;
19
+ far: number;
20
+ }
21
+ export declare class CadNode extends THREE.Object3D {
22
+ private readonly _rootSector;
23
+ private readonly _cadModelMetadata;
24
+ private readonly _materialManager;
25
+ private readonly _sectorScene;
26
+ private readonly _previousCameraMatrix;
27
+ private readonly _instancedMeshManager;
28
+ constructor(model: CadModelMetadata, materialManager: CadMaterialManager);
29
+ get nodeTransformProvider(): NodeTransformProvider;
30
+ get nodeAppearanceProvider(): NodeAppearanceProvider;
31
+ get defaultNodeAppearance(): NodeAppearance;
32
+ set defaultNodeAppearance(appearance: NodeAppearance);
33
+ get clippingPlanes(): THREE.Plane[];
34
+ set clippingPlanes(planes: THREE.Plane[]);
35
+ get cadModelMetadata(): CadModelMetadata;
36
+ get sectorScene(): SectorScene;
37
+ get rootSector(): RootSectorNode;
38
+ get materialManager(): CadMaterialManager;
39
+ set renderMode(mode: RenderMode);
40
+ get renderMode(): RenderMode;
41
+ /**
42
+ * Sets transformation matrix of the model. This overrides the current transformation.
43
+ * @param matrix Transformation matrix.
44
+ */
45
+ setModelTransformation(matrix: THREE.Matrix4): void;
46
+ /**
47
+ * Gets transformation matrix of the model
48
+ * @param out Preallocated `THREE.Matrix4` (optional).
49
+ */
50
+ getModelTransformation(out?: THREE.Matrix4): THREE.Matrix4;
51
+ suggestCameraConfig(): SuggestedCameraConfig;
52
+ updateInstancedMeshes(instanceMeshFiles: InstancedMeshFile[], modelIdentifier: string, sectorId: number): void;
53
+ discardInstancedMeshes(sectorId: number): void;
54
+ }
@@ -1,13 +1,13 @@
1
- /*!
2
- * Copyright 2021 Cognite AS
3
- */
4
- import * as THREE from 'three';
5
- import { NumericRange } from '../../../utilities';
6
- export declare type NodeTransformChangeEventDelegate = (change: 'set' | 'reset', treeIndices: NumericRange, transform: THREE.Matrix4) => void;
7
- export declare class NodeTransformProvider {
8
- private readonly _events;
9
- on(event: 'changed', listener: NodeTransformChangeEventDelegate): void;
10
- off(event: 'changed', listener: NodeTransformChangeEventDelegate): void;
11
- setNodeTransform(treeIndices: NumericRange, transform: THREE.Matrix4): void;
12
- resetNodeTransform(treeIndices: NumericRange): void;
13
- }
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { NumericRange } from '../../../utilities';
6
+ export declare type NodeTransformChangeEventDelegate = (change: 'set' | 'reset', treeIndices: NumericRange, transform: THREE.Matrix4) => void;
7
+ export declare class NodeTransformProvider {
8
+ private readonly _events;
9
+ on(event: 'changed', listener: NodeTransformChangeEventDelegate): void;
10
+ off(event: 'changed', listener: NodeTransformChangeEventDelegate): void;
11
+ setNodeTransform(treeIndices: NumericRange, transform: THREE.Matrix4): void;
12
+ resetNodeTransform(treeIndices: NumericRange): void;
13
+ }