CAD Engineering Skill
Expert guidance on Computer-Aided Design systems, file formats, conversion technologies, and interoperability between CAD platforms.
Version Metadata
version: 1.0.0 python_min_version: '3.10' compatibility: tested_python:
- '3.10'
- '3.11'
- '3.12'
- '3.13' os:
- Windows
- Linux
- macOS
Changelog
[1.0.0] - 2026-01-07
Added:
-
Initial version metadata and dependency management
-
Semantic versioning support
-
Compatibility information for Python 3.10-3.13
Changed:
- Enhanced skill documentation structure
When to Use
-
CAD software selection and guidance
-
File format conversions (DWG, DXF, STEP, IGES, etc.)
-
PDF to CAD conversion strategies
-
Technical drawing analysis
-
3D modeling approaches
-
Open-source vs proprietary CAD decisions
-
CAD automation and scripting
-
Cross-platform interoperability
Agent Capabilities
This skill integrates agent capabilities from /agents/cad-engineering-specialist/ :
Open-Source CAD Expertise
Software Capabilities
FreeCAD Parametric 3D modeling, Python scripting, workbench customization
LibreCAD 2D drafting, DXF/DWG handling, command-line operations
OpenSCAD Programmatic 3D modeling, CSG operations, parametric design
QCAD Professional 2D CAD, scripting interface, batch processing
BRL-CAD Solid modeling, ray-tracing, geometric analysis
Blender CAD integration, mesh to solid conversion, technical visualization
KiCAD PCB design, electrical schematics, 3D board visualization
Proprietary CAD Knowledge
Software Capabilities
AutoCAD Full command set, AutoLISP/VBA automation, custom tools
SolidWorks Feature-based modeling, API programming, PDM integration
CATIA V5/V6 platforms, complex surfaces, PLM workflows
Inventor Parametric design, iLogic rules, Vault integration
Fusion 360 Cloud collaboration, generative design, CAM integration
Creo/Pro-E Advanced assembly, mechanism design
NX High-end manufacturing, synchronous technology
File Format Expertise
Category Formats
Native DWG, DXF, DGN, IGES, STEP, STL, SAT, Parasolid
Exchange IFC, COLLADA, OBJ, FBX, 3DS, VRML, X3D
Documentation PDF, SVG, EPS, DWF, 3D PDF
Delegation Capability
This specialist agent delegates to software-specific agents:
delegation: software_specific_agents: freecad: path: agents/freecad capabilities: - parametric_modeling - assembly_design - technical_drawings gmsh: path: agents/gmsh capabilities: - mesh_generation - finite_element_preprocessing - mesh_optimization
PDF to CAD Conversion
Conversion Strategy Selection
-
Vector PDFs: Direct vector extraction
-
Scanned Drawings: OCR and vectorization
-
Mixed Content: Hybrid approach
-
Complex Cases: Manual reconstruction
Conversion Tools
Category Tools
Commercial AutoDWG, AnyDWG, Print2CAD, Scan2CAD, pdf2cad
Open-Source Inkscape+pstoedit, potrace, autotrace, pdf2dxf
Libraries OpenCV, Tesseract OCR, CADLib, LibreDWG, TeighaFile
Cloud Services Zamzar, CloudConvert, CAD Exchanger
AI/ML Tools Deep learning drawing recognition, neural vectorization
PDF Analysis Workflow
from digitalmodel.agents.cad import PDFAnalyzer
Analyze PDF type
analyzer = PDFAnalyzer() analysis = analyzer.analyze("drawing.pdf")
print(f"PDF Type: {analysis['type']}") # vector/raster/hybrid print(f"Creation Method: {analysis['creation_method']}") print(f"Embedded Fonts: {analysis['fonts']}") print(f"Layer Info: {analysis['layers']}") print(f"Scale Detection: {analysis['detected_scale']}")
Get conversion recommendation
recommendation = analyzer.recommend_conversion() print(f"Recommended Tool: {recommendation['tool']}") print(f"Expected Accuracy: {recommendation['accuracy']}") print(f"Manual Cleanup: {recommendation['cleanup_required']}")
Conversion Quality Optimization
from digitalmodel.agents.cad import CADConverter
converter = CADConverter()
Pre-processing for scanned PDFs
converter.preprocess( input_file="scanned_drawing.pdf", operations=[ "denoise", "deskew", "contrast_enhance" ] )
Vectorization with tuned parameters
result = converter.convert( input_file="scanned_drawing.pdf", output_file="drawing.dxf", options={ "line_tolerance": 0.5, "arc_detection": True, "text_recognition": True, "dimension_extraction": True } )
Post-processing cleanup
converter.postprocess( file="drawing.dxf", operations=[ "remove_duplicates", "close_gaps", "standardize_layers" ] )
Format Conversion Examples
STEP to DXF
from digitalmodel.agents.cad import FormatConverter
converter = FormatConverter()
Convert STEP to DXF with projection
result = converter.convert( input_file="model.step", output_file="drawing.dxf", projection="front", # top, front, right, isometric scale=1.0, layer_mapping={ "visible_edges": "0", "hidden_edges": "hidden", "dimensions": "dimensions" } )
DWG Version Conversion
Convert between DWG versions
result = converter.convert( input_file="drawing_2024.dwg", output_file="drawing_2010.dwg", target_version="2010" # For compatibility )
Batch Format Conversion
from digitalmodel.agents.cad import BatchConverter
batch = BatchConverter()
Convert all STEP files to IGES
results = batch.convert_directory( input_directory="./step_files", output_directory="./iges_files", input_format="STEP", output_format="IGES", parallel=True, workers=4 )
Generate conversion report
batch.generate_report(results, "conversion_report.html")
Technical Drawing Analysis
from digitalmodel.agents.cad import DrawingAnalyzer
analyzer = DrawingAnalyzer()
Analyze technical drawing
analysis = analyzer.analyze("technical_drawing.dxf")
Extract information
print(f"Drawing Scale: {analysis['scale']}") print(f"Units: {analysis['units']}") print(f"Layers: {analysis['layers']}") print(f"Blocks: {analysis['blocks']}") print(f"Dimensions: {len(analysis['dimensions'])}") print(f"Text Annotations: {len(analysis['text'])}")
Validate against standards
validation = analyzer.validate( standard="ISO", # or "ANSI", "DIN", "JIS" checks=["layer_naming", "line_types", "dimensions"] )
MCP Tool Integration
Swarm Coordination
// Initialize CAD expertise swarm mcp__claude-flow__swarm_init { topology: "hierarchical", maxAgents: 5 }
// Spawn specialized agents mcp__claude-flow__agent_spawn { type: "analyst", name: "format-analyzer" } mcp__claude-flow__agent_spawn { type: "coder", name: "converter" } mcp__claude-flow__agent_spawn { type: "reviewer", name: "quality-checker" }
Memory Coordination
// Store conversion configuration mcp__claude-flow__memory_usage { action: "store", key: "cad/conversion/config", namespace: "cad", value: JSON.stringify({ source_format: "PDF", target_format: "DXF", method: "vectorization", accuracy_target: 0.95 }) }
Best Practices
Format Selection
-
STEP: Best for 3D geometry exchange
-
IGES: Legacy support, use STEP when possible
-
DXF: Best for 2D CAD interoperability
-
STL: 3D printing and visualization only
Conversion Quality
-
Always verify dimensional accuracy after conversion
-
Check for missing entities (arcs, splines, text)
-
Validate layer structure preservation
-
Test with small sample before batch processing
Automation
-
Use Python scripting for repeatable tasks
-
Create conversion templates for standard workflows
-
Implement quality checks in CI/CD pipelines
-
Document conversion parameters for reproducibility
Common Issues
Lossy Conversions
Check for conversion losses
losses = converter.check_losses( original="model.step", converted="model.iges" )
if losses["geometry_count_diff"] > 0: print(f"Lost {losses['geometry_count_diff']} entities") if losses["accuracy_loss"] > 0.01: print(f"Accuracy loss: {losses['accuracy_loss']*100:.1f}%")
Version Compatibility
Check format version before conversion
info = converter.get_format_info("drawing.dwg") print(f"DWG Version: {info['version']}") print(f"Created By: {info['application']}") print(f"Compatible With: {info['compatible_versions']}")
Related Skills
-
freecad-automation - FreeCAD operations
-
gmsh-meshing - Mesh generation from CAD
-
orcaflex-modeling - Marine analysis integration
-
structural-analysis - FEM preprocessing
References
-
DWG/DXF Specification: Open Design Alliance
-
STEP Standard: ISO 10303
-
IGES Standard: ASME Y14.26M
-
Agent Configuration: agents/cad-engineering-specialist/agent.yaml
Version History
- 1.0.0 (2025-01-02): Initial release from agents/cad-engineering-specialist/ configuration