class.NullController
API > NullController
Class: NullController
Null type camera motion controller.
Remarks
This controller is completely passive and will not overwrite/modify any camera render state.
Extends
Constructors
constructor
new NullController(
input
):NullController
Parameters
Parameter | Type | Description |
---|---|---|
input | ControllerInput | The input source. |
Returns
Overrides
Source
@novorender/web_app/controller/null.ts:19
Properties
input
readonly
input:ControllerInput
The input source for this controller.
Inherited from
Source
@novorender/web_app/controller/base.ts:48
kind
kind:
"null"
The controller type id.
Overrides
Source
@novorender/web_app/controller/null.ts:13
projection
projection:
undefined
=undefined
The camera projection kind.
See
Overrides
Source
@novorender/web_app/controller/null.ts:14
Accessors
axes
get axes():
ControllerAxes
The input axes
Returns
Inherited from
BaseController.axes
Source
@novorender/web_app/controller/base.ts:55
See
currentFlyTo
get currentFlyTo():
undefined
|Orientation
The current fly-to state, if any.
Returns
undefined
| Orientation
Inherited from
BaseController.currentFlyTo
Source
@novorender/web_app/controller/base.ts:109
generation
get generation():
number
Camera controller state generation.
Returns
number
Inherited from
BaseController.generation
Source
@novorender/web_app/controller/base.ts:29
Remarks
If the controller state changes, the generation count will be incremented once every call to renderStateChanges. This can be used to detect changes by comparing to a local generation count. The count is wrapped at 0xffffffff, so make sure you use != comparison and not < comparison.
hasShift
get hasShift():
boolean
The input shift button state.
Returns
boolean
Inherited from
BaseController.hasShift
Source
@novorender/web_app/controller/base.ts:104
See
height
get height():
number
The input element height.
Returns
number
Inherited from
BaseController.height
Source
@novorender/web_app/controller/base.ts:76
See
moving
get moving():
boolean
Whether the camera is currently considered moving or not.
Returns
boolean
Inherited from
BaseController.moving
Source
@novorender/web_app/controller/base.ts:62
See
View.isIdleFrame
multiplier
get multiplier():
number
The input multiplier.
Returns
number
Inherited from
BaseController.multiplier
Source
@novorender/web_app/controller/base.ts:83
See
pointerTable
get pointerTable(): readonly
TouchContactPoint
[]
The input pointer table.
Returns
readonly TouchContactPoint
[]
Inherited from
BaseController.pointerTable
Source
@novorender/web_app/controller/base.ts:97
See
width
get width():
number
The input element width.
Returns
number
Inherited from
BaseController.width
Source
@novorender/web_app/controller/base.ts:69
See
zoomPos
get zoomPos():
number
[]
The input zoom position.
Returns
number
[]
Inherited from
BaseController.zoomPos
Source
@novorender/web_app/controller/base.ts:90
See
Methods
animate
animate(
elapsedTime
):void
Apply time sensitive changes to controller state.
Parameters
Parameter | Type | Description |
---|---|---|
elapsedTime | number | The # of milliseconds elapsed since the last update. |
Returns
void
Inherited from
Source
@novorender/web_app/controller/base.ts:136
Remarks
Fly-to animations happens here, as well as motion based on keyboard pressed-state, such as the WASD keys.
attach
attach():
void
Attach this controller to the input object
Returns
void
Inherited from
Source
@novorender/web_app/controller/base.ts:193
autoFit
autoFit(
center
,radius
):void
Attempt to fit controller position such that the specified bounding sphere is brought into view.
Parameters
Parameter | Type | Description |
---|---|---|
center | ReadonlyVec3 | The center of the bounding sphere, in world space. |
radius | number | The radius of the bounding sphere, in world space. |
Returns
void
Overrides
Source
@novorender/web_app/controller/null.ts:35
changed
protected
changed():void
Signal changes to internal state.
Returns
void
Inherited from
Source
@novorender/web_app/controller/base.ts:34
init
init(
params
):void
Initialize controller from parameters.
Parameters
Parameter | Type |
---|---|
params | ControllerInitParams |
Returns
void
Overrides
Source
@novorender/web_app/controller/null.ts:28
See
mouseButtonChanged
mouseButtonChanged(
event
):void
|Promise
\<void
>
Handler for mouse buttons events.
Parameters
Parameter | Type |
---|---|
event | MouseEvent |
Returns
void
| Promise
\< void
>
Inherited from
BaseController
.mouseButtonChanged
Source
@novorender/web_app/controller/base.ts:201
moveBegin
moveBegin(
event
):void
|Promise
\<void
>
Handler for mouse/touch move events.
Parameters
Parameter | Type |
---|---|
event | MouseEvent | TouchEvent |
Returns
void
| Promise
\< void
>
Inherited from
Source
@novorender/web_app/controller/base.ts:213
moveTo
moveTo(
targetPosition
,flyTime
=1000
,rotation
?):void
Move controller to specified position/rotation.
Parameters
Parameter | Type | Default value |
---|---|---|
targetPosition | ReadonlyVec3 | undefined |
flyTime | number | 1000 |
rotation ? | ReadonlyQuat | undefined |
Returns
void
Inherited from
Source
@novorender/web_app/controller/base.ts:221
renderStateChanges
renderStateChanges(
state
,elapsedTime
):undefined
|RecursivePartial
\<RenderState
>
Retrieve the state changes to be applied to the specified render state.
Parameters
Parameter | Type | Description |
---|---|---|
state | RenderStateCamera | The baseline render state. |
elapsedTime | number | The time elapsed since last call, in milliseconds. |
Returns
undefined
| RecursivePartial
\< RenderState
>
Inherited from
BaseController
.renderStateChanges
Source
@novorender/web_app/controller/base.ts:236
resetFlyTo
protected
resetFlyTo():void
Returns
void
Inherited from
Source
@novorender/web_app/controller/base.ts:113
serialize
serialize():
ControllerInitParams
Serialize the state of this controller into init parameters.
Returns
Overrides
Source
@novorender/web_app/controller/null.ts:23
See
setFlyTo
protected
setFlyTo(flyTo
):void
Initialize a fly-to transition.
Parameters
Parameter | Type | Description |
---|---|---|
flyTo | FlyToParams | The transition parameters |
Returns
void
Inherited from
Source
@novorender/web_app/controller/base.ts:120
stateChanges
stateChanges(
state
?):Partial
\<RenderStateCamera
>
Retrieve changes to render state from derived class, if any.
Parameters
Parameter | Type | Description |
---|---|---|
state ? | RenderStateCamera | The baseline state to apply changes to. |
Returns
Partial
\< RenderStateCamera
>
Overrides
Source
@novorender/web_app/controller/null.ts:41
See
Remarks
If there are no changes, the returned object will be empty, i.e. {}.
touchChanged
touchChanged(
event
):void
|Promise
\<void
>
Handler for touch events.
Parameters
Parameter | Type |
---|---|
event | TouchEvent |
Returns
void
| Promise
\< void
>
Inherited from
Source
@novorender/web_app/controller/base.ts:207
update
update():
void
Update internal controller state
Returns
void
Overrides
Source
@novorender/web_app/controller/null.ts:38
zoomTo
zoomTo(
boundingSphere
,flyTime
=1000
):void
Bring the specified bounding sphere into view.
Parameters
Parameter | Type | Default value |
---|---|---|
boundingSphere | BoundingSphere | undefined |
flyTime | number | 1000 |
Returns
void
Inherited from
Source
@novorender/web_app/controller/base.ts:230
Remarks
This function will retain the current camera controller rotation.
assert
static
assert(controller
):asserts controller is NullController
NullController type assert function.
Parameters
Parameter | Type | Description |
---|---|---|
controller | BaseController | The controller to type assert. |
Returns
asserts controller is NullController
Source
@novorender/web_app/controller/null.ts:55
getDistanceFromViewPlane
static
protected
getDistanceFromViewPlane(point
,cameraPosition
,cameraRotation
):number
Compute the distance to a point from the specified view plane.
Parameters
Parameter | Type | Description |
---|---|---|
point | ReadonlyVec3 | The point to measure distance too |
cameraPosition | ReadonlyVec3 | The position of the camera/view plane. |
cameraRotation | ReadonlyQuat | The rotation of the camera/view plane. |
Returns
number
A signed distance from the point to the view plane, i.e. positive for points in front of the plane and negative otherwise.
Inherited from
BaseController
.getDistanceFromViewPlane
Source
@novorender/web_app/controller/base.ts:262
is
static
is(controller
):controller is NullController
NullController type guard function.
Parameters
Parameter | Type | Description |
---|---|---|
controller | BaseController | The controller to type guard. |
Returns
controller is NullController