Skip to content
Last updated

API / geotoolkit / map / tools / Measure / Measure

Class: Measure

tools.Measure.Measure

Measure tool for measuring distances and areas on a map

Hierarchy

Table of contents

Constructors
  • [new Measure(options)](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.map.tools-1.measure.measure.md#new measure(options))
Methods

Contents

Constructors

new Measure(options)

• new Measure(options?)

Parameters

Name Type Description
Optional optionsOptionstool options

Overrides

Measure

Methods

addListener

▸ addListener(eventName, listener): Measure

add event listener. The listener receives the message when the system event happens.

Deprecated

since 4.0 use .on() instead. Note that 3 args callback should be used in subscription via .on(): (eventType, source, args)

Parameters

Name Type Description
eventNamestringevent name or unique event identifier
listenerFunctionthe event listener

Returns

Measure

Inherited from

Measure.addListener


canRedo

▸ canRedo(): boolean

Checks if there is command in history to redo

Returns

boolean

Inherited from

Measure.canRedo


canUndo

▸ canUndo(): boolean

Checks if there is command in history to undo

Returns

boolean

Inherited from

Measure.canUndo


captureMouseUp

▸ captureMouseUp(): void

listen to window mouse events in order to catch a mouse up action outside of the tool container DOM element. useful for example when you pan and release click outside of DOM element.

Returns

void

Inherited from

Measure.captureMouseUp


clear

▸ clear(): Measure

Clears scene from all the painting elements

Returns

Measure

this

Inherited from

Measure.clear


createEditor

▸ Protected createEditor(options): AbstractEditorBase<Node | Node[]&gt;

Returns editor to edit node with provided options

Throws

if supported editor was not found and default editor was not set

Parameters

Name Type Description
optionsRecord<string, any&gt;editor options

Returns

AbstractEditorBase<Node | Node[]&gt;

Inherited from

Measure.createEditor


dispose

▸ dispose(): void

Dispose tool.

Returns

void

Inherited from

Measure.dispose


editNode

▸ editNode(node): Measure

Starts editing the node provided

Parameters

Name Type Description
nodeNode | Node[]node to edit

Returns

Measure

this

Inherited from

Measure.editNode


execute

▸ execute(command): Measure

Applies the specified command to the associated node and appends it to history

Parameters

Name Type Description
commandAbstractCommandthe command to execute

Returns

Measure

Inherited from

Measure.execute


fireEvent

▸ fireEvent(eventName, eventArgs?): void

This method is Protected. Fire an Event.

Deprecated

since 4.0 use .notify() instead. Note that 3 args callback should be used in subscription via .on()

Parameters

Name Type Description
eventNamestringevent name
Optional eventArgsanycontains info of the event

Returns

void

Inherited from

Measure.fireEvent


getActiveShape

▸ getActiveShape(): Node

Returns currently edited shape. Relevant for EditMode.Ghost mode.

Returns

Node

Inherited from

Measure.getActiveShape


getArea

▸ getArea(): number

Returns measured area value

Returns

number

Inherited from

Measure.getArea


getClassName

▸ getClassName(): string

Returns

string

Inherited from

Measure.getClassName


getDistances

▸ getDistances(): number[]

Returns distances that were measured

Returns

number[]

Inherited from

Measure.getDistances


getEditMode

▸ getEditMode(): EditMode

Returns tool current edit mode

Returns

EditMode

Inherited from

Measure.getEditMode


getEditor

▸ getEditor(): AbstractEditorBase<Node | Node[]&gt;

Returns current editor tool (if exists)

Returns

AbstractEditorBase<Node | Node[]&gt;

Inherited from

Measure.getEditor


getEventRadius

▸ Protected getEventRadius(eventArgs): number

Returns device radius for the provided event

Parameters

Name Type Description
eventArgsEventArgscontains info of the event

Returns

number

Inherited from

Measure.getEventRadius


getHistory

▸ getHistory(): History

Returns current history

Returns

History

Inherited from

Measure.getHistory


getLabels

▸ getLabels(): Node | Node[]

Returns label(s) that display distances or area

Returns

Node | Node[]

label(s)

Inherited from

Measure.getLabels


getManipulatorLayer

▸ getManipulatorLayer(): CompositeNode<Node&gt;

return manipulator layer

Returns

CompositeNode<Node&gt;

layer

Inherited from

Measure.getManipulatorLayer


getMeasureMode

▸ getMeasureMode(): MeasureMode

Returns current measure mode

Returns

MeasureMode

mode

Inherited from

Measure.getMeasureMode


getMode

▸ getMode(): PaintMode

Returns current painting mode

Returns

PaintMode

Inherited from

Measure.getMode


getMouseRadius

▸ getMouseRadius(): number

Returns current device radius for mouse events

Returns

number

Inherited from

Measure.getMouseRadius


getName

▸ getName(): string

return tool name if any

Returns

string

name of the tool

Inherited from

Measure.getName


getParentTool

▸ getParentTool(): AbstractCompositeTool

Gets parent tool

Returns

AbstractCompositeTool

parent tool

Inherited from

Measure.getParentTool


getPathMode

▸ getPathMode(): MeasurePathMode

Returns current mode for paths

Returns

MeasurePathMode


getProperties

▸ getProperties(): OptionsOut

Returns all properties

Returns

OptionsOut

tool options

Inherited from

Measure.getProperties


getProperty

▸ getProperty(name): any

Gets dynamic property by name. These properties can be used as a property bags

Parameters

Name Type Description
namestringproperty name

Returns

any

Inherited from

Measure.getProperty


getPropertyKeys

▸ getPropertyKeys(): string[]

Returns known properties keys

Returns

string[]

Inherited from

Measure.getPropertyKeys


getRegistry

▸ Protected getRegistry(): Registry

Returns

Registry

Inherited from

Measure.getRegistry


getRoot

▸ getRoot(): AbstractCompositeTool

Gets root tool

Returns

AbstractCompositeTool

parent tool

Inherited from

Measure.getRoot


getSegmentLabels

▸ getSegmentLabels(): Node[]

Returns segment label(s) that display individual segment distances

Returns

Node[]

segment label(s)

Inherited from

Measure.getSegmentLabels


getShape

▸ getShape(): Node

Returns the origin of currently edited shape (if exists, null otherwise).

Returns

Node

Inherited from

Measure.getShape


getTouchRadius

▸ getTouchRadius(): number

Returns current device radius for touch events

Returns

number

Inherited from

Measure.getTouchRadius


getUnit

▸ getUnit(): AbstractUnit

Returns current measuring unit

Returns

AbstractUnit


hasEventListener

▸ hasEventListener(type, callback?): boolean

Check if a list of event listeners for this type contains this listener

Parameters

Name Type Description
typestringtype of event or property
Optional callbackFunctionto be called, if null, check if any callback is registered

Returns

boolean

Inherited from

Measure.hasEventListener


isActive

▸ isActive(): boolean

return active state

Returns

boolean

Inherited from

Measure.isActive


isDisposed

▸ isDisposed(): boolean

Returns whether this object has been disposed

Returns

boolean

Inherited from

Measure.isDisposed


isDoubleClick

▸ Protected isDoubleClick(point, eventArgs?): boolean

returns true if double clicked

Parameters

Name Type Description
pointPointClick point
Optional eventArgsEventArgsoptional event args to verify double click

Returns

boolean

Inherited from

Measure.isDoubleClick


isEnabled

▸ isEnabled(): boolean

returns enable state

Returns

boolean

state

Inherited from

Measure.isEnabled


isSilent

▸ isSilent(): boolean

Return true if the event dispatcher doesn't notify any events

Returns

boolean

Inherited from

Measure.isSilent


isTouchEvent

▸ isTouchEvent(eventArgs): boolean

return true if the event is a touch event and false otherwise.

Parameters

Name Type Description
eventArgsEvent | EventArgscontains info of the event

Returns

boolean

Inherited from

Measure.isTouchEvent


notify

▸ notify<E&gt;(type, source, args?): Measure

Notify listeners

Type parameters

NameType
Eextends string

Parameters

Name Type Description
typeEevent types
sourceMeasureof the event
Optional argsEventMap[E]arguments of the event

Returns

Measure

this

Inherited from

Measure.notify


off

▸ off<E&gt;(type?, callback?): Measure

Detach listener on event. Calling .off() with no arguments removes all attached listeners. Calling .off(type) with no callback removes all attached listeners for specific type.

Type parameters

NameType
Eextends string

Parameters

Name Type Description
Optional typeEtype of the event
Optional callback(eventType: E, sender: Measure, args: EventMap[E]) => voidfunction to be called

Returns

Measure

this

Inherited from

Measure.off


on

▸ on<E&gt;(type, callback): Measure

Attach listener on event that will be called whenever the specified event is delivered to the target <p> If the callback function is already in the list of event listeners for this target, the function is not added a second time. </p> <p> If a particular anonymous function is in the list of event listeners registered for a certain target, and then later in the code, an identical anonymous function is given in an "on" call, the second function will also be added to the list of event listeners for that target. </p> TypeScript hint: in case of creating derived tool with own events, EventMap should be extended and .on() and .notify() methods redeclared, see sample.

Example

// Using in derived tool
import type {EventMap as EventMapBase} from '@int/geotoolkit/controls/tools/AbstractTool';
export type EventMap = EventMapBase &amp; {
&#91;MyToolEvents.onValueChanged&#93;: MyToolEventArgs
}
export enum MyToolEvents {
onValueChanged = 'onValueChanged'
}
export class MyTool extends AbstractTool {
public declare on: &lt;E extends keyof EventMap&gt;(type: E, callback: (eventType: E, sender: this, args: EventMap&#91;E&#93;) =&gt; void) =&gt; this;
protected declare notify: &lt;E extends keyof EventMap&gt;(type: E, source: AbstractTool, args?: EventMap&#91;E&#93;) =&gt; this;
public declare off: &lt;E extends keyof EventMap&gt;(type: E, callback?: (eventType: E, sender: this, args: EventMap&#91;E&#93;) =&gt; void) =&gt; this;
// ...
}

Type parameters

NameType
Eextends string

Parameters

Name Type Description
typeEtype of event or property
callback(eventType: E, sender: Measure, args: EventMap[E]) => voidto be called

Returns

Measure

Inherited from

Measure.on


onActiveStateChanged

▸ Protected onActiveStateChanged(): void

Fires

Events.onStateChanged

Returns

void

Inherited from

Measure.onActiveStateChanged


onBeforeCommandApplying

▸ Protected onBeforeCommandApplying(eventName, history, command): void

Fires the EditEvents.BeforeCommandApplied event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command applied

Returns

void

Inherited from

Measure.onBeforeCommandApplying


onCommandApplied

▸ Protected onCommandApplied(eventName, history, command): void

Fires the EditEvents.CommandApplied event and the event according to the command event name

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command applied

Returns

void

Inherited from

Measure.onCommandApplied


onCommandApplying

▸ Protected onCommandApplying(eventName, history, command): void

Fires the EditEvents.CommandApplying event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command applied

Returns

void

Inherited from

Measure.onCommandApplying


onCommandRedo

▸ Protected onCommandRedo(eventName, history, command): void

Fires the EditEvents.Redo event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command

Returns

void

Inherited from

Measure.onCommandRedo


onCommandUndo

▸ Protected onCommandUndo(eventName, history, command): void

Fires the EditEvents.Undo event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command

Returns

void

Inherited from

Measure.onCommandUndo


onEnabledStateChanged

▸ Protected onEnabledStateChanged(): void

Fires

Events.onEnabledStateChanged

Returns

void

Inherited from

Measure.onEnabledStateChanged


onKeyDown

▸ Protected onKeyDown(eventArgs): void

Handles key down event

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void

Inherited from

Measure.onKeyDown


onKeyUp

▸ Protected onKeyUp(eventArgs): void

Handles key up event

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void

Inherited from

Measure.onKeyUp


onMouseDown

▸ Protected onMouseDown(eventArgs): void

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void

Inherited from

Measure.onMouseDown


onMouseMove

▸ Protected onMouseMove(eventArgs): void

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void

Inherited from

Measure.onMouseMove


onMouseUp

▸ Protected onMouseUp(eventArgs): void

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void

Inherited from

Measure.onMouseUp


onNodeCreated

▸ Protected onNodeCreated(editor, eventArgs): void

Node created handler

Parameters

Name Type Description
editorAbstractEditorBase<Node | Node[]&gt;editor that created node
eventArgsPaintEventArgsevent args

Returns

void

Inherited from

Measure.onNodeCreated


pageToCanvas

▸ pageToCanvas(eventArgs, externalPlot?): Object

return position relative to the canvas

Parameters

Name Type Description
eventArgsEvent | EventArgsparentElement the parent HTML element
Optional externalPlotPlotplot

Returns

Object

NameType
xnumber
ynumber

Inherited from

Measure.pageToCanvas


pointToModel

▸ pointToModel(model, eventArgs): Point

converts device coordinates to inner coordinates of node

Parameters

Name Type Description
modelNodethe model
eventArgsPoint | EventArgsarguments of the event OR point in device (plot) coordinates.

Returns

Point

Inherited from

Measure.pointToModel


redo

▸ redo(): Measure

Reapplies last canceled command in history (if possible)

Returns

Measure

Inherited from

Measure.redo


removeListener

▸ removeListener(eventName, listener?): Measure

remove event listener. The listener reveives the message when the system event happens.

Deprecated

since 4.0 use .off() instead.

Parameters

Name Type Description
eventNamestringevent name
Optional listenerFunction | Function[]the event listener, if null, remove all listeners for the event

Returns

Measure

Inherited from

Measure.removeListener


setActive

▸ setActive(active): Measure

set active state

Fires

Events.onStateChanged

Parameters

Name Type Description
activebooleanset active state

Returns

Measure

Inherited from

Measure.setActive


setEditMode

▸ setEditMode(mode): Measure

Sets tool edit mode (for nodes with node manipulators)

Parameters

Name Type Description
modeEditModeedit mode

Returns

Measure

this

Inherited from

Measure.setEditMode


setEditor

▸ Protected setEditor(editor): Measure

For internal use

Parameters

Name Type Description
editorAbstractEditorBase<Node | Node[]&gt;editor to use

Returns

Measure

this

Inherited from

Measure.setEditor


setEnabled

▸ setEnabled(enabled): Measure

set enable state

Fires

Events.onEnabledStateChanged

Fires

Events.onStateChanged

Parameters

Name Type Description
enabledbooleansets the enabled state

Returns

Measure

this

Inherited from

Measure.setEnabled


setMeasureMode

▸ setMeasureMode(mode): Measure

Sets measure mode (for what is measured)

Parameters

Name Type Description
modeMeasureModemeasure mode

Returns

Measure

this

Inherited from

Measure.setMeasureMode


setMode

▸ setMode(mode): Measure

Sets painting mode

Parameters

Name Type Description
modePaintModepainting mode

Returns

Measure

Inherited from

Measure.setMode


setMouseRadius

▸ setMouseRadius(radius): Measure

Sets device radius for mouse events

Parameters

Name Type Description
radiusnumberradius for mouse events

Returns

Measure

this

Inherited from

Measure.setMouseRadius


setName

▸ setName(name): Measure

set tool name

Parameters

Name Type Description
namestringthe tool name

Returns

Measure

Inherited from

Measure.setName


setPathMode

▸ setPathMode(mode): Measure

Sets displaying paths mode

Parameters

Name Type Description
modeMeasurePathModepaths mode to use

Returns

Measure

this


setProperties

▸ setProperties(props?): Measure

Sets paint tool properties (mode, styles, etc.)

Parameters

Name Type Description
Optional propsOptionstool props

Returns

Measure

this

Inherited from

Measure.setProperties


setProperty

▸ setProperty(name, value): Measure

Sets dynamic property by name

Parameters

Name Type Description
namestringproperty name
valueanyproperty value

Returns

Measure

this

Inherited from

Measure.setProperty


setSilent

▸ setSilent(bool): Measure

Set silent mode

Parameters

Name Type Description
boolbooleanflag to enable silent mode

Returns

Measure

this

Inherited from

Measure.setSilent


setSlotEnabled

▸ setSlotEnabled(eventName, value, target?): Measure

Sets slot enabled

Parameters

Name Type Description
eventNamestringeventName
valuebooleanvalue
Optional targetEventTargettarget

Returns

Measure

Inherited from

Measure.setSlotEnabled


setSlots

▸ setSlots(slots?, merge?): Measure

Sets new slots.

Example

const slots = {
'pointerdown': (event: EventArgs) =&gt; {
// event is an instance of @int/geotoolkit/controls/tools/EventArgs
...
}
};
tool.setSlots(slots);

Parameters

Name Type Description
Optional slotsRecord<string, Slot | Slot[] | (eventArgs: EventArgs) => void&gt;type of system events
Optional mergebooleanset to true if you want to merge with existing slots

Returns

Measure

this

Inherited from

Measure.setSlots


setTouchRadius

▸ setTouchRadius(radius): Measure

Sets device radius for touch events

Parameters

Name Type Description
radiusnumberradius for touch events

Returns

Measure

this

Inherited from

Measure.setTouchRadius


setUnit

▸ setUnit(unit): Measure

Sets measuring units

Parameters

Name Type Description
unitstring | Unitunit for measuring

Returns

Measure

this


start

▸ Protected start(eventArgs?): Measure

start

Parameters

Name Type Description
Optional eventArgsEventArgsevent args

Returns

Measure

Inherited from

Measure.start


stop

▸ Protected stop(): Measure

stop

Returns

Measure

Inherited from

Measure.stop


toggle

▸ toggle(): Measure

switch enable state to opposite state

Returns

Measure

Inherited from

Measure.toggle


undo

▸ undo(): Measure

Cancels last command in history (if possible)

Returns

Measure

Inherited from

Measure.undo


update

▸ update(): Measure

Forces editing shapes and handles to be updated

Returns

Measure

this

Inherited from

Measure.update


updateHandles

▸ updateHandles(): Measure

Forces editing handles to be synchronized with shape

Returns

Measure

this

Inherited from

Measure.updateHandles


canvasToClient

▸ Static canvasToClient(plotPoint, plot): Point

Convert plot coordinates to global coordinates

Parameters

Name Type Description
plotPointPointpoint in plot coordinates
plotPlotplot with canvas

Returns

Point

Inherited from

Measure.canvasToClient


clientToCanvas

▸ Static clientToCanvas(nativeEvent, plot): Point

Convert global coordinates to plot coordinates

Parameters

Name Type Description
nativeEventEventnative browser event
plotPlotplot with canvas

Returns

Point

Inherited from

Measure.clientToCanvas


getClassName

▸ Static getClassName(): string

Returns

string

Inherited from

Measure.getClassName


getExclusiveTool

▸ Static getExclusiveTool(plot): AbstractTool

return exclusive tool associated with plot

Parameters

Name Type Description
plotPlotplot

Returns

AbstractTool

tool

Inherited from

Measure.getExclusiveTool


getNativeEventName

▸ Static getNativeEventName(eventName): string[]

Returns native event name

Parameters

Name Type Description
eventNamestringW3C Pointer Events Recommendation name

Returns

string[]

Inherited from

Measure.getNativeEventName


isTouchEvent

▸ Static isTouchEvent(eventArgs): eventArgs is TouchEvent

return true if the event is a touch event and false otherwise.

Parameters

Name Type Description
eventArgsEvent | EventArgscontains info of the event

Returns

eventArgs is TouchEvent

Inherited from

Measure.isTouchEvent


lock

▸ Static lock(plot, tool): void

Set exclusive tool for plot

Parameters

Name Type Description
plotPlotplot
toolAbstractTooltool

Returns

void

Inherited from

Measure.lock


setDefaultMouseRadius

▸ Static setDefaultMouseRadius(radius): void

Sets default device radius for mouse events

Parameters

Name Type Description
radiusnumberradius for mouse events

Returns

void

Inherited from

Measure.setDefaultMouseRadius


setDefaultTouchRadius

▸ Static setDefaultTouchRadius(radius): void

Sets default device radius for touch events

Parameters

Name Type Description
radiusnumberradius for touch events

Returns

void

Inherited from

Measure.setDefaultTouchRadius


unlock

▸ Static unlock(value): void

Remove exclusive tool from plot

Parameters

Name Type Description
valueAbstractTool | Plotvalue

Returns

void

Inherited from

Measure.unlock