@cognite/reveal 3.0.0-beta.1 → 3.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -3
- package/core/index.d.ts +1 -2
- package/core/src/index.d.ts +0 -5
- package/core/src/internals.d.ts +2 -7
- package/core/src/public/RevealManager.d.ts +2 -5
- package/core/src/public/createRevealManager.d.ts +1 -1
- package/core/src/public/migration/Cognite3DViewer.d.ts +6 -7
- package/core/src/public/migration/types.d.ts +4 -74
- package/core/src/public/types.d.ts +5 -27
- package/core/src/storage/RevealManagerHelper.d.ts +1 -0
- package/core/src/utilities/index.d.ts +2 -4
- package/extensions/datasource.js +3 -6
- package/extensions/datasource.map +1 -1
- package/index.d.ts +5 -1
- package/index.js +177 -168
- package/index.map +1 -1
- package/package.json +11 -10
- package/packages/cad-geometry-loaders/index.d.ts +1 -6
- package/packages/cad-geometry-loaders/src/CadModelUpdateHandler.d.ts +2 -2
- package/packages/cad-geometry-loaders/src/sector/SectorLoader.d.ts +1 -0
- package/packages/cad-geometry-loaders/src/sector/culling/createV8SectorCuller.d.ts +1 -1
- package/packages/cad-model/index.d.ts +12 -0
- package/{core/src/utilities → packages/cad-model/src}/BoundingBoxClipper.d.ts +0 -0
- package/{core/src/datamodels/cad → packages/cad-model/src}/CadManager.d.ts +9 -4
- package/{core/src/datamodels/cad → packages/cad-model/src}/CadModelFactory.d.ts +6 -4
- package/{core/src/datamodels/cad → packages/cad-model/src}/CadModelSectorLoadStatistics.d.ts +0 -0
- package/{core/src/public/migration → packages/cad-model/src}/Cognite3DModel.d.ts +4 -6
- package/packages/cad-model/src/GeometryFilter.d.ts +20 -0
- package/packages/cad-model/src/InternalRevealCadOptions.d.ts +13 -0
- package/{core/src/public/migration → packages/cad-model/src}/NodeIdAndTreeIndexMaps.d.ts +0 -0
- package/packages/cad-model/src/WellKnownUnit.d.ts +7 -0
- package/{core/src/utilities → packages/cad-model/src}/callActionWithIndicesAsync.d.ts +0 -0
- package/{core/src/datamodels/cad → packages/cad-model/src}/createCadManager.d.ts +6 -4
- package/{core/src/datamodels/cad → packages/cad-model/src}/picking.d.ts +2 -2
- package/packages/cad-parsers/index.d.ts +2 -3
- package/packages/cad-parsers/src/cad/primitiveGeometries.d.ts +0 -1
- package/packages/cad-parsers/src/cad/triangleMeshes.d.ts +2 -2
- package/{core/src/datamodels/cad/sector → packages/cad-parsers/src/metadata}/CadModelClipper.d.ts +1 -1
- package/packages/cad-parsers/src/metadata/CadModelMetadataRepository.d.ts +1 -1
- package/packages/cad-parsers/src/sector/RootSectorNode.d.ts +1 -0
- package/packages/cad-parsers/src/sector/SectorNode.d.ts +1 -0
- package/packages/cad-styling/src/AssetNodeCollection.d.ts +3 -1
- package/packages/cad-styling/src/NodeCollectionDeserializer.d.ts +1 -1
- package/packages/camera-manager/index.d.ts +2 -0
- package/packages/camera-manager/src/CameraManager.d.ts +4 -2
- package/packages/camera-manager/src/CameraManagerHelper.d.ts +42 -0
- package/packages/camera-manager/src/DefaultCameraManager.d.ts +7 -9
- package/packages/camera-manager/src/types.d.ts +5 -14
- package/packages/metrics/index.d.ts +0 -1
- package/packages/model-base/index.d.ts +7 -0
- package/{core/src/public/migration → packages/model-base/src}/CogniteModelBase.d.ts +2 -2
- package/packages/{cad-parsers/src/metadata → model-base/src}/MetadataRepository.d.ts +1 -1
- package/{core/src/datamodels/base → packages/model-base/src}/SupportedModelTypes.d.ts +0 -0
- package/packages/{cad-geometry-loaders/src/utilities → model-base/src}/types.d.ts +11 -0
- package/packages/modeldata-api/index.d.ts +0 -1
- package/packages/pointclouds/index.d.ts +11 -0
- package/{core/src/public/migration → packages/pointclouds/src}/CognitePointCloudModel.d.ts +3 -4
- package/packages/pointclouds/src/PointCloudBudget.d.ts +14 -0
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudFactory.d.ts +1 -1
- package/packages/pointclouds/src/PointCloudIntersection.d.ts +26 -0
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudManager.d.ts +2 -2
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudMetadata.d.ts +2 -2
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudMetadataRepository.d.ts +2 -2
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PointCloudNode.d.ts +1 -1
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PotreeGroupWrapper.d.ts +1 -1
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/PotreeNodeWrapper.d.ts +2 -3
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/createPointCloudManager.d.ts +1 -1
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/picking.d.ts +1 -1
- package/{core/src/datamodels/pointcloud → packages/pointclouds/src}/types.d.ts +0 -0
- package/packages/rendering/index.d.ts +1 -4
- package/packages/rendering/src/CadMaterialManager.d.ts +3 -1
- package/packages/rendering/src/GeometryBatchingManager.d.ts +1 -0
- package/packages/rendering/src/rendering/materials.d.ts +15 -15
- package/packages/rendering/src/sector/CadNode.d.ts +4 -4
- package/packages/utilities/index.d.ts +3 -0
- package/packages/utilities/src/events/InputHandler.d.ts +1 -5
- package/packages/utilities/src/events/index.d.ts +1 -0
- package/packages/utilities/src/events/types.d.ts +27 -0
- package/{core/src/utilities → packages/utilities/src}/worldToViewport.d.ts +0 -0
- package/tools.js +99 -73
- package/tools.map +1 -1
- package/core/src/datamodels/base/index.d.ts +0 -6
- package/core/src/datamodels/base/types.d.ts +0 -14
- package/core/src/datamodels/pointcloud/index.d.ts +0 -5
- package/packages/modeldata-api/src/CdfModelOutputsProvider.d.ts +0 -16
- package/packages/modeldata-api/src/Model3DOutputList.d.ts +0 -17
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cognite/reveal",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.2",
|
|
4
4
|
"description": "WebGL based 3D viewer for CAD and point clouds processed in Cognite Data Fusion.",
|
|
5
5
|
"homepage": "https://github.com/cognitedata/reveal/tree/master/viewer",
|
|
6
6
|
"repository": {
|
|
@@ -19,26 +19,27 @@
|
|
|
19
19
|
"main": "index.js",
|
|
20
20
|
"types": "index.d.ts",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@cognite/potree-core": "1.5.
|
|
22
|
+
"@cognite/potree-core": "1.5.2",
|
|
23
23
|
"@cognite/reveal-parser-worker": "1.3.0",
|
|
24
24
|
"@tweenjs/tween.js": "18.6.4",
|
|
25
25
|
"@types/draco3dgltf": "1.4.0",
|
|
26
|
-
"@types/
|
|
26
|
+
"@types/geojson": "^7946.0.8",
|
|
27
|
+
"@types/three": "0.139.0",
|
|
27
28
|
"assert": "2.0.0",
|
|
28
29
|
"comlink": "4.3.1",
|
|
29
|
-
"geo-three": "0.0.
|
|
30
|
+
"geo-three": "0.0.17",
|
|
30
31
|
"glslify": "7.1.1",
|
|
31
32
|
"glslify-import": "3.1.0",
|
|
32
33
|
"lodash": "4.17.21",
|
|
33
|
-
"loglevel": "1.
|
|
34
|
-
"mixpanel-browser": "2.
|
|
35
|
-
"rxjs": "7.
|
|
34
|
+
"loglevel": "1.8.0",
|
|
35
|
+
"mixpanel-browser": "2.45.0",
|
|
36
|
+
"rxjs": "7.5.5",
|
|
36
37
|
"skmeans": "0.11.3",
|
|
37
|
-
"three": "0.
|
|
38
|
+
"three": "0.139.2"
|
|
38
39
|
},
|
|
39
40
|
"peerDependencies": {
|
|
40
|
-
"@cognite/sdk": "^5.0.0",
|
|
41
|
-
"@cognite/sdk-core": "^
|
|
41
|
+
"@cognite/sdk": "^5.0.0 || ^6.0.0 || ^7.0.0",
|
|
42
|
+
"@cognite/sdk-core": "^4.1.0"
|
|
42
43
|
},
|
|
43
44
|
"glslify": {
|
|
44
45
|
"transform": [
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
|
-
export { CadModelBudget,
|
|
5
|
-
export { CadLoadingHints } from './src/CadLoadingHints';
|
|
4
|
+
export { CadModelBudget, defaultDesktopCadModelBudget } from './src/CadModelBudget';
|
|
6
5
|
export { CadModelUpdateHandler } from './src/CadModelUpdateHandler';
|
|
7
|
-
export { LoadingState } from './src/utilities/types';
|
|
8
6
|
export { SectorCuller } from './src/sector/culling/SectorCuller';
|
|
9
|
-
export { ByVisibilityGpuSectorCuller } from './src/sector/culling/ByVisibilityGpuSectorCuller';
|
|
10
|
-
export { ByScreenSizeSectorCuller } from './src/sector/culling/ByScreenSizeSectorCuller';
|
|
11
7
|
export { createV8SectorCuller } from './src/sector/culling/createV8SectorCuller';
|
|
12
|
-
export { DetermineSectorsInput } from './src/sector/culling/types';
|
|
@@ -7,7 +7,7 @@ import { CadNode } from '../../rendering';
|
|
|
7
7
|
import { Observable } from 'rxjs';
|
|
8
8
|
import { SectorCuller } from './sector/culling/SectorCuller';
|
|
9
9
|
import { CadLoadingHints } from './CadLoadingHints';
|
|
10
|
-
import { LoadingState } from '
|
|
10
|
+
import { LoadingState } from '../../model-base';
|
|
11
11
|
import { CadModelBudget } from './CadModelBudget';
|
|
12
12
|
import { SectorLoadingSpent } from './sector/culling/types';
|
|
13
13
|
export declare class CadModelUpdateHandler {
|
|
@@ -22,7 +22,7 @@ export declare class CadModelUpdateHandler {
|
|
|
22
22
|
private readonly _modelSubject;
|
|
23
23
|
private readonly _budgetSubject;
|
|
24
24
|
private readonly _progressSubject;
|
|
25
|
-
private
|
|
25
|
+
private _updateObservable;
|
|
26
26
|
constructor(sectorCuller: SectorCuller, continuousModelStreaming?: boolean);
|
|
27
27
|
dispose(): void;
|
|
28
28
|
updateCamera(camera: THREE.PerspectiveCamera): void;
|
|
@@ -25,6 +25,7 @@ export declare class SectorLoader {
|
|
|
25
25
|
private _batchId;
|
|
26
26
|
constructor(sectorCuller: SectorCuller, modelStateHandler: ModelStateHandler, collectStatisticsCallback: (spent: SectorLoadingSpent) => void, progressCallback: (sectorsLoaded: number, sectorsScheduled: number, sectorsCulled: number) => void, continuousModelStreaming: boolean);
|
|
27
27
|
loadSectors(input: DetermineSectorsPayload): AsyncIterable<ConsumedSector>;
|
|
28
|
+
private shouldLoad;
|
|
28
29
|
private getSectorCuller;
|
|
29
30
|
private filterSectors;
|
|
30
31
|
private startLoadingBatch;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
|
-
import { SectorCuller } from './SectorCuller';
|
|
6
5
|
import { EffectRenderManager } from '../../../../rendering';
|
|
6
|
+
import { SectorCuller } from './SectorCuller';
|
|
7
7
|
export declare function createV8SectorCuller(renderer: THREE.WebGLRenderer, renderManager: EffectRenderManager): SectorCuller;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
export { CadManager } from './src/CadManager';
|
|
5
|
+
export { GeometryFilter } from './src/GeometryFilter';
|
|
6
|
+
export { CadModelSectorLoadStatistics } from './src/CadModelSectorLoadStatistics';
|
|
7
|
+
export { intersectCadNodes } from './src/picking';
|
|
8
|
+
export { createCadManager } from './src/createCadManager';
|
|
9
|
+
export { BoundingBoxClipper } from './src/BoundingBoxClipper';
|
|
10
|
+
export { InternalRevealCadOptions } from './src/InternalRevealCadOptions';
|
|
11
|
+
export { Cognite3DModel } from './src/Cognite3DModel';
|
|
12
|
+
export { WellKnownUnit } from './src/WellKnownUnit';
|
|
File without changes
|
|
@@ -5,16 +5,19 @@ import * as THREE from 'three';
|
|
|
5
5
|
import { Observable } from 'rxjs';
|
|
6
6
|
import { CadModelFactory } from './CadModelFactory';
|
|
7
7
|
import { CadModelSectorLoadStatistics } from './CadModelSectorLoadStatistics';
|
|
8
|
-
import { GeometryFilter } from '
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
8
|
+
import { GeometryFilter } from './GeometryFilter';
|
|
9
|
+
import { CadModelMetadata } from '../../cad-parsers';
|
|
10
|
+
import { CadModelUpdateHandler, CadModelBudget } from '../../cad-geometry-loaders';
|
|
11
|
+
import { LoadingState } from '../../model-base';
|
|
12
|
+
import { CadNode, CadMaterialManager, RenderMode } from '../../rendering';
|
|
13
|
+
import { ModelIdentifier } from '../../modeldata-api';
|
|
12
14
|
export declare class CadManager {
|
|
13
15
|
private readonly _materialManager;
|
|
14
16
|
private readonly _cadModelFactory;
|
|
15
17
|
private readonly _cadModelUpdateHandler;
|
|
16
18
|
private readonly _cadModelMap;
|
|
17
19
|
private readonly _subscription;
|
|
20
|
+
private _compatibleFileFormat;
|
|
18
21
|
private _needsRedraw;
|
|
19
22
|
private readonly _markNeedsRedrawBound;
|
|
20
23
|
private readonly _materialsChangedListener;
|
|
@@ -35,6 +38,8 @@ export declare class CadManager {
|
|
|
35
38
|
set clippingPlanes(clippingPlanes: THREE.Plane[]);
|
|
36
39
|
get renderMode(): RenderMode;
|
|
37
40
|
set renderMode(renderMode: RenderMode);
|
|
41
|
+
doesModelHaveCompatibleFormat(modelMetadata: CadModelMetadata): boolean;
|
|
42
|
+
updateModelCompatibilityFormat(modelMetadata: CadModelMetadata): void;
|
|
38
43
|
addModel(modelIdentifier: ModelIdentifier, geometryFilter?: GeometryFilter): Promise<CadNode>;
|
|
39
44
|
removeModel(model: CadNode): void;
|
|
40
45
|
getLoadingStateObserver(): Observable<LoadingState>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { GeometryFilter } from '
|
|
2
|
-
import { CadMaterialManager, CadNode } from '
|
|
3
|
-
import {
|
|
1
|
+
import { GeometryFilter } from './GeometryFilter';
|
|
2
|
+
import { CadMaterialManager, CadNode } from '../../rendering';
|
|
3
|
+
import { CadModelMetadata } from '../../cad-parsers';
|
|
4
|
+
import { ModelDataProvider, ModelMetadataProvider, ModelIdentifier } from '../../modeldata-api';
|
|
4
5
|
export declare class CadModelFactory {
|
|
5
6
|
private readonly _materialManager;
|
|
6
7
|
private readonly _modelDataProvider;
|
|
@@ -8,7 +9,8 @@ export declare class CadModelFactory {
|
|
|
8
9
|
private _v8SectorRepository;
|
|
9
10
|
private _gltfSectorRepository;
|
|
10
11
|
constructor(materialManager: CadMaterialManager, modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider);
|
|
11
|
-
|
|
12
|
+
loadModelMetadata(externalModelIdentifier: ModelIdentifier): Promise<CadModelMetadata>;
|
|
13
|
+
createModel(metadata: CadModelMetadata, geometryFilter?: GeometryFilter): Promise<CadNode>;
|
|
12
14
|
private getSectorRepository;
|
|
13
15
|
dispose(): void;
|
|
14
16
|
}
|
package/{core/src/datamodels/cad → packages/cad-model/src}/CadModelSectorLoadStatistics.d.ts
RENAMED
|
File without changes
|
|
@@ -3,12 +3,10 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
5
|
import { CogniteInternalId } from '@cognite/sdk';
|
|
6
|
-
import {
|
|
7
|
-
import { CogniteModelBase } from '
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { NumericRange } from '../../../../packages/utilities';
|
|
11
|
-
import { NodeAppearance, NodeCollection, CdfModelNodeCollectionDataProvider } from '../../../../packages/cad-styling';
|
|
6
|
+
import { WellKnownUnit } from './WellKnownUnit';
|
|
7
|
+
import { SupportedModelTypes, CogniteModelBase } from '../../model-base';
|
|
8
|
+
import { NumericRange, CameraConfiguration } from '../../utilities';
|
|
9
|
+
import { NodeAppearance, NodeCollection, CdfModelNodeCollectionDataProvider } from '../../cad-styling';
|
|
12
10
|
/**
|
|
13
11
|
* Represents a single 3D CAD model loaded from CDF.
|
|
14
12
|
* @noInheritDoc
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
export interface GeometryFilter {
|
|
5
|
+
/**
|
|
6
|
+
* The bounds to load geometry within. By default this box is in CDF coordinate space which
|
|
7
|
+
* will be transformed into coordinates relative to the model using the the model transformation
|
|
8
|
+
* which can be specified using {@link https://docs.cognite.com/api/v1/#operation/update3DRevisions |the CDF API},
|
|
9
|
+
* or set in {@link https://fusion.cognite.com/ |Cognite Fusion}.
|
|
10
|
+
* @see {@link isBoundingBoxInModelCoordinates}.
|
|
11
|
+
*/
|
|
12
|
+
boundingBox?: THREE.Box3;
|
|
13
|
+
/**
|
|
14
|
+
* When set, the geometry filter {@link boundingBox} will be considered to be in "Reveal/ThreeJS space".
|
|
15
|
+
* Rather than CDF space which is the default. When using Reveal space, the model transformation
|
|
16
|
+
* which can be specified using {@link https://docs.cognite.com/api/v1/#operation/update3DRevisions |the CDF API},
|
|
17
|
+
* or set in {@link https://fusion.cognite.com/ |Cognite Fusion}.
|
|
18
|
+
*/
|
|
19
|
+
isBoundingBoxInModelCoordinates?: boolean;
|
|
20
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
import { SectorCuller } from '../../cad-geometry-loaders';
|
|
5
|
+
import { SectorGeometry } from '../../cad-parsers';
|
|
6
|
+
import { SectorQuads } from '../../rendering';
|
|
7
|
+
export declare type InternalRevealCadOptions = {
|
|
8
|
+
parseCallback?: (parsed: {
|
|
9
|
+
lod: string;
|
|
10
|
+
data: SectorGeometry | SectorQuads;
|
|
11
|
+
}) => void;
|
|
12
|
+
sectorCuller?: SectorCuller;
|
|
13
|
+
};
|
|
File without changes
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Units supported by {@link Cognite3DModel}.
|
|
6
|
+
*/
|
|
7
|
+
export declare type WellKnownUnit = 'Meters' | 'Centimeters' | 'Millimeters' | 'Micrometers' | 'Kilometers' | 'Feet' | 'Inches' | 'Yards' | 'Miles' | 'Mils' | 'Microinches';
|
|
File without changes
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import { CadManager } from './CadManager';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { ModelDataProvider, ModelMetadataProvider } from '
|
|
8
|
-
export declare function createCadManager(modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider, renderer: THREE.WebGLRenderer, materialManager: CadMaterialManager, renderManager: EffectRenderManager,
|
|
5
|
+
import { InternalRevealCadOptions } from './InternalRevealCadOptions';
|
|
6
|
+
import { CadMaterialManager, EffectRenderManager } from '../../rendering';
|
|
7
|
+
import { ModelDataProvider, ModelMetadataProvider } from '../../modeldata-api';
|
|
8
|
+
export declare function createCadManager(modelMetadataProvider: ModelMetadataProvider, modelDataProvider: ModelDataProvider, renderer: THREE.WebGLRenderer, materialManager: CadMaterialManager, renderManager: EffectRenderManager, cadOptions: InternalRevealCadOptions & {
|
|
9
|
+
continuousModelStreaming?: boolean;
|
|
10
|
+
}): CadManager;
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
|
-
import { CadNode } from '
|
|
6
|
-
import { IntersectInput } from '
|
|
5
|
+
import { CadNode } from '../../rendering';
|
|
6
|
+
import { IntersectInput } from '../../model-base';
|
|
7
7
|
export interface PickingInput {
|
|
8
8
|
normalizedCoords: {
|
|
9
9
|
x: number;
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
|
-
export { CadMetadataParser } from './src/metadata/CadMetadataParser';
|
|
5
|
-
export { MetadataRepository } from './src/metadata/MetadataRepository';
|
|
6
4
|
export { CadModelMetadataRepository } from './src/metadata/CadModelMetadataRepository';
|
|
7
5
|
export { CadModelMetadata } from './src/metadata/CadModelMetadata';
|
|
8
|
-
export { SectorSceneImpl } from './src/utilities/SectorScene';
|
|
9
6
|
export { SectorSceneFactory } from './src/utilities/SectorSceneFactory';
|
|
7
|
+
export { CadModelClipper } from './src/metadata/CadModelClipper';
|
|
10
8
|
export { SectorScene } from './src/utilities/types';
|
|
11
9
|
export { SectorMetadata, V8SectorMetadata, V9SectorMetadata } from './src/metadata/types';
|
|
12
10
|
export { SectorNode } from './src/sector/SectorNode';
|
|
@@ -16,6 +14,7 @@ export { LevelOfDetail } from './src/cad/LevelOfDetail';
|
|
|
16
14
|
export { filterPrimitivesOutsideClipBoxByBaseBoundsAndInstanceMatrix, filterPrimitivesOutsideClipBoxByCenterAndRadius, filterPrimitivesOutsideClipBoxByEllipse, filterPrimitivesOutsideClipBoxByVertices } from './src/cad/filterPrimitivesV8';
|
|
17
15
|
export { filterInstanceMesh } from './src/cad/filterInstanceMesh';
|
|
18
16
|
export { boxGeometry, quadGeometry, coneGeometry, trapeziumGeometry, nutGeometry, torusLodGeometries, boxGeometryBoundingBox, quadGeometryBoundingBox, nutGeometryBoundingBox } from './src/cad/primitiveGeometries';
|
|
17
|
+
export { filterGeometryOutsideClipBox } from './src/cad/filterPrimitivesV9';
|
|
19
18
|
export { SectorGeometry, InstancedMeshFile, InstancedMesh, TriangleMesh, WantedSector, ConsumedSector } from './src/cad/types';
|
|
20
19
|
export { getDistanceToMeterConversionFactor } from './src/utilities/types';
|
|
21
20
|
export { createTriangleMeshes } from './src/cad/triangleMeshes';
|
|
@@ -5,7 +5,6 @@ import * as THREE from 'three';
|
|
|
5
5
|
export declare const boxGeometry: {
|
|
6
6
|
index: THREE.BufferAttribute;
|
|
7
7
|
position: THREE.BufferAttribute | THREE.InterleavedBufferAttribute;
|
|
8
|
-
normal: THREE.BufferAttribute | THREE.InterleavedBufferAttribute;
|
|
9
8
|
}, boxGeometryBoundingBox: THREE.Box3;
|
|
10
9
|
export declare const quadGeometry: {
|
|
11
10
|
index: THREE.BufferAttribute;
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
|
-
import { TriangleMesh } from '
|
|
6
|
-
export declare function createTriangleMeshes(triangleMeshes: TriangleMesh[], bounds: THREE.Box3, material: THREE.
|
|
5
|
+
import { TriangleMesh } from './types';
|
|
6
|
+
export declare function createTriangleMeshes(triangleMeshes: TriangleMesh[], bounds: THREE.Box3, material: THREE.RawShaderMaterial, geometryClipBox: THREE.Box3 | null): THREE.Mesh[];
|
package/{core/src/datamodels/cad/sector → packages/cad-parsers/src/metadata}/CadModelClipper.d.ts
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
|
-
import { CadModelMetadata } from '
|
|
5
|
+
import { CadModelMetadata } from './CadModelMetadata';
|
|
6
6
|
export declare class CadModelClipper {
|
|
7
7
|
private readonly _geometryClipBox;
|
|
8
8
|
constructor(geometryClipBox: THREE.Box3);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import { CadModelMetadata } from './CadModelMetadata';
|
|
5
|
-
import { MetadataRepository } from '
|
|
5
|
+
import { MetadataRepository } from '../../../model-base';
|
|
6
6
|
import { ModelDataProvider, ModelMetadataProvider, ModelIdentifier } from '../../../modeldata-api';
|
|
7
7
|
export declare class CadModelMetadataRepository implements MetadataRepository<Promise<CadModelMetadata>> {
|
|
8
8
|
private readonly _modelMetadataProvider;
|
|
@@ -7,6 +7,7 @@ import { CadModelMetadata } from '../metadata/CadModelMetadata';
|
|
|
7
7
|
export declare class RootSectorNode extends SectorNode {
|
|
8
8
|
readonly sectorNodeMap: Map<number, SectorNode>;
|
|
9
9
|
constructor(modelMetadata: CadModelMetadata);
|
|
10
|
+
dereferenceAllNodes(): void;
|
|
10
11
|
setModelTransformation(matrix: THREE.Matrix4): void;
|
|
11
12
|
getModelTransformation(out?: THREE.Matrix4): THREE.Matrix4;
|
|
12
13
|
}
|
|
@@ -17,5 +17,6 @@ export declare class SectorNode extends THREE.Group {
|
|
|
17
17
|
get group(): THREE.Group | undefined;
|
|
18
18
|
get updatedTimestamp(): number;
|
|
19
19
|
updateGeometry(geomtryGroup: AutoDisposeGroup | undefined, levelOfDetail: LevelOfDetail): void;
|
|
20
|
+
dereference(): void;
|
|
20
21
|
resetGeometry(): void;
|
|
21
22
|
}
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
|
+
import { NodeCollection } from './NodeCollection';
|
|
6
|
+
import { SerializedNodeCollection } from './SerializedNodeCollection';
|
|
7
|
+
import { AreaCollection } from './prioritized/AreaCollection';
|
|
5
8
|
import { IndexSet } from '../../utilities';
|
|
6
|
-
import { NodeCollection, SerializedNodeCollection, AreaCollection } from '../../cad-styling';
|
|
7
9
|
import { CogniteClient } from '@cognite/sdk';
|
|
8
10
|
import { CdfModelNodeCollectionDataProvider } from './CdfModelNodeCollectionDataProvider';
|
|
9
11
|
/**
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { CogniteClient } from '@cognite/sdk';
|
|
5
5
|
import { CdfModelNodeCollectionDataProvider } from './CdfModelNodeCollectionDataProvider';
|
|
6
|
-
import { NodeCollection } from '
|
|
6
|
+
import { NodeCollection } from './NodeCollection';
|
|
7
7
|
export declare type TypeName = string;
|
|
8
8
|
export declare type NodeCollectionSerializationContext = {
|
|
9
9
|
client: CogniteClient;
|
|
@@ -2,5 +2,7 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
export { DefaultCameraManager } from './src/DefaultCameraManager';
|
|
5
|
+
export { CameraManagerHelper } from './src/CameraManagerHelper';
|
|
5
6
|
export { CameraManager } from './src/CameraManager';
|
|
7
|
+
export { ComboControls } from './src/ComboControls';
|
|
6
8
|
export * from './src/types';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright 2022 Cognite AS
|
|
3
3
|
*/
|
|
4
|
-
import
|
|
4
|
+
import * as THREE from 'three';
|
|
5
|
+
import { CameraState, CameraChangeDelegate } from './types';
|
|
5
6
|
/**
|
|
6
7
|
* Interface for manager responsible for all manipulations to the camera,
|
|
7
8
|
* including animations and modification of state. Implementations are responsible for
|
|
@@ -18,7 +19,8 @@ export interface CameraManager {
|
|
|
18
19
|
*/
|
|
19
20
|
getCamera(): THREE.PerspectiveCamera;
|
|
20
21
|
/**
|
|
21
|
-
* Set camera's state. Rotation and target can't be set at the same time
|
|
22
|
+
* Set camera's state. Rotation and target can't be set at the same time as they could conflict,
|
|
23
|
+
* should throw an error if both are passed with non-zero value inside state.
|
|
22
24
|
*
|
|
23
25
|
* @param state Camera state, all fields are optional.
|
|
24
26
|
* @param state.position Camera position in world space.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
import * as THREE from 'three';
|
|
5
|
+
/**
|
|
6
|
+
* Helper methods for implementing a camera manager.
|
|
7
|
+
*/
|
|
8
|
+
export declare class CameraManagerHelper {
|
|
9
|
+
/**
|
|
10
|
+
* Reusable buffers used by updateNearAndFarPlane function to avoid allocations.
|
|
11
|
+
*/
|
|
12
|
+
private static readonly _updateNearAndFarPlaneBuffers;
|
|
13
|
+
private static readonly _calculateCameraFarBuffers;
|
|
14
|
+
/**
|
|
15
|
+
* Calculates camera target based on new camera rotation.
|
|
16
|
+
* @param camera Used camera instance.
|
|
17
|
+
* @param rotation New camera rotation in quaternion form.
|
|
18
|
+
* @param currentTarget Current camera target.
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
21
|
+
static calculateNewTargetFromRotation(camera: THREE.PerspectiveCamera, rotation: THREE.Quaternion, currentTarget: THREE.Vector3): THREE.Vector3;
|
|
22
|
+
/**
|
|
23
|
+
* Updates near and far plane of the camera based on the bounding box.
|
|
24
|
+
* @param camera Used camera instance.
|
|
25
|
+
* @param combinedBbox Bounding box of all objects on the scene.
|
|
26
|
+
*/
|
|
27
|
+
static updateCameraNearAndFar(camera: THREE.PerspectiveCamera, combinedBbox: THREE.Box3): void;
|
|
28
|
+
/**
|
|
29
|
+
* Calculates camera position and target that allows to see the content of provided bounding box.
|
|
30
|
+
* @param camera Used camera instance.
|
|
31
|
+
* @param box Bounding box to be fitted.
|
|
32
|
+
* @param radiusFactor The ratio of the distance from camera to center of box and radius of the box.
|
|
33
|
+
* @returns
|
|
34
|
+
*/
|
|
35
|
+
static calculateCameraStateToFitBoundingBox(camera: THREE.PerspectiveCamera, box: THREE.Box3, radiusFactor?: number): {
|
|
36
|
+
position: THREE.Vector3;
|
|
37
|
+
target: THREE.Vector3;
|
|
38
|
+
};
|
|
39
|
+
private static calculateCameraFar;
|
|
40
|
+
private static calculateCameraNear;
|
|
41
|
+
private static getBoundingBoxCorners;
|
|
42
|
+
}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
|
-
import {
|
|
5
|
+
import { ComboControls } from './ComboControls';
|
|
6
|
+
import { CameraControlsOptions, CameraState, CameraChangeDelegate } from './types';
|
|
6
7
|
import { CameraManager } from './CameraManager';
|
|
7
8
|
/**
|
|
8
9
|
* Default implementation of {@link CameraManager}. Uses target-based orbit controls combined with
|
|
@@ -53,14 +54,14 @@ export declare class DefaultCameraManager implements CameraManager {
|
|
|
53
54
|
* and `viewer.cameraManager.cameraControls.maxDistance`.
|
|
54
55
|
*/
|
|
55
56
|
automaticControlsSensitivity: boolean;
|
|
56
|
-
/**
|
|
57
|
-
* Reusable buffers used by functions in Cognite3dViewer to avoid allocations.
|
|
58
|
-
*/
|
|
59
|
-
private readonly _updateNearAndFarPlaneBuffers;
|
|
60
|
-
private readonly _calculateCameraFarBuffers;
|
|
61
57
|
on(event: 'cameraChange', callback: CameraChangeDelegate): void;
|
|
62
58
|
off(event: 'cameraChange', callback: CameraChangeDelegate): void;
|
|
63
59
|
fitCameraToBoundingBox(box: THREE.Box3, duration?: number, radiusFactor?: number): void;
|
|
60
|
+
/**
|
|
61
|
+
* Gets instance of camera controls that are used by camera manager. See {@link ComboControls} for more
|
|
62
|
+
* information on all adjustable properties.
|
|
63
|
+
*/
|
|
64
|
+
get cameraControls(): ComboControls;
|
|
64
65
|
/**
|
|
65
66
|
* Sets whether camera controls through mouse, touch and keyboard are enabled.
|
|
66
67
|
* This can be useful to e.g. temporarily disable navigation when manipulating other
|
|
@@ -102,11 +103,8 @@ export declare class DefaultCameraManager implements CameraManager {
|
|
|
102
103
|
private moveCameraTo;
|
|
103
104
|
private moveCameraTargetTo;
|
|
104
105
|
private updateCameraNearAndFar;
|
|
105
|
-
private calculateNewTargetFromRotation;
|
|
106
106
|
private calculateAnimationStartTarget;
|
|
107
107
|
private createTweenAnimation;
|
|
108
|
-
private calculateCameraFar;
|
|
109
|
-
private calculateCameraNear;
|
|
110
108
|
/**
|
|
111
109
|
* Calculates new target when raycaster doesn't have any intersections with the model.
|
|
112
110
|
* @param cursorPosition Cursor position for desired calculations.
|
|
@@ -43,6 +43,11 @@ export declare type CameraState = {
|
|
|
43
43
|
*/
|
|
44
44
|
rotation?: THREE.Quaternion;
|
|
45
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* Delegate for camera update events.
|
|
48
|
+
* @module @cognite/reveal
|
|
49
|
+
*/
|
|
50
|
+
export declare type CameraChangeDelegate = (position: THREE.Vector3, target: THREE.Vector3) => void;
|
|
46
51
|
export declare type CameraManagerCallbackData = {
|
|
47
52
|
intersection: {
|
|
48
53
|
/**
|
|
@@ -59,17 +64,3 @@ export declare type CameraManagerCallbackData = {
|
|
|
59
64
|
*/
|
|
60
65
|
modelsBoundingBox: THREE.Box3;
|
|
61
66
|
};
|
|
62
|
-
/**
|
|
63
|
-
* Delegate for pointer events.
|
|
64
|
-
* @module @cognite/reveal
|
|
65
|
-
*/
|
|
66
|
-
export declare type PointerEventDelegate = (event: {
|
|
67
|
-
offsetX: number;
|
|
68
|
-
offsetY: number;
|
|
69
|
-
}) => void;
|
|
70
|
-
/**
|
|
71
|
-
* Delegate for camera update events.
|
|
72
|
-
* @module @cognite/reveal
|
|
73
|
-
* @see {@link CameraManager.on}.
|
|
74
|
-
*/
|
|
75
|
-
export declare type CameraChangeDelegate = (position: THREE.Vector3, target: THREE.Vector3) => void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
export { IntersectInput, LoadingState } from './src/types';
|
|
5
|
+
export { SupportedModelTypes } from './src/SupportedModelTypes';
|
|
6
|
+
export { CogniteModelBase } from './src/CogniteModelBase';
|
|
7
|
+
export { MetadataRepository } from './src/MetadataRepository';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
|
-
import { CameraConfiguration } from '
|
|
5
|
-
import { SupportedModelTypes } from '
|
|
4
|
+
import { CameraConfiguration } from '../../utilities';
|
|
5
|
+
import { SupportedModelTypes } from './SupportedModelTypes';
|
|
6
6
|
/**
|
|
7
7
|
* Base class for 3D models supported by {@link Cognite3DViewer}.
|
|
8
8
|
* @module @cognite/reveal
|
|
File without changes
|
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
|
+
import * as THREE from 'three';
|
|
5
|
+
export interface IntersectInput {
|
|
6
|
+
normalizedCoords: {
|
|
7
|
+
x: number;
|
|
8
|
+
y: number;
|
|
9
|
+
};
|
|
10
|
+
camera: THREE.PerspectiveCamera;
|
|
11
|
+
clippingPlanes: THREE.Plane[];
|
|
12
|
+
renderer: THREE.WebGLRenderer;
|
|
13
|
+
domElement: HTMLElement;
|
|
14
|
+
}
|
|
4
15
|
/**
|
|
5
16
|
* State holding information about data being loaded.
|
|
6
17
|
*/
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
export { CdfModelDataProvider } from './src/CdfModelDataProvider';
|
|
5
5
|
export { CdfModelIdentifier } from './src/CdfModelIdentifier';
|
|
6
6
|
export { CdfModelMetadataProvider } from './src/CdfModelMetadataProvider';
|
|
7
|
-
export { CdfModelOutputsProvider } from './src/CdfModelOutputsProvider';
|
|
8
7
|
export { LocalModelDataProvider } from './src/LocalModelDataProvider';
|
|
9
8
|
export { LocalModelIdentifier } from './src/LocalModelIdentifier';
|
|
10
9
|
export { LocalModelMetadataProvider } from './src/LocalModelMetadataProvider';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
export { intersectPointClouds } from './src/picking';
|
|
5
|
+
export { PotreePointShape, PotreePointColorType, PotreePointSizeType, WellKnownAsprsPointClassCodes } from './src/types';
|
|
6
|
+
export { PointCloudNode } from './src/PointCloudNode';
|
|
7
|
+
export { PointCloudManager } from './src/PointCloudManager';
|
|
8
|
+
export { createPointCloudManager } from './src/createPointCloudManager';
|
|
9
|
+
export { PointCloudBudget } from './src/PointCloudBudget';
|
|
10
|
+
export { PointCloudIntersection } from './src/PointCloudIntersection';
|
|
11
|
+
export { CognitePointCloudModel } from './src/CognitePointCloudModel';
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
* Copyright 2021 Cognite AS
|
|
3
3
|
*/
|
|
4
4
|
import * as THREE from 'three';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { PotreePointColorType, PotreePointShape, WellKnownAsprsPointClassCodes } from '../..';
|
|
5
|
+
import { CameraConfiguration } from '../../utilities';
|
|
6
|
+
import { PotreePointColorType, PotreePointShape, WellKnownAsprsPointClassCodes } from './types';
|
|
7
|
+
import { SupportedModelTypes, CogniteModelBase } from '../../model-base';
|
|
9
8
|
/**
|
|
10
9
|
* Represents a point clouds model loaded from CDF.
|
|
11
10
|
* @noInheritDoc
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright 2022 Cognite AS
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Represents a budget of how many point from point clouds can be
|
|
6
|
+
* loaded at the same time.
|
|
7
|
+
*/
|
|
8
|
+
export declare type PointCloudBudget = {
|
|
9
|
+
/**
|
|
10
|
+
* Total number of points that can be loaded for all point clouds models
|
|
11
|
+
* accumulated.
|
|
12
|
+
*/
|
|
13
|
+
readonly numberOfPoints: number;
|
|
14
|
+
};
|