cesium绑定鼠标事件,及清除事件

news/2024/7/6 1:18:04

1.绑定事件方法 

 说明:

方式一:方式一是每次都创建一个实例,可以多个共存且根据名字(变量比如:下面的handler)可以清除指定事件(推荐使用)。

方式二:方式二是直接在viewer实例上添加,清除事件会污染整个viewer实例且当前实例存在其它鼠标事件会一并清除(适合一键清除地图上事件)

//方式一:
var handler = new Cesium.ScreenSpaceEventHandler(viewer.canvas);//获取地图对象
handler.setInputAction(function(event) { //设置监听方法
        var height = viewer.camera.positionCartographic.height;//我这里举个例子点击鼠标左键获取当前高度
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
 
//方式二:
viewer.screenSpaceEventHandler.setInputAction(function (wheelment) {
        var height = viewer.camera.positionCartographic.height;//我这里举个例子点击鼠标左键获取当前高
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
 
2.事件类型 

Cesium.ScreenSpaceEventType.LEFT_CLICK //鼠标左击事件
Cesium.ScreenSpaceEventType.LEFT_DOUBLE_CLICK //鼠标左键双击事件
Cesium.ScreenSpaceEventType.LEFT_DOWN //左键鼠标按下事件
Cesium.ScreenSpaceEventType.LEFT_UP //左键鼠标抬起事件
Cesium.ScreenSpaceEventType.MIDDLE_CLICK //中键单机
Cesium.ScreenSpaceEventType.MIDDLE_DOWN //中键按下
Cesium.ScreenSpaceEventType.MIDDLE_UP //中键抬起
Cesium.ScreenSpaceEventType.MOUSE_MOVE //鼠标移动
Cesium.ScreenSpaceEventType.PINCH_END //表示两指事件在触摸面上的结束。
Cesium.ScreenSpaceEventType.PINCH_MOVE //两指移动
Cesium.ScreenSpaceEventType.PINCH_START //表示在触摸面上发生两指事件的开始。
Cesium.ScreenSpaceEventType.RIGHT_CLICK //鼠标右击事件
Cesium.ScreenSpaceEventType.RIGHT_DOWN  //鼠标右键按下
Cesium.ScreenSpaceEventType.RIGHT_UP    //鼠标右键抬起
Cesium.ScreenSpaceEventType.WHEEL //鼠标滚轮事件


3.移除鼠标事件

//方式一
handler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK)//移除事件
 
//方式二
 viewer.screenSpaceEventHandler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK);

本文涉及到的鼠标事件类型api 

cesium中文api网址

cesium官方示例网址


http://www.niftyadmin.cn/n/4115352.html

相关文章

[logstash-input-log4j]插件使用详解

Log4j插件可以通过log4j.jar获取Java日志,搭配Log4j的SocketAppender和SocketHubAppender使用,常用于简单的集群日志汇总。 最小化的配置 input {log4j {host>"localhost"port>4560} } output {stdout {} } log4j插件配置host以及port就…

Maven项目中配置MyBatis Generator插件生成代码

2019独角兽企业重金招聘Python工程师标准>>> 参考: 官网:http://www.mybatis.org/generator/index.html 官网配置文件:http://www.mybatis.org/generator/configreference/xmlconfig.html 《 OSC-蛙牛的博客——数据库逆向框架代码…

cesium 获取多边形polygon中心点

//创建面 支持球面和平面坐标 var polygon viewer.entities.add({ polygon: { hierarchy: { positions: Cesium.Cartesian3.fromRadiansArray([ ]), }, outline: true, outlineColor: Cesium.Color.RED, outlineWidth: 3, material: Cesium.Color.YELLOW, }, }); var pyPosi…

vue离线状态创建项目

通过vue-cli工具命令vue init webpack vuedemo创建vue项目的时候报错,提示连接超时,应该是下载某个package的时候,需要翻墙,导致出现连接超时。超时错误截图如下: 按照网络上的提示,解决办法是改为离线创建…

Android-MVP架构

MVP 简介 MVP是模型(Model)、视图(View)、主持人(Presenter)的缩写,分别代表项目中3个不同的模块。如图所示:imageView 对应于Activity、Fragment,负责界面的绘制以及与用…

cesium动态创建圆和矩形

cesium鼠标动态绘制线、面、圆、矩形;其他entity类型依此原理 var activeShapePoints []; var activeShape; var floatingPoint; var handler new Cesium.ScreenSpaceEventHandler(viewer.canvas); //双击鼠标左键清除默认事件 viewer.cesiumWidget.screenSpaceEv…

URI的常用使用场景

2019独角兽企业重金招聘Python工程师标准>>> 1,调web浏览器 Uri myBlogUri Uri.parse(" http://xxxxx.com "); returnIt new Intent(Intent.ACTION_VIEW, myBlogUri); 2,地图 Uri mapUri Uri.parse("geo:38.899533…

u盘在本机电脑读不出来,但别的机器可以读解决方案

测试环境 win10家庭中文版 一般这种问题都是驱动程序问题导致的,解决方法很简单,不管是win7还是win10都适用: 插入u盘然后在设备管理里删掉设备重新插拔试试。 详细步骤是: 插上U盘 打开设备管理器 找到移动磁盘的图标&#xff0…