# star3d **Repository Path**: iluim/star3d ## Basic Information - **Project Name**: star3d - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-24 - **Last Updated**: 2026-02-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Star3D 🌟
基于 Vue3 + Cesium 的现代化三维 GIS 开发平台
--- ## ✨ 特性 - 🚀 **开箱即用** - 简洁的 API 设计,快速构建 3D 应用 - 🎨 **Vue3 原生** - 完美支持 Composition API,TypeScript 类型完备 - 🔌 **插件化架构** - 所有功能通过插件实现,按需加载 - 📐 **专业分析** - 通视分析、视域分析、坡度坡向、淹没分析等 - 🎯 **海量数据** - 支持百万级点数据、3DTiles 模型高性能渲染 - 🌐 **跨平台** - 支持 Web、移动端、大屏展示 ## 📦 包结构 | 包名 | 描述 | |------|------| | [@star3d/core](./packages/core) | 核心引擎包 - 提供渲染引擎抽象和核心功能 | | [@star3d/common](./packages/common) | 公共工具包 - 类型定义、坐标转换等 | | [@star3d/plugins](./packages/plugins) | 插件包 - 测量、分析、数据加载等插件 | | [@star3d/industries](./packages/industries) | 行业应用包 - 智慧城市、数字孪生等 | | [@star3d/ui](./packages/ui) | UI组件包 - Vue3 组件库 | ## 🚀 快速开始 ### 安装 ```bash # npm npm install @star3d/core @star3d/plugins cesium # pnpm pnpm add @star3d/core @star3d/plugins cesium ``` ### 基础用法 ```typescript import { createStarMap } from '@star3d/core' // 创建地图实例 const map = createStarMap({ container: 'map-container', mode: '3d', center: { lng: 116.3912, lat: 39.9075 }, zoom: 10, plugins: ['measure', 'analysis', 'graphic'] }) // 监听就绪事件 map.on('ready', () => { console.log('地图初始化完成') }) // 直接使用插件 map.measure.distance() map.analysis.viewshed() map.graphic.addPoint({ lng: 116.39, lat: 39.9, alt: 0 }) ``` ## 🏗️ 项目结构 ``` star3d/ ├── packages/ │ ├── core/ # 核心引擎包 │ │ ├── src/ │ │ │ ├── core/ # 核心类 (StarMap) │ │ │ ├── engine/ # 渲染引擎 (Cesium) │ │ │ ├── plugin/ # 插件系统 │ │ │ ├── types/ # 类型定义 │ │ │ └── utils/ # 工具函数 │ │ └── package.json │ ├── common/ # 公共工具包 │ │ ├── src/ │ │ │ ├── coordinate/ # 坐标转换 │ │ │ ├── types.ts # 类型定义 │ │ │ └── constants.ts # 常量 │ │ └── package.json │ ├── plugins/ # 插件包 │ │ ├── src/ │ │ │ ├── measure/ # 测量插件 │ │ │ ├── analysis/ # 分析插件 │ │ │ ├── graphic/ # 图形绘制 │ │ │ ├── data/ # 数据加载 │ │ │ ├── visualization/ # 可视化 │ │ │ ├── effects/ # 特效 │ │ │ ├── weather/ # 天气 │ │ │ ├── animation/ # 动画 │ │ │ └── file-loader/ # 文件加载 │ │ └── package.json │ ├── industries/ # 行业应用包 │ │ ├── src/ │ │ │ ├── smart-city/ # 智慧城市 │ │ │ ├── digital-twin/ # 数字孪生 │ │ │ ├── emergency/ # 应急指挥 │ │ │ ├── military/ # 军事应用 │ │ │ └── reservoir/ # 水利应用 │ │ └── package.json │ └── ui/ # UI组件包 │ ├── src/ │ │ ├── components/ # Vue组件 │ │ └── composables/ # 组合式函数 │ └── package.json ├── docs/ # 文档 │ ├── architecture/ # 架构设计 │ ├── guides/ # 使用指南 │ └── index.md # 文档首页 ├── test/ # 测试 │ ├── unit/ # 单元测试 │ └── integration/ # 集成测试 ├── package.json ├── tsconfig.json ├── vitest.config.ts └── pnpm-workspace.yaml ``` ## 📚 文档 - [文档首页](./docs/index.md) - [快速开始](./docs/guides/quick-start.md) - [架构概览](./docs/architecture/overview.md) - [功能规划](./docs/architecture/features.md) ## 📦 功能模块 | 模块 | 功能描述 | 状态 | |------|----------|------| | **场景管理** | 视角控制、相机飞行、场景特效 | ✅ | | **图层管理** | 底图切换、图层叠加、透明度控制 | ✅ | | **图形绘制** | 点、线、面、圆、矩形等矢量图形 | ✅ | | **测量分析** | 距离、面积、高度、角度测量 | ✅ | | **空间分析** | 通视、视域、坡度、淹没、挖填方 | ✅ | | **3DTiles** | 倾斜摄影、BIM、点云模型加载 | ✅ | | **海量数据** | 百万级点数据聚合渲染 | ✅ | | **数据可视化** | ECharts、MapV、热力图集成 | ✅ | | **天气效果** | 雨、雪、雾、云等天气效果 | ✅ | | **动画系统** | 路径漫游、模型动画 | ✅ | ## 🔌 插件列表 ### 核心插件 | 插件 | 描述 | |------|------| | `measure` | 测量工具 - 距离、面积、高度测量 | | `analysis` | 空间分析 - 视域、缓冲区、淹没分析 | | `graphic` | 图形绘制 - 点、线、面、标签、广告牌 | | `data` | 数据加载 - 3DTiles、GeoJSON、模型 | | `visualization` | 可视化 - 热力图、海量点、轨迹 | | `effects` | 特效 - 粒子系统、扫描效果 | | `weather` | 天气 - 雨、雪、雾、云 | | `animation` | 动画 - 路径漫游、相机动画 | | `file-loader` | 文件加载 - KML、KMZ、SHP、GeoJSON | ### 第三方集成 | 插件 | 描述 | |------|------| | `echarts` | ECharts 图表集成 | | `mapv` | MapV 大数据可视化 | | `three` | Three.js 3D模型支持 | ### 行业应用 | 应用 | 描述 | |------|------| | `smart-city` | 智慧城市解决方案 | | `digital-twin` | 数字孪生解决方案 | | `emergency` | 应急指挥解决方案 | | `military` | 军事标绘解决方案 | | `reservoir` | 水利应用解决方案 | ## 🛠️ 开发 ```bash # 安装依赖 pnpm install # 开发模式 pnpm run dev # 构建 pnpm run build # 类型检查 pnpm run typecheck # 测试 pnpm run test ``` ## 🤝 参与贡献 我们欢迎所有形式的贡献! 1. Fork 本仓库 2. 创建你的特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交你的修改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开一个 Pull Request ## 📄 许可证 [MIT](./LICENSE) © Star3D Team ---如果这个项目对你有帮助,请给我们一个 ⭐️ Star!