cesium obj转b3dm转换及加载

参考文献:github:https://github.com/PrincessGod/objTo3d-tiles

https://blog.csdn.net/taiyang1987912/article/details/84339865    

1、npm install -g obj23dtiles2、新建一个json,设置obj的坐标等信息,经纬度采用弧度制,高程按地形高程输入,最多保留小数点后五位,内容如下  
{
    "longitude":      -1.31968,
    "latitude":       0.698874,
    "transHeight":    1142.59807,
    "region":         true,      // Using region bounding volume.
    "box":            false,        // Using box bounding volume.
    "sphere":         false         // Using sphere bounding volume.
//"minHeight": 0.0, // BoundingVolume minimum height in meters.
//"maxHeight": 40.0, // BoundingVolume maximum height in meters.
//"tileWidth": 200.0, // Tile horizontal(cross longitude) length in meters.
//"tileHeight": 200.0, // Tile virtical(cross latitude) length in meters.
//"geometricError": 200.0, // Tile geometric error in meters.
}
3、cd至程序执行的目录下,./代表当前目录,前面的路径为obj路径,后面的路径为json路径,生成tileset.json及b3dm文件   obj23dtiles -i ./east/east.obj --tileset -p ./east/eastoptions.json4、将生成的文件导入至cesium目录下,然后加入以下代码对3dtile数据进行加载
var tileset = new Cesium.Cesium3DTileset({
    url: "model/out8/tileset.json",
    shadows:Cesium.ShadowMode.DISABLED,//去除阴影
});
//
viewer.scene.primitives.add(tileset);
viewer.zoomTo(tileset)

  

 ps:程序也支持gltf、glb、i3dm

原文地址:https://www.cnblogs.com/implementer/p/11027441.html

时间: 2024-11-03 22:56:50

cesium obj转b3dm转换及加载的相关文章

解析OBJ模型并将其加载到Unity3D场景中

??各位朋友,大家好,欢迎大家关注我的博客,我是秦元培,我的博客地址是http://qinyuanpei.com.今天想和大家交流的是解析obj模型并将其加载到Unity3D场景中,虽然我们知道Unity3D是可以直接导入OBJ模型的,可是有时候我们并不能保证我们目标客户知道如何使用Unity3D的这套制作流程,可能对方最终提供给我们的就是一个模型文件而已,所以这个在这里做这个尝试想想还是蛮有趣的呢,既然如此,我们就选择在所有3D模型格式中最为简单的OBJ模型来一起探讨这个问题吧! 关于OBJ模

kettle转换JavaScript加载外部js文件

日常开发中,时常会出现这样一种情况.有大量的函数是通用的.而每个JavaScript里面写一遍,给维护带来很大的困扰.因而需要将公共的函数写在外部js文件中.这时就需要引入外部的公共文件了.下面是在转换里的JavaScript组件中引入外部公共js文件. //加载js文件 LoadScriptFile(getVariable("Internal.Transformation.Filename.Directory", "") +"/common_Functi

局域网Cesium离线影像及瓦片影像地图加载

1.Cesium简介 优点: cesium展示地图数据效果比较好,解析2D地图各种不同服务类型的数据源,比如百度地图.天地图.arcgis地图.BingMap.openStreetMap.MapBox等等:解析地形图加载:解析3D模型,包括动态加载以及3Dtitles切片形式加载展示,尤其是3Dtitles,大大的加快了展示3D模型的展示效率: Cesium封装部分地图控件,直接调用即可,不用自己写: 缺点: 跟商业3DGIS软件对比,比如skyline,cesium三维分析功能较弱, cesi

openGL加载obj文件+绘制大脑表层+高亮染色

绘制大脑表层并高亮染色的工作是以openGL加载obj文件为基础的,这里是我们用到的原始程序:只能加载一个obj文件的demo. 然而,一个完整的大脑表层是由很多分区组成的,因此我们的程序需要支持两个功能: 同时加载多个obj文件. 每个大脑分区obj文件保持其相对位置. 明白了需求后,我们就可以开始修改代码了~ glmUnitize函数的作用是单位化,也就是把模型通过平移和缩放变换限制到3维坐标系中点为中心的一个单位正方体区域内.所以控制obj显示位置是在glmUnitize()函数中,源代码

cesium 加载倾斜摄影模型(这里有一坑)

代码如下: 1 // Construct the default list of terrain sources. 2 var terrainModels = Cesium.createDefaultTerrainProviderViewModels(); 3 4 // Construct the viewer with just what we need for this base application 5 var viewer = new Cesium.Viewer('cesiumCont

滚动加载

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Document</title> <style type="text/css"> html { font-size: 20px; } #main{ width: 800px; height: 400px; overflow

Android异步加载

Android异步加载 一.为什么要使用异步加载? 1.Android是单线程模型 2.耗时操作阻碍UI线程 二.异步加载最常用的两种方式 1.多线程.线程池 2.AsyncTask 三.实现ListView图文混排 3-1 实现读取网页中的json数据到ListView中 (图片首先为默认图片) 3.1.1:主布局只有一个ListView和一个listView_item的布局 3.1.2:网页json数据的链接(http://www.imooc.com/api/teacher?type=4&n

创建、加载高级网格和几何体

1.对象合并 使用THREE.Group对象作为组合对象,调用它的add函数附加其他几何体.如下面的代码,创建了两个几何体sphere.cube,然后调用group的add函数,把两个几何体组合在一起.代码中的redraw函数在最后调用了position.BoundingBox()函数,用来定位组合体对象的位置.在positionBoundingBox函数中调用了setFromeObject并且返回了一个THREE.Box3对象.这里先不介绍这个对象,直接看后面的代码,通过box.max和box

Unity5.x版本AssetBundle加载研究

之前说了 “Unity5.x版本AssetBundle打包研究”,没看过的请先看一下:http://www.shihuanjue.com/?p=57再来看本文,有一定的连接性. 先梳理一下思路:要加载一个资源A,必须先去加载它的所有依赖资源要知道这个资源A依赖了哪些资源,必须先去加载AssetBundleManifest通过AssetBundleManifest对象的GetAllDependencies(A)方法,获取它依赖的所有资源.依赖资源都加载了,就可以去真正加载资源A了. 注意点:1.资