Cesium 1.91 更新日志 - MSAA 与原生 Promise 来了

Cesium 1.91引入了MSAA抗锯齿支持,增强了WebGL 2.0性能。同时,开始逐步弃用第三方库,转向原生Promise API。修复了相机获取射线异常,更新了ModelExperimental架构,并在3D Tiles中增加版权显示选项。在1.92版本中,将进一步移除 和 异步库。


不兼容式更新📣

  • 在下一个版本,也就是 Cesium 1.92,第三方库 when.js 将被原生 Promise API 代替。Cesium.when 将被废弃,且于下个版本移除。关于如何升级,请参考下方个人点评,我转载了官方指导文档。
  • 修复了当 Scene 没有渲染时(例如 css 样式设为 none)相机对象的获取射线方法(camera.getPickRay())引发的异常,这个函数会返回 undefined 了。

新增🎉

  • 为 WebGL 2.0 添加 MSAA(多重采样抗锯齿)支持。你可以在创建 Viewer 时传递 msaaSamples 选项,也可以用 Scene.msaaSamples 属性控制。
  • 现在,glTF 模型默认使用 ModelExperimental 架构处理。
  • ModelExpertimental 架构中支持切换背面裁剪。
  • 向 Viewer 和 Scene 类的构造参数中添加 depthPlaneEllipsoidOffset,以解决椭球体平面之下的奇怪渲染问题
  • ModelExperimental 架构中支持了 debugColorTiles
  • ModelExperimental 架构中支持了阴影
  • 在所有的矩阵类中添加了 packArrayunpackArray 方法
  • 为矩阵类添加一些仿射变换帮助函数
    • Matrix2:setScalesetUniformScale</
<think>首先,用户的问题是:“我想用户想知道是否可以在原生Cesium中使用Vue-Cesium组件 请问原生 Cesium 是否兼容 vue-cesium 组件”。这似乎是关于Cesium和Vue-Cesium的兼容性。 从系统级指令中,我需要: - 所有行内数学表达式用$...$格式。 - 独立公式用$$...$$格式并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识,如[^1]。 - 回答结构清晰,帮助用户逐步解决问题。 - 参考站内引用:引用[1], [2], [3], [4]。 站内引用内容: - 引用[1]: 关于Cesium和Vue-Cesium的介绍。 - 引用[2]: 关于在Vue中集成原生Cesium的配置。 - 引用[3]: Vue + Cesium + Ant Design Vue Pro的配置教程。 - 引用[4]: Vue2 + Cesium 1.89.0使用cesium-navigation-es6的教程。 用户的问题是:原生Cesium是否兼容vue-cesium组件?意思是,能否在原生Cesium项目中使用Vue-Cesium组件。 关键点: - 原生Cesium:指纯JavaScript的Cesium库。 - Vue-Cesium:是一个Vue组件库,用于在Vue应用中封装Cesium功能。 在原生Cesium中直接使用Vue-Cesium组件可能不合适,因为Vue-Cesium是为Vue框架设计的。它封装了Cesium的功能,使其易于在Vue组件中使用。 从引用中: - 引用[1]提到Vue for Cesium是一个框架,帮助简化开发。 - 引用[2]和[3]讨论了如何在Vue项目中集成原生Cesium- 引用[4]是关于在Vue中使用Cesium插件。 所以,原生Cesium是纯JS库,而Vue-Cesium是一个Vue组件库。它们不是直接兼容的;Vue-Cesium依赖于Vue框架。 回答结构: 1. 澄清概念:解释原生Cesium和Vue-Cesium是什么。 2. 兼容性问题:直接说明是否兼容。 3. 替代方案:建议如何在原生Cesium中使用类似功能,或如何在Vue项目中集成。 4. 引用相关引用以支持观点。 5. 生成相关问题。 最终回答: - 使用中文。 - 结构清晰。 - 添加引用标识。 - 生成相关问题。 逐步回答: 1. 介绍原生Cesium和Vue-Cesium。 2. 解释兼容性:原生Cesium是独立的JS库,Vue-Cesium是为Vue设计的组件,因此不能在原生Cesium中直接使用Vue-Cesium组件。 3. 建议:如果要在原生Cesium中使用,可能需要手动集成或使用其他方法;如果使用Vue,可以集成原生Cesium或直接使用Vue-Cesium。 4. 引用相关部分:例如,引用[2]和[3]展示了如何在Vue中配置原生Cesium。 5. 生成相关问题。 相关问题生成: - 基于主题:Cesium、Vue、兼容性。 - 例如: 1. 如何在原生Cesium项目中集成Vue组件? 2. Vue-Cesium的主要优势是什么? 3. 在Vue中使用原生Cesium的步骤是什么? 4. 有哪些替代方案来简化Cesium开发? 确保回答真实可靠:基于常识和提供的引用。</think>### 原生 Cesium 是否兼容 vue-cesium 组件? 原生 Cesium 是一个独立的 JavaScript 库,专注于高性能 3D 地理空间可视化,它不依赖于任何前端框架(如 Vue)[^1]。而 vue-cesium 是一个专门为 Vue.js 框架设计的组件库,它封装了 Cesium 的功能,提供声明式组件以简化开发。因此,**原生 Cesium 无法直接兼容 vue-cesium 组件**,原因如下: 1. **架构差异**: - 原生 Cesium 是纯 JavaScript API,需要通过 DOM 操作和事件监听手动集成到页面中。 - vue-cesium 是基于 Vue 的封装,依赖 Vue 的响应式系统和组件生命周期。在原生 Cesium 环境中,Vue 的虚拟 DOM 和组件机制无法直接运行[^1]。 2. **依赖关系**: - vue-cesium 要求项目基于 Vue.js 框架(如 Vue 2 或 Vue 3),而原生 Cesium 项目通常是纯 HTML/JS 应用。如果强行在原生 Cesium 中引入 vue-cesium 组件,会导致依赖冲突(如 Vue 未加载)或渲染错误[^2][^3]。 3. **替代方案**: - **在 Vue 项目中集成原生 Cesium**:如果您希望结合 Vue 的便利性和 Cesium 的功能,可以参考引用[2][^2]和[3][^3]的方法,通过 Webpack 配置(如 `DefinePlugin`)和全局注册,将原生 Cesium 嵌入 Vue 应用。例如: ```javascript // main.js 配置(Vue 项目) import Cesium from 'cesium/Cesium'; import 'cesium/Widgets/widgets.css'; Vue.prototype.Cesium = Cesium; // 全局挂载 ``` 这样可在 Vue 组件中使用原生 Cesium API,而无需 vue-cesium- **使用 vue-cesium 在 Vue 项目中**:如果目标是简化开发,建议直接采用 vue-cesium 库,它提供预封装组件(如地图视图、相机控制),减少学习曲线[^1]。 总之,原生 Cesium 和 vue-cesium 设计目标不同,无法直接互用。选择方案取决于项目框架:纯 JS 项目用原生 Cesium;Vue 项目可选用原生集成或 vue-cesium 以提升效率[^1][^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值