Class: Cognite3DViewer<DataSourceT>
Type Parameters
• DataSourceT extends DataSourceType
= ClassicDataSourceType
Constructors
new Cognite3DViewer()
new Cognite3DViewer<
DataSourceT
>(options
):Cognite3DViewer
<DataSourceT
>
Parameters
• options: Cognite3DViewerOptions
Returns
Cognite3DViewer
<DataSourceT
>
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:266
Accessors
cadBudget
Get Signature
get cadBudget():
CadModelBudget
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
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: CadModelBudget
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:220
cameraManager
Get Signature
get cameraManager():
CameraManager
Returns
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:672
canvas
Get Signature
get canvas():
HTMLCanvasElement
Returns the rendering canvas, the DOM element where the renderer draws its output.
Returns
HTMLCanvasElement
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:132
domElement
Get Signature
get domElement():
HTMLElement
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
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:142
models
Get Signature
get models():
CogniteModel
<DataSourceT
>[]
Gets a list of models currently added to the viewer.
Returns
CogniteModel
<DataSourceT
>[]
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:255
pointCloudBudget
Get Signature
get pointCloudBudget():
PointCloudBudget
Returns the point cloud budget. The budget is shared between all loaded point cloud models.
Returns
Set Signature
set pointCloudBudget(
budget
):void
Sets the point cloud budget. The budget is shared between all loaded point cloud models.
Parameters
• budget: PointCloudBudget
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:240
renderParameters
Get Signature
get renderParameters():
RenderParameters
Returns parameters of THREE.WebGLRenderer used by the viewer.
Returns
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:149
Methods
add360ImageSet()
add360ImageSet(datasource, dataModelIdentifier)
add360ImageSet(
datasource
,dataModelIdentifier
):Promise
<Image360Collection
<DataSourceT
&ClassicDataSourceType
>>
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: Image360DataModelIdentifier
The search parameters to apply when querying Cognite Datamodels that contains the 360 images.
Returns
Promise
<Image360Collection
<DataSourceT
& ClassicDataSourceType
>>
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:856
add360ImageSet(datasource, eventFilter, add360ImageOptions)
add360ImageSet(
datasource
,eventFilter
,add360ImageOptions
?):Promise
<Image360Collection
<DataSourceT
&ClassicDataSourceType
>>
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?: AddImage360Options
Options for behaviours when adding 360 images.
Returns
Promise
<Image360Collection
<DataSourceT
& ClassicDataSourceType
>>
Example
const eventFilter = { site_id: "12345" };
await viewer.add360ImageSet('events', eventFilter);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:871
addCadModel()
addCadModel<
T
>(options
):Promise
<CogniteCadModel
>
Add a new CAD 3D model to the viewer. Call Cognite3DViewer.fitCameraToModel to see the model after the model has loaded.
Type Parameters
• T extends DataSourceType
Parameters
• options: AddModelOptions
<T
>
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);
});
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:772
addCustomObject()
addCustomObject(
customObject
):void
Beta
Add a CustomObject to the viewer.
Parameters
• customObject: ICustomObject
Returns
void
Example
const sphere = new THREE.Mesh(
new THREE.SphereGeometry(),
new THREE.MeshBasicMaterial()
);
const customObject = CustomObject(sphere);
customObject.isPartOfBoundingBox = false;
viewer.addCustomObject(customObject);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1127
addModel()
addModel(
options
):Promise
<CogniteModel
<DataSourceT
>>
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);
});
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:725
addObject3D()
addObject3D(
object
):void
Add a THREE.Object3D to the viewer.
Parameters
• object: Object3D
<Object3DEventMap
>
Returns
void
Example
const sphere = new THREE.Mesh(
new THREE.SphereGeometry(),
new THREE.MeshBasicMaterial()
);
viewer.addObject3D(sphere);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1101
addPointCloudModel()
addPointCloudModel(
options
):Promise
<CognitePointCloudModel
<DataSourceT
>>
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);
});
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:819
canDoImage360Action()
canDoImage360Action(
action
):boolean
Beta
Check if a 360 image action can be done.
Parameters
• action: Image360Action
The action to check if can be done.
Returns
boolean
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:974
createCustomObjectIntersectInput()
createCustomObjectIntersectInput(
pixelCoords
):CustomObjectIntersectInput
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.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1621
determineModelType()
determineModelType(
modelId
,revisionId
):Promise
<""
|SupportedModelTypes
>
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);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1059
dispose()
dispose():
void
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();
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:455
enter360Image()
enter360Image(
image360
,revision
?):Promise
<void
>
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
>
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:949
exit360Image()
exit360Image():
void
Exit visualization of the 360 image.
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:962
fitCameraToBoundingBox()
fitCameraToBoundingBox(
boundingBox
,duration
?,radiusFactor
?):void
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);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1403
fitCameraToModel()
fitCameraToModel(
model
,duration
?):void
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);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1346
fitCameraToModels()
fitCameraToModels(
models
?,duration
?,restrictToMostGeometry
?):void
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
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1361
fitCameraToVisualSceneBoundingBox()
fitCameraToVisualSceneBoundingBox(
duration
?):void
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
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1379
get360AnnotationIntersectionFromPixel()
get360AnnotationIntersectionFromPixel(
offsetX
,offsetY
):Promise
<null
|Image360AnnotationIntersection
<DataSourceT
>>
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
>>
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1767
get360ImageCollections()
get360ImageCollections():
Image360Collection
<DataSourceT
>[]
Returns a list of added 360 image collections.
Returns
Image360Collection
<DataSourceT
>[]
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:911
getActive360ImageInfo()
getActive360ImageInfo():
undefined
|Image360WithCollection
<DataSourceT
>
Returns the currently entered 360 image.
Returns
undefined
| Image360WithCollection
<DataSourceT
>
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:918
getAnyIntersectionFromPixel()
getAnyIntersectionFromPixel(
pixelCoords
,options
?):Promise
<undefined
|AnyIntersection
<DataSourceT
>>
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?
• options.predicate?
Check whether a CustomObject should be intersected.
• options.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.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1679
getClippingPlanes()
getClippingPlanes():
Plane
[]
Returns the current active global clipping planes.
Returns
Plane
[]
Deprecated
Use Cognite3DViewer.getGlobalClippingPlanes instead.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1250
getGlobalClippingPlanes()
getGlobalClippingPlanes():
Plane
[]
Returns the current active global clipping planes.
Returns
Plane
[]
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1257
getIntersectionFromPixel()
getIntersectionFromPixel(
offsetX
,offsetY
):Promise
<null
|Intersection
<DataSourceT
>>
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
);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1662
getNormalizedPixelCoordinates()
getNormalizedPixelCoordinates(
pixelCoords
):Vector2
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]).
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1602
getPixelCoordinatesFromEvent()
getPixelCoordinatesFromEvent(
event
):Vector2
Determines clicked or touched pixel coordinate as offset.
Parameters
• event: PointerEvent
| WheelEvent
An PointerEvent or WheelEvent.
Returns
Vector2
A Vector2 containing pixel coordinates relative to the 3D viewer.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1611
getSceneBoundingBox()
getSceneBoundingBox():
Box3
Beta
Returns the union of all bounding boxes in reveal, including custom objects.
Returns
Box3
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1265
getScreenshot()
getScreenshot(
width
,height
,includeUI
):Promise
<string
>
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);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1500
getVersion()
getVersion():
string
Returns reveal version installed.
Returns
string
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:428
getViewState()
getViewState():
ViewerState
Gets the current viewer state which includes the camera pose as well as applied styling.
Returns
JSON object containing viewer state.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:689
getVisualSceneBoundingBox()
getVisualSceneBoundingBox():
Box3
Beta
Get the union of bounding box of all visual objects in the Cognite3DViewer.
Returns
Box3
The visual bounding box of the Cognite3DViewer.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1274
image360Action()
image360Action(
action
):Promise
<void
>
Beta
Do a 360 image action.
Parameters
• action: Image360Action
The action to do.
Returns
Promise
<void
>
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:986
loadCameraFromModel()
loadCameraFromModel(
model
):void
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
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1318
off()
Remove event listener from the viewer. Call Cognite3DViewer.on to add event listener.
Param
Param
off(event, callback)
off(
event
,callback
):void
Parameters
• event: "click"
| "hover"
• callback: PointerEventDelegate
Returns
void
Param
Param
Example
viewer.off('click', onClick);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:591
off(event, callback)
off(
event
,callback
):void
Parameters
• event: "cameraChange"
• callback: CameraChangeDelegate
Returns
void
Param
Param
Example
viewer.off('cameraChange', onCameraChange);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:598
off(event, callback)
off(
event
,callback
):void
Parameters
• event: "cameraStop"
• callback: CameraStopDelegate
Returns
void
Param
Param
Example
viewer.off('cameraStop', onCameraStop);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:605
off(event, callback)
off(
event
,callback
):void
Unsubscribe the 'beforeSceneRendered'-event previously subscribed with Cognite3DViewer.on.
Parameters
• event: "beforeSceneRendered"
• callback: BeforeSceneRenderedDelegate
Returns
void
Param
Param
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:609
off(event, callback)
off(
event
,callback
):void
Parameters
• event: "sceneRendered"
• callback: SceneRenderedDelegate
Returns
void
Param
Param
Example
viewer.off('sceneRendered', updateStats);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:616
off(event, callback)
off(
event
,callback
):void
Parameters
• event: "disposed"
• callback: DisposedDelegate
Returns
void
Param
Param
Example
viewer.off('disposed', clearAll);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:623
on()
Add event listener to the viewer. Call Cognite3DViewer.off to remove an event listener.
Param
Param
on(event, callback)
on(
event
,callback
):void
Triggered when the viewer is disposed. Listeners should clean up any resources held and remove the reference to the viewer.
Parameters
• event: "disposed"
• callback: DisposedDelegate
Returns
void
Param
Param
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:498
on(event, callback)
on(
event
,callback
):void
Parameters
• event: "click"
| "hover"
• callback: PointerEventDelegate
Returns
void
Param
Param
Example
const onClick = (event) => { console.log(event.offsetX, event.offsetY) };
viewer.on('click', onClick);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:507
on(event, callback)
on(
event
,callback
):void
Parameters
• event: "cameraChange"
• callback: CameraChangeDelegate
Returns
void
Param
Param
Example
viewer.on('cameraChange', (position, target) => {
console.log('Camera changed: ', position, target);
});
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:516
on(event, callback)
on(
event
,callback
):void
Parameters
• event: "cameraStop"
• callback: CameraStopDelegate
Returns
void
Param
Param
Example
viewer.on('cameraStop', () => {
console.log('Camera stopped');
});
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:525
on(event, callback)
on(
event
,callback
):void
Event that is triggered immediately before the scene is rendered.
Parameters
• event: "beforeSceneRendered"
Metadata about the rendering frame.
• callback: BeforeSceneRenderedDelegate
Callback to trigger when event occurs.
Returns
void
Param
Param
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:531
on(event, callback)
on(
event
,callback
):void
Event that is triggered immediately after the scene has been rendered.
Parameters
• event: "sceneRendered"
Metadata about the rendering frame.
• callback: SceneRenderedDelegate
Callback to trigger when the event occurs.
Returns
void
Param
Param
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:537
onClick360Images()
onClick360Images(
event
):Promise
<boolean
>
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.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1724
onHover360Images()
onHover360Images(
event
):boolean
Beta
Event function to move the mouse.
Parameters
• event: PointerEvent
The event type.
Returns
boolean
True if the event was handled, false otherwise.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1740
remove360Images()
remove360Images(...
image360Entities
):Promise
<void
>
Remove a set of 360 images.
Parameters
• ...image360Entities: Image360
<DataSourceT
>[]
Returns
Promise
<void
>
Deprecated
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:927
remove360ImageSet()
remove360ImageSet(
imageCollection
):void
Removes a previously added 360 image collection from the viewer.
Parameters
• imageCollection: Image360Collection
<DataSourceT
>
Collection to remove.
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:940
removeCustomObject()
removeCustomObject(
customObject
):void
Beta
Remove a CustomObject from the viewer.
Parameters
• customObject: ICustomObject
Returns
void
Example
const sphere = new THREE.Mesh(new THREE.SphereGeometry(), new THREE.MeshBasicMaterial());
const customObject = CustomObject(sphere);
viewer.addCustomObject(sphere);
viewer.removeCustomObject(sphere);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1170
removeModel()
removeModel(
model
):void
Removes a model that was previously added using Cognite3DViewer.addModel, Cognite3DViewer.addCadModel or Cognite3DViewer.addPointCloudModel .
Parameters
• model: CogniteModel
<DataSourceT
>
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:999
removeObject3D()
removeObject3D(
object
):void
Remove a THREE.Object3D from the viewer.
Parameters
• object: Object3D
<Object3DEventMap
>
Returns
void
Example
const sphere = new THREE.Mesh(new THREE.SphereGeometry(), new THREE.MeshBasicMaterial());
viewer.addObject3D(sphere);
viewer.removeObject3D(sphere);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1149
requestRedraw()
requestRedraw():
void
Typically used when you perform some changes and can't see them unless you move camera.
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1413
setBackgroundColor()
setBackgroundColor(
backgroundColor
):void
Sets the color used as the clear color of the renderer.
Parameters
• backgroundColor
• backgroundColor.alpha?: number
• backgroundColor.color?: Color
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1187
setCameraManager()
setCameraManager(
cameraManager
):void
Sets the active camera manager instance for current Cognite3Dviewer.
Parameters
• cameraManager: CameraManager
Camera manager instance.
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:680
setClippingPlanes()
setClippingPlanes(
clippingPlanes
):void
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.
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1242
setGlobalClippingPlanes()
setGlobalClippingPlanes(
clippingPlanes
):void
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([]);
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:1232
setLogLevel()
setLogLevel(
level
):void
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
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:437
setResolutionOptions()
setResolutionOptions(
options
):void
Set options to control resolution of the viewer. This includes settings for max resolution and limiting resolution when moving the camera.
Parameters
• options: ResolutionOptions
Options to apply.
Returns
void
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:415
setViewState()
setViewState(
state
):Promise
<void
>
Restores camera settings from the state provided, and clears all current styled
node collections and applies the state
object.
Parameters
• state: ViewerState
Viewer state retrieved from Cognite3DViewer.getViewState.
Returns
Promise
<void
>
Defined in
packages/api/src/public/migration/Cognite3DViewer.ts:699
worldToScreen()
worldToScreen(
point
,normalize
?):null
|Vector2
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
}