README.md 3.3 KB

城市生命线驾驶舱

Vue 3 + Pinia + Three.js + CesiumJS 的独立 Web 驾驶舱。基于 TvT.js / ICEGL,保留原作者声明与 Apache-2.0 许可证。本仓库现按驾驶舱部署用途裁剪,不再提供上游插件市场、编辑器、示例页面或微前端演示入口。

运行与构建

  • Node.js 22+(当前 Cesium engine 的要求);Yarn Classic 1.22.22。
  • 安装和构建工具必须一起安装,不要使用 production-only 安装来构建。
  • 安装后保留 FES 路由补丁,不要跳过 postinstall。
  • 服务入口及运行命令授权规则见 项目规则;代码修改后不会自动启动服务或构建。

以下命令供部署人员明确执行,本次代码清理没有执行:

yarn install --frozen-lockfile
yarn build

服务器只发布构建产物目录;不需要 Node、依赖目录、源代码、测试或加工工具。开发命令为 yarn dev,只能复用约定的唯一入口,不能另外启动端口。

三份独立交付

  1. 前端代码/静态包:本仓库的驾驶舱模块及自有图标、字体、管道 glTF/bin;构建时另外拷贝 Cesium Workers / ThirdParty / Assets / Widgets。
  2. GIS 数据:分层地形与影像由独立静态服务提供,不进入 Git 或前端构建。
  3. 城市模型:按 独立交付清单 部署模型引用闭包,由独立静态服务提供;不可只复制入口版本目录。

只克隆代码不会自动得到 GIS 和城市模型;必须取得资产包并配置相应静态路径才能显示完整实景。详见 瘦身盘点 和 部署手册。

配置入口

  • 开发环境:API/WS/公开图片地址兜底。
  • 生产环境:同源 API/WS/公开图片代理路径。
  • 部署地图模板:已知场景的地形、影像、模型、镜头及性能参数;每次生产构建以此生成运行时配置,不复制本机 JSON。
  • 本机挂载模板:复制为本机覆盖文件后填写资产目录。仅用于开发,生产须使用 Nginx/CDN。
  • 环境说明:配置优先级及生产代理要求。

保留与隔离边界

  • 路由配置 只允许根跳转和驾驶舱页;旧 URL 回到驾驶舱。
  • 公共资源白名单 防止上游示例及本机配置进入产物。
  • 运行时 mock 是驾驶舱原有离线模式的一部分,并非孤立测试文件,保留其真实引用链;生产默认 real。
  • 本地归档、工具、模型加工文件、设计源、验证脚本按 忽略规则 隔离。旧工具依赖原始依赖清单,不能用精简后的安装环境重跑加工流程。
  • 锁文件 已按当前直接依赖及传递/可选依赖闭包离线裁剪;保留条目的版本、下载地址和完整性字段不变,未安装或升级依赖。

本次仅做静态核查;尚未进行 build/debug 验证、提交或推送。历史 Git 对象没有被改写,历史仓库体积不会因工作树删文件自动缩小。