码迷,mamicode.com
首页 > 其他好文 > 详细

Cesium鼠标事件

时间:2019-12-25 13:19:51      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:space   全局   action   canvas   inpu   pac   style   定义   获取   

computed: {
  handler() {
    return new this.Cesium.ScreenSpaceEventHandler(this.viewer.scene.canvas)
  }
}
在事件的外面先定义一下 const _this = this (因为在setInputAction方法中,this的指向会发生变化,不再指向vue实例) 用this.Cesium是因为在mainjs里配置了Cesium的全局变量

// 1.移动事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    // 获取到的是鼠标经过cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.MOUSE_MOVE)

// 2.左键单击事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    // 获取到的是鼠标点击cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.LEFT_CLICK)

// 3.左键按下事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    // 获取到的是鼠标按下cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.LEFT_DOWN)

// 4.左键抬起事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    // 获取到的是鼠标抬起cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.LEFT_UP)

// 5.滑轮事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    // 向上滑是100  向下滑是-100
}, _this.Cesium.ScreenSpaceEventType.WHEEL)

// 6.滑轮点击事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    //获取到的是滑轮点击cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.MIDDLE_CLICK)

// 7.滑轮按下事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    //获取到的是滑轮按下cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.MIDDLE_DOWN)

// 8.滑轮抬起事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    //获取到的是滑轮抬起cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.MIDDLE_UP)

// 9.右键单击事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    //获取到的是右键点击cesium的屏幕坐标
//一般在右键的时候结束 同时也清除定义的事件
      _this.handler.removeInputAction(_this.Cesium.ScreenSpaceEventType.方法名)
      如:
      _this.handler.removeInputAction(_this.Cesium.ScreenSpaceEventType.LEFT_CLICK)  //移除左键单击事件
      _this.handler.removeInputAction(_this.Cesium.ScreenSpaceEventType.MOUSE_MOVE)  //移除鼠标移动事件
    
}, _this.Cesium.ScreenSpaceEventType.RIGHT_CLICK)

// 10.右键按下事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    //获取到的是右键按下cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.RIGHT_DOWN)

// 11.右键抬起事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    //获取到的是右键抬起cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.RIGHT_UP)

// 12.左键双击事件

_this.handler.setInputAction(function (movement) {
    console.log(movement)
    //获取到的是左键双击cesium的屏幕坐标
}, _this.Cesium.ScreenSpaceEventType.LEFT_DOUBLE_CLICK)

Cesium鼠标事件

标签:space   全局   action   canvas   inpu   pac   style   定义   获取   

原文地址:https://www.cnblogs.com/reround/p/12095922.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!