Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录

这篇具有很好参考价值的文章主要介绍了Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

说明:

1.在引入Mars3D SDK后正常可以在F12打印的信息中可以看到Mars3D和Cesium版本信息。

Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录,Mars3d,vue,3d,javascript,前端,服务器

2.在项目的package.json文件中同样可以看到安装后的版本号。

Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录,Mars3d,vue,3d,javascript,前端,服务器

Mars3D对Cesium版本对应关系:

1.正常情况下mars3d依赖的cesium均是最新版本,并且对cesium版本无特殊要求,版本间均是兼容的,因为cesium本身的变更造成一些版本间不兼容情况,目前版本依赖关系如下:

Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录,Mars3d,vue,3d,javascript,前端,服务器

2.Cesiumv1.102(2023-02-01)默认改为 WebGL2 渲染,与之前版本的shader语法部分不兼容。 具体详情参看1.102更新日志 (https://github.com/CesiumGS/cesium/blob/1.102/CHANGES.md),

相关版本依赖关系是:

Mars3D v3.4.x及之前 版本,须使用 mars3d-cesiumv1.96及之前的版本 (mars3d-cesium 1.97-1.100 未做发布)
Mars3D v3.5.x及之后 版本,须使用 mars3d-cesiumv1.104及之后的版本
处理方式☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
无法兼容,3.4之前版本需要用1.102之后版本mars3d-cesium时,需要shader需要改写为 WebGL2 语法,或者构造Map时scene参数下加requestWebgl1: true参数。

3.Cesiumv1.97(2022-09-01)的gltf/3dtiles与之前版本完全不兼容,采用了新的glTF架构代码重写,影响3dtiles部分功能无法使用和部分gltf/3dtiles数据报错。 具体详情参看1.97更新日志 (opens new window),

相关版本依赖关系是:

Mars3D v3.4.x及之前 版本,须使用 mars3d-cesiumv1.96及之前的版本 (mars3d-cesium 1.97-1.100 未做发布)
Mars3D v3.5.x及之后 版本,须使用 mars3d-cesiumv1.104及之后的版本
如果使用其他版本会造成的问题(除此之外不影响)

模型裁剪、压平等功能无法使用;
建筑物特效等涉及3dtiles模型的地方可能无效。
部分shader需要改写为 WebGL2 语法,或者构造Map时scene参数下加requestWebgl1: true参数
处理方式☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
无法兼容,但您如果对模型编辑等功能没有特殊要求,可以混用。

4.Cesiumv1.92(2022-04-01)的Promise与之前版本不兼容,具体可以参考其官方说明 (opens new window),

与之对应的是Mars3Dv3.3.x(内部依赖Cesiumv1.92+),所以针对不同情况的处理方式不同。

#出现不兼容的场景
Mars3D v3.2.x及之前 版本如果需要使用 Cesiumv1.92及之后版本时
Mars3D v3.3.x及之后 版本如果需要使用 Cesiumv1.91及之前版本时
运行后浏览器提示找不到Cesium命名空间之类错误时
处理方式☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
可以在引入Cesium后,引入/mars3d/plugins/compatible/目录下的2个兼容处理文件cesium-version (opens new window)和cesium-when (opens new window)即可, 如下所示:

mars3d: [
    "Cesium/Widgets/widgets.css", //cesium
    "Cesium/Cesium.js",
    "mars3d/plugins/compatible/cesium-version.js", //cesium版本间兼容处理
    "mars3d/plugins/compatible/cesium-when.js", 
    "mars3d/mars3d.css", //mars3d
    "mars3d/mars3d.js",
]

5.加载3dtiles数据的时候,发现存在报错:

 message: 'The tileset must be 3D Tiles version 0. or 1.0., stack: 'Error,提示是3dtiles数据数据的版本原因。

Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录,Mars3d,vue,3d,javascript,前端,服务器

此时查看了cesium版本是1.83  mars版本3.0.38,那么就需要在使用cesiumlab处理数据的时候勾选tilset1.0,因为cesium版本用不了1.1版本的3dtiles数据。

Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录,Mars3d,vue,3d,javascript,前端,服务器

cesium用1.91版本之前使用cesiumlab处理3dtiles数据的时候都需要勾选tilset1.0。

3dtiels数据在使用cesiumlab处理的时候,都需要与cesium版本相匹配。

Mars3D 三维可视化平台 | 火星科技 | 地图开发文章来源地址https://www.toymoban.com/news/detail-788067.html

到了这里,关于Mars3D与mars3d-cesium版本间兼容造成3dtiles和gltf数据处理相关记录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • mars3d绘制区域范围(面+边框)

    1、图例(绿色面区域+白色边框)  2、代码 1)、绘制区域ts文件 解释: 1、new mars3d.layer.GeoJsonLayer      生成矢量图层 2、styleField       \\\"levels\\\" 是在json文件中区分不同级别景区的标志,值为1、2、3等 3、styleFieldOptions       根据styleField获取到的值进行区分,划分不同颜色的

    2024年02月15日
    浏览(48)
  • Vue2项目使用mars3d

    或参考webpack.config.js写法进行修改

    2024年02月14日
    浏览(44)
  • Mars3D Studio 的使用方法

    mars3d Studio 是 mars3d 研发团队于近期研发上线的一款 场景可视化编辑平台。拥有资源存档、团队协作、定制材质等丰富的功能。可以实现零代码构建一个可视化三维场景。 (1)数据上传:目前支持 tif 影像上传、 3dtitles 、 gltf 小模型上传以及矢量数据( shp、gesojson、kml ) 下

    2023年04月16日
    浏览(101)
  • vue3 mars3d 天地图

                    npm i mars3d                  npm i mars3d-heatmap (热力图,需要的话安装)                 npm i -D copy-webpack-plugin                 增加mars3d目录配置,修改vue.config.js中configureWebpack里的内容如下:  使用: 最后附上天地图mapUrl地址

    2024年02月15日
    浏览(37)
  • cesium内部相同坐标在不同高度的2个点的属性机制坐标会gltf模型角度值异常问题mars3d的处理办法

    模型一直向上运动的正常效果: 问题场景: 1.new mars3d.graphic.ModelPrimitive({使用addDynamicPosition(设置并添加动画轨迹位置,按“指定时间”运动到达“指定位置”时发现,如果是同一个点位不同高度值的y轴竖直向上方向的运动。 指定pitch:270偏转角度的时候,会出现模型的角度值

    2024年01月18日
    浏览(47)
  • Mars3d项目启动上的一些坑

    最近新入职了一家公司,公司新开了有个未来城市的项目,需要用到3D城市建模,公司老总选了Mars3d作为前端框架,项目分给我了,又是一个全新的领域,开搞吧! 下面是自己遇到的几个小问题,记录一下: 1 npm install copy-webpack-plugin --save -dev 时报错 解决办法:npm install cop

    2024年02月05日
    浏览(46)
  • Mars3D使用过程遇到的问题记录【持续更新】

    需要标注线面的角度heading 2022年6月23日 heading计算方式: https://turfjs.fenxianglu.cn/ 计算两点之间的角度 直接F12在控制台可以计算 eg: 加载gltf模型,模型是透明的,需要改为不透明 2022年6月23日 用文本编辑器打开.gltf,把里面的\\\"alphaMode\\\":\\\"BLEND\\\"改成\\\"alphaMode\\\":\\\"OPAQUE\\\" 模型旋转之后,标

    2024年02月08日
    浏览(59)
  • vue3+vite项目集成mars3d

    创建一个项目 yarn create vite // vue - ts 安装依赖 yarn add vite-plugin-mars3d -D yarn add mars3d 控制台警告 warning \\\" mars3d@3.5.0\\\" has unmet peer dependency \\\"@turf/turf@^6.5.0\\\". warning \\\" mars3d@3.5.0\\\" has unmet peer dependency \\\"mars3d-cesium@~1.103.1\\\". 安装 yarn add  @turf/turf mars3d-cesium 修改 vite.config.ts 修改srcApp.vue 就可

    2024年02月15日
    浏览(48)
  • vue3使用Mars3D写区块地图

    因为我也是第一次使用,所以我是把插件和源文件都引入了,能使用启动 源文件 下载地址: http://mars3d.cn/download.html 放入位置 在index.html中引入 引入插件 我是封装的组件,代码的使用和意义 我直接放在备注中 大体布局 父组件 添加地图内部数据和地图外部数据的方法 ,我都

    2024年01月20日
    浏览(52)
  • vue集成mars3d后,basemaps加不上去

    首先: template   div id=\\\"centerDiv\\\" class=\\\"mapcontainer\\\"     mars-map :url=\\\"configUrl\\\" @οnlοad=\\\"onMapload\\\" /   /div /template script import MarsMap from \\\'../components/mars-work/mars-map.vue\\\' import * as mars3d from \\\'mars3d\\\' //npm install mars3d-echarts --save import \\\'mars3d-echarts\\\' const Cesium = mars3d.Cesium export default {   // eslint-disabl

    2024年02月10日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包