Cesium绘制点、矩形、立方体教程
创作时间:
作者:
@小白创作中心
Cesium绘制点、矩形、立方体教程
引用
CSDN
1.
https://m.blog.csdn.net/m0_72030584/article/details/143146686
效果
知识讲解
实体:entity
id:主键,如果没设置,值默认为GUIDname:名称,标识实体availability:可用性show:可见性description:描述position:位置orientation:方向viewFrom:查看此对象的初始偏移量parent:父节点properties:与此实体关联的任意属性Graphics:相关的形状
用于建筑物、塔楼或自然景观的可视化
box:立方体dimensions:立方体的长、宽、高material:立方体的表面颜色或纹理corridor:走廊positions:走廊的路径点width:走廊的宽度cylinder:圆柱length:圆柱体的高度topRadius:圆柱的顶面半径bottomRadius:圆柱的底面半径ellipse:椭圆semiMajorAxis:椭圆的长轴semiMinorAxis:椭圆的短轴rotation:椭圆的旋转角度ellipsoid:椭球radii:椭球的半径(x、y、z 方向的长度)path:路径positions:路径点point:点pixelSize:点的大小(以像素为单位)color:点的颜色
用于显示区域或路径,例如国界、河流
polygon:多边形hierarchy:多边形的顶点material:多边形的颜色或纹理polyline:折线positions:折线的点width:折线的宽度polylineVolur:折线体shape:横截面形状positions:路径点rectangle:矩形coordinates:矩形的经纬度边界material:矩形的颜色或纹理wall:墙positions:墙的底部位置点minimumHeights:墙的底部高度maximumHeights:墙的顶部高度
用于在地图上标注重要位置或展示信息
billboard:广告牌image:广告牌显示的图像scale:图像缩放比例label:标签text:显示的文本font:字体样式
用于将更复杂的 3D 模型如建筑、车辆或其他对象导入场景中进行展示
model:模型uri:3D 模型文件的路径scale:模型的缩放比例
创建立方体实体
const redbox = viewer.entities.add({
name: 'xx',
position: Cesium.Cartesian3.fromDegrees(经度,纬度,高度),
box: {
dimensions: new Cesium.Cartesian3(长, 宽, 高), // 立方体尺寸
material: Cesium.Color.RED, // 立方体填充颜色
outline: true, // 是否显示边框
outlineColor: Cesium.Color.BLACK // 边框颜色
}
});
矩形
viewer.entities.add({
rectangle: {
outline: true, // 指定是否为矩形绘制轮廓线
outlineColor: Cesium.Color.BLACK, // 矩形轮廓线的颜色
material: Cesium.Color.BLUE.withAlpha(0.5), // 矩形的填充颜色
coordinates: Cesium.Rectangle.fromDegrees(西经, 南纬, 东经, 北纬) // 矩形实体的关键属性
}
});
创建实体
const redbox = viewer.entities.add({
// 实体配置项
});
修改实体属性
redbox.box.dimensions = new Cesium.Cartesian3(60.0, 40.0, 70.0);
redbox.box.material = Cesium.Color.BLUE;
添加事件监听
redbox.click = function(entity) {
console.log('立方体被点击');
};
应用代码
viewer.entities.add({
position: Cesium.Cartesian3.fromDegrees(0.1, 0.1, 1000000),
point: {
pixelSize: 12,
color: Cesium.Color.RED
}
});
// 添加一个立方体
const redbox = viewer.entities.add({
name: "Red box with black outline",
position: Cesium.Cartesian3.fromDegrees(116.397, 39.917, 0),
box: {
dimensions: new Cesium.Cartesian3(40.0, 30.0, 50.0), // 立方体尺寸
material: Cesium.Color.RED.withAlpha(0.5), // 立方体颜色
outline: true, // 是否显示边框
outlineColor: Cesium.Color.BLACK // 边框颜色
}
});
viewer.zoomTo(redbox);
// 创建矩形实体并设置 coordinates 属性等相关参数属性
var rectangles = [
{
coordinates: Cesium.Rectangle.fromDegrees(116.297, 39.817, 116.497, 40.017),
material: Cesium.Color.BLUE.withAlpha(0.5), // 蓝色,50%透明
height: 0, // 高度为0,贴地绘制
outline: true,
outlineColor: Cesium.Color.BLACK
},
{
coordinates: Cesium.Rectangle.fromDegrees(116.297, 39.817, 116.497, 40.017),
material: Cesium.Color.RED.withAlpha(0.5), // 红色,50%透明
height: 1000, // 提升到一定高度,悬浮在第一个矩形上
outline: true,
outlineColor: Cesium.Color.BLACK
}
];
// 快速创建多个矩形实体
rectangles.forEach(function(rectangleData) {
viewer.entities.add({
rectangle: rectangleData
});
});
// 自动调整视角以适应矩形范围
viewer.zoomTo(viewer.entities);
热门推荐
孩子面对学习过程中的自我挑战时如何设定目标?
复旦大学推出海外本科留学生直博项目,引发社会热议
柳州国庆假期超全打卡攻略
日元汇率的历史和现实:日元汇率分析框架
轻钢自建房VS传统砖混房:谁更胜一筹?
应税利息:企业和个人需要了解的税收知识
揭开网购动漫手办骗局:商家卷钱跑路 消费者维权太难
房产税增值税如何计算
偿债能力分析的计算方法是什么?这种计算方法的准确性如何?
考研国家线什么意思 如何划分
政治学和搞政治可不是一码事
壬辰月是什么意思 壬辰月五行属什么
鼻中膈弯曲:原因、症状、治疗方法一次看懂
CentOS停止维护,如何应对?
家庭中如何有效检测与控制甲醛含量:守护健康,从我做起
陈平与吕后:权谋之下的生存智慧
2024医工交叉十大创新热点方向发布,生物医学大模型排第一
美国断言川藏铁路修不成?中国耗资3722亿至今未完工,进展如何了
一次搞懂10大热门护肤成分!养好肌肤很简单
家长每周都来旁听,远郊农村学校开设的儿童哲学课,有何魔力?
别人喊你参加酒局,你不想去,千万别说“我有事”
无水硫酸钠的化学用途、属性、应用场景、存储与运输及行业分析
安岳:上户难题不再难 收养家庭笑开颜
羊驼为什么叫草泥马
基金涨幅的历史走势分析,掌握基金涨幅的历史表现
八字需要地点吗?生辰八字与出生地的关系探讨
校园网能监控学生用手机吗?
喝酱香型白酒有什么好处?
新空调不制热的原因及解决方法
特种设备事故隐患分类分级标准详解