ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

面向地理教学的开源数字地球 —— GuEarth 项目

面向地理教学的开源数字地球 —— GuEarth 项目 项目地址GitHub - HikaruQwQ/GuEarth关键词ElectronVue3CesiumJS数字地球地理教学AI Agent工具调用文章目录一、前言二、GuEarth 是什么三、技术栈四、整体架构EOQ Agent 的工具调用闭环五、教学模块对标人教版选择性必修一M1 地球运动M2 大气M3 地貌M4 水体与海洋M5 整体性与差异性规划中六、快速开始八、写在最后一、前言Google Earth 很强大但它在国内访问不稳定、无法定制教学内容、也没有面向课堂的工具链等缺点。于是社区里出现了一个想法做一个本地运行的、可离线、可定制、内置 AI 助手的数字地球专门服务于中学与高校地理教学。这就是GuEarth—— 一个基于 Electron Vue 3 CesiumJS 的开源桌面端三维数字地球。目前 v0.1.5 已实现核心平台与四大教学模块地球运动 / 大气 / 地貌 / 水体海洋并内置了一个能看图说话、会开图层、会飞镜头的 AI 地理助手EOQ。二、GuEarth 是什么一句话概括本地版 Google Earth 地理教学工具箱 AI 地理助手的合体。核心能力一览三维球体与地形CesiumJS 渲染支持多地图数据源OSM / Mapbox / ArcGIS / 高德等、可插拔地形服务、地形光照与夸张系数调节、2D/3D 场景切换教学标注工具绘制点、线、面、箭头、文字框测距测面标注就地编辑颜色 / 字号 / 线宽自动持久化保存专题教学图层晨昏线、气压带风带、柯本气候区、板块边界 USGS 实时地震火山、ENSO 海温异常、世界洋流、台风历史路径……全部可点击查询成因EOQ AI 助手流式对话 工具调用Tool Calling能联网搜索、检索内置地理知识库、查地名并fly_to带你飞、按剧本自动录制成教学视频本地优先与安全所有密钥只存在主进程safeStorage加密渲染进程零 Node 权限瓦片本地缓存。三、技术栈层选型说明桌面壳Electron electron-vitecontextIsolation开、nodeIntegration关typed preload IPCwindow.guEarth渲染层Vue 3 Pinia Ant Design Vue组件与设计 token 全部遵循 DESIGN.md图表EChartsvue-echarts按需引入echarts/core SVGRenderer三维地图CesiumJS静态资源自研插件托管CESIUM_BASE_URL./cesium/AI主进程 OpenAI 兼容流式客户端供应商无关DeepSeek / Qwen / OpenAI…存储userData下 JSON 文件凭据走safeStorageKeyVault打包electron-builderWindows NSIS四、整体架构┌─────────────────────────────────────────────┐ │ Renderer (Vue 3) │ │ 球体视图 / 图层注册表 / 绘制工具 / EOQ 对话 UI │ │ 不接触任何 Node API 与密钥 │ └──────────────────┬──────────────────────────┘ │ contextBridge (window.guEarth) ┌──────────────────▼──────────────────────────┐ │ Preload (typed IPC) │ └──────────────────┬──────────────────────────┘ │ ipcMain.handle / event ┌──────────────────▼──────────────────────────┐ │ Main (主进程) │ │ 窗口管理 / KeyVault / AI 代理(流式) │ │ 瓦片缓存 / USGS 数据集拉取 / 地点搜索 │ └─────────────────────────────────────────────┘三条设计原则渲染进程永远不碰 Node API 和密钥所有特权操作走 IPC地图数据源统一实现LayerProvider接口影像源与地形源均可插拔为未来离线地形包留好口子AI 工具在渲染侧注册新增AI 能操作球体的能力 新增一个工具定义主进程不需要知道球体 API 细节。EOQ Agent 的工具调用闭环这是本项目最有意思的设计用户提问渲染进程 → IPC 到主进程发起 LLM 流式调用 → 模型返回工具调用flyTo / queryTerrain / setLayer / explainLandform / recordVideo / webSearch / retrieveKnowledge … → 主进程把工具调用转发给渲染进程的球体 API 执行 → 执行结果回填对话上下文 → 模型继续生成答案流式返回前端比如老师问带我看看喀斯特地貌EOQ 会retrieve_knowledge查知识库 →search_place查典型地点坐标如桂林、石林→ 逐个fly_to飞过去 →query_terrain查海拔辅助讲解 → 输出成因讲解。五、教学模块对标人教版选择性必修一这是 GuEarth 区别于通用 GIS 软件的核心价值。专题图层代码集中在src/renderer/src/thematic/统一在useThematicLayers.ts注册。M1 地球运动昼夜与太阳直射点时间轴日期 / 时刻可调二分二至预设昼长 正午太阳高度随纬度变化图表太阳视运动天穹面板、黄赤交角可调探索器直射点范围 五带划分自转速度与恒星日 / 太阳日演示、科里奥利力演示图层时区对比工具以及配套的set_sim_time/query_solarAI 工具M2 大气气压带风带图层1 月 / 7 月位置对比、全球柯本气候分区专题要素点击 AI 讲解、锋面气旋锚定叠加层热力环流动画面板海陆风 / 山谷风 / 城市风大气受热过程面板削弱 保温昼夜 / 云量状态可切换大气垂直分层面板高度-温度廓线台风图层结构锚定叠加 历史真实路径M3 地貌板块边界 USGS 地震 / 火山数据主进程拉取 缓存褶皱断层剖面面板 真实地点飞行漫游河流地貌面板上中下游 基于sampleTerrainMostDetailed的真实地形剖面典型地貌导览喀斯特 / 雅丹 / 冰川 / 海岸 / 黄土自动飞行外力作用链、地球内部圈层剖面以及explain_landformAI 工具M4 水体与海洋ENSO 相位图层El Niño / La Niña 海温异常 沃克环流 Niño3.4 关键区水循环动画面板与相机联动海水温度 / 盐度纬度剖面、潮汐与海浪面板河流补给与径流、洋流与风带关联入口M5 整体性与差异性规划中山地垂直自然带谱、引导式剖面飞行fly_transect、find_peaks等。六、快速开始可前往下载安装包https://github.com/HikaruQwQ/GuEarth/releases/download/v0.1.5/guearth-0.1.5-x64-setup.exegitclone https://github.com/HikaruQwQ/GuEarth.gitcdGuEarthnpminstall# 国内网络需要手动装 Electron 二进制ELECTRON_MIRRORhttps://npmmirror.com/mirrors/electron/\nodenode_modules/electron/install.jsnpmrun dev# 开发调试npmrun build# 生产构建npmrun build:win# 打 Windows 安装包首次启动会有使用引导指引配置地点搜索密钥高德 / 百度和 AI 模型供应商也可以跳过后从底部工具栏重新打开。八、写在最后GuEarth 的目标很明确让地理老师打开一个本地应用就能拖动晨昏线、点开一条板块边界讲地震成因、或者让 AI 带着全班飞过桂林的喀斯特峰林。项目完全开源欢迎 Star、提 Issue、提 PR也欢迎地理老师提出真实课堂需求——功能优先级由教学场景驱动。
返回列表