中国地图的坐标系问题大家应该都遇到过,GPS 拿到的坐标直接上百度地图,位置总是偏个几百米。之前每次遇到都要去找 gcoord 库,写代码转换,挺烦的。
最近在用 Claude Code ,发现它支持自定义 Skill ,就顺手写了个坐标转换的 Skill ,现在直接跟它说"帮我转成高德坐标"就行了,感觉还挺好用的,分享给大家。
国内地图坐标系挺乱的:
之前做个小程序,地图相关的功能每次都要处理坐标系转换。虽然有 gcoord 这种好用的库,但还是得写代码、测试、打包。
装了这个 Skill 之后,在 Claude Code 里直接:
帮我转换 116.403988,39.914266
Claude 会问你源坐标系和目标坐标系,选完就出结果了。
如果明确一点:
GPS 转高德: 116.403988,39.914266
就直接出结果,不问了。
也支持文件:
把 @data.geojson 转成百度坐标系
git clone https://github.com/zhyt1985/gcoord_skill.git ~/.claude/skills/gcoord_skill
cd ~/.claude/skills/gcoord_skill/gcoord
npm install
装完就能用。
核心是 gcoord 库,我只是套了层 Skill 的壳。
Skill 的定义文件 SKILL.md 是关键,里面写了:
比较有意思的是交互式选择的设计。当用户没指定坐标系时,Claude 会用 AskUserQuestion 工具问用户,而不是直接用默认值。这样就不会出现转换了半天才发现坐标系选错了的情况。
GitHub: https://github.com/zhyt1985/gcoord_skill
MIT 协议,随便用。有 bug 或建议直接提 issue 。
其实这东西挺简单的,主要是觉得 Claude Code 的 Skill 机制挺有意思。之前觉得 AI 编程也就是补全代码、写写注释,现在看还能做这种"语义→命令"的转换,实用了很多。
坐标转换只是个例子,感觉 Skill 能做的还有很多。大家如果有类似的痛点,也可以试试写个自己的 Skill 。
有在用 Claude Code 的朋友可以试试这个 Skill ,好用的话给个 star 就行了。