Skip to content
Last updated

API / geotoolkit3d / controller / TrackballController / TrackballController

Class: TrackballController

controller.TrackballController.TrackballController

A controller that emulates a 'Trackball' behavior.<br> <br> This controller let the user manipulate the camera position using mouse or touch input.<br> <br> This controller uses a 3D anchor point and will revolve around it (named lookAt).<br> This anchor point can be changed either by user action (double click/tap) or programmatically.<br> <br> It will let the user rotate the camera on the 'horizontal' axis infinitely.<br> But it prevents the user from rotate the camera on the vertical axis more than 0-180 degrees.<br> So that the user cannot put the camera upside down.<br> <br> This controller also support 'zooming' by moving the camera forward or backward.<br> <br> To be used, it should be set on the Plot through the setOptions function. <br> Most of the behaviors can be configured either for speed or even to disable some actions through the setOptions. <br>

See

Hierarchy

Table of contents

Constructors
  • [new TrackballController(options)](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit3d.controller.trackballcontroller.trackballcontroller.md#new trackballcontroller(options))
Methods

Contents

Constructors

new TrackballController(options)

• new TrackballController(options?)

Parameters

Name Type
Optional optionsOptions

Overrides

AbstractController.constructor

Methods

dispose

▸ dispose(): void

Function to clean up the references from this tool.

Returns

void

Inherited from

AbstractController.dispose


getCamera

▸ getCamera(): Camera

Gets this controler Camera

Returns

Camera

Inherited from

AbstractController.getCamera


getClassName

▸ getClassName(): string

Returns

string

Inherited from

AbstractController.getClassName


getName

▸ getName(): string

Returns the tool name.

Returns

string

The tool's name

Inherited from

AbstractController.getName


getOptions

▸ getOptions(): OptionsOut

Get trackball controller options

Returns

OptionsOut

options

Overrides

AbstractController.getOptions


getPlot

▸ getPlot(): Plot

Get the plot of this Tool.

Returns

Plot

Inherited from

AbstractController.getPlot


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

AbstractController.hasEventListener


isArmed

▸ isArmed(): boolean

Return if this tool is 'armed'.<br> The tool actions are disabled when not armed.<br> A tool can either be armed at all time, or only when a specific key is pressed. To set/unset the arming key, please see this tool option 'armingkey', via .setOptions().

Returns

boolean

Inherited from

AbstractController.isArmed


isDisposed

▸ isDisposed(): boolean

Returns whether this object has been disposed

Returns

boolean

Inherited from

AbstractController.isDisposed


isSilent

▸ isSilent(): boolean

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

Returns

boolean

Inherited from

AbstractController.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

AbstractController.isTouchEvent


notify

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

Notify listeners

Type parameters

NameType
Eextends string

Parameters

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

Returns

TrackballController

this

Inherited from

AbstractController.notify


off

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

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: TrackballController, args: EventMap[E]) => voidfunction to be called

Returns

TrackballController

this

Inherited from

AbstractController.off


on

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

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>

Type parameters

NameType
Eextends string

Parameters

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

Returns

TrackballController

this

Inherited from

AbstractController.on


onContext

▸ onContext(event): void

Called when a 'context' event has occurred

Parameters

Name Type Description
eventPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onContext


onCursorMove

▸ onCursorMove(event): void

Called when a 'onCursorMove' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onCursorMove


onDoubleClick

▸ onDoubleClick(event): void

Called when a 'doubleclick' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onDoubleClick


onDoubleTap

▸ onDoubleTap(event): void

Called when a 'onDoubleTap' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onDoubleTap


onDrag

▸ onDrag(event): void

Called when a 'onDrag' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onDrag


onDragEnd

▸ onDragEnd(event): void

Called when a 'onDragEnd' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onDragEnd


onDragStart

▸ onDragStart(event): void

Called when a 'onDragStart' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onDragStart


onKey

▸ onKey(event): void

Called when a 'onKey' event has occurred

Parameters

Name Type Description
eventKeyboardEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onKey


onKeyDown

▸ onKeyDown(event): void

Called when a 'keydown' event has occurred

Parameters

Name Type Description
eventKeyboardEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onKeyDown


onKeyEnd

▸ onKeyEnd(event): void

Called when a 'onKeyEnd' event has occurred

Parameters

Name Type Description
eventKeyboardEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onKeyEnd


onKeyStart

▸ onKeyStart(event): void

Called when a 'onKeyStart' event has occurred

Parameters

Name Type Description
eventKeyboardEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onKeyStart


onKeyUp

▸ onKeyUp(event): void

Called when a 'keyup' event has occurred

Parameters

Name Type Description
eventKeyboardEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onKeyUp


onMouseDown

▸ onMouseDown(event): void

Called when a 'mousedown' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onMouseDown


onMouseMove

▸ onMouseMove(event): void

Called when a 'mousemove' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onMouseMove


onMouseOut

▸ onMouseOut(event): void

Called when a 'mouseout' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onMouseOut


onMouseUp

▸ onMouseUp(event): void

Called when a 'mouseup' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onMouseUp


onMouseWheel

▸ onMouseWheel(event): void

Called when a 'mousewheel' event has occurred

Parameters

Name Type Description
eventWheelEventthe native event with plot coordinates added

Returns

void

Overrides

AbstractController.onMouseWheel


onPinch

▸ onPinch(event): void

Called when a 'onPinch' event has occurred

Parameters

Name Type Description
eventMovePointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onPinch


onPinchEnd

▸ onPinchEnd(event): void

Called when a 'onPinchEnd' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onPinchEnd


onPinchStart

▸ onPinchStart(event): void

Called when a 'onPinchStart' event has occurred

Parameters

Name Type Description
eventMovePointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onPinchStart


onSlide

▸ onSlide(event): void

Called when a 'onSlide' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onSlide


onSlideEnd

▸ onSlideEnd(event): void

Called when a 'onSlideEnd' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onSlideEnd


onSlideStart

▸ onSlideStart(event): void

Called when a 'onSlideStart' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onSlideStart


onTap

▸ onTap(event): void

Called when a 'onTap' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onTap


onTouchEnd

▸ onTouchEnd(event): void

Called when a 'touchend' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onTouchEnd


onTouchMove

▸ onTouchMove(event): void

Called when a 'touchmove' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onTouchMove


onTouchStart

▸ onTouchStart(event): void

Called when a 'touchstart' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onTouchStart


onVisibilityChanged

▸ onVisibilityChanged(event): void

Called when a 'onVisibilityChanged' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onVisibilityChanged


onVisibilityGained

▸ onVisibilityGained(event): void

Called when a 'onVisibilityGained' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onVisibilityGained


onVisibilityLost

▸ onVisibilityLost(event): void

Called when a 'onVisibilityLost' event has occurred

Parameters

Name Type Description
eventCustomPointerEventthe native event with plot coordinates added

Returns

void

Inherited from

AbstractController.onVisibilityLost


setOptions

▸ setOptions(options?): TrackballController

Set trackball controller options

Parameters

Name Type
Optional optionsOptions

Returns

TrackballController

this

Overrides

AbstractController.setOptions


setSilent

▸ setSilent(bool): TrackballController

Set silent mode

Parameters

Name Type Description
boolbooleanflag to enable silent mode

Returns

TrackballController

this

Inherited from

AbstractController.setSilent


setup

▸ setup(deviceSupport): TrackballController

This function allows tools to bind their events to the device support

Parameters

Name Type Description
deviceSupportAbstractDeviceSupportthe type of device we are attaching to

Returns

TrackballController

Inherited from

AbstractController.setup


getClassName

▸ Static getClassName(): string

Returns

string

Inherited from

AbstractController.getClassName