在三维地球开发领域,Cesium 几乎是绕不开的名字。它功能强大,但用过的同学应该知道,Cesium 的 API 表面虽然清晰,实际在二次开发时会遇到不少痛点:
- 常用标注/绘制功能需要大量样板代码
- 点击、拾取等事件需要自己封装
- 类型提示不足,容易写错参数
- 想做些小交互,结果被 API 文档"劝退"
于是,我开源了 👉 cesium-kit
一个 基于 TypeScript 的 Cesium 工具组件库,目标是让 Cesium 开发像调用常见前端组件库一样简单!
✨ 你能用到什么?
- 快速交付:只需要几行代码,就能搞定标注或交互。
- 类型安全:全量 TypeScript 类型,写代码时你不会再迷路。
- 高扩展性:组件化封装,可灵活扩展和自定义。
- 专注 Cesium:所有功能都围绕 3D 地球场景。
示例:快速添加一个波纹标记
arduino
import { RippleMarker } from 'cesium-kit'
new RippleMarker(viewer, {
position: Cesium.Cartesian3.fromDegrees(116.39, 39.9), // 天安门
color: Cesium.Color.RED
})
只要几行代码,就能把一个带扩散波纹效果的标记加到地图上,不用再重复造轮子。
📦 安装很简单
csharp
# npm
npm i cesium-kit cesium
# 或者 pnpm / yarn
pnpm add cesium-kit cesium
yarn add cesium-kit cesium
然后在项目里直接 import 即可。
🛠 Playground 本地体验
仓库里内置了一个 Vite + Cesium Playground,只需要:
arduino
npm i
npm run play:install
npm run dev:play
你就能看到效果并快速迭代测试。
🤝 为什么需要你们的参与?
这是一个刚刚开源的项目,现在还很"年轻"。
我希望它能成长为一个对社区有帮助的 Cesium 开发利器。
你能做的事情包括:
- 点一个 Star ⭐️,让更多人看到它
- 提交 PR,补充功能或文档
- 提出 Issue,反馈你在工作中遇到的需求或 bug
每一份小小的参与,都会让这个工具库变得更好。
🔗 项目地址
GitHub: github.com/leongaooo/c...
欢迎加入,一起打磨出极致好用的 Cesium 工具库!🎉