prepare-print-model
정보
이 스킬은 3D 모델의 내보내기, 메쉬 수리, 프린팅 적합성 분석을 처리하여 FDM/SLA 프린팅을 준비합니다. 벽 두께를 검증하고, 서포트를 생성하며, 부품 방향을 최적화하여 성공적인 슬라이싱을 보장합니다. CAD 소프트웨어에서 모델을 내보낼 때, 슬라이싱 오류를 해결할 때, 또는 프린팅을 위해 모델 형식을 변환할 때 사용하세요.
빠른 설치
Claude Code
추천npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/prepare-print-modelClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
備齊列印模型
為加成製造匯出並最佳化 3D 模型。本技能涵蓋自 CAD/建模軟體匯出,至網格修補、可列印性分析、支撐生成與切片設定之完整流程。確保模型流形、壁厚足、方向正確以利強度與品質。
適用時機
- 自 CAD 軟體(Fusion 360、SolidWorks、Onshape)或 3D 建模工具(Blender、Maya)為 3D 列印匯出
- 切片前先驗證既有 STL/3MF 是否可印
- 排除無法正確切片或列印之模型
- 為強度、表面或最少支撐而最佳化擺向
- 為具特定強度或公差需求之機械件作準備
- 在保留可列印性下於格式間轉換(STL、3MF、OBJ)
輸入
- source_model:CAD 檔或 3D 模型檔之路徑(STEP、F3D、STL、OBJ、3MF)
- target_process:列印製程類型(
fdm、sla、sls) - material:擬用列印材料(如
pla、petg、abs、standard-resin) - functional_requirements:受力方向、公差需求、表面要求
- printer_specs:成形體積、噴嘴直徑(FDM)、層高能力
- slicer_tool:目標切片軟體(
cura、prusaslicer、orcaslicer、chitubox)
步驟
1. 自來源軟體匯出模型
以適合列印之格式匯出 3D 模型:
FDM/SLA 用:
# If starting from CAD (Fusion 360, SolidWorks)
# Export as: STL (binary) or 3MF
# Resolution: High (triangle count sufficient for detail)
# Units: mm (verify scale)
# Example export settings:
# STL: Binary format, refinement 0.1mm
# 3MF: Include color/material data if using multi-material printer
預期: 以適切解析度匯出之模型檔(機械件用 0.1mm 弦容差,有機形用 0.05mm)。
失敗時: 檢查模型是否完整定義(無構造幾何)、無遺面、所有元件皆可見。
2. 驗證網格完整性
檢查網格是否流形且可印:
# Install mesh repair tools if needed
# sudo apt install meshlab admesh
# Check STL file for errors
admesh --check model.stl
# Look for:
# - Non-manifold edges: 0 (every edge connects exactly 2 faces)
# - Holes: 0
# - Backwards/inverted normals: 0
# - Degenerate facets: 0
常見問題:
- 非流形邊:多面共享一邊,或邊僅連一面
- 洞:表面有縫
- 法線反向:模型內外顛倒
- 相交面:自交幾何
預期: 報告顯示 0 錯,或錯可修。
失敗時: 自動或手動修補網格:
# Automatic repair with admesh
admesh --write-binary-stl=model_fixed.stl \
--exact \
--nearby \
--remove-unconnected \
--fill-holes \
--normal-directions \
model.stl
# Or use meshlab GUI for manual inspection/repair
meshlab model.stl
# Filters → Cleaning and Repairing → Remove Duplicate Vertices
# Filters → Cleaning and Repairing → Remove Duplicate Faces
# Filters → Normals → Re-Orient all faces coherently
若自動修補失敗,回到來源軟體修建模錯(重合頂點、開邊、重疊本體)。
3. 檢查壁厚
驗證所擇製程之最小壁厚:
各製程之最小壁厚:
| Process | Min Wall | Recommended Min | Structural Parts |
|---|---|---|---|
| FDM (0.4mm nozzle) | 0.8mm | 1.2mm | 2.4mm+ |
| FDM (0.6mm nozzle) | 1.2mm | 1.8mm | 3.6mm+ |
| SLA (standard) | 0.4mm | 0.8mm | 2.0mm+ |
| SLA (engineering) | 0.6mm | 1.2mm | 2.5mm+ |
| SLS (nylon) | 0.7mm | 1.0mm | 2.0mm+ |
# Check wall thickness visually in slicer:
# - Import model
# - Enable "Thin walls" detection
# - Slice with 0 infill to see wall structure
# For precise measurement, use CAD software:
# - Measure distance between parallel surfaces
# - Check in critical load-bearing areas
預期: 各壁皆達所擇製程之最小厚。薄壁標記以便檢視。
失敗時: 回 CAD 加厚壁,或:
- 改用較小噴嘴(FDM)
- 啟用切片之「detect thin walls」
- 對原型接受較弱之強度
4. 判定列印擺向
擇擺向以最佳化強度、表面與支撐用量:
擺向決策矩陣:
為強度:
- 使層線垂直於主受力方向
- 例:受拉之托架→直立列印,使層沿受力軸堆疊
為表面:
- 使最大/最顯眼之面平於床(最少階梯)
- 關鍵尺寸對齊 X/Y 平面(精度高於 Z)
為最少支撐:
- 將懸垂 >45°(FDM)或 >30°(SLA)最小化
- 可能時將平面置於床上
受力方向分析:
If part experiences:
- Tensile load along axis → print with layers perpendicular to axis
- Compressive load → layers can be parallel (less critical)
- Bending moment → layers perpendicular to neutral axis
- Shear → avoid layer interfaces parallel to shear direction
預期: 已擇擺向並明示為強度、表面或支撐取捨之理由。
失敗時: 若無單一擺向滿足所有需求,依序排優:功能強度→尺寸精度→表面→最少支撐。
5. 生成支撐結構
為懸垂配置自動或手動支撐:
支撐角門檻:
- FDM:垂直 45°(部分搭橋可至 60°)
- SLA:垂直 30°(搭橋能力較弱)
- SLS:無需支撐(粉床支撐)
支撐類型:
樹狀支撐(FDM,建議):
- 與模型接點較少
- 易拆
- 有機形佳
- 設定:分支角 40-50°、密度中
線性支撐(FDM,傳統):
- 對大懸垂較穩
- 接點較多(拆較難)
- 設定:格紋、密度 15-20%、介面層 2-3
重支撐(SLA):
- 重件用厚接點
- 表面留痕之風險
- 設定:接觸直徑 0.5-0.8mm、密度依重量
介面層:
- 於支撐與模型間加 2-3 介面層
- 減少表面痕
- 略易拆
# In slicer (PrusaSlicer example):
# Print Settings → Support material
# - Generate support material: Yes
# - Overhang threshold: 45° (FDM) / 30° (SLA)
# - Pattern: Rectilinear / Tree (auto)
# - Interface layers: 3
# - Interface pattern spacing: 0.2mm
預期: 已為超出門檻之懸垂生成支撐,預覽顯示無浮空幾何。
失敗時: 若自動支撐不足:
- 於關鍵區加手動支撐強制器
- 於薄懸垂附近增支撐密度
- 切分模型分節列印(若無法支撐)
6. 設定切片設定檔
設製程適當之參數:
FDM 層高:
- 草稿:0.28-0.32mm(快、層紋顯)
- 標準:0.16-0.20mm(質速兼顧)
- 精細:0.08-0.12mm(順、慢)
- 規則:層高 = 噴嘴直徑之 25-75%
SLA 層高:
- 標準:0.05mm(兼顧)
- 精細:0.025mm(小件、高細)
- 快:0.1mm(原型)
各製程關鍵參數:
FDM:
layer_height: 0.2mm
line_width: 0.4mm (= nozzle diameter)
perimeters: 3-4 (structural), 2 (cosmetic)
top_bottom_layers: 5 (0.2mm layers = 1mm solid)
infill_percentage: 20% (cosmetic), 40-60% (functional)
infill_pattern: gyroid (FDM), grid (basic)
print_speed: 50mm/s perimeter, 80mm/s infill
temperature: material-specific (see select-print-material skill)
SLA:
layer_height: 0.05mm
bottom_layers: 6-8 (strong bed adhesion)
exposure_time: material-specific (2-8s per layer)
bottom_exposure_time: 30-60s
lift_speed: 60-80mm/min
retract_speed: 150-180mm/min
預期: 設定檔以製程適當之預設配置,並依特定材料/模型需求微調。
失敗時: 若不確定參數,先用切片之「Standard Quality」預設,再迭代。
7. 逐層預覽切片
檢視切片之 G-code:
# In slicer:
# - Slice model
# - Use layer preview slider to inspect each layer
# - Check for:
# * Gaps in perimeters (indicates thin walls)
# * Floating regions (missing supports)
# * Excessive stringing paths (reduce travel)
# * First layer: proper squish and adhesion
# * Top layers: sufficient solid infill
預覽中之警訊:
- 實體區出現白色縫隙:壁過薄不及當前線寬
- 長距離移動:增回抽或加 z-hop
- 首層未壓實:將 Z-offset 下調 0.05mm
- 頂層稀薄:將頂層加至 5+
預期: 預覽顯示連續之周線、適切之填充、乾淨之移動,無顯著缺陷。
失敗時: 調整切片參數重切。常見修補:
- 薄壁縫→啟用「Detect thin walls」或減線寬
- 搭橋差→將搭橋速降至 30mm/s、增冷卻
- 拉絲→回抽距離 +1mm、溫度 -5°C
8. 匯出 G-code 並驗證
以描述性名稱儲存切片之 G-code:
# Naming convention:
# <part_name>_<material>_<layer_height>_<profile>.gcode
# Example: bracket_petg_0.2mm_standard.gcode
# Verify G-code:
grep "^;PRINT_TIME:" model.gcode # Check estimated time
grep "^;Filament used:" model.gcode # Check material usage
head -n 50 model.gcode | grep "^M104\|^M140" # Verify temperatures
# Expected first layer temp:
# M140 S85 (bed temp for PETG)
# M104 S245 (hotend temp for PETG)
列印前查核表:
- 床已平整且潔淨
- 已載正確且乾燥之材料
- 溫度與材料需求相符
- 首層 Z-offset 已校正
- 線材/樹脂量足
- 列印時間於監控計畫內可承
預期: G-code 檔已儲存並含中繼資料、溫度已驗證、列印時間/材料估值合理。
失敗時: 若列印時間過長(>12 小時),可考慮:
- 增層高(0.2 → 0.28mm 約省 30% 時間)
- 減周線(4 → 3)
- 減填充(40% → 20%,非結構件)
- 若尺寸非關鍵,縮小模型
驗證
- 模型已自來源軟體以正確單位(mm)與比例匯出
- 網格完整性已驗:流形、無洞、法線正確
- 壁厚達所擇製程之最低(FDM ≥0.8mm、SLA ≥0.4mm)
- 列印擺向已為強度、表面或支撐取捨而最佳化
- 已為所有 >45°(FDM)或 >30°(SLA)之懸垂生成支撐
- 切片設定檔已配適當之層高與參數
- 已逐層預覽,無縫隙或浮空
- G-code 已匯出,溫度已驗、列印時間合理
- 列印前查核表已完成(床整、料載入等)
常見陷阱
- 跳過網格修補:非流形網格雖能切片,但會以縫隙或畸層失印
- 忽略壁厚:壁過薄會出現縫隙,強度大減
- 強度擺向錯:將受拉件以層平行於受力方向列印,造成弱層分離面
- 支撐不足:低估懸垂角致下塌、拉絲或全敗
- 疏忽首層:90% 失印起於首層——Z-offset 與床附著至關緊要
- 網路上抓溫度:每組印機/材料皆獨特;務必以塔測校正
- 細節過於層高:小於 2 倍層高之精細特徵無法正解
- 未預覽切片:切片可能作出意外決策(薄壁縫、奇填充);列印前務必預覽
- 材料吸濕:濕線材(尤其 Nylon、TPU、PETG)致層附差、拉絲、易脆
- 過信支撐:含大懸垂之重件即便有支撐仍可能下塌——先以小件試之
相關技能
- select-print-material:依機械、熱、化學需求擇適切材料
- troubleshoot-print-issues:若已備齊之模型仍失印,診斷並修
- Model with Blender(未來技能):自零起建可印之 3D 模型
- Calibrate 3D Printer(未來技能):E-steps、流量、溫度塔、回抽調校
GitHub 저장소
연관 스킬
content-collections
메타이 스킬은 콘텐츠 콜렉션(Content Collections)을 위한 프로덕션 검증된 설정을 제공합니다. 콘텐츠 콜렉션은 Markdown/MDX 파일을 Zod 검증이 포함된 타입 안전한 데이터 콜렉션으로 변환해주는 TypeScript 최우선 도구입니다. 블로그, 문서 사이트 또는 콘텐츠 중심의 Vite + React 애플리케이션을 구축할 때 타입 안전성과 자동 콘텐츠 검증을 보장하기 위해 사용하세요. Vite 플러그인 구성과 MDX 컴파일부터 배포 최적화 및 스키마 검증에 이르기까지 모든 것을 다룹니다.
polymarket
메타이 스킬은 개발자들이 Polymarket 예측 시장 플랫폼을 활용한 애플리케이션을 구축할 수 있도록 지원하며, 거래 및 시장 데이터를 위한 API 통합 기능을 포함합니다. 또한 WebSocket을 통한 실시간 데이터 스트리밍을 제공하여 실시간 거래와 시장 활동을 모니터링할 수 있습니다. 이를 통해 거래 전략을 구현하거나 실시간 시장 업데이트를 처리하는 도구를 생성하는 데 활용할 수 있습니다.
creating-opencode-plugins
메타이 스킬은 개발자들이 명령어, 파일, LSP 작업 등 25개 이상의 이벤트 유형에 연결되는 OpenCode 플러그인을 만들 수 있도록 돕습니다. JavaScript/TypeScript 모듈을 위한 플러그인 구조, 이벤트 API 명세, 구현 패턴을 제공합니다. OpenCode AI 어시스턴트의 라이프사이클을 사용자 정의 이벤트 기반 로직으로 가로채거나, 모니터링하거나, 확장해야 할 때 사용하세요.
sglang
메타SGLang은 RadixAttention 프리픽스 캐싱을 활용하여 JSON, 정규식, 에이전트 워크플로우를 위한 고속 구조화 생성에 특화된 고성능 LLM 서빙 프레임워크입니다. 특히 반복되는 프리픽스가 있는 작업에서 상당히 빠른 추론 속도를 제공하여 복잡한 구조화 출력 및 다중 턴 대화에 이상적입니다. 제약 디코딩이 필요하거나 광범위한 프리픽스 공유가 있는 애플리케이션을 구축할 때는 vLLM과 같은 대안보다 SGLang을 선택하십시오.
