$ show prusa3d/PrusaSlicer
PrusaSlicer is a feature-rich 3D printing slicer application that converts 3D models (STL, OBJ, AMF) into G-code for FFF/FDM printers or PNG layers for mSLA printers. Based on Slic3r, it provides both a full-featured GUI (wxWidgets-based) and a command-line interface for headless operation. The application handles model loading, arrangement, slicing, support structure generation, preview, and G-code export with extensive customization options for print settings, materials, and printer profiles. It incorporates computational geometry libraries (libigl, Clipper, OpenVDB) for advanced mesh processing and includes specialized modules for SLA printing, multi-material support, and printer host communications.
The LLM identified 4 files worth highlighting for reuse:
Advanced infill generation system adapted from CuraEngine, featuring pluggable beading strategies and polyline stitching. Implements various infill patterns (gyroid, lightning, honeycomb) through a strategy pattern allowing easy extension. The Arachne module handles complex path generation for internal fill structures with collision avoidance and optimal path ordering.
Specialized support structure generation for SLA/DLP resin printing. Implements intelligent support placement based on island detection, contact point optimization, and parabola-based support tip calculation. Includes hollowing capabilities with automatic drain hole generation and wall thickness optimization. Demonstrates sophisticated 2D/3D geometric processing tailored to resin printing constraints.
Model arrangement and packing system for build plate optimization. Uses No-Fit-Polygon (NFP) computation and various packing strategies (gravity, compactify, rectangle overfit) to optimally place multiple models on the print bed. Includes collision detection, automatic bed shape detection, and support for complex bed geometries. Demonstrates reusable 2D nesting algorithms applicable beyond 3D printing.
Seam placement optimizer that minimizes visual scars on printed surfaces by dynamically positioning layer seams. Uses dynamic programming to find optimal seam positions across layers while considering user-defined seam preferences and geometric constraints. Demonstrates advanced G-code post-processing that improves print quality without modifying slicing parameters.