☰
openGym人体肌肉地图实战指南:按肌群找动作、按器械过滤,3步搞定
2026/10/7 11:37:19 网站建设 项目流程

openGym人体肌肉地图实战指南:按肌群找动作、按器械过滤,3步搞定

【免费下载链接】openGymSelf-hosted gym & body-weight tracker — plan routines, log workouts (supersets, warm-ups, cardio), see which muscles are trained, fatigued or detrained, import from FitNotes/Strong/Hevy, passkey login. Your data, your server.项目地址: https://gitcode.com/GitHub_Trending/op/openGym

openGym 是一款自托管的健身与体重追踪应用,内置人体肌肉地图(muscle map):点一下身体上任意一块肌肉,就能立刻看到所有训练该肌群的动作;再叠加器械过滤,只显示你健身房里真正有的器材能做的动作。本文带你从零基础走通这条"按肌群找动作 → 按器械过滤"的完整路径。

一、进入肌肉探索页:动作库 → "By muscle"

肌肉地图的入口在动作库(Library)页面右上角:

  1. 打开 App,切换到动作库标签页,这里收录了 1,324 个带动画演示的免费动作;
  2. 点击右上角的"By muscle"(按肌群)按钮;
  3. 进入肌肉探索页,标题为 "Explore muscles",提示语是"Choose a muscle to see exercises that train it"(选一块肌肉,看训练它的动作)。

对应源码入口:

  • 入口按钮:frontend/src/views/Library.jsx
  • 肌肉探索页:frontend/src/views/Muscles.jsx
  • 核心交互组件:frontend/src/components/MuscleExplorer.jsx

二、按肌群找动作:点一块肌肉,出一整排动作

进入页面后,你会看到一张正面 + 背面的人体轮廓图,以及一排肌群标签(Traps、Shoulders、Chest、Quads、Hamstrings……)。

两种选法,效果相同:

  • 👆 直接点击人体图上的一块肌肉(SVG 区域可点、可用键盘 Tab + Enter 操作);
  • 🏷️ 或点下方的肌群标签,标签后面的数字是该肌群当前的动作数量。

选中后列表区会发生变化:

列表元素含义
Primary target该动作的主目标肌群就是当前所选肌肉
Also trains该肌肉只是辅助/次要参与的肌群
蓝色数字标签你在这项动作上的最佳重量记录
★ 星标收藏的动作自动浮到列表顶部
Plan按钮一键把动作加进某天的训练计划,无需回退

顶部还保留了搜索框 + 身体部位(body part)筛选条:先按肌群圈定范围,再输入"press"或点"chest"进一步缩小,搜索框右侧会实时显示剩余数量,不会翻半天找不到。

三、按器械过滤:只显示你有的器械能做的动作

选完肌群后,列表上方会出现一行器械(equipment)筛选条:

  • 默认选中"Any equipment"(任意器械);
  • 点一下Dumbbell、Barbell、Machine、Cable、Body weight…… 只保留该器械的动作;
  • 筛选是可组合的:肌群 + 部位 + 器械 + 搜索词层层叠加,任何一步把结果筛没了,界面会自动放宽器械条件,避免"死胡同"。

更彻底的做法是设置器械档案(equipment profile):

  1. 打开Settings(设置),找到Filter by equipment开关;
  2. 点Add equipment profile,起个名字(比如"公司健身房"),勾选那里有的器械类型;
  3. 之后动作库和肌肉地图默认只显示该档案内的动作,顶部横幅会提示 "Showing what you have in 公司健身房",点"Show all equipment"可临时查看全部。

两条值得注意的规则(见 frontend/src/lib/equipment.js):

  • 自重(body weight)动作永不因档案被过滤——家里没哑铃也永远能看到自重动作;
  • 该功能是纯附加过滤,档案没建好时不会隐藏你整个动作库。

四、肌肉地图背后:数据是怎么算的

肌肉地图不是简单标签匹配。在 frontend/src/lib/muscles.js 中:

  • 人体被划分为18 块可绘制肌群(trapezius 到 tibialis,从头到脚);
  • 动作库里的肌肉命名五花八门(delts / shoulders / deltoids、quads / quadriceps、lats / upper-back……),代码里的ALIAS 别名表把它们归一化到同一块肌肉,画不出来的部位(手、脚踝等)直接丢弃而不是硬猜;
  • 主目标肌群权重 1.0,次要肌群只计 0.4,避免"几乎不练到"的动作被当成重点动作。

同一个BodyMap组件还被复用在统计(Stats)页,提供三种模式:训练量去了哪、哪些肌肉还在恢复、哪些肌群已长期不练——按肌群找动作和回顾训练结构,用的是同一张地图。

五、快速上手清单

  1. ✅ 动作库 →By muscle进入肌肉地图;
  2. ✅ 点肌肉(或标签)→ 看Primary / Also trains列表,用Plan直接入计划;
  3. ✅ Settings 建一个器械档案,过滤掉"看得到、练不了"的动作;
  4. ✅ 进阶:Stats 里看同一张地图的三模式训练结构视图,补齐弱项肌群。

更多自托管部署与数据导入(FitNotes / Strong / Hevy)细节,见 docs/SELF_HOSTING.md 与 docs/DATA_IMPORTS.md。你的数据、你的服务器——肌肉地图练的是肌肉,也是对自己训练结构的掌控。

【免费下载链接】openGymSelf-hosted gym & body-weight tracker — plan routines, log workouts (supersets, warm-ups, cardio), see which muscles are trained, fatigued or detrained, import from FitNotes/Strong/Hevy, passkey login. Your data, your server.项目地址: https://gitcode.com/GitHub_Trending/op/openGym

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询