@cognite/reveal 3.0.2 → 3.2.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.
- package/README.md +10 -0
- package/eptBinaryDecoder.worker.map +1 -0
- package/extensions/datasource.d.ts +9 -9
- package/extensions/datasource.js +2 -26
- package/{core/src/public/migration/RenderController.d.ts → extensions/datasource.js.LICENSE.txt} +3 -4
- package/extensions/datasource.map +1 -1
- package/index.d.ts +13 -13
- package/index.js +2 -528
- package/index.js.LICENSE.txt +11 -0
- package/index.map +1 -1
- package/package.json +9 -6
- package/packages/api/index.d.ts +11 -0
- package/{core → packages/api}/src/public/RevealManager.d.ts +52 -61
- package/{core → packages/api}/src/public/createRevealManager.d.ts +24 -23
- package/{core → packages/api}/src/public/migration/Cognite3DViewer.d.ts +509 -485
- package/packages/api/src/public/migration/renderOptionsHelpers.d.ts +36 -0
- package/{core → packages/api}/src/public/migration/types.d.ts +180 -169
- package/{core → packages/api}/src/public/types.d.ts +31 -25
- package/{core → packages/api}/src/storage/RevealManagerHelper.d.ts +61 -59
- package/{core → packages/api}/src/utilities/Spinner.d.ts +27 -27
- package/{core → packages/api}/src/utilities/ViewStateHelper.d.ts +49 -49
- package/{core → packages/api}/src/utilities/reflection.d.ts +7 -7
- package/packages/cad-geometry-loaders/index.d.ts +10 -7
- package/packages/cad-geometry-loaders/src/CadLoadingHints.d.ts +11 -11
- package/packages/{cad-model → cad-geometry-loaders}/src/CadManager.d.ts +46 -48
- package/packages/cad-geometry-loaders/src/CadModelBudget.d.ts +21 -21
- package/packages/cad-geometry-loaders/src/CadModelUpdateHandler.d.ts +44 -44
- package/packages/{cad-model → cad-geometry-loaders}/src/InternalRevealCadOptions.d.ts +13 -13
- package/packages/{cad-model → cad-geometry-loaders}/src/createCadManager.d.ts +10 -10
- package/packages/cad-geometry-loaders/src/sector/ModelStateHandler.d.ts +12 -12
- package/packages/cad-geometry-loaders/src/sector/SectorDownloadScheduler.d.ts +22 -22
- package/packages/cad-geometry-loaders/src/sector/SectorLoader.d.ts +32 -32
- package/packages/cad-geometry-loaders/src/sector/culling/ByScreenSizeSectorCuller.d.ts +23 -23
- package/packages/cad-geometry-loaders/src/sector/culling/ByVisibilityGpuSectorCuller.d.ts +51 -51
- package/packages/cad-geometry-loaders/src/sector/culling/OrderSectorsByVisibilityCoverage.d.ts +106 -106
- package/packages/cad-geometry-loaders/src/sector/culling/RenderAlreadyLoadedGeometryProvider.d.ts +11 -9
- package/packages/cad-geometry-loaders/src/sector/culling/SectorCuller.d.ts +33 -33
- package/packages/cad-geometry-loaders/src/sector/culling/WeightFunctionsHelper.d.ts +51 -50
- package/packages/cad-geometry-loaders/src/sector/culling/computeNdcAreaOfBox.d.ts +12 -12
- package/packages/cad-geometry-loaders/src/sector/culling/computeSectorCost.d.ts +7 -7
- package/packages/cad-geometry-loaders/src/sector/culling/createV8SectorCuller.d.ts +7 -7
- package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenSectorMapBase.d.ts +11 -11
- package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorMap.d.ts +17 -17
- package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV8SectorTree.d.ts +24 -24
- package/packages/cad-geometry-loaders/src/sector/culling/takensectors/TakenV9SectorMap.d.ts +20 -20
- package/packages/cad-geometry-loaders/src/sector/culling/takensectors/index.d.ts +5 -5
- package/packages/cad-geometry-loaders/src/sector/culling/transformBoxToNDC.d.ts +5 -5
- package/packages/cad-geometry-loaders/src/sector/culling/types.d.ts +83 -83
- package/packages/cad-geometry-loaders/src/sector/rxSectorUtilities.d.ts +12 -12
- package/packages/cad-geometry-loaders/src/utilities/PromiseUtils.d.ts +28 -28
- package/packages/cad-geometry-loaders/src/utilities/rxOperations.d.ts +6 -6
- package/packages/cad-model/index.d.ts +9 -12
- package/packages/cad-model/src/CadModelFactory.d.ts +17 -16
- package/packages/{rendering/src → cad-model/src/batching}/GeometryBatchingManager.d.ts +31 -31
- package/packages/{rendering/src → cad-model/src/batching}/InstancedMeshManager.d.ts +20 -20
- package/packages/cad-model/src/picking/PickingHandler.d.ts +36 -0
- package/packages/cad-model/src/picking/readPixelsFromTargetAsync.d.ts +17 -0
- package/packages/cad-model/src/types.d.ts +59 -0
- package/packages/cad-model/src/{BoundingBoxClipper.d.ts → utilities/BoundingBoxClipper.d.ts} +23 -23
- package/packages/cad-model/src/{NodeIdAndTreeIndexMaps.d.ts → utilities/NodeIdAndTreeIndexMaps.d.ts} +4 -4
- package/packages/cad-model/src/{callActionWithIndicesAsync.d.ts → utilities/callActionWithIndicesAsync.d.ts} +4 -4
- package/packages/{rendering/src/sector → cad-model/src/wrappers}/CadNode.d.ts +54 -57
- package/packages/cad-model/src/{Cognite3DModel.d.ts → wrappers/Cognite3DModel.d.ts} +337 -337
- package/packages/cad-parsers/index.d.ts +20 -20
- package/packages/cad-parsers/src/cad/CadSectorParser.d.ts +15 -15
- package/packages/cad-parsers/src/cad/LevelOfDetail.d.ts +8 -8
- package/packages/cad-parsers/src/cad/filterInstanceMesh.d.ts +6 -6
- package/packages/cad-parsers/src/cad/filterPrimitivesCommon.d.ts +5 -5
- package/packages/cad-parsers/src/cad/filterPrimitivesV8.d.ts +9 -9
- package/packages/cad-parsers/src/cad/filterPrimitivesV9.d.ts +6 -6
- package/packages/cad-parsers/src/cad/primitiveGeometries.d.ts +30 -30
- package/packages/cad-parsers/src/cad/triangleMeshes.d.ts +6 -6
- package/packages/cad-parsers/src/cad/types.d.ts +56 -56
- package/packages/cad-parsers/src/metadata/CadMetadataParser.d.ts +7 -7
- package/packages/cad-parsers/src/metadata/CadModelClipper.d.ts +10 -10
- package/packages/cad-parsers/src/metadata/CadModelMetadata.d.ts +54 -54
- package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +16 -16
- package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserGltf.d.ts +8 -8
- package/packages/cad-parsers/src/metadata/parsers/CadMetadataParserV8.d.ts +6 -6
- package/packages/cad-parsers/src/metadata/parsers/types.d.ts +62 -62
- package/packages/cad-parsers/src/metadata/types.d.ts +53 -53
- package/packages/cad-parsers/src/sector/RootSectorNode.d.ts +13 -13
- package/packages/cad-parsers/src/sector/SectorNode.d.ts +22 -22
- package/packages/cad-parsers/src/utilities/SectorScene.d.ts +23 -23
- package/packages/cad-parsers/src/utilities/SectorSceneFactory.d.ts +9 -9
- package/packages/cad-parsers/src/utilities/computeBoundingBoxFromAttributes.d.ts +10 -10
- package/packages/cad-parsers/src/utilities/float32BufferToMatrix.d.ts +12 -12
- package/packages/cad-parsers/src/utilities/types.d.ts +71 -71
- package/packages/cad-styling/index.d.ts +20 -20
- package/packages/cad-styling/src/AssetNodeCollection.d.ts +47 -47
- package/packages/cad-styling/src/CdfModelNodeCollectionDataProvider.d.ts +26 -26
- package/packages/cad-styling/src/CombineNodeCollectionBase.d.ts +34 -34
- package/packages/cad-styling/src/IntersectionNodeCollection.d.ts +20 -20
- package/packages/cad-styling/src/InvertedNodeCollection.d.ts +27 -27
- package/packages/cad-styling/src/NodeAppearance.d.ts +85 -85
- package/packages/cad-styling/src/NodeAppearanceProvider.d.ts +38 -38
- package/packages/cad-styling/src/NodeCollection.d.ts +31 -26
- package/packages/cad-styling/src/NodeCollectionDeserializer.d.ts +26 -26
- package/packages/cad-styling/src/PopulateIndexSetFromPagedResponseHelper.d.ts +30 -30
- package/packages/cad-styling/src/PropertyFilterNodeCollection.d.ts +57 -57
- package/packages/cad-styling/src/SerializedNodeCollection.d.ts +8 -8
- package/packages/cad-styling/src/SinglePropertyFilterNodeCollection.d.ts +53 -53
- package/packages/cad-styling/src/TreeIndexNodeCollection.d.ts +40 -40
- package/packages/cad-styling/src/UnionNodeCollection.d.ts +19 -19
- package/packages/cad-styling/src/prioritized/AreaCollection.d.ts +39 -39
- package/packages/cad-styling/src/prioritized/BoxClusterer.d.ts +29 -29
- package/packages/cad-styling/src/prioritized/ClusteredAreaCollection.d.ts +17 -17
- package/packages/cad-styling/src/prioritized/EmptyAreaCollection.d.ts +18 -18
- package/packages/cad-styling/src/prioritized/types.d.ts +7 -7
- package/packages/camera-manager/index.d.ts +8 -8
- package/packages/camera-manager/src/CameraManager.d.ts +78 -74
- package/packages/camera-manager/src/CameraManagerHelper.d.ts +42 -42
- package/packages/camera-manager/src/ComboControls.d.ts +112 -112
- package/packages/camera-manager/src/DefaultCameraManager.d.ts +150 -136
- package/packages/camera-manager/src/Keyboard.d.ts +18 -17
- package/packages/camera-manager/src/types.d.ts +66 -66
- package/packages/data-source/index.d.ts +6 -6
- package/packages/data-source/src/CdfDataSource.d.ts +19 -19
- package/packages/data-source/src/DataSource.d.ts +25 -25
- package/packages/data-source/src/LocalDataSource.d.ts +15 -15
- package/packages/logger/index.d.ts +5 -5
- package/packages/logger/src/Log.d.ts +5 -5
- package/packages/metrics/index.d.ts +4 -4
- package/packages/metrics/src/MetricsLogger.d.ts +34 -21
- package/packages/metrics/src/types.d.ts +7 -7
- package/packages/model-base/index.d.ts +7 -7
- package/packages/model-base/src/CogniteModelBase.d.ts +17 -17
- package/packages/model-base/src/MetadataRepository.d.ts +7 -7
- package/packages/model-base/src/SupportedModelTypes.d.ts +4 -4
- package/packages/model-base/src/types.d.ts +36 -36
- package/packages/modeldata-api/index.d.ts +12 -12
- package/packages/modeldata-api/src/CdfModelDataProvider.d.ts +16 -17
- package/packages/modeldata-api/src/CdfModelIdentifier.d.ts +15 -15
- package/packages/modeldata-api/src/CdfModelMetadataProvider.d.ts +20 -20
- package/packages/modeldata-api/src/LocalModelDataProvider.d.ts +8 -10
- package/packages/modeldata-api/src/LocalModelIdentifier.d.ts +14 -14
- package/packages/modeldata-api/src/LocalModelMetadataProvider.d.ts +16 -16
- package/packages/modeldata-api/src/ModelIdentifier.d.ts +12 -12
- package/packages/modeldata-api/src/ModelMetadataProvider.d.ts +18 -18
- package/packages/modeldata-api/src/applyDefaultModelTransformation.d.ts +6 -6
- package/packages/modeldata-api/src/types.d.ts +43 -47
- package/packages/modeldata-api/src/utilities.d.ts +7 -7
- package/packages/nodes-api/index.d.ts +6 -6
- package/packages/nodes-api/src/NodesApiClient.d.ts +50 -50
- package/packages/nodes-api/src/NodesCdfClient.d.ts +24 -24
- package/packages/nodes-api/src/NodesLocalClient.d.ts +30 -30
- package/packages/nodes-api/src/types.d.ts +10 -10
- package/packages/pointclouds/index.d.ts +15 -11
- package/packages/pointclouds/src/CognitePointCloudModel.d.ts +131 -120
- package/packages/pointclouds/src/PointCloudBudget.d.ts +14 -14
- package/packages/pointclouds/src/PointCloudFactory.d.ts +13 -9
- package/packages/pointclouds/src/PointCloudIntersection.d.ts +26 -26
- package/packages/pointclouds/src/PointCloudManager.d.ts +37 -26
- package/packages/pointclouds/src/PointCloudMetadata.d.ts +15 -14
- package/packages/pointclouds/src/PointCloudMetadataRepository.d.ts +14 -14
- package/packages/pointclouds/src/PointCloudNode.d.ts +69 -62
- package/packages/pointclouds/src/{picking.d.ts → PointCloudPickingHandler.d.ts} +36 -29
- package/packages/pointclouds/src/PotreeGroupWrapper.d.ts +46 -39
- package/packages/pointclouds/src/PotreeNodeWrapper.d.ts +39 -37
- package/packages/pointclouds/src/PotreePnextLoader.d.ts +4 -0
- package/packages/pointclouds/src/createPointClassKey.d.ts +5 -0
- package/packages/pointclouds/src/createPointCloudManager.d.ts +7 -6
- package/packages/pointclouds/src/potree-three-loader/Potree.d.ts +43 -0
- package/packages/pointclouds/src/potree-three-loader/geometry/IPointCloudTreeGeometry.d.ts +10 -0
- package/packages/pointclouds/src/potree-three-loader/geometry/IPointCloudTreeGeometryNode.d.ts +11 -0
- package/packages/pointclouds/src/potree-three-loader/geometry/PointCloudEptGeometry.d.ts +50 -0
- package/packages/pointclouds/src/potree-three-loader/geometry/PointCloudEptGeometryNode.d.ts +63 -0
- package/packages/pointclouds/src/potree-three-loader/geometry/translationUtils.d.ts +7 -0
- package/packages/pointclouds/src/potree-three-loader/index.d.ts +10 -0
- package/packages/pointclouds/src/potree-three-loader/loading/EptBinaryLoader.d.ts +12 -0
- package/packages/pointclouds/src/potree-three-loader/loading/EptLoader.d.ts +5 -0
- package/packages/pointclouds/src/potree-three-loader/loading/ILoader.d.ts +4 -0
- package/packages/pointclouds/src/potree-three-loader/loading/globalLoadingCounter.d.ts +5 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/PointCloudMaterial.d.ts +204 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/classification.d.ts +2 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/clipping.d.ts +12 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/constants.d.ts +15 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/enums.d.ts +46 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/features.d.ts +6 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/gradients/SpectralGradient.d.ts +2 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/index.d.ts +5 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/texture-generation.d.ts +5 -0
- package/packages/pointclouds/src/potree-three-loader/rendering/types.d.ts +10 -0
- package/packages/pointclouds/src/potree-three-loader/tree/IPointCloudTreeNode.d.ts +7 -0
- package/packages/pointclouds/src/potree-three-loader/tree/IPointCloudTreeNodeBase.d.ts +18 -0
- package/packages/pointclouds/src/potree-three-loader/tree/PointAttributes.d.ts +52 -0
- package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctree.d.ts +48 -0
- package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctreeNode.d.ts +27 -0
- package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctreePicker.d.ts +14 -0
- package/packages/pointclouds/src/potree-three-loader/tree/PointCloudOctreePickerHelper.d.ts +57 -0
- package/packages/pointclouds/src/potree-three-loader/tree/PointCloudTree.d.ts +6 -0
- package/packages/pointclouds/src/potree-three-loader/types/IPotree.d.ts +10 -0
- package/packages/pointclouds/src/potree-three-loader/types/IVisibilityUpdateResult.d.ts +18 -0
- package/packages/pointclouds/src/potree-three-loader/types/type-predicates.d.ts +6 -0
- package/packages/pointclouds/src/potree-three-loader/types/types.d.ts +14 -0
- package/packages/pointclouds/src/potree-three-loader/utils/BinaryHeap.d.ts +11 -0
- package/packages/pointclouds/src/potree-three-loader/utils/WorkerPool.d.ts +31 -0
- package/packages/pointclouds/src/potree-three-loader/utils/async-blocking-queue.d.ts +8 -0
- package/packages/pointclouds/src/potree-three-loader/utils/bounds.d.ts +6 -0
- package/packages/pointclouds/src/potree-three-loader/utils/box3-helper.d.ts +13 -0
- package/packages/pointclouds/src/potree-three-loader/utils/lru.d.ts +32 -0
- package/packages/pointclouds/src/potree-three-loader/utils/math.d.ts +1 -0
- package/packages/pointclouds/src/potree-three-loader/utils/utils.d.ts +8 -0
- package/packages/pointclouds/src/potree-three-loader/version.d.ts +9 -0
- package/packages/pointclouds/src/potree-three-loader/workers/eptBinaryDecoder.worker.d.ts +18 -0
- package/packages/pointclouds/src/types.d.ts +84 -114
- package/packages/rendering/index.d.ts +18 -14
- package/packages/rendering/src/CadMaterialManager.d.ts +39 -39
- package/packages/rendering/src/RenderPass.d.ts +15 -0
- package/packages/rendering/src/RenderPipelineExecutor.d.ts +13 -0
- package/packages/rendering/src/RenderPipelineProvider.d.ts +15 -0
- package/packages/rendering/src/pipeline-executors/BasicPipelineExecutor.d.ts +22 -0
- package/packages/rendering/src/render-passes/GeometryPass.d.ts +16 -0
- package/packages/rendering/src/render-passes/PointCloudEffectsPass.d.ts +16 -0
- package/packages/rendering/src/render-passes/PostProcessingPass.d.ts +21 -0
- package/packages/rendering/src/render-passes/SSAOPass.d.ts +14 -0
- package/packages/rendering/src/render-passes/types.d.ts +67 -0
- package/packages/rendering/src/render-pipeline-providers/CadGeometryRenderModePipelineProvider.d.ts +23 -0
- package/packages/rendering/src/render-pipeline-providers/CadGeometryRenderPipelineProvider.d.ts +25 -0
- package/packages/rendering/src/render-pipeline-providers/DefaultRenderPipelineProvider.d.ts +37 -0
- package/packages/rendering/src/render-pipeline-providers/PointCloudRenderPipelineProvider.d.ts +24 -0
- package/packages/rendering/src/render-pipeline-providers/types.d.ts +23 -0
- package/packages/rendering/src/rendering/NodeAppearanceTextureBuilder.d.ts +51 -51
- package/packages/rendering/src/rendering/RenderMode.d.ts +15 -15
- package/packages/rendering/src/rendering/createSimpleGeometryMesh.d.ts +6 -6
- package/packages/rendering/src/rendering/matCapTextureData.d.ts +5 -5
- package/packages/rendering/src/rendering/materials.d.ts +23 -23
- package/packages/rendering/src/rendering/primitives.d.ts +12 -12
- package/packages/rendering/src/rendering/shaders.d.ts +100 -101
- package/packages/rendering/src/rendering/types.d.ts +89 -76
- package/packages/rendering/src/transform/NodeTransformProvider.d.ts +13 -13
- package/packages/rendering/src/transform/NodeTransformTextureBuilder.d.ts +24 -23
- package/packages/rendering/src/transform/TransformOverrideBuffer.d.ts +21 -21
- package/packages/rendering/src/utilities/renderUtilities.d.ts +29 -0
- package/packages/rendering/src/utilities/types.d.ts +26 -26
- package/packages/sector-loader/index.d.ts +6 -6
- package/packages/sector-loader/src/GltfSectorLoader.d.ts +12 -12
- package/packages/sector-loader/src/GltfSectorRepository.d.ts +19 -19
- package/packages/sector-loader/src/SectorRepository.d.ts +10 -10
- package/packages/sector-loader/src/V8SectorRepository.d.ts +26 -26
- package/packages/sector-loader/src/v8/SimpleAndDetailedToSector3D.d.ts +20 -20
- package/packages/sector-loader/src/v8/arrays.d.ts +5 -5
- package/packages/sector-loader/src/v8/groupMeshesByNumber.d.ts +8 -8
- package/packages/sector-loader/src/v8/sectorUtilities.d.ts +16 -16
- package/packages/sector-parser/index.d.ts +5 -5
- package/packages/sector-parser/src/DracoDecoderHelper.d.ts +32 -32
- package/packages/sector-parser/src/GltfSectorParser.d.ts +19 -19
- package/packages/sector-parser/src/constants.d.ts +6 -6
- package/packages/sector-parser/src/lib/draco_decoder_gltf.d.ts +5 -0
- package/packages/sector-parser/src/reveal-glb-parser/GlbMetadataParser.d.ts +14 -14
- package/packages/sector-parser/src/reveal-glb-parser/primitiveGeometries.d.ts +12 -12
- package/packages/sector-parser/src/types.d.ts +106 -106
- package/packages/tools/index.d.ts +18 -15
- package/packages/tools/src/AxisView/AxisViewTool.d.ts +31 -32
- package/packages/tools/src/AxisView/types.d.ts +98 -98
- package/packages/tools/src/Cognite3DViewerToolBase.d.ts +25 -25
- package/packages/tools/src/DebugCameraTool.d.ts +20 -20
- package/packages/tools/src/DebugLoadedSectorsTool.d.ts +23 -23
- package/packages/tools/src/ExplodedViewTool.d.ts +12 -12
- package/packages/tools/src/Geomap/Geomap.d.ts +17 -17
- package/packages/tools/src/Geomap/GeomapTool.d.ts +23 -23
- package/packages/tools/src/Geomap/MapConfig.d.ts +195 -195
- package/packages/tools/src/HtmlOverlay/BucketGrid2D.d.ts +28 -28
- package/packages/tools/src/HtmlOverlay/HtmlOverlayTool.d.ts +166 -160
- package/packages/tools/src/Measurement/MeasurementLabels.d.ts +18 -0
- package/packages/tools/src/Measurement/MeasurementLine.d.ts +44 -0
- package/packages/tools/src/Measurement/MeasurementManager.d.ts +66 -0
- package/packages/tools/src/Measurement/MeasurementTool.d.ts +183 -0
- package/packages/tools/src/Measurement/types.d.ts +38 -0
- package/packages/tools/src/Timeline/Keyframe.d.ts +39 -39
- package/packages/tools/src/Timeline/TimelineTool.d.ts +79 -79
- package/packages/tools/src/Timeline/types.d.ts +13 -13
- package/packages/tools/src/types.d.ts +4 -4
- package/packages/utilities/index.d.ts +36 -33
- package/packages/utilities/src/CameraConfiguration.d.ts +10 -10
- package/packages/utilities/src/DeferredPromise.d.ts +17 -17
- package/packages/utilities/src/IndexSet.d.ts +1 -1
- package/packages/utilities/src/NumericRange.d.ts +22 -22
- package/packages/utilities/src/RandomColors.d.ts +34 -34
- package/packages/utilities/src/SceneHandler.d.ts +28 -0
- package/packages/utilities/src/WebGLRendererStateHelper.d.ts +29 -15
- package/packages/utilities/src/assertNever.d.ts +7 -7
- package/packages/utilities/src/cache/MemoryRequestCache.d.ts +24 -24
- package/packages/utilities/src/cache/MostFrequentlyUsedCache.d.ts +19 -19
- package/packages/utilities/src/cache/RequestCache.d.ts +13 -13
- package/packages/utilities/src/calculateVolumeOfMesh.d.ts +4 -4
- package/packages/utilities/src/counterMap.d.ts +5 -5
- package/packages/utilities/src/datastructures/DynamicDefragmentedBuffer.d.ts +33 -33
- package/packages/utilities/src/determinePowerOfTwoDimensions.d.ts +11 -11
- package/packages/utilities/src/device.d.ts +10 -0
- package/packages/utilities/src/disposeAttributeArrayOnUpload.d.ts +17 -17
- package/packages/utilities/src/events/EventTrigger.d.ts +13 -13
- package/packages/utilities/src/events/InputHandler.d.ts +30 -30
- package/packages/utilities/src/events/clickOrTouchEventOffset.d.ts +13 -13
- package/packages/utilities/src/events/index.d.ts +7 -7
- package/packages/utilities/src/events/types.d.ts +32 -27
- package/packages/utilities/src/indexset/IndexSet.d.ts +26 -26
- package/packages/utilities/src/indexset/IntermediateIndexNode.d.ts +26 -26
- package/packages/utilities/src/indexset/LeafIndexNode.d.ts +16 -16
- package/packages/utilities/src/isMobileOrTablet.d.ts +5 -4
- package/packages/utilities/src/networking/isTheSameDomain.d.ts +11 -11
- package/packages/utilities/src/objectTraversal.d.ts +8 -8
- package/packages/utilities/src/revealEnv.d.ts +10 -10
- package/packages/utilities/src/three/AutoDisposeGroup.d.ts +17 -17
- package/packages/utilities/src/three/BoundingBoxLOD.d.ts +27 -27
- package/packages/utilities/src/three/createFullScreenTriangleGeometry.d.ts +5 -0
- package/packages/utilities/src/three/fitCameraToBoundingBox.d.ts +15 -0
- package/packages/utilities/src/three/isBox3OnPositiveSideOfPlane.d.ts +10 -10
- package/packages/utilities/src/three/toThreeBox3.d.ts +6 -6
- package/packages/utilities/src/three/unionBoxes.d.ts +5 -5
- package/packages/utilities/src/three/visitBox3CornerPoints.d.ts +12 -12
- package/packages/utilities/src/transformCameraConfiguration.d.ts +6 -6
- package/packages/utilities/src/types.d.ts +11 -11
- package/packages/utilities/src/workers/WorkerPool.d.ts +14 -14
- package/packages/utilities/src/worldToViewport.d.ts +30 -30
- package/tools.d.ts +7 -7
- package/tools.js +2 -267
- package/tools.js.LICENSE.txt +7 -0
- package/tools.map +1 -1
- package/core/cad.d.ts +0 -4
- package/core/index.d.ts +0 -6
- package/core/src/index.d.ts +0 -13
- package/core/src/internals.d.ts +0 -10
- package/core/src/public/migration/NotSupportedInMigrationWrapperError.d.ts +0 -11
- package/core/src/utilities/index.d.ts +0 -6
- package/core/utilities.d.ts +0 -4
- package/packages/cad-model/src/CadModelSectorLoadStatistics.d.ts +0 -38
- package/packages/cad-model/src/GeometryFilter.d.ts +0 -20
- package/packages/cad-model/src/WellKnownUnit.d.ts +0 -7
- package/packages/cad-model/src/picking.d.ts +0 -28
- package/packages/rendering/src/rendering/EffectRenderManager.d.ts +0 -99
- package/packages/utilities/src/packFloat.d.ts +0 -6
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { IPointCloudTreeGeometryNode } from './IPointCloudTreeGeometryNode';
|
|
2
|
+
import { IPointCloudTreeNodeBase } from '../tree/IPointCloudTreeNodeBase';
|
|
3
|
+
import * as THREE from 'three';
|
|
4
|
+
import { PointCloudEptGeometry, EptKey } from './PointCloudEptGeometry';
|
|
5
|
+
import { ModelDataProvider } from '../../../../modeldata-api';
|
|
6
|
+
export declare class PointCloudEptGeometryNode implements IPointCloudTreeGeometryNode {
|
|
7
|
+
private readonly _id;
|
|
8
|
+
private readonly _ept;
|
|
9
|
+
private readonly _key;
|
|
10
|
+
private readonly _dataLoader;
|
|
11
|
+
private readonly _boundingBox;
|
|
12
|
+
private readonly _boundingSphere;
|
|
13
|
+
private readonly _spacing;
|
|
14
|
+
private _level;
|
|
15
|
+
private _numPoints;
|
|
16
|
+
private readonly _name;
|
|
17
|
+
private readonly _index;
|
|
18
|
+
private readonly _children;
|
|
19
|
+
private _loading;
|
|
20
|
+
private _loaded;
|
|
21
|
+
private _parent;
|
|
22
|
+
private _isLeafNode;
|
|
23
|
+
private _geometry;
|
|
24
|
+
private _oneTimeDisposeHandlers;
|
|
25
|
+
static IDCount: number;
|
|
26
|
+
get id(): number;
|
|
27
|
+
get name(): string;
|
|
28
|
+
get level(): number;
|
|
29
|
+
get spacing(): number;
|
|
30
|
+
get boundingBox(): THREE.Box3;
|
|
31
|
+
get boundingSphere(): THREE.Sphere;
|
|
32
|
+
get loaded(): boolean;
|
|
33
|
+
get key(): EptKey;
|
|
34
|
+
get failed(): boolean;
|
|
35
|
+
get numPoints(): number;
|
|
36
|
+
get children(): IPointCloudTreeNodeBase[];
|
|
37
|
+
get oneTimeDisposeHandlers(): (() => void)[];
|
|
38
|
+
get isLeafNode(): boolean;
|
|
39
|
+
get geometry(): THREE.BufferGeometry | undefined;
|
|
40
|
+
get ept(): PointCloudEptGeometry;
|
|
41
|
+
get index(): number;
|
|
42
|
+
set parent(_p: PointCloudEptGeometryNode | undefined);
|
|
43
|
+
get parent(): PointCloudEptGeometryNode | undefined;
|
|
44
|
+
constructor(ept: PointCloudEptGeometry, modelDataProvider: ModelDataProvider, b?: THREE.Box3, d?: number, x?: number, y?: number, z?: number);
|
|
45
|
+
get isGeometryNode(): boolean;
|
|
46
|
+
getLevel(): number;
|
|
47
|
+
get isTreeNode(): boolean;
|
|
48
|
+
isLoaded(): boolean;
|
|
49
|
+
getBoundingSphere(): THREE.Sphere;
|
|
50
|
+
getBoundingBox(): THREE.Box3;
|
|
51
|
+
baseUrl(): string;
|
|
52
|
+
getNumPoints(): number;
|
|
53
|
+
fileName(): string;
|
|
54
|
+
getChildren(): IPointCloudTreeGeometryNode[];
|
|
55
|
+
traverse(callback: (node: IPointCloudTreeNodeBase) => void, includeSelf?: boolean): void;
|
|
56
|
+
addChild(child: PointCloudEptGeometryNode): void;
|
|
57
|
+
load(): Promise<void>;
|
|
58
|
+
loadPoints(): Promise<void>;
|
|
59
|
+
loadHierarchy(): Promise<void>;
|
|
60
|
+
doneLoading(bufferGeometry: THREE.BufferGeometry, _tightBoundingBox: THREE.Box3, np: number, _mean: THREE.Vector3): void;
|
|
61
|
+
toPotreeName(d: number, x: number, y: number, z: number): string;
|
|
62
|
+
dispose(): void;
|
|
63
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
import * as THREE from 'three';
|
|
5
|
+
export declare function toVector3(v: number[], offset?: number): THREE.Vector3;
|
|
6
|
+
export declare function toBox3(b: number[]): THREE.Box3;
|
|
7
|
+
export declare function sphereFrom(b: THREE.Box3): THREE.Sphere;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './rendering';
|
|
2
|
+
export * from './tree/PointAttributes';
|
|
3
|
+
export * from './tree/PointCloudOctreeNode';
|
|
4
|
+
export * from './tree/PointCloudOctreePicker';
|
|
5
|
+
export * from './tree/PointCloudOctree';
|
|
6
|
+
export * from './tree/PointCloudTree';
|
|
7
|
+
export * from './Potree';
|
|
8
|
+
export * from './types/types';
|
|
9
|
+
export * from './version';
|
|
10
|
+
export { globalNumNodesLoading as numPointCloudNodesLoading } from './loading/globalLoadingCounter';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { WorkerPool } from '../utils/WorkerPool';
|
|
2
|
+
import { ILoader } from './ILoader';
|
|
3
|
+
import { ModelDataProvider } from '../../../../modeldata-api';
|
|
4
|
+
import { PointCloudEptGeometryNode } from '../geometry/PointCloudEptGeometryNode';
|
|
5
|
+
export declare class EptBinaryLoader implements ILoader {
|
|
6
|
+
private readonly _dataLoader;
|
|
7
|
+
static readonly WORKER_POOL: WorkerPool<Worker>;
|
|
8
|
+
extension(): string;
|
|
9
|
+
constructor(dataLoader: ModelDataProvider);
|
|
10
|
+
load(node: PointCloudEptGeometryNode): Promise<void>;
|
|
11
|
+
parse(node: PointCloudEptGeometryNode, buffer: ArrayBuffer): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ModelDataProvider } from '../../../../modeldata-api';
|
|
2
|
+
import { PointCloudEptGeometry } from '../geometry/PointCloudEptGeometry';
|
|
3
|
+
export declare class EptLoader {
|
|
4
|
+
static load(baseUrl: string, fileName: string, modelDataProvider: ModelDataProvider): Promise<PointCloudEptGeometry>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
declare let globalNumNodesLoading: number;
|
|
2
|
+
declare const globalMaxNumNodesLoading: number;
|
|
3
|
+
export { globalNumNodesLoading, globalMaxNumNodesLoading };
|
|
4
|
+
export declare function incrementGlobalNumNodesLoading(): void;
|
|
5
|
+
export declare function decrementGlobalNumNodesLoading(): void;
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { BufferGeometry, Camera, Color, Material, RawShaderMaterial, Scene, Texture, Vector3, Vector4, WebGLRenderer } from 'three';
|
|
2
|
+
import { PointCloudOctree } from '../tree/PointCloudOctree';
|
|
3
|
+
import { IPointCloudTreeNodeBase } from '../tree/IPointCloudTreeNodeBase';
|
|
4
|
+
import { IPointCloudTreeNode } from '../tree/IPointCloudTreeNode';
|
|
5
|
+
import { ClipMode, IClipBox } from './clipping';
|
|
6
|
+
import { PointCloudMixingMode, PotreePointColorType, PointOpacityType, PotreePointShape, PotreePointSizeType, TreeType } from './enums';
|
|
7
|
+
import { IClassification, IUniform } from './types';
|
|
8
|
+
export interface IPointCloudMaterialParameters {
|
|
9
|
+
size: number;
|
|
10
|
+
minSize: number;
|
|
11
|
+
maxSize: number;
|
|
12
|
+
treeType: TreeType;
|
|
13
|
+
}
|
|
14
|
+
export interface IPointCloudMaterialUniforms {
|
|
15
|
+
bbSize: IUniform<[number, number, number]>;
|
|
16
|
+
blendDepthSupplement: IUniform<number>;
|
|
17
|
+
blendHardness: IUniform<number>;
|
|
18
|
+
classificationLUT: IUniform<Texture>;
|
|
19
|
+
clipBoxCount: IUniform<number>;
|
|
20
|
+
clipBoxes: IUniform<Float32Array>;
|
|
21
|
+
depthMap: IUniform<Texture | null>;
|
|
22
|
+
diffuse: IUniform<[number, number, number]>;
|
|
23
|
+
fov: IUniform<number>;
|
|
24
|
+
gradient: IUniform<Texture>;
|
|
25
|
+
heightMax: IUniform<number>;
|
|
26
|
+
heightMin: IUniform<number>;
|
|
27
|
+
intensityBrightness: IUniform<number>;
|
|
28
|
+
intensityContrast: IUniform<number>;
|
|
29
|
+
intensityGamma: IUniform<number>;
|
|
30
|
+
intensityRange: IUniform<[number, number]>;
|
|
31
|
+
isLeafNode: IUniform<boolean>;
|
|
32
|
+
level: IUniform<number>;
|
|
33
|
+
maxSize: IUniform<number>;
|
|
34
|
+
minSize: IUniform<number>;
|
|
35
|
+
octreeSize: IUniform<number>;
|
|
36
|
+
opacity: IUniform<number>;
|
|
37
|
+
pcIndex: IUniform<number>;
|
|
38
|
+
rgbBrightness: IUniform<number>;
|
|
39
|
+
rgbContrast: IUniform<number>;
|
|
40
|
+
rgbGamma: IUniform<number>;
|
|
41
|
+
screenHeight: IUniform<number>;
|
|
42
|
+
screenWidth: IUniform<number>;
|
|
43
|
+
size: IUniform<number>;
|
|
44
|
+
spacing: IUniform<number>;
|
|
45
|
+
toModel: IUniform<number[]>;
|
|
46
|
+
transition: IUniform<number>;
|
|
47
|
+
uColor: IUniform<Color>;
|
|
48
|
+
visibleNodes: IUniform<Texture>;
|
|
49
|
+
vnStart: IUniform<number>;
|
|
50
|
+
wClassification: IUniform<number>;
|
|
51
|
+
wElevation: IUniform<number>;
|
|
52
|
+
wIntensity: IUniform<number>;
|
|
53
|
+
wReturnNumber: IUniform<number>;
|
|
54
|
+
wRGB: IUniform<number>;
|
|
55
|
+
wSourceID: IUniform<number>;
|
|
56
|
+
opacityAttenuation: IUniform<number>;
|
|
57
|
+
filterByNormalThreshold: IUniform<number>;
|
|
58
|
+
highlightedPointCoordinate: IUniform<Vector3>;
|
|
59
|
+
highlightedPointColor: IUniform<Vector4>;
|
|
60
|
+
enablePointHighlighting: IUniform<boolean>;
|
|
61
|
+
highlightedPointScale: IUniform<number>;
|
|
62
|
+
normalFilteringMode: IUniform<number>;
|
|
63
|
+
backgroundMap: IUniform<Texture | null>;
|
|
64
|
+
pointCloudID: IUniform<number>;
|
|
65
|
+
pointCloudMixAngle: IUniform<number>;
|
|
66
|
+
stripeDistanceX: IUniform<number>;
|
|
67
|
+
stripeDistanceY: IUniform<number>;
|
|
68
|
+
stripeDivisorX: IUniform<number>;
|
|
69
|
+
stripeDivisorY: IUniform<number>;
|
|
70
|
+
pointCloudMixingMode: IUniform<number>;
|
|
71
|
+
}
|
|
72
|
+
export declare class PointCloudMaterial extends RawShaderMaterial {
|
|
73
|
+
private static readonly helperVec3;
|
|
74
|
+
private static readonly helperVec2;
|
|
75
|
+
/**
|
|
76
|
+
* Use the drawing buffer size instead of the dom client width and height when passing the screen height and screen width uniforms to the
|
|
77
|
+
* shader. This is useful if you have offscreen canvases (which in some browsers return 0 as client width and client height).
|
|
78
|
+
*/
|
|
79
|
+
useDrawingBufferSize: boolean;
|
|
80
|
+
lights: boolean;
|
|
81
|
+
fog: boolean;
|
|
82
|
+
numClipBoxes: number;
|
|
83
|
+
clipBoxes: IClipBox[];
|
|
84
|
+
visibleNodesTexture: Texture | undefined;
|
|
85
|
+
private readonly visibleNodeTextureOffsets;
|
|
86
|
+
private readonly _gradient;
|
|
87
|
+
private gradientTexture;
|
|
88
|
+
private _classification;
|
|
89
|
+
private classificationTexture;
|
|
90
|
+
uniforms: IPointCloudMaterialUniforms & Record<string, IUniform<any>>;
|
|
91
|
+
bbSize: [number, number, number];
|
|
92
|
+
depthMap: Texture | undefined;
|
|
93
|
+
fov: number;
|
|
94
|
+
heightMax: number;
|
|
95
|
+
heightMin: number;
|
|
96
|
+
intensityBrightness: number;
|
|
97
|
+
intensityContrast: number;
|
|
98
|
+
intensityGamma: number;
|
|
99
|
+
intensityRange: [number, number];
|
|
100
|
+
maxSize: number;
|
|
101
|
+
minSize: number;
|
|
102
|
+
octreeSize: number;
|
|
103
|
+
opacity: number;
|
|
104
|
+
rgbBrightness: number;
|
|
105
|
+
rgbContrast: number;
|
|
106
|
+
rgbGamma: number;
|
|
107
|
+
screenHeight: number;
|
|
108
|
+
screenWidth: number;
|
|
109
|
+
size: number;
|
|
110
|
+
spacing: number;
|
|
111
|
+
transition: number;
|
|
112
|
+
color: Color;
|
|
113
|
+
weightClassification: number;
|
|
114
|
+
weightElevation: number;
|
|
115
|
+
weightIntensity: number;
|
|
116
|
+
weightReturnNumber: number;
|
|
117
|
+
weightRGB: number;
|
|
118
|
+
weightSourceID: number;
|
|
119
|
+
opacityAttenuation: number;
|
|
120
|
+
filterByNormalThreshold: number;
|
|
121
|
+
highlightedPointCoordinate: Vector3;
|
|
122
|
+
highlightedPointColor: Vector4;
|
|
123
|
+
enablePointHighlighting: boolean;
|
|
124
|
+
highlightedPointScale: number;
|
|
125
|
+
normalFilteringMode: number;
|
|
126
|
+
backgroundMap: Texture | undefined;
|
|
127
|
+
pointCloudID: number;
|
|
128
|
+
pointCloudMixingMode: number;
|
|
129
|
+
stripeDistanceX: number;
|
|
130
|
+
stripeDistanceY: number;
|
|
131
|
+
stripeDivisorX: number;
|
|
132
|
+
stripeDivisorY: number;
|
|
133
|
+
pointCloudMixAngle: number;
|
|
134
|
+
useClipBox: boolean;
|
|
135
|
+
weighted: boolean;
|
|
136
|
+
hqDepthPass: boolean;
|
|
137
|
+
pointColorType: PotreePointColorType;
|
|
138
|
+
pointSizeType: PotreePointSizeType;
|
|
139
|
+
clipMode: ClipMode;
|
|
140
|
+
useEDL: boolean;
|
|
141
|
+
shape: PotreePointShape;
|
|
142
|
+
treeType: TreeType;
|
|
143
|
+
pointOpacityType: PointOpacityType;
|
|
144
|
+
useFilterByNormal: boolean;
|
|
145
|
+
useTextureBlending: boolean;
|
|
146
|
+
usePointCloudMixing: boolean;
|
|
147
|
+
highlightPoint: boolean;
|
|
148
|
+
attributes: {
|
|
149
|
+
position: {
|
|
150
|
+
type: string;
|
|
151
|
+
value: never[];
|
|
152
|
+
};
|
|
153
|
+
color: {
|
|
154
|
+
type: string;
|
|
155
|
+
value: never[];
|
|
156
|
+
};
|
|
157
|
+
normal: {
|
|
158
|
+
type: string;
|
|
159
|
+
value: never[];
|
|
160
|
+
};
|
|
161
|
+
intensity: {
|
|
162
|
+
type: string;
|
|
163
|
+
value: never[];
|
|
164
|
+
};
|
|
165
|
+
classification: {
|
|
166
|
+
type: string;
|
|
167
|
+
value: never[];
|
|
168
|
+
};
|
|
169
|
+
returnNumber: {
|
|
170
|
+
type: string;
|
|
171
|
+
value: never[];
|
|
172
|
+
};
|
|
173
|
+
numberOfReturns: {
|
|
174
|
+
type: string;
|
|
175
|
+
value: never[];
|
|
176
|
+
};
|
|
177
|
+
pointSourceID: {
|
|
178
|
+
type: string;
|
|
179
|
+
value: never[];
|
|
180
|
+
};
|
|
181
|
+
indices: {
|
|
182
|
+
type: string;
|
|
183
|
+
value: never[];
|
|
184
|
+
};
|
|
185
|
+
};
|
|
186
|
+
constructor(parameters?: Partial<IPointCloudMaterialParameters>);
|
|
187
|
+
dispose(): void;
|
|
188
|
+
clearVisibleNodeTextureOffsets(): void;
|
|
189
|
+
updateShaderSource(): void;
|
|
190
|
+
applyDefines(shaderSrc: string): string;
|
|
191
|
+
setPointCloudMixingMode(mode: PointCloudMixingMode): void;
|
|
192
|
+
getPointCloudMixingMode(): PointCloudMixingMode;
|
|
193
|
+
setClipBoxes(clipBoxes: IClipBox[]): void;
|
|
194
|
+
get classification(): IClassification;
|
|
195
|
+
set classification(value: IClassification);
|
|
196
|
+
private recomputeClassification;
|
|
197
|
+
get elevationRange(): [number, number];
|
|
198
|
+
set elevationRange(value: [number, number]);
|
|
199
|
+
getUniform<K extends keyof IPointCloudMaterialUniforms>(name: K): IPointCloudMaterialUniforms[K]['value'];
|
|
200
|
+
setUniform<K extends keyof IPointCloudMaterialUniforms>(name: K, value: IPointCloudMaterialUniforms[K]['value']): void;
|
|
201
|
+
updateMaterial(octree: PointCloudOctree, visibleNodes: IPointCloudTreeNodeBase[], camera: Camera, renderer: WebGLRenderer): void;
|
|
202
|
+
private updateVisibilityTextureData;
|
|
203
|
+
static makeOnBeforeRender(octree: PointCloudOctree, node: IPointCloudTreeNode, pcIndex?: number): (renderer: WebGLRenderer, scene: Scene, camera: Camera, bufferGeometry: BufferGeometry, material: Material) => void;
|
|
204
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Color, Vector4 } from 'three';
|
|
2
|
+
export declare const DEFAULT_RGB_BRIGHTNESS = 0;
|
|
3
|
+
export declare const DEFAULT_RGB_CONTRAST = 0;
|
|
4
|
+
export declare const DEFAULT_RGB_GAMMA = 1;
|
|
5
|
+
export declare const DEFAULT_MAX_POINT_SIZE = 50;
|
|
6
|
+
export declare const DEFAULT_MIN_NODE_PIXEL_SIZE = 50;
|
|
7
|
+
export declare const DEFAULT_MIN_POINT_SIZE = 1;
|
|
8
|
+
export declare const DEFAULT_PICK_WINDOW_SIZE = 15;
|
|
9
|
+
export declare const DEFAULT_POINT_BUDGET = 3000000;
|
|
10
|
+
export declare const MAX_LOADS_TO_GPU = 2;
|
|
11
|
+
export declare const MAX_NUM_NODES_LOADING = 8;
|
|
12
|
+
export declare const UPDATE_THROTTLE_TIME_MS = 100;
|
|
13
|
+
export declare const PERSPECTIVE_CAMERA = "PerspectiveCamera";
|
|
14
|
+
export declare const COLOR_BLACK: Color;
|
|
15
|
+
export declare const DEFAULT_HIGHLIGHT_COLOR: Vector4;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export declare enum PotreePointSizeType {
|
|
2
|
+
Fixed = 0,
|
|
3
|
+
Attenuated = 1,
|
|
4
|
+
Adaptive = 2
|
|
5
|
+
}
|
|
6
|
+
export declare enum PotreePointShape {
|
|
7
|
+
Square = 0,
|
|
8
|
+
Circle = 1,
|
|
9
|
+
Paraboloid = 2
|
|
10
|
+
}
|
|
11
|
+
export declare enum TreeType {
|
|
12
|
+
Octree = 0,
|
|
13
|
+
KdTree = 1
|
|
14
|
+
}
|
|
15
|
+
export declare enum PointOpacityType {
|
|
16
|
+
Fixed = 0,
|
|
17
|
+
Attenuated = 1
|
|
18
|
+
}
|
|
19
|
+
export declare enum PotreePointColorType {
|
|
20
|
+
Rgb = 0,
|
|
21
|
+
Color = 1,
|
|
22
|
+
Depth = 2,
|
|
23
|
+
Height = 3,
|
|
24
|
+
Elevation = 3,
|
|
25
|
+
Intensity = 4,
|
|
26
|
+
IntensityGradient = 5,
|
|
27
|
+
Lod = 6,
|
|
28
|
+
LevelOfDetail = 6,
|
|
29
|
+
PointIndex = 7,
|
|
30
|
+
Classification = 8,
|
|
31
|
+
ReturnNumber = 9,
|
|
32
|
+
Source = 10,
|
|
33
|
+
Normal = 11,
|
|
34
|
+
Phong = 12,
|
|
35
|
+
RgbHeight = 13,
|
|
36
|
+
Composite = 50
|
|
37
|
+
}
|
|
38
|
+
export declare enum NormalFilteringMode {
|
|
39
|
+
ABSOLUTE_NORMAL_FILTERING_MODE = 1,
|
|
40
|
+
LESS_EQUAL_NORMAL_FILTERING_MODE = 2,
|
|
41
|
+
GREATER_NORMAL_FILTERING_MODE = 3
|
|
42
|
+
}
|
|
43
|
+
export declare enum PointCloudMixingMode {
|
|
44
|
+
CHECKBOARD = 1,
|
|
45
|
+
STRIPES = 2
|
|
46
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Color, Texture } from 'three';
|
|
2
|
+
import { IClassification, IGradient } from './types';
|
|
3
|
+
export declare function generateDataTexture(width: number, height: number, color: Color): Texture;
|
|
4
|
+
export declare function generateGradientTexture(gradient: IGradient): Texture;
|
|
5
|
+
export declare function generateClassificationTexture(classification: IClassification): Texture;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Color, IUniform as IThreeUniform, Vector4 } from 'three';
|
|
2
|
+
export declare type IGradient = [number, Color][];
|
|
3
|
+
export interface IClassification {
|
|
4
|
+
[value: string]: Vector4;
|
|
5
|
+
DEFAULT: Vector4;
|
|
6
|
+
}
|
|
7
|
+
export interface IUniform<T> extends IThreeUniform {
|
|
8
|
+
type: string;
|
|
9
|
+
value: T;
|
|
10
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IPointCloudTreeNodeBase } from './IPointCloudTreeNodeBase';
|
|
2
|
+
import { IPointCloudTreeGeometryNode } from '../geometry/IPointCloudTreeGeometryNode';
|
|
3
|
+
import * as THREE from 'three';
|
|
4
|
+
export interface IPointCloudTreeNode extends IPointCloudTreeNodeBase {
|
|
5
|
+
sceneNode: THREE.Points;
|
|
6
|
+
geometryNode: IPointCloudTreeGeometryNode;
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
2
|
+
export interface IPointCloudTreeNodeBase {
|
|
3
|
+
id: number;
|
|
4
|
+
name: string;
|
|
5
|
+
level: number;
|
|
6
|
+
index: number;
|
|
7
|
+
spacing: number;
|
|
8
|
+
boundingBox: THREE.Box3;
|
|
9
|
+
boundingSphere: THREE.Sphere;
|
|
10
|
+
loaded: boolean;
|
|
11
|
+
numPoints: number;
|
|
12
|
+
isTreeNode: boolean;
|
|
13
|
+
boundingBoxNode?: THREE.Object3D;
|
|
14
|
+
readonly children: Array<IPointCloudTreeNodeBase | null>;
|
|
15
|
+
readonly isLeafNode: boolean;
|
|
16
|
+
dispose(): void;
|
|
17
|
+
traverse(cb: (node: IPointCloudTreeNodeBase) => void, includeSelf?: boolean): void;
|
|
18
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export declare enum PointAttributeName {
|
|
2
|
+
POSITION_CARTESIAN = 0,
|
|
3
|
+
COLOR_PACKED = 1,
|
|
4
|
+
COLOR_FLOATS_1 = 2,
|
|
5
|
+
COLOR_FLOATS_255 = 3,
|
|
6
|
+
NORMAL_FLOATS = 4,
|
|
7
|
+
FILLER = 5,
|
|
8
|
+
INTENSITY = 6,
|
|
9
|
+
CLASSIFICATION = 7,
|
|
10
|
+
NORMAL_SPHEREMAPPED = 8,
|
|
11
|
+
NORMAL_OCT16 = 9,
|
|
12
|
+
NORMAL = 10
|
|
13
|
+
}
|
|
14
|
+
export interface PointAttributeType {
|
|
15
|
+
ordinal: number;
|
|
16
|
+
size: number;
|
|
17
|
+
}
|
|
18
|
+
export declare const POINT_ATTRIBUTE_TYPES: Record<string, PointAttributeType>;
|
|
19
|
+
export interface IPointAttribute {
|
|
20
|
+
name: PointAttributeName;
|
|
21
|
+
type: PointAttributeType;
|
|
22
|
+
numElements: number;
|
|
23
|
+
byteSize: number;
|
|
24
|
+
}
|
|
25
|
+
export interface IPointAttributes {
|
|
26
|
+
attributes: IPointAttribute[];
|
|
27
|
+
byteSize: number;
|
|
28
|
+
size: number;
|
|
29
|
+
}
|
|
30
|
+
export declare const POINT_ATTRIBUTES: {
|
|
31
|
+
POSITION_CARTESIAN: IPointAttribute;
|
|
32
|
+
RGBA_PACKED: IPointAttribute;
|
|
33
|
+
COLOR_PACKED: IPointAttribute;
|
|
34
|
+
RGB_PACKED: IPointAttribute;
|
|
35
|
+
NORMAL_FLOATS: IPointAttribute;
|
|
36
|
+
FILLER_1B: IPointAttribute;
|
|
37
|
+
INTENSITY: IPointAttribute;
|
|
38
|
+
CLASSIFICATION: IPointAttribute;
|
|
39
|
+
NORMAL_SPHEREMAPPED: IPointAttribute;
|
|
40
|
+
NORMAL_OCT16: IPointAttribute;
|
|
41
|
+
NORMAL: IPointAttribute;
|
|
42
|
+
};
|
|
43
|
+
export declare type PointAttributeStringName = keyof typeof POINT_ATTRIBUTES;
|
|
44
|
+
export declare class PointAttributes implements IPointAttributes {
|
|
45
|
+
attributes: IPointAttribute[];
|
|
46
|
+
byteSize: number;
|
|
47
|
+
size: number;
|
|
48
|
+
constructor(pointAttributeNames?: PointAttributeStringName[]);
|
|
49
|
+
add(pointAttribute: IPointAttribute): void;
|
|
50
|
+
hasColors(): boolean;
|
|
51
|
+
hasNormals(): boolean;
|
|
52
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Box3, Camera, Object3D, Ray, Sphere, WebGLRenderer } from 'three';
|
|
2
|
+
import { PointCloudMaterial, PotreePointSizeType } from '../rendering';
|
|
3
|
+
import { IPointCloudTreeGeometry } from '../geometry/IPointCloudTreeGeometry';
|
|
4
|
+
import { IPointCloudTreeGeometryNode } from '../geometry/IPointCloudTreeGeometryNode';
|
|
5
|
+
import { PickParams } from './PointCloudOctreePicker';
|
|
6
|
+
import { PointCloudTree } from './PointCloudTree';
|
|
7
|
+
import { PickPoint } from '../types/types';
|
|
8
|
+
import { IPotree } from '../types/IPotree';
|
|
9
|
+
import { IPointCloudTreeNodeBase } from './IPointCloudTreeNodeBase';
|
|
10
|
+
import { IPointCloudTreeNode } from './IPointCloudTreeNode';
|
|
11
|
+
export declare class PointCloudOctree extends PointCloudTree {
|
|
12
|
+
potree: IPotree;
|
|
13
|
+
disposed: boolean;
|
|
14
|
+
pcoGeometry: IPointCloudTreeGeometry;
|
|
15
|
+
boundingBox: Box3;
|
|
16
|
+
boundingSphere: Sphere;
|
|
17
|
+
material: PointCloudMaterial;
|
|
18
|
+
level: number;
|
|
19
|
+
maxLevel: number;
|
|
20
|
+
/**
|
|
21
|
+
* The minimum radius of a node's bounding sphere on the screen in order to be displayed.
|
|
22
|
+
*/
|
|
23
|
+
minNodePixelSize: number;
|
|
24
|
+
root: IPointCloudTreeNodeBase | undefined;
|
|
25
|
+
boundingBoxNodes: Object3D[];
|
|
26
|
+
visibleNodes: IPointCloudTreeNode[];
|
|
27
|
+
visibleGeometry: IPointCloudTreeGeometryNode[];
|
|
28
|
+
numVisiblePoints: number;
|
|
29
|
+
showBoundingBox: boolean;
|
|
30
|
+
private readonly visibleBounds;
|
|
31
|
+
private picker;
|
|
32
|
+
constructor(potree: IPotree, pcoGeometry: IPointCloudTreeGeometry, material?: PointCloudMaterial);
|
|
33
|
+
private updateMaterial;
|
|
34
|
+
dispose(): void;
|
|
35
|
+
get pointSizeType(): PotreePointSizeType;
|
|
36
|
+
set pointSizeType(value: PotreePointSizeType);
|
|
37
|
+
toTreeNode(geometryNode: IPointCloudTreeGeometryNode, parent?: IPointCloudTreeNode | null): IPointCloudTreeNode;
|
|
38
|
+
updateVisibleBounds(): void;
|
|
39
|
+
updateBoundingBoxes(): void;
|
|
40
|
+
updateMatrixWorld(force: boolean): void;
|
|
41
|
+
hideDescendants(object: Object3D): void;
|
|
42
|
+
moveToOrigin(): void;
|
|
43
|
+
moveToGroundPlane(): void;
|
|
44
|
+
getBoundingBoxWorld(): Box3;
|
|
45
|
+
getVisibleExtent(): Box3;
|
|
46
|
+
pick(renderer: WebGLRenderer, camera: Camera, ray: Ray, params?: Partial<PickParams>): PickPoint | null;
|
|
47
|
+
get progress(): number;
|
|
48
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Box3, EventDispatcher, Object3D, Points, Sphere } from 'three';
|
|
2
|
+
import { IPointCloudTreeGeometryNode } from '../geometry/IPointCloudTreeGeometryNode';
|
|
3
|
+
import { IPointCloudTreeNode } from './IPointCloudTreeNode';
|
|
4
|
+
import { IPointCloudTreeNodeBase } from './IPointCloudTreeNodeBase';
|
|
5
|
+
export declare class PointCloudOctreeNode extends EventDispatcher implements IPointCloudTreeNode {
|
|
6
|
+
geometryNode: IPointCloudTreeGeometryNode;
|
|
7
|
+
sceneNode: Points;
|
|
8
|
+
pcIndex: number | undefined;
|
|
9
|
+
boundingBoxNode?: Object3D | undefined;
|
|
10
|
+
readonly children: (IPointCloudTreeNodeBase | null)[];
|
|
11
|
+
readonly loaded = true;
|
|
12
|
+
readonly isTreeNode: boolean;
|
|
13
|
+
readonly isGeometryNode: boolean;
|
|
14
|
+
constructor(geometryNode: IPointCloudTreeGeometryNode, sceneNode: Points);
|
|
15
|
+
dispose(): void;
|
|
16
|
+
disposeSceneNode(): void;
|
|
17
|
+
traverse(cb: (node: IPointCloudTreeNodeBase) => void, includeSelf?: boolean): void;
|
|
18
|
+
get id(): number;
|
|
19
|
+
get name(): string;
|
|
20
|
+
get level(): number;
|
|
21
|
+
get isLeafNode(): boolean;
|
|
22
|
+
get numPoints(): number;
|
|
23
|
+
get index(): number;
|
|
24
|
+
get boundingSphere(): Sphere;
|
|
25
|
+
get boundingBox(): Box3;
|
|
26
|
+
get spacing(): number;
|
|
27
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Camera, Ray, WebGLRenderer } from 'three';
|
|
2
|
+
import { PointCloudOctree } from './PointCloudOctree';
|
|
3
|
+
import { PickPoint } from '../types/types';
|
|
4
|
+
import { PickParams } from './PointCloudOctreePickerHelper';
|
|
5
|
+
export { PickParams };
|
|
6
|
+
export declare class PointCloudOctreePicker {
|
|
7
|
+
private static readonly helperVec3;
|
|
8
|
+
private pickState;
|
|
9
|
+
private readonly _renderer;
|
|
10
|
+
private readonly _pickerHelper;
|
|
11
|
+
constructor(renderer: WebGLRenderer);
|
|
12
|
+
dispose(): void;
|
|
13
|
+
pick(camera: Camera, ray: Ray, octrees: PointCloudOctree[], params?: Partial<PickParams>): PickPoint | null;
|
|
14
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Camera, Ray, Scene, Vector3, WebGLRenderer, WebGLRenderTarget } from 'three';
|
|
2
|
+
import { PointCloudMaterial } from '../rendering';
|
|
3
|
+
import { PointCloudOctree } from './PointCloudOctree';
|
|
4
|
+
import { IPointCloudTreeNode } from './IPointCloudTreeNode';
|
|
5
|
+
import { PickPoint, PointCloudHit } from '../types/types';
|
|
6
|
+
export interface RenderedNode {
|
|
7
|
+
node: IPointCloudTreeNode;
|
|
8
|
+
octree: PointCloudOctree;
|
|
9
|
+
}
|
|
10
|
+
export interface IPickState {
|
|
11
|
+
renderTarget: WebGLRenderTarget;
|
|
12
|
+
material: PointCloudMaterial;
|
|
13
|
+
scene: Scene;
|
|
14
|
+
}
|
|
15
|
+
export interface PickParams {
|
|
16
|
+
pickWindowSize: number;
|
|
17
|
+
pickOutsideClipRegion: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* If provided, the picking will use this pixel position instead of the `Ray` passed to the `pick`
|
|
20
|
+
* method.
|
|
21
|
+
*/
|
|
22
|
+
pixelPosition: Vector3;
|
|
23
|
+
/**
|
|
24
|
+
* Function which gets called after a picking material has been created and setup and before the
|
|
25
|
+
* point cloud is rendered into the picking render target. This gives applications a chance to
|
|
26
|
+
* customize the renderTarget and the material.
|
|
27
|
+
*
|
|
28
|
+
* @param material The pick material.
|
|
29
|
+
* @param renterTarget The render target used for picking.
|
|
30
|
+
*/
|
|
31
|
+
onBeforePickRender: (material: PointCloudMaterial, renterTarget: WebGLRenderTarget) => void;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Helper class for PointCloudOctreePicker.
|
|
35
|
+
*/
|
|
36
|
+
export declare class PointCloudOctreePickerHelper {
|
|
37
|
+
private static readonly helperVec3;
|
|
38
|
+
private static readonly helperSphere;
|
|
39
|
+
private readonly _renderer;
|
|
40
|
+
private readonly _rendererStateHelper;
|
|
41
|
+
constructor(renderer: WebGLRenderer);
|
|
42
|
+
resetState(): void;
|
|
43
|
+
prepareRender(x: number, y: number, pickWndSize: number, pickMaterial: PointCloudMaterial, pickState: IPickState): void;
|
|
44
|
+
render(camera: Camera, pickMaterial: PointCloudMaterial, octrees: PointCloudOctree[], ray: Ray, pickState: IPickState, params: Partial<PickParams>): RenderedNode[];
|
|
45
|
+
private static nodesOnRay;
|
|
46
|
+
readPixels(x: number, y: number, pickWndSize: number): Uint8Array;
|
|
47
|
+
private static createTempNodes;
|
|
48
|
+
private static updatePickMaterial;
|
|
49
|
+
static updatePickRenderTarget(pickState: IPickState, width: number, height: number): void;
|
|
50
|
+
private static makePickRenderTarget;
|
|
51
|
+
static findHit(pixels: Uint8Array, pickWndSize: number, nodes: RenderedNode[], camera: THREE.Camera): PointCloudHit | null;
|
|
52
|
+
static getPickPoint(hit: PointCloudHit | null, nodes: RenderedNode[]): PickPoint | null;
|
|
53
|
+
static getPointPosition(nodes: RenderedNode[], pcIndex: number, pIndex: number): Vector3;
|
|
54
|
+
private static addPositionToPickPoint;
|
|
55
|
+
private static addNormalToPickPoint;
|
|
56
|
+
static getPickState(): IPickState;
|
|
57
|
+
}
|