# SVG to Multi-Color 3D Model Converter # Automatically detects all colors in SVG and creates one part per color # Note: The DYLD_LIBRARY_PATH is needed for Cairo to work on macOS # Basic usage - specify width, logo scales proportionally export DYLD_LIBRARY_PATH="/opt/homebrew/lib:$DYLD_LIBRARY_PATH" && source .venv/bin/activate && python svg_logo_to_stl.py "Color logo - no background.svg" logo_output --width-mm 254 --base-thickness 1.5 --feature-height 2.5 # Plate dimensions - logo scales and centers on specified plate size with margin python svg_logo_to_stl.py underground-magnetics-combined.svg um_logo --plate-width 256 --plate-height 256 --margin 10 --base-thickness 1.5 --feature-height 2.5 # Or if you've already activated the venv and set the library path: python svg_logo_to_stl.py "Color logo - no background.svg" logo_output --width-mm 254 --base-thickness 1.5 --feature-height 2.5 # Works with ANY SVG file! The script will: # 1. Automatically detect all unique colors # 2. Create one part per color # 3. Generate assembly with separate selectable parts # Output files: # - logo_output_base.stl - Black base plate # - logo_output_{color}.stl - One STL per detected color # - logo_output_assembled.stl - All parts combined (single mesh) # - logo_output_assembled.3mf - All parts as single mesh (for paint tool) # - logo_output_parts.3mf - Separate selectable parts (BEST for multi-color!) # Import logo_output_parts.3mf into BambuStudio # Each detected color becomes a separate selectable part # Assign different filaments to each part for multi-color printing # Example for this logo: # 1. base - black base plate # 2. white - "SPARKSOFT DESIGN" text # 3. green - microchip icon + "EMBEDDED SOLUTIONS" text # Total model height: base_thickness + feature_height (default: 0.8mm + 1.8mm = 2.6mm) # IMPORTANT: Scale must be 254mm or larger for 0.4mm nozzle # Smaller sizes cause features to be too small for proper toolpath generation # Parameters: # --width-mm: Logo width in mm (if plate dimensions not specified) # --plate-width: Plate width in mm (logo will be scaled and centered) # --plate-height: Plate height in mm (logo will be scaled and centered) # --margin: Margin around logo when using plate dimensions (default: 0) # --base-thickness: Base plate thickness in mm (default: 0.8) # --feature-height: Raised feature height in mm (default: 1.8)