|
|
--- |
|
|
license: mit |
|
|
language: |
|
|
- en |
|
|
library_name: fastprint |
|
|
pipeline_tag: image-segmentation |
|
|
tags: |
|
|
- art |
|
|
- 3D |
|
|
- 3D-Printing |
|
|
- Manufacturing |
|
|
- Firmware |
|
|
- Cuda |
|
|
- Cude-Acceleration |
|
|
- GPU |
|
|
--- |
|
|
# FastPrint |
|
|
|
|
|
FastPrint is a modular, GPU-accelerated 3D slicer for 3D printing, featuring B-spline and Mitchell–Netravali filtering, CUDA/OpenCL acceleration, and Marlin firmware connectivity. |
|
|
|
|
|
## Features |
|
|
|
|
|
- **STL Model Loading**: Supports ASCII STL files. |
|
|
- **B-spline & Mitchell–Netravali Filtering**: For smooth surface interpolation. |
|
|
- **GPU Acceleration**: Uses ILGPU for CUDA/OpenCL slicing. |
|
|
- **Marlin Firmware Communication**: Connects to standard 3D printers. |
|
|
- **WPF GUI**: Simple interface for slicing and printer control. |
|
|
|
|
|
## Folder Structure |
|
|
|
|
|
- `Geometry/`: B-spline and Mitchell–Netravali filter logic. |
|
|
- `Slicing/`: GPU-accelerated slicing kernel. |
|
|
- `Printer/`: Marlin firmware connector. |
|
|
- `Model/`: STL model loader. |
|
|
- `UI/`: WPF GUI. |
|
|
|
|
|
## Setup |
|
|
|
|
|
1. **Dependencies**: |
|
|
- ILGPU (`NuGet`) |
|
|
- System.IO.Ports |
|
|
- .NET Desktop Runtime |
|
|
|
|
|
2. **CUDA/OpenCL**: |
|
|
- Install CUDA Toolkit for NVIDIA GPU support. |
|
|
- ILGPU will auto-select available accelerators. |
|
|
|
|
|
3. **Build & Run**: |
|
|
- Open in Visual Studio 2022. |
|
|
- Build solution. |
|
|
- Run `FastPrint.UI.MainWindow`. |
|
|
|
|
|
## Usage |
|
|
|
|
|
1. Open an STL file. |
|
|
2. Click "Slice" to process the model. |
|
|
3. Select a COM port and connect to your printer. |
|
|
4. Send G-code commands as needed. |
|
|
|
|
|
## Notes |
|
|
|
|
|
- Only ASCII STL is supported in this version. |
|
|
- Slicing logic is a placeholder; expand as needed for production use. |
|
|
- Visualization and G-code export are not included in this minimal example. |
|
|
|
|
|
--- |
|
|
|
|
|
For questions or contributions, please open an issue or pull request. |