Skip to main content
Version: Next

Class: MeasurementTool

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:56

Enables Cognite3DViewer to perform a point to point measurement. This can be achieved by selecting a point on the 3D Object and drag the pointer to required point to get measurement of the distance. The tools default measurement is in "Meters" as supported in Reveal, but it also provides user to customise the measuring units based on their convinience with the callback.

Examples​

const measurementTool = new MeasurementTool(viewer);
measurementTool.enterMeasurementMode();
// ...
measurementTool.exitMeasurementMode();

// detach the tool from the viewer
measurementTool.dispose();
const measurementTool = new MeasurementTool(viewer, {distanceToLabelCallback: (distanceInMeters) => {
// 1 meters = 3.281 feet
const distancesInFeet = distanceInMeters * 3.281;
return { distanceInMeters: distancesInFeet, units: 'ft'};
}});
measurementTool.enterMeasurementMode();

Extends​

Constructors​

Constructor​

new MeasurementTool(viewer, options?): MeasurementTool

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:97

Parameters​

viewer​

Cognite3DViewer<DataSourceType>

options?​

MeasurementOptions

Returns​

MeasurementTool

Overrides​

Cognite3DViewerToolBase.constructor

Accessors​

isInMeasurementMode​

Get Signature​

get isInMeasurementMode(): boolean

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:60

Returns measurement mode state, is measurement mode started or ended.

Returns​

boolean

Methods​

addMeasurement()​

addMeasurement(startPoint, endPoint): Measurement

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:292

Adds a measurement directly. E.g. to restore a previous state programatically

Parameters​

startPoint​

Vector3

endPoint​

Vector3

Returns​

Measurement


dispose()​

dispose(): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:400

Dispose Measurement Tool.

Returns​

void

Overrides​

Cognite3DViewerToolBase.dispose


enterMeasurementMode()​

enterMeasurementMode(): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:241

Enter into point to point measurement mode.

Returns​

void


exitMeasurementMode()​

exitMeasurementMode(): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:259

Exit measurement mode.

Returns​

void


getAllMeasurements()​

getAllMeasurements(): Measurement[]

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:379

Get all measurements from Cognite3DViewer.

Returns​

Measurement[]

Array of Measurements containing Id, start point, end point & measured distance.


off()​

Unsubscribe to the Measurement event

Param​

event

MeasurementEvents event

Param​

callback

Callback to measurements events

Call Signature​

off(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:185

Parameters​
event​

"disposed"

callback​

DisposedDelegate

Returns​

void

Example​
measurementTool.off('disposed', onMeasurementDispose);
Overrides​

Cognite3DViewerToolBase.off

Call Signature​

off(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:193

Parameters​
event​

"added"

callback​

MeasurementAddedDelegate

Returns​

void

Example​
measurementTool.off('added', onMeasurementAdded);
Overrides​

Cognite3DViewerToolBase.off

Call Signature​

off(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:201

Parameters​
event​

"started"

callback​

MeasurementStartedDelegate

Returns​

void

Example​
measurementTool.off('started', onMeasurementStarted);
Overrides​

Cognite3DViewerToolBase.off

Call Signature​

off(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:209

Parameters​
event​

"ended"

callback​

MeasurementEndedDelegate

Returns​

void

Example​
measurementTool.off('ended', onMeasurementEnded);
Overrides​

Cognite3DViewerToolBase.off


on()​

Subscribe to the Measurement events

Param​

event

MeasurementEvents event

Param​

callback

Callback to measurements events

Call Signature​

on(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:123

Triggered when the tool is disposed. Listeners should clean up any resources held and remove the reference to the tool.

Parameters​
event​

"disposed"

callback​

DisposedDelegate

Returns​

void

Example​
measurementTool.on('disposed', onMeasurementDispose);
Overrides​

Cognite3DViewerToolBase.on

Call Signature​

on(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:132

Triggered when a measurement is added into the Cognite3DViewer.

Parameters​
event​

"added"

callback​

MeasurementAddedDelegate

Returns​

void

Example​
measurementTool.on('added', onMeasurementAdded);
Overrides​

Cognite3DViewerToolBase.on

Call Signature​

on(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:141

Triggered when a measurement mode is started.

Parameters​
event​

"started"

callback​

MeasurementStartedDelegate

Returns​

void

Example​
measurementTool.on('started', onMeasurementStarted);
Overrides​

Cognite3DViewerToolBase.on

Call Signature​

on(event, callback): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:150

Triggered when measurement mode is ended.

Parameters​
event​

"ended"

callback​

MeasurementEndedDelegate

Returns​

void

Example​
measurementTool.on('ended', onMeasurementEnded);
Overrides​

Cognite3DViewerToolBase.on


removeAllMeasurements()​

removeAllMeasurements(): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:312

Removes all measurements from the Cognite3DViewer.

Returns​

void


removeMeasurement()​

removeMeasurement(measurement): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:277

Removes a measurement from the Cognite3DViewer.

Parameters​

measurement​

Measurement

Measurement to be removed from Cognite3DViewer.

Returns​

void


setLineOptions()​

setLineOptions(options): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:336

Sets Measurement line width, color and label units value for the next measurment.

Parameters​

options​

MeasurementOptions

MeasurementOptions to set line width, color and callback for custom operation on measurement labels.

Returns​

void


setMeasurementLabelsVisible()​

setMeasurementLabelsVisible(enable): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:325

Sets the visiblity of labels in the Measurement.

Parameters​

enable​

boolean

Returns​

void


updateLineColor()​

updateLineColor(measurement, color): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:364

Update selected line color.

Parameters​

measurement​

Measurement

Measurement to be updated.

color​

Color

Color of the measuring line.

Returns​

void


updateLineWidth()​

updateLineWidth(measurement, lineWidth): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:348

Update selected line width.

Parameters​

measurement​

Measurement

Measurement to be updated.

lineWidth​

number

Width of the measuring line.

Returns​

void


visible()​

visible(enable): void

Defined in: packages/tools/src/Measurement/MeasurementTool.ts:387

Hide/unhide all measurements

Parameters​

enable​

boolean

Returns​

void