orcaslicer/README.md

96 lines
5.4 KiB
Markdown
Raw Normal View History

2022-07-14 15:12:20 +00:00
[![Build Win64](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_win.yml/badge.svg)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_win.yml)
[![Build Mac AppleSilicon](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_mac_arm64.yml/badge.svg)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_mac_arm64.yml)
[![Build Mac Intel](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_mac_x64.yml/badge.svg)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_mac_x64.yml)
[![Build Linux](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_linux.yml/badge.svg)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_linux.yml)
2023-04-29 10:25:05 +00:00
2023-08-05 01:40:05 +00:00
# Orca Slicer
Orca Slicer is an open source slicer for FDM printers.
You can download Orca Slicer here: [github releases page](https://github.com/SoftFever/OrcaSlicer/releases/).
2023-08-05 01:49:54 +00:00
![discord-mark-blue](https://github.com/SoftFever/OrcaSlicer/assets/103989404/b97d5ffc-072d-4d0a-bbda-e67ef373876f) Join community: [OrcaSlicer Official Discord Server](https://discord.gg/WTEkCR6SnV)
2023-03-12 03:08:56 +00:00
# Main features
- Auto calibrations for all printers
- Sandwich(inner-outer-inner) mode - an improved version of the `External perimeters first` mode
- Precise wall
- Klipper support
- More granular controls
- More features can be found in [change notes](https://github.com/SoftFever/OrcaSlicer/releases/)
2023-08-05 01:40:05 +00:00
### Some background
OrcaSlicer is fork of Bambu Studio
It was previously known as BambuStudio-SoftFever
Bambu Studio is forked from [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community.
Orca Slicer incorporates a lot of features from SuperSlicer by @supermerill
Orca Slicer's logo is designed by community member Justin Levine(@freejstnalxndr)
2023-03-12 03:08:56 +00:00
# How to install
2023-03-12 03:22:43 +00:00
**Windows**:
2023-03-16 16:28:39 +00:00
1. Unzip the binaries to any folder you prefer, then execute orca-slicer.exe to start the application.
- *If you have troubles to run the build, you might need to install following runtimes:*
- [MicrosoftEdgeWebView2RuntimeInstallerX64](https://github.com/SoftFever/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe)
- [vcredist2019_x64](https://github.com/SoftFever/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/vcredist2019_x64.exe)
2022-12-13 16:06:48 +00:00
2023-03-12 03:22:43 +00:00
**Mac**:
2023-03-16 16:28:39 +00:00
1. Download the right binaries for your computer: `arm64` version for Apple Silicon and `x86_64` for Intel CPU.
2. Double click to unzip the package, move OrcaSlicer.app to Application folder.
3. The app is signed but not notarized at the moment due to the proptiery network plugin.
We have two options to make it run on our machines
- Option 1 (You only need to do this once. After that the app can be oppened normally.):
- Step 1: Hold _cmd_ and right click the app, from the context menu choose **Open**.
- Step 2: A warning window will pop up, click _Open_
- Option 2:
2023-03-16 16:28:39 +00:00
Execute this command in terminal: `xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app`
```console
softfever@mac:~$ xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app
```
- Option 3:
2023-03-16 16:28:39 +00:00
- Step 1: open the app, a warning window will pop up
![image](./SoftFever_doc/mac_cant_open.png)
- Step 2: in `System Settings` -> `Privacy & Security`, click `Open Anyway`:
![image](./SoftFever_doc/mac_security_setting.png)
2022-07-14 15:12:20 +00:00
2023-03-12 03:22:43 +00:00
**Linux(Ubuntu)**:
2023-03-16 16:28:39 +00:00
1. If you run into trouble to execute it, try this command in terminal:
`chmod +x /path_to_appimage/OrcaSlicer_ubu64.AppImage`
2022-07-14 15:12:20 +00:00
# How to compile
2023-03-12 03:08:56 +00:00
- Windows 64-bit
- Tools needed: Visual Studio 2019, Cmake, git, Strawberry Perl.
- Run `build_release.bat` in `x64 Native Tools Command Prompt for VS 2019`
- Mac 64-bit
- Tools needed: Xcode, Cmake, git, gettext
- run `build_release_macos.sh`
2022-07-14 15:12:20 +00:00
2023-03-16 16:28:39 +00:00
- Ubuntu
- run `BuildLinux.sh -udisr`
2022-07-14 15:12:20 +00:00
2023-04-06 07:52:32 +00:00
# Note:
If you're running Klipper, it's recommended to add the following configuration to your `printer.cfg` file.
```
# Enable object exclusion
[exclude_object]
# Enable arcs support
[gcode_arcs]
resolution: 0.1
```
2022-07-14 15:12:20 +00:00
# License
2023-03-12 03:08:56 +00:00
Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab.
Bambu Studio is licensed under the GNU Affero General Public License, version 3. Bambu Studio is based on PrusaSlicer by PrusaResearch.
2022-07-14 15:12:20 +00:00
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.
Slic3r is licensed under the GNU Affero General Public License, version 3. Slic3r was created by Alessandro Ranellucci with the help of many other contributors.
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.
2022-07-15 13:37:17 +00:00
Add Ellis' pattern method for pressure advance calibration (#1547) * Add pattern method to Pressure Advance dialog * Convert calib_pressure_advance to more unique calib_pressure_advance_line * Share move_to function with PA lines and patterns * Add PA pattern to calib.hpp * Implement move_to(Vec3d). Combine with Vec2d version * Add call to PA pattern in GCode.cpp * Add helper functions * Add directionality to draw_digit * Extract shared number drawing variables * Extract convert_number_to_string function * Use in-class initializers for pattern variables * Add max_numbering_height function * Add helper functions * Extract shared delta helper functions * Add pattern generate_test() and associated helpers * Clarify use of math functions * Remove unused move_to overload, accept move_to comments * Add get_distance() and draw_line() * Extract set_nozzle_diameter() * Clean up and simplify * Rearrange and clean up * Start work on print_pa_pattern * Complete basic draw_box function * Add more helper functions * Add struct for pattern config, more helpers * Rearrange * Add encroachment member variable * Add structs to manage optional arguments * Simplify optional arguments structs * Update opt args usage. Finish draw_box function * Complete print_pa_pattern function * Reuse PA Line STL * Fix forward declaration error * Fix invalid comparison * Fixing complier errors * Make DrawDigitMode options more clear * More compilation error fixes * Yet more compile error fixes * Fix incorrect default step value * Handle top-level dialog changes, consolidate params definitions * Add layer change G-code, set more print variables * Simplify optArgs constructors * Fix pattern drawing, minor misc. clean up * Make draw_box() G-code comments more helpful * Make more of draw_line() const * Fix sequential number draw direction * Extract shared e_per_mm function * Fix misplaced decimal in PA Line * Move short constructor into .hpp * Fix inverted Y direction in pattern digit drawing * Use placeholder STL to create needed layers * Rearrange and clean up * Proof of concept: Adding custom G-Code at layer * Use new scaling method * Reorganize Plater::calib_pa() * Restructure calib * New strategy for adding custom G-code * Remove redundant invocation * Use cube primitive as positioning handle * Move logic to Plater Modifications to model in GCode cancelled _do_export from within itself * Consolidate m_starting_point and pattern_start functions * Replace bed_center() with m_starting_point * Fix and consolidate number tab creation * Fix off by one layer bug * Use correct bounding box * Use Vec3d instead of Vec2d for m_starting_point and m_last_pos * Add translate_starting_point function * Vec3d fix * Store CalibPressureAdvancePattern with model * Formatting adjustments * Move pattern when handle moves * Improve const correctness * Improve/fix pattern writer and config * Fix speed setting bug * Pass model into generate_gcodes to improve consistency * Re-generate pattern on reslice * Make pattern actually move with handle * Fix overzealous m_last_pos initialization * Use clearer function names * Use correct model * Remove unused member variable * Don't hard-code print config settings * Remove unused lines, formatting clean up * Make sure set_key_value operates on existing keys * Remove asserts which limited life of key/value set * Update Calibration.md * Update licensing info * Actually use speed in draw_line * Don't speed_adjust twice * doc: Make width and speed settings used more clear * Bugfix: Shouldn't need to move handle to see pattern * Clean up * Move mp_gcodegen into line method alone * Fix wrong number thickness in PA Line * Remove unnecessary middleman PatternSettings * Give value of config to const m_initial_config, not ref * Fix incorrect DrawBoxOptArg default * Use line_width_anchor() for all of initial layer * Use clearer function name * Replace "anchor" with "first_layer" for better consistency * Update Calibration.md * Update Calibration.md * Make number tab infill explanation more clear * (Hopefully) fix missing origin * Add GCodeProcessor tags * Fully refresh config * Don't store is_bbl_printer * Move set_starting_point to private * Don't constantly recreate GCodeWriter * Use different step value for pattern test * Remove redundant processor tags * Label glyph G-code * Fix comparison typo * Set number print speed * Fix mixed up draw_number parameter * Don't use line_width_first_layer for pattern * (Hopefully) fix temp tower generating PA pattern * Start with pattern centered on plate * Add gap between pattern and handle * Fix overly persistent pattern * Revert "(Hopefully) fix temp tower generating PA pattern" This reverts commit 0aa1206886d57820799beaf62dc28b9b8e02545b. --------- Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-07-22 12:48:56 +00:00
Orca Slicer includes a pressure advance calibration pattern test adapted from Andrew Ellis' generator, which is licensed under GNU General Public License, version 3. Ellis' generator is itself adapted from a generator developed by Sineos for Marlin, which is licensed under GNU General Public License, version 3.
2023-08-05 01:40:05 +00:00
The bambu networking plugin is based on non-free libraries from Bambulab. It is optional to the Orca Slicer and provides extended functionalities for Bambulab printer users.
2022-07-15 13:37:17 +00:00