Class: Cognite3DViewer<DataSourceT>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:125
Type Parameters
DataSourceT
DataSourceT
extends DataSourceType
= ClassicDataSourceType
Constructors
Constructor
new Cognite3DViewer<
DataSourceT
>(options
):Cognite3DViewer
<DataSourceT
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:266
Parameters
options
Returns
Cognite3DViewer
<DataSourceT
>
Accessors
cadBudget
Get Signature
get cadBudget():
CadModelBudget
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:220
Gets the current budget for downloading geometry for CAD models. Note that this budget is shared between all added CAD models and not a per-model budget.
Returns
Set Signature
set cadBudget(
budget
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:230
Sets the current budget for downloading geometry for CAD models. Note that this budget is shared between all added CAD models and not a per-model budget.
Parameters
budget
Returns
void
cameraManager
Get Signature
get cameraManager():
CameraManager
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:684
Returns
canvas
Get Signature
get canvas():
HTMLCanvasElement
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:132
Returns the rendering canvas, the DOM element where the renderer draws its output.
Returns
HTMLCanvasElement
domElement
Get Signature
get domElement():
HTMLElement
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:142
The DOM element the viewer will insert its rendering canvas into. The DOM element can be specified in the options when the viewer is created. If not specified, the DOM element will be created automatically. The DOM element cannot be changed after the viewer has been created.
Returns
HTMLElement
models
Get Signature
get models():
CogniteModel
<DataSourceT
>[]
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:255
Gets a list of models currently added to the viewer.
Returns
CogniteModel
<DataSourceT
>[]
pointCloudBudget
Get Signature
get pointCloudBudget():
PointCloudBudget
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:240
Returns the point cloud budget. The budget is shared between all loaded point cloud models.
Returns
Set Signature
set pointCloudBudget(
budget
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:248
Sets the point cloud budget. The budget is shared between all loaded point cloud models.
Parameters
budget
Returns
void
renderParameters
Get Signature
get renderParameters():
RenderParameters
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:149
Returns parameters of THREE.WebGLRenderer used by the viewer.
Returns
Methods
add360ImageSet()
Call Signature
add360ImageSet(
datasource
,dataModelIdentifier
):Promise
<Image360Collection
<DataSourceT
&ClassicDataSourceType
>>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:868
Adds a set of 360 images to the scene from the /datamodels API in Cognite Data Fusion.
Parameters
datasource
"datamodels"
The data data source which holds the references to the 360 image sets.
dataModelIdentifier
The search parameters to apply when querying Cognite Datamodels that contains the 360 images.
Returns
Promise
<Image360Collection
<DataSourceT
& ClassicDataSourceType
>>
Call Signature
add360ImageSet(
datasource
,eventFilter
,add360ImageOptions?
):Promise
<Image360Collection
<DataSourceT
&ClassicDataSourceType
>>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:883
Adds a set of 360 images to the scene from the /events API in Cognite Data Fusion.
Parameters
datasource
"events"
The CDF data source which holds the references to the 360 image sets.
eventFilter
The metadata filter to apply when querying events that contains the 360 images.
add360ImageOptions?
Options for behaviours when adding 360 images.
Returns
Promise
<Image360Collection
<DataSourceT
& ClassicDataSourceType
>>
Example
const eventFilter = { site_id: "12345" };
await viewer.add360ImageSet('events', eventFilter);
addCadModel()
addCadModel<
T
>(options
):Promise
<CogniteCadModel
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:784
Add a new CAD 3D model to the viewer. Call Cognite3DViewer.fitCameraToModel to see the model after the model has loaded.
Type Parameters
T
T
extends DataSourceType
Parameters
options
Returns
Promise
<CogniteCadModel
>
Example
const options = {
modelId: 'COGNITE_3D_MODEL_ID',
revisionId: 'COGNITE_3D_REVISION_ID',
};
viewer.addCadModel(options).then(model => {
viewer.fitCameraToModel(model, 0);
});
addCustomObject()
addCustomObject(
customObject
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1139
Beta
Add a CustomObject to the viewer.
Parameters
customObject
Returns
void
Example
const sphere = new THREE.Mesh(
new THREE.SphereGeometry(),
new THREE.MeshBasicMaterial()
);
const customObject = CustomObject(sphere);
customObject.isPartOfBoundingBox = false;
viewer.addCustomObject(customObject);
addModel()
addModel(
options
):Promise
<CogniteModel
<DataSourceT
>>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:737
Add a new model to the viewer. Call Cognite3DViewer.fitCameraToModel to see the model after the model has loaded.
Parameters
options
AddModelOptions
<DataSourceT
>
Returns
Promise
<CogniteModel
<DataSourceT
>>
Example
const options = {
modelId: 'COGNITE_3D_MODEL_ID',
revisionId: 'COGNITE_3D_REVISION_ID',
};
viewer.addModel(options).then(model => {
viewer.fitCameraToModel(model, 0);
});
addObject3D()
addObject3D(
object
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1113
Add a THREE.Object3D to the viewer.
Parameters
object
Object3D
Returns
void
Example
const sphere = new THREE.Mesh(
new THREE.SphereGeometry(),
new THREE.MeshBasicMaterial()
);
viewer.addObject3D(sphere);
addPointCloudModel()
addPointCloudModel(
options
):Promise
<CognitePointCloudModel
<DataSourceT
>>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:831
Add a new pointcloud 3D model to the viewer. Call Cognite3DViewer.fitCameraToModel to see the model after the model has loaded.
Parameters
options
AddModelOptions
<DataSourceT
>
Returns
Promise
<CognitePointCloudModel
<DataSourceT
>>
Example
const options = {
modelId: 'COGNITE_3D_MODEL_ID',
revisionId: 'COGNITE_3D_REVISION_ID',
};
viewer.addPointCloudModel(options).then(model => {
viewer.fitCameraToModel(model, 0);
});
canDoImage360Action()
canDoImage360Action(
action
):boolean
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:986
Beta
Check if a 360 image action can be done.
Parameters
action
The action to check if can be done.
Returns
boolean
createCustomObjectIntersectInput()
createCustomObjectIntersectInput(
pixelCoords
):CustomObjectIntersectInput
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1633
Beta
Creates and initialize a CustomObjectIntersectInput to be used by CustomObject.intersectIfCloser method.
Parameters
pixelCoords
Vector2
A Vector2 containing pixel coordinates relative to the 3D viewer.
Returns
A CustomObjectIntersectInput ready to use.
determineModelType()
determineModelType(
modelId
,revisionId
):Promise
<""
|SupportedModelTypes
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1071
Use to determine of which type the model is.
Parameters
modelId
number
The model's id.
revisionId
number
The model's revision id.
Returns
Promise
<""
| SupportedModelTypes
>
Empty string if type is not supported.
Example
const viewer = new Cognite3DViewer(...);
const type = await viewer.determineModelType(options.modelId, options.revisionId)
let model: CogniteModel
switch (type) {
case 'cad':
model = await viewer.addCadModel(options);
break;
case 'pointcloud':
model = await viewer.addPointCloudModel(options);
break;
default:
throw new Error('Model is not supported');
}
viewer.fitCameraToModel(model);
dispose()
dispose():
void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:467
Dispose of WebGL resources. Can be used to free up memory when the viewer is no longer in use.
Returns
void
See
https://threejs.org/docs/#manual/en/introduction/How-to-dispose-of-objects
// Viewer is no longer in use, free up memory
viewer.dispose();
enter360Image()
enter360Image(
image360
,revision?
):Promise
<void
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:961
Enter visualization of a 360 image.
Parameters
image360
Image360
<DataSourceT
>
The 360 image to enter.
revision?
Image360Revision
<DataSourceT
>
The image revision to use. If not provided the newest revision will be shown.
Returns
Promise
<void
>
exit360Image()
exit360Image():
void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:974
Exit visualization of the 360 image.
Returns
void
fitCameraToBoundingBox()
fitCameraToBoundingBox(
boundingBox
,duration?
,radiusFactor?
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1415
Move camera to a place where the content of a bounding box is visible to the camera.
Parameters
boundingBox
Box3
The bounding box in world space.
duration?
number
The duration of the animation moving the camera. Set this to 0 (zero) to disable animation.
radiusFactor?
number
= 2
The ratio of the distance from camera to center of box and radius of the box.
Returns
void
Example
// Fit camera to bounding box over 500 milliseconds
viewer.fitCameraToBoundingBox(boundingBox, 500);
// Fit camera to bounding box instantaneously
viewer.fitCameraToBoundingBox(boundingBox, 0);
// Place the camera closer to the bounding box
viewer.fitCameraToBoundingBox(boundingBox, 500, 2);
fitCameraToModel()
fitCameraToModel(
model
,duration?
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1358
Move camera to a place where the 3D model is visible. It uses the bounding box of the 3D model and calls Cognite3DViewer.fitCameraToBoundingBox.
Parameters
model
CogniteModel
<DataSourceT
>
The 3D model.
duration?
number
The duration of the animation moving the camera. Set this to 0 (zero) to disable animation.
Returns
void
Example
// Fit camera to model
viewer.fitCameraToModel(model);
// Fit camera to model over 500 milliseconds
viewer.fitCameraToModel(model, 500);
// Fit camera to model instantly
viewer.fitCameraToModel(model, 0);
fitCameraToModels()
fitCameraToModels(
models?
,duration?
,restrictToMostGeometry?
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1373
Move camera to a place where a set of 3D models are visible.
Parameters
models?
CogniteModel
<DataSourceT
>[]
Optional 3D models to focus the camera on. If no models are provided the camera will fit to all models.
duration?
number
The duration of the animation moving the camera. Set this to 0 (zero) to disable animation.
restrictToMostGeometry?
boolean
= false
If true, attempt to remove junk geometry from the boundingBox to allow setting a good camera position.
Returns
void
fitCameraToVisualSceneBoundingBox()
fitCameraToVisualSceneBoundingBox(
duration?
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1391
Move camera to a place where a all objects in the scene are visible.
Parameters
duration?
number
The duration of the animation moving the camera. Set this to 0 (zero) to disable animation.
Returns
void
get360AnnotationIntersectionFromPixel()
get360AnnotationIntersectionFromPixel(
offsetX
,offsetY
):Promise
<null
|Image360AnnotationIntersection
<DataSourceT
>>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1779
Check for intersections with 360 annotations through the given pixel. Similar to Cognite3DViewer.getIntersectionFromPixel, but checks 360 image annotations instead of models.
Parameters
offsetX
number
offsetY
number
Returns
Promise
<null
| Image360AnnotationIntersection
<DataSourceT
>>
get360ImageCollections()
get360ImageCollections():
Image360Collection
<DataSourceT
>[]
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:923
Returns a list of added 360 image collections.
Returns
Image360Collection
<DataSourceT
>[]
getActive360ImageInfo()
getActive360ImageInfo():
undefined
|Image360WithCollection
<DataSourceT
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:930
Returns the currently entered 360 image.
Returns
undefined
| Image360WithCollection
<DataSourceT
>
getAnyIntersectionFromPixel()
getAnyIntersectionFromPixel(
pixelCoords
,options?
):Promise
<undefined
|AnyIntersection
<DataSourceT
>>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1691
Beta
Raycasting model(s) for finding where the ray intersects with all models, including custom objects.
Parameters
pixelCoords
Vector2
Pixel coordinate in pixels (relative to the domElement).
options?
predicate?
(customObject
) => boolean
Check whether a CustomObject should be intersected.
stopOnHitting360Icon?
boolean
Returns
Promise
<undefined
| AnyIntersection
<DataSourceT
>>
A promise that if there was an intersection then return the intersection object - otherwise it
returns null
if there were no intersections.
getClippingPlanes()
getClippingPlanes():
Plane
[]
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1262
Returns the current active global clipping planes.
Returns
Plane
[]
Deprecated
Use Cognite3DViewer.getGlobalClippingPlanes instead.
getGlobalClippingPlanes()
getGlobalClippingPlanes():
Plane
[]
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1269
Returns the current active global clipping planes.
Returns
Plane
[]
getIntersectionFromPixel()
getIntersectionFromPixel(
offsetX
,offsetY
):Promise
<null
|Intersection
<DataSourceT
>>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1674
Raycasting model(s) for finding where the ray intersects with the model.
Parameters
offsetX
number
X coordinate in pixels (relative to the domElement).
offsetY
number
Y coordinate in pixels (relative to the domElement).
Returns
Promise
<null
| Intersection
<DataSourceT
>>
A promise that if there was an intersection then return the intersection object - otherwise it
returns null
if there were no intersections.
See
https://en.wikipedia.org/wiki/Ray_casting For more details on Ray casting.
Examples
const offsetX = 50 // pixels from the left
const offsetY = 100 // pixels from the top
const intersection = await viewer.getIntersectionFromPixel(offsetX, offsetY);
if (intersection) // it was a hit
console.log(
'You hit model ', intersection.model,
' at the node with tree index ', intersection.treeIndex,
' at this exact point ', intersection.point
);
const offsetX = 50 // pixels from the left
const offsetY = 100 // pixels from the top
const intersection = await viewer.getIntersectionFromPixel(offsetX, offsetY);
if (intersection) // it was a hit
console.log(
'You hit model ', intersection.model,
' at the point index ', intersection.pointIndex,
' at this exact point ', intersection.point
);
getNormalizedPixelCoordinates()
getNormalizedPixelCoordinates(
pixelCoords
):Vector2
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1614
Converts a pixel coordinate to normalized device coordinate (in range [-1, 1]).
Parameters
pixelCoords
Vector2
A Vector2 containing pixel coordinates relative to the 3D viewer.
Returns
Vector2
A Vector2 containing the normalized device coordinate (in range [-1, 1]).
getPixelCoordinatesFromEvent()
getPixelCoordinatesFromEvent(
event
):Vector2
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1623
Determines clicked or touched pixel coordinate as offset.
Parameters
event
An PointerEvent or WheelEvent.
PointerEvent
| WheelEvent
Returns
Vector2
A Vector2 containing pixel coordinates relative to the 3D viewer.
getResolutionOptions()
getResolutionOptions():
ResolutionOptions
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:415
Get resolution options that are set on the viewer. This includes settings for max resolution and limiting resolution when moving the camera.
Returns
Options Options that are applied.
getSceneBoundingBox()
getSceneBoundingBox():
Box3
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1277
Beta
Returns the union of all bounding boxes in reveal, including custom objects.
Returns
Box3
getScreenshot()
getScreenshot(
width
,height
,includeUI
):Promise
<string
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1512
Take a screenshot from the current camera position. When drawing UI, only the viewer DOM element and its children will be included in the image. The DOM is scaled to fit any provided resolution, and as a result some elements can be positioned incorrectly in regards to the 3D render.
html2canvas
is used to draw UI and this has some limitations on what CSS properties it is able to render. See the html2canvas documentation for details.
Parameters
width
number
= ...
Width of the final image. Default is current canvas size.
height
number
= ...
Height of the final image. Default is current canvas size.
includeUI
boolean
= true
If false the screenshot will include only the rendered 3D. Default is true.
Returns
Promise
<string
>
A Data URL of the image ('image/png').
Example
// Take a screenshot with custom resolution
const url = await viewer.getScreenshot(1920, 1080);
// Add a screenshot with resolution of the canvas to the page
const url = await viewer.getScreenshot();
const image = document.createElement('img');
image.src = url;
document.body.appendChild(image);
getVersion()
getVersion():
string
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:440
Returns reveal version installed.
Returns
string
getViewState()
getViewState():
ViewerState
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:701
Gets the current viewer state which includes the camera pose as well as applied styling.
Returns
JSON object containing viewer state.
getVisualSceneBoundingBox()
getVisualSceneBoundingBox():
Box3
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1286
Beta
Get the union of bounding box of all visual objects in the Cognite3DViewer.
Returns
Box3
The visual bounding box of the Cognite3DViewer.
image360Action()
image360Action(
action
):Promise
<void
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:998
Beta
Do a 360 image action.
Parameters
action
The action to do.
Returns
Promise
<void
>
loadCameraFromModel()
loadCameraFromModel(
model
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1330
Attempts to load the camera settings from the settings stored for the provided model. See https://docs.cognite.com/api/v1/#operation/get3DRevision and https://docs.cognite.com/api/v1/#operation/update3DRevisions for information on how this setting is retrieved and stored. This setting can also be changed through the 3D models management interface in Cognite Fusion. If no camera configuration is stored in CDF, Cognite3DViewer.fitCameraToModel is used as a fallback.
Parameters
model
CogniteModel
<DataSourceT
>
The model to load camera settings from.
Returns
void
off()
Remove event listener from the viewer. Call Cognite3DViewer.on to add event listener.
Param
Param
Call Signature
off(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:603
Parameters
event
"click"
| "hover"
callback
Returns
void
Example
viewer.off('click', onClick);
Call Signature
off(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:610
Parameters
event
"cameraChange"
callback
Returns
void
Example
viewer.off('cameraChange', onCameraChange);
Call Signature
off(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:617
Parameters
event
"cameraStop"
callback
Returns
void
Example
viewer.off('cameraStop', onCameraStop);
Call Signature
off(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:621
Unsubscribe the 'beforeSceneRendered'-event previously subscribed with Cognite3DViewer.on.
Parameters
event
"beforeSceneRendered"
callback
Returns
void
Call Signature
off(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:628
Parameters
event
"sceneRendered"
callback
Returns
void
Example
viewer.off('sceneRendered', updateStats);
Call Signature
off(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:635
Parameters
event
"disposed"
callback
Returns
void
Example
viewer.off('disposed', clearAll);
on()
Add event listener to the viewer. Call Cognite3DViewer.off to remove an event listener.
Param
Param
Call Signature
on(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:510
Triggered when the viewer is disposed. Listeners should clean up any resources held and remove the reference to the viewer.
Parameters
event
"disposed"
callback
Returns
void
Call Signature
on(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:519
Parameters
event
"click"
| "hover"
callback
Returns
void
Example
const onClick = (event) => { console.log(event.offsetX, event.offsetY) };
viewer.on('click', onClick);
Call Signature
on(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:528
Parameters
event
"cameraChange"
callback
Returns
void
Example
viewer.on('cameraChange', (position, target) => {
console.log('Camera changed: ', position, target);
});
Call Signature
on(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:537
Parameters
event
"cameraStop"
callback
Returns
void
Example
viewer.on('cameraStop', () => {
console.log('Camera stopped');
});
Call Signature
on(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:543
Event that is triggered immediately before the scene is rendered.
Parameters
event
"beforeSceneRendered"
Metadata about the rendering frame.
callback
Callback to trigger when event occurs.
Returns
void
Call Signature
on(
event
,callback
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:549
Event that is triggered immediately after the scene has been rendered.
Parameters
event
"sceneRendered"
Metadata about the rendering frame.
callback
Callback to trigger when the event occurs.
Returns
void
onClick360Images()
onClick360Images(
event
):Promise
<boolean
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1736
Beta
Event function to click on 360 images.
Parameters
event
PointerEvent
The event type.
Returns
Promise
<boolean
>
True if the event was handled, false otherwise.
onHover360Images()
onHover360Images(
event
):boolean
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1752
Beta
Event function to move the mouse.
Parameters
event
PointerEvent
The event type.
Returns
boolean
True if the event was handled, false otherwise.
remove360Images()
remove360Images(...
image360Entities
):Promise
<void
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:939
Remove a set of 360 images.
Parameters
image360Entities
...Image360
<DataSourceT
>[]
Returns
Promise
<void
>
Deprecated
remove360ImageSet()
remove360ImageSet(
imageCollection
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:952
Removes a previously added 360 image collection from the viewer.
Parameters
imageCollection
Image360Collection
<DataSourceT
>
Collection to remove.
Returns
void
removeCustomObject()
removeCustomObject(
customObject
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1182
Beta
Remove a CustomObject from the viewer.
Parameters
customObject
Returns
void
Example
const sphere = new THREE.Mesh(new THREE.SphereGeometry(), new THREE.MeshBasicMaterial());
const customObject = CustomObject(sphere);
viewer.addCustomObject(sphere);
viewer.removeCustomObject(sphere);
removeModel()
removeModel(
model
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1011
Removes a model that was previously added using Cognite3DViewer.addModel, Cognite3DViewer.addCadModel or Cognite3DViewer.addPointCloudModel .
Parameters
model
CogniteModel
<DataSourceT
>
Returns
void
removeObject3D()
removeObject3D(
object
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1161
Remove a THREE.Object3D from the viewer.
Parameters
object
Object3D
Returns
void
Example
const sphere = new THREE.Mesh(new THREE.SphereGeometry(), new THREE.MeshBasicMaterial());
viewer.addObject3D(sphere);
viewer.removeObject3D(sphere);
requestRedraw()
requestRedraw():
void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1425
Typically used when you perform some changes and can't see them unless you move camera.
Returns
void
setBackgroundColor()
setBackgroundColor(
backgroundColor
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1199
Sets the color used as the clear color of the renderer.
Parameters
backgroundColor
alpha?
number
color?
Color
Returns
void
setCameraManager()
setCameraManager(
cameraManager
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:692
Sets the active camera manager instance for current Cognite3Dviewer.
Parameters
cameraManager
Camera manager instance.
Returns
void
setClippingPlanes()
setClippingPlanes(
clippingPlanes
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1254
Sets per-pixel clipping planes. Pixels behind any of the planes will be sliced away.
Parameters
clippingPlanes
Plane
[]
Returns
void
Deprecated
Use Cognite3DViewer.setGlobalClippingPlanes instead.
setGlobalClippingPlanes()
setGlobalClippingPlanes(
clippingPlanes
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1244
Sets per-pixel clipping planes. Pixels behind any of the planes will be sliced away.
Parameters
clippingPlanes
Plane
[]
The planes to use for clipping.
Returns
void
Example
// Hide pixels with values less than 0 in the x direction
const plane = new THREE.Plane(new THREE.Vector3(1, 0, 0), 0);
viewer.setGlobalClippingPlanes([plane]);
// Hide pixels with values greater than 20 in the x direction
const plane = new THREE.Plane(new THREE.Vector3(-1, 0, 0), 20);
viewer.setGlobalClippingPlanes([plane]);
// Hide pixels with values less than 0 in the x direction or greater than 0 in the y direction
const xPlane = new THREE.Plane(new THREE.Vector3(1, 0, 0), 0);
const yPlane = new THREE.Plane(new THREE.Vector3(0, -1, 0), 0);
viewer.setGlobalClippingPlanes([xPlane, yPlane]);
// Hide pixels behind an arbitrary, non axis-aligned plane
const plane = new THREE.Plane(new THREE.Vector3(1.5, 20, -19), 20);
viewer.setGlobalClippingPlanes([plane]);
// Disable clipping planes
viewer.setGlobalClippingPlanes([]);
setLogLevel()
setLogLevel(
level
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:449
Sets the log level. Used for debugging. Defaults to 'none' (which is identical to 'silent').
Parameters
level
"error"
| "debug"
| "none"
| "trace"
| "info"
| "warn"
| "silent"
Returns
void
setResolutionOptions()
setResolutionOptions(
options
):void
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:427
Set options to control resolution of the viewer. This includes settings for max resolution and limiting resolution when moving the camera.
Parameters
options
Options to apply.
Returns
void
setViewState()
setViewState(
state
):Promise
<void
>
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:711
Restores camera settings from the state provided, and clears all current styled
node collections and applies the state
object.
Parameters
state
Viewer state retrieved from Cognite3DViewer.getViewState.
Returns
Promise
<void
>
worldToScreen()
worldToScreen(
point
,normalize?
):null
|Vector2
Defined in: packages/api/src/public/migration/Cognite3DViewer.ts:1463
Convert a point in world space to its coordinates in the canvas. This can be used to place HTML objects near 3D objects on top of the 3D viewer.
Parameters
point
Vector3
World space coordinate.
normalize?
boolean
Optional. If true, coordinates are normalized into [0,1]. If false, the values are in the range [0, <canvas_size>).
Returns
null
| Vector2
Returns 2D coordinates if the point is visible on screen, or null
if object is outside screen.
See
https://www.w3schools.com/graphics/canvas_coordinates.asp For details on HTML Canvas Coordinates.
Example
const boundingBoxCenter = new THREE.Vector3();
// Find center of bounding box in world space
model.getBoundingBox(nodeId).getCenter(boundingBoxCenter);
// Screen coordinates of that point
const screenCoordinates = viewer.worldToScreen(boundingBoxCenter);
const boundingBoxCenter = new THREE.Vector3();
// Find center of bounding box in world space
model.getBoundingBox(nodeId).getCenter(boundingBoxCenter);
// Screen coordinates of that point normalized in the range [0,1]
const screenCoordinates = viewer.worldToScreen(boundingBoxCenter, true);
const boundingBoxCenter = new THREE.Vector3();
// Find center of bounding box in world space
model.getBoundingBox(nodeId).getCenter(boundingBoxCenter);
// Screen coordinates of that point
const screenCoordinates = viewer.worldToScreen(boundingBoxCenter);
if (screenCoordinates == null) {
// Object not visible on screen
} else {
// Object is visible on screen
}