| this._selected = undefined | this._selected = undefined | ||||
| this._enableEventPropagation = options.enableEventPropagation | this._enableEventPropagation = options.enableEventPropagation | ||||
| this._enableMouseOver = options.enableMouseOver | this._enableMouseOver = options.enableMouseOver | ||||
| this._enableMouseMovePick = options.enableMouseMovePick | |||||
| this._registerEvent() | this._registerEvent() | ||||
| this._addDefaultEvent() | this._addDefaultEvent() | ||||
| } | } | ||||
| if (!movement?.endPosition) { | if (!movement?.endPosition) { | ||||
| return false | return false | ||||
| } | } | ||||
| let mouseInfo = this._getMouseInfo(movement.endPosition) | |||||
| this._viewer.canvas.style.cursor = mouseInfo.target ? 'pointer' : 'default' | |||||
| this._raiseEvent(MouseEventType.MOUSE_MOVE, mouseInfo) | |||||
| // add event for overlay | |||||
| if (this._enableMouseOver) { | |||||
| if ( | |||||
| !this._selected || | |||||
| this._getOverlayId(this._selected.target) !== | |||||
| this._getOverlayId(mouseInfo.target) | |||||
| ) { | |||||
| this._raiseEvent(MouseEventType.MOUSE_OUT, this._selected) | |||||
| this._raiseEvent(MouseEventType.MOUSE_OVER, mouseInfo) | |||||
| this._selected = mouseInfo | |||||
| if (this._enableMouseMovePick) { | |||||
| let mouseInfo = this._getMouseInfo(movement.endPosition) | |||||
| this._viewer.canvas.style.cursor = mouseInfo.target | |||||
| ? 'pointer' | |||||
| : 'default' | |||||
| this._raiseEvent(MouseEventType.MOUSE_MOVE, mouseInfo) | |||||
| // add event for overlay | |||||
| if (this._enableMouseOver) { | |||||
| if ( | |||||
| !this._selected || | |||||
| this._getOverlayId(this._selected.target) !== | |||||
| this._getOverlayId(mouseInfo.target) | |||||
| ) { | |||||
| this._raiseEvent(MouseEventType.MOUSE_OUT, this._selected) | |||||
| this._raiseEvent(MouseEventType.MOUSE_OVER, mouseInfo) | |||||
| this._selected = mouseInfo | |||||
| } | |||||
| } | } | ||||
| } else { | |||||
| this._raiseEvent(MouseEventType.MOUSE_MOVE, { movement }) | |||||
| } | } | ||||
| } | } | ||||