prepare-print-model
À propos
Cette compétence prépare les modèles 3D pour l'impression FDM/SLA en gérant l'exportation, la réparation des maillages et l'analyse d'imprimabilité. Elle vérifie l'épaisseur des parois, génère des supports et optimise l'orientation des pièces pour garantir une découpe réussie. Utilisez-la lors de la conversion de modèles CAO pour l'impression, du dépannage des échecs de découpe ou de la conversion de formats tout en préservant l'imprimabilité.
Installation rapide
Claude Code
Recommandé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-modelCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
備印模
出優 3D 模為加製。涵自 CAD/塑軟出至網修、印性析、支生、切配之全程。確模流形、壁足、向正為強印質。
用
- 自 CAD(Fusion 360、SolidWorks、Onshape)或 3D 塑(Blender、Maya)出為印→用
- 驗現 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)
行
一:自源軟出模
出 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)。
敗:察模全定(無建幾何)、無缺面、諸組件可見。
二:驗網整
察網流形可印:
# 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
自修敗→返源軟修塑誤(合頂、開邊、疊體)。
三:察壁厚
驗擇程之最小壁厚:
程之最小壁厚:
| 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」切設
- 雛形受減強
四:定印向
擇向以優強、面、支用:
向決陣:
為強:
- 向使層線垂於主載向
- 例:張力托→豎印使層沿載軸疊
為面:
- 大/顯面平於床(少階)
- 要寸合 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
得:向擇含明強、面、支取捨之由。
敗:無向皆合→序為:功強→寸精→面→支少。
五:生支構
配自動或手支於懸:
支角限:
- 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
得:支生於諸過限懸、覽無浮幾何。
敗:自支不足:
- 要區加手支強
- 薄懸近增支密
- 支不可→分模印段
六:配切設
設程合參:
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」設於擇材、後迭。
七:層覽切
察切 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-跳
- 首層不擠:Z 差降 0.05mm
- 頂層稀:頂實層增至 5+
得:覽示連邊、正填、清旅、無顯缺。
敗:調切設重切。常修:
- 薄壁缺→啟「Detect thin walls」或減線寬
- 劣橋→橋速減 30mm/s、增冷
- 拉絲→退距 +1mm、溫 -5°C
八:出 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 差校
- 餘絲/樹脂足
- 印時於監計可
得:G-code 檔存含內元、溫驗、印時/材估合理。
敗:印時過(>12 時)→計:
- 增層高(0.2 → 0.28mm 省 ~30%)
- 減邊(4 → 3)
- 減填(40% → 20% 為非結)
- 縮模若大不要
驗
- 模自源軟出含正單位(mm)與規
- 網整驗:流形、無孔、法正
- 壁厚達擇程最小(≥0.8mm FDM、≥0.4mm SLA)
- 印向為強、面、支取捨優
- 諸 >45°(FDM)或 >30°(SLA)懸支生
- 切設含合層高與參
- 層覽察、無缺或浮區
- G-code 出含驗溫與合理印時
- 印前清單畢(床平、材入等)
忌
- 略網修:非流形可切而印敗含缺或畸層
- 忽壁厚:薄壁(< 最小)有缺、大減強
- 強之向誤:張件含層平於載生弱離層
- 支不足:輕懸角致下垂、拉絲、全敗
- 首層忽:90% 印敗於首層——Z 差與床粘為要
- 網路溫:諸印機/材組獨;必以塔試校溫
- 層高過細:細於 2× 層高之微特不解
- 不覽切:切可作未期決(薄壁缺、怪填);印前必覽
- 材吸濕:濕絲(尤 Nylon、TPU、PETG)致層粘劣、拉絲、脆
- 支自信:含大懸重件即支亦可垂——先試於小模
參
- select-print-material:按機、熱、化需擇材
- troubleshoot-print-issues:備模仍敗診修
- Model with Blender(未技):自始為印優塑 3D 模
- Calibrate 3D Printer(未技):E 步、流率、溫塔、退調
Dépôt GitHub
Compétences associées
content-collections
MétaCette compétence propose une configuration éprouvée en production pour Content Collections, un outil axé sur TypeScript qui transforme des fichiers Markdown/MDX en collections de données typées de manière sûre avec une validation Zod. Utilisez-la lors de la création de blogs, de sites de documentation ou d'applications Vite + React riches en contenu pour garantir la sécurité de typage et la validation automatique du contenu. Elle couvre tout, de la configuration du plugin Vite et de la compilation MDX à l'optimisation des déploiements et la validation des schémas.
polymarket
MétaCette compétence permet aux développeurs de créer des applications avec la plateforme de marchés prédictifs Polymarket, incluant l'intégration d'API pour le trading et les données de marché. Elle fournit également une diffusion de données en temps réel via WebSocket pour surveiller les transactions en direct et l'activité du marché. Utilisez-la pour mettre en œuvre des stratégies de trading ou pour créer des outils traitant les mises à jour de marché en direct.
creating-opencode-plugins
MétaCette compétence aide les développeurs à créer des plugins OpenCode qui s'interconnectent avec plus de 25 types d'événements tels que les commandes, les fichiers et les opérations LSP. Elle fournit la structure du plugin, les spécifications de l'API événementielle et les modèles d'implémentation pour les modules JavaScript/TypeScript. Utilisez-la lorsque vous avez besoin d'intercepter, de surveiller ou d'étendre le cycle de vie de l'assistant IA OpenCode avec une logique personnalisée pilotée par les événements.
sglang
MétaSGLang est un framework de service LLM haute performance spécialisé dans la génération rapide et structurée pour les workflows JSON, regex et agentiques grâce à son cache de préfixe RadixAttention. Il offre une inférence nettement plus rapide, particulièrement pour les tâches avec des préfixes répétés, ce qui le rend idéal pour les sorties complexes et structurées ainsi que les conversations multi-tours. Choisissez SGLang plutôt que des alternatives comme vLLM lorsque vous avez besoin d'un décodage contraint ou que vous construisez des applications avec un partage étendu de préfixes.
