(五)Cesium加载3Dtiles报错

目前大多网站写的加载3Dtiles都是如下:

const tileset = await Cesium.Cesium3DTileset(
'http://localhost:9003/model/tKwkn4XY6/tileset.json'
);
viewer.scene.primitives.add(tileset);
viewer.zoomTo(tileset) // 缩放到 tileset 范围
但是!!!

Cesium的API修改了,这样是会报错的

API文档:Cesium3DTileset - Cesium 文档

 

此对象通常不直接实例化,请使用 Cesium3DTileset.fromUrl。

好吧,还是得多看官方文档。

try {
const tileset = await Cesium.Cesium3DTileset.fromUrl(
'src/assets/beforeWater2/tileset.json'
)
viewer.scene.primitives.add(tileset,{
disableDepthTestDistance: Number.POSITIVE_INFINITY
});
viewer.zoomTo(tileset);

// 将3d tiles离地高度抬升20米
let cartographic = Cesium.Cartographic.fromCartesian(
tileset.boundingSphere.center
);

let surface = Cesium.Cartesian3.fromRadians(
cartographic.longitude,
cartographic.latitude,
0.0
);

let offset = Cesium.Cartesian3.fromRadians(
cartographic.longitude,
cartographic.latitude,
20.0
);

let translation = Cesium.Cartesian3.subtract(
offset,
surface,
new Cesium.Cartesian3()
);

tileset.modelMatrix = Cesium.Matrix4.fromTranslation(translation);
// viewer.scene.primitives.add(tileset);
// viewer.zoomTo(tileset) // 缩放到 tileset 范围
} catch (error) {
console.error(`Error creating tileset: ${error}`);
}
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/a974313302/article/details/137563644

posted @   疯子110  阅读(153)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
历史上的今天:
2020-11-26 springboot -- jar 包启动/ 杀死进程/ 停止进程
2020-11-26 springboot,修改配置文件不起作用
2020-11-26 Springboot读取自定义的yml文件中的List对象
2020-11-26 java使用lambda表达式对List集合进行操作(JDK1.8)
2020-11-26 SpringBoot项目 部署到服务器的tomcat下
2018-11-26 C#软件授权、注册、加密、解密模块源码解析并制作注册机生成license
2015-11-26 jQuery EasyUI combobox多选及赋值
点击右上角即可分享
微信分享提示