解决使用XbsjEarth提供的Obj.Tileset方法加载3dtile模型,却无法显示出来的问题

XbsjEarth

该库提供Obj.Tileset方法,加载3dtile模型,但是在地图上却无法显示出该模型,且控制台也没有报错,核心代码如下所示:

const getEarth = (...p) => {
   
    for(let pi of p){
   
        if(pi instanceof XE.Earth){
   
            return pi;
        }
        if(typeof pi === 'object'){
   
            let v = null;
            for
### 使用 Blender 将 OSM 文件导出为 FBX 格式 为了实现从OSM文件到FBX格式的转换,通常需要先将地理信息系统(GIS)数据转化为三维建模软件能够识别的形式。对于OpenStreetMap(OSM),这一步骤可能涉及使用专门工具或插件来解析XML或者PBF格式的数据,并将其几何特征映射成3D对象。 然而,Blender本身并不直接支持读取OSM文件。因此,一种常见做法是从第三方资源获取已经处理好的基于OSM数据创建的城市模型或其他结构化场景;另一种方法则是利用Python脚本编写自定义解决方案来进行初步转化[^1]。 一旦拥有了适合导入至Blender环境内的3D资产——无论是通过上述方式之一获得还是其他途径得到——便可以按照常规流程操作: - 打开Blender并将准备好的3D模型加载进来; - 对于多部分组成的复杂物体,建议在此之前完成必要的组合工作以简化后续步骤; - 完成任何所需的编辑之后,选择要导出的对象; - 通过菜单栏`File -> Export -> FBX(.fbx)`选项启动导出过程; - 在弹出窗口设置目标路径及其他参数(如轴向调整、单位比例等),特别注意确保勾选了“Apply Transform”以便正确保存旋转和平移信息[^2]。 ```python import bpy # 设置当前活动对象为所选对象 bpy.context.view_layer.objects.active = bpy.data.objects["YourObjectName"] # 应用变换矩阵使导出更稳定 for obj in bpy.context.selected_objects: bpy.ops.object.transform_apply(location=True, rotation=True, scale=True) # 开始执行FBX导出命令 bpy.ops.export_scene.fbx(filepath="path/to/your/file.fbx", use_selection=True) ``` ### 利用 Cesium Ion 进行 3D Tiles 转换 当拥有经过适当预处理并成功导出了FBX版本的目标建筑群组时,则可借助Cesium平台提供的在线服务进一步加工这些素材成为适用于WebGL渲染引擎消费的内容形式即3D Tiles集。 具体而言,在上传之前应该考虑优化网格细节层次(LOD),剔除不必要的材质贴图以及压缩纹理尺寸等方面的工作来减少最终产物体积大小从而提高加载效率。 访问[Cesium Ion](https://cesium.com/)网站注册账号后即可享受这项便捷的服务特性: - 登录账户进入仪表板页面; - 点击左侧导航栏中的"Assets"; - 按照指示上传先前准备完毕的FBX文件; - 系统会自动开始构建对应的Tileset索引树形结构; - 处理完成后可以在项目列表里查看新生成的作品链接用于分享展示或是集成开发当中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值