首次使用Cesium加载3D数据不成功
接此;
https://blog.csdn.net/bcbobo21cn/article/details/110454547
参阅相关教程;Cesium加载3D数据是通过3D Tiles进行;
3D Tiles是cesium小组定义的一种数据集;格式公开;
先看一下有没有在线示例3D Tiles,有的话使用其url来做一个示例;
看cesium网,cesium中文网;需要注册;
看示例,示例带有示例3D Tiles文件;
基本的加载代码如下;
<script>var viewer = new Cesium.Viewer("cesiumContainer");var palaceTileset = new Cesium.Cesium3DTileset({
url: './SampleData/Cesium3DTiles/Classification/Photogrammetry/tileset.json'
//或者url: 'http://ip:port/www/DAEPalace/tileset.json'
});var longitude = 114.33;
var latitude = 30.35;
height = 150;
var heading = 2;
palaceTileset.readyPromise.then(function(argument) {//经纬度、高转笛卡尔坐标var position = Cesium.Cartesian3.fromDegrees(longitude, latitude, height);var mat = Cesium.Transforms.eastNorthUpToFixedFrame(position);var rotationX = Cesium.Matrix4.fromRotationTranslation(Cesium.Matrix3.fromRotationZ(Cesium.Math.toRadians(heading)));Cesium.Matrix4.multiply(mat, rotationX, mat);palaceTileset._root.transform = mat;
})viewer.scene.primitives.add(palaceTileset); </script>
使用json数据的url来new一个Cesium3DTileset类对象;
然后把此对象添加到viewer.scene上面;
可以通过指定经纬高调整模型位置:
由经纬度和height得到一个position;
由position得到一个mat,矩阵;
fromRotationTranslation是坐标转换方式;
Cesium.Matrix4.multiply(mat, rotationX, mat), 矩阵转换以后获得一个新的mat;
palaceTileset._root.transform = mat,mat赋给数据集的transform参数;
运行一下;然后定位到加载的经纬度,114.33,30.35;没有3D数据出来;只有此经纬度的底图;
调整不同的参数;height,heading;3D数据还是没出来;
不同的时候错误如下;
从错误来看是加载的某些参数不对;
它的3D数据是如下;一个json文件,一个b3dm文件;如果自己有一个3d型的话需要自己转换;有时间再继续;
首次使用Cesium加载3D数据不成功相关推荐
- 首次使用Cesium加载3D数据成功
接此: https://blog.csdn.net/bcbobo21cn/article/details/111305160 `代码同前文:加载不同的数据,都不能加载出来: var palaceTil ...
- Cesium加载3D Tiles数据
使用原生Cesium加载3D Tiles数据,并实现对图层的选中.样式的修改.图元的隐藏. 实现代码 <!DOCTYPE html> <html lang="en" ...
- Cesium加载大数据量地下管线
Cesium加载大数据量地下管线 Cesium优化加载 管线加载 管井.摄像头.交通信号灯等模型加载 与倾斜摄影模型结合加载 Cesium优化加载 管线.管井.路灯.交通信号灯.接电箱等模型使用Pri ...
- vite+cesium加载3DTile数据
Cesium 3D Tile是Cesium的一种特有的3D模型格式,其文件名后缀为.b3dm,而要在自己开发的平台上调用这些3D Tile,一般为通过后缀为.json格式的文件来调用.b3dm格式的3 ...
- Cesium加载GeoJson数据(shp转化的json数据)
1.shp转换成json格式 此处整理了两种shp转为json格式的方式:一是使用工具:二是使用ArcGIS进行转换. 1.1.ArcGIS转换 1.使用ArcGIS将shp文件的地理坐标设置为WGS ...
- Cesium加载3D Tiles模型
最近遇到一个问题,使用大疆无人机做的倾斜摄影三维模型,需要加载到地图上进行显示.从大疆的制图软件导出后,三维模型文件的后缀名为b3dm,经查阅资料发现,是3D Tiles格式. 3D Tiles 3D ...
- 自己写的Cesium加载天地图数据服务的方法(亲测可用)
前提条件 1.首先需要了解天地图都有哪些数据服务,具体详见天地图API介绍,如下图所示: 如下地址我将加粗的"vec_c"成为图层标签. http://t0.tianditu.go ...
- cesium加载气象数据
通过cesium的postProcessStages接口改变fragmentShader来实现这些效果 addsnow() { //删除 if (this.snow) this.v ...
- Cesium.js 加载3D模型
一.Cesuimjs介绍 Cesiunjs是一套GIS行业中进行地图渲染的js库,该库使用的WebGL进行地图渲染.并且结合HTML5进行相应,从而实现3D中渲染地图.本篇文章则介绍如何将后缀名为ma ...
最新文章
- Nature Methods:Rob Knight发布Striped UniFrac算法轻松分析微生物组大数据
- UA MATH563 概率论的数学基础 中心极限定理8 弱大数定律 Bernstein多项式逼近
- 撩课-Java每天5道面试题第12天
- 打响进军元宇宙第一枪!网易云信发布两大元宇宙解决方案
- python typeerror console未定义,Python ctypes加载错误:未定义的符号
- odoo13中的模型类(模型属性、字段属性、字段类型)
- 单链表的增、删、查、改、python实现,超详细讲解
- java anonymous class_java declare anonymous class using proxy api
- 浏览器异步加载和同源策略
- python qt build environment
- oracle连接no listener
- 恶魔和梦魇的私语------- 关于软件开发的务虚主义对话(3)
- 关于EAN13码的设置问题
- Debezium报错处理系列十:Could not find existing binlog information while attempting schema only recovery sna
- 小学计算机集体听课评课,徐州市苏山小学开展《好的故事》听评课集体教研活动...
- springboot的jsp应该放在哪_SpringBoot 在项目中使用JSP
- 《数据可视化技术》 太平洋汽车销售分析
- 单精度浮点型(float)和双精度浮点型(double)的区别
- Qt入门-QLabel类
- std::cerr与std::cout区别
热门文章
- Gumbel-Softmax Trick和Gumbel分布 附VAE讲解
- maven初学者(一)
- Python 技术篇 - 修改源码解决中文主机名导致的flask、socket服务起不来问题: ‘utf-8‘ codec can‘t decode byte 0xc0 in position...
- Python 技术篇-连接oracle数据库并执行sql语句实例演示,python连接oracle数据库oci详细配置方法
- 基于51单片机的高频频率计的设计
- [YTU]_2922(Shape系列-8)
- [YTU]_2613( 距离产生美)
- rat/rats--用有理数形式表示矩阵
- 【数据展示】matplotlib中label框亮度设置
- DataFrame关于某一列做归一化处理