G-code generator for 3D printers (Prusa, Voron, Creality, etc.)

supermerill 3ce985c97d correct release ubuntu version name 9 месяцев назад
.github 16cd83701c fix mac arm rc name 10 месяцев назад
cmake a2efcd3a12 Merge remote-tracking branch 'remotes/prusa/master_250' into dev 2 лет назад
deps 8d2751646e apple silicon build fix 11 месяцев назад
doc 71e1c53d8c Update How to build - Mac OS.md 1 год назад
lib 6e0017ff8f Merge remote-tracking branch 'remotes/prusa/master' 2.4 into dev 2.3.58 3 лет назад
resources 57e2cd12c4 Fix Wipe tower starting wipe speed as % 10 месяцев назад
sandboxes e185bf58b7 Replaced "Simple shorthands for smart pointers" shptr, uqptr, wkptr 3 лет назад
src 7bc92d156d fix linux debug build 9 месяцев назад
t 96eed73b1b Fixed infill polygons filtering. 2 лет назад
tests 6f735d3149 Split perimeters (perimeter count) into contour & hole (if not -1) 10 месяцев назад
xs a2efcd3a12 Merge remote-tracking branch 'remotes/prusa/master_250' into dev 2 лет назад
.clang-format 4c9e5cbd9e clang-format: allow longer lines. 1 год назад
.gitignore 6e0017ff8f Merge remote-tracking branch 'remotes/prusa/master' 2.4 into dev 2.3.58 3 лет назад
.gitmodules f860364258 revert profiles deletion from prusa 2.5 merge 2 лет назад
BuildLinux.sh 540a149b80 remove some linux warnings. 9 месяцев назад
BuildMacOS.sh 2e6c5e3310 updated BuildMacOS.sh to support XCode builds 1 год назад
CMakeLists.txt 8d2751646e apple silicon build fix 11 месяцев назад
LICENSE 7308017ee8 Added the AGPL v3 license file 7 лет назад
PrusaSlicer.mo 028d853299 Update on Brazilian Portuguese translation 5 лет назад
PrusaSlicer.sublime-project a3c1ef509c Further renaming to PrusaSlicer 5 лет назад
README.md 3aaab31e07 Revised readme 4 лет назад
build_win.bat 8351d80145 MLocalization update: now save TODO and all utility files for easier updating of localization 3 лет назад
create_release.py 3ce985c97d correct release ubuntu version name 9 месяцев назад
version.inc d8932f2d73 change version to 2.5.60.0 10 месяцев назад

README.md

Slic3r Build Status Build status Build StatusCoverity Status

We have automated builds for Windows (64-bit) and OSX (>= 10.7). Get a fresh build now and stay up-to-date with the development!

The MacOS X build server is kindly sponsored by:

So, what's this Slic3r?

Slic3r is mainly a toolpath generator for 3D printers: it reads 3D models (STL, OBJ, AMF, 3MF) and it converts them into G-code instructions for 3D printers. But it does much more than that, see the features list below.

Slic3r was born in 2011 within the RepRap community and thanks to its high configurability became the swiss-army knife for 3D printing. It served as a platform for implementing several new (experimental) ideas that later became technology standards, such as multiple extruders, brim, variable-height layers, per-object settings, modifiers, post-processing scripts, G-code macros and more. Despite being based on volunteer efforts, Slic3r is still pushing the boundaries of 3D printing.

Slic3r has been rebased from the active PrusaSlicer and SuperSlicer forks with an eye towards continuing pushing the boundaries of 3D printing and being an slicer for all printers.

Slic3r is:

  • Open: it is totally open source and it's independent from any commercial company or printer manufacturer. We want to keep 3D printing open and free.
  • Compatible: it supports all the known G-code dialects (Marlin, Repetier, Mach3, LinuxCNC, Machinekit, Smoothie, Makerware, Sailfish).
  • Advanced: many configuration options allow for fine-tuning and full control. While novice users often need just few options, Slic3r is mostly used by advanced users.
  • Community-driven: new features or issues are discussed in the GitHub repository. Join our collaborative effort and help improve it!
  • Robust: the codebase includes more than 1,000 unit and regression tests, collected in 6 years of development.
  • Modular: the core of Slic3r is libslic3r, a C++ library that provides a granular API and reusable components.
  • Embeddable: a complete and powerful command line interface allows Slic3r to be used from the shell or integrated with server-side applications.
  • Powerful: see the list below!

See the project homepage at slic3r.org for more information.

Features

(Most of these are also available in the command line interface.)

  • G-code generation for FFF/FDM printers;
  • conversion between STL, OBJ, AMF, 3MF and POV formats;
  • auto-repair of non-manifold meshes (and ability to re-export them);
  • SVG export of slices;
  • built-in USB/serial host controller, supporting multiple simultaneous printers each one with a spool queue;
  • OctoPrint integration (send to printer);
  • built-in projector and host for DLP printers;
  • tool for cutting meshes in multiple solid parts with visual preview (also in batch using a grid);
  • tool for extruding 2.5D TIN meshes.

What language is it written in?

The core parts of Slic3r are written in C++11, with multithreading. The graphical interface is in the process of being ported to C++14.

How to install?

You can download a precompiled package from slic3r.org (releases) or from dl.slicr3r.org (automated builds).

If you want to compile the source yourself follow the instructions on one of these wiki pages:

Can I help?

Sure, but please read the CONTRIBUTING document first!

Directory structure

  • package/: the scripts used for packaging the executables
  • src/: the C++ source of the slic3r executable and the CMake definition file for compiling it
  • src/slic3r/GUI: The C++ GUI.
  • tests: Test suite for Slic3r. Implemented with Catch2
  • t/: the really old test suite (deprecated)
  • utils/: various useful scripts
  • src/libslic3r/: C++ sources for libslic3r
  • xs/xsp/: bindings for calling libslic3r from Perl (XS) (deprecated)

Licensing and attribution

Slic3r is licensed under the GNU Affero General Public License, version 3.

PrusaSlicer is licensed under the GNU Affero General Public License, version 3. PrusaSlicer is owned by Prusa Research. PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci.

The GNU Affero General Public License, version 3 ensures that if you use any part of this software in any way (even behind a web server), your software must be released under the same license.

Acknowledgements

The main author of Slic3r is Alessandro Ranellucci (@alranel, Sound in IRC, @alranel on Twitter), who started the project in 2011.

Joseph Lenox (@lordofhyphens, LoH in IRC, @LenoxPlay on Twitter) is the current co-maintainer.

Contributions by Henrik Brix Andersen, Vojtech Bubnik, Nicolas Dandrimont, Mark Hindess, Petr Ledvina, Y. Sapir, Mike Sheldrake, Kliment Yanev and numerous others. Original manual by Gary Hodgson. Slic3r logo designed by Corey Daniels, Silk Icon Set designed by Mark James, stl and gcode file icons designed by Akira Yasuda.

How can I invoke Slic3r using the command line?

The command line is documented in the relevant manual page.