この記事は、キーボード #2 Advent Calendar 2025 の1日目の記事です。
名画とキーボード
— alg (@alglab.net) 2025年11月9日 20:37
Keyboard:Teihai24Gx2
Switch:Lofree Hades
Keycap:自作
[image or embed]
名画をモチーフにしたキーキャップを作ってみました。
良い反応をたくさんいただけたので、その作り方を共有します。
目次
- 1. 環境を整える
- 2. キーキャップの配置を考える
- 3. 画像を用意する
- 4. HueForgeでキーボード面積に合わせたデータを作る
- 5. キーキャップデータを用意する
- 6. HueForgeデータとキーキャップデータを合体させる
- 7. HueForgeの出力指示を読み替える
- 8. 3Dプリントする
- 終わりに
1. 環境を整える
この記事は以下の環境を前提としています。
将来のバージョンアップにより画面などが変更になる可能性があります。
- HueForge 0.9.1
- OpenSCAD 2021.01
- Bambu Studio 2.3.1.51
- BambuLab P1S Combo(=AMS付き)
2. キーキャップの配置を考える
まず、どんなキーキャップの配置にするかを考えます。
私は4行6列で全1Uの配置としました。
3. 画像を用意する
キーキャップの配置を決めたら、それと縦横比を合わせた画像を用意します。
私はパブリックドメインとなっている画像から、神奈川沖浪裏を選びました。
縦横比が異なる場合は適宜切り抜きなどを行い調整します。
4. HueForgeでキーボード面積に合わせたデータを作る
3.で用意した画像をもとに、HueForgeで色を調整してデータを作ります。
HueForgeの使い方については以前書いた記事を参考にしてください。
色の調整が終わったら、HueForge画面右上の幅または高さを適宜変更します。
幅と高さのどちらかを変えると、もう一方が画像の縦横比に応じて自動的に変わります。
4行6列で全1Uなので、高さが 19.05 ✕ 4 = 76.2(mm) 、幅が 19.05 ✕ 6 = 114.3(mm) としました。

プロジェクトを保存すると、実際の3Dプリントに必要なファイル群が出力されます。
5. キーキャップデータを用意する
配置に沿ったキーキャップの3Dデータ(stl形式)を用意します。
私の場合、ベースとなる1UのキーキャップデータをOpenSCADで作成し、さらにそれをOpenSCADでいい感じに増やして配置しました。
配置が終わったら、stlファイルとして書き出しておきます。
6. HueForgeデータとキーキャップデータを合体させる
HueForgeのstlデータとキーキャップのstlデータを合体させます。
天面部分のみ、キーキャップのstlとHueForgeのstlの共通部分を残します。
OpenSCADだと intersection() です。
FreeCADなどでも同様のことはできると思いますが、未確認です。
天面以外の部分は、キーキャップのstlをそのまま残します。

7. HueForgeの出力指示を読み替える
HueForgeの出力指示ファイル(ほげほげ_describe.txt)に書いてあるフィラメント入れ替え指示を、キーキャップの高さに応じて読み替えます。
例えば、先ほど合体させたキーキャップ天面以外の高さが8.0mmだった場合、フィラメント入れ替え指示の数字に100層を足した数が実際に入れ替える層番号になります。
3Dプリント時の積層高さが0.08mmであれば、 8.0 ÷ 0.08 = 100 層を加算することになります。
8. 3Dプリントする
読み替えた指示にしたがって3Dプリントすれば完成です。
終わりに
12/1当日の夜にこの記事をあわてて書いております。
かなり駆け足になってしまった感がありますが、いかがでしたでしょうか。
後日あらためて加筆修正したい気持ちはありますが……できるかな……?
不明な点があれば聞いてください。わかる限りお答えします。
明日12/2は、カレンダー#1は ぷʓぷʓ@家 さんの「QMKの知られざる?機能について活用方法を書きます」の予定です。
カレンダー#2は明日の登録がないようです。最も近いのは12/6、 ぱぱパンダ さんの「3Dプリンタで色々作った話?」の予定です。
この記事は、以下のキーボードで書きました。
- Keyboard: Teihai24Gx2 + 突板貼り仕様ケース
- Switch: Lofree Hades Low-profile POM Switch
- Keycap: 自作の3Dプリントキーキャップ