基于Cesium 1.58
加载glb模型
模型有几个部分构成,可以分别控制某部分的位置和状态。
本实例可以模拟发射过程。
Silhouette: 浅色背景,暗色轮廓
支持模型混合状态(?没想到更好的描述)
渲染效率
帧率显示
var scene = viewer.scene;
scene.debugShowFramesPerSecond = true;
3D Models节点 调整
可调整3d tiles的高度
Batch:一批 Hierarchy: 层次体系
Clipping:裁剪
裁剪模型,点云,BIM,
选择3D Tiles的一部分
根据高度调整颜色。
根据纬度调整颜色。
根据距离调整颜色。
根据名称正则调整颜色。
根据高度调整显示隐藏。
Inspector:监视器
Interactivity:相互作用 相应鼠标事件,控制模型的显示、隐藏,获取信息
annotate:做注解
Interior:内部
attenuation:衰减
Ambient:周围环境的 occlusion:包藏;吸着;闭塞,闭合
用了arcgis的服务。
测试性能
Billboard: 广告牌
可以设置Billboard的颜色,旋转、透明度,放缩。
就是贴图片
Bloom:开花;
Marble:大理石;
切换影像
var label = viewer.entities.add({
position : new Cesium.CallbackProperty(getMidpoint, isConstant),
label : {
// This callback updates the length to print each frame.
// 回调属性
text : new Cesium.CallbackProperty(getLength, isConstant),
font : '20px sans-serif',
pixelOffset : new Cesium.Cartesian2(0.0, 20)
}
});
键盘按键控制摄像头位置
var camera = viewer.camera;
var moveRate = cameraHeight / 100.0;
if (flags.moveForward) {
camera.moveForward(moveRate);
}
控制摄像头,
位置、看的范围、途经区域飞行
Cardboard: 硬纸板
限制到一个范围内
var coffeeBeltRectangle = Cesium.Rectangle.fromDegrees(-180.0, -23.43687, 180.0, 23.43687);
viewer.scene.globe.cartographicLimitRectangle = coffeeBeltRectangle;
primitives:原型
监视器
选择一个地形瓦片,输出基本信息。
选择一个原型primitive,显示信息
var viewer = new Cesium.Viewer('cesiumContainer', {
terrainProvider: Cesium.createWorldTerrain()
});
var circleOutlineGeometry = new Cesium.CircleOutlineGeometry({
center : Cesium.Cartesian3.fromDegrees(-100.0, 40.0),
radius : 200000.0
});
// Create the circle geometry.
var circleGeometry = new Cesium.CircleGeometry({
center : Cesium.Cartesian3.fromDegrees(-95.0, 43.0),
radius : 250000.0,
vertexFormat : Cesium.PerInstanceColorAppearance.VERTEX_FORMAT
});
贴地形绘制
贴3D tiles 绘制
分类??
Clustering: 群聚;聚集
标注聚集到一起
Coplanar: 共平面
Corridor:走廊,过道
牛奶人
Corridor:走廊
Articulations 关节,分节
Interpolating:插值
更真实
画线或者画区域
贴地形。
左键开始,右键结束
只是加载了一个夜晚图层
// The Earth at Night, also known as Black Marble 2017 and Night Lights
var viewer = new Cesium.Viewer('cesiumContainer', {
imageryProvider: new Cesium.IonImageryProvider({ assetId: 3812 })
});
可以自定义样式
在geojson定义的小样式图标
//Load a GeoJSON file containing simplestyle information.
//To learn more about simplestyle, see https://github.com/mapbox/simplestyle-spec
//In this particular example, the name of each entity is set to its maki icon identifier.
//Clicking on each billboard will show it's identifier in the InfoBox.
高程、坡度,朝向 渲染图
等高线(为什么没有数字标绘呢)
? 把谷歌地球企业版的数据图层加入了?
Atmosphere: 大气
清楚显示地图中的一块
Cutout: 布或纸上剪下的图案花样
Manipulation: 操作
显示瓦片网格。第0层一分2
可以仔细研究一下。
地球分割成两部分分别显示影像。
左右可切割。
一半清晰一半模糊?
用途在哪里?
控制图层透明度,亮度
动态线
文字标注
各种效果
字体
随着距离远近效果的变化
LensFlare 镜头光晕
CZML分成多个文件,不断加载
左右同步
效果很好
PAMAP:只是一个样例
鼠标悬浮显示经纬度
显示高度
选择 entity
可以识别鼠标在哪个entity上悬浮
切换正交投影和透视投影
投影切换插件
矩形+图片
点击后会爆开
高程切换
获取某点的高程,可以指定层数