Constructor
new CameraControlComponent()
The camera controller.
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:
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
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
distanceLimited :Array.<(Number|null)>
Set/Get distance limited range[min, max], null indicates it's unlimited.
Type:
- Array.<(Number|null)>
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
Example
let camera = THING.App.current.camera;
camera.enable = false;
// @expect(camera.enable == false)
enableAdjustNear :Boolean
Enable/Disable adjust near.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enableAdjustNear = false;
// @expect(camera.enableAdjustNear == false)
enableAdjustPanSpeed :Boolean
Enable/Disable adjust pan speed.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enableAdjustPanSpeed = false;
// @expect(camera.enableAdjustPanSpeed == false);
enableAdjustTargetPosition :Boolean
Enable/Disable adjust target position.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enableAdjustTargetPosition = false;
// @expect(camera.enableAdjustTargetPosition == false)
enableAutoMoveTargetForward :Boolean
Enable/Disable auto move target forward.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enableAutoMoveTargetForward = false;
// @expect(camera.enableAutoMoveTargetForward == false)
enableDamping :Boolean
Enable/Disable damping.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enableDamping = false;
// @expect(camera.enableDamping == false);
enableMapControl :Boolean
Enable/Disable map control.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enableMapControl = false;
// @expect(camera.enableMapControl == false);
enablePan :Boolean
Enable/Disable pan.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enablePan = false;
// @expect(camera.enablePan == false);
enablePickWhenChanging :Boolean
Enable/Disable pick when changing.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enablePickWhenChanging = false;
// @expect(camera.enablePickWhenChanging == false);
enableRotate :Boolean
Enable/Disable rotate.
Type:
- Boolean
Example
let camera = THING.App.current.camera;
camera.enableRotate = false;
// @expect(camera.enableRotate == false);
enableZoom :Boolean
Enable/Disable zoom.
Type:
- Boolean
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
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>
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
Example
let camera = THING.App.current.camera;
camera.pan(0, -50);
// @expect(camera.isChanging == true)
keyPanSpeed :Number
Get/Set key pan speed.
Type:
- Number
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
Example
let camera = THING.App.current.camera;
camera.panSpeed = 10;
// @expect(camera.panSpeed == 10);
rotateSpeed :Number
Get/Set rotate speed.
Type:
- Number
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
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>
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>
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>
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
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
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. |
Example
// Move camera with bottom direction
app.camera.pan(0, -50);
stop()
Stop current control.
zoom(distance, param)
Move forward/backward.
Parameters:
Name | Type | Description | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
distance |
Number | The distance (+: forward, -: backward). | |||||||||||||||
param |
Object | The options.
Properties
|