Skip to content

About

Vue 3 + OpenLayers/Cesium 双引擎 WebGIS 平台(FastAPI 后端,项目迭代至 V3.6)| Full-stack WebGIS with 2D/3D dual-engine maps

Topics

Resources

Stars

38 stars

Watchers

4 watching

Forks

Latest commit

 

History

795 Commits

Folders and files

Repository files navigation

🇨🇳 中文 | 🇬🇧 English

NEGIAO's WebGIS

专业级前后端分离 WebGIS 平台 · Vue 3 + OpenLayers + Cesium + FastAPI

Vue Vite OpenLayers Cesium FastAPI Rapier Frontend Docker Backend License

🚀 在线演示:NEGIAO's WebGIS-Dev — 欢迎点击体验

Views Total Clones Unique Cloners Last Commit GitHub Stars GitHub Forks


🌟 核心功能预览

🗺️ 底图卷帘对比 🧭 罗盘寻龙点穴
📐 二维数据管理 ☁️ 三维漫游云景
🤖 智能助手交互 🌊 动态淹没分析
🗺️ 矢量瓦片逆向解析
QQ20261015-213105

📑 目录


🎯 项目简介

NEGIAO's WebGIS 是一个功能完整、架构清晰的前后端分离 WebGIS 平台(当前版本 V3.6.23),前端托管于 GitHub Pages(正式域名 webgis.negiao.cn),后端以 Docker 部署在 Hugging Face Spaces,通过 RESTful API 通信,支持独立扩展。

📚 本 README 仅保留核心概览与导航。完整文档已模块化至 Docs/Guide/,详见下方「文档导航」。

📐 架构文档统一存放于 Docs/Architecture/,使用 Mermaid 流程图 / 时序图 / 状态图描述各子系统的模块关系、数据流向与文件交互,供技术交接与方案审查参考。

🤖 在本仓库使用 AI Agent 协作开发,请先阅读 Docs/Force_command.md(强制执行规范,含红线与门禁)。

不了解项目全貌?试试 DeepWiki — 向 LLM 提问本项目 Ask DeepWiki

规模速览

维度 实测规模
前端 511 个源文件 / 约 18.5 万行(.vue / .js / .ts),70 个 Vue 单文件组件
后端 70 个 Python 文件 / 约 2.15 万行,15 组 REST 路由
文档 Docs/ 下 549 篇 Markdown(含 Guide/ 13 篇、Architecture/ 21 篇、LLM_record/ 逐次开发记录)
双语文案 zh-CN / en-US 各 2000+ 行 i18n,30 个命名空间
CI 4 条工作流(deploy / pre-check / codeql / traffic-counter),deploy 内含 5 个 Job

核心能力 · 地图内核

领域 说明
🗺️ 2D/3D 双引擎 OpenLayers 10.5 + Cesium 1.132 一键切换,视图状态双向同步,URL 分享还原
🌐 丰富底图源 90 个底图预设 / 106 个图层定义:天地图、高德、腾讯、天地图矢量、ESRI(含 Wayback 历史影像)、Sentinel-2 Cloudless、奥维等;熔断回退、GCJ-02/BD-09 纠偏、自定义 XYZ 接入
🧭 图层管理(TOC) 统一目录:拖拽排序、行内重命名、显隐/透明度/样式、层级叠放定序、坐标转换(WGS-84 ⇄ GCJ-02)、单层导出(CSV/TXT/GeoJSON/KML)、二维图层导入 3D
📊 属性表 视图范围筛选、字段可见性、全字段检索、CSV 导出、要素定位与删除
✏️ 绘制与测量 点/线/面/矩形/椭圆/圆/箭头/风向/军标共 9 类绘制;测距、测面;跨图层顶点编辑
🔍 地名检索 三提供者切换:天地图 / 高德 / Nominatim(国际),支持 POI ID、分页、起终点选点
🗂️ 行政区划 区划树下钻、边界加载、与图层体系共用坐标转换与导出链路
🎞️ 历史影像 ESRI Wayback 版本目录(后端 SQLite 缓存 + 前端时序浏览)
🌓 卷帘对比 左右底图任选,水平 / 竖直双向滑动

核心能力 · 三维与分析

领域 说明
📥 多格式数据导入 GeoJSON / JSON / KML / KMZ / SHP(zip 或散件)/ CZML / GLB / GLTF / 3D Tiles(zip)/ GeoTIFF / CSV / GPX;2D/3D 双管线、ZIP 批量分组、.prj 投影识别、失败行内可重试
🏢 建筑白模抓取 建筑 1(腾讯)/ 建筑 2(高德)/ 天地图矢量瓦片三类数据源;框选抓取轮廓与楼高、跨瓦片同标识融合、自动入库 TOC
📐 空间分析 8 算子:缓冲区、叠加、泰森多边形、热点聚合、渔网(方格/六边形)、凸包、多环缓冲、几何简化(Shapely 后端精确计算)
🔬 三维分析 限高分析、可视域分析(cesium/modules/analysis,逐像素/射线两套实现)
✨ 三维特效 体积云 ray marching、Bruneton 大气、BSM 云影、风场粒子、流体淹没模拟、浅水叠加、后处理(HBAO / 移轴 / 雾)
🛩️ 面状航线规划 测区绘制、弓字形 / 五向倾斜采集、AGL 仿地、DJI KMZ 导入导出,接入统一图层管理
🚶 人物漫游 迁移自 hh-hang/cesium-player-controller 并持续对齐上游(当前对应 0.2.1):Rapier 物理、局部系重锚、贴地修正、第一/第三人称
🛣️ 路径规划 天地图驾车 / 公交双管线,搜索选点与路线渲染
🎬 第一人称漫游 航线飞行(route-fly):沿规划航线第一人称飞行,支持速度/视角控制

核心能力 · 数据与协作

领域 说明
🤖 AI 空间助手 LLM 集成,三种接入模式(管理员默认 Key / 个人 Key / 后端代理);function-calling 工具(视角、缩放、底图切换等)+ OL/Cesium 双引擎命令适配器,支持多步地图操作
🧭 风水罗盘 罗盘、寻龙点穴、方位叠加(Docs/Guide/compass-types-note.md)
🌤️ 天气看板 实时天气与图表(Open-Meteo 类公开源,后端代理)
🗞️ 新闻聚合 多平台热榜,直连 + 代理双通道竞速、静默刷新与本地缓存兜底
📢 站点公告 管理端下发,首次访问弹条 + 可关闭持久化
🎨 主题体系 设计令牌驱动的多主题(绿/蓝等)自动联动,深浅色与移动端适配

核心能力 · 账号与运维

领域 说明
🔐 账号体系 邮箱注册登录、Google / GitHub / Hugging Face OAuth 登录与绑定、三级身份(guest / registered / admin)、游客序号 guest_no、会话鉴权、双 AI 配额
🛡️ 管理控制台 运行时配置(地图 token、底图、Agent 参数、公告)、API Key 管理、访问统计、在线用户调试
📈 统计与监控 访问日志、UV/PV、实时在线 presence(心跳 + 下线)、SSE 日志流转发、/statistics/* 后台看板
🧰 实用工具集 屏幕特效(流体烟雾/引力场/维度塌陷/量子波/黑洞/圆环爆破)、测距测面、坐标拾取、视角分享、鸡汤、常用地点跳转

🧰 功能模块全景

按「引擎域」罗列的模块清单,便于快速定位代码:

Cesium 工具面板(cesium/composables/toolModules/)

场景导航 · 大气·光照·天空 · 体积云 · 风场 · 流体淹没 · 浅水叠加 · 人物漫游 · 面状航线 · 航线飞行 · 三维分析(限高/可视域)

OpenLayers 工具(ol/)

绘制 drawing · 空间分析 spatial-analysis · 路径规划 routing · 地名检索 search · 底图 basemap · 瓦片源 tile-source · 行政区划 DistrictManager · URL 状态 url-state · 启动编排 startup

公共域(common/)

侧栏外壳 shell(SidePanel/TopBar/公告条/全局加载) · 图层树 layer-tree · 数据导入 data-import · AI 对话 chat(agent/工具注册/命令总线) · 罗盘 compass · 天气 weather · 用户与账号 user · 命令总线 command-bus · 地图视图 map-view · 数据协议 data-protocol · 界面 ui

侧栏标签页(共 8 个,按使用懒加载,首次切到后保持挂载以保留状态):新闻热榜(info 默认页)/ 工具箱 / 驾车规划 / 公交规划 / 风水罗盘 / 建筑抓取 / 天气 / AI 助手


🛠️ 技术栈

层 选型
前端框架 Vue 3.5(Composition API)+ Vite 6.2 + Pinia 2.3 + Vue Router 4.6
二维地图 OpenLayers 10.5
三维地图 Cesium 1.132(@cesium/engine)+ Three.js 0.185(特效辅助)
物理引擎 @dimforge/rapier3d-compat 0.14(人物漫游刚体与碰撞)
后端 FastAPI ≥0.100(Python 3.12)、Shapely ≥2.0、SQLite 缓存、SSE 日志流
部署 GitHub Pages / Cloudflare Pages / Posit Connect / Vercel(前端);Hugging Face Docker(后端)
质量 ESLint、vue/compiler-sfc 编译校验、tsc --noEmit、结构树与配置注册表自检脚本、CodeQL

⚠️ 建筑抓取合规声明(必读)

  • 仅允许在你已获得官方授权的场景下使用建筑抓取能力;
  • 严禁绕过权限、规避访问控制、破解或其他未授权技术手段;
  • 严禁批量采集、离线库化、二次分发或用于未授权商用;
  • 使用者必须自行遵守数据源服务条款、当地法律法规及平台政策;
  • 项目默认提供范围/频率控制与前端合规确认提示,使用者仍需承担最终合规责任。

🚀 快速开始

环境要求

依赖 要求 说明
Node.js 20 LTS 及以上(推荐 20.x / 22.x) Vite 6 要求 Node 18+,本项目按 20 LTS 验证。仓库未在 package.json 声明 engines
npm 10+ 随 Node 20 附带
Docker Desktop 仅全栈本地联调需要 只跑前端 npm run dev 不需要 Docker
Python 3.12(容器内 python:3.12-slim 已固定) 后端仅通过 Docker 运行,不支持裸 uvicorn
LocalDev.bat Windows 一键启动脚本 自动检测上述依赖

配置(双 env 文件架构,先看这一处)

文件 git 状态 用途 读取时机 APP_ENV
deploy/.env git 追踪 部署环境(生产基线) npm run build + 线上部署 production
deploy/.env.local git 追踪 本地开发(覆盖 .env) npm run dev + 本地后端 development
deploy/.env.example git 追踪 全集 key 目录(不写真值) — —

三层密钥分层(L1/L2/L3):

层 放哪里 做什么
L1 deploy/.env / .env.local(不涉密) URL、端口、前端 VITE_*、公开服务端点/超时
L2 管理员面板 + 数据库 地图 token、Agent/LLM Key 与参数、底图、公告(常变、动态生效)
L3 Hugging Face Secrets 绝密:SUPER_USER、OAuth secret、SMTP 密码、Supabase Key、监控令牌

说明与检查清单:Docs/Guide/configuration.md · 全景:configuration-three-tier.md

# 仓库根目录:.env(部署环境)与 .env.local(本地开发)双文件架构
# 两个文件都提交 git(L1 不涉密)
# 本地开发:Vite 读 .env.local,后端读 .env.local(覆盖 .env 的 production 值为 localhost)
# 部署构建:Vite 只读 .env(selectiveEnvPlugin 按 mode 二选一)

代理相关:后端部署在 Hugging Face,其政策禁止挂载任何 /proxy/*、/tiles/* 中转。瓦片代理与外部站点反代由 VPS 上的独立服务(vpn.negiao.cn,仓库 tile-proxy)承接,前端通过 VITE_TILE_PROXY_BASE_URL 拼接 ${base}/proxy/<host>/<path>。

一键启动(推荐)

# Windows:双击 LocalDev.bat,脚本自动完成:
# 1. 检测环境依赖(Node.js / Docker / docker compose)
# 2. 本地开发环境:前端 Vite 读 .env.local,后端 load.py 读 .env.local(覆盖为 localhost 开发值)
# 3. 智能检测 Docker 镜像状态(首次构建 / 代码热重载 / Dockerfile 变更提示)
# 4. 启动前端开发服务器 → http://localhost:5173
# 5. 自动打开浏览器

LocalDev.bat 为纯 ASCII 编码,兼容 GBK/UTF-8 系统;中文彩色输出由同目录 Write-Color.ps1 提供。

访问地址:前端 http://localhost:5173 · 后端 API 文档 http://localhost:7860/docs

本地开发默认管理员:账号 admin,密码 123456。仅在 SUPER_USER 未配置且 APP_ENV 为 development/dev/local/test 时生效(load.py → get_admin_password());生产环境必须通过 HF Secrets 配置 SUPER_USER,否则管理员登录直接禁用。

手动启动(高级用户)

前端本地开发
cd frontend
npm install
npm run dev
# → http://localhost:5173
全栈一键(Docker 单容器,推荐)
# nginx(前端静态+/api 反代) + FastAPI 同容器,单端口 7860
# 首次运行需 --build 构建镜像(文件较大,需等待几分钟)
docker compose -f deploy/docker-compose.yml up -d --build

# 后续运行
docker compose -f deploy/docker-compose.yml up -d
# → http://localhost:7860 (API 文档 /docs)

环境文件统一收敛在 deploy/(.env / .env.local);后端不再支持直接运行 uvicorn。

双轨部署(生产)
# 前端静态轨:GitHub Actions 自动执行(Pages / 主页仓库 / HF Static),无需本地操作
# 全栈轨:push main 后 CI 组装 {Dockerfile, deploy/, backend/, frontend/}
#         推送 Hugging Face Space,镜像内自行 npm ci + vite build + uv sync

# 手动等价:构建全栈单容器镜像(nginx + FastAPI 同容器,单端口 7860)
docker build -t negiao/webgis -f deploy/Dockerfile .
docker run -p 7860:7860 negiao/webgis

本地开发镜像

后端 Docker 镜像已托管至 Docker Hub,可直接拉取用于本地开发,无需本地构建:

docker pull negiao/webgis_dev:V3.5      # 2026-08-03 构建,对应前端 V3.5.10
docker pull negiao/webgis_dev:latest    # 2026-08-23 构建,较新但仍滞后于源码

⚠️ 两个标签均构建于 2026-08 月,与当前代码(V3.6.23+)存在代差。镜像与 deploy/docker-compose.yml 同源(构建文件 deploy/Dockerfile),如需与源码一致请本地 --build 重建。

📁 项目结构

目录树统一维护于 Docs/Guide/(原子化,不在 README 重复):


🏗️ 系统架构

完整架构文档已模块化至 Docs/Architecture/: 系统架构总览 · CI/CD 流水线 · 部署关系与域名映射

分层架构总览

flowchart TB
    subgraph SRC["📦 源码层"]
        direction LR
        REPO_DEV["WebGIS-Dev
前端 + 后端源码"]
        REPO_HOME["NEGIAO.github.io
个人主页仓库"]
        REPO_PROXY["tile-proxy
VPS 代理 / 瓦片服务"]
    end

    subgraph CI["⚙️ CI / CD"]
        direction LR
        JOB_BUILD["① Build
npm run build → dist"]
        JOB_SYNC["② Sync
dist → 主页仓库WebGIS/目录"]
        JOB_DEPLOY["③ Deploy
多平台部署"]
    end

    subgraph DPL["🚀 部署平台"]
        direction LR
        P_GH["GitHub Pages"]
        P_HF["Hugging Face"]
        P_CF["Cloudflare"]
        P_PC["Posit Connect"]
        P_VC["Vercel"]
    end

    subgraph RT["🌐 运行时"]
        direction LR
        FE_HOME["个人主页
多域名"]
        FE_WEBGIS["WebGIS 前端
多域名"]
        BE["Docker 后端 API"]
        PR["VPS 反代
vpn.negiao.cn"]
        R2["瓦片存储
tiles.negiao.cc.cd"]
    end

    REPO_DEV --> JOB_BUILD
    REPO_PROXY --> PR
    JOB_BUILD --> JOB_SYNC
    JOB_SYNC --> REPO_HOME
    JOB_BUILD --> JOB_DEPLOY

    JOB_DEPLOY --> P_GH
    JOB_DEPLOY --> P_HF
    REPO_HOME --> P_GH
    REPO_HOME --> P_CF
    REPO_HOME --> P_PC
    REPO_HOME --> P_VC

    P_GH --> FE_HOME
    P_GH --> FE_WEBGIS
    P_HF --> FE_WEBGIS
    P_CF --> FE_HOME
    P_CF --> FE_WEBGIS
    P_PC --> FE_HOME
    P_PC --> FE_WEBGIS
    P_VC --> FE_HOME
    P_VC --> FE_WEBGIS
    P_HF --> BE

    FE_WEBGIS -->|"REST API"| BE
    FE_WEBGIS -->|"外部站点反代 / 瓦片代理"| PR
    FE_WEBGIS -->|"加载自定义瓦片"| R2
Loading

后端 API 面

后端共 15 组路由,均为 /api/* 前缀(Hugging Face 政策禁止 /proxy/*、/tiles/*):

模块 前缀 主要内容
认证 /api/auth 邮箱注册登录、OAuth 回调、会话、游客登录(回传 guest_no)、配额
空间分析 /api/v1/spatial 单端点分发 8 算子
位置 /api/v1 逆地理 / IP 定位等
AI 对话 /api/agent 会话、消息、默认 AI 模型与 Key 分配
AI 管理 /api/admin/agent 模型与配额管理
外部代理 /api/proxy 仅 amap/*、search/nominatim、geo/epsg、ipapi/country 四类白名单
历史影像 /api/historical-imagery ESRI Wayback 图层目录
统计 /api/statistics/*、/api/log-visit 访问日志、中心看板、实时统计、消息、用户、访问事件
实时 /api/statistics SSE 流、心跳、在线 presence(ping / offline)、工单
公告 /api/announcement/* 当前公告、关闭记录
管理 /api/admin 运行时配置、下载 TTL、看板
API 管理 /api/admin、/api/admin/api-keys 第三方 Key 池与分配
运行时配置 /api/runtime-config 前端可读的公开运行时配置(含 features 布尔)
监控 /api/monitor/* 健康、日志流(SSE)
Webhook /api HF Hub 等平台回调

域名映射

个人主页:

域名 平台 CDN 国内访问
negiao.github.io GitHub Pages 默认 ❌ ⚠️ 不稳定
negiao.cloud-ip.cc GitHub Pages + 自定义域 ✅ 可配 ✅ 可访问
negiao.cc.cd Cloudflare Pages ✅ Cloudflare ❌ 被屏蔽
negiao.pages.dev Cloudflare Pages 默认 ✅ Cloudflare ✅ 流畅
negiao-pages.share.connect.posit.cloud Posit Connect ❌ ✅ 可访问
negiao.vercel.app Vercel ❌ ❌ 不可访问

WebGIS 前端:

域名 平台 来源
webgis.negiao.cn 正式域名(付费) CNAME → GitHub Pages
negiao.github.io/WebGIS-Dev GitHub Pages WebGIS-Dev 仓库根路径
negiao.github.io/WebGIS GitHub Pages 主页仓库子目录
negiao.cloud-ip.cc/WebGIS-Dev GitHub Pages + 自定义域 自动跳转
webgis.negiao.cc.cd Cloudflare Pages 私有域名挂载
webgis-dev.pages.dev Cloudflare Pages 默认 自动分配
negiao-webgis.share.connect.posit.cloud Posit Connect 主页仓库触发
negiao-web.static.hf.space Hugging Face Static 直接推送

后端、代理与存储:

组件 域名 平台
后端 API negiao-webgis.hf.space Hugging Face Docker
外部反代 / 瓦片代理 vpn.negiao.cn VPS(独立仓库 tile-proxy)
瓦片存储 tiles.negiao.cc.cd Cloudflare R2

完整域名清单、部署来源矩阵、平台能力对比见 deployment-relationship.md

🧭 文档导航

开发文档(Docs/Guide/)

文档 内容
交接文档 handover 接手必读:文档地图、三大架构速览、代码坐标、门禁流程与坑清单
开发约定 强制规范、分层边界、坐标系统约定、提交前检查
开发指南与贡献指南 新增页面/API 标准流程、前后端通信、代码风格
项目结构详解 完整目录树与各模块职责说明
前端结构 / 后端结构 逐目录文件树
配置指南 三层配置(deploy .env / Admin+DB / HF Secrets)
配置架构执行计划 分阶段收拢配置的落地路线
OAuth 部署配置指南 Google/GitHub 登录全流程
技术栈与常见问题 前后端技术栈、参考资源、FAQ、TODO
ESRI Wayback 图层清单 历史影像可用版本台账
罗盘类型说明 罗盘几何与类型定义
更新日志 CHANGELOG 完整版本演进历史

架构文档(Docs/Architecture/)

系统级

文档 一句话说明
系统架构总览 五层分层架构:源码 → CI/CD → 部署 → 运行时 → 用户
CI/CD 流水线 五 Job 流水线:Build → Sync → Multi-Deploy 详解
部署关系与域名映射 域名清单、部署来源矩阵、平台能力对比
三层配置架构 L1/L2/L3 全景:来源→统一入口→业务/前端消费与门禁

功能级

功能 文档
2D/3D 双引擎 ol-cesium-dual-engine.md
底图源系统 basemap-source-system.md
底图单一事实源重构 2026-08-02-basemap-ssot-refactor.md
统一底图选择 2026-08-20-unified-basemap-selection.md
多格式数据导入 multi-format-data-import.md
空间分析后端 spatial-analysis-backend.md
路径规划 route-planning.md
三维特效 cesium-3d-effects.md
洪水淹没模拟 cesium-fluid-flood-simulation.md
面状航线 cesium-planar-route.md
贴地策略 2026-08-22-clamp-to-ground-strategy.md
Cesium 统一图层管理 cesium-unified-layer-management.md
实用工具集 utility-tools.md
账号体系与 AI 配额 account-system-ai-quota.md
地图 token 运行时池 runtime-map-token-pool.md
建筑抓取与入库方案 tencent-building-import-plan.md
瓦片纠偏系统(历史稿,已迁出) tile-rectify-system.md

其它目录:Docs/Force_command.md(Agent 强制规范)· Docs/TODO/(20+ 待办方案)· Docs/LLM_record/(逐次开发记录)· Docs/Demo/(特效与纠偏单页示例)· Docs/Refactor.md


🚧 已知限制与当前状态

坦白列出「README 容易说得比实际好」的部分,避免误判:

项目 状态 说明
在线底图导出(GeoTIFF) ⚠️ 前端保留、后端已下线 MapDownloader.vue 依赖 /api/download/*,该模块在 V3.6.5 移除,HF 环境返回 404。方案见 Docs/TODO/plan-download-*
瓦片纠偏(BD-09/GCJ-02 重采样) ⚠️ 已迁出本仓 迁至独立服务,tile-rectify-system.md 为历史设计稿
新闻热榜 cls(财联社) ⚠️ 上游恒定 504 该平台标签页为空;其余 21 个平台正常
新闻 / 瓦片直连 ⚠️ 国内间歇不可达 实际主通道为 vpn.negiao.cn 代理
frontend/package.json 版本号 ⚠️ 未维护 字段值为 2.0.0,真实版本以 README / CHANGELOG 为准
单元测试 ⚠️ 仅后端有部分覆盖 backend/tests/ 已有 6 个 unittest 文件(Agent 上下文、配置加载、历史影像、实时统计、SQLite 恢复、Webhook);前端暂无单测,质量门禁为 ESLint + SFC 编译 + tsc --noEmit + 结构/配置自检脚本
engines 字段 ❌ 未声明 Node 版本靠文档约定(20 LTS)

Star History

Star History Chart

📜 版本演进

完整历史见 CHANGELOG.md,以下仅列最近版本摘要。

版本 日期 概要
V3.6.23 2026-10-22 README 全量核对与事实修正(纯文档版)。逐节对照代码实测:恢复「项目简介」行 当前版本 标识(vite.config.js 正则提取 __APP_VERSION__ 的机器读取源,缺失会静默回退 V0.0.0);底图图层定义数 96 → 实测 106;账号体系补 Hugging Face OAuth(后端 SUPPORTED_OAUTH_PROVIDERS 与注册页按钮均已支持);侧栏标签页修正为实际 8 个(info 默认页即新闻热榜);本地开发镜像补 latest 标签(2026-08-23);「已知限制」单元测试项更正为后端已有 6 个 unittest 文件;规模速览 i18n 命名空间 27 → 30、Docs 篇目同步。详见完整更新日志
V3.6.22 2026-10-20 Cesium 人物漫游对齐上游 0.2.1 + 审查加固。Rapier 局部系重锚 rebase()(默认 10km 阈值,消除 f32 精度抖动与重力方向偏离);静态碰撞线框叠加父级变换;贴地修正从注入竖直速度改为独立位移 groundCorrectionU(消除台阶弹跳);step(delta) 同步 world.timestep;地形碰撞改 replaceStaticColliders 原子替换;修复双重缩放;热路径去掉每帧 Matrix4.inverse。验证:tsc 0 error / eslint 0,rebase 仿射往返误差 1.1e-9 m。
V3.6.21 2026-10-19 导入体验 bug 修复包 + GLB 地理保真。坐标弹窗改 Esc 显式取消、失败行内可重试、busy 禁重复提交;重定位失败按 swapped 位回挂旧实体;多文件 GLB 冲突改撤销新文件;双引擎导入统一 GlobalLoading 遮罩(yieldUi.js);GLB 取消 minimumPixelSize: 64 改地理保真 LOD。

更早版本(V3.6.20 及以前)请查阅 完整更新日志 →。当前分支 HEAD 另含 V3.6.22 之后未发版的 SidePanel 调试提交(6bf80e5,未记版本)。


📄 许可证

MIT License — 可自由使用、修改、分发。

告知义务:如果你在任何公开环境(网站、服务器、论文、展览等)运行或部署本项目或其衍生版本,请通过邮件 yaonaigao@gmail.com 或 GitHub Issue 告知作者你的使用即可。


👤 作者与托管

NEGIAO — GitHub · 个人主页 · DeepWiki 项目分析

源代码 前端部署 后端部署
GitHub webgis.negiao.cn(正式域名,GitHub Pages 托管) Hugging Face

V3.6.23 · 开发中 · 最后更新 2026-10-22

About

Vue 3 + OpenLayers/Cesium 双引擎 WebGIS 平台(FastAPI 后端,项目迭代至 V3.6)| Full-stack WebGIS with 2D/3D dual-engine maps

Topics

Resources

Stars

38 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages