mcpField
O
openscad

openscad

github.com/iancandersonデザイン・UI13055 回インストール38 週間前に更新
リポジトリ

openscad について

openscad は、3D プリント用デザインの OpenSCAD ファイルを版管理し、PNG プレビューをレンダリングして反復案を比較するスキルです。版名の付与から画像確認までの手順を示し、その後の STL 出力と印刷適性チェックにもつなげます。

主な機能

  1. 01ゼロ埋め連番の SCAD ファイルを作成
  2. 02デザインの PNG プレビューを生成
  3. 03現行版と前版を比較
  4. 04画像確認に基づいて設計を反復
  5. 05STL 出力と検証へ進行

活用シーン

  1. 01版を重ねて3Dプリント用オブジェクトを設計
  2. 02モデルのプレビューを見て変更を検討
  3. 03設計の反復案の見た目を比較
  4. 04確認済みデザインを STL 出力に備える

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/iancanderson/openscad-agent --skill openscad

インストール後、Claude Code で/openscadを入力して読み込まれたか確認します。

同梱ファイルscripts/version-scad.sh

詳細

OpenSCAD デザインスキル

3D プリント用デザインのバージョン管理された OpenSCAD ファイルを作成し、プレビューをレンダリングして、各イテレーションを比較します。

ワークフロー

1. 次のバージョン番号を確認する

新しい .scad ファイルを作成する前に、既存のバージョンを確認します。

.claude/skills/openscad/scripts/version-scad.sh <name>

次のバージョン番号とファイル名が返されます。たとえば、piano_001.scad が存在する場合は、piano_002 が返されます。

2. バージョン管理された .scad ファイルを作成する

バージョン付きのファイル名(例:piano_002.scad)に OpenSCAD コードを記述します。

3. プレビューをレンダリングする
.claude/skills/preview-scad/scripts/render-scad.sh <name>_<version>.scad --output <name>_<version>.png

対応するバージョン番号の PNG(例:piano_002.png)が作成されます。

4. 前のバージョンと比較する

現在の PNG と前の PNG を両方読み込み、見た目を比較します。

  • 現在:piano_002.png
  • 前のバージョン:piano_001.png(存在する場合)

どこが変わったか、新しいバージョンが要件により適合しているかを評価します。

5. イテレーションを繰り返す

デザインの改善が必要な場合:

  1. 問題点を分析する
  2. 次のバージョンを作成する(例:piano_003.scad)
  3. 再度レンダリングして比較する

ファイル命名規則

<model-name>_<version>.scad  ->  <model-name>_<version>.png

例:

  • phone_stand_001.scad -> phone_stand_001.png
  • phone_stand_002.scad -> phone_stand_002.png
  • gear_001.scad -> gear_001.png

モデル名にはアンダースコアを使用し、バージョン番号は必ず3桁のゼロ埋めにします。

セッション例

ユーザーがピアノモデルを依頼した場合:

  1. 既存のバージョンを確認します:

    .claude/skills/openscad/scripts/version-scad.sh piano
    

    出力:piano_001(既存ファイルなし)

  2. 初期デザインを記述した piano_001.scad を作成します

  3. プレビューをレンダリングします:

    .claude/skills/preview-scad/scripts/render-scad.sh piano_001.scad --output piano_001.png
    
  4. piano_001.png を読み込んで結果を確認します

  5. 改善が必要な場合は、piano_002.scad を作成し、piano_002.png にレンダリングします

  6. piano_001.png と piano_002.png を両方読み込んで、イテレーションを比較します

レンダリングオプション

レンダリングオプションの詳細については、/preview-scad を参照してください。

  • --size <WxH> - 画像の寸法(デフォルト:800x600)
  • --camera <x,y,z,tx,ty,tz,d> - カメラの位置
  • --colorscheme <name> - 配色スキーム(デフォルト:Cornfield)
  • --render - フルレンダリングモード(低速ですが、より正確)
  • --preview - プレビューモード(高速、デフォルト)

次のステップ

PNG プレビューでデザインが正しく見えるようになったら:

  1. STL にエクスポート:/export-stl を使って最終バージョンを STL 形式に変換します
  2. エクスポートでは形状の検証も行い、印刷可能性の問題を検出します

パイプライン全体

/openscad → /preview-scad → /export-stl (with validation)

ヒント

  • シンプルな状態から始め、イテレーションごとに複雑さを加えます
  • オブジェクトの特徴を表す、わかりやすいモデル名を使用します
  • 各バージョンでは、特定の改善点に絞って変更します
  • バージョン間の変更点を、ユーザーへの回答で説明します
  • プレビューが正しく見えるようになってから、STL にエクスポートします
  • モデルを印刷可能な状態と判断する前に、必ず slice-check を実行します

コメント