【Cesium Sandcastle 研究3】- 3D Models
访问地址:
http://localhost:8080/Apps/Sandcastle/index.html?src=3D%20Models.html&label=Tutorials
知识点
var viewer = new Cesium.Viewer('cesiumContainer', {
infoBox : false, // 用于显示信息或描述的小部件。
selectionIndicator : false, // 用于在所选对象上显示指示符的小组件。
shadows : true, // 确定是否由太阳投射阴影。
shouldAnimate : true
});
表示物体的方向和位置
Cesium.HeadingPitchRoll (航向,俯仰,滚动)
旋转表示为航向,俯仰和滚转。航向是围绕负z轴的旋转。俯仰是围绕负y轴的旋转。滚转是围绕正x轴的旋转。
// 角度转弧度
Cesium.Math.toRadians(135);
viewer.entities.removeAll();
var position = Cesium.Cartesian3.fromDegrees(-123.0744619, 44.0503706, height);
var heading = Cesium.Math.toRadians(0);
var pitch = 0;
var roll = 0;
var hpr = new Cesium.HeadingPitchRoll(heading, pitch, roll);
var orientation = Cesium.Transforms.headingPitchRollQuaternion(position, hpr);
var entity = viewer.entities.add({
name : '../../SampleData/models/CesiumAir/Cesium_Air.glb',
position : position,
orientation : orientation,
model : {
uri : url,
minimumPixelSize : 128,
maximumScale : 20000
}
});
viewer.trackedEntity = entity;
模型
关于 glb 与 gltf。对于比较小体量的 3D物体,可以考虑这两种形式。
GLTF文件实际上不是单个文件。相反,它们是包含JSON文档的文件夹,然后还有一些图片,以及其他包含几何图形,纹理,凹凸贴图等的文件夹。
其他文件夹都是通过一个相对URLS进行引用,因此你一般可以将文件夹转储到Web服务器上,直接引用GLTF文件,其余资源将正确加载。
但如果你使用的是CDN而非自己的Web服务器,则可能无法控制相对URL,而且它们会出现问题。
相反,你可以将GLTF转换为名为GLB的二进制格式,一个包含所有资源的单个文件。
然后,这个单个文件可以放在你的CDN上并直接引用。
https://yivian.com/news/51717.html