cesium根据缩放层级对应显示点、图片、模型

 distanceDisplayCondition是一个核心属性,决定距离地球一定高度所展示的效果

//在距离地球20000000米以上显示为点:
createPoint() {
    const point = new GeoVis.PointGraphics({
      id: GeoVis.createGuid(),
      pixelSize: 10,
      color: GeoVis.Color.WHITE,
      distanceDisplayCondition: new GeoVis.DistanceDisplayCondition(20000000.0)
    });
    this.createCesiumSatelliteEntity("Point", "point", point);
   }
///在距离地球400000到20000000.0米显示为billboard
  createBillboard(){
    const billboard = new GeoVis.BillboardGraphics({
      id: GeoVis.createGuid(),
      scale:0.02,
      image:"static/data/SatelliteVis/satellite/satellite.png",
      distanceDisplayCondition: new GeoVis.DistanceDisplayCondition(400000,20000000.0)
    });
    this.createCesiumSatelliteEntity("Billboard", "billboard", billboard);
  }


 

cesium模型缩放可以通过以下几种方法实现: 方法一: 使用自定义控件进行缩放 您可以使用自定义控件来实现cesium地图的缩放。首先,您需要定义一个函数来控制缩放效果,然后将该函数与相应的按钮事件绑定。下面是一个示例代码: ``` // 可根据高度进行缩放控制 function zoomInByMove(flag) { var position = viewer.camera.positionCartographic; // 1表示放大,0表示缩小 if (flag) { viewer.camera.moveForward(position.height * 0.5); } else { viewer.camera.moveBackward(position.height * 0.5); } } // 绑定两个控件事件 document.getElementById('zoomIn').addEventListener('click', function() { zoomInByMove(1); }); document.getElementById('zoomOut').addEventListener('click', function() { zoomInByMove(0); }); ``` 方法二: 使用内置方法进行缩放 Cesium提供了一些内置方法来实现缩放效果,例如`zoomIn()`和`zoomOut()`。您可以直接调用这些方法来放大或缩小cesium地图。下面是一个示例代码: ``` // 放大 function zoomIn() { var position = viewer.camera.position; var cameraHeight = viewer.scene.globe.ellipsoid.cartesianToCartographic(position).height; // 每次缩小 20 倍,参数可改 var moveRate = cameraHeight / 20.0; viewer.camera.moveForward(moveRate); } // 缩小 function zoomOut() { var position = viewer.camera.position; var cameraHeight = viewer.scene.globe.ellipsoid.cartesianToCartographic(position).height; // 每次缩小 20 倍,参数可改 var moveRate = cameraHeight / 20.0; viewer.camera.moveBackward(moveRate); } ``` 请注意,这只是两种常见的 cesium 模型缩放方法之一,具体的实现方式可能会根据您的项目需求而有所不同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值