VUE3-Cesium(使用entities创建盒子、圆、走廊、圆柱实体)

目录

1.创建盒子

2.创建圆

3.创建走廊

4.创建圆柱


使用viewer.entities.add()方法进行实体创建:

 Cesium中提供的创建实体类型许多,详细种类可以查看官方文档或中文API,在Entity类下,各种实体创建方式大同小异,只是其中属性值有细微差别。

实体实例将多种形式的可视化聚集到单个高级对象中。可以手动创建它们并将其添加到 Viewer#entities 或由数据源,例如 CzmlDataSource 和 GeoJsonDataSource 

Entity实体主要包含以下成员:

1.创建盒子

通过 BoxGraphics 进行创建盒子实体,box相应属性设置如下:

 示例代码:

// 创建盒子
  const blueBox =({
    name: "blueBox",
    // box的位置为北京
    position: Cesium.Cartesian3.fromDegrees(116.397428, 39.90923, 150),
    box: {
      // 设置box的长宽高
      dimensions: new Cesium.Cartesian3(100.0, 200.0, 300.0),
      // 设置box的颜色
      material: new Cesium.Color(0, 0, 1, 0.5),
      // 外边框
      outline: true,
      // 边框颜色
      outlineColor: Cesium.Color.WHITE,
      // 边框宽度
      // outlineWidth: 10,
      // 是否填充
      // fill: false,
    },
  });

2.创建圆

圆实体通过ellipse : EllipseGraphics 进行创建,具体属性设置如下:

 示例代码如下:

// 添加绿色的圆
  const greenCircle = viewer.entities.add({
    name: "greenCircle",
    position: Cesium.Cartesian3.fromDegrees(116.400538, 39.90923, 150),
    ellipse: {
      // 设置短半轴
      semiMinorAxis: 100.0,
      // 设置长半轴
      semiMajorAxis: 200.0,
      material: new Cesium.Color(0, 1, 0, 0.5),
      // height: 300.0,
      outline: true,
      outlineColor: Cesium.Color.WHITE,
      // 高度
      extrudedHeight: 400.0,
      // 设置椭圆旋转
      // rotation: Math.PI / 4,
      rotation: Cesium.Math.toRadians(45),
    },
  });

3.创建走廊

通过corridor : CorridorGraphics 进行创建。,corridor所具有的属性如下:

示例代码:

// 添加走廊
  const corridor = viewer.entities.add({
    name: "corridor",
    corridor: {
      // 设置走廊的起点
      positions: Cesium.Cartesian3.fromDegreesArray([
        116.417428, 39.90923, 116.430538, 39.90923, 116.430538, 39.89923,
      ]),
      // 设置走廊的颜色
      material: new Cesium.Color(1, 0, 0, 0.5),
      // 设置走廊的宽度
      width: 100,
      // 设置走廊的高度
      // height: 300.0,
      // 设置走廊的高度
      extrudedHeight: 400.0,
      // 设置转角的样式
      // cornerType: Cesium.CornerType.BEVELED,
    },
  });

4.创建圆柱

使用cylinder : CylinderGraphics 创建圆柱实体,cylinder所具有的属性如下:

 示例代码:

// 圆柱体
  const yellowCylinder = viewer.entities.add({
    name: "yellowCylinder",
    position: Cesium.Cartesian3.fromDegrees(116.407428, 39.90923, 150),
    cylinder: {
      topRadius: 50,
      bottomRadius: 100.0,
      material: new Cesium.Color(1, 1, 0, 0.5),
      length: 200.0,
      outline: true,
      outlineColor: Cesium.Color.WHITE,
    },

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HM-hhxx!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值