Class: CameraControlComponent

THING.CameraControlComponent()

CameraControlComponent The camera controller component.

Constructor

new CameraControlComponent()

The camera controller.
Source:

Extends

Members

active :Boolean

Active or deactive component.
Type:
  • Boolean
Overrides:
Source:

app :THING.App

Get application.
Type:
Overrides:
Source:

boundary :BoundaryResult

Get/Set boundary to limit target position(null indicates clear it).
Type:
Source:
Example
let camera = THING.App.current.camera;
let center = [10,10,10];
let halfSize = [20,20,20];
let boundary = {center, halfSize};
camera.boundary = boundary;
// @expect(camera.boundary.center[0] == 10 && camera.boundary.halfSize[0] == 20);

dampingFactor :Number

Get/Set damping factor.
Type:
  • Number
Source:
Example
let camera = THING.App.current.camera;
camera.dampingFactor = 10;
// @expect(camera.dampingFactor == 10);

distance :Number

Get the distance from position to target.
Type:
  • Number
Source:

distanceLimited :Array.<(Number|null)>

Set/Get distance limited range[min, max], null indicates it's unlimited.
Type:
  • Array.<(Number|null)>
Source:
Example
let camera = THING.App.current.camera;
camera.distanceLimited = [10,1000];
// @expect(camera.distanceLimited[0] == 10 && camera.distanceLimited[1] == 1000);

enable :Boolean

Enable/Disable control.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enable = false;
// @expect(camera.enable == false)

enableAdjustNear :Boolean

Enable/Disable adjust near.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableAdjustNear = false;
// @expect(camera.enableAdjustNear == false)

enableAdjustPanSpeed :Boolean

Enable/Disable adjust pan speed.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableAdjustPanSpeed = false;
// @expect(camera.enableAdjustPanSpeed == false);

enableAdjustTargetPosition :Boolean

Enable/Disable adjust target position.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableAdjustTargetPosition = false;
// @expect(camera.enableAdjustTargetPosition == false)

enableAutoMoveTargetForward :Boolean

Enable/Disable auto move target forward.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableAutoMoveTargetForward = false;
// @expect(camera.enableAutoMoveTargetForward == false)

enableDamping :Boolean

Enable/Disable damping.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableDamping = false;
// @expect(camera.enableDamping == false);

enableMapControl :Boolean

Enable/Disable map control.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableMapControl = false;
// @expect(camera.enableMapControl == false);

enablePan :Boolean

Enable/Disable pan.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enablePan = false;
// @expect(camera.enablePan == false);

enablePickWhenChanging :Boolean

Enable/Disable pick when changing.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enablePickWhenChanging = false;
// @expect(camera.enablePickWhenChanging == false);

enableRotate :Boolean

Enable/Disable rotate.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableRotate = false;
// @expect(camera.enableRotate == false);

enableZoom :Boolean

Enable/Disable zoom.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableZoom = false;
// @expect(camera.enableZoom == false);

enableZoomToMouseCursorOnWheel :Boolean

Enable/Disable zoom to mouse cursor on wheel.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.enableZoomToMouseCursorOnWheel = false;
// @expect(camera.enableZoomToMouseCursorOnWheel == false);

horzAngleLimit :Array.<Number>

Set/Get horz angle limited range[min, max], default is [0, 180].
Type:
  • Array.<Number>
Source:
Example
let camera = THING.App.current.camera;
camera.horzAngleLimit = [10,100];
// @expect(camera.horzAngleLimit[0] == 10 && camera.horzAngleLimit[1] == 100);

isChanging :Boolean

Check whether is changing or not.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.pan(0, -50);
// @expect(camera.isChanging == true)

keyPanSpeed :Number

Get/Set key pan speed.
Type:
  • Number
Source:
Example
let camera = THING.App.current.camera;
camera.keyPanSpeed = 10;
// @expect(camera.keyPanSpeed == 10);

object :THING.BaseObject

Get object.
Type:
Overrides:
Source:

onActiveChange :OnActiveChangeComponentCallback

When active change callback function.
Type:
Overrides:
Source:

onAfterAdd :OnAfterAddComponentCallback

After add.
Type:
Overrides:
Source:

onAfterAddChild :OnAddChildComponentCallback

When after add child callback function.
Type:
Overrides:
Source:

onAfterRemove :OnAfterRemoveComponentCallback

After remove.
Type:
Overrides:
Source:

onAfterRemoveChild :OnRemoveChildComponentCallback

When after remove child callback function.
Type:
Overrides:
Source:

onBeforeAdd :OnBeforeAddComponentCallback

Before add.
Type:
Overrides:
Source:

onBeforeAddChild :OnAddChildComponentCallback

When before add child callback function.
Type:
Overrides:
Source:

onBeforeRemove :OnBeforeRemoveComponentCallback

Before remove.
Type:
Overrides:
Source:

onBeforeRemoveChild :OnRemoveChildComponentCallback

When before remove child callback function.
Type:
Overrides:
Source:

onCopy :OnCopyComponentCallback

When copy callback function.
Type:
Overrides:
Source:

onExport :OnExportComponentCallback

When export data.
Type:
Overrides:
Source:

onImport :OnImportComponentCallback

When import data.
Type:
Overrides:
Source:

onInit :OnInitComponentCallback

When initialize callback function.
Type:
Overrides:
Source:

onLoadResource :OnLoadResourceComponentCallback

When load resource callback function.
Type:
Overrides:
Source:

onParentChange :OnParentChangeComponentCallback

When change parent callback function.
Type:
Overrides:
Source:

onRefresh :OnRefreshComponentCallback

When refresh callback function.
Type:
Overrides:
Source:

onResize :OnResizeComponentCallback

When resize callback function.
Type:
Overrides:
Source:

onUnloadResource :OnUnloadResourceComponentCallback

When unload resource callback function.
Type:
Overrides:
Source:

onUpdate :OnUpdateComponentCallback

When update callback function.
Type:
Overrides:
Source:

onVisibleChange :OnVisibleChangeComponentCallback

When visible change callback function.
Type:
Overrides:
Source:

panSpeed :Number

Get/Set pan speed.
Type:
  • Number
Source:
Example
let camera = THING.App.current.camera;
camera.panSpeed = 10;
// @expect(camera.panSpeed == 10);

rotateSpeed :Number

Get/Set rotate speed.
Type:
  • Number
Source:
Example
let camera = THING.App.current.camera;
camera.rotateSpeed = 10;
// @expect(camera.rotateSpeed == 10);

screenSpacePanning :Boolean

Get/Set space panning of the screen. True indicates pan action will base on screen, otherwise indicates will base on camera's Y axis direction. Default value is true.
Type:
  • Boolean
Source:
Example
let camera = THING.App.current.camera;
camera.screenSpacePanning = false;
// @expect(camera.screenSpacePanning == false);

target :Array.<Number>

Get/Set target of the world space.
Type:
  • Array.<Number>
Source:
Example
let camera = THING.App.current.camera;
camera.target = [10,10,10];
// @expect(camera.target[0] == 10 && camera.target[1] == 10 && camera.target[2] == 10);

upDirection :Array.<Number>

Get/Set up direction.
Type:
  • Array.<Number>
Source:
Example
let camera = THING.App.current.camera;
camera.upDirection = [10,10,10];
// @expect(camera.upDirection[0] == 10 && camera.upDirection[1] == 10 && camera.upDirection[2] == 10);

vertAngleLimit :Array.<Number>

Set/Get vert angle limited range[min, max], default is [0, 180].
Type:
  • Array.<Number>
Source:
Example
let camera = THING.App.current.camera;
camera.vertAngleLimit = [10,100];
// @expect(camera.vertAngleLimit[0] == 10 && camera.vertAngleLimit[1] == 100);

zoomSpeed :Number

Get/Set zoom speed.
Type:
  • Number
Source:
Example
let camera = THING.App.current.camera;
camera.zoomSpeed = 10;
// @expect(camera.zoomSpeed == 10);

zoomToMouseCursorOnWheelSpeed :Number

Get/Set the factor of zoom to mouse cursor on wheel.
Type:
  • Number
Source:
Example
let camera = THING.App.current.camera;
camera.zoomToMouseCursorOnWheelSpeed = 10;
// @expect(camera.zoomToMouseCursorOnWheelSpeed == 10);

Methods

onAdd(object)

When add component.
Parameters:
Name Type Description
object THING.BaseObject The object.
Overrides:
Source:

onRemove()

When remove component.
Overrides:
Source:

pan(deltaX, deltaY, durationopt)

Pan in screen by pixel.
Parameters:
Name Type Attributes Default Description
deltaX Number The delta X in pixel.
deltaY Number The delta Y in pixel.
duration Number <optional>
500 The time in milliseconds.
Source:
Example
// Move camera with bottom direction
	app.camera.pan(0, -50);

stop()

Stop current control.
Source:

zoom(distance, param)

Move forward/backward.
Parameters:
Name Type Description
distance Number The distance (+: forward, -: backward).
param Object The options.
Properties
Name Type Attributes Default Description
duration Number <optional>
500 The time in milliseconds.
updateTarget Boolean <optional>
true True indicates update target's position.
Source: