CesiumJS 2022^ 源码解读[0] - 文章目录与源码工程结构
highlight: night-owl theme: arknights很高兴你能在浮躁的年代里还有兴趣阅读源代码,CesiumJS 至今已有十年以上,代码量也积累了三十多万行(未压缩状态)。 我也很荣幸自己的文章能被读者看到,如果对你有帮助、有启发,点个赞就是对我最大的鼓励,感激不尽。本系列文章写于 2022 年,梳理的是 CesiumJS 前端库中的主要源码结构,不涉及着...
highlight: night-owl theme: arknights很高兴你能在浮躁的年代里还有兴趣阅读源代码,CesiumJS 至今已有十年以上,代码量也积累了三十多万行(未压缩状态)。 我也很荣幸自己的文章能被读者看到,如果对你有帮助、有启发,点个赞就是对我最大的鼓励,感激不尽。本系列文章写于 2022 年,梳理的是 CesiumJS 前端库中的主要源码结构,不涉及着...
theme: arknights highlight: night-owlCesiumJS 对需要网络请求的一切资源都进行了统一的封装,也就是 Resource 类。 在 XHR 技术横行的年代,就出现过 ajax 这种神器,但是 Cesium 团队选择了自己封装 XHR。后来 ES6 出现了 Promise API,axios 再次封装了 XHR,但是 Cesium 团队对这...
这篇文章其实早该写了,之前的业余时间一直花在开源项目或其它文章上了。 JSON 解析对于 Flutter 新人来讲是个绕不开的话题,大家都在吐槽 Flutter 没有反射,导致 JSON 解析无法像 Android 那样方便,其实是不必要的,因为可以做到一样方便。 网上讲 JSON 解析的文章很多,大家自行去学习即可,本篇文章直接给出我创造出的、我认为的最佳方案,如有雷同,纯属...
Promise 引入PromiseExecutorresolve不同值的区别then方法catch方法finally方法resolve类方法reject类方法all类方法allSettled方法race方法 引入Promise 我们调用一个函数,这个函数中发送网络请求(我们可以用定时器来模拟); 如果发送网络请求成功了...
在上一篇文章 flv.js源码知识点(上)中主要讲解了flv.js的整理流程,今天讲解其中的网速计算和数据缓存处理。 1 网速计算在音视频播放的场景中,用户的网速是影响体验的重要因素,播放器在播放的过程中,可以计算单位时间获取的数据量来衡量网速。flv.js的实例提供了statistics_info事件获取当前的网速。 flvPlayer.on(statistics_info,...
highlight: a11y-dark theme: devui-blue概述FastJson2是FastJson项目的重要升级,目标是为下一个十年提供一个高性能的JSON库。根据官方给出的性能来看,相比v1版本,确实有了很大的提升,本篇文章我们来看下究竟做了哪些事情,使得性能有了大幅度的提升。 本篇将采用代码测试 + 源码阅读的方式对FastJson2的性能提升做一个较为全...
theme: arknights highlight: night-owl3DTiles 与 I3S 是竞争关系,可是比起生态开放性、数据定义的灵活性与易读性来说,3DTiles 比 I3S 好太多了。由于数据生产工具的开发者水平参差不齐,且数据并不存在极致的、万能的优化方法,故 3DTiles 1.0 时代的一些工具可能导致的数据渲染质量问题,让 3DTiles 的性能、显示...
theme: arknights highlight: a11y-dark三维模型架构(即 Scene/ModelExperimental 目录下的模块)有别于旧版模型 API(即 Scene/Model.js 模块为主的一系列处理 glTF 以及处理 3DTiles 点云文件的源码),它重新设计了 CesiumJS 中的场景模型加载、解析、渲染、调度架构,更合理,更强大。 这...
目录坐标边界查询工具:AreaCity-Query-Geometry性能测试数据测试一:Init_StoreInWkbsFile 内存占用很低(性能受IO限制)测试二:Init_StoreInMemory 内存占用和json文件差不多大(性能豪放)参考:数据库查询测试对比查询坐标对应的省市区县乡镇名称步骤一:准备好省市区县乡镇边界的geojson文件步骤二:运行测试程序进行初始...
前言 文本来总结常见的排序算法,通过 JvavScript 来实现 正文 1、冒泡排序 算法思想:比较相邻两个元素的大小,如果第一个比第二个大,就交换它们。从头遍历到尾部,当一轮遍历完后,数组最后一个元素是最大的。除去最后一个元素,对剩下的元素重复执行上面的流程,每次找出剩余元素中最大的,遍历完后,数组是升序的 算法分析:总共需要进行length ...