随笔分类 - 图形/Cesium中阶
摘要:原文:https://cesium.com/blog/2022/10/05/tour-of-the-new-gltf-architecture-in-cesiumjs/ CesiumJS 和 glTF 之间有一段很长的合作关系。在 2012 年,CesiumJS 就实现了一个 glTF 加载器,是最
阅读全文
摘要:CesiumJS 更新日志 1.96 与 1.97 - 新构建工具 esbuild 体验及 Model API 更替完成 截止发文,1.97 还未发布,但已经在源码仓库完成了 Model API 的替换,文章会跟进。本文着重介绍新的构建指令的用法(配套 esbuild 的使用),见第三节。 首先介绍
阅读全文
摘要:很高兴你能在浮躁的年代里还有兴趣阅读源代码,CesiumJS 至今已有十年以上,代码量也积累了三十多万行(未压缩状态)。 我也很荣幸自己的文章能被读者看到,如果对你有帮助、有启发,点个赞就是对我最大的鼓励,感激不尽。本系列文章写于 2022 年,梳理的是 CesiumJS 前端库中的主要源码结构,不
阅读全文
摘要:CesiumJS 对需要网络请求的一切资源都进行了统一的封装,也就是 Resource 类。 在 XHR 技术横行的年代,就出现过 ajax 这种神器,但是 Cesium 团队选择了自己封装 XHR。后来 ES6 出现了 Promise API,axios 再次封装了 XHR,但是 Cesium 团
阅读全文
摘要:3DTiles 与 I3S 是竞争关系,可是比起生态开放性、数据定义的灵活性与易读性来说,3DTiles 比 I3S 好太多了。由于数据生产工具的开发者水平参差不齐,且数据并不存在极致的、万能的优化方法,故 3DTiles 1.0 时代的一些工具可能导致的数据渲染质量问题,让 3DTiles 的性能
阅读全文
摘要:三维模型架构(即 Scene/Model 目录下的模块)有别于旧版模型 API(即 Scene/Model.js 模块为主的一系列处理 glTF 以及处理 3DTiles 点云文件的源码,已在 1.97 之后移除),它重新设计了 CesiumJS 中的场景模型加载、解析、渲染、调度架构,更合理,更强
阅读全文
摘要:本篇涉及到的所有接口在公开文档中均无,需要下载 GitHub 上的源码,自己创建私有类的文档。 npm run generateDocumentation -- --private yarn generateDocumentation -- --private pnpm generateDocume
阅读全文
摘要:API 回顾 在创建 Viewer 时可以直接指定 影像供给器(ImageryProvider),官方提供了一个非常简单的例子,即离屏例子(搜 offline): new Cesium.Viewer("cesiumContainer", { imageryProvider: new Cesium.T
阅读全文
摘要:
0. 前言 Primitive API 是公开的 API 的最底层了,它面向的场景是高性能、可自定义材质着色器(Appearance API + FabricMaterial Specification)、静态三维物体。 尽管如此,Primitive API 仍然封装了大量几何体类、材质类、WebW
阅读全文
0. 前言 Primitive API 是公开的 API 的最底层了,它面向的场景是高性能、可自定义材质着色器(Appearance API + FabricMaterial Specification)、静态三维物体。 尽管如此,Primitive API 仍然封装了大量几何体类、材质类、WebW
阅读全文
摘要:回顾 书接上文,Scene.js 模块内的 render 函数会将控制权交给 WebGL,执行 CesiumJS 自己封装的指令对象,画出每一帧来。 模块内的 render 函数首先会更新一批状态信息,譬如帧状态、雾效、Uniform 值、通道状态、三维场景中的环境信息等,然后就开始更新并执行指令,
阅读全文
摘要:0. 前置约定 对类的使用,不添加 Cesium 命名空间前缀,例如对于 Viewer,不会写 Cesium.Viewer,默认使用 ESM 格式解构导入类; JavaScript 代码使用最简格式(源码除外),不加分号,不用双引号,少注释,双空格缩进 本系列说明 佛系连载,想到什么写什么。 202
阅读全文
摘要:1 问题起因 我使用 vite2 + vanillajs 模板创建 CesiumJS 项目,其中,main.js 是这样的: import { Viewer } from 'cesium' import './style.css' import 'cesium/Source/Widgets/widg
阅读全文
摘要:此处介绍的,是 3DTiles 1.0(不含 next),以及 i3s 1.7 1. 相同点 均将三维模型通过转换的手段细碎化,使得局部加载压力降低,渲染性能有了提高的可能性。 均使用树结构这种空间索引类型进行原始模型空间上的分割,允许使用常见的树结构。 二者在树的末梢,又叫叶子节点,也即真正承载三
阅读全文
摘要:博客园 @四季留歌 项目工程下载(腾讯微云):点我 缺点:必须安装 cesium 依赖和几个 vite 插件,起项目时略微麻烦,部署 cdn 较麻烦 优点:打包速度起飞,构建后的成果代码网络传输效率最佳 安装依赖 yarn add cesium # 这个是给开发时 vite 的 esbuild 找模
阅读全文
摘要:与直接调用官方 API 不同,本例直接使用 Geometry 和 Appearance 类进行构造图形,灵活度较大。 博客园 @四季留歌 1 目的与结果 有如下一个经纬高数组,表示三角形的三个点,逆时针顺序: const coords_geo = [ [112.470, 25.694, 200000
阅读全文

浙公网安备 33010602011771号