把徒步轨迹做成 3D 地形模型:开源工具「印迹 TrailPrint 3D」

把徒步轨迹做成 3D 地形模型:开源工具「印迹 TrailPrint 3D」

走了一条很喜欢的徒步路线,除了照片和 GPX 记录,有没有想过把它「留下来」?

我做了个桌面小工具 印迹 TrailPrint 3D:导入 GPX 轨迹,结合真实地形高程,一键生成可直接 3D 打印的分件模型。打印出来就是一座带路线印记的小山------摆在桌上,比截图更有仪式感。

项目已开源:github.com/baozjj/Trai...


它能做什么?

简单说,印迹 TrailPrint 3D 帮你完成这件事:

GPX 轨迹 → 真实地形 + 路线线条 → 多色 3D 打印模型

适合这些场景:

  • 走完西湖爱心线、武功山、麦理浩径......想做个纪念品
  • 已经习惯用两步路 / 佳明等记录轨迹,手头有 .gpx 文件
  • 家里有 FDM 多色打印机(比如拓竹),愿意花一下午切片打印

你不需要会建模,也不需要手动描地形。上传轨迹、在地图上框选范围、调几个参数,就能拿到三个 STL 文件,丢进 Bambu Studio 上色切片即可。


从轨迹到成品,大概是这样

1. 准备 GPX 文件

两步路 等 App 里打开轨迹,导出 .gpx 即可。我这次用的是西湖爱心线。

2. 导入轨迹

启动印迹,点击「导入 GPX」,轨迹会自动加载到地图上,并显示点数、里程等基本信息。

3. 构图取景,调整打印参数

这一步是核心体验:在地图上拖动、缩放,决定哪一段山路要进模型;侧栏里可以选底座形状(圆形 / 矩形等)、设定实际打印尺寸、拉高山体高度、调整表面平滑度,还能配置托盘厚度和磁吸孔位------都是面向「怎么打、怎么摆」的参数,不用懂 3D 建模。

4. 导出模型

预览确认后,点击生成,会下载一个压缩包,里面是三个分件 STL,已经按多色打印和后期拼装做好了拆分。

5. 进 Bambu Studio 上色切片

解压后把三个文件拖进 Bambu Studio,分别给山体、轨迹线、底座指定颜色,预览拼装效果,然后正常切片发送打印。

6. 打印、拼装、完工

等打印机干完活,把轨迹线条嵌进山体凹槽,装上画框式底座------一座属于自己的「徒步地形纪念碑」就完成了。

成品不大,巴掌见方,但路线和山脊的对应关系一眼能看出来。缩到桌面尺寸后地形会显得偏平,导出前可以在软件里把高度拉高一点;三个零件分色打完,轨迹嵌进槽里,磁铁一对就能固定,不用胶水。


你会拿到什么?

生成完成后,压缩包里固定有三个文件:

文件 用途
Terrain_Main.stl 山体主模型,表面已挖好轨迹凹槽
Trail_Line.stl 独立轨迹线条,换色打印
Tray_Base.stl 画框式托盘底座,含凹槽与磁铁孔

导入切片软件,分别设色、打印、拼装------流程和做多色铭牌类似。


技术栈

这是个 Electron 桌面应用,前端 Vue 3 + TypeScript ,构建工具 electron-vite / Vite ,状态管理用 Pinia

模块 技术
地图取景 Leaflet
3D 预览与模型生成 Three.js、three-bvh-csg
地形高程数据 GeoTIFF 解析 + OpenTopography API
打包导出 archiver(ZIP)

本地跑起来:npm installnpm run dev,需要 Node.js 18+。更完整的说明见仓库 README


谁适合试试?

  • 喜欢徒步 / 越野跑,想给某次行程留个实体纪念
  • 有 3D 打印机,尤其是一台支持多色或愿意多色换料的用户
  • 不满足于平面轨迹截图,想要一点「地形立体感」

地形高程数据需要免费申请一个 OpenTopography API Key,在软件里填一次就行,只保存在本机。


写在最后

印迹 TrailPrint 3D 是我个人维护的开源项目,目前还在持续迭代。如果你也觉得「把走过的路打印出来」这件事有意思,欢迎来 GitHub 点个 Star,或者提 Issue 聊聊你想印哪条线。

仓库地址: github.com/baozjj/Trai...

欢迎交流打印配色、取景构图,以及你印出来的第一条山脊线 🏔️

相关推荐
开开心心就好4 小时前
批量提取PDF中的图片,直接导出原图
前端·javascript·支持向量机·智能手机·pdf·html·启发式算法
Setsuna_F_Seiei6 小时前
前端转型 Agent 开发 05 之 Agent Hooks 与 Checkpointer(让 Agent 从全自动转变人为可掌控)
前端·agent·ai编程
百万蹄蹄向前冲8 小时前
风扇转了一晚上MVP专家团翻车事故
前端·人工智能
默_笙8 小时前
🏛 给 AI 配一间办公室:Harness Engineering 六大模块与它的实现
前端·javascript
linux_cfan10 小时前
videojs v10 源代码系列解读:14 · 谓词守卫:在运行时安全地调用能力
前端·javascript·音视频
kyriewen10 小时前
我扒了 10,221 条 JD:腾讯技术岗 75% 在要 AI
前端·人工智能·ai编程
郑州光合科技余经理11 小时前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
我命由我1234511 小时前
Git 推送报错:error: src refspec main does not match any
运维·git·gitee·github·运维开发·学习方法·版本控制
+VX:Fegn089511 小时前
计算机毕业设计|基于springboot + vue旅游管理系统(源码+数据库+文档)
java·开发语言·vue.js·spring boot·课程设计
雪芽蓝域zzs11 小时前
第 7 章:双 Y 轴组合图(柱状 + 折线,看板高频场景)
vue.js·echars