- 博客(653)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 Cesium1.95中如何高效管理 1500 个高频实体
中移除不用的 Primitive / Collection。更新位置,而不是频繁增删 Entity。移除后解除 JS 引用(如设为。),帮助 GC 回收。
2025-08-10 22:26:43
109
原创 Cesium性能优化
技巧一、在批量添加或修改实体时,可以使用viewer.entities.suspendEvents()和viewer.entities.resumeEvents()方法来提高性能。开发者可以在批量更新之前调用 viewer.entities.suspendEvents() 来暂停事件处理,然后在更新完成后调用 viewer.entities.resumeEvents() 来恢复事件处理。技巧五:调整场景设置:降低场景的渲染质量,例如减少阴影、光照效果等。技巧三:减少地形检测带来的计算量。
2025-08-01 23:10:47
277
原创 Cesium快速入门到精通系列教程十六:材质系统
通过 GLSL着色器 编写自定义材质,需定义 Fabric结构体 ,包含type、uniforms(统一值)和source(着色器代码)。fabric : {或直接使用 Cesium内置函数 如czm_getMaterial动态计算材质属性。使用:ml-search[Material类]直接修改几何体材质,需定义 Fabric JSON。优先使用内置材质复杂效果考虑后处理移动端使用简化着色器。
2025-07-30 09:36:37
720
原创 Cesium快速入门到精通系列教程十四:Cesium1.74中实体位置和颜色高性能更新方式比较
【代码】Cesium快速入门到精通系列教程十四:Cesium1.74中线条位置和颜色高性能更新方式比较。
2025-07-02 17:55:35
135
原创 Cesium快速入门到精通系列教程十三:Cesium1.74中批量高效绘制N条线并且一次性更新所有线条的位置和颜色
强制更新 Primitive 的几何数据为了确保 Cesium 能够正确检测到 geometryInstances 的变化并重新渲染线条,我们需要:1、每次更新 geometryInstances 后,显式地通知 Primitive 数据已经发生变化;2、避免直接替换整个 geometryInstances 数组(虽然这在大多数情况下可以工作,但为了确保万无一失,我们可以采用更可控的方式);
2025-06-30 22:32:29
401
原创 Cesium快速入门到精通系列教程十二:Cesium1.74中环绕地球生成经线环及批量高效更新其位置
由于 spaceLineArr 是一个数组,直接比较 spaceLineArr 是否变化不能简单地用 === 或 ==,因为 JavaScript 中数组是引用类型,即使内容相同,只要不是同一个引用,=== 也会返回 false。缓存上一次的 spaceLineArr,每次调用 drawOrUpdateSpaceLine 时,先比较当前传入的 spaceLineArr 和缓存的 spaceLineArr 是否深度相等(即每个元素都相同)。数据变化时:更新线条位置。
2025-06-29 22:35:17
215
原创 Cesium快速入门到精通系列教程十一:Cesium1.74中高性能渲染上万Polyline
在Cesium 1.74中,要为每条线条定义不同的颜色,可以通过修改GeometryInstance的attributes.color属性,为每个实例分配随机或特定的颜色值。以下是具体实现方法和完整代码:关键修改点1、ColorGeometryInstanceAttribute动态赋值在循环中为每条线条生成随机颜色(RGBA格式),替换原有的固定绿色值。2、确保使用PolylineColorAppearance。
2025-06-28 22:44:07
548
原创 Cesium快速入门到精通系列教程十:实现任意多个蜂巢似六边形组合
要实现完美的正六边形蜂巢排列,关键在于精确计算每个六边形的顶点位置和排列方式。
2025-06-16 21:59:36
212
原创 Cesium快速入门到精通系列教程十六:动态圆锥体波束实现
重点思路:在于如何实现从圆锥上面到下面的动态扫描。以下实现的Cesium版本为1.106。
2025-06-15 21:55:20
353
原创 Cesium快速入门到精通系列教程九:Cesium 中高效添加和管理图标/标记的标准方式
代码部分作用创建公告板集合(高效管理多个 Billboard)将集合添加到场景(使其可渲染)添加一个公告板,指定位置、图片、尺寸和缩放优化这段代码是 Cesium 中高效添加和管理 3D 图标/标记的标准方式,适用于地图、仿真、游戏等场景。要素类型推荐 API示例代码点Entity或线Entity或多边形Entity或圆/椭圆EntityAPI(更简单)球EntityAPI(更简单)模型EntityAPI(更简单)
2025-06-14 17:26:13
876
原创 Cesium1.95中加载模型过多导致内存溢出的解决方案(服务端层面、代码层面、浏览器层面)
GLB → 3D Tiles:将大规模 GLB 模型转换为 3D Tiles 格式,实现分块加载和视锥体裁剪。瓦片化处理:通过 GeoServer 的矢量瓦片模块将数据转换为 MVT 格式,配合 Cesium3DTileset 按需加载可视区域数据。性能分析工具:使用 Chrome DevTools 的 Memory 标签定期拍摄堆快照,定位未释放对象。预加载低精度模型:首次加载时仅提供简化版模型,后续按需加载高精度资源。
2025-06-12 23:05:26
1076
原创 Cesium1.95中加载模型过多导致内存溢出的解决方案
在 Chrome 浏览器中加载 Cesium 1.95 时因 GLB 模型和图片资源过多导致内存溢出,可通过以下系统性方案解决。
2025-06-12 22:38:20
1105
原创 Cesium快速入门到精通系列教程八:Primitive和Entity的相似点与不同点
选择 Primitive 当:需要极致性能、自定义渲染或处理超大规模静态数据。选择 Entity 当:追求开发效率、动态属性管理及交互功能。混合使用:对静态背景用 Primitive 批量渲染,动态对象用 Entity 单独控制。二者本质是互补关系:Entity 通过封装 Primitive 实现高级抽象,而 Primitive 为 Entity 提供底层支撑。实际开发需根据性能瓶颈灵活选择。
2025-06-09 10:44:45
477
原创 Cesium快速入门到精通系列教程十五:时间系统
Cesium 1.93的时间系统以JulianDate为基石,通过Clock驱动场景动态变化,结合TimeLine提供用户交互能力,完美支撑了地球科学可视化、实时模拟等复杂需求。开发者需掌握时间属性绑定与流速控制,以实现流畅的时空动态效果。
2025-06-08 17:31:08
564
原创 Cesium快速入门到精通系列教程七:粒子效果
在 Cesium 1.93 中实现粒子效果需通过 ParticleSystem 类进行配置,结合发射器、生命周期、物理模拟等参数实现火焰、烟雾、雨雪等动态效果。
2025-06-08 10:48:40
422
原创 Cesium快速入门到精通系列教程四:加载渲染GEOJSON数据
1. 全局样式配置stroke: Cesium.Color.HOTPINK, // 轮廓颜色fill: Cesium.Color.PINK, // 填充颜色strokeWidth: 3 // 轮廓线宽})
2025-06-02 09:36:17
364
原创 Cesium快速入门到精通系列教程三:使用Entity添加/更新物体与3D建筑物
在 Cesium 1.93 中在广州塔(经度:113.3244,纬度:23.1049)上空 800 米处添加一个红点。
2025-06-01 23:36:18
444
原创 Cesium快速入门到精通系列教程二:添加影像、添加地形与添加自定义地形、相机控制
在 Cesium 1.93 中添加地形可以通过配置terrainProvider实现。Cesium 支持多种地形数据源,包括 Cesium Ion 提供的全球地形、自定义地形服务以及开源地形数据。
2025-06-01 15:47:39
698
原创 Cesium快速入门到精通系列教程一:环境搭建、基础设置及自定义地图
1、官方渠道下载Cesium(可选择历史版本)访问 Cesium GitHub Releases,此处列出了所有正式发布的版本。通过标签(如 v1.95.0)选择目标版本,下载对应的压缩包(包含源码、构建文件和网页)。优势:获取官方认证版本,附带完整变更日志和修复记录。以上命令执行完成后,将node_modules中cesium的以下四个目录复制到public目录:另外,将node_modules中cesium的Widgets目录复制到src目录:cmd中执行。
2025-05-31 17:56:40
850
原创 Uniapp中动态控制scroll-view滚动的方式
在Uniapp 4.45中,动态修改scroll-view的scroll-left属性时无法触发滚动(直接设置scroll-left属性值没问题),这通常是因为数据更新与 DOM 渲染之间的异步特性导致的。知道了原因,但是直接修改scroll-left属性值还是失败,最后结合Vue v-if成功。
2025-05-19 11:12:39
639
原创 若依RuoYi-Vue3前后端分离版代码生成,新建一个增删改查模块
重新启动 后台java 和前端vue。就会在 系统工具 菜单 中的 看到新增加的 问答对 模块。以cti_faq 问答对表为例。点【导入】 ,选择【cti_faq】解压后,里面有三部分。
2025-05-16 09:22:56
475
原创 DeepSeek使用从入门到精通
忘掉复杂提示词:用简洁明了的需求指令,AI能自我思考并生成优质内容。- 提供背景信息:通过提供个人信息或背景资料,使AI生成更个性化的内容。- 设置输入长度:根据需要设定输出的字数或段落数,控制内容的详细程度。- 明确需求:清晰表达具体需求,避免模糊指令,确保AI输出符合预期。- 选择输出格式:可指定表格、段落等格式,帮助更有条理地呈现内容。- 上传参考资料:上传文件或文档,帮助AI模仿特定风格。- 让AI说人话:通过指令调整AI语气,使其更自然。- 及时纠正输出:反馈AI,帮助其改进生成的内容。
2025-02-23 21:23:48
681
转载 开发uniapp使用Vue3组合式API版本,如何实现从vue模块中自动导入
通过上面示例代码可以看到,每次使用生命周期函数时候,必须从vue模块导入之后才能使用,不然就会报错。
2025-01-25 12:27:32
223
原创 Web端实时播放RTSP视频流(监控)
2、点击Windows图标,选第一个:Windows builds from gyan.dev3、跳转到下载页面:4、下载后放到合适的位置,不用安装,解压即可:5、配置path复制解压后的\bin路径,配置环境变量如图:命令行输入:ffmpeg -version出现如下信息则说明配置成功。
2025-01-15 11:46:23
1067
原创 Uniapp中实现加载更多、下拉刷新、返回顶部功能
/ 导航栏中显示加载状态。// 导航栏中隐藏加载状态。env(safe-area-inset-bottom):css中获取底部安全区高度;// 页面中隐藏加载状态。title: '加载中'// 页面中显示加载状态。
2025-01-11 23:25:04
1011
转载 Cesium系统教程
1、上面的模型都是cesium自带的,如果是自己的模型,怎么加载呢?有两种方式:通过Cesium3DTileset.fromUrl方式[官网地址](
2024-12-01 22:37:12
2240
原创 WebGIS地图框架有哪些?
地理信息系统(GIS)已经成为现代应用开发中不可或缺的一部分,尤其在前端开发中。随着Web技术的快速发展,许多强大而灵活的GIS框架涌现出来,为开发人员提供了丰富的工具和功能,使他们能够创建交互式、高性能的地图应用。WebGIS地图框架为开发人员提供了丰富的工具和功能,使他们能够创建交互式、高性能的地图应用。
2024-11-21 20:43:25
1220
原创 将Docker中nginx静态资源目录映射到宿主机的某个目录及配置文件映射到宿主机
如果你想在容器内修改Nginx的配置文件(如nginx.conf),你也可以通过类似的方式将配置文件映射到宿主机的某个目录,并在该目录中编辑配置文件。使用docker run命令启动一个新的Nginx容器,并通过-v参数将宿主机上的nginx-static目录映射到容器内的静态资源目录(通常是/usr/share/nginx/html)。如果Nginx容器已经运行,并且你想要将静态资源目录映射到另一个宿主机目录,你需要先停止并删除现有的容器,然后按照上述步骤重新创建一个新的容器。三、验证映射是否成功。
2024-11-10 22:22:46
1122
原创 Nginx中配置静态资源目录方式、可能出现的问题及解决方案
解决办法:修改web目录的读写权限,或者是把nginx的启动用户改成目录的所属用户,重启Nginx即可解决。注意:要保证静态资源目录/home/sam/nginx下有static目录,不然通过。二、权限问题,如果nginx没有web目录的操作权限,也会出现403错误。1 将nginx.config的user改为和启动用户一致,注意:安装方式不一样,配置文件位置可能不一样。命令:vi conf/nginx.conf。2、在8008端口上配置静态资源目录。目录下添加static目录即可。
2024-11-10 21:41:19
2070
原创 Centos使用yum获取离线安装包
要获取CentOS的yum离线安装包,你可以在有网络连接的环境中下载RPM包及其依赖,然后将它们复制到没有网络的CentOS系统上进行安装。2、使用yumdownloader下载需要的RPM包和其依赖。3、将下载的RPM包复制到离线的CentOS系统上(可以使用USB驱动器或其他媒体);
2024-11-04 22:42:46
720
将Google Analytics(分析)添加到Android 应用实例
2018-03-25
用百度WebUploader文件上传插件上传文件时能在前端对文件进行加密后再上传吗?
2019-10-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人