@cognite/reveal 2.1.2 → 3.0.0-alpha.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 (179) hide show
  1. package/core/cad.d.ts +1 -2
  2. package/core/src/datamodels/cad/CadManager.d.ts +10 -10
  3. package/core/src/datamodels/cad/CadModelFactory.d.ts +10 -4
  4. package/core/src/datamodels/cad/createCadManager.d.ts +4 -5
  5. package/core/src/datamodels/cad/picking.d.ts +1 -1
  6. package/core/src/datamodels/cad/rendering/RenderAlreadyLoadedGeometryProvider.d.ts +2 -1
  7. package/core/src/datamodels/cad/styling/AssetNodeCollection.d.ts +8 -2
  8. package/core/src/datamodels/cad/styling/InvertedNodeCollection.d.ts +3 -2
  9. package/core/src/datamodels/cad/styling/PopulateIndexSetFromPagedResponseHelper.d.ts +10 -4
  10. package/core/src/datamodels/cad/styling/PropertyFilterNodeCollection.d.ts +5 -11
  11. package/core/src/datamodels/cad/styling/SinglePropertyFilterNodeCollection.d.ts +5 -14
  12. package/core/src/datamodels/pointcloud/PointCloudManager.d.ts +5 -4
  13. package/core/src/datamodels/pointcloud/PointCloudMetadataRepository.d.ts +6 -5
  14. package/core/src/datamodels/pointcloud/createPointCloudManager.d.ts +2 -4
  15. package/core/src/datamodels/pointcloud/index.d.ts +5 -0
  16. package/core/src/index.d.ts +1 -1
  17. package/core/src/internals.d.ts +15 -0
  18. package/core/src/public/RevealManager.d.ts +11 -8
  19. package/core/src/public/createRevealManager.d.ts +2 -3
  20. package/core/src/public/migration/Cognite3DModel.d.ts +20 -1
  21. package/core/src/public/migration/Cognite3DViewer.d.ts +30 -10
  22. package/core/src/public/migration/types.d.ts +36 -23
  23. package/core/src/public/types.d.ts +3 -1
  24. package/core/src/{public/migration → storage}/RevealManagerHelper.d.ts +7 -7
  25. package/core/src/utilities/Spinner.d.ts +4 -5
  26. package/core/src/utilities/ViewStateHelper.d.ts +2 -2
  27. package/core/src/utilities/worldToViewport.d.ts +1 -2
  28. package/extensions/datasource.d.ts +9 -0
  29. package/extensions/datasource.js +30 -0
  30. package/extensions/datasource.map +1 -0
  31. package/index.d.ts +2 -1
  32. package/index.js +214 -125
  33. package/index.map +1 -1
  34. package/package.json +6 -8
  35. package/packages/cad-geometry-loaders/index.d.ts +4 -11
  36. package/packages/cad-geometry-loaders/src/{CadModelSectorBudget.d.ts → CadModelBudget.d.ts} +3 -10
  37. package/packages/cad-geometry-loaders/src/CadModelUpdateHandler.d.ts +5 -7
  38. package/packages/cad-geometry-loaders/src/sector/SectorLoader.d.ts +7 -6
  39. package/packages/cad-geometry-loaders/src/sector/culling/ByScreenSizeSectorCuller.d.ts +23 -0
  40. package/packages/cad-geometry-loaders/src/sector/culling/ByVisibilityGpuSectorCuller.d.ts +3 -5
  41. package/packages/cad-geometry-loaders/src/sector/culling/WeightFunctionsHelper.d.ts +50 -0
  42. package/packages/cad-geometry-loaders/src/sector/culling/computeNdcAreaOfBox.d.ts +12 -0
  43. package/packages/cad-geometry-loaders/src/sector/culling/computeSectorCost.d.ts +7 -0
  44. package/packages/cad-geometry-loaders/src/sector/culling/createV8SectorCuller.d.ts +7 -0
  45. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenSectorMapBase.d.ts +11 -0
  46. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorMap.d.ts +17 -0
  47. package/packages/cad-geometry-loaders/src/sector/culling/{TakenSectorTree.d.ts → takensectors/TakenV8SectorTree.d.ts} +6 -6
  48. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV9SectorMap.d.ts +20 -0
  49. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/index.d.ts +5 -0
  50. package/packages/cad-geometry-loaders/src/sector/culling/transformBoxToNDC.d.ts +5 -0
  51. package/packages/cad-geometry-loaders/src/sector/culling/types.d.ts +16 -4
  52. package/packages/cad-geometry-loaders/src/sector/rxSectorUtilities.d.ts +2 -2
  53. package/packages/cad-geometry-loaders/src/utilities/rxOperations.d.ts +3 -2
  54. package/packages/cad-geometry-loaders/src/utilities/types.d.ts +0 -23
  55. package/packages/cad-parsers/index.d.ts +7 -6
  56. package/packages/{cad-geometry-loaders/src/material-manager/rendering → cad-parsers/src/cad}/filterInstanceMesh.d.ts +1 -1
  57. package/packages/cad-parsers/src/cad/filterPrimitivesCommon.d.ts +5 -0
  58. package/packages/cad-parsers/src/cad/{filterPrimitives.d.ts → filterPrimitivesV8.d.ts} +0 -0
  59. package/packages/cad-parsers/src/cad/filterPrimitivesV9.d.ts +6 -0
  60. package/packages/cad-parsers/src/cad/primitiveGeometries.d.ts +1 -1
  61. package/packages/{cad-geometry-loaders/src/material-manager/rendering → cad-parsers/src/cad}/triangleMeshes.d.ts +1 -1
  62. package/packages/cad-parsers/src/cad/types.d.ts +2 -2
  63. package/packages/cad-parsers/src/metadata/CadModelMetadata.d.ts +10 -0
  64. package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +6 -6
  65. package/packages/cad-parsers/src/metadata/MetadataRepository.d.ts +3 -2
  66. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserGltf.d.ts +6 -0
  67. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserV8.d.ts +2 -47
  68. package/packages/cad-parsers/src/metadata/parsers/types.d.ts +60 -0
  69. package/packages/cad-parsers/src/metadata/types.d.ts +15 -4
  70. package/packages/{cad-geometry-loaders → cad-parsers}/src/sector/RootSectorNode.d.ts +1 -1
  71. package/packages/{cad-geometry-loaders → cad-parsers}/src/sector/SectorNode.d.ts +1 -1
  72. package/packages/cad-parsers/src/utilities/SectorSceneFactory.d.ts +2 -5
  73. package/packages/cad-parsers/src/utilities/computeBoundingBoxFromAttributes.d.ts +10 -0
  74. package/packages/{cad-geometry-loaders → cad-parsers}/src/utilities/float32BufferToMatrix.d.ts +0 -0
  75. package/packages/cad-parsers/src/utilities/types.d.ts +26 -0
  76. package/packages/cad-styling/index.d.ts +4 -0
  77. package/packages/cad-styling/src/CombineNodeCollectionBase.d.ts +4 -2
  78. package/packages/cad-styling/src/IntersectionNodeCollection.d.ts +4 -0
  79. package/packages/cad-styling/src/NodeAppearance.d.ts +23 -0
  80. package/packages/cad-styling/src/NodeAppearanceProvider.d.ts +7 -0
  81. package/packages/cad-styling/src/NodeCollectionBase.d.ts +7 -0
  82. package/packages/cad-styling/src/TreeIndexNodeCollection.d.ts +17 -1
  83. package/packages/cad-styling/src/UnionNodeCollection.d.ts +3 -0
  84. package/packages/cad-styling/src/prioritized/AreaCollection.d.ts +39 -0
  85. package/packages/cad-styling/src/prioritized/BoxClusterer.d.ts +29 -0
  86. package/packages/cad-styling/src/prioritized/ClusteredAreaCollection.d.ts +17 -0
  87. package/packages/cad-styling/src/prioritized/EmptyAreaCollection.d.ts +18 -0
  88. package/packages/cad-styling/src/prioritized/types.d.ts +7 -0
  89. package/packages/camera-manager/index.d.ts +3 -1
  90. package/packages/camera-manager/src/CameraManager.d.ts +84 -0
  91. package/packages/camera-manager/src/ComboControls.d.ts +60 -42
  92. package/packages/camera-manager/src/Keyboard.d.ts +10 -7
  93. package/packages/camera-manager/src/types.d.ts +64 -0
  94. package/packages/data-source/index.d.ts +6 -0
  95. package/packages/data-source/src/CdfDataSource.d.ts +19 -0
  96. package/packages/data-source/src/DataSource.d.ts +26 -0
  97. package/packages/data-source/src/LocalDataSource.d.ts +15 -0
  98. package/packages/metrics/index.d.ts +5 -0
  99. package/packages/metrics/src/MetricsLogger.d.ts +21 -0
  100. package/packages/metrics/src/types.d.ts +7 -0
  101. package/packages/modeldata-api/index.d.ts +8 -3
  102. package/packages/modeldata-api/src/{CdfModelDataClient.d.ts → CdfModelDataProvider.d.ts} +6 -6
  103. package/packages/modeldata-api/src/CdfModelIdentifier.d.ts +15 -0
  104. package/packages/modeldata-api/src/CdfModelMetadataProvider.d.ts +11 -27
  105. package/packages/modeldata-api/src/CdfModelOutputsProvider.d.ts +16 -0
  106. package/packages/modeldata-api/src/LocalModelDataProvider.d.ts +10 -0
  107. package/packages/modeldata-api/src/LocalModelIdentifier.d.ts +14 -0
  108. package/packages/modeldata-api/src/LocalModelMetadataProvider.d.ts +11 -14
  109. package/packages/modeldata-api/src/ModelIdentifier.d.ts +12 -0
  110. package/packages/modeldata-api/src/ModelMetadataProvider.d.ts +19 -0
  111. package/packages/modeldata-api/src/types.d.ts +19 -26
  112. package/packages/nodes-api/index.d.ts +0 -1
  113. package/packages/nodes-api/src/NodesApiClient.d.ts +16 -8
  114. package/packages/nodes-api/src/NodesCdfClient.d.ts +9 -4
  115. package/packages/nodes-api/src/NodesLocalClient.d.ts +10 -5
  116. package/packages/nodes-api/src/types.d.ts +0 -4
  117. package/packages/rendering/index.d.ts +17 -0
  118. package/packages/{cad-geometry-loaders/src/material-manager → rendering/src}/CadMaterialManager.d.ts +5 -5
  119. package/packages/rendering/src/GeometryBatchingManager.d.ts +30 -0
  120. package/packages/{cad-geometry-loaders → rendering}/src/InstancedMeshManager.d.ts +1 -1
  121. package/packages/{cad-geometry-loaders → rendering}/src/cameraconfig.d.ts +0 -0
  122. package/packages/{cad-geometry-loaders/src/material-manager → rendering/src}/rendering/EffectRenderManager.d.ts +28 -12
  123. package/packages/{cad-geometry-loaders/src/material-manager/styling → rendering/src/rendering}/NodeAppearanceTextureBuilder.d.ts +8 -7
  124. package/packages/{cad-parsers/src/cad → rendering/src/rendering}/RenderMode.d.ts +0 -0
  125. package/packages/{cad-geometry-loaders/src/material-manager → rendering/src}/rendering/createSimpleGeometryMesh.d.ts +1 -1
  126. package/packages/{cad-parsers/src/cad → rendering/src/rendering}/matCapTextureData.d.ts +0 -0
  127. package/packages/{cad-parsers/src/cad → rendering/src/rendering}/materials.d.ts +0 -0
  128. package/packages/{cad-parsers/src/cad → rendering/src/rendering}/primitives.d.ts +3 -3
  129. package/packages/{cad-parsers/src/cad → rendering/src/rendering}/shaders.d.ts +1 -1
  130. package/packages/{cad-geometry-loaders/src/material-manager → rendering/src}/rendering/types.d.ts +1 -1
  131. package/packages/{cad-geometry-loaders/src → rendering/src/sector}/CadNode.d.ts +18 -9
  132. package/packages/{cad-geometry-loaders/src/material-manager/styling → rendering/src/transform}/NodeTransformProvider.d.ts +1 -1
  133. package/packages/{cad-geometry-loaders/src/material-manager/styling → rendering/src/transform}/NodeTransformTextureBuilder.d.ts +1 -1
  134. package/packages/{cad-geometry-loaders/src/material-manager/styling → rendering/src/transform}/TransformOverrideBuffer.d.ts +3 -3
  135. package/packages/rendering/src/utilities/types.d.ts +26 -0
  136. package/packages/sector-loader/index.d.ts +6 -0
  137. package/packages/sector-loader/src/GltfSectorRepository.d.ts +14 -0
  138. package/packages/{cad-geometry-loaders/src/sector/Repository.d.ts → sector-loader/src/SectorRepository.d.ts} +2 -2
  139. package/packages/{cad-geometry-loaders/src/sector/CachedRepository.d.ts → sector-loader/src/V8SectorRepository.d.ts} +6 -6
  140. package/packages/{cad-geometry-loaders/src/sector → sector-loader/src/v8}/SimpleAndDetailedToSector3D.d.ts +4 -4
  141. package/packages/{cad-geometry-loaders/src/utilities → sector-loader/src/v8}/arrays.d.ts +0 -0
  142. package/packages/{cad-geometry-loaders/src/utilities → sector-loader/src/v8}/groupMeshesByNumber.d.ts +0 -0
  143. package/packages/sector-loader/src/v8/sectorUtilities.d.ts +16 -0
  144. package/packages/sector-parser/index.d.ts +5 -0
  145. package/packages/sector-parser/src/GltfSectorParser.d.ts +18 -0
  146. package/packages/sector-parser/src/reveal-glb-parser/GlbMetadataParser.d.ts +14 -0
  147. package/packages/sector-parser/src/reveal-glb-parser/primitiveGeometries.d.ts +12 -0
  148. package/packages/sector-parser/src/types.d.ts +98 -0
  149. package/packages/tools/index.d.ts +4 -1
  150. package/packages/tools/src/AxisView/AxisViewTool.d.ts +2 -2
  151. package/packages/tools/src/DebugLoadedSectorsTool.d.ts +1 -1
  152. package/packages/tools/src/Geomap/Geomap.d.ts +5 -2
  153. package/packages/tools/src/Geomap/GeomapTool.d.ts +5 -2
  154. package/packages/tools/src/HtmlOverlay/BucketGrid2D.d.ts +28 -0
  155. package/packages/tools/src/HtmlOverlay/HtmlOverlayTool.d.ts +160 -0
  156. package/packages/tools/src/Timeline/Keyframe.d.ts +39 -0
  157. package/packages/tools/src/Timeline/TimelineTool.d.ts +79 -0
  158. package/packages/tools/src/Timeline/types.d.ts +13 -0
  159. package/packages/utilities/index.d.ts +7 -3
  160. package/packages/utilities/src/NumericRange.d.ts +2 -1
  161. package/packages/utilities/src/RandomColors.d.ts +34 -0
  162. package/packages/utilities/src/WebGLRendererStateHelper.d.ts +1 -1
  163. package/packages/utilities/src/counterMap.d.ts +5 -0
  164. package/packages/utilities/src/datastructures/DynamicDefragmentedBuffer.d.ts +18 -5
  165. package/packages/utilities/src/events/InputHandler.d.ts +25 -0
  166. package/packages/utilities/src/events/index.d.ts +1 -0
  167. package/packages/utilities/src/indexset/IndexSet.d.ts +1 -1
  168. package/packages/utilities/src/three/isBox3OnPositiveSideOfPlane.d.ts +10 -0
  169. package/packages/utilities/src/three/toThreeBox3.d.ts +6 -0
  170. package/packages/utilities/src/three/visitBox3CornerPoints.d.ts +12 -0
  171. package/packages/utilities/src/types.d.ts +1 -0
  172. package/tools.js +77 -117
  173. package/tools.map +1 -1
  174. package/packages/cad-geometry-loaders/src/sector/sectorUtilities.d.ts +0 -19
  175. package/packages/cad-parsers/src/cad/computeBoundingBoxFromAttributes.d.ts +0 -9
  176. package/packages/modeldata-api/src/LocalModelDataClient.d.ts +0 -10
  177. package/packages/tools/src/HtmlOverlayTool.d.ts +0 -88
  178. package/packages/utilities/src/metrics.d.ts +0 -15
  179. package/packages/utilities/src/three/getBox3CornerPoints.d.ts +0 -5
@@ -3,7 +3,10 @@
3
3
  */
4
4
  import * as THREE from 'three';
5
5
  import { CogniteInternalId } from '@cognite/sdk';
6
- import { NodeTreeIndexAndSubtreeSize } from './types';
6
+ /**
7
+ * Client for retrieving metadata information about CAD nodes.
8
+ * @version New since 2.2
9
+ */
7
10
  export interface NodesApiClient {
8
11
  /**
9
12
  * Maps a set of "tree indexes" that identify nodes, to the respective
@@ -19,7 +22,10 @@ export interface NodesApiClient {
19
22
  * Determines tree index and subtreeSize (i.e. span of the subtree a node is parent
20
23
  * of) given a set of node IDs.
21
24
  */
22
- determineTreeIndexAndSubtreeSizesByNodeIds(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeIds: CogniteInternalId[]): Promise<NodeTreeIndexAndSubtreeSize[]>;
25
+ determineTreeIndexAndSubtreeSizesByNodeIds(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeIds: CogniteInternalId[]): Promise<{
26
+ treeIndex: number;
27
+ subtreeSize: number;
28
+ }[]>;
23
29
  /**
24
30
  * Determine ancestor subtree span of a given node. If the node doesn't have an
25
31
  * ancestor at the generation given, the span of the root node is returned.
@@ -28,16 +34,18 @@ export interface NodesApiClient {
28
34
  * @param nodeId Node ID of node
29
35
  * @param generation Generation to retrieve (0 means node itself, 1 is parent, 2 grand-parent etc).
30
36
  */
31
- determineNodeAncestorsByNodeId(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeId: CogniteInternalId, generation: number): Promise<NodeTreeIndexAndSubtreeSize>;
37
+ determineNodeAncestorsByNodeId(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeId: CogniteInternalId, generation: number): Promise<{
38
+ treeIndex: number;
39
+ subtreeSize: number;
40
+ }>;
32
41
  /**
33
- * Determines the bounds of the node provided. Note that the returned
34
- * box returned will be in "CDF coordinates" and not transformed using
42
+ * Determines the bounds of the individual nodes provided. Note that the returned
43
+ * boxes will be in "CDF coordinates" and not transformed using
35
44
  * the model transformation for the given model.
36
45
  *
37
46
  * @param modelId ID of 3D model
38
47
  * @param revisionId ID of 3D model revision
39
- * @param nodeId Node ID of node
40
- * @param box Pre-allocated THREE.Box3 (optional).
48
+ * @param nodeIds Node IDs of nodes
41
49
  */
42
- getBoundingBoxByNodeId(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeId: CogniteInternalId, box?: THREE.Box3): Promise<THREE.Box3>;
50
+ getBoundingBoxesByNodeIds(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeIds: CogniteInternalId[]): Promise<THREE.Box3[]>;
43
51
  }
@@ -4,16 +4,21 @@
4
4
  import * as THREE from 'three';
5
5
  import { CogniteClient, CogniteInternalId } from '@cognite/sdk';
6
6
  import { NodesApiClient } from './NodesApiClient';
7
- import { NodeTreeIndexAndSubtreeSize } from './types';
8
7
  export declare class NodesCdfClient implements NodesApiClient {
9
8
  private static readonly MaxItemsPerRequest;
10
9
  private readonly _client;
11
10
  constructor(client: CogniteClient);
12
11
  mapTreeIndicesToNodeIds(modelId: CogniteInternalId, revisionId: CogniteInternalId, treeIndices: number[]): Promise<number[]>;
13
12
  mapNodeIdsToTreeIndices(modelId: CogniteInternalId, revisionId: CogniteInternalId, treeIndices: number[]): Promise<CogniteInternalId[]>;
14
- determineTreeIndexAndSubtreeSizesByNodeIds(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeIds: CogniteInternalId[]): Promise<NodeTreeIndexAndSubtreeSize[]>;
15
- determineNodeAncestorsByNodeId(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeId: CogniteInternalId, generation: number): Promise<NodeTreeIndexAndSubtreeSize>;
16
- getBoundingBoxByNodeId(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeId: CogniteInternalId, box?: THREE.Box3): Promise<THREE.Box3>;
13
+ determineTreeIndexAndSubtreeSizesByNodeIds(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeIds: CogniteInternalId[]): Promise<{
14
+ treeIndex: number;
15
+ subtreeSize: number;
16
+ }[]>;
17
+ determineNodeAncestorsByNodeId(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeId: CogniteInternalId, generation: number): Promise<{
18
+ treeIndex: number;
19
+ subtreeSize: number;
20
+ }>;
21
+ getBoundingBoxesByNodeIds(modelId: CogniteInternalId, revisionId: CogniteInternalId, nodeIds: CogniteInternalId[]): Promise<THREE.Box3[]>;
17
22
  private postByTreeIndicesRequest;
18
23
  private postByNodeIdsRequest;
19
24
  }
@@ -4,22 +4,27 @@
4
4
  import * as THREE from 'three';
5
5
  import { NodesApiClient } from './NodesApiClient';
6
6
  import { CogniteInternalId } from '@cognite/sdk';
7
- import { NodeTreeIndexAndSubtreeSize } from './types';
8
7
  export declare class NodesLocalClient implements NodesApiClient {
9
- constructor(_modelBaseUrl: string);
8
+ constructor();
10
9
  mapTreeIndicesToNodeIds(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, treeIndices: number[]): Promise<CogniteInternalId[]>;
11
10
  mapNodeIdsToTreeIndices(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, nodeIds: CogniteInternalId[]): Promise<number[]>;
12
11
  /**
13
12
  * Determines tree index and subtreeSize (i.e. span of the subtree a node is parent
14
13
  * of) given a set of node IDs.
15
14
  */
16
- determineTreeIndexAndSubtreeSizesByNodeIds(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, _nodeIds: CogniteInternalId[]): Promise<NodeTreeIndexAndSubtreeSize[]>;
15
+ determineTreeIndexAndSubtreeSizesByNodeIds(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, _nodeIds: CogniteInternalId[]): Promise<{
16
+ treeIndex: number;
17
+ subtreeSize: number;
18
+ }[]>;
17
19
  /**
18
20
  * Not supported.
19
21
  */
20
- determineNodeAncestorsByNodeId(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, _nodeId: CogniteInternalId, _generation: number): Promise<NodeTreeIndexAndSubtreeSize>;
22
+ determineNodeAncestorsByNodeId(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, _nodeId: CogniteInternalId, _generation: number): Promise<{
23
+ treeIndex: number;
24
+ subtreeSize: number;
25
+ }>;
21
26
  /**
22
27
  * Not supported.
23
28
  */
24
- getBoundingBoxByNodeId(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, _nodeId: CogniteInternalId, _box?: THREE.Box3): Promise<THREE.Box3>;
29
+ getBoundingBoxesByNodeIds(_modelId: CogniteInternalId, _revisionId: CogniteInternalId, _nodeIds: CogniteInternalId[]): Promise<THREE.Box3[]>;
25
30
  }
@@ -8,7 +8,3 @@ export declare type ByTreeIndicesResponse = {
8
8
  export declare type ByNodeIdsResponse = {
9
9
  items: number[];
10
10
  };
11
- export declare type NodeTreeIndexAndSubtreeSize = {
12
- treeIndex: number;
13
- subtreeSize: number;
14
- };
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export { SectorQuads } from './src/rendering/types';
5
+ export { CadMaterialManager } from './src/CadMaterialManager';
6
+ export { createSimpleGeometryMesh } from './src/rendering/createSimpleGeometryMesh';
7
+ export { NodeAppearanceTextureBuilder } from './src/rendering/NodeAppearanceTextureBuilder';
8
+ export { NodeTransformTextureBuilder } from './src/transform/NodeTransformTextureBuilder';
9
+ export { NodeTransformProvider } from './src/transform/NodeTransformProvider';
10
+ export { CogniteColors, RevealColors } from './src/utilities/types';
11
+ export { CadNode, SuggestedCameraConfig } from './src/sector/CadNode';
12
+ export { RenderOptions, defaultRenderOptions, SsaoParameters, SsaoSampleQuality, AntiAliasingMode } from './src/rendering/types';
13
+ export { EffectRenderManager } from './src/rendering/EffectRenderManager';
14
+ export { RenderMode } from './src/rendering/RenderMode';
15
+ export { coverageShaders } from './src/rendering/shaders';
16
+ export { Materials, createMaterials } from './src/rendering/materials';
17
+ export { createPrimitives } from './src/rendering/primitives';
@@ -2,11 +2,11 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- import { NodeAppearance } from '../../../cad-styling';
6
- import { NodeTransformProvider } from './styling/NodeTransformProvider';
7
- import { Materials, RenderMode } from '../../../cad-parsers';
8
- import { NodeAppearanceProvider } from '../../../cad-styling';
9
- import { IndexSet } from '../../../utilities';
5
+ import { NodeTransformProvider } from './transform/NodeTransformProvider';
6
+ import { Materials } from './rendering/materials';
7
+ import { RenderMode } from './rendering/RenderMode';
8
+ import { NodeAppearance, NodeAppearanceProvider } from '../../cad-styling';
9
+ import { IndexSet } from '../../utilities';
10
10
  export declare class CadMaterialManager {
11
11
  private readonly _events;
12
12
  get clippingPlanes(): THREE.Plane[];
@@ -0,0 +1,30 @@
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { ParsedGeometry } from '../../sector-parser';
6
+ import { Materials } from './rendering/materials';
7
+ export declare class GeometryBatchingManager {
8
+ private readonly _batchedGeometriesGroup;
9
+ private readonly _materials;
10
+ private readonly _instancedTypeMap;
11
+ private readonly _sectorMap;
12
+ private static readonly TypedArrayViews;
13
+ constructor(group: THREE.Group, materials: Materials);
14
+ batchGeometries(geometryBatchingQueue: ParsedGeometry[], sectorId: number): void;
15
+ removeSectorBatches(sectorId: number): void;
16
+ private processGeometries;
17
+ private updateInstanceAttributes;
18
+ private extendUpdateRange;
19
+ private reallocateBufferGeometry;
20
+ private createSectorBatch;
21
+ private createInstanceMeshGeometry;
22
+ private getInstanceAttributesSharedView;
23
+ private getTreeIndexAttribute;
24
+ private removeTreeIndicesFromMeshUserData;
25
+ private createDefragmentedBufferGeometry;
26
+ private createInstanceMesh;
27
+ private getAttributes;
28
+ private copyGeometryWithBufferAttributes;
29
+ private getShaderMaterial;
30
+ }
@@ -2,8 +2,8 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- import { CadMaterialManager } from './material-manager/CadMaterialManager';
6
5
  import { InstancedMeshFile } from '../../cad-parsers';
6
+ import { CadMaterialManager } from './CadMaterialManager';
7
7
  export declare class InstancedMeshManager {
8
8
  private readonly _instancedGeometryMap;
9
9
  private readonly _instancedAttributeMap;
@@ -11,7 +11,7 @@ export declare class EffectRenderManager {
11
11
  private readonly _compositionScene;
12
12
  private readonly _fxaaScene;
13
13
  private readonly _ssaoScene;
14
- private readonly _ssaoBlurScene;
14
+ private readonly _ssaoBlurCombineScene;
15
15
  private readonly _cadScene;
16
16
  private readonly _normalScene;
17
17
  private readonly _inFrontScene;
@@ -19,17 +19,17 @@ export declare class EffectRenderManager {
19
19
  private readonly _normalSceneBuilder;
20
20
  private readonly _inFrontSceneBuilder;
21
21
  private _renderOptions;
22
- private _combineOutlineDetectionMaterial;
23
- private _fxaaMaterial;
22
+ private readonly _combineOutlineDetectionMaterial;
23
+ private readonly _fxaaMaterial;
24
24
  private _ssaoMaterial;
25
- private _ssaoBlurMaterial;
26
- private _customObjectRenderTarget;
27
- private _ghostObjectRenderTarget;
28
- private _normalRenderedCadModelTarget;
29
- private _inFrontRenderedCadModelTarget;
30
- private _compositionTarget;
31
- private _ssaoTarget;
32
- private _ssaoBlurTarget;
25
+ private readonly _ssaoBlurCombineMaterial;
26
+ private readonly _customObjectRenderTarget;
27
+ private readonly _ghostObjectRenderTarget;
28
+ private readonly _normalRenderedCadModelTarget;
29
+ private readonly _inFrontRenderedCadModelTarget;
30
+ private readonly _compositionTarget;
31
+ private readonly _ssaoTarget;
32
+ private readonly _ssaoBlurCombineTarget;
33
33
  /**
34
34
  * Holds state of how the last frame was rendered by `render()`. This is used to explicit clear
35
35
  * WebGL2 render targets which might cause geometry to "get stuck" after e.g. removing models.
@@ -40,8 +40,11 @@ export declare class EffectRenderManager {
40
40
  private readonly _renderer;
41
41
  private _renderTarget;
42
42
  private _autoSetTargetSize;
43
+ private _debugRenderTimings;
43
44
  private _uiObjects;
44
45
  set renderOptions(options: RenderOptions);
46
+ set debugRenderTimings(logTimings: boolean);
47
+ get debugRenderTimings(): boolean;
45
48
  addUiObject(object: THREE.Object3D, screenPos: THREE.Vector2, size: THREE.Vector2): void;
46
49
  removeUiObject(object: THREE.Object3D): void;
47
50
  private ssaoParameters;
@@ -70,14 +73,27 @@ export declare class EffectRenderManager {
70
73
  private setSsaoParameters;
71
74
  private renderPostProcessStep;
72
75
  private renderSsao;
76
+ private renderStep;
77
+ private readonly _deepFlushRendererArgs;
78
+ private deepFlushRenderer;
73
79
  private createOutlineColorTexture;
74
80
  private setupCompositionScene;
75
81
  private setupFxaaScene;
76
82
  private setupSsaoScene;
77
83
  private setupSsaoBlurCombineScene;
78
- private createNoiseTexture;
79
84
  private createKernel;
80
85
  private createRenderTriangle;
81
86
  private traverseForRootSectorNode;
82
87
  private setVisibilityOfSectors;
88
+ /**
89
+ * Assign SpectorJS metadata containing names for the render targets when running Reveal
90
+ * in development mode.
91
+ */
92
+ private setupRenderTargetSpectorDebugging;
93
+ /**
94
+ * Assigns SpectorJS metadata to the current framebuffer (render target).
95
+ * This is useful to assign e.g. names to framebuffers to easy debugging in SpectorJS. The metadata
96
+ * will be visible in 'bindFramebuffer'-commands in the SpectorJS report.
97
+ */
98
+ private assignSpectorJsMetadataToRenderTarget;
83
99
  }
@@ -2,8 +2,8 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- import { IndexSet } from '../../../../utilities';
6
- import { NodeAppearanceProvider, NodeAppearance } from '../../../../cad-styling';
5
+ import { IndexSet } from '../../../utilities';
6
+ import { NodeAppearanceProvider, NodeAppearance } from '../../../cad-styling';
7
7
  export declare class NodeAppearanceTextureBuilder {
8
8
  private _defaultAppearance;
9
9
  private readonly _styleProvider;
@@ -32,11 +32,12 @@ export declare class NodeAppearanceTextureBuilder {
32
32
  * A texture holding at least one element per node with color override
33
33
  * and style information. RGB is used to store color, A is used to store
34
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-5: outline color - outline toggle and color ({@see OutlineColor}).
39
- * - 6-7: unused
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}).
40
41
  * Note that in-front and ghost information also is available from
41
42
  * the {@see inFrontTreeIndices} and {@see ghostedTreeIndices} collections.
42
43
  */
@@ -2,5 +2,5 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- import { Materials } from '../../../../cad-parsers';
5
+ import { Materials } from './materials';
6
6
  export declare function createSimpleGeometryMesh(attributeValues: Float32Array, materials: Materials, sectorBounds: THREE.Box3, geometryClipBox: THREE.Box3 | null): THREE.Mesh | undefined;
@@ -2,10 +2,10 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- import { Materials } from './materials';
6
- import { SectorGeometry } from './types';
5
+ import { SectorGeometry } from '../../../cad-parsers';
7
6
  import { BoundingBoxLOD } from '../../../utilities';
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[]> | BoundingBoxLOD | THREE.Mesh<THREE.InstancedBufferGeometry, THREE.ShaderMaterial>, void, unknown>;
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
9
  export declare function determineBoundsFromInstanceMatrices(geometry: THREE.InstancedBufferGeometry): {
10
10
  boundingBox: THREE.Box3;
11
11
  boundingSphere: THREE.Sphere;
@@ -86,7 +86,7 @@ export declare const ssaoShaders: {
86
86
  vertex: string;
87
87
  };
88
88
  /**
89
- * Shader to blur ambient occlusion texture and combine with diffuse
89
+ * Full one-pass SSAO blur shader
90
90
  */
91
91
  export declare const ssaoBlurCombineShaders: {
92
92
  fragment: string;
@@ -62,7 +62,7 @@ export declare type EdgeDetectionParameters = {
62
62
  */
63
63
  export declare type SsaoParameters = {
64
64
  /**
65
- * Quality (Number of samples) to estimate occlusion factor.
65
+ * Quality (Number of samples) tond estimate occlusion factor.
66
66
  */
67
67
  sampleSize: SsaoSampleQuality;
68
68
  /**
@@ -1,13 +1,15 @@
1
- /*!
1
+ /**
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- import { SectorQuads } from './material-manager/rendering/types';
6
- import { RootSectorNode } from './sector/RootSectorNode';
7
- import { CadMaterialManager } from './material-manager/CadMaterialManager';
8
- import { NodeTransformProvider } from './material-manager/styling/NodeTransformProvider';
9
- import { SectorScene, CadModelMetadata, RenderMode, SectorGeometry, InstancedMeshFile } from '../../cad-parsers';
10
- import { NodeAppearanceProvider, NodeAppearance } from '../../cad-styling';
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, PrioritizedArea } from '../../../cad-styling';
10
+ import { SectorScene, CadModelMetadata, SectorGeometry, InstancedMeshFile, RootSectorNode, WantedSector, ConsumedSector } from '../../../cad-parsers';
11
+ import { SectorRepository } from '../../../sector-loader';
12
+ import { ParsedGeometry } from '../../../sector-parser';
11
13
  export declare type ParseCallbackDelegate = (parsed: {
12
14
  lod: string;
13
15
  data: SectorGeometry | SectorQuads;
@@ -23,9 +25,10 @@ export declare class CadNode extends THREE.Object3D {
23
25
  private readonly _cadModelMetadata;
24
26
  private readonly _materialManager;
25
27
  private readonly _sectorScene;
26
- private readonly _previousCameraMatrix;
27
28
  private readonly _instancedMeshManager;
28
- constructor(model: CadModelMetadata, materialManager: CadMaterialManager);
29
+ private readonly _sectorRepository;
30
+ private readonly _geometryBatchingManager;
31
+ constructor(model: CadModelMetadata, materialManager: CadMaterialManager, sectorRepository: SectorRepository);
29
32
  get nodeTransformProvider(): NodeTransformProvider;
30
33
  get nodeAppearanceProvider(): NodeAppearanceProvider;
31
34
  get defaultNodeAppearance(): NodeAppearance;
@@ -33,11 +36,13 @@ export declare class CadNode extends THREE.Object3D {
33
36
  get clippingPlanes(): THREE.Plane[];
34
37
  set clippingPlanes(planes: THREE.Plane[]);
35
38
  get cadModelMetadata(): CadModelMetadata;
39
+ get cadModelIdentifier(): string;
36
40
  get sectorScene(): SectorScene;
37
41
  get rootSector(): RootSectorNode;
38
42
  get materialManager(): CadMaterialManager;
39
43
  set renderMode(mode: RenderMode);
40
44
  get renderMode(): RenderMode;
45
+ loadSector(sector: WantedSector): Promise<ConsumedSector>;
41
46
  /**
42
47
  * Sets transformation matrix of the model. This overrides the current transformation.
43
48
  * @param matrix Transformation matrix.
@@ -48,7 +53,11 @@ export declare class CadNode extends THREE.Object3D {
48
53
  * @param out Preallocated `THREE.Matrix4` (optional).
49
54
  */
50
55
  getModelTransformation(out?: THREE.Matrix4): THREE.Matrix4;
56
+ get prioritizedAreas(): PrioritizedArea[];
51
57
  suggestCameraConfig(): SuggestedCameraConfig;
52
58
  updateInstancedMeshes(instanceMeshFiles: InstancedMeshFile[], modelIdentifier: string, sectorId: number): void;
53
59
  discardInstancedMeshes(sectorId: number): void;
60
+ batchGeometry(geometryBatchingQueue: ParsedGeometry[], sectorId: number): void;
61
+ removeBatchedSectorGeometries(sectorId: number): void;
62
+ clearCache(): void;
54
63
  }
@@ -2,7 +2,7 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- import { NumericRange } from '../../../../utilities';
5
+ import { NumericRange } from '../../../utilities';
6
6
  export declare type NodeTransformChangeEventDelegate = (change: 'set' | 'reset', treeIndices: NumericRange, transform: THREE.Matrix4) => void;
7
7
  export declare class NodeTransformProvider {
8
8
  private readonly _events;
@@ -8,7 +8,7 @@ export declare class NodeTransformTextureBuilder {
8
8
  private readonly _transformOverrideBuffer;
9
9
  private readonly _transformOverrideIndexTexture;
10
10
  private _needsUpdate;
11
- private _handleTransformChangedBound;
11
+ private readonly _handleTransformChangedBound;
12
12
  constructor(treeIndexCount: number, transformProvider: NodeTransformProvider);
13
13
  dispose(): void;
14
14
  get needsUpdate(): boolean;
@@ -8,9 +8,9 @@ export declare class TransformOverrideBuffer {
8
8
  private static readonly BYTES_PER_FLOAT;
9
9
  private _dataTexture;
10
10
  private _textureBuffer;
11
- private _unusedIndices;
12
- private _treeIndexToOverrideIndex;
13
- private _onGenerateNewDataTextureCallback;
11
+ private readonly _unusedIndices;
12
+ private readonly _treeIndexToOverrideIndex;
13
+ private readonly _onGenerateNewDataTextureCallback;
14
14
  get dataTexture(): THREE.DataTexture;
15
15
  get overrideIndices(): Map<number, number>;
16
16
  constructor(onGenerateNewDataTexture: (datatexture: THREE.DataTexture) => void);
@@ -0,0 +1,26 @@
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ /**
6
+ * Colors from the Cognite theme.
7
+ */
8
+ export declare class CogniteColors {
9
+ static readonly Black: THREE.Color;
10
+ static readonly White: THREE.Color;
11
+ static readonly Cyan: THREE.Color;
12
+ static readonly Blue: THREE.Color;
13
+ static readonly Purple: THREE.Color;
14
+ static readonly Pink: THREE.Color;
15
+ static readonly Orange: THREE.Color;
16
+ static readonly Yellow: THREE.Color;
17
+ static readonly VeryLightGray: THREE.Color;
18
+ static readonly LightGray: THREE.Color;
19
+ }
20
+ /**
21
+ * Some additional colors to supplement {@link CogniteColors}.
22
+ */
23
+ export declare class RevealColors {
24
+ static readonly Red: THREE.Color;
25
+ static readonly Green: THREE.Color;
26
+ }
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export { SectorRepository } from './src/SectorRepository';
5
+ export { V8SectorRepository } from './src/V8SectorRepository';
6
+ export { GltfSectorRepository } from './src/GltfSectorRepository';
@@ -0,0 +1,14 @@
1
+ import { ConsumedSector, WantedSector } from '../../cad-parsers';
2
+ import { BinaryFileProvider } from '../../modeldata-api';
3
+ import { CadMaterialManager } from '../../rendering';
4
+ import { SectorRepository } from '..';
5
+ export declare class GltfSectorRepository implements SectorRepository {
6
+ private readonly _gltfSectorParser;
7
+ private readonly _sectorFileProvider;
8
+ private readonly _materialManager;
9
+ constructor(sectorFileProvider: BinaryFileProvider, materialManager: CadMaterialManager);
10
+ loadSector(sector: WantedSector): Promise<ConsumedSector>;
11
+ private createTreeIndexSet;
12
+ private createMesh;
13
+ clear(): void;
14
+ }
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
- import { ConsumedSector, WantedSector } from '../../../cad-parsers';
4
+ import { ConsumedSector, WantedSector } from '../../cad-parsers';
5
5
  export declare type SectorId = number;
6
- export interface Repository {
6
+ export interface SectorRepository {
7
7
  loadSector(sector: WantedSector): Promise<ConsumedSector>;
8
8
  clear(): void;
9
9
  }
@@ -1,17 +1,17 @@
1
1
  /*!
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
- import { CadSectorParser, WantedSector, ConsumedSector } from '../../../cad-parsers';
5
- import { SimpleAndDetailedToSector3D } from './SimpleAndDetailedToSector3D';
6
- import { Repository } from './Repository';
7
- import { BinaryFileProvider } from '../../../modeldata-api';
8
- export declare class CachedRepository implements Repository {
4
+ import { WantedSector, ConsumedSector } from '../../cad-parsers';
5
+ import { SectorRepository } from './SectorRepository';
6
+ import { BinaryFileProvider } from '../../modeldata-api';
7
+ import { CadMaterialManager } from '../../rendering';
8
+ export declare class V8SectorRepository implements SectorRepository {
9
9
  private readonly _consumedSectorCache;
10
10
  private readonly _ctmFileCache;
11
11
  private readonly _modelSectorProvider;
12
12
  private readonly _modelDataParser;
13
13
  private readonly _modelDataTransformer;
14
- constructor(modelSectorProvider: BinaryFileProvider, modelDataParser: CadSectorParser, modelDataTransformer: SimpleAndDetailedToSector3D);
14
+ constructor(modelSectorProvider: BinaryFileProvider, materialManager: CadMaterialManager);
15
15
  clear(): void;
16
16
  loadSector(sector: WantedSector): Promise<ConsumedSector>;
17
17
  private loadSimpleSectorFromNetwork;
@@ -3,17 +3,17 @@
3
3
  */
4
4
  import * as THREE from 'three';
5
5
  import { SectorQuads } from '@cognite/reveal-parser-worker';
6
- import { SectorMetadata, InstancedMeshFile, SectorGeometry } from '../../../cad-parsers';
6
+ import { InstancedMeshFile, SectorGeometry, V8SectorMetadata } from '../../../cad-parsers';
7
7
  import { AutoDisposeGroup } from '../../../utilities';
8
- import { CadMaterialManager } from '../material-manager/CadMaterialManager';
8
+ import { CadMaterialManager } from '../../../rendering';
9
9
  export declare class SimpleAndDetailedToSector3D {
10
10
  private readonly materialManager;
11
11
  constructor(materialManager: CadMaterialManager);
12
- transformSimpleSector(modelIdentifier: string, sector: SectorMetadata, geometry: SectorQuads, geometryClipBox: THREE.Box3 | null): Promise<{
12
+ transformSimpleSector(modelIdentifier: string, sector: V8SectorMetadata, geometry: SectorQuads, geometryClipBox: THREE.Box3 | null): Promise<{
13
13
  sectorMeshes: AutoDisposeGroup;
14
14
  instancedMeshes: InstancedMeshFile[];
15
15
  }>;
16
- transformDetailedSector(modelIdentifier: string, sector: SectorMetadata, geometry: SectorGeometry, geometryClipBox: THREE.Box3 | null): Promise<{
16
+ transformDetailedSector(modelIdentifier: string, sector: V8SectorMetadata, geometry: SectorGeometry, geometryClipBox: THREE.Box3 | null): Promise<{
17
17
  sectorMeshes: AutoDisposeGroup;
18
18
  instancedMeshes: InstancedMeshFile[];
19
19
  }>;
@@ -0,0 +1,16 @@
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import * as THREE from 'three';
5
+ import { SectorQuads } from '@cognite/reveal-parser-worker';
6
+ import { Materials } from '../../../rendering';
7
+ import { AutoDisposeGroup } from '../../../utilities';
8
+ import { InstancedMeshFile, SectorGeometry, V8SectorMetadata } from '../../../cad-parsers';
9
+ export declare function consumeSectorSimple(sector: SectorQuads, sectorBounds: THREE.Box3, materials: Materials, geometryClipBox: THREE.Box3 | null): {
10
+ sectorMeshes: AutoDisposeGroup;
11
+ instancedMeshes: InstancedMeshFile[];
12
+ };
13
+ export declare function consumeSectorDetailed(sector: SectorGeometry, metadata: V8SectorMetadata, materials: Materials, geometryClipBox: THREE.Box3 | null): {
14
+ sectorMeshes: AutoDisposeGroup;
15
+ instancedMeshes: InstancedMeshFile[];
16
+ };
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ export { GltfSectorParser } from './src/GltfSectorParser';
5
+ export { RevealGeometryCollectionType, ParsedGeometry } from './src/types';
@@ -0,0 +1,18 @@
1
+ import { GeometryProcessingPayload, ParsedGeometry } from './types';
2
+ export declare class GltfSectorParser {
3
+ private readonly _glbMetadataParser;
4
+ private static readonly COLLECTION_TYPE_SIZES;
5
+ private static readonly DATA_TYPE_BYTE_SIZES;
6
+ constructor();
7
+ parseSector(data: ArrayBuffer): ParsedGeometry[];
8
+ private traverseDefaultSceneNodes;
9
+ private processNode;
10
+ processInstancedTriangleMesh(payload: GeometryProcessingPayload): ParsedGeometry;
11
+ private processPrimitiveCollection;
12
+ private processTriangleMesh;
13
+ private setIndexBuffer;
14
+ private setPositionBuffer;
15
+ private setInterleavedBufferAttributes;
16
+ private setAttributes;
17
+ private getUniqueComponentViews;
18
+ }
@@ -0,0 +1,14 @@
1
+ /*!
2
+ * Copyright 2021 Cognite AS
3
+ */
4
+ import { GlbHeaderData } from '../types';
5
+ export declare class GlbMetadataParser {
6
+ private readonly _textDecoder;
7
+ private static readonly GLB_HEADER_BYTE_SIZE;
8
+ private static readonly CHUNK_HEADER_BYTE_SIZE;
9
+ constructor();
10
+ parseGlbMetadata(glbByteData: ArrayBuffer): GlbHeaderData;
11
+ private verifyGlbHeaders;
12
+ private parseJson;
13
+ private parseBinHeaders;
14
+ }