把徒步轨迹做成 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...

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

相关推荐
乐兮创想 小林1 小时前
B2B 内容营销的工程化运营:从内容矩阵建模到 SEO/GEO 联动的完整体系
前端·线性代数·矩阵·网站建设·北京网站建设公司
2501_940041741 小时前
全栈开发提速指南:可以直接用的项目生成提示词
前端·prompt
BomanGe21 小时前
NSK直线导轨LH55EL与NH55EM替代指南
前端·javascript·数据库·经验分享·规格说明书
云水一下1 小时前
Vue.js从零到精通系列(四):前端路由与Vue Router——打造多页单页应用
前端·javascript·vue.js
糯米导航1 小时前
浏览器解析HTML头部的底层逻辑:从字节流到渲染树的关键一步
前端·html
ViavaCos1 小时前
前端SSE实战指南
前端
Momo__1 小时前
alien-signals — 驱动 Vue 3.6 响应式引擎的那个 1KB 库
前端·vue.js·响应式编程
风骏时光牛马2 小时前
C++开发常见问题与解决方案汇总
前端
用户83134859306982 小时前
Vue3+Cesium实现3DTiles模型实时调节(离地面高度/xyz轴旋转/模型经纬度偏移)
vue.js·cesium