Appearance
@jtopo/core / InputSystem
Class: InputSystem
输入系统(管理鼠标或触摸信息和状态)
Hierarchy
↳
InputSystem
Table of contents
Constructors
Properties
- button
- buttons
- dropTarget
- dx
- dxInWorld
- dy
- dyInWorld
- event
- idleTimeout
- isDragEnd
- isDragStart
- isDraging
- isIdle
- isPointerDown
- isPointerOn
- isRightButton
- mouseoverTarget
- pointerDownX
- pointerDownY
- preMouseoverTarget
- preTarget
- previous
- skipPointerMovePicking
- target
- type
- x
- xInWorld
- y
- yInWorld
Methods
Constructors
constructor
new InputSystem(stage
)
Parameters
Name | Type |
---|---|
stage | Stage |
Overrides
Properties
button
button: number
= 0
buttons
buttons: number
= 0
dropTarget
Optional
dropTarget: NE
当前拖拽时的目标对象
dx
dx: number
相对于上一次鼠标或指针x的移动增量(canvas坐标系)
dxInWorld
dxInWorld: number
世界坐标系下的x坐标增量
dy
dy: number
相对于上一次鼠标或指针y的移动增量(canvas坐标系)
dyInWorld
dyInWorld: number
世界坐标系下的y坐标增量
event
event: TouchEvent
| PointerEvent
原始的事件对象
idleTimeout
idleTimeout: number
= 50
鼠标或指针空闲时间, 50毫秒内没有动作时认为空闲
isDragEnd
isDragEnd: boolean
= false
状态: 是否拖拽结束
isDragStart
isDragStart: boolean
= false
状态: 是否拖拽的开始
isDraging
isDraging: boolean
= false
状态: 是否在拖拽中
isIdle
isIdle: boolean
状态: 鼠标或指针是否空闲
isPointerDown
isPointerDown: boolean
= false
鼠标或指针是否按下
isPointerOn
isPointerOn: boolean
= false
状态: 鼠标或指针是否在画布上
isRightButton
isRightButton: boolean
= false
是否右键 (鼠标设备时)
mouseoverTarget
Optional
mouseoverTarget: NE
当前鼠标指向的对象
pointerDownX
pointerDownX: number
= 0
鼠标按下时的坐标(canvas坐标)
pointerDownY
pointerDownY: number
= 0
鼠标松开时的坐标(canvas坐标)
preMouseoverTarget
Optional
preMouseoverTarget: NE
上一次鼠标指向的对象
preTarget
Optional
preTarget: NE
上一次鼠标选中的对象
previous
previous: Object
上一次事件的状态记录
Type declaration
Name | Type |
---|---|
type | string |
x | number |
y | number |
dx | number |
dy | number |
xInWorld | number |
yInWorld | number |
dxInWorld | number |
dyInWorld | number |
isDraging | boolean |
isPointDown | boolean |
isPointerOn | boolean |
isDragStart | boolean |
isDragEnd | boolean |
timeStamp | number |
skipPointerMovePicking
skipPointerMovePicking: boolean
= false
忽略一些事件 来提高性能、降低能耗
图元对象不再触发和响应 pointermove、pointerenter、pointerout事件
target
Optional
target: NE
当前鼠标选中的对象
type
type: "touchmove"
| "pointerdown"
| "pointerup"
| "pointermove"
| "pointerenter"
| "pointerout"
| "click"
| "dblclick"
| "dragend"
| "drop"
| "dragover"
| "dragstart"
| "touchend"
| "touchstart"
| "wheel"
x
x: number
= -1
鼠标或指针的屏幕坐标x(canvas左上角为0,0)
xInWorld
xInWorld: number
鼠标或指针在世界坐标系下的x坐标
y
y: number
= -1
鼠标或指针的屏幕坐标y(canvas左上角为0,0)
yInWorld
yInWorld: number
鼠标或指针在世界坐标系下的y坐标
Methods
addEventListener
addEventListener(type
, callback
): void
增加事件监听
Parameters
Name | Type | Description |
---|---|---|
type | "touchmove" | "pointerdown" | "pointerup" | "pointermove" | "pointerenter" | "pointerout" | "click" | "dblclick" | "dragend" | "drop" | "dragover" | "dragstart" | "touchend" | "touchstart" | "wheel" | 事件类型 |
callback | Function |
Returns
void
Overrides
dispatchEvent
dispatchEvent(event
): void
分发事件
Parameters
Name | Type |
---|---|
event | Event | EventBase |
Returns
void
Inherited from
hasListener
hasListener(type
): boolean
是否有该类型的监听
Parameters
Name | Type |
---|---|
type | "touchmove" | "pointerdown" | "pointerup" | "pointermove" | "pointerenter" | "pointerout" | "click" | "dblclick" | "dragend" | "drop" | "dragover" | "dragstart" | "touchend" | "touchstart" | "wheel" |
Returns
boolean
Overrides
preventDefault
preventDefault(): void
Deprecated
Returns
void
removeEventListener
removeEventListener(type
, callback
): any
移除一个事件监听
Parameters
Name | Type |
---|---|
type | string |
callback | Function |
Returns
any