左键绘制点

一、思路

  1. 左键点击地球触发事件,获取点击后坐标,并将坐标传参到绘制点方法,绘制成红色点。
  2. 右键点击销毁事件。
  3. 设计清除点击按钮,删掉所有实体。

二、代码


    // 创建点
    function createpoint () {
      var handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas);
      // 左键开启事件
      handler.setInputAction(function (movement) {
        //获取加载地形后对应的经纬度和高程,世界坐标系
        let ray = viewer.camera.getPickRay(movement.position);
        let position = viewer.scene.globe.pick(ray, viewer.scene);
        let point = drawPoint(position);
      }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
      //右键关闭事件
      handler.setInputAction(function () {
        // 销毁事件
        handler.destroy();
        handler = null;
      }, Cesium.ScreenSpaceEventType.RIGHT_DOWN);
    }

    // 绘制点
    function drawPoint (position) {
      var pointGeometry = viewer.entities.add({
        position: position,
        point: {
          color: Cesium.Color.RED,
          pixelSize: 5,
          heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
        },
      });
      return pointGeometry;
    }

    // 清除实体
    function clearAll () {
      viewer.entities.removeAll();
    }

三、效果图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值