@cognite/reveal 3.2.0 → 4.0.0-dev.20221025

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 (209) hide show
  1. package/4ecf80bd209836dc884c.worker.js.LICENSE.txt +24 -0
  2. package/README.md +24 -1
  3. package/eptBinaryDecoder.worker.map +1 -1
  4. package/extensions/datasource.d.ts +1 -1
  5. package/extensions/datasource.js +1 -1
  6. package/extensions/datasource.map +1 -1
  7. package/index.d.ts +5 -2
  8. package/index.js +1 -1
  9. package/index.js.LICENSE.txt +8 -0
  10. package/index.map +1 -1
  11. package/package.json +6 -9
  12. package/packages/360-images/index.d.ts +6 -0
  13. package/packages/360-images/src/Image360Entity.d.ts +44 -0
  14. package/packages/360-images/src/Image360EntityFactory.d.ts +13 -0
  15. package/packages/360-images/src/Image360Facade.d.ts +20 -0
  16. package/packages/360-images/src/Image360Icon.d.ts +16 -0
  17. package/packages/api/src/api-helpers/Image360ApiHelper.d.ts +28 -0
  18. package/packages/api/src/public/RevealManager.d.ts +2 -3
  19. package/packages/api/src/public/migration/Cognite3DViewer.d.ts +44 -19
  20. package/packages/api/src/public/migration/types.d.ts +16 -14
  21. package/packages/api/src/public/types.d.ts +2 -1
  22. package/packages/api/src/storage/RevealManagerHelper.d.ts +1 -1
  23. package/packages/cad-geometry-loaders/index.d.ts +0 -1
  24. package/packages/cad-geometry-loaders/src/CadManager.d.ts +2 -2
  25. package/packages/cad-geometry-loaders/src/CadModelUpdateHandler.d.ts +1 -1
  26. package/packages/cad-geometry-loaders/src/InternalRevealCadOptions.d.ts +0 -6
  27. package/packages/cad-geometry-loaders/src/createCadManager.d.ts +3 -3
  28. package/packages/cad-geometry-loaders/src/sector/SectorLoader.d.ts +1 -2
  29. package/packages/cad-geometry-loaders/src/sector/culling/computeSectorCost.d.ts +0 -1
  30. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/index.d.ts +0 -1
  31. package/packages/cad-model/src/CadModelFactory.d.ts +1 -2
  32. package/packages/cad-model/src/wrappers/CadNode.d.ts +2 -9
  33. package/packages/cad-model/src/wrappers/Cognite3DModel.d.ts +2 -2
  34. package/packages/cad-parsers/index.d.ts +2 -7
  35. package/packages/cad-parsers/src/cad/types.d.ts +0 -12
  36. package/packages/cad-parsers/src/metadata/CadModelMetadata.d.ts +1 -1
  37. package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +1 -1
  38. package/packages/cad-parsers/src/metadata/types.d.ts +0 -1
  39. package/packages/cad-parsers/src/utilities/computeBoundingBoxFromAttributes.d.ts +5 -1
  40. package/packages/cad-styling/index.d.ts +2 -1
  41. package/packages/cad-styling/src/CdfNodeCollectionBase.d.ts +20 -0
  42. package/packages/cad-styling/src/NodeCollectionDeserializer.d.ts +4 -9
  43. package/packages/cad-styling/src/NodeIdNodeCollection.d.ts +30 -0
  44. package/packages/cad-styling/src/PropertyFilterNodeCollection.d.ts +3 -15
  45. package/packages/cad-styling/src/SinglePropertyFilterNodeCollection.d.ts +2 -14
  46. package/packages/cad-styling/src/TreeIndexNodeCollection.d.ts +2 -0
  47. package/packages/camera-manager/index.d.ts +2 -0
  48. package/packages/camera-manager/src/ComboControls.d.ts +1 -3
  49. package/packages/camera-manager/src/Keyboard.d.ts +2 -1
  50. package/packages/camera-manager/src/ProxyCameraManager.d.ts +25 -0
  51. package/packages/camera-manager/src/StationaryCameraManager.d.ts +27 -0
  52. package/packages/data-providers/index.d.ts +21 -0
  53. package/packages/data-providers/src/Image360Provider.d.ts +6 -0
  54. package/packages/data-providers/src/ModelDataProvider.d.ts +21 -0
  55. package/packages/{modeldata-api → data-providers}/src/ModelIdentifier.d.ts +0 -0
  56. package/packages/{modeldata-api → data-providers}/src/ModelMetadataProvider.d.ts +0 -0
  57. package/packages/data-providers/src/PointCloudStylableObjectProvider.d.ts +8 -0
  58. package/packages/data-providers/src/image-360-data-providers/Cdf360ImageEventProvider.d.ts +16 -0
  59. package/packages/data-providers/src/image-360-data-providers/Local360ImageProvider.d.ts +8 -0
  60. package/packages/{modeldata-api/src → data-providers/src/metadata-providers}/CdfModelMetadataProvider.d.ts +3 -3
  61. package/packages/{modeldata-api/src → data-providers/src/metadata-providers}/LocalModelMetadataProvider.d.ts +3 -3
  62. package/packages/{modeldata-api/src → data-providers/src/model-data-providers}/CdfModelDataProvider.d.ts +1 -1
  63. package/packages/{modeldata-api/src → data-providers/src/model-data-providers}/LocalModelDataProvider.d.ts +1 -1
  64. package/packages/{modeldata-api/src → data-providers/src/model-identifiers}/CdfModelIdentifier.d.ts +1 -1
  65. package/packages/{modeldata-api/src → data-providers/src/model-identifiers}/LocalModelIdentifier.d.ts +1 -1
  66. package/packages/data-providers/src/pointcloud-stylable-object-providers/CdfPointCloudStylableObjectProvider.d.ts +14 -0
  67. package/packages/data-providers/src/pointcloud-stylable-object-providers/DummyPointCloudStylableObjectProvider.d.ts +9 -0
  68. package/packages/data-providers/src/pointcloud-stylable-object-providers/StylableObject.d.ts +12 -0
  69. package/packages/data-providers/src/pointcloud-stylable-object-providers/cdfAnnotationsToObjects.d.ts +5 -0
  70. package/packages/data-providers/src/pointcloud-stylable-object-providers/types.d.ts +19 -0
  71. package/packages/data-providers/src/types.d.ts +44 -0
  72. package/packages/{modeldata-api/src → data-providers/src/utilities}/applyDefaultModelTransformation.d.ts +1 -1
  73. package/packages/{modeldata-api/src/utilities.d.ts → data-providers/src/utilities/fetchWithStatusCheck.d.ts} +0 -2
  74. package/packages/data-source/src/CdfDataSource.d.ts +1 -1
  75. package/packages/data-source/src/DataSource.d.ts +1 -1
  76. package/packages/data-source/src/LocalDataSource.d.ts +1 -1
  77. package/packages/metrics/src/types.d.ts +1 -1
  78. package/packages/model-base/src/MetadataRepository.d.ts +1 -1
  79. package/packages/pointcloud-styling/index.d.ts +7 -0
  80. package/packages/pointcloud-styling/src/AnnotationIdPointCloudObjectCollection.d.ts +13 -0
  81. package/packages/pointcloud-styling/src/PointCloudAppearance.d.ts +10 -0
  82. package/packages/pointcloud-styling/src/PointCloudObjectCollection.d.ts +23 -0
  83. package/packages/pointcloud-styling/src/StyledPointCloudObjectCollection.d.ts +13 -0
  84. package/packages/pointclouds/index.d.ts +4 -1
  85. package/packages/pointclouds/src/CognitePointCloudModel.d.ts +68 -17
  86. package/packages/pointclouds/src/PointCloudFactory.d.ts +9 -4
  87. package/packages/pointclouds/src/PointCloudIntersection.d.ts +4 -0
  88. package/packages/pointclouds/src/PointCloudManager.d.ts +6 -5
  89. package/packages/pointclouds/src/PointCloudMetadata.d.ts +2 -2
  90. package/packages/pointclouds/src/PointCloudMetadataRepository.d.ts +1 -1
  91. package/packages/pointclouds/src/PointCloudNode.d.ts +17 -8
  92. package/packages/pointclouds/src/PointCloudPickingHandler.d.ts +4 -0
  93. package/packages/pointclouds/src/PotreeNodeWrapper.d.ts +28 -15
  94. package/packages/pointclouds/src/PotreePnextLoader.d.ts +1 -1
  95. package/packages/pointclouds/src/classificationsProviders/IPointClassificationsProvider.d.ts +8 -0
  96. package/packages/pointclouds/src/classificationsProviders/LocalPointClassificationsProvider.d.ts +9 -0
  97. package/packages/pointclouds/src/classificationsProviders/UrlPointClassificationsProvider.d.ts +12 -0
  98. package/packages/pointclouds/src/constants.d.ts +5 -0
  99. package/packages/pointclouds/src/createPointCloudManager.d.ts +4 -2
  100. package/packages/pointclouds/src/decomposeStylableObjects.d.ts +5 -0
  101. package/packages/pointclouds/src/potree-three-loader/Potree.d.ts +5 -10
  102. package/packages/pointclouds/src/potree-three-loader/geometry/PointCloudEptGeometry.d.ts +7 -12
  103. package/packages/pointclouds/src/potree-three-loader/geometry/PointCloudEptGeometryNode.d.ts +2 -1
  104. package/packages/pointclouds/src/potree-three-loader/index.d.ts +0 -1
  105. package/packages/pointclouds/src/potree-three-loader/loading/ClassificationInfo.d.ts +15 -0
  106. package/packages/pointclouds/src/potree-three-loader/loading/EptBinaryLoader.d.ts +6 -3
  107. package/packages/pointclouds/src/potree-three-loader/loading/EptJson.d.ts +25 -0
  108. package/packages/pointclouds/src/potree-three-loader/loading/EptLoader.d.ts +2 -2
  109. package/packages/pointclouds/src/potree-three-loader/loading/ILoader.d.ts +1 -1
  110. package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctree.d.ts +4 -4
  111. package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctreePickerHelper.d.ts +1 -1
  112. package/packages/pointclouds/src/potree-three-loader/types/IPotree.d.ts +2 -1
  113. package/packages/pointclouds/src/potree-three-loader/utils/createObjectIdMaps.d.ts +6 -0
  114. package/packages/pointclouds/src/potree-three-loader/utils/utils.d.ts +4 -0
  115. package/packages/pointclouds/src/potree-three-loader/workers/assignPointsToObjectsWithWasm.d.ts +5 -0
  116. package/packages/pointclouds/src/potree-three-loader/workers/eptBinaryDecoder.worker.d.ts +7 -18
  117. package/packages/pointclouds/src/potree-three-loader/workers/parseEpt.d.ts +4 -0
  118. package/packages/pointclouds/src/potree-three-loader/workers/types.d.ts +33 -0
  119. package/packages/pointclouds/wasm/index.d.ts +18 -0
  120. package/packages/rendering/index.d.ts +7 -3
  121. package/packages/rendering/src/PointCloudMaterialManager.d.ts +19 -0
  122. package/packages/rendering/src/pointcloud-rendering/PointCloudMaterial.d.ts +121 -0
  123. package/packages/rendering/src/pointcloud-rendering/PointCloudObjectAppearanceTexture.d.ts +30 -0
  124. package/packages/rendering/src/pointcloud-rendering/PointCloudObjectIdMaps.d.ts +7 -0
  125. package/packages/rendering/src/pointcloud-rendering/classification.d.ts +2 -0
  126. package/packages/{pointclouds/src/potree-three-loader/rendering → rendering/src/pointcloud-rendering}/constants.d.ts +7 -5
  127. package/packages/rendering/src/pointcloud-rendering/enums.d.ts +24 -0
  128. package/packages/{pointclouds/src/potree-three-loader/rendering → rendering/src/pointcloud-rendering}/gradients/SpectralGradient.d.ts +0 -0
  129. package/packages/rendering/src/pointcloud-rendering/index.d.ts +8 -0
  130. package/packages/rendering/src/pointcloud-rendering/texture-generation.d.ts +8 -0
  131. package/packages/{pointclouds/src/potree-three-loader/rendering → rendering/src/pointcloud-rendering}/types.d.ts +9 -1
  132. package/packages/rendering/src/render-passes/PointCloudEffectsPass.d.ts +3 -8
  133. package/packages/rendering/src/render-passes/PostProcessingPass.d.ts +1 -0
  134. package/packages/rendering/src/render-passes/types.d.ts +12 -11
  135. package/packages/rendering/src/render-pipeline-providers/DefaultRenderPipelineProvider.d.ts +2 -1
  136. package/packages/rendering/src/render-pipeline-providers/PointCloudRenderPipelineProvider.d.ts +2 -1
  137. package/packages/rendering/src/rendering/shaders.d.ts +4 -0
  138. package/packages/rendering/src/rendering/types.d.ts +0 -1
  139. package/packages/rendering/src/utilities/renderUtilities.d.ts +4 -2
  140. package/packages/sector-loader/index.d.ts +0 -1
  141. package/packages/sector-loader/src/GltfSectorLoader.d.ts +1 -1
  142. package/packages/sector-loader/src/GltfSectorRepository.d.ts +1 -1
  143. package/packages/tools/index.d.ts +0 -3
  144. package/packages/tools/src/Cognite3DViewerToolBase.d.ts +1 -1
  145. package/packages/tools/src/HtmlOverlay/HtmlOverlayTool.d.ts +1 -1
  146. package/packages/tools/src/Measurement/MeasurementTool.d.ts +1 -1
  147. package/packages/utilities/index.d.ts +7 -4
  148. package/packages/utilities/src/SceneHandler.d.ts +6 -6
  149. package/packages/utilities/src/events/types.d.ts +9 -1
  150. package/packages/utilities/src/linalg.d.ts +11 -0
  151. package/packages/utilities/src/shapes/Box.d.ts +12 -0
  152. package/packages/utilities/src/shapes/CompositeShape.d.ts +13 -0
  153. package/packages/utilities/src/shapes/Cylinder.d.ts +14 -0
  154. package/packages/utilities/src/shapes/ISerializableShape.d.ts +11 -0
  155. package/packages/utilities/src/shapes/IShape.d.ts +9 -0
  156. package/packages/utilities/src/shapes/SerializableBox.d.ts +8 -0
  157. package/packages/utilities/src/shapes/SerializableCompositeShape.d.ts +7 -0
  158. package/packages/utilities/src/shapes/SerializableCylinder.d.ts +10 -0
  159. package/packages/utilities/src/shapes/index.d.ts +11 -0
  160. package/packages/utilities/src/three/createDistinctColors.d.ts +5 -0
  161. package/packages/utilities/src/three/fromThreeVector3.d.ts +5 -0
  162. package/packages/utilities/src/workers/workerize-transferable/index.d.ts +7 -0
  163. package/packages/utilities/src/workers/workerize-transferable/message-types.d.ts +4 -0
  164. package/packages/utilities/src/workers/workerize-transferable/on-main.d.ts +13 -0
  165. package/packages/utilities/src/workers/workerize-transferable/on-worker.d.ts +14 -0
  166. package/packages/utilities/src/workers/workerize-transferable/util.d.ts +10 -0
  167. package/packages/utilities/src/worldToViewport.d.ts +4 -0
  168. package/tools.js +1 -1
  169. package/tools.map +1 -1
  170. package/packages/cad-geometry-loaders/src/sector/culling/ByVisibilityGpuSectorCuller.d.ts +0 -51
  171. package/packages/cad-geometry-loaders/src/sector/culling/OrderSectorsByVisibilityCoverage.d.ts +0 -106
  172. package/packages/cad-geometry-loaders/src/sector/culling/RenderAlreadyLoadedGeometryProvider.d.ts +0 -11
  173. package/packages/cad-geometry-loaders/src/sector/culling/createV8SectorCuller.d.ts +0 -7
  174. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorMap.d.ts +0 -17
  175. package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorTree.d.ts +0 -24
  176. package/packages/cad-geometry-loaders/src/utilities/rxOperations.d.ts +0 -6
  177. package/packages/cad-model/src/batching/InstancedMeshManager.d.ts +0 -20
  178. package/packages/cad-parsers/src/cad/CadSectorParser.d.ts +0 -15
  179. package/packages/cad-parsers/src/cad/filterInstanceMesh.d.ts +0 -6
  180. package/packages/cad-parsers/src/cad/filterPrimitivesV8.d.ts +0 -9
  181. package/packages/cad-parsers/src/cad/primitiveGeometries.d.ts +0 -30
  182. package/packages/cad-parsers/src/cad/triangleMeshes.d.ts +0 -6
  183. package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserV8.d.ts +0 -6
  184. package/packages/cad-parsers/src/utilities/float32BufferToMatrix.d.ts +0 -12
  185. package/packages/modeldata-api/index.d.ts +0 -12
  186. package/packages/modeldata-api/src/types.d.ts +0 -43
  187. package/packages/pointclouds/src/createPointClassKey.d.ts +0 -5
  188. package/packages/pointclouds/src/potree-three-loader/rendering/PointCloudMaterial.d.ts +0 -204
  189. package/packages/pointclouds/src/potree-three-loader/rendering/classification.d.ts +0 -2
  190. package/packages/pointclouds/src/potree-three-loader/rendering/clipping.d.ts +0 -12
  191. package/packages/pointclouds/src/potree-three-loader/rendering/enums.d.ts +0 -46
  192. package/packages/pointclouds/src/potree-three-loader/rendering/features.d.ts +0 -6
  193. package/packages/pointclouds/src/potree-three-loader/rendering/index.d.ts +0 -5
  194. package/packages/pointclouds/src/potree-three-loader/rendering/texture-generation.d.ts +0 -5
  195. package/packages/pointclouds/src/potree-three-loader/utils/math.d.ts +0 -1
  196. package/packages/rendering/src/rendering/createSimpleGeometryMesh.d.ts +0 -6
  197. package/packages/rendering/src/rendering/primitives.d.ts +0 -12
  198. package/packages/sector-loader/src/V8SectorRepository.d.ts +0 -26
  199. package/packages/sector-loader/src/v8/SimpleAndDetailedToSector3D.d.ts +0 -20
  200. package/packages/sector-loader/src/v8/arrays.d.ts +0 -5
  201. package/packages/sector-loader/src/v8/groupMeshesByNumber.d.ts +0 -8
  202. package/packages/sector-loader/src/v8/sectorUtilities.d.ts +0 -16
  203. package/packages/tools/src/DebugLoadedSectorsTool.d.ts +0 -23
  204. package/packages/tools/src/Geomap/Geomap.d.ts +0 -17
  205. package/packages/tools/src/Geomap/GeomapTool.d.ts +0 -23
  206. package/packages/tools/src/Geomap/MapConfig.d.ts +0 -195
  207. package/packages/utilities/src/networking/isTheSameDomain.d.ts +0 -11
  208. package/packages/utilities/src/revealEnv.d.ts +0 -10
  209. package/packages/utilities/src/workers/WorkerPool.d.ts +0 -14
@@ -2,7 +2,7 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import { NodesApiClient } from '../../nodes-api';
5
- import { ModelDataProvider, ModelMetadataProvider } from '../../modeldata-api';
5
+ import { ModelDataProvider, ModelMetadataProvider } from '../../data-providers';
6
6
  /**
7
7
  * Describes how Reveal data is stored, and provides means to create custom storage providers
8
8
  * that Reveal will fetch data from.
@@ -2,7 +2,7 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import { NodesApiClient } from '../../nodes-api';
5
- import { ModelDataProvider, ModelMetadataProvider } from '../../modeldata-api';
5
+ import { ModelDataProvider, ModelMetadataProvider } from '../../data-providers';
6
6
  import { DataSource } from './DataSource';
7
7
  /**
8
8
  * Data source for loading models from local storage (i.e. by URL).
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
- export declare type TrackedEvents = 'init' | 'construct3dViewer' | 'loadModel' | 'error' | 'cameraNavigated' | 'toolCreated' | 'cadModelStyleAssigned' | 'cadNodeTransformOverridden';
4
+ export declare type TrackedEvents = 'init' | 'construct3dViewer' | 'loadModel' | 'error' | 'cameraNavigated' | 'toolCreated' | 'cadModelStyleAssigned' | 'cadNodeTransformOverridden' | 'measurementAdded';
5
5
  export declare type EventProps = {
6
6
  [key: string]: any;
7
7
  };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
- import { ModelIdentifier } from '../../modeldata-api';
4
+ import { ModelIdentifier } from '../../data-providers';
5
5
  export interface MetadataRepository<Output> {
6
6
  loadData(modelIdentifier: ModelIdentifier): Output;
7
7
  }
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ export { CompletePointCloudAppearance, PointCloudAppearance, DefaultPointCloudAppearance, applyDefaultsToPointCloudAppearance } from './src/PointCloudAppearance';
5
+ export { StyledPointCloudObjectCollection } from './src/StyledPointCloudObjectCollection';
6
+ export { PointCloudObjectCollection } from './src/PointCloudObjectCollection';
7
+ export { AnnotationIdPointCloudObjectCollection } from './src/AnnotationIdPointCloudObjectCollection';
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ import { PointCloudObjectCollection } from './PointCloudObjectCollection';
5
+ /**
6
+ * A simple PointCloudObjectCollection that consists of an explicitly provided list of annotation IDs
7
+ */
8
+ export declare class AnnotationIdPointCloudObjectCollection extends PointCloudObjectCollection {
9
+ private readonly _annotationIds;
10
+ constructor(ids: Iterable<number>);
11
+ getAnnotationIds(): Iterable<number>;
12
+ get isLoading(): false;
13
+ }
@@ -0,0 +1,10 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ export declare type PointCloudAppearance = {
5
+ color?: [number, number, number];
6
+ visible?: boolean;
7
+ };
8
+ export declare type CompletePointCloudAppearance = Required<PointCloudAppearance>;
9
+ export declare const DefaultPointCloudAppearance: CompletePointCloudAppearance;
10
+ export declare function applyDefaultsToPointCloudAppearance(appearance: PointCloudAppearance): CompletePointCloudAppearance;
@@ -0,0 +1,23 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ /**
5
+ * Base class for collections of point cloud objects intended for styling operations
6
+ */
7
+ export declare abstract class PointCloudObjectCollection {
8
+ private readonly _changedEvent;
9
+ /**
10
+ * @returns annotation IDs of the annotations for the objects represented by this PointCloudObjectCollection instance
11
+ */
12
+ abstract getAnnotationIds(): Iterable<number>;
13
+ /**
14
+ * @returns whether the collection is still loading data in the background i.e. not yet ready for use
15
+ */
16
+ abstract get isLoading(): boolean;
17
+ on(event: 'changed', listener: () => void): void;
18
+ off(event: 'changed', listener: () => void): void;
19
+ /**
20
+ * Triggers the changed-event.
21
+ */
22
+ protected notifyChanged(): void;
23
+ }
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ import { PointCloudObjectCollection } from './PointCloudObjectCollection';
5
+ import { CompletePointCloudAppearance } from './PointCloudAppearance';
6
+ /**
7
+ * Represents an object collection that is associated with an appearance
8
+ */
9
+ export declare class StyledPointCloudObjectCollection {
10
+ objectCollection: PointCloudObjectCollection;
11
+ style: CompletePointCloudAppearance;
12
+ constructor(objectCollection: PointCloudObjectCollection, style: CompletePointCloudAppearance);
13
+ }
@@ -3,7 +3,6 @@
3
3
  */
4
4
  export { PointCloudPickingHandler } from './src/PointCloudPickingHandler';
5
5
  export { WellKnownAsprsPointClassCodes } from './src/types';
6
- export { PotreePointShape, PotreePointColorType, PotreePointSizeType, PointCloudMaterial } from './src/potree-three-loader';
7
6
  export { PointCloudNode } from './src/PointCloudNode';
8
7
  export { PointCloudManager } from './src/PointCloudManager';
9
8
  export { createPointCloudManager } from './src/createPointCloudManager';
@@ -13,3 +12,7 @@ export { CognitePointCloudModel } from './src/CognitePointCloudModel';
13
12
  export { PotreeNodeWrapper } from './src/PotreeNodeWrapper';
14
13
  export { PotreeGroupWrapper } from './src/PotreeGroupWrapper';
15
14
  export { Potree, PointCloudOctree } from './src/PotreePnextLoader';
15
+ export { PointCloudFactory } from './src/PointCloudFactory';
16
+ export { IPointClassificationsProvider } from './src/classificationsProviders/IPointClassificationsProvider';
17
+ export { LocalPointClassificationsProvider } from './src/classificationsProviders/LocalPointClassificationsProvider';
18
+ export { UrlPointClassificationsProvider } from './src/classificationsProviders/UrlPointClassificationsProvider';
@@ -4,20 +4,23 @@
4
4
  import * as THREE from 'three';
5
5
  import { CameraConfiguration } from '../../utilities';
6
6
  import { WellKnownAsprsPointClassCodes } from './types';
7
- import { PotreePointColorType, PotreePointShape, PotreePointSizeType } from './potree-three-loader';
7
+ import { PointColorType, PointShape, PointSizeType } from '../../rendering';
8
8
  import { SupportedModelTypes, CogniteModelBase } from '../../model-base';
9
+ import { PointCloudObjectMetadata } from '../../data-providers';
10
+ import { StyledPointCloudObjectCollection, PointCloudObjectCollection, PointCloudAppearance } from '../../pointcloud-styling';
9
11
  /**
10
12
  * Represents a point clouds model loaded from CDF.
11
13
  * @noInheritDoc
12
14
  * @module @cognite/reveal
13
15
  */
14
- export declare class CognitePointCloudModel extends THREE.Object3D implements CogniteModelBase {
16
+ export declare class CognitePointCloudModel implements CogniteModelBase {
15
17
  readonly type: SupportedModelTypes;
16
18
  readonly modelId: number;
17
19
  /**
18
20
  * The modelId of the point cloud model in Cognite Data Fusion.
19
21
  */
20
22
  readonly revisionId: number;
23
+ private readonly _styledObjectCollections;
21
24
  /**
22
25
  * Used to clean up memory.
23
26
  */
@@ -77,10 +80,14 @@ export declare class CognitePointCloudModel extends THREE.Object3D implements Co
77
80
  */
78
81
  hasClass(pointClass: number | WellKnownAsprsPointClassCodes): boolean;
79
82
  /**
80
- * Returns a list of sorted classification codes present in the model.
81
- * @returns A sorted list of classification codes from the model.
83
+ * Returns a list of sorted classification names and codes present in the model.
84
+ * Names will be the custom names provided by the user, or a default one if none have been provided.
85
+ * @returns A sorted list of classification codes and names from the model.
82
86
  */
83
- getClasses(): Array<number | WellKnownAsprsPointClassCodes>;
87
+ getClasses(): Array<{
88
+ name: string;
89
+ code: number | WellKnownAsprsPointClassCodes;
90
+ }>;
84
91
  /**
85
92
  * Returns the current number of visible/loaded points.
86
93
  */
@@ -88,16 +95,16 @@ export declare class CognitePointCloudModel extends THREE.Object3D implements Co
88
95
  /**
89
96
  * Determines how points currently are colored.
90
97
  */
91
- get pointColorType(): PotreePointColorType;
98
+ get pointColorType(): PointColorType;
92
99
  /**
93
100
  * Specifies how points are colored.
94
- * @default PotreePointColorType.Rgb
101
+ * @default PointColorType.Rgb
95
102
  * @example
96
103
  * ```js
97
- * model.pointColorType = PotreePointColorType.Rgb
104
+ * model.pointColorType = PointColorType.Rgb
98
105
  * ```
99
106
  */
100
- set pointColorType(type: PotreePointColorType);
107
+ set pointColorType(type: PointColorType);
101
108
  /**
102
109
  * Returns the size of each rendered point in the point cloud.
103
110
  */
@@ -110,22 +117,66 @@ export declare class CognitePointCloudModel extends THREE.Object3D implements Co
110
117
  /**
111
118
  * Get the point size type.
112
119
  */
113
- get pointSizeType(): PotreePointSizeType;
120
+ get pointSizeType(): PointSizeType;
114
121
  /**
115
122
  * Set the point size type for the point cloud.
116
123
  * The point size type can be either Fixed or Adaptive.
117
- * @default `PotreePointSizeType.Adaptive`
124
+ * @default `PointSizeType.Adaptive`
118
125
  */
119
- set pointSizeType(type: PotreePointSizeType);
126
+ set pointSizeType(type: PointSizeType);
120
127
  /**
121
128
  * Sets the point shape of each rendered point in the point cloud.
122
- * @default `PotreePointShape.Circle`
123
- * @see {@link PotreePointShape}.
129
+ * @default `PointShape.Circle`
130
+ * @see {@link PointShape}.
124
131
  */
125
- get pointShape(): PotreePointShape;
132
+ get pointShape(): PointShape;
126
133
  /**
127
134
  * Gets the point shape of each rendered point in the point cloud.
128
- * @see {@link PotreePointShape}.
135
+ * @see {@link PointShape}.
129
136
  */
130
- set pointShape(shape: PotreePointShape);
137
+ set pointShape(shape: PointShape);
138
+ /**
139
+ * Gets default point appearance
140
+ */
141
+ getDefaultPointCloudAppearance(): PointCloudAppearance;
142
+ /**
143
+ * Sets default apparance for points that are not styled otherwise
144
+ * @param appearance Appearance to assign as default
145
+ */
146
+ setDefaultPointCloudAppearance(appearance: PointCloudAppearance): void;
147
+ /**
148
+ * Gets the object collections that have been assigned a style
149
+ * @returns All object collections and their associated style
150
+ */
151
+ get styledCollections(): StyledPointCloudObjectCollection[];
152
+ /**
153
+ * Assign a style to a collection of objects. If the object collection has been assigned
154
+ * a style previously, the previous style will be replaced by the new one.
155
+ * @param objectCollection The object collection to assign a style to
156
+ * @param appearance The style to assign to the object collection
157
+ */
158
+ assignStyledObjectCollection(objectCollection: PointCloudObjectCollection, appearance: PointCloudAppearance): void;
159
+ /**
160
+ * Unassign style from an already styled object collection.
161
+ * @param objectCollection The object collection from which to remove the style
162
+ */
163
+ unassignStyledObjectCollection(objectCollection: PointCloudObjectCollection): void;
164
+ /**
165
+ * Removes styling on all object collections in this model
166
+ */
167
+ removeAllStyledObjectCollections(): void;
168
+ /**
169
+ * @returns The number of stylable objects
170
+ */
171
+ get stylableObjectCount(): number;
172
+ /**
173
+ * Iterates through all stylable objects for this model
174
+ * @example
175
+ * ```js
176
+ * model.traverseStylableObjects(
177
+ * annotationMetadata => console.log(annotationMetadata.annotationId)
178
+ * );
179
+ * ```
180
+ */
181
+ traverseStylableObjects(callback: (annotationMetadata: PointCloudObjectMetadata) => void): void;
131
182
  }
@@ -3,11 +3,16 @@
3
3
  */
4
4
  import { PotreeNodeWrapper } from './PotreeNodeWrapper';
5
5
  import { PointCloudMetadata } from './PointCloudMetadata';
6
- import { ModelDataProvider } from '../../modeldata-api';
7
- import { Potree } from './potree-three-loader';
6
+ import { PointCloudStylableObjectProvider } from '../../data-providers';
7
+ import { IPointClassificationsProvider } from './classificationsProviders/IPointClassificationsProvider';
8
+ import { ModelDataProvider } from '../../data-providers';
9
+ import { PointCloudMaterialManager } from '../../rendering';
8
10
  export declare class PointCloudFactory {
9
11
  private readonly _potreeInstance;
10
- constructor(modelLoader: ModelDataProvider);
11
- get potreeInstance(): Potree;
12
+ private readonly _pointCloudObjectProvider;
13
+ private readonly _classificationsProvider;
14
+ private readonly _pointCloudMaterialManager;
15
+ constructor(modelLoader: ModelDataProvider, pointCloudObjectProvider: PointCloudStylableObjectProvider, classificationsProvider: IPointClassificationsProvider, pointCloudMaterialManager: PointCloudMaterialManager);
16
+ dispose(): void;
12
17
  createModel(modelMetadata: PointCloudMetadata): Promise<PotreeNodeWrapper>;
13
18
  }
@@ -23,4 +23,8 @@ export declare type PointCloudIntersection = {
23
23
  * Distance from the camera to the intersection.
24
24
  */
25
25
  distanceToCamera: number;
26
+ /**
27
+ * Annotation Id of the intersected object within a pointcloud. (0 if not applicable)
28
+ */
29
+ annotationId: number;
26
30
  };
@@ -7,19 +7,20 @@ import { PointCloudFactory } from './PointCloudFactory';
7
7
  import { PointCloudNode } from './PointCloudNode';
8
8
  import { PointCloudMetadataRepository } from './PointCloudMetadataRepository';
9
9
  import { PotreeGroupWrapper } from './PotreeGroupWrapper';
10
- import { PointCloudOctree } from './potree-three-loader';
10
+ import { Potree } from './potree-three-loader';
11
11
  import { Observable } from 'rxjs';
12
- import { ModelIdentifier } from '../../modeldata-api';
12
+ import { ModelIdentifier } from '../../data-providers';
13
+ import { PointCloudMaterialManager } from '../../rendering';
13
14
  export declare class PointCloudManager {
14
15
  private readonly _pointCloudMetadataRepository;
15
16
  private readonly _pointCloudFactory;
17
+ private readonly _materialManager;
16
18
  private readonly _pointCloudGroupWrapper;
17
19
  private readonly _cameraSubject;
18
20
  private readonly _modelSubject;
19
21
  private readonly _budgetSubject;
20
22
  private readonly _renderer;
21
- private _clippingPlanes;
22
- constructor(metadataRepository: PointCloudMetadataRepository, modelFactory: PointCloudFactory, scene: THREE.Scene, renderer: THREE.WebGLRenderer);
23
+ constructor(metadataRepository: PointCloudMetadataRepository, materialManager: PointCloudMaterialManager, modelFactory: PointCloudFactory, potreeInstance: Potree, scene: THREE.Scene, renderer: THREE.WebGLRenderer);
23
24
  get pointCloudGroupWrapper(): PotreeGroupWrapper;
24
25
  requestRedraw(): void;
25
26
  resetRedraw(): void;
@@ -27,11 +28,11 @@ export declare class PointCloudManager {
27
28
  set pointBudget(points: number);
28
29
  get needsRedraw(): boolean;
29
30
  set clippingPlanes(planes: THREE.Plane[]);
30
- setClippingPlanesForPointCloud(octree: PointCloudOctree): void;
31
31
  getLoadingStateObserver(): Observable<LoadingState>;
32
32
  updatePointClouds(camera: THREE.PerspectiveCamera): void;
33
33
  updateCamera(camera: THREE.PerspectiveCamera): void;
34
34
  addModel(modelIdentifier: ModelIdentifier): Promise<PointCloudNode>;
35
35
  removeModel(node: PointCloudNode): void;
36
+ dispose(): void;
36
37
  private loadedModelsObservable;
37
38
  }
@@ -3,12 +3,12 @@
3
3
  */
4
4
  import * as THREE from 'three';
5
5
  import { CameraConfiguration } from '../../utilities';
6
- import { File3dFormat } from '../../modeldata-api';
6
+ import { File3dFormat, ModelIdentifier } from '../../data-providers';
7
7
  export interface PointCloudMetadata {
8
- readonly modelIdentifier: symbol;
9
8
  readonly format: File3dFormat;
10
9
  readonly formatVersion: number;
11
10
  readonly modelBaseUrl: string;
11
+ readonly modelIdentifier: ModelIdentifier;
12
12
  readonly modelMatrix: THREE.Matrix4;
13
13
  readonly cameraConfiguration?: CameraConfiguration;
14
14
  readonly scene: any;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { PointCloudMetadata } from './PointCloudMetadata';
5
5
  import { MetadataRepository } from '../../model-base';
6
- import { ModelDataProvider, ModelMetadataProvider, ModelIdentifier } from '../../modeldata-api';
6
+ import { ModelDataProvider, ModelMetadataProvider, ModelIdentifier } from '../../data-providers';
7
7
  export declare class PointCloudMetadataRepository implements MetadataRepository<Promise<PointCloudMetadata>> {
8
8
  private readonly _modelMetadataProvider;
9
9
  private readonly _modelDataProvider;
@@ -6,7 +6,9 @@ import { CameraConfiguration } from '../../utilities';
6
6
  import { PotreeGroupWrapper } from './PotreeGroupWrapper';
7
7
  import { PotreeNodeWrapper } from './PotreeNodeWrapper';
8
8
  import { WellKnownAsprsPointClassCodes } from './types';
9
- import { PickPoint, PotreePointColorType, PotreePointShape, PotreePointSizeType } from './potree-three-loader';
9
+ import { PickPoint } from './potree-three-loader';
10
+ import { PointColorType, PointShape, PointSizeType } from '../../rendering';
11
+ import { CompletePointCloudAppearance, StyledPointCloudObjectCollection } from '../../pointcloud-styling';
10
12
  export declare class PointCloudNode extends THREE.Group {
11
13
  private readonly _potreeGroup;
12
14
  private readonly _potreeNode;
@@ -20,13 +22,13 @@ export declare class PointCloudNode extends THREE.Group {
20
22
  requestRedraw(): void;
21
23
  get pointSize(): number;
22
24
  set pointSize(size: number);
23
- get pointSizeType(): PotreePointSizeType;
24
- set pointSizeType(pointSizeType: PotreePointSizeType);
25
+ get pointSizeType(): PointSizeType;
26
+ set pointSizeType(pointSizeType: PointSizeType);
25
27
  get visiblePointCount(): number;
26
- get pointColorType(): PotreePointColorType;
27
- set pointColorType(type: PotreePointColorType);
28
- get pointShape(): PotreePointShape;
29
- set pointShape(value: PotreePointShape);
28
+ get pointColorType(): PointColorType;
29
+ set pointColorType(type: PointColorType);
30
+ get pointShape(): PointShape;
31
+ set pointShape(value: PointShape);
30
32
  /**
31
33
  * GPU-based picking allowing to get point data based on ray directing from the camera.
32
34
  * @param renderer Renderer object used for Reveal rendereing.
@@ -62,8 +64,15 @@ export declare class PointCloudNode extends THREE.Group {
62
64
  * Returns a list of sorted classification codes present in the model.
63
65
  * @returns A sorted list of classification codes from the model.
64
66
  */
65
- getClasses(): Array<number | WellKnownAsprsPointClassCodes>;
67
+ getClasses(): Array<{
68
+ name: string;
69
+ code: number | WellKnownAsprsPointClassCodes;
70
+ }>;
66
71
  getBoundingBox(outBbox?: THREE.Box3): THREE.Box3;
67
72
  setModelTransformation(matrix: THREE.Matrix4): void;
68
73
  getModelTransformation(out?: THREE.Matrix4): THREE.Matrix4;
74
+ get defaultAppearance(): CompletePointCloudAppearance;
75
+ set defaultAppearance(appearance: CompletePointCloudAppearance);
76
+ assignStyledPointCloudObjectCollection(styledCollection: StyledPointCloudObjectCollection): void;
77
+ removeAllStyledPointCloudObjects(): void;
69
78
  }
@@ -25,6 +25,10 @@ export interface IntersectPointCloudNodeResult {
25
25
  * The geometry object that was intersected.
26
26
  */
27
27
  object: THREE.Object3D;
28
+ /**
29
+ * annotationId of the clicked object within a pointcloud.
30
+ */
31
+ annotationId: number;
28
32
  }
29
33
  export declare class PointCloudPickingHandler {
30
34
  private readonly _normalized;
@@ -2,16 +2,12 @@
2
2
  * Copyright 2021 Cognite AS
3
3
  */
4
4
  import * as THREE from 'three';
5
- export declare type PotreeClassification = {
6
- [pointClass: number]: {
7
- x: number;
8
- y: number;
9
- z: number;
10
- w: number;
11
- };
12
- };
13
- import { PointCloudOctree, PotreePointColorType, PotreePointShape, PickPoint } from './potree-three-loader';
5
+ import { StyledPointCloudObjectCollection, CompletePointCloudAppearance } from '../../pointcloud-styling';
6
+ import { PointCloudOctree, PickPoint } from './potree-three-loader';
7
+ import { PointColorType, PointShape, PointClassification } from '../../rendering';
14
8
  import { WellKnownAsprsPointClassCodes } from './types';
9
+ import { PointCloudObjectMetadata, PointCloudObject } from '../../data-providers';
10
+ import { ClassificationInfo } from './potree-three-loader/loading/ClassificationInfo';
15
11
  /**
16
12
  * Wrapper around `Potree.PointCloudOctree` with some convenience functions.
17
13
  */
@@ -21,19 +17,36 @@ export declare class PotreeNodeWrapper {
21
17
  private readonly _classification;
22
18
  private readonly _modelIdentifier;
23
19
  private static readonly pickingWindowSize;
20
+ private readonly _classNameToCodeMap;
21
+ private readonly _annotations;
24
22
  get needsRedraw(): boolean;
25
- constructor(octree: PointCloudOctree, modelIdentifier: symbol);
23
+ constructor(modelIdentifier: symbol, octree: PointCloudOctree, annotations: PointCloudObject[], classificationInfo: ClassificationInfo);
24
+ private createClassNameToCodeMap;
25
+ private getDefaultClassColor;
26
+ private createDefaultClassNameToCodeMap;
27
+ private updateMaterialClassMap;
26
28
  get modelIdentifier(): symbol;
27
29
  get pointSize(): number;
28
30
  set pointSize(size: number);
29
31
  get visiblePointCount(): number;
30
32
  get boundingBox(): THREE.Box3;
31
- get pointColorType(): PotreePointColorType;
32
- set pointColorType(type: PotreePointColorType);
33
- get pointShape(): PotreePointShape;
34
- set pointShape(shape: PotreePointShape);
35
- get classification(): PotreeClassification;
33
+ get pointColorType(): PointColorType;
34
+ set pointColorType(type: PointColorType);
35
+ get pointShape(): PointShape;
36
+ set pointShape(shape: PointShape);
37
+ get classification(): PointClassification;
38
+ private getClassNameFromCode;
39
+ get classes(): Array<{
40
+ name: string;
41
+ code: number;
42
+ }>;
43
+ get stylableObjectAnnotationMetadata(): Iterable<PointCloudObjectMetadata>;
44
+ get stylableObjects(): PointCloudObject[];
45
+ get defaultAppearance(): CompletePointCloudAppearance;
46
+ set defaultAppearance(appearance: CompletePointCloudAppearance);
36
47
  pick(renderer: THREE.WebGLRenderer, camera: THREE.Camera, ray: THREE.Ray): PickPoint | null;
48
+ assignObjectStyle(styledCollection: StyledPointCloudObjectCollection): void;
49
+ createPointClassKey(pointClass: number | WellKnownAsprsPointClassCodes): number;
37
50
  setClassificationAndRecompute(pointClass: number | WellKnownAsprsPointClassCodes, visible: boolean): void;
38
51
  resetRedraw(): void;
39
52
  }
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Copyright 2022 Cognite AS
3
3
  */
4
- export { Potree, PointCloudOctree, PotreePointSizeType } from './potree-three-loader';
4
+ export { Potree, PointCloudOctree } from './potree-three-loader';
@@ -0,0 +1,8 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ import { PointCloudMetadata } from '../PointCloudMetadata';
5
+ import { ClassificationInfo } from '../potree-three-loader/loading/ClassificationInfo';
6
+ export interface IPointClassificationsProvider {
7
+ getClassifications(modelMetadata: PointCloudMetadata): Promise<ClassificationInfo>;
8
+ }
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ import { IPointClassificationsProvider } from './IPointClassificationsProvider';
5
+ import { PointCloudMetadata } from '../PointCloudMetadata';
6
+ import { ClassificationInfo } from '../potree-three-loader/loading/ClassificationInfo';
7
+ export declare class LocalPointClassificationsProvider implements IPointClassificationsProvider {
8
+ getClassifications(_modelMetadata: PointCloudMetadata): Promise<ClassificationInfo>;
9
+ }
@@ -0,0 +1,12 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ import { ModelDataProvider } from '../../../data-providers';
5
+ import { IPointClassificationsProvider } from './IPointClassificationsProvider';
6
+ import { PointCloudMetadata } from '../PointCloudMetadata';
7
+ import { ClassificationInfo } from '../potree-three-loader/loading/ClassificationInfo';
8
+ export declare class UrlPointClassificationsProvider implements IPointClassificationsProvider {
9
+ _dataProvider: ModelDataProvider;
10
+ constructor(dataProvider: ModelDataProvider);
11
+ getClassifications(modelMetadata: PointCloudMetadata): Promise<ClassificationInfo>;
12
+ }
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ export declare const DEFAULT_POINT_CLOUD_METADATA_FILE = "ept.json";
5
+ export declare const DEFAULT_POINT_CLOUD_CLASS_DEFINITION_FILE = "classificationSets.json";
@@ -3,5 +3,7 @@
3
3
  */
4
4
  import { PointCloudManager } from './PointCloudManager';
5
5
  import * as THREE from 'three';
6
- import { ModelDataProvider, ModelMetadataProvider } from '../../modeldata-api';
7
- export declare function createPointCloudManager(modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider, scene: THREE.Scene, renderer: THREE.WebGLRenderer): PointCloudManager;
6
+ import { ModelDataProvider, ModelMetadataProvider, PointCloudStylableObjectProvider } from '../../data-providers';
7
+ import { IPointClassificationsProvider } from './classificationsProviders/IPointClassificationsProvider';
8
+ import { PointCloudMaterialManager } from '../../rendering';
9
+ export declare function createPointCloudManager(modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider, pointCloudStylableObjectProvider: PointCloudStylableObjectProvider, classificationsProvider: IPointClassificationsProvider, pointCloudMaterialManager: PointCloudMaterialManager, scene: THREE.Scene, renderer: THREE.WebGLRenderer): PointCloudManager;
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright 2022 Cognite AS
3
+ */
4
+ import { StylableObject } from '../../data-providers';
5
+ export declare function decomposeStylableObjects(stylableObjects: StylableObject[]): StylableObject[];
@@ -1,9 +1,10 @@
1
1
  import { Camera, WebGLRenderer } from 'three';
2
+ import { PointCloudMaterialManager } from '../../../rendering';
2
3
  import { PointCloudOctree } from './tree/PointCloudOctree';
3
4
  import { IPotree } from './types/IPotree';
4
5
  import { IPointCloudTreeNodeBase } from './tree/IPointCloudTreeNodeBase';
5
6
  import { LRU } from './utils/lru';
6
- import { ModelDataProvider } from '../../../modeldata-api';
7
+ import { ModelDataProvider, PointCloudObject } from '../../../data-providers';
7
8
  export declare class QueueItem {
8
9
  pointCloudIndex: number;
9
10
  weight: number;
@@ -15,17 +16,12 @@ export declare class Potree implements IPotree {
15
16
  private _pointBudget;
16
17
  private readonly _rendererSize;
17
18
  private readonly _modelDataProvider;
19
+ private readonly _materialManager;
18
20
  private readonly _throttledUpdateFunc;
19
21
  maxNumNodesLoading: number;
20
- features: {
21
- SHADER_INTERPOLATION: boolean;
22
- SHADER_SPLATS: boolean;
23
- SHADER_EDL: boolean;
24
- precision: string;
25
- };
26
22
  lru: LRU;
27
- constructor(modelDataProvider: ModelDataProvider);
28
- loadPointCloud(baseUrl: string, fileName: string, _xhrRequest?: (input: RequestInfo, init?: RequestInit) => Promise<Response>): Promise<PointCloudOctree>;
23
+ constructor(modelDataProvider: ModelDataProvider, pointCloudMaterialManager: PointCloudMaterialManager);
24
+ loadPointCloud(baseUrl: string, fileName: string, pointCloudObjects: PointCloudObject[], modelIdentifier: symbol): Promise<PointCloudOctree>;
29
25
  updatePointClouds(pointClouds: PointCloudOctree[], camera: Camera, renderer: WebGLRenderer): void;
30
26
  private innerUpdatePointClouds;
31
27
  get pointBudget(): number;
@@ -38,6 +34,5 @@ export declare class Potree implements IPotree {
38
34
  private updateTreeNodeVisibility;
39
35
  private updateChildVisibility;
40
36
  private updateBoundingBoxVisibility;
41
- private shouldClip;
42
37
  private readonly updateVisibilityStructures;
43
38
  }