Merge branch 'SoftFever' into feature/small_perimeter
136
README.md
|
@ -1,5 +1,139 @@
|
|||

|
||||
|
||||
# Bambu Studio - SoftFever
|
||||
A modified version of Bambu Studio with many handy features.
|
||||
It's fully compatible with Bambulab X1/X1-C printers.
|
||||
It also supports Voron and Prusa MK3S printers.
|
||||
You can download it here: https://github.com/SoftFever/BambuStudio-SoftFever/releases
|
||||
|
||||
## BambuStudio SoftFever change notes:
|
||||
|
||||
### [V1.3.1 changes](https://github.com/SoftFever/BambuStudio-SoftFever/releases/tag/v1.3.1-sf):
|
||||
1. Support change bed size and nozzle diameter
|
||||
2. Allow users to specify the bridge infill direction
|
||||
3. bridge_infill_direction1
|
||||
4. bridge_infill_direction2
|
||||
5. Change to ISO view angle for preview image
|
||||
6. Add an option to change Z Hop action: NormalLift/SpiralLift
|
||||
7. Optimise g-code generation for both Bambu printers and 3rd party printers
|
||||
8. Support Klipper Exclude Objects
|
||||
9. Better support for Moonraker's metadata.
|
||||
|
||||
### [V1.2.5.3 changes](https://github.com/SoftFever/BambuStudio-SoftFever/releases/tag/v1.2.5.3-sf):
|
||||
1. Label objects to support Klipper Exclude Objects feature
|
||||
2. Allow users to change output file name format
|
||||
3. Fix a bug that pressure advance value was not saved in the profile
|
||||
4. Optimize non-Bambu printer profiles
|
||||
5. Remove M900 S0 which is not necessary.
|
||||
|
||||
### [V1.2.5 changes](https://github.com/SoftFever/BambuStudio-SoftFever/releases/tag/v1.2.5-sf):
|
||||
1. Add options to adjust jerk for different line types
|
||||
2. Add an option to adjust acceleration for travel. Higher acceleration for travel and lower acceleration for the outer wall makes it possible to print faster and nicer.
|
||||
3. Add an option to manually override the Pressure Advance / Linear Advance for each filament.
|
||||
|
||||
### [V1.2.4 changes](https://github.com/SoftFever/BambuStudio-SoftFever/releases/tag/v1.2.4-sf):
|
||||
1. Allow users to adjust accelerations for inner/outer walls separately.
|
||||
2. Allow users to adjust the bottom surface flow-rate
|
||||
3. Fix an issue that bed temperature for other layers is not set properly. This bug exists in the upstream as well. My PR here(bambulab#319)
|
||||
|
||||
### [V1.2 changes](https://github.com/SoftFever/BambuStudio-SoftFever/releases/tag/v1.2-sf):
|
||||
1. Allow user to change machine limits
|
||||
2. Allow users to adjust the top surface flow-rate.
|
||||
3. Unlock some cool hidden features in BambuStudio.
|
||||
4. Fix an issue that the software connected to Bambulab's staging server by default. (Only Bambulab machines were affected)
|
||||
|
||||
### [V1.1 changes](https://github.com/SoftFever/BambuStudio-SoftFever/releases/tag/v1.1):
|
||||
1. Support third-party printers:
|
||||
- Voron 2.4
|
||||
- Voron Trident
|
||||
- Voron 0.1
|
||||
- Prusa MK3S
|
||||
2. Export to to .gcode file.
|
||||
3. Send gcode file to printer
|
||||
4. Support single wall mode on first layer
|
||||
5. Support Chamber temperature. This setting can be use in machine start G-Gcode
|
||||
6. Support thumbview for third-party printers
|
||||
|
||||
Demo video: https://youtu.be/vSNE9iGj2II
|
||||
|
||||
## NOTE:
|
||||
## - 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)
|
||||
|
||||
## - BambuStudio use G2/G3 commands by default. You need to turn on ARC support in your printer's firmware use with this slicer.
|
||||
- For Voron and any Klipper based printers:
|
||||
You can enable gcode_arcs(G2/G3) support by adding following section into you printer.cfg file:
|
||||
```
|
||||
[gcode_arcs]
|
||||
resolution: 0.1
|
||||
|
||||
[gcode_macro m201]
|
||||
gcode:
|
||||
{% if 'X' in params or 'Y' in params %}
|
||||
{% set accel = (params.X|default(params.Y)|float,
|
||||
params.Y|default(params.X)|float)|min %}
|
||||
SET_VELOCITY_LIMIT ACCEL={accel} ACCEL_TO_DECEL={accel * 0.5}
|
||||
{% else %}
|
||||
SET_VELOCITY_LIMIT
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro m203]
|
||||
gcode:
|
||||
{% if 'X' in params or 'Y' in params %}
|
||||
{% set speed = (params.X|default(params.Y)|float,
|
||||
params.Y|default(params.X)|float)|min %}
|
||||
SET_VELOCITY_LIMIT VELOCITY={speed}
|
||||
{% else %}
|
||||
SET_VELOCITY_LIMIT
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro M205]
|
||||
gcode:
|
||||
{% if 'X' in params or 'Y' in params %}
|
||||
{% set corner_speed = (params.X|default(params.Y)|float,
|
||||
params.Y|default(params.X)|float)|min %}
|
||||
SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={corner_speed}
|
||||
{% else %}
|
||||
SET_VELOCITY_LIMIT
|
||||
{% endif %}
|
||||
|
||||
[gcode_macro M900]
|
||||
gcode:
|
||||
SET_PRESSURE_ADVANCE ADVANCE={params.K}
|
||||
|
||||
```
|
||||
|
||||
It's also recommended to add followinging dummy macros to make Klipper happy
|
||||
```
|
||||
# Make BambuStudio happy
|
||||
[gcode_macro G17]
|
||||
gcode:
|
||||
|
||||
```
|
||||
|
||||
- For Prusa MK3S:
|
||||
ARC movement are supported by default.
|
||||
|
||||
|
||||
# Gallery
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
|
||||
|
||||
Image credits:
|
||||
1. Voron 2.4 and Trident: vorondesign.com
|
||||
3. Voron 0.1: myself
|
||||
4. Prusa MK3S: Prusa3d
|
||||
|
||||
|
||||
=========================SPLIT=========================
|
||||
|
||||

|
||||
# BambuStudio
|
||||
Bambu Studio is a cutting-edge, feature-rich slicing software.
|
||||
It contains project-based workflows, systematically optimized slicing algorithms, and an easy-to-use graphic interface, bringing users an incredibly smooth printing experience.
|
||||
|
|
BIN
SoftFever_doc/1.2.5_feature1.png
Normal file
After Width: | Height: | Size: 98 KiB |
BIN
SoftFever_doc/1.2.5_feature2.png
Normal file
After Width: | Height: | Size: 136 KiB |
BIN
SoftFever_doc/accelerations.png
Normal file
After Width: | Height: | Size: 211 KiB |
BIN
SoftFever_doc/chamber_temperature.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
SoftFever_doc/chamber_temperature_custom_gcode.png
Normal file
After Width: | Height: | Size: 75 KiB |
BIN
SoftFever_doc/export_gcode.png
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
SoftFever_doc/hidden_features.png
Normal file
After Width: | Height: | Size: 729 KiB |
BIN
SoftFever_doc/machine_limits.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
SoftFever_doc/print_host.png
Normal file
After Width: | Height: | Size: 83 KiB |
BIN
SoftFever_doc/printers1.png
Normal file
After Width: | Height: | Size: 59 KiB |
BIN
SoftFever_doc/printers2.png
Normal file
After Width: | Height: | Size: 72 KiB |
BIN
SoftFever_doc/printers3.png
Normal file
After Width: | Height: | Size: 94 KiB |
BIN
SoftFever_doc/printers4.png
Normal file
After Width: | Height: | Size: 105 KiB |
BIN
SoftFever_doc/send_to_print.png
Normal file
After Width: | Height: | Size: 353 KiB |
BIN
SoftFever_doc/single_wall_first_layer.png
Normal file
After Width: | Height: | Size: 217 KiB |
BIN
SoftFever_doc/topsurface_flowrate.png
Normal file
After Width: | Height: | Size: 305 KiB |
BIN
SoftFever_doc/voron.png
Normal file
After Width: | Height: | Size: 158 KiB |
|
@ -5140,6 +5140,20 @@ msgstr ""
|
|||
msgid "Bridge flow"
|
||||
msgstr ""
|
||||
|
||||
msgid "Top surface flow ratio"
|
||||
msgstr ""
|
||||
|
||||
msgid "Bottom surface flow ratio"
|
||||
msgstr ""
|
||||
|
||||
msgid "This factor affects the amount of material for bottom solid infill"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"This factor affects the amount of material for top solid infill. "
|
||||
"You can decrease it slightly to have smooth surface finish"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Decrease this value slightly(for example 0.9) to reduce the amount of "
|
||||
"material for bridge, to improve sag"
|
||||
|
@ -5148,11 +5162,19 @@ msgstr ""
|
|||
msgid "Only one wall on top surfaces"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only one wall on first layer"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Use only one wall on flat top surface, to give more space to the top infill "
|
||||
"pattern"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Use only one wall on first layer, to give more space to the bottom infill "
|
||||
"pattern"
|
||||
msgstr ""
|
||||
|
||||
msgid "Slow down for overhang"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -3065,7 +3065,7 @@ msgid "Click to edit preset"
|
|||
msgstr "点击编辑配置"
|
||||
|
||||
msgid "Connection"
|
||||
msgstr ""
|
||||
msgstr "连接打印机"
|
||||
|
||||
msgid "Bed type"
|
||||
msgstr "热床类型"
|
||||
|
@ -5267,19 +5267,41 @@ msgstr ""
|
|||
msgid "Bridge flow"
|
||||
msgstr "桥接流量"
|
||||
|
||||
msgid "Top surface flow ratio"
|
||||
msgstr "顶面流量"
|
||||
|
||||
msgid "Bottom surface flow ratio"
|
||||
msgstr "首层流量"
|
||||
|
||||
msgid "This factor affects the amount of material for bottom solid infill"
|
||||
msgstr "首层流量调整系数,默认为1.0"
|
||||
|
||||
msgid ""
|
||||
"This factor affects the amount of material for top solid infill. "
|
||||
"You can decrease it slightly to have smooth surface finish"
|
||||
msgstr "稍微减小这个数值(比如0.97)可以来改善顶面的光滑程度。"
|
||||
|
||||
msgid ""
|
||||
"Decrease this value slightly(for example 0.9) to reduce the amount of "
|
||||
"material for bridge, to improve sag"
|
||||
msgstr "稍微减小这个数值(比如0.9)可以减小桥接的材料量,来改善下垂。"
|
||||
|
||||
msgid "Only one wall on top surfaces"
|
||||
msgstr "顶面单层墙"
|
||||
msgid "Only one wall on first layer"
|
||||
msgstr "首层单层墙"
|
||||
|
||||
msgid ""
|
||||
"Use only one wall on flat top surface, to give more space to the top infill "
|
||||
"pattern"
|
||||
msgstr "顶面只使用单层墙,从而更多的空间能够使用顶部填充图案"
|
||||
|
||||
msgid "Only one wall on top surfaces"
|
||||
msgstr "顶面单层墙"
|
||||
|
||||
msgid ""
|
||||
"Use only one wall on first layer, to give more space to the bottom infill "
|
||||
"pattern"
|
||||
msgstr "首层只使用单层墙,从而更多的空间能够使用底部填充图案"
|
||||
|
||||
msgid "Slow down for overhang"
|
||||
msgstr "悬垂降速"
|
||||
|
||||
|
@ -5655,6 +5677,9 @@ msgstr "(未定义)"
|
|||
msgid "Infill direction"
|
||||
msgstr "填充方向"
|
||||
|
||||
msgid "Bridge infill direction"
|
||||
msgstr "拉桥填充方向"
|
||||
|
||||
msgid ""
|
||||
"Angle for sparse infill pattern, which controls the start or main direction "
|
||||
"of line"
|
||||
|
@ -5707,6 +5732,45 @@ msgid ""
|
|||
"adhensive"
|
||||
msgstr "首层加速度。使用较低值可以改善和构建板的粘接。"
|
||||
|
||||
msgid "Acceleration of outer walls"
|
||||
msgstr "外墙的加速度。它通常使用比内壁速度慢的加速度,以获得更好的质量"
|
||||
|
||||
msgid "Acceleration of inner walls"
|
||||
msgstr "内圈墙加速度,使用较低值可以改善质量。"
|
||||
|
||||
msgid "Acceleration of travel moves"
|
||||
msgstr "空驶加速度"
|
||||
|
||||
msgid "Jerk(XY)"
|
||||
msgstr "抖动(XY)"
|
||||
|
||||
msgid "Jerk of outer walls"
|
||||
msgstr "外墙抖动值"
|
||||
|
||||
msgid "Jerk of inner walls"
|
||||
msgstr "内墙抖动值"
|
||||
|
||||
msgid "Jerk for top surface"
|
||||
msgstr "顶面抖动值"
|
||||
|
||||
msgid "Jerk for initial layer"
|
||||
msgstr "首层抖动值"
|
||||
|
||||
msgid "Jerk for travel"
|
||||
msgstr "空驶抖动值"
|
||||
|
||||
msgid "Enable pressure advance"
|
||||
msgstr "启用压力提前"
|
||||
|
||||
msgid "Pressure advance"
|
||||
msgstr "压力提前"
|
||||
|
||||
msgid "Pressure advnce(Klipper) AKA Linear advance factor(Marlin)"
|
||||
msgstr "压力提前(Klipper)或者线性提前(Marlin)"
|
||||
|
||||
msgid "Enable pressure advance, auto calibration result will be overwriten once enabled."
|
||||
msgstr "启用压力提前,一旦启用会覆盖自动检测的结果"
|
||||
|
||||
msgid "Line width of initial layer"
|
||||
msgstr "首层的线宽"
|
||||
|
||||
|
@ -5831,6 +5895,9 @@ msgstr "如果机器有辅助部件冷却风扇,勾选该选项"
|
|||
msgid "G-code flavor"
|
||||
msgstr "G-code风格"
|
||||
|
||||
msgid "G-code thumbnails"
|
||||
msgstr "G-code缩略图尺寸"
|
||||
|
||||
msgid "What kind of gcode the printer is compatible with"
|
||||
msgstr "打印机兼容的G-code风格'"
|
||||
|
||||
|
@ -6210,6 +6277,15 @@ msgstr ""
|
|||
msgid "Z hop when retract"
|
||||
msgstr "回抽时抬升Z"
|
||||
|
||||
msgid "Z hop type"
|
||||
msgstr "抬Z类型"
|
||||
|
||||
msgid "NormalLift"
|
||||
msgstr "直接抬Z"
|
||||
|
||||
msgid "SpiralLift"
|
||||
msgstr "螺旋抬Z"
|
||||
|
||||
msgid ""
|
||||
"Whenever the retraction is done, the nozzle is lifted a little to create "
|
||||
"clearance between nozzle and the print. It prevents nozzle from hitting the "
|
||||
|
@ -6539,6 +6615,9 @@ msgstr "除首层外的其它层的喷嘴温度"
|
|||
msgid "Nozzle temperature"
|
||||
msgstr "喷嘴温度"
|
||||
|
||||
msgid "Chamber temperature"
|
||||
msgstr "机箱温度"
|
||||
|
||||
msgid "Bed temperature difference"
|
||||
msgstr "热床温差"
|
||||
|
||||
|
|
14
build_release.bat
Normal file
|
@ -0,0 +1,14 @@
|
|||
set WP=%CD%
|
||||
cd deps
|
||||
mkdir build
|
||||
cd build
|
||||
set DEPS=%CD%/BambuStudio_dep
|
||||
cmake ../ -G "Visual Studio 16 2019" -DDESTDIR="%CD%/BambuStudio_dep" -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build . --config Release --target ALL_BUILD -- -m
|
||||
|
||||
cd %WP%
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. -G "Visual Studio 16 2019" -DBBL_RELEASE_TO_PUBLIC=0 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./BambuStudio-SoftFever" -DCMAKE_BUILD_TYPE=Release -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0"
|
||||
cmake --build . --config Release --target ALL_BUILD -- -m
|
||||
cmake --build . --target install --config Release
|
20
build_release_macos.sh
Executable file
|
@ -0,0 +1,20 @@
|
|||
#!/bin/sh
|
||||
|
||||
WD=$(pwd)
|
||||
cd deps
|
||||
mkdir -p build
|
||||
cd build
|
||||
DEPS=$PWD/BambuStudio_dep
|
||||
mkdir -p $DEPS
|
||||
cmake ../ -DDESTDIR="$DEPS" -DOPENSSL_ARCH="darwin64-$(uname -m)-cc" -DCMAKE_BUILD_TYPE=Release
|
||||
make -j10
|
||||
|
||||
cd $WD
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake .. -DBBL_RELEASE_TO_PUBLIC=0 -DCMAKE_PREFIX_PATH="$DEPS/usr/local" -DCMAKE_INSTALL_PREFIX="$PWD/BambuStudio-SoftFever" -DCMAKE_BUILD_TYPE=Release -DCMAKE_MACOSX_RPATH=ON -DCMAKE_INSTALL_RPATH="$DEPS/usr/local" -DCMAKE_MACOSX_BUNDLE=ON
|
||||
cmake --build . --config Release --target all -j10
|
||||
cmake --build . --target install --config Release -j10
|
||||
cd BambuStudio-SoftFever
|
||||
cp -r bin/BambuStudio.app/Contents/MacOS BambuStudio.app/Contents
|
||||
cp -r bin/BambuStudio.app/Contents/Info.plist BambuStudio.app/Contents/
|
14
build_relwithdebinfo.bat
Normal file
|
@ -0,0 +1,14 @@
|
|||
set WP=%CD%
|
||||
cd deps
|
||||
mkdir build
|
||||
cd build
|
||||
set DEPS=%CD%/BambuStudio_dep
|
||||
cmake ../ -G "Visual Studio 16 2019" -DDESTDIR="%CD%/BambuStudio_dep" -DCMAKE_BUILD_TYPE=Release
|
||||
cmake --build . --config Release --target ALL_BUILD -- -m
|
||||
|
||||
cd %WP%
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. -G "Visual Studio 16 2019" -DBBL_RELEASE_TO_PUBLIC=0 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./BambuStudio-SoftFever" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0"
|
||||
cmake --build . --config RelWithDebInfo --target ALL_BUILD -- -m
|
||||
@REM cmake --build . --target install --config RelWithDebInfo
|
22
resources/images/add.svg
Normal file
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 24.3.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 128 128" enable-background="new 0 0 128 128" xml:space="preserve">
|
||||
<g id="ADD">
|
||||
<path fill="#FFFFFF" d="M72.3,117.5H10.5v-75h75v23.27c1.61-0.56,3.28-0.99,5-1.29V41.04l27-27V72.3c1.89,1.71,3.57,3.65,5,5.76V8
|
||||
c0-0.05-0.01-0.1-0.02-0.15c0-0.06-0.01-0.11-0.02-0.17c-0.03-0.22-0.08-0.43-0.15-0.62c0,0,0-0.01,0-0.01c0,0,0,0,0,0
|
||||
c-0.01-0.03-0.03-0.05-0.04-0.08c-0.05-0.11-0.11-0.21-0.17-0.31c-0.03-0.04-0.05-0.08-0.08-0.11c-0.06-0.08-0.13-0.16-0.2-0.24
|
||||
c-0.03-0.03-0.06-0.07-0.09-0.1c-0.09-0.09-0.19-0.17-0.3-0.25c-0.01-0.01-0.02-0.02-0.04-0.03c-0.12-0.08-0.24-0.15-0.38-0.2
|
||||
c-0.04-0.02-0.09-0.03-0.13-0.05c-0.1-0.04-0.2-0.07-0.3-0.09c-0.05-0.01-0.09-0.02-0.14-0.03c-0.15-0.03-0.3-0.05-0.45-0.05H48
|
||||
c-0.57,0-1.12,0.19-1.56,0.55l-40,32c-0.03,0.03-0.06,0.06-0.09,0.09c-0.07,0.06-0.13,0.12-0.19,0.19
|
||||
c-0.05,0.06-0.1,0.12-0.15,0.18c-0.05,0.07-0.09,0.13-0.14,0.2c-0.04,0.07-0.08,0.14-0.12,0.21c-0.03,0.07-0.07,0.15-0.09,0.22
|
||||
c-0.03,0.08-0.05,0.16-0.07,0.24c-0.02,0.08-0.04,0.15-0.05,0.23c-0.01,0.09-0.02,0.18-0.03,0.27c0,0.04-0.01,0.08-0.01,0.13v80
|
||||
c0,1.38,1.12,2.5,2.5,2.5h70.06C75.95,121.07,74.01,119.39,72.3,117.5z M48.88,10.5h65.09l-27,27H15.13L48.88,10.5z"/>
|
||||
<g>
|
||||
<path fill="#ED6B21" d="M96,69.5c-14.61,0-26.5,11.89-26.5,26.5s11.89,26.5,26.5,26.5s26.5-11.89,26.5-26.5S110.61,69.5,96,69.5z
|
||||
M96,117.5c-11.86,0-21.5-9.64-21.5-21.5S84.14,74.5,96,74.5s21.5,9.64,21.5,21.5S107.86,117.5,96,117.5z"/>
|
||||
<path fill="#ED6B21" d="M112,93.5H98.5V80c0-1.38-1.12-2.5-2.5-2.5s-2.5,1.12-2.5,2.5v13.5H80c-1.38,0-2.5,1.12-2.5,2.5
|
||||
s1.12,2.5,2.5,2.5h13.5V112c0,1.38,1.12,2.5,2.5,2.5s2.5-1.12,2.5-2.5V98.5H112c1.38,0,2.5-1.12,2.5-2.5S113.38,93.5,112,93.5z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.9 KiB |
19
resources/images/add_copies.svg
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
|
||||
<g id="add_x5F_copies">
|
||||
<g>
|
||||
<path fill="#808080" d="M8,2c3.31,0,6,2.69,6,6s-2.69,6-6,6s-6-2.69-6-6S4.69,2,8,2 M8,1C4.13,1,1,4.13,1,8s3.13,7,7,7s7-3.13,7-7
|
||||
S11.87,1,8,1L8,1z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#ED6B21" d="M12,8.75H4C3.59,8.75,3.25,8.41,3.25,8S3.59,7.25,4,7.25h8c0.41,0,0.75,0.34,0.75,0.75S12.41,8.75,12,8.75
|
||||
z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path fill="#ED6B21" d="M8,12.75c-0.41,0-0.75-0.34-0.75-0.75V4c0-0.41,0.34-0.75,0.75-0.75S8.75,3.59,8.75,4v8
|
||||
C8.75,12.41,8.41,12.75,8,12.75z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 846 B |
11
resources/images/browse.svg
Normal file
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 16 16" enable-background="new 0 0 16 16" xml:space="preserve">
|
||||
<g id="browse">
|
||||
<path fill="#ED6B21" d="M8.49,2.43c-1.71-1.71-4.49-1.71-6.2,0s-1.71,4.49,0,6.2c1.59,1.59,4.1,1.7,5.82,0.34l1.48,1.48
|
||||
c0,0-0.36,0.36,0,0.73s3.65,3.65,3.65,3.65s0.36,0.36,0.73,0c0.36-0.36,0.73-0.73,0.73-0.73s0.36-0.36,0-0.73s-3.65-3.65-3.65-3.65
|
||||
c-0.36-0.36-0.73,0-0.73,0L8.83,8.25C10.19,6.52,10.08,4.02,8.49,2.43z M8.1,8.25c-1.5,1.5-3.93,1.5-5.43,0s-1.5-3.93,0-5.43
|
||||
s3.93-1.5,5.43,0S9.6,6.75,8.1,8.25z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 777 B |
110
resources/profiles/Anycubic.json
Normal file
|
@ -0,0 +1,110 @@
|
|||
{
|
||||
"name": "Anycubic",
|
||||
"version": "01.02.00.03",
|
||||
"force_update": "0",
|
||||
"description": "Anycubic configurations",
|
||||
"machine_model_list": [
|
||||
{
|
||||
"name": "Anycubic 4Max Pro",
|
||||
"sub_path": "machine/Anycubic 4Max Pro.json"
|
||||
}
|
||||
],
|
||||
"process_list": [
|
||||
{
|
||||
"name": "fdm_process_common",
|
||||
"sub_path": "process/fdm_process_common.json"
|
||||
},
|
||||
{
|
||||
"name": "0.20mm Standard @4MaxPro",
|
||||
"sub_path": "process/0.20mm Standard @4MaxPro.json"
|
||||
}
|
||||
],
|
||||
"filament_list": [
|
||||
{
|
||||
"name": "fdm_filament_common",
|
||||
"sub_path": "filament/fdm_filament_common.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pla",
|
||||
"sub_path": "filament/fdm_filament_pla.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_tpu",
|
||||
"sub_path": "filament/fdm_filament_tpu.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pet",
|
||||
"sub_path": "filament/fdm_filament_pet.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_abs",
|
||||
"sub_path": "filament/fdm_filament_abs.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pc",
|
||||
"sub_path": "filament/fdm_filament_pc.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_asa",
|
||||
"sub_path": "filament/fdm_filament_asa.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pva",
|
||||
"sub_path": "filament/fdm_filament_pva.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pa",
|
||||
"sub_path": "filament/fdm_filament_pa.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic PLA",
|
||||
"sub_path": "filament/Anycubic Generic PLA.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic PLA-CF",
|
||||
"sub_path": "filament/Anycubic Generic PLA-CF.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic PETG",
|
||||
"sub_path": "filament/Anycubic Generic PETG.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic ABS",
|
||||
"sub_path": "filament/Anycubic Generic ABS.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic TPU",
|
||||
"sub_path": "filament/Anycubic Generic TPU.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic ASA",
|
||||
"sub_path": "filament/Anycubic Generic ASA.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic PC",
|
||||
"sub_path": "filament/Anycubic Generic PC.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic PVA",
|
||||
"sub_path": "filament/Anycubic Generic PVA.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic PA",
|
||||
"sub_path": "filament/Anycubic Generic PA.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic Generic PA-CF",
|
||||
"sub_path": "filament/Anycubic Generic PA-CF.json"
|
||||
}
|
||||
],
|
||||
"machine_list": [
|
||||
{
|
||||
"name": "fdm_machine_common",
|
||||
"sub_path": "machine/fdm_machine_common.json"
|
||||
},
|
||||
{
|
||||
"name": "Anycubic 4Max Pro 0.4 nozzle",
|
||||
"sub_path": "machine/Anycubic 4Max Pro 0.4 nozzle.json"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB99",
|
||||
"setting_id": "GFSB99",
|
||||
"name": "Anycubic Generic ABS",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_abs",
|
||||
"filament_flow_ratio": [
|
||||
"0.926"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB98",
|
||||
"setting_id": "GFSB98",
|
||||
"name": "Anycubic Generic ASA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_asa",
|
||||
"filament_flow_ratio": [
|
||||
"0.93"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN98",
|
||||
"setting_id": "GFSN99",
|
||||
"name": "Anycubic Generic PA-CF",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pa",
|
||||
"filament_type": [
|
||||
"PA-CF"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"280"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"280"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"8"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN99",
|
||||
"setting_id": "GFSN98",
|
||||
"name": "Anycubic Generic PA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pa",
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"280"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"280"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFC99",
|
||||
"setting_id": "GFSC99",
|
||||
"name": "Anycubic Generic PC",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pc",
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.94"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFG99",
|
||||
"setting_id": "GFSG99",
|
||||
"name": "Anycubic Generic PETG",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pet",
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"30"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"90"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"90"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"40"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"10"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL98",
|
||||
"setting_id": "GFSL98",
|
||||
"name": "Anycubic Generic PLA-CF",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pla",
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_type": [
|
||||
"PLA-CF"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"7"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL99",
|
||||
"setting_id": "GFSL99",
|
||||
"name": "Anycubic Generic PLA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pla",
|
||||
"filament_flow_ratio": [
|
||||
"0.98"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFS99",
|
||||
"setting_id": "GFSS99",
|
||||
"name": "Anycubic Generic PVA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pva",
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"7"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFU99",
|
||||
"setting_id": "GFSR99",
|
||||
"name": "Anycubic Generic TPU",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_tpu",
|
||||
"filament_max_volumetric_speed": [
|
||||
"3.2"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
82
resources/profiles/Anycubic/filament/fdm_filament_abs.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_abs",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"30"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"28.6"
|
||||
],
|
||||
"filament_type": [
|
||||
"ABS"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"260"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"80"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"80"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"260"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"110"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"240"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"270"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"3"
|
||||
]
|
||||
}
|
82
resources/profiles/Anycubic/filament/fdm_filament_asa.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_asa",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"35"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"28.6"
|
||||
],
|
||||
"filament_type": [
|
||||
"ASA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"260"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"80"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"80"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"260"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"110"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"240"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"270"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"3"
|
||||
]
|
||||
}
|
135
resources/profiles/Anycubic/filament/fdm_filament_common.json
Normal file
|
@ -0,0 +1,135 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_common",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"cool_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"95%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; filament end gcode \n"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"1"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"0"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"60"
|
||||
],
|
||||
"filament_cost": [
|
||||
"0"
|
||||
],
|
||||
"filament_density": [
|
||||
"0"
|
||||
],
|
||||
"filament_deretraction_speed": [
|
||||
"nil"
|
||||
],
|
||||
"filament_diameter": [
|
||||
"1.75"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"0"
|
||||
],
|
||||
"filament_minimal_purge_on_wipe_tower": [
|
||||
"15"
|
||||
],
|
||||
"filament_retraction_minimum_travel": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retract_before_wipe": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retract_when_changing_layer": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retraction_length": [
|
||||
"nil"
|
||||
],
|
||||
"filament_z_hop": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retract_restart_extra": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retraction_speed": [
|
||||
"nil"
|
||||
],
|
||||
"filament_settings_id": [
|
||||
""
|
||||
],
|
||||
"filament_soluble": [
|
||||
"0"
|
||||
],
|
||||
"filament_type": [
|
||||
"PLA"
|
||||
],
|
||||
"filament_vendor": [
|
||||
"Generic"
|
||||
],
|
||||
"filament_wipe": [
|
||||
"nil"
|
||||
],
|
||||
"filament_wipe_distance": [
|
||||
"nil"
|
||||
],
|
||||
"bed_type": [
|
||||
"Cool Plate"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"200"
|
||||
],
|
||||
"full_fan_speed_layer": [
|
||||
"0"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"35"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; Filament gcode\n"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"200"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"100"
|
||||
]
|
||||
}
|
79
resources/profiles/Anycubic/filament/fdm_filament_pa.json
Normal file
|
@ -0,0 +1,79 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pa",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"100"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"100"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"100"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"100"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"8"
|
||||
],
|
||||
"filament_type": [
|
||||
"PA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"290"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"0"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"60"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"0"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"30"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"290"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"108"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"270"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"300"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"2"
|
||||
]
|
||||
}
|
82
resources/profiles/Anycubic/filament/fdm_filament_pc.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pc",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"110"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"110"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"110"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"110"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"30"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"23.2"
|
||||
],
|
||||
"filament_type": [
|
||||
"PC"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"270"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"60"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"60"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"280"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"140"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"260"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"280"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"2"
|
||||
]
|
||||
}
|
76
resources/profiles/Anycubic/filament/fdm_filament_pet.json
Normal file
|
@ -0,0 +1,76 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pet",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"80"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"80"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"20"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"25"
|
||||
],
|
||||
"filament_type": [
|
||||
"PETG"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.27"
|
||||
],
|
||||
"filament_cost": [
|
||||
"30"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"255"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"255"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"80"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"220"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"260"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
88
resources/profiles/Anycubic/filament/fdm_filament_pla.json
Normal file
|
@ -0,0 +1,88 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pla",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"fan_cooling_layer_time": [
|
||||
"100"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"filament_type": [
|
||||
"PLA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.24"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"cool_plate_temp" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"45"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"45"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"220"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"50%"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"1"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"220"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"60"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"190"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"230"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
94
resources/profiles/Anycubic/filament/fdm_filament_pva.json
Normal file
|
@ -0,0 +1,94 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pva",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"45"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"45"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"100"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"15"
|
||||
],
|
||||
"filament_soluble": [
|
||||
"1"
|
||||
],
|
||||
"filament_is_support": [
|
||||
"1"
|
||||
],
|
||||
"filament_type": [
|
||||
"PVA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.24"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"220"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"50%"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"1"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"220"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"50"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"190"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"250"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"50"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
82
resources/profiles/Anycubic/filament/fdm_filament_tpu.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_tpu",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"30"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"30"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"35"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"30"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"30"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"35"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"100"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"15"
|
||||
],
|
||||
"filament_type": [
|
||||
"TPU"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.24"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"filament_retraction_length": [
|
||||
"0.4"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"240"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"1"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"240"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"60"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"200"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"250"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
"type": "machine",
|
||||
"setting_id": "GM003",
|
||||
"name": "Anycubic 4Max Pro 0.4 nozzle",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_machine_common",
|
||||
"printer_model": "Anycubic 4Max Pro",
|
||||
"default_print_profile": "0.20mm Standard @4MaxPro",
|
||||
"nozzle_diameter": [
|
||||
"0.4"
|
||||
],
|
||||
"bed_exclude_area": [
|
||||
"0x0"
|
||||
],
|
||||
"printable_area": [
|
||||
"0x0",
|
||||
"270x0",
|
||||
"270x205",
|
||||
"0x205"
|
||||
],
|
||||
"printable_height": "200",
|
||||
"machine_start_gcode": ";M190 S0\n;M104 S0\nPRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single]\n; You can use following code instead if your PRINT_START macro support Chamber and print area bedmesh\n; PRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single] Chamber=[chamber_temperature] PRINT_MIN={first_layer_print_min[0]},{first_layer_print_min[1]} PRINT_MAX={first_layer_print_max[0]},{first_layer_print_max[1]}",
|
||||
"machine_end_gcode": "PRINT_END",
|
||||
"layer_change_gcode": "",
|
||||
"scan_first_layer": "0",
|
||||
"nozzle_type": "hardened_steel",
|
||||
"auxiliary_fan": "0"
|
||||
}
|
||||
|
12
resources/profiles/Anycubic/machine/Anycubic 4Max Pro.json
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"type": "machine_model",
|
||||
"name": "Anycubic 4Max Pro",
|
||||
"model_id": "AC-4maxpro",
|
||||
"nozzle_diameter": "0.4",
|
||||
"machine_tech": "FFF",
|
||||
"family": "Anycubic",
|
||||
"bed_model": "",
|
||||
"bed_texture": "",
|
||||
"hotend_model": "bbl-3dp-hotend.stl",
|
||||
"default_materials": "Anycubic Generic ABS;Anycubic Generic PLA;Anycubic Generic PLA-CF;Anycubic Generic PETG;Anycubic Generic TPU;Anycubic Generic ASA;Anycubic Generic PC;Anycubic Generic PVA;Anycubic Generic PA;Anycubic Generic PA-CF"
|
||||
}
|
139
resources/profiles/Anycubic/machine/fdm_machine_common.json
Normal file
|
@ -0,0 +1,139 @@
|
|||
{
|
||||
"type": "machine",
|
||||
"name": "fdm_machine_common",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"gcode_flavor": "marlin",
|
||||
"machine_start_gcode": "",
|
||||
"machine_end_gcode": "",
|
||||
"extruder_colour": [
|
||||
"#018001"
|
||||
],
|
||||
"extruder_offset": [
|
||||
"0x0"
|
||||
],
|
||||
"machine_max_acceleration_e": [
|
||||
"5000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_extruding": [
|
||||
"2000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_retracting": [
|
||||
"5000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_travel": [
|
||||
"3000",
|
||||
"3000"
|
||||
],
|
||||
"machine_max_acceleration_x": [
|
||||
"2000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_y": [
|
||||
"2000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_z": [
|
||||
"300",
|
||||
"200"
|
||||
],
|
||||
"machine_max_speed_e": [
|
||||
"25",
|
||||
"25"
|
||||
],
|
||||
"machine_max_speed_x": [
|
||||
"300",
|
||||
"200"
|
||||
],
|
||||
"machine_max_speed_y": [
|
||||
"300",
|
||||
"200"
|
||||
],
|
||||
"machine_max_speed_z": [
|
||||
"12",
|
||||
"12"
|
||||
],
|
||||
"machine_max_jerk_e": [
|
||||
"2.5",
|
||||
"2.5"
|
||||
],
|
||||
"machine_max_jerk_x": [
|
||||
"9",
|
||||
"9"
|
||||
],
|
||||
"machine_max_jerk_y": [
|
||||
"9",
|
||||
"9"
|
||||
],
|
||||
"machine_max_jerk_z": [
|
||||
"0.2",
|
||||
"0.4"
|
||||
],
|
||||
"machine_min_extruding_rate": [
|
||||
"0",
|
||||
"0"
|
||||
],
|
||||
"machine_min_travel_rate": [
|
||||
"0",
|
||||
"0"
|
||||
],
|
||||
"max_layer_height": [
|
||||
"0.3"
|
||||
],
|
||||
"min_layer_height": [
|
||||
"0.08"
|
||||
],
|
||||
"printable_height": "250",
|
||||
"extruder_clearance_radius": "65",
|
||||
"extruder_clearance_height_to_rod": "36",
|
||||
"extruder_clearance_height_to_lid": "140",
|
||||
"nozzle_diameter": [
|
||||
"0.4"
|
||||
],
|
||||
"printer_settings_id": "",
|
||||
"printer_technology": "FFF",
|
||||
"printer_variant": "0.4",
|
||||
"retraction_minimum_travel": [
|
||||
"1"
|
||||
],
|
||||
"retract_before_wipe": [
|
||||
"70%"
|
||||
],
|
||||
"retract_when_changing_layer": [
|
||||
"1"
|
||||
],
|
||||
"retraction_length": [
|
||||
"0.8"
|
||||
],
|
||||
"retract_length_toolchange": [
|
||||
"2"
|
||||
],
|
||||
"z_hop": [
|
||||
"0.4"
|
||||
],
|
||||
"retract_restart_extra": [
|
||||
"0"
|
||||
],
|
||||
"retract_restart_extra_toolchange": [
|
||||
"0"
|
||||
],
|
||||
"retraction_speed": [
|
||||
"30"
|
||||
],
|
||||
"deretraction_speed": [
|
||||
"30"
|
||||
],
|
||||
"silent_mode": "0",
|
||||
"single_extruder_multi_material": "1",
|
||||
"change_filament_gcode": "",
|
||||
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
|
||||
"layer_change_gcode": "",
|
||||
"machine_pause_gcode": "M400 U1\n",
|
||||
"wipe": [
|
||||
"1"
|
||||
],
|
||||
"z_lift_type": "NormalLift"
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"type": "process",
|
||||
"setting_id": "Anycubic-1",
|
||||
"name": "0.20mm Standard @4MaxPro",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_process_common",
|
||||
"initial_layer_speed": "40",
|
||||
"initial_layer_infill_speed": "50",
|
||||
"outer_wall_speed": "35",
|
||||
"inner_wall_speed": "60",
|
||||
"sparse_infill_speed": "200",
|
||||
"internal_solid_infill_speed": "200",
|
||||
"top_surface_speed": "50",
|
||||
"gap_infill_speed": "40",
|
||||
"travel_speed": "180",
|
||||
"compatible_printers": [
|
||||
"Anycubic 4Max Pro 0.4 nozzle"
|
||||
]
|
||||
}
|
107
resources/profiles/Anycubic/process/fdm_process_common.json
Normal file
|
@ -0,0 +1,107 @@
|
|||
{
|
||||
"type": "process",
|
||||
"name": "fdm_process_common",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"adaptive_layer_height": "0",
|
||||
"reduce_crossing_wall": "0",
|
||||
"max_travel_detour_distance": "0",
|
||||
"bottom_surface_pattern": "monotonic",
|
||||
"bottom_shell_thickness": "0",
|
||||
"bridge_speed": "50",
|
||||
"brim_width": "5",
|
||||
"brim_object_gap": "0.1",
|
||||
"compatible_printers": [],
|
||||
"compatible_printers_condition": "",
|
||||
"print_sequence": "by layer",
|
||||
"default_acceleration": "1000",
|
||||
"initial_layer_acceleration": "500",
|
||||
"top_surface_acceleration": "800",
|
||||
"travel_acceleration": "1000",
|
||||
"inner_wall_acceleration": "900",
|
||||
"outer_wall_acceleration": "700",
|
||||
"bridge_no_support": "0",
|
||||
"draft_shield": "disabled",
|
||||
"elefant_foot_compensation": "0",
|
||||
"enable_arc_fitting": "1",
|
||||
"outer_wall_line_width": "0.4",
|
||||
"wall_infill_order": "inner wall/outer wall/infill",
|
||||
"line_width": "0.4",
|
||||
"infill_direction": "45",
|
||||
"sparse_infill_density": "15%",
|
||||
"sparse_infill_pattern": "grid",
|
||||
"initial_layer_line_width": "0.5",
|
||||
"initial_layer_print_height": "0.2",
|
||||
"infill_combination": "0",
|
||||
"sparse_infill_line_width": "0.45",
|
||||
"infill_wall_overlap": "25%",
|
||||
"interface_shells": "0",
|
||||
"ironing_flow": "10%",
|
||||
"ironing_spacing": "0.15",
|
||||
"ironing_speed": "30",
|
||||
"ironing_type": "no ironing",
|
||||
"reduce_infill_retraction": "1",
|
||||
"filename_format": "{input_filename_base}_{filament_type[0]}_{print_time}.gcode",
|
||||
"detect_overhang_wall": "1",
|
||||
"overhang_1_4_speed": "0",
|
||||
"overhang_2_4_speed": "50",
|
||||
"overhang_3_4_speed": "30",
|
||||
"overhang_4_4_speed": "10",
|
||||
"inner_wall_line_width": "0.45",
|
||||
"wall_loops": "2",
|
||||
"print_settings_id": "",
|
||||
"raft_layers": "0",
|
||||
"seam_position": "aligned",
|
||||
"skirt_distance": "2",
|
||||
"skirt_height": "1",
|
||||
"skirt_loops": "0",
|
||||
"minimum_sparse_infill_area": "15",
|
||||
"internal_solid_infill_line_width": "0.4",
|
||||
"spiral_mode": "0",
|
||||
"standby_temperature_delta": "-5",
|
||||
"enable_support": "0",
|
||||
"resolution": "0.012",
|
||||
"support_type": "normal(auto)",
|
||||
"support_on_build_plate_only": "0",
|
||||
"support_top_z_distance": "0.2",
|
||||
"support_filament": "0",
|
||||
"support_line_width": "0.4",
|
||||
"support_interface_loop_pattern": "0",
|
||||
"support_interface_filament": "0",
|
||||
"support_interface_top_layers": "2",
|
||||
"support_interface_bottom_layers": "2",
|
||||
"support_interface_spacing": "0.5",
|
||||
"support_interface_speed": "80",
|
||||
"support_base_pattern": "rectilinear",
|
||||
"support_base_pattern_spacing": "2.5",
|
||||
"support_speed": "150",
|
||||
"support_threshold_angle": "30",
|
||||
"support_object_xy_distance": "0.35",
|
||||
"tree_support_branch_angle": "30",
|
||||
"tree_support_wall_count": "0",
|
||||
"tree_support_with_infill": "0",
|
||||
"detect_thin_wall": "0",
|
||||
"top_surface_pattern": "monotonicline",
|
||||
"top_surface_line_width": "0.4",
|
||||
"top_shell_thickness": "0.8",
|
||||
"enable_prime_tower": "1",
|
||||
"wipe_tower_no_sparse_layers": "0",
|
||||
"prime_tower_width": "35",
|
||||
"xy_hole_compensation": "0",
|
||||
"xy_contour_compensation": "0",
|
||||
"layer_height": "0.2",
|
||||
"bottom_shell_layers": "3",
|
||||
"top_shell_layers": "4",
|
||||
"bridge_flow": "1",
|
||||
"initial_layer_speed": "45",
|
||||
"initial_layer_infill_speed": "45",
|
||||
"outer_wall_speed": "45",
|
||||
"inner_wall_speed": "80",
|
||||
"sparse_infill_speed": "150",
|
||||
"internal_solid_infill_speed": "150",
|
||||
"top_surface_speed": "50",
|
||||
"gap_infill_speed": "30",
|
||||
"travel_speed": "200",
|
||||
"enable_arc_fitting": "0"
|
||||
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "Creality",
|
||||
"version": "01.02.01.03",
|
||||
"version": "01.02.01.04",
|
||||
"force_update": "0",
|
||||
"description": "Creality configurations",
|
||||
"machine_model_list": [
|
||||
|
|
|
@ -102,7 +102,7 @@
|
|||
"2"
|
||||
],
|
||||
"z_hop": [
|
||||
"0"
|
||||
"0.4"
|
||||
],
|
||||
"retract_restart_extra": [
|
||||
"0"
|
||||
|
|
|
@ -110,6 +110,7 @@
|
|||
"wipe": [
|
||||
"1"
|
||||
],
|
||||
"z_lift_type": "NormalLift",
|
||||
"default_print_profile": "0.16mm Optimal @Bambu Lab X1 Carbon 0.4 nozzle",
|
||||
"machine_start_gcode": "G0 Z20 F9000\nG92 E0; G1 E-10 F1200\nG28\nM970 Q1 A10 B10 C130 K0\nM970 Q1 A10 B131 C250 K1\nM974 Q1 S1 P0\nM970 Q0 A10 B10 C130 H20 K0\nM970 Q0 A10 B131 C250 K1\nM974 Q0 S1 P0\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG29 ;Home\nG90;\nG92 E0 ;Reset Extruder \nG1 Z2.0 F3000 ;Move Z Axis up \nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nM109 S205;\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder \nG1 X110 Y110 Z2.0 F3000 ;Move Z Axis up",
|
||||
"machine_end_gcode": "M400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-4.0 F3600; retract \nG91\nG1 Z3;\nM104 S0 ; turn off hotend\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nG90 \nG0 X110 Y200 F3600 \nprint_end"
|
||||
|
|
110
resources/profiles/Prusa.json
Normal file
|
@ -0,0 +1,110 @@
|
|||
{
|
||||
"name": "Prusa",
|
||||
"version": "01.02.00.02",
|
||||
"force_update": "0",
|
||||
"description": "Prusa configurations",
|
||||
"machine_model_list": [
|
||||
{
|
||||
"name": "Prusa MK3S",
|
||||
"sub_path": "machine/Prusa MK3S.json"
|
||||
}
|
||||
],
|
||||
"process_list": [
|
||||
{
|
||||
"name": "fdm_process_common",
|
||||
"sub_path": "process/fdm_process_common.json"
|
||||
},
|
||||
{
|
||||
"name": "0.20mm Standard @MK3S",
|
||||
"sub_path": "process/0.20mm Standard @MK3S.json"
|
||||
}
|
||||
],
|
||||
"filament_list": [
|
||||
{
|
||||
"name": "fdm_filament_common",
|
||||
"sub_path": "filament/fdm_filament_common.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pla",
|
||||
"sub_path": "filament/fdm_filament_pla.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_tpu",
|
||||
"sub_path": "filament/fdm_filament_tpu.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pet",
|
||||
"sub_path": "filament/fdm_filament_pet.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_abs",
|
||||
"sub_path": "filament/fdm_filament_abs.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pc",
|
||||
"sub_path": "filament/fdm_filament_pc.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_asa",
|
||||
"sub_path": "filament/fdm_filament_asa.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pva",
|
||||
"sub_path": "filament/fdm_filament_pva.json"
|
||||
},
|
||||
{
|
||||
"name": "fdm_filament_pa",
|
||||
"sub_path": "filament/fdm_filament_pa.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic PLA",
|
||||
"sub_path": "filament/Prusa Generic PLA.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic PLA-CF",
|
||||
"sub_path": "filament/Prusa Generic PLA-CF.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic PETG",
|
||||
"sub_path": "filament/Prusa Generic PETG.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic ABS",
|
||||
"sub_path": "filament/Prusa Generic ABS.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic TPU",
|
||||
"sub_path": "filament/Prusa Generic TPU.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic ASA",
|
||||
"sub_path": "filament/Prusa Generic ASA.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic PC",
|
||||
"sub_path": "filament/Prusa Generic PC.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic PVA",
|
||||
"sub_path": "filament/Prusa Generic PVA.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic PA",
|
||||
"sub_path": "filament/Prusa Generic PA.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa Generic PA-CF",
|
||||
"sub_path": "filament/Prusa Generic PA-CF.json"
|
||||
}
|
||||
],
|
||||
"machine_list": [
|
||||
{
|
||||
"name": "fdm_machine_common",
|
||||
"sub_path": "machine/fdm_machine_common.json"
|
||||
},
|
||||
{
|
||||
"name": "Prusa MK3S 0.4 nozzle",
|
||||
"sub_path": "machine/Prusa MK3S 0.4 nozzle.json"
|
||||
}
|
||||
]
|
||||
}
|
18
resources/profiles/Prusa/filament/Prusa Generic ABS.json
Normal file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB99",
|
||||
"setting_id": "GFSB99",
|
||||
"name": "Prusa Generic ABS",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_abs",
|
||||
"filament_flow_ratio": [
|
||||
"0.926"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
18
resources/profiles/Prusa/filament/Prusa Generic ASA.json
Normal file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB98",
|
||||
"setting_id": "GFSB98",
|
||||
"name": "Prusa Generic ASA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_asa",
|
||||
"filament_flow_ratio": [
|
||||
"0.93"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
24
resources/profiles/Prusa/filament/Prusa Generic PA-CF.json
Normal file
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN98",
|
||||
"setting_id": "GFSN99",
|
||||
"name": "Prusa Generic PA-CF",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pa",
|
||||
"filament_type": [
|
||||
"PA-CF"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"280"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"280"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"8"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
21
resources/profiles/Prusa/filament/Prusa Generic PA.json
Normal file
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN99",
|
||||
"setting_id": "GFSN98",
|
||||
"name": "Prusa Generic PA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pa",
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"280"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"280"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
18
resources/profiles/Prusa/filament/Prusa Generic PC.json
Normal file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFC99",
|
||||
"setting_id": "GFSC99",
|
||||
"name": "Prusa Generic PC",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pc",
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.94"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
48
resources/profiles/Prusa/filament/Prusa Generic PETG.json
Normal file
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFG99",
|
||||
"setting_id": "GFSG99",
|
||||
"name": "Prusa Generic PETG",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pet",
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"30"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"90"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"90"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"40"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"10"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
24
resources/profiles/Prusa/filament/Prusa Generic PLA-CF.json
Normal file
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL98",
|
||||
"setting_id": "GFSL98",
|
||||
"name": "Prusa Generic PLA-CF",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pla",
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_type": [
|
||||
"PLA-CF"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"7"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
21
resources/profiles/Prusa/filament/Prusa Generic PLA.json
Normal file
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL99",
|
||||
"setting_id": "GFSL99",
|
||||
"name": "Prusa Generic PLA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pla",
|
||||
"filament_flow_ratio": [
|
||||
"0.98"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
24
resources/profiles/Prusa/filament/Prusa Generic PVA.json
Normal file
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFS99",
|
||||
"setting_id": "GFSS99",
|
||||
"name": "Prusa Generic PVA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pva",
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"7"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
15
resources/profiles/Prusa/filament/Prusa Generic TPU.json
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFU99",
|
||||
"setting_id": "GFSR99",
|
||||
"name": "Prusa Generic TPU",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_tpu",
|
||||
"filament_max_volumetric_speed": [
|
||||
"3.2"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
82
resources/profiles/Prusa/filament/fdm_filament_abs.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_abs",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"30"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"28.6"
|
||||
],
|
||||
"filament_type": [
|
||||
"ABS"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"260"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"80"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"80"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"260"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"110"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"240"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"270"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"3"
|
||||
]
|
||||
}
|
82
resources/profiles/Prusa/filament/fdm_filament_asa.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_asa",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"105"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"105"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"35"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"28.6"
|
||||
],
|
||||
"filament_type": [
|
||||
"ASA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"260"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"80"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"80"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"260"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"110"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"240"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"270"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"3"
|
||||
]
|
||||
}
|
135
resources/profiles/Prusa/filament/fdm_filament_common.json
Normal file
|
@ -0,0 +1,135 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_common",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"cool_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"95%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; filament end gcode \n"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"1"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"0"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"60"
|
||||
],
|
||||
"filament_cost": [
|
||||
"0"
|
||||
],
|
||||
"filament_density": [
|
||||
"0"
|
||||
],
|
||||
"filament_deretraction_speed": [
|
||||
"nil"
|
||||
],
|
||||
"filament_diameter": [
|
||||
"1.75"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"0"
|
||||
],
|
||||
"filament_minimal_purge_on_wipe_tower": [
|
||||
"15"
|
||||
],
|
||||
"filament_retraction_minimum_travel": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retract_before_wipe": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retract_when_changing_layer": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retraction_length": [
|
||||
"nil"
|
||||
],
|
||||
"filament_z_hop": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retract_restart_extra": [
|
||||
"nil"
|
||||
],
|
||||
"filament_retraction_speed": [
|
||||
"nil"
|
||||
],
|
||||
"filament_settings_id": [
|
||||
""
|
||||
],
|
||||
"filament_soluble": [
|
||||
"0"
|
||||
],
|
||||
"filament_type": [
|
||||
"PLA"
|
||||
],
|
||||
"filament_vendor": [
|
||||
"Generic"
|
||||
],
|
||||
"filament_wipe": [
|
||||
"nil"
|
||||
],
|
||||
"filament_wipe_distance": [
|
||||
"nil"
|
||||
],
|
||||
"bed_type": [
|
||||
"Cool Plate"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"200"
|
||||
],
|
||||
"full_fan_speed_layer": [
|
||||
"0"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"35"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; Filament gcode\n"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"200"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"100"
|
||||
]
|
||||
}
|
79
resources/profiles/Prusa/filament/fdm_filament_pa.json
Normal file
|
@ -0,0 +1,79 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pa",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"100"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"100"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"100"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"100"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"8"
|
||||
],
|
||||
"filament_type": [
|
||||
"PA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"290"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"0"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"60"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"0"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"30"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"290"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"108"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"270"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"300"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"2"
|
||||
]
|
||||
}
|
82
resources/profiles/Prusa/filament/fdm_filament_pc.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pc",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"110"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"110"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"110"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"110"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"30"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"23.2"
|
||||
],
|
||||
"filament_type": [
|
||||
"PC"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.04"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"270"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"60"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"10"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"25%"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"60"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"280"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"140"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"260"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"280"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"2"
|
||||
]
|
||||
}
|
76
resources/profiles/Prusa/filament/fdm_filament_pet.json
Normal file
|
@ -0,0 +1,76 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pet",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"80"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"60"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"80"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"3"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"20"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"25"
|
||||
],
|
||||
"filament_type": [
|
||||
"PETG"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.27"
|
||||
],
|
||||
"filament_cost": [
|
||||
"30"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"255"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"255"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"80"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"220"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"260"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
88
resources/profiles/Prusa/filament/fdm_filament_pla.json
Normal file
|
@ -0,0 +1,88 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pla",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"fan_cooling_layer_time": [
|
||||
"100"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"filament_type": [
|
||||
"PLA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.24"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"cool_plate_temp" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"45"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"45"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"220"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"50%"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"1"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"220"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"60"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"190"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"230"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"20"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
94
resources/profiles/Prusa/filament/fdm_filament_pva.json
Normal file
|
@ -0,0 +1,94 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_pva",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"45"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"35"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"0"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"45"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"100"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"15"
|
||||
],
|
||||
"filament_soluble": [
|
||||
"1"
|
||||
],
|
||||
"filament_is_support": [
|
||||
"1"
|
||||
],
|
||||
"filament_type": [
|
||||
"PVA"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.24"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"220"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_threshold": [
|
||||
"50%"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"1"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"220"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"50"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"190"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"250"
|
||||
],
|
||||
"slow_down_min_speed": [
|
||||
"50"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
82
resources/profiles/Prusa/filament/fdm_filament_tpu.json
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"type": "filament",
|
||||
"name": "fdm_filament_tpu",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"inherits": "fdm_filament_common",
|
||||
"cool_plate_temp" : [
|
||||
"30"
|
||||
],
|
||||
"eng_plate_temp" : [
|
||||
"30"
|
||||
],
|
||||
"hot_plate_temp" : [
|
||||
"35"
|
||||
],
|
||||
"cool_plate_temp_initial_layer" : [
|
||||
"30"
|
||||
],
|
||||
"eng_plate_temp_initial_layer" : [
|
||||
"30"
|
||||
],
|
||||
"hot_plate_temp_initial_layer" : [
|
||||
"35"
|
||||
],
|
||||
"fan_cooling_layer_time": [
|
||||
"100"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"15"
|
||||
],
|
||||
"filament_type": [
|
||||
"TPU"
|
||||
],
|
||||
"filament_density": [
|
||||
"1.24"
|
||||
],
|
||||
"filament_cost": [
|
||||
"20"
|
||||
],
|
||||
"filament_retraction_length": [
|
||||
"0.4"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"240"
|
||||
],
|
||||
"reduce_fan_stop_start_freq": [
|
||||
"1"
|
||||
],
|
||||
"slow_down_for_layer_cooling": [
|
||||
"1"
|
||||
],
|
||||
"fan_max_speed": [
|
||||
"100"
|
||||
],
|
||||
"fan_min_speed": [
|
||||
"100"
|
||||
],
|
||||
"overhang_fan_speed": [
|
||||
"100"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"close_fan_the_first_x_layers": [
|
||||
"1"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"240"
|
||||
],
|
||||
"temperature_vitrification": [
|
||||
"60"
|
||||
],
|
||||
"nozzle_temperature_range_low": [
|
||||
"200"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"250"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
34
resources/profiles/Prusa/machine/Prusa MK3S 0.4 nozzle.json
Normal file
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
"type": "machine",
|
||||
"setting_id": "GM003",
|
||||
"name": "Prusa MK3S 0.4 nozzle",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_machine_common",
|
||||
"printer_model": "Prusa MK3S",
|
||||
"default_filament_profile": [
|
||||
"Prusa Generic PLA"
|
||||
],
|
||||
"default_print_profile": "0.20mm Standard @MK3S",
|
||||
"nozzle_diameter": [
|
||||
"0.4"
|
||||
],
|
||||
"bed_exclude_area": [
|
||||
"0x0"
|
||||
],
|
||||
"printable_area": [
|
||||
"0x0",
|
||||
"250x0",
|
||||
"250x210",
|
||||
"0x210"
|
||||
],
|
||||
"printable_height": "210",
|
||||
"machine_start_gcode": "M862.3 P \"[printer_model]\" ; printer model check\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S170 ; set extruder temp for bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp\nM204 T1250 ; set travel acceleration\nG28 ; home all without mesh bed level\nG29 ; mesh bed leveling \nM204 T[machine_max_acceleration_travel] ; restore travel acceleration\nM104 S[nozzle_temperature_initial_layer] ; set extruder temp\nG92 E0\nG1 Y-2 X179 F2400\nG1 Z3 F720\nM109 S[nozzle_temperature_initial_layer] ; wait for extruder temp\n\n; intro line\nG1 X170 F1000\nG1 Z0.2 F720\nG1 X110 E8 F900\nG1 X40 E10 F700\nG92 E0\n\nM221 S95 ; set flow",
|
||||
"machine_end_gcode": "G1 E-1 F2100 ; retract\n{if max_layer_z < 210}G1 Z{min(max_layer_z+2, 210)} F720 ; Move print head up{endif}\nG1 X178 Y178 F4200 ; park print head\n{if max_layer_z < 210}G1 Z{min(max_layer_z+30, 210)} F720 ; Move print head further up{endif}\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM221 S100 ; reset flow\nM900 K0 ; reset LA\nM84 ; disable motors",
|
||||
"layer_change_gcode": "",
|
||||
"scan_first_layer": "0",
|
||||
"machine_load_filament_time": "17",
|
||||
"machine_unload_filament_time": "16",
|
||||
"nozzle_type": "hardened_steel",
|
||||
"auxiliary_fan": "0"
|
||||
}
|
12
resources/profiles/Prusa/machine/Prusa MK3S.json
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"type": "machine_model",
|
||||
"name": "Prusa MK3S",
|
||||
"model_id": "MK3S",
|
||||
"nozzle_diameter": "0.4",
|
||||
"machine_tech": "FFF",
|
||||
"family": "Prusa",
|
||||
"bed_model": "mk3_bed.stl",
|
||||
"bed_texture": "mk3.svg",
|
||||
"hotend_model": "bbl-3dp-hotend.stl",
|
||||
"default_materials": "Prusa Generic ABS;Prusa Generic PLA;Prusa Generic PLA-CF;Prusa Generic PETG;Prusa Generic TPU;Prusa Generic ASA;Prusa Generic PC;Prusa Generic PVA;Prusa Generic PA;Prusa Generic PA-CF"
|
||||
}
|
137
resources/profiles/Prusa/machine/fdm_machine_common.json
Normal file
|
@ -0,0 +1,137 @@
|
|||
{
|
||||
"type": "machine",
|
||||
"name": "fdm_machine_common",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"gcode_flavor": "marlin",
|
||||
"machine_start_gcode": "",
|
||||
"machine_end_gcode": "",
|
||||
"extruder_colour": [
|
||||
"#018001"
|
||||
],
|
||||
"extruder_offset": [
|
||||
"0x0"
|
||||
],
|
||||
"machine_max_acceleration_e": [
|
||||
"5000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_extruding": [
|
||||
"2000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_retracting": [
|
||||
"5000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_travel": [
|
||||
"3000",
|
||||
"3000"
|
||||
],
|
||||
"machine_max_acceleration_x": [
|
||||
"2000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_y": [
|
||||
"2000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_z": [
|
||||
"300",
|
||||
"200"
|
||||
],
|
||||
"machine_max_speed_e": [
|
||||
"25",
|
||||
"25"
|
||||
],
|
||||
"machine_max_speed_x": [
|
||||
"300",
|
||||
"200"
|
||||
],
|
||||
"machine_max_speed_y": [
|
||||
"300",
|
||||
"200"
|
||||
],
|
||||
"machine_max_speed_z": [
|
||||
"12",
|
||||
"12"
|
||||
],
|
||||
"machine_max_jerk_e": [
|
||||
"2.5",
|
||||
"2.5"
|
||||
],
|
||||
"machine_max_jerk_x": [
|
||||
"9",
|
||||
"9"
|
||||
],
|
||||
"machine_max_jerk_y": [
|
||||
"9",
|
||||
"9"
|
||||
],
|
||||
"machine_max_jerk_z": [
|
||||
"0.2",
|
||||
"0.4"
|
||||
],
|
||||
"machine_min_extruding_rate": [
|
||||
"0",
|
||||
"0"
|
||||
],
|
||||
"machine_min_travel_rate": [
|
||||
"0",
|
||||
"0"
|
||||
],
|
||||
"max_layer_height": [
|
||||
"0.3"
|
||||
],
|
||||
"min_layer_height": [
|
||||
"0.08"
|
||||
],
|
||||
"printable_height": "250",
|
||||
"extruder_clearance_radius": "65",
|
||||
"extruder_clearance_height_to_rod": "36",
|
||||
"extruder_clearance_height_to_lid": "140",
|
||||
"nozzle_diameter": [
|
||||
"0.4"
|
||||
],
|
||||
"printer_settings_id": "",
|
||||
"printer_technology": "FFF",
|
||||
"printer_variant": "0.4",
|
||||
"retraction_minimum_travel": [
|
||||
"1"
|
||||
],
|
||||
"retract_before_wipe": [
|
||||
"70%"
|
||||
],
|
||||
"retract_when_changing_layer": [
|
||||
"1"
|
||||
],
|
||||
"retraction_length": [
|
||||
"0.8"
|
||||
],
|
||||
"retract_length_toolchange": [
|
||||
"2"
|
||||
],
|
||||
"z_hop": [
|
||||
"0.4"
|
||||
],
|
||||
"retract_restart_extra": [
|
||||
"0"
|
||||
],
|
||||
"retract_restart_extra_toolchange": [
|
||||
"0"
|
||||
],
|
||||
"retraction_speed": [
|
||||
"30"
|
||||
],
|
||||
"deretraction_speed": [
|
||||
"30"
|
||||
],
|
||||
"silent_mode": "0",
|
||||
"single_extruder_multi_material": "1",
|
||||
"change_filament_gcode": "",
|
||||
"layer_change_gcode": "",
|
||||
"machine_pause_gcode": "M400 U1\n",
|
||||
"wipe": [
|
||||
"1"
|
||||
]
|
||||
}
|
930
resources/profiles/Prusa/mk3.svg
Normal file
|
@ -0,0 +1,930 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="710.08"
|
||||
height="596.69"
|
||||
viewBox="0 0 710.08 596.69"
|
||||
version="1.1"
|
||||
id="svg3128">
|
||||
<metadata
|
||||
id="metadata3134">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title>MK3_bottom</dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3132" />
|
||||
<title
|
||||
id="title2792">MK3_bottom</title>
|
||||
<line
|
||||
x1="0.71"
|
||||
y1="0.71"
|
||||
x2="0.71"
|
||||
y2="595.98"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.42"
|
||||
id="line2794"
|
||||
style="stroke-width:1.42;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="142.44833"
|
||||
y1="0.71833557"
|
||||
x2="142.44833"
|
||||
y2="595.61292"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.43667"
|
||||
id="line2796"
|
||||
style="stroke-width:1.433;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="284.16168"
|
||||
y1="0.71833557"
|
||||
x2="284.16168"
|
||||
y2="595.61292"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.43667"
|
||||
id="line2798"
|
||||
style="stroke-width:1.433;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="709.37"
|
||||
y1="595.97998"
|
||||
x2="709.37"
|
||||
y2="0.70999998"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.43721"
|
||||
id="line2800"
|
||||
style="stroke-width:1.42;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.1709223"
|
||||
y1="581.81"
|
||||
x2="709.37"
|
||||
y2="581.81"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.4333"
|
||||
id="line2802" />
|
||||
<line
|
||||
x1="0.71"
|
||||
y1="595.98"
|
||||
x2="709.37"
|
||||
y2="595.98"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.42"
|
||||
id="line2804" />
|
||||
<line
|
||||
x1="1.1709223"
|
||||
y1="440.07999"
|
||||
x2="709.37"
|
||||
y2="440.07999"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.4333"
|
||||
id="line2806" />
|
||||
<line
|
||||
x1="1.1709223"
|
||||
y1="298.35001"
|
||||
x2="709.37"
|
||||
y2="298.35001"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.4333"
|
||||
id="line2808" />
|
||||
<line
|
||||
x1="1.1709223"
|
||||
y1="156.61"
|
||||
x2="709.37"
|
||||
y2="156.61"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.4333"
|
||||
id="line2810" />
|
||||
<line
|
||||
x1="1.1709223"
|
||||
y1="14.88"
|
||||
x2="709.37"
|
||||
y2="14.88"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.4333"
|
||||
id="line2812" />
|
||||
<line
|
||||
x1="709.37"
|
||||
y1="0.71"
|
||||
x2="0.71"
|
||||
y2="0.71"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.42"
|
||||
id="line2814" />
|
||||
<line
|
||||
x1="425.91"
|
||||
y1="0.71"
|
||||
x2="425.91"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.42"
|
||||
id="line2816"
|
||||
style="stroke-width:1.433;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="425.91"
|
||||
y1="522.54852"
|
||||
x2="425.91"
|
||||
y2="595.72882"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.11117"
|
||||
id="line2818"
|
||||
style="stroke-width:1.433;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="567.64"
|
||||
y1="0.71"
|
||||
x2="567.64"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.42"
|
||||
id="line2820"
|
||||
style="stroke-width:1.433;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="567.64"
|
||||
y1="522.54"
|
||||
x2="567.64"
|
||||
y2="527.69"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.42"
|
||||
id="line2822"
|
||||
style="stroke-width:1.433;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="567.64001"
|
||||
y1="548.59186"
|
||||
x2="567.64001"
|
||||
y2="595.39081"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="1.67836"
|
||||
id="line2824"
|
||||
style="stroke-width:1.433;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="85.751419"
|
||||
y1="0.71222502"
|
||||
x2="85.751419"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2826" />
|
||||
<line
|
||||
x1="114.09101"
|
||||
y1="0.71222502"
|
||||
x2="114.09101"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2828" />
|
||||
<line
|
||||
x1="170.79019"
|
||||
y1="0.71222502"
|
||||
x2="170.79019"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2830" />
|
||||
<line
|
||||
x1="199.12981"
|
||||
y1="0.71222502"
|
||||
x2="199.12981"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2832" />
|
||||
<line
|
||||
x1="227.47939"
|
||||
y1="0.71222502"
|
||||
x2="227.47939"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2834" />
|
||||
<line
|
||||
x1="255.82899"
|
||||
y1="0.71222502"
|
||||
x2="255.82899"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2836" />
|
||||
<line
|
||||
x1="312.51816"
|
||||
y1="0.71222502"
|
||||
x2="312.51816"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2838" />
|
||||
<line
|
||||
x1="340.86777"
|
||||
y1="0.71222502"
|
||||
x2="340.86777"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2840" />
|
||||
<line
|
||||
x1="681.02002"
|
||||
y1="0.71449536"
|
||||
x2="681.02002"
|
||||
y2="595.93481"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.374468"
|
||||
id="line2842" />
|
||||
<line
|
||||
x1="29.062225"
|
||||
y1="0.71222502"
|
||||
x2="29.062225"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2844"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="57.401821"
|
||||
y1="0.71222502"
|
||||
x2="57.401821"
|
||||
y2="595.883"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37445"
|
||||
id="line2846" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="468.42999"
|
||||
x2="709.37"
|
||||
y2="468.42999"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2848"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="496.76999"
|
||||
x2="709.37"
|
||||
y2="496.76999"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2850"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="525.12"
|
||||
x2="709.37"
|
||||
y2="525.12"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2852"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="553.46002"
|
||||
x2="709.37"
|
||||
y2="553.46002"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2854"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="411.73001"
|
||||
x2="709.37"
|
||||
y2="411.73001"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2856"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="383.39001"
|
||||
x2="709.37"
|
||||
y2="383.39001"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2858"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="355.04001"
|
||||
x2="709.37"
|
||||
y2="355.04001"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2860"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="326.69"
|
||||
x2="709.37"
|
||||
y2="326.69"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2862"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="270"
|
||||
x2="709.37"
|
||||
y2="270"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2864"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="241.64999"
|
||||
x2="709.37"
|
||||
y2="241.64999"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2866"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="213.31"
|
||||
x2="709.37"
|
||||
y2="213.31"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2868"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="184.96001"
|
||||
x2="709.37"
|
||||
y2="184.96001"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2870"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="128.27"
|
||||
x2="709.37"
|
||||
y2="128.27"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2872"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="99.919998"
|
||||
x2="709.37"
|
||||
y2="99.919998"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2874"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="71.57"
|
||||
x2="709.37"
|
||||
y2="71.57"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2876"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="1.4567798"
|
||||
y1="43.23"
|
||||
x2="709.37"
|
||||
y2="43.23"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.373389"
|
||||
id="line2878"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="369.21"
|
||||
y1="0.71"
|
||||
x2="369.21"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2880"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="369.23029"
|
||||
y1="522.5603"
|
||||
x2="369.23029"
|
||||
y2="595.6524"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.41059"
|
||||
id="line2882"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="397.56"
|
||||
y1="0.71"
|
||||
x2="397.56"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2884"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="397.5397"
|
||||
y1="522.5603"
|
||||
x2="397.5397"
|
||||
y2="595.6524"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.41059"
|
||||
id="line2886"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="454.25"
|
||||
y1="0.71"
|
||||
x2="454.25"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2888"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="454.27032"
|
||||
y1="522.5603"
|
||||
x2="454.27032"
|
||||
y2="595.61359"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.410677"
|
||||
id="line2890"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="482.6"
|
||||
y1="0.71"
|
||||
x2="482.6"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2892"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="482.60678"
|
||||
y1="522.5603"
|
||||
x2="482.60678"
|
||||
y2="595.61359"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.410677"
|
||||
id="line2894"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="510.94"
|
||||
y1="0.71"
|
||||
x2="510.94"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2896"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="510.93323"
|
||||
y1="522.5603"
|
||||
x2="510.93323"
|
||||
y2="595.61359"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.410677"
|
||||
id="line2898"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="539.29"
|
||||
y1="0.71"
|
||||
x2="539.29"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2900"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="539.26965"
|
||||
y1="522.5603"
|
||||
x2="539.26965"
|
||||
y2="595.61359"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.410677"
|
||||
id="line2902"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="595.98"
|
||||
y1="0.71"
|
||||
x2="595.98"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2904"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="624.33"
|
||||
y1="0.71"
|
||||
x2="624.33"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2906"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="652.68"
|
||||
y1="0.71"
|
||||
x2="652.68"
|
||||
y2="499.35"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2908"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="652.68"
|
||||
y1="522.54"
|
||||
x2="652.68"
|
||||
y2="527.69"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2910"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="652.64447"
|
||||
y1="548.34552"
|
||||
x2="652.64447"
|
||||
y2="595.99268"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.440987"
|
||||
id="line2912"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="624.33"
|
||||
y1="522.54"
|
||||
x2="624.33"
|
||||
y2="527.69"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2914"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="624.33002"
|
||||
y1="548.34552"
|
||||
x2="624.33002"
|
||||
y2="595.99268"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.440987"
|
||||
id="line2916"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="595.98"
|
||||
y1="522.54"
|
||||
x2="595.98"
|
||||
y2="527.69"
|
||||
fill="none"
|
||||
stroke="#fff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.37"
|
||||
id="line2918"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<line
|
||||
x1="596.0155"
|
||||
y1="548.34552"
|
||||
x2="596.0155"
|
||||
y2="595.99268"
|
||||
fill="none"
|
||||
stroke="#ffffff"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="0.440987"
|
||||
id="line2920"
|
||||
style="stroke-width:0.374;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
d="M377.71,502.59a8,8,0,0,1,3.44.72,7.6,7.6,0,0,1,2.58,1.95,8.78,8.78,0,0,1,1.62,2.85,10.85,10.85,0,0,1,0,6.94,8.67,8.67,0,0,1-1.62,2.85,7.45,7.45,0,0,1-2.58,1.94,8.71,8.71,0,0,1-6.89,0,7.64,7.64,0,0,1-2.58-1.94,8.67,8.67,0,0,1-1.62-2.85,11,11,0,0,1,0-6.94,8.78,8.78,0,0,1,1.62-2.85,7.8,7.8,0,0,1,2.58-1.95A8,8,0,0,1,377.71,502.59Zm0,2.45a4.94,4.94,0,0,0-2.37.55,4.7,4.7,0,0,0-1.62,1.48,6.87,6.87,0,0,0-.92,2.1,9.75,9.75,0,0,0,0,4.8,6.87,6.87,0,0,0,.92,2.1,4.7,4.7,0,0,0,1.62,1.48,4.94,4.94,0,0,0,2.37.55,4.87,4.87,0,0,0,2.36-.55,4.7,4.7,0,0,0,1.62-1.48,6.64,6.64,0,0,0,.92-2.1,9.45,9.45,0,0,0,0-4.8,6.64,6.64,0,0,0-.92-2.1,4.7,4.7,0,0,0-1.62-1.48A4.87,4.87,0,0,0,377.71,505Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3068" />
|
||||
<path
|
||||
d="M388.65,503h8.18a6.32,6.32,0,0,1,4.25,1.23,4.23,4.23,0,0,1,1.42,3.4,5,5,0,0,1-.36,2,4.42,4.42,0,0,1-.84,1.3,3.4,3.4,0,0,1-.95.71c-.31.14-.54.23-.68.28V512a2.88,2.88,0,0,1,.82.24,2.38,2.38,0,0,1,.83.61,3.38,3.38,0,0,1,.64,1.09,4.82,4.82,0,0,1,.25,1.69,15.32,15.32,0,0,0,.23,2.74,3.59,3.59,0,0,0,.71,1.77h-3.22a2.88,2.88,0,0,1-.4-1.23c0-.44-.06-.88-.06-1.29a12,12,0,0,0-.14-2,3.57,3.57,0,0,0-.53-1.42,2.18,2.18,0,0,0-1-.82,4.53,4.53,0,0,0-1.69-.27h-4.42v7.06h-3Zm3,7.8h4.92a3.17,3.17,0,0,0,2.19-.68,2.68,2.68,0,0,0,.74-2.05,3.21,3.21,0,0,0-.24-1.34,1.94,1.94,0,0,0-.66-.8,2.39,2.39,0,0,0-1-.38,5.83,5.83,0,0,0-1.12-.1h-4.87Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3070" />
|
||||
<path
|
||||
d="M405.55,503h3v17.14h-3Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3072" />
|
||||
<path
|
||||
d="M427.17,520.14h-1.92l-.46-2a7.15,7.15,0,0,1-2.4,1.9,6.83,6.83,0,0,1-2.76.53,8.11,8.11,0,0,1-3.44-.71,7.45,7.45,0,0,1-2.58-1.94,8.67,8.67,0,0,1-1.62-2.85,11,11,0,0,1,0-6.94,8.78,8.78,0,0,1,1.62-2.85,7.6,7.6,0,0,1,2.58-1.95,8,8,0,0,1,3.44-.72,9.3,9.3,0,0,1,2.66.38,6.89,6.89,0,0,1,2.24,1.1,6.1,6.1,0,0,1,1.63,1.83,6.49,6.49,0,0,1,.82,2.55h-2.93a3.73,3.73,0,0,0-1.51-2.55,4.42,4.42,0,0,0-1.35-.64,5.3,5.3,0,0,0-1.56-.22,4.87,4.87,0,0,0-2.36.55,4.7,4.7,0,0,0-1.62,1.48,6.64,6.64,0,0,0-.92,2.1,9.75,9.75,0,0,0,0,4.8,6.64,6.64,0,0,0,.92,2.1,4.7,4.7,0,0,0,1.62,1.48,4.87,4.87,0,0,0,2.36.55,5.84,5.84,0,0,0,2-.3,3.91,3.91,0,0,0,2.43-2.44,6.11,6.11,0,0,0,.33-2h-4.56v-2.28h7.3Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3074" />
|
||||
<path
|
||||
d="M430.43,503h3v17.14h-3Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3076" />
|
||||
<path
|
||||
d="M437,503h3.16L448,515.63h0V503h2.85v17.14h-3.17l-7.8-12.6h-.07v12.6H437Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3078" />
|
||||
<path
|
||||
d="M459,503h3.19l6.6,17.14h-3.22L464,515.6h-6.84l-1.61,4.54h-3.1ZM458,513.32h5.23L460.63,506h-.08Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3080" />
|
||||
<path
|
||||
d="M470.44,503h3v14.55h8.71v2.59H470.44Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3082" />
|
||||
<path
|
||||
d="M490.89,503h7.56a7.15,7.15,0,0,1,3,.53,4.61,4.61,0,0,1,1.78,1.32,4.38,4.38,0,0,1,.85,1.73,6.93,6.93,0,0,1,.23,1.73,6.78,6.78,0,0,1-.23,1.71,4.4,4.4,0,0,1-.85,1.72,4.59,4.59,0,0,1-1.78,1.31,7.34,7.34,0,0,1-3,.51h-4.56v6.58h-3Zm3,8.11h4.39a3.7,3.7,0,0,0,1-.14,3,3,0,0,0,1-.47,2.45,2.45,0,0,0,.72-.86,3,3,0,0,0,.27-1.36,3.5,3.5,0,0,0-.24-1.39,2.18,2.18,0,0,0-.65-.88,2.35,2.35,0,0,0-.93-.44,5.09,5.09,0,0,0-1.13-.12h-4.44Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3084" />
|
||||
<path
|
||||
d="M506.9,503h8.18a6.34,6.34,0,0,1,4.25,1.23,4.26,4.26,0,0,1,1.42,3.4,4.78,4.78,0,0,1-.37,2,4.41,4.41,0,0,1-.83,1.3,3.55,3.55,0,0,1-.95.71c-.31.14-.54.23-.69.28V512a2.94,2.94,0,0,1,.83.24,2.47,2.47,0,0,1,.83.61,3.38,3.38,0,0,1,.64,1.09,5.06,5.06,0,0,1,.25,1.69,15.36,15.36,0,0,0,.22,2.74,3.68,3.68,0,0,0,.71,1.77h-3.21a2.75,2.75,0,0,1-.4-1.23c0-.44-.06-.88-.06-1.29a13.09,13.09,0,0,0-.14-2,3.72,3.72,0,0,0-.53-1.42,2.23,2.23,0,0,0-1-.82,4.59,4.59,0,0,0-1.7-.27H509.9v7.06h-3Zm3,7.8h4.92a3.13,3.13,0,0,0,2.18-.68,2.64,2.64,0,0,0,.75-2.05,3.21,3.21,0,0,0-.24-1.34,2,2,0,0,0-.67-.8,2.33,2.33,0,0,0-1-.38,5.73,5.73,0,0,0-1.11-.1H509.9Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3086" />
|
||||
<path
|
||||
d="M523.6,503h3v10c0,.58,0,1.17.08,1.76a4,4,0,0,0,.49,1.59,3,3,0,0,0,1.2,1.17,5.93,5.93,0,0,0,4.53,0,3,3,0,0,0,1.2-1.17,3.94,3.94,0,0,0,.48-1.59,17.44,17.44,0,0,0,.09-1.76V503h3v11a7.48,7.48,0,0,1-.51,2.88,5.38,5.38,0,0,1-1.43,2,5.87,5.87,0,0,1-2.22,1.24,10.32,10.32,0,0,1-5.76,0,6,6,0,0,1-2.22-1.24,5.47,5.47,0,0,1-1.42-2,7.48,7.48,0,0,1-.51-2.88Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3088" />
|
||||
<path
|
||||
d="M543.09,514.43a3.93,3.93,0,0,0,.33,1.68,3.17,3.17,0,0,0,.94,1.14,4,4,0,0,0,1.38.64,6.47,6.47,0,0,0,1.69.21,5.45,5.45,0,0,0,1.68-.23,3.34,3.34,0,0,0,1.13-.59,2,2,0,0,0,.62-.83,2.41,2.41,0,0,0,.2-.94,2,2,0,0,0-.45-1.46,2.54,2.54,0,0,0-1-.66c-.61-.22-1.32-.43-2.12-.63s-1.81-.46-3-.78a6.41,6.41,0,0,1-1.84-.76,4.38,4.38,0,0,1-1.16-1,3.63,3.63,0,0,1-.61-1.23,4.89,4.89,0,0,1-.18-1.32,4.45,4.45,0,0,1,.54-2.24,4.68,4.68,0,0,1,1.43-1.57,6.18,6.18,0,0,1,2-.93,8.81,8.81,0,0,1,2.28-.3,9,9,0,0,1,2.53.35,6.3,6.3,0,0,1,2.09,1,5.17,5.17,0,0,1,1.43,1.72,5.11,5.11,0,0,1,.53,2.37h-3a2.88,2.88,0,0,0-1.13-2.34,4.45,4.45,0,0,0-2.57-.69,5.82,5.82,0,0,0-1.08.11,3.37,3.37,0,0,0-1,.36,2.22,2.22,0,0,0-.75.68,1.86,1.86,0,0,0-.3,1.08,1.82,1.82,0,0,0,.56,1.43,3.54,3.54,0,0,0,1.48.78l.75.21,1.48.39,1.59.42,1.12.3a5.1,5.1,0,0,1,1.46.72,4.55,4.55,0,0,1,1.05,1.05,4.11,4.11,0,0,1,.62,1.26,4.41,4.41,0,0,1,.21,1.34,4.87,4.87,0,0,1-.59,2.46,5.06,5.06,0,0,1-1.55,1.67,6.81,6.81,0,0,1-2.18,1,11,11,0,0,1-2.5.3,10.23,10.23,0,0,1-2.76-.36,6.63,6.63,0,0,1-2.26-1.11,5.37,5.37,0,0,1-1.53-1.91,6.15,6.15,0,0,1-.6-2.74Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3090" />
|
||||
<path
|
||||
d="M561.26,503h3.19l6.6,17.14h-3.22l-1.61-4.54h-6.84l-1.6,4.54h-3.1Zm-1.06,10.32h5.23L562.86,506h-.07Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3092" />
|
||||
<path
|
||||
d="M579,503h2.74v2.59H579Zm0,4.73h2.74v12.41H579Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3094" />
|
||||
<path
|
||||
d="M588.78,510.3a6.82,6.82,0,0,0,1.35-.1,3.71,3.71,0,0,0,1.2-.42,2.33,2.33,0,0,0,.85-.83,2.38,2.38,0,0,0,.32-1.29,2.19,2.19,0,0,0-.73-1.73,2.74,2.74,0,0,0-1.88-.65,2.59,2.59,0,0,0-1.25.29,2.63,2.63,0,0,0-.88.78,3.57,3.57,0,0,0-.51,1.1,4.44,4.44,0,0,0-.15,1.26h-2.73a7,7,0,0,1,.45-2.27,6.06,6.06,0,0,1,1.12-1.81,4.93,4.93,0,0,1,1.72-1.2,5.87,5.87,0,0,1,2.28-.43,6.69,6.69,0,0,1,1.93.29,5.51,5.51,0,0,1,1.7.84,4.08,4.08,0,0,1,1.21,1.4,4,4,0,0,1,.46,2,4.13,4.13,0,0,1-.58,2.22,3.28,3.28,0,0,1-1.8,1.38v.05a3.49,3.49,0,0,1,2.25,1.43,4.72,4.72,0,0,1,.8,2.77,4.65,4.65,0,0,1-.48,2.14,4.84,4.84,0,0,1-1.29,1.61,6.09,6.09,0,0,1-1.9,1,7.71,7.71,0,0,1-4.84-.06,4.88,4.88,0,0,1-1.82-1.19,5.12,5.12,0,0,1-1.12-1.84,7.54,7.54,0,0,1-.4-2.4h2.73a3.78,3.78,0,0,0,.76,2.55,2.87,2.87,0,0,0,2.41,1,3.42,3.42,0,0,0,2.29-.78,2.74,2.74,0,0,0,.93-2.22,2.77,2.77,0,0,0-.39-1.56,2.44,2.44,0,0,0-1-.87,3.85,3.85,0,0,0-1.4-.37,12.06,12.06,0,0,0-1.6,0Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3096" />
|
||||
<path
|
||||
d="M548.43,531.91h2.06v4.75h0a3.05,3.05,0,0,1,.52-.61,3.13,3.13,0,0,1,.68-.46,3.58,3.58,0,0,1,.77-.29,3.19,3.19,0,0,1,.8-.1,4.42,4.42,0,0,1,1.92.39,3.77,3.77,0,0,1,1.36,1.06,4.64,4.64,0,0,1,.81,1.58,6.65,6.65,0,0,1,.27,1.92,6.89,6.89,0,0,1-.24,1.82,4.89,4.89,0,0,1-.74,1.56,3.57,3.57,0,0,1-3,1.48,7.57,7.57,0,0,1-.95-.06,3.93,3.93,0,0,1-.91-.24,3.06,3.06,0,0,1-.78-.47,2.28,2.28,0,0,1-.59-.76h0v1.28h-2Zm7.17,8.21a5.06,5.06,0,0,0-.16-1.23,3.27,3.27,0,0,0-.49-1,2.6,2.6,0,0,0-.81-.74,2.17,2.17,0,0,0-1.12-.28,2.26,2.26,0,0,0-1.95.9,4,4,0,0,0-.66,2.4,4.54,4.54,0,0,0,.18,1.3,2.89,2.89,0,0,0,.51,1,2.69,2.69,0,0,0,.82.68,2.26,2.26,0,0,0,1.1.25,2.21,2.21,0,0,0,1.19-.29,2.47,2.47,0,0,0,.8-.74,3.09,3.09,0,0,0,.45-1.05A5.3,5.3,0,0,0,555.6,540.12Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3098" />
|
||||
<path
|
||||
d="M558.35,535.45h2.25L563,542.4h0l2.36-6.95h2.14l-3.64,9.81c-.17.42-.33.83-.49,1.21a4.62,4.62,0,0,1-.59,1,2.61,2.61,0,0,1-.87.7,3,3,0,0,1-1.32.26,9.73,9.73,0,0,1-1.43-.11v-1.73l.49.08a2.63,2.63,0,0,0,.49,0,1.66,1.66,0,0,0,.59-.09,1,1,0,0,0,.39-.26,1.69,1.69,0,0,0,.26-.41,3.65,3.65,0,0,0,.2-.54l.23-.72Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3100" />
|
||||
<path
|
||||
d="M580.94,540.62a9.81,9.81,0,0,1-.14,1.64,3.52,3.52,0,0,1-.59,1.42,3,3,0,0,1-1.28,1,5.47,5.47,0,0,1-2.22.38,4.33,4.33,0,0,1-1.74-.32,3.29,3.29,0,0,1-1.19-.86,3.57,3.57,0,0,1-.69-1.31,6.08,6.08,0,0,1-.21-1.64v-.68h2.25v.67a3.25,3.25,0,0,0,.37,1.7,1.49,1.49,0,0,0,1.39.6,2.08,2.08,0,0,0,.89-.16,1.31,1.31,0,0,0,.56-.48,2,2,0,0,0,.28-.78,6.81,6.81,0,0,0,.07-1.06v-8.84h2.25Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3102" />
|
||||
<path
|
||||
d="M587.66,545a5,5,0,0,1-2-.37,4.1,4.1,0,0,1-1.48-1,4.46,4.46,0,0,1-.92-1.55,6,6,0,0,1-.31-2,5.88,5.88,0,0,1,.31-2,4.37,4.37,0,0,1,.92-1.55,4.25,4.25,0,0,1,1.48-1,5.51,5.51,0,0,1,4,0,4.25,4.25,0,0,1,1.48,1,4.37,4.37,0,0,1,.92,1.55,5.88,5.88,0,0,1,.31,2,6,6,0,0,1-.31,2,4.46,4.46,0,0,1-.92,1.55,4.1,4.1,0,0,1-1.48,1A5,5,0,0,1,587.66,545Zm0-1.62a2.25,2.25,0,0,0,1.18-.29,2.4,2.4,0,0,0,.83-.75,3.2,3.2,0,0,0,.48-1.06,4.73,4.73,0,0,0,.15-1.19,4.85,4.85,0,0,0-.15-1.19,3,3,0,0,0-.48-1,2.4,2.4,0,0,0-.83-.75,2.57,2.57,0,0,0-2.37,0,2.49,2.49,0,0,0-.83.75,3,3,0,0,0-.48,1,4.85,4.85,0,0,0-.15,1.19,4.73,4.73,0,0,0,.15,1.19,3.2,3.2,0,0,0,.48,1.06,2.49,2.49,0,0,0,.83.75A2.26,2.26,0,0,0,587.66,543.39Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3104" />
|
||||
<path
|
||||
d="M595.61,541.77a1.54,1.54,0,0,0,.69,1.26,2.68,2.68,0,0,0,1.42.36,5.25,5.25,0,0,0,.65,0,3.12,3.12,0,0,0,.7-.17,1.45,1.45,0,0,0,.53-.37,1,1,0,0,0-.1-1.29,2.11,2.11,0,0,0-.69-.41,9,9,0,0,0-1-.26l-1.09-.23a9,9,0,0,1-1.11-.31,3.75,3.75,0,0,1-1-.48A2.34,2.34,0,0,1,594,539a2.44,2.44,0,0,1-.25-1.17,2.08,2.08,0,0,1,.37-1.27,2.66,2.66,0,0,1,.93-.83,4,4,0,0,1,1.26-.44,6.88,6.88,0,0,1,1.33-.13,6.12,6.12,0,0,1,1.37.15,3.84,3.84,0,0,1,1.19.5,2.88,2.88,0,0,1,.88.89,3,3,0,0,1,.44,1.32h-2.14a1.27,1.27,0,0,0-.67-1,3,3,0,0,0-1.22-.25,3.44,3.44,0,0,0-.51,0,2.42,2.42,0,0,0-.56.13,1.21,1.21,0,0,0-.44.29.7.7,0,0,0-.18.5.8.8,0,0,0,.26.61,2.14,2.14,0,0,0,.69.38,6.55,6.55,0,0,0,1,.27l1.12.23a9.92,9.92,0,0,1,1.1.31,3.66,3.66,0,0,1,1,.48,2.47,2.47,0,0,1,.69.78,2.36,2.36,0,0,1,.26,1.15,2.5,2.5,0,0,1-.38,1.4,2.94,2.94,0,0,1-1,.94,4.68,4.68,0,0,1-1.35.52,6.66,6.66,0,0,1-1.46.16,6.44,6.44,0,0,1-1.63-.2,3.79,3.79,0,0,1-1.3-.6,2.91,2.91,0,0,1-.87-1,3.18,3.18,0,0,1-.33-1.43Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3106" />
|
||||
<path
|
||||
d="M605,540.64a3.58,3.58,0,0,0,.15,1,2.54,2.54,0,0,0,.46.88,2.11,2.11,0,0,0,.77.61,2.6,2.6,0,0,0,1.12.22A2.46,2.46,0,0,0,609,543a2.27,2.27,0,0,0,.82-1.16h1.94a3.71,3.71,0,0,1-.56,1.35,3.78,3.78,0,0,1-.95,1,3.93,3.93,0,0,1-1.25.61,5,5,0,0,1-1.45.21,4.9,4.9,0,0,1-1.94-.36,3.91,3.91,0,0,1-1.44-1,4.25,4.25,0,0,1-.88-1.54,6.23,6.23,0,0,1-.29-2,5.68,5.68,0,0,1,.31-1.89,4.83,4.83,0,0,1,.9-1.56,4.23,4.23,0,0,1,3.29-1.47,4.15,4.15,0,0,1,2,.46,4.4,4.4,0,0,1,1.45,1.22,4.87,4.87,0,0,1,.83,1.73,5.31,5.31,0,0,1,.14,2Zm4.79-1.35a3.67,3.67,0,0,0-.21-.94,2.54,2.54,0,0,0-.47-.78,2.43,2.43,0,0,0-.72-.54,2.09,2.09,0,0,0-.94-.21,2.43,2.43,0,0,0-1,.19,2.34,2.34,0,0,0-.75.52,2.68,2.68,0,0,0-.51.79,2.8,2.8,0,0,0-.2,1Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3108" />
|
||||
<path
|
||||
d="M612.5,535.45H614v-.77a4,4,0,0,1,.22-1.43,2,2,0,0,1,.58-.85,1.79,1.79,0,0,1,.82-.39,4.22,4.22,0,0,1,1-.1A6.16,6.16,0,0,1,618,532v1.61a2.59,2.59,0,0,0-.42-.09l-.53,0a1.22,1.22,0,0,0-.72.2.88.88,0,0,0-.29.77v1h1.74V537h-1.74v7.78H614V537H612.5Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3110" />
|
||||
<path
|
||||
d="M624.38,531.91h5.67a5.47,5.47,0,0,1,2.23.39,3.68,3.68,0,0,1,1.33,1,3.51,3.51,0,0,1,.64,1.3,5.74,5.74,0,0,1,.17,1.3,5.57,5.57,0,0,1-.17,1.28,3.55,3.55,0,0,1-.64,1.29,3.45,3.45,0,0,1-1.33,1,5.47,5.47,0,0,1-2.23.39h-3.42v4.93h-2.25Zm2.25,6.08h3.29a2.61,2.61,0,0,0,.77-.11,2.14,2.14,0,0,0,.73-.35,1.83,1.83,0,0,0,.54-.65,2.16,2.16,0,0,0,.21-1,2.67,2.67,0,0,0-.18-1,1.7,1.7,0,0,0-1.19-1,3.73,3.73,0,0,0-.84-.09h-3.33Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3112" />
|
||||
<path
|
||||
d="M636.09,535.45H638v1.8h0a2,2,0,0,1,.36-.73,3.26,3.26,0,0,1,.63-.66,3,3,0,0,1,.81-.48,2.47,2.47,0,0,1,.92-.18l.5,0,.28,0v2l-.44-.06a3.39,3.39,0,0,0-.45,0,2.25,2.25,0,0,0-1.78.81,3,3,0,0,0-.54,1,4.44,4.44,0,0,0-.2,1.37v4.43h-2Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3114" />
|
||||
<path
|
||||
d="M650.6,544.76h-2v-1.3h0a2.79,2.79,0,0,1-1.13,1.13,3,3,0,0,1-1.52.42,3.39,3.39,0,0,1-2.65-.91,4,4,0,0,1-.82-2.74v-5.91h2.05v5.71a2.54,2.54,0,0,0,.47,1.73,1.72,1.72,0,0,0,1.31.5,2.48,2.48,0,0,0,1.08-.2,1.88,1.88,0,0,0,.7-.53,2.06,2.06,0,0,0,.39-.8,4.05,4.05,0,0,0,.12-1v-5.4h2.05Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3116" />
|
||||
<path
|
||||
d="M654.31,541.77A1.56,1.56,0,0,0,655,543a2.7,2.7,0,0,0,1.42.36,5.29,5.29,0,0,0,.66,0,2.91,2.91,0,0,0,.69-.17,1.41,1.41,0,0,0,.54-.37.9.9,0,0,0,.18-.64.89.89,0,0,0-.28-.65,2.06,2.06,0,0,0-.7-.41,8.18,8.18,0,0,0-1-.26l-1.1-.23a9.34,9.34,0,0,1-1.1-.31,3.6,3.6,0,0,1-1-.48,2.23,2.23,0,0,1-.67-.79,2.44,2.44,0,0,1-.26-1.17,2.14,2.14,0,0,1,.37-1.27,2.78,2.78,0,0,1,.94-.83,4,4,0,0,1,1.26-.44,6.86,6.86,0,0,1,1.32-.13,6.21,6.21,0,0,1,1.38.15,4,4,0,0,1,1.19.5,3,3,0,0,1,.88.89,3.17,3.17,0,0,1,.44,1.32h-2.14a1.28,1.28,0,0,0-.68-1,2.9,2.9,0,0,0-1.21-.25,3.46,3.46,0,0,0-.52,0,2.45,2.45,0,0,0-.55.13,1.13,1.13,0,0,0-.44.29.7.7,0,0,0-.18.5.77.77,0,0,0,.26.61,2.09,2.09,0,0,0,.68.38,7.08,7.08,0,0,0,1,.27l1.12.23a10.57,10.57,0,0,1,1.1.31,3.82,3.82,0,0,1,1,.48,2.33,2.33,0,0,1,.68.78,2.25,2.25,0,0,1,.26,1.15,2.42,2.42,0,0,1-.38,1.4,2.94,2.94,0,0,1-1,.94,4.51,4.51,0,0,1-1.34.52,6.73,6.73,0,0,1-1.46.16,6.52,6.52,0,0,1-1.64-.2,3.74,3.74,0,0,1-1.29-.6,2.91,2.91,0,0,1-.87-1,3.18,3.18,0,0,1-.33-1.43Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3118" />
|
||||
<path
|
||||
d="M669.9,542.69a1.05,1.05,0,0,0,.1.54.4.4,0,0,0,.38.16h.22l.29,0v1.42l-.28.08-.35.08-.36,0a1.84,1.84,0,0,1-.31,0,1.93,1.93,0,0,1-1-.25,1.23,1.23,0,0,1-.54-.88,3.69,3.69,0,0,1-1.51.86,5.86,5.86,0,0,1-1.72.27,4.3,4.3,0,0,1-1.2-.17,3.13,3.13,0,0,1-1-.5,2.52,2.52,0,0,1-.7-.85,2.65,2.65,0,0,1-.26-1.2,2.77,2.77,0,0,1,.31-1.4,2.42,2.42,0,0,1,.83-.85,3.87,3.87,0,0,1,1.15-.44,11.51,11.51,0,0,1,1.29-.2,8.81,8.81,0,0,1,1.06-.16,5,5,0,0,0,.89-.15,1.42,1.42,0,0,0,.62-.33.93.93,0,0,0,.22-.68,1,1,0,0,0-.19-.65,1.26,1.26,0,0,0-.47-.38,2,2,0,0,0-.62-.18,5,5,0,0,0-.65,0,2.58,2.58,0,0,0-1.42.36,1.41,1.41,0,0,0-.63,1.12h-2a3.19,3.19,0,0,1,.43-1.5,3,3,0,0,1,1-.95,3.74,3.74,0,0,1,1.32-.5,7.51,7.51,0,0,1,1.51-.15,6.07,6.07,0,0,1,1.35.15,3.94,3.94,0,0,1,1.2.46,2.62,2.62,0,0,1,.85.84,2.26,2.26,0,0,1,.33,1.25Zm-2.06-2.59a2.6,2.6,0,0,1-1.15.37,13.25,13.25,0,0,0-1.37.19,3.6,3.6,0,0,0-.63.15,1.71,1.71,0,0,0-.54.27,1.16,1.16,0,0,0-.36.45,1.51,1.51,0,0,0-.14.67.89.89,0,0,0,.2.58,1.35,1.35,0,0,0,.48.37,2.29,2.29,0,0,0,.61.19,4.54,4.54,0,0,0,.6,0,3.39,3.39,0,0,0,.74-.09,2.68,2.68,0,0,0,.75-.3,2.17,2.17,0,0,0,.58-.55,1.39,1.39,0,0,0,.23-.82Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3120" />
|
||||
<path
|
||||
d="M606.38,507.28h3.16l3.55,10.07h0l3.45-10.07h3.13v12.86h-2.14v-9.92h0L614,520.14h-1.85l-3.57-9.92h0v9.92h-2.14Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3122" />
|
||||
<path
|
||||
d="M622.41,507.28h2.25v5.85l5.73-5.85h2.77L628,512.41l5.49,7.73h-2.81L626.5,514l-1.84,1.82v4.32h-2.25Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3124" />
|
||||
<path
|
||||
d="M637.48,512.76a4.92,4.92,0,0,0,1-.08,2.9,2.9,0,0,0,.9-.31,1.81,1.81,0,0,0,.64-.62,1.86,1.86,0,0,0,.24-1,1.64,1.64,0,0,0-.55-1.3,2.07,2.07,0,0,0-1.41-.49,2,2,0,0,0-.94.22,1.84,1.84,0,0,0-.65.59,2.39,2.39,0,0,0-.39.82,3,3,0,0,0-.11.95h-2.05a5.19,5.19,0,0,1,.34-1.7,4.1,4.1,0,0,1,.84-1.36,3.54,3.54,0,0,1,1.28-.9,4.27,4.27,0,0,1,1.71-.33,5,5,0,0,1,1.45.22,4,4,0,0,1,1.28.63,3.18,3.18,0,0,1,.91,1.05,3.07,3.07,0,0,1,.34,1.47,3.15,3.15,0,0,1-.43,1.67,2.52,2.52,0,0,1-1.35,1v0a2.57,2.57,0,0,1,1.68,1.07,3.46,3.46,0,0,1,.61,2.08,3.53,3.53,0,0,1-.36,1.61,3.67,3.67,0,0,1-1,1.2,4.41,4.41,0,0,1-1.42.77,5.37,5.37,0,0,1-1.71.27,5.27,5.27,0,0,1-1.91-.32,3.54,3.54,0,0,1-1.37-.89,3.71,3.71,0,0,1-.84-1.38,6,6,0,0,1-.31-1.8H636a2.82,2.82,0,0,0,.56,1.91,2.18,2.18,0,0,0,1.81.77,2.56,2.56,0,0,0,1.72-.59,2.05,2.05,0,0,0,.69-1.66,2.11,2.11,0,0,0-.28-1.17,1.93,1.93,0,0,0-.76-.66,3.12,3.12,0,0,0-1.05-.28,11.87,11.87,0,0,0-1.2,0Z"
|
||||
transform="translate(0.14 0.14)"
|
||||
fill="#fff"
|
||||
id="path3126" />
|
||||
</svg>
|
After Width: | Height: | Size: 35 KiB |
BIN
resources/profiles/Prusa/mk3_bed.stl
Normal file
20
resources/profiles/Prusa/process/0.20mm Standard @MK3S.json
Normal file
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"type": "process",
|
||||
"setting_id": "MK3S-2",
|
||||
"name": "0.20mm Standard @MK3S",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_process_common",
|
||||
"initial_layer_speed": "20",
|
||||
"initial_layer_infill_speed": "25",
|
||||
"outer_wall_speed": "35",
|
||||
"inner_wall_speed": "60",
|
||||
"sparse_infill_speed": "200",
|
||||
"internal_solid_infill_speed": "200",
|
||||
"top_surface_speed": "50",
|
||||
"gap_infill_speed": "40",
|
||||
"travel_speed": "180",
|
||||
"compatible_printers": [
|
||||
"Prusa MK3S 0.4 nozzle"
|
||||
]
|
||||
}
|
105
resources/profiles/Prusa/process/fdm_process_common.json
Normal file
|
@ -0,0 +1,105 @@
|
|||
{
|
||||
"type": "process",
|
||||
"name": "fdm_process_common",
|
||||
"from": "system",
|
||||
"instantiation": "false",
|
||||
"adaptive_layer_height": "0",
|
||||
"reduce_crossing_wall": "0",
|
||||
"max_travel_detour_distance": "0",
|
||||
"bottom_surface_pattern": "monotonic",
|
||||
"bottom_shell_thickness": "0",
|
||||
"bridge_speed": "50",
|
||||
"brim_width": "5",
|
||||
"brim_object_gap": "0.1",
|
||||
"compatible_printers": [],
|
||||
"compatible_printers_condition": "",
|
||||
"print_sequence": "by layer",
|
||||
"default_acceleration": "1000",
|
||||
"initial_layer_acceleration": "500",
|
||||
"top_surface_acceleration": "1000",
|
||||
"travel_acceleration": "1000",
|
||||
"inner_wall_acceleration": "1000",
|
||||
"outer_wall_acceleration": "700",
|
||||
"bridge_no_support": "0",
|
||||
"draft_shield": "disabled",
|
||||
"elefant_foot_compensation": "0",
|
||||
"enable_arc_fitting": "1",
|
||||
"outer_wall_line_width": "0.4",
|
||||
"wall_infill_order": "inner wall/outer wall/infill",
|
||||
"line_width": "0.4",
|
||||
"infill_direction": "45",
|
||||
"sparse_infill_density": "15%",
|
||||
"sparse_infill_pattern": "grid",
|
||||
"initial_layer_line_width": "0.5",
|
||||
"initial_layer_print_height": "0.2",
|
||||
"infill_combination": "0",
|
||||
"sparse_infill_line_width": "0.45",
|
||||
"infill_wall_overlap": "25%",
|
||||
"interface_shells": "0",
|
||||
"ironing_flow": "10%",
|
||||
"ironing_spacing": "0.15",
|
||||
"ironing_speed": "30",
|
||||
"ironing_type": "no ironing",
|
||||
"reduce_infill_retraction": "1",
|
||||
"filename_format": "{input_filename_base}_{filament_type[0]}_{print_time}.gcode",
|
||||
"detect_overhang_wall": "1",
|
||||
"overhang_1_4_speed": "0",
|
||||
"overhang_2_4_speed": "50",
|
||||
"overhang_3_4_speed": "30",
|
||||
"overhang_4_4_speed": "10",
|
||||
"inner_wall_line_width": "0.45",
|
||||
"wall_loops": "2",
|
||||
"print_settings_id": "",
|
||||
"raft_layers": "0",
|
||||
"seam_position": "aligned",
|
||||
"skirt_distance": "2",
|
||||
"skirt_height": "1",
|
||||
"skirt_loops": "0",
|
||||
"minimum_sparse_infill_area": "15",
|
||||
"internal_solid_infill_line_width": "0.4",
|
||||
"spiral_mode": "0",
|
||||
"standby_temperature_delta": "-5",
|
||||
"enable_support": "0",
|
||||
"resolution": "0.012",
|
||||
"support_type": "normal(auto)",
|
||||
"support_on_build_plate_only": "0",
|
||||
"support_top_z_distance": "0.2",
|
||||
"support_filament": "0",
|
||||
"support_line_width": "0.4",
|
||||
"support_interface_loop_pattern": "0",
|
||||
"support_interface_filament": "0",
|
||||
"support_interface_top_layers": "2",
|
||||
"support_interface_bottom_layers": "2",
|
||||
"support_interface_spacing": "0.5",
|
||||
"support_interface_speed": "80",
|
||||
"support_base_pattern": "rectilinear",
|
||||
"support_base_pattern_spacing": "2.5",
|
||||
"support_speed": "150",
|
||||
"support_threshold_angle": "30",
|
||||
"support_object_xy_distance": "0.35",
|
||||
"tree_support_branch_angle": "30",
|
||||
"tree_support_wall_count": "0",
|
||||
"tree_support_with_infill": "0",
|
||||
"detect_thin_wall": "0",
|
||||
"top_surface_pattern": "monotonicline",
|
||||
"top_surface_line_width": "0.4",
|
||||
"top_shell_thickness": "0.8",
|
||||
"enable_prime_tower": "1",
|
||||
"wipe_tower_no_sparse_layers": "0",
|
||||
"prime_tower_width": "35",
|
||||
"xy_hole_compensation": "0",
|
||||
"xy_contour_compensation": "0",
|
||||
"layer_height": "0.2",
|
||||
"bottom_shell_layers": "3",
|
||||
"top_shell_layers": "4",
|
||||
"bridge_flow": "1",
|
||||
"initial_layer_speed": "45",
|
||||
"initial_layer_infill_speed": "45",
|
||||
"outer_wall_speed": "45",
|
||||
"inner_wall_speed": "80",
|
||||
"sparse_infill_speed": "150",
|
||||
"internal_solid_infill_speed": "150",
|
||||
"top_surface_speed": "50",
|
||||
"gap_infill_speed": "30",
|
||||
"travel_speed": "200"
|
||||
}
|
|
@ -116,6 +116,7 @@
|
|||
"deretraction_speed": [
|
||||
"30"
|
||||
],
|
||||
"z_lift_type": "NormalLift",
|
||||
"silent_mode": "0",
|
||||
"single_extruder_multi_material": "1",
|
||||
"change_filament_gcode": "",
|
||||
|
@ -130,9 +131,10 @@
|
|||
"bed_exclude_area": [
|
||||
"0x0"
|
||||
],
|
||||
"machine_start_gcode": "; M190 S0\n; M104 S0\nPRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single]\n; You can use following code instead if your PRINT_START macro support Chamber and print area bedmesh\n; PRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single] PRINT_MIN={first_layer_print_min[0]},{first_layer_print_min[1]} PRINT_MAX={first_layer_print_max[0]},{first_layer_print_max[1]}",
|
||||
"machine_start_gcode": ";M190 S0\n;M104 S0\nPRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single]\n; You can use following code instead if your PRINT_START macro support Chamber and print area bedmesh\n; PRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single] Chamber=[chamber_temperature] PRINT_MIN={first_layer_print_min[0]},{first_layer_print_min[1]} PRINT_MAX={first_layer_print_max[0]},{first_layer_print_max[1]}",
|
||||
"machine_end_gcode": "PRINT_END",
|
||||
"layer_change_gcode": "",
|
||||
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
|
||||
"scan_first_layer": "0",
|
||||
"nozzle_type": "undefine",
|
||||
"auxiliary_fan": "0"
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"type": "process",
|
||||
"setting_id": "GP008",
|
||||
"name": "0.20mm Bambu Support W @Voron",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_process_bbl_0.20",
|
||||
"enable_support": "1",
|
||||
"support_interface_top_layers": "3",
|
||||
"support_top_z_distance": "0.2",
|
||||
"support_interface_loop_pattern": "1",
|
||||
"support_interface_spacing": "0",
|
||||
"support_interface_speed": "80",
|
||||
"support_filament": "0",
|
||||
"support_interface_filament": "0",
|
||||
"enable_prime_tower": "1",
|
||||
"initial_layer_speed": "50",
|
||||
"initial_layer_infill_speed": "105",
|
||||
"outer_wall_speed": "120",
|
||||
"inner_wall_speed": "200",
|
||||
"sparse_infill_speed": "300",
|
||||
"internal_solid_infill_speed": "200",
|
||||
"top_surface_speed": "100",
|
||||
"gap_infill_speed": "100",
|
||||
"travel_speed": "350",
|
||||
"compatible_printers": [
|
||||
"Voron 2.4 250 0.4 nozzle",
|
||||
"Voron 2.4 300 0.4 nozzle",
|
||||
"Voron 2.4 350 0.4 nozzle",
|
||||
"Voron Trident 250 0.4 nozzle",
|
||||
"Voron Trident 300 0.4 nozzle",
|
||||
"Voron Trident 350 0.4 nozzle",
|
||||
"Voron 0.1 0.4 nozzle"
|
||||
]
|
||||
}
|
|
@ -16,8 +16,11 @@
|
|||
"brim_object_gap": "0.1",
|
||||
"compatible_printers_condition": "",
|
||||
"print_sequence": "by layer",
|
||||
"default_acceleration": "7000",
|
||||
"default_acceleration": "5000",
|
||||
"top_surface_acceleration": "3000",
|
||||
"travel_acceleration": "7000",
|
||||
"inner_wall_acceleration": "5000",
|
||||
"outer_wall_acceleration": "3000",
|
||||
"bridge_no_support": "0",
|
||||
"draft_shield": "disabled",
|
||||
"elefant_foot_compensation": "0",
|
||||
|
@ -99,6 +102,7 @@
|
|||
"prime_tower_width": "35",
|
||||
"xy_hole_compensation": "0",
|
||||
"xy_contour_compensation": "0",
|
||||
"enable_arc_fitting": "0",
|
||||
"compatible_printers": [
|
||||
"Voron 2.4 250 0.4 nozzle",
|
||||
"Voron 2.4 300 0.4 nozzle",
|
||||
|
|
BIN
resources/web/image/printer/Anycubic 4Max Pro_cover.png
Normal file
After Width: | Height: | Size: 278 KiB |
BIN
resources/web/image/printer/Prusa MK3S_cover.png
Normal file
After Width: | Height: | Size: 58 KiB |
|
@ -65,19 +65,19 @@ std::string AppConfig::get_hms_host()
|
|||
{
|
||||
std::string sel = get("iot_environment");
|
||||
std::string host = "";
|
||||
#if !BBL_RELEASE_TO_PUBLIC
|
||||
if (sel == ENV_DEV_HOST)
|
||||
host = "e-dev.bambu-lab.com";
|
||||
else if (sel == ENV_QAT_HOST)
|
||||
host = "e-qa.bambu-lab.com";
|
||||
else if (sel == ENV_PRE_HOST)
|
||||
host = "e-pre.bambu-lab.com";
|
||||
else if (sel == ENV_PRODUCT_HOST)
|
||||
host = "e.bambulab.com";
|
||||
return host;
|
||||
#else
|
||||
// #if !BBL_RELEASE_TO_PUBLIC
|
||||
// if (sel == ENV_DEV_HOST)
|
||||
// host = "e-dev.bambu-lab.com";
|
||||
// else if (sel == ENV_QAT_HOST)
|
||||
// host = "e-qa.bambu-lab.com";
|
||||
// else if (sel == ENV_PRE_HOST)
|
||||
// host = "e-pre.bambu-lab.com";
|
||||
// else if (sel == ENV_PRODUCT_HOST)
|
||||
// host = "e.bambulab.com";
|
||||
// return host;
|
||||
// #else
|
||||
return "e.bambulab.com";
|
||||
#endif
|
||||
// #endif
|
||||
}
|
||||
|
||||
void AppConfig::reset()
|
||||
|
@ -293,15 +293,15 @@ void AppConfig::set_defaults()
|
|||
set("curr_bed_type", "0");
|
||||
}
|
||||
|
||||
#if BBL_RELEASE_TO_PUBLIC
|
||||
// #if BBL_RELEASE_TO_PUBLIC
|
||||
if (get("iot_environment").empty()) {
|
||||
set("iot_environment", "3");
|
||||
}
|
||||
#else
|
||||
if (get("iot_environment").empty()) {
|
||||
set("iot_environment", "1");
|
||||
}
|
||||
#endif
|
||||
// #else
|
||||
// if (get("iot_environment").empty()) {
|
||||
// set("iot_environment", "1");
|
||||
// }
|
||||
// #endif
|
||||
|
||||
// Remove legacy window positions/sizes
|
||||
erase("app", "main_frame_maximized");
|
||||
|
@ -1030,29 +1030,29 @@ void AppConfig::update_last_backup_dir(const std::string& dir)
|
|||
|
||||
std::string AppConfig::get_region()
|
||||
{
|
||||
#if BBL_RELEASE_TO_PUBLIC
|
||||
// #if BBL_RELEASE_TO_PUBLIC
|
||||
return this->get("region");
|
||||
#else
|
||||
std::string sel = get("iot_environment");
|
||||
std::string region;
|
||||
if (sel == ENV_DEV_HOST)
|
||||
region = "ENV_CN_DEV";
|
||||
else if (sel == ENV_QAT_HOST)
|
||||
region = "ENV_CN_QA";
|
||||
else if (sel == ENV_PRE_HOST)
|
||||
region = "ENV_CN_PRE";
|
||||
if (region.empty())
|
||||
return this->get("region");
|
||||
return region;
|
||||
#endif
|
||||
// #else
|
||||
// std::string sel = get("iot_environment");
|
||||
// std::string region;
|
||||
// if (sel == ENV_DEV_HOST)
|
||||
// region = "ENV_CN_DEV";
|
||||
// else if (sel == ENV_QAT_HOST)
|
||||
// region = "ENV_CN_QA";
|
||||
// else if (sel == ENV_PRE_HOST)
|
||||
// region = "ENV_CN_PRE";
|
||||
// if (region.empty())
|
||||
// return this->get("region");
|
||||
// return region;
|
||||
// #endif
|
||||
}
|
||||
|
||||
std::string AppConfig::get_country_code()
|
||||
{
|
||||
std::string region = get_region();
|
||||
#if !BBL_RELEASE_TO_PUBLIC
|
||||
if (is_engineering_region()) { return region; }
|
||||
#endif
|
||||
// #if !BBL_RELEASE_TO_PUBLIC
|
||||
// if (is_engineering_region()) { return region; }
|
||||
// #endif
|
||||
if (region == "CHN" || region == "China")
|
||||
return "CN";
|
||||
else if (region == "USA")
|
||||
|
|
|
@ -55,6 +55,16 @@ inline bool is_perimeter(ExtrusionRole role)
|
|||
|| role == erOverhangPerimeter;
|
||||
}
|
||||
|
||||
inline bool is_internal_perimeter(ExtrusionRole role)
|
||||
{
|
||||
return role == erPerimeter;
|
||||
}
|
||||
|
||||
inline bool is_external_perimeter(ExtrusionRole role)
|
||||
{
|
||||
return role == erExternalPerimeter;
|
||||
}
|
||||
|
||||
inline bool is_infill(ExtrusionRole role)
|
||||
{
|
||||
return role == erBridgeInfill
|
||||
|
|
|
@ -92,7 +92,7 @@ struct SurfaceFillParams
|
|||
this->overlap == rhs.overlap &&
|
||||
this->angle == rhs.angle &&
|
||||
this->bridge == rhs.bridge &&
|
||||
// this->bridge_angle == rhs.bridge_angle &&
|
||||
this->bridge_angle == rhs.bridge_angle &&
|
||||
this->density == rhs.density &&
|
||||
// this->dont_adjust == rhs.dont_adjust &&
|
||||
this->anchor_length == rhs.anchor_length &&
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
#include "libslic3r.h"
|
||||
#include "LocalesUtils.hpp"
|
||||
#include "libslic3r/format.hpp"
|
||||
|
||||
#include "Time.hpp"
|
||||
#include <algorithm>
|
||||
#include <cstdlib>
|
||||
#include <chrono>
|
||||
|
@ -79,7 +79,7 @@ static const float g_min_purge_volume = 100.f;
|
|||
static const float g_purge_volume_one_time = 135.f;
|
||||
static const int g_max_flush_count = 4;
|
||||
|
||||
bool GCode::gcode_label_objects = false;
|
||||
bool GCode::gcode_label_objects = true;
|
||||
|
||||
// Only add a newline in case the current G-code does not end with a newline.
|
||||
static inline void check_add_eol(std::string& gcode)
|
||||
|
@ -908,6 +908,11 @@ void GCode::do_export(Print* print, const char* path, GCodeProcessorResult* resu
|
|||
BOOST_LOG_TRIVIAL(info) << boost::format("Will export G-code to %1% soon")%path;
|
||||
print->set_started(psGCodeExport);
|
||||
|
||||
if (print->is_BBL_printer())
|
||||
gcode_label_objects = false;
|
||||
else
|
||||
gcode_label_objects = true;
|
||||
|
||||
// check if any custom gcode contains keywords used by the gcode processor to
|
||||
// produce time estimation and gcode toolpaths
|
||||
std::vector<std::pair<std::string, std::string>> validation_res = DoExport::validate_custom_gcode(*print);
|
||||
|
@ -1164,10 +1169,10 @@ namespace DoExport {
|
|||
print_statistics.clear();
|
||||
print_statistics.total_toolchanges = std::max(0, wipe_tower_data.number_of_toolchanges);
|
||||
if (! extruders.empty()) {
|
||||
//std::pair<std::string, unsigned int> out_filament_used_mm ("; filament used [mm] = ", 0);
|
||||
//std::pair<std::string, unsigned int> out_filament_used_cm3("; filament used [cm3] = ", 0);
|
||||
//std::pair<std::string, unsigned int> out_filament_used_g ("; filament used [g] = ", 0);
|
||||
//std::pair<std::string, unsigned int> out_filament_cost ("; filament cost = ", 0);
|
||||
std::pair<std::string, unsigned int> out_filament_used_mm ("; filament used [mm] = ", 0);
|
||||
std::pair<std::string, unsigned int> out_filament_used_cm3("; filament used [cm3] = ", 0);
|
||||
std::pair<std::string, unsigned int> out_filament_used_g ("; filament used [g] = ", 0);
|
||||
std::pair<std::string, unsigned int> out_filament_cost ("; filament cost = ", 0);
|
||||
for (const Extruder &extruder : extruders) {
|
||||
double used_filament = extruder.used_filament() + (has_wipe_tower ? wipe_tower_data.used_filament[extruder.id()] : 0.f);
|
||||
double extruded_volume = extruder.extruded_volume() + (has_wipe_tower ? wipe_tower_data.used_filament[extruder.id()] * 2.4052f : 0.f); // assumes 1.75mm filament diameter
|
||||
|
@ -1187,14 +1192,14 @@ namespace DoExport {
|
|||
dst.first += buf;
|
||||
++ dst.second;
|
||||
};
|
||||
//append(out_filament_used_mm, "%.2lf", used_filament);
|
||||
//append(out_filament_used_cm3, "%.2lf", extruded_volume * 0.001);
|
||||
append(out_filament_used_mm, "%.2lf", used_filament);
|
||||
append(out_filament_used_cm3, "%.2lf", extruded_volume * 0.001);
|
||||
if (filament_weight > 0.) {
|
||||
print_statistics.total_weight = print_statistics.total_weight + filament_weight;
|
||||
//append(out_filament_used_g, "%.2lf", filament_weight);
|
||||
append(out_filament_used_g, "%.2lf", filament_weight);
|
||||
if (filament_cost > 0.) {
|
||||
print_statistics.total_cost = print_statistics.total_cost + filament_cost;
|
||||
//append(out_filament_cost, "%.2lf", filament_cost);
|
||||
append(out_filament_cost, "%.2lf", filament_cost);
|
||||
}
|
||||
}
|
||||
print_statistics.total_used_filament += used_filament;
|
||||
|
@ -1202,12 +1207,12 @@ namespace DoExport {
|
|||
print_statistics.total_wipe_tower_filament += has_wipe_tower ? used_filament - extruder.used_filament() : 0.;
|
||||
print_statistics.total_wipe_tower_cost += has_wipe_tower ? (extruded_volume - extruder.extruded_volume())* extruder.filament_density() * 0.001 * extruder.filament_cost() * 0.001 : 0.;
|
||||
}
|
||||
//filament_stats_string_out += out_filament_used_mm.first;
|
||||
//filament_stats_string_out += "\n" + out_filament_used_cm3.first;
|
||||
//if (out_filament_used_g.second)
|
||||
//filament_stats_string_out += "\n" + out_filament_used_g.first;
|
||||
//if (out_filament_cost.second)
|
||||
// filament_stats_string_out += "\n" + out_filament_cost.first;
|
||||
filament_stats_string_out += out_filament_used_mm.first;
|
||||
filament_stats_string_out += "\n" + out_filament_used_cm3.first;
|
||||
if (out_filament_used_g.second)
|
||||
filament_stats_string_out += "\n" + out_filament_used_g.first;
|
||||
if (out_filament_cost.second)
|
||||
filament_stats_string_out += "\n" + out_filament_cost.first;
|
||||
}
|
||||
return filament_stats_string_out;
|
||||
}
|
||||
|
@ -1285,7 +1290,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
|
||||
// modifies m_silent_time_estimator_enabled
|
||||
DoExport::init_gcode_processor(print.config(), m_processor, m_silent_time_estimator_enabled);
|
||||
|
||||
const bool is_bbl_printers = print.is_BBL_printer();
|
||||
// resets analyzer's tracking data
|
||||
m_last_height = 0.f;
|
||||
m_last_layer_z = 0.f;
|
||||
|
@ -1349,30 +1354,65 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
file.write_format(";%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Estimated_Printing_Time_Placeholder).c_str());
|
||||
file.write_format("; HEADER_BLOCK_END\n\n");
|
||||
|
||||
//BBS: write global config at the beginning of gcode file because printer need these config information
|
||||
// Append full config, delimited by two 'phony' configuration keys CONFIG_BLOCK_START and CONFIG_BLOCK_END.
|
||||
// The delimiters are structured as configuration key / value pairs to be parsable by older versions of PrusaSlicer G-code viewer.
|
||||
|
||||
// BBS: write global config at the beginning of gcode file because printer
|
||||
// need these config information
|
||||
// Append full config, delimited by two 'phony' configuration keys
|
||||
// CONFIG_BLOCK_START and CONFIG_BLOCK_END. The delimiters are structured
|
||||
// as configuration key / value pairs to be parsable by older versions of
|
||||
// PrusaSlicer G-code viewer.
|
||||
{
|
||||
if (is_bbl_printers) {
|
||||
file.write("; CONFIG_BLOCK_START\n");
|
||||
std::string full_config;
|
||||
append_full_config(print, full_config);
|
||||
if (!full_config.empty())
|
||||
file.write(full_config);
|
||||
file.write("; CONFIG_BLOCK_END\n\n");
|
||||
}
|
||||
|
||||
//BBS: add plate id into thumbnail render logic
|
||||
//DoExport::export_thumbnails_to_file(thumbnail_cb, print.get_plate_index(), THUMBNAIL_SIZE,
|
||||
// SoftFever: write compatiple image
|
||||
std::vector<int> temps_per_bed;
|
||||
int first_layer_bed_temperature = 0;
|
||||
get_bed_temperature(0, true, temps_per_bed,
|
||||
first_layer_bed_temperature);
|
||||
file.write_format("; first_layer_bed_temperature = %d\n",
|
||||
first_layer_bed_temperature);
|
||||
file.write_format(
|
||||
"; first_layer_temperature = %d\n",
|
||||
print.config().nozzle_temperature_initial_layer.get_at(0));
|
||||
file.write("; CONFIG_BLOCK_END\n\n");
|
||||
} else {
|
||||
file.write_format("; hack-fix: write fake slicer info here so that "
|
||||
"Moonraker will extract thumbs.\n");
|
||||
file.write_format(
|
||||
"; %s\n\n",
|
||||
std::string(
|
||||
std::string("generated by SuperSlicer " SLIC3R_VERSION " on ") +
|
||||
Slic3r::Utils::utc_timestamp())
|
||||
.c_str());
|
||||
|
||||
// BBS: add plate id into thumbnail render logic
|
||||
// if (const auto [thumbnails, thumbnails_format] = std::make_pair(
|
||||
// print.full_print_config().option<ConfigOptionPoints>("thumbnails"),
|
||||
// print.full_print_config().option<ConfigOptionEnum<GCodeThumbnailsFormat>>("thumbnails_format"));
|
||||
// thumbnails)
|
||||
// GCodeThumbnails::export_thumbnails_to_file(
|
||||
// thumbnail_cb, thumbnails->values, thumbnails_format ? thumbnails_format->value : GCodeThumbnailsFormat::PNG,
|
||||
// [&file](const char* sz) { file.write(sz); },
|
||||
// [&print]() { print.throw_if_canceled(); });
|
||||
|
||||
|
||||
DoExport::export_thumbnails_to_file(
|
||||
thumbnail_cb, print.get_plate_index(), print.full_print_config().option<ConfigOptionPoints>("thumbnails")->values,
|
||||
[&file](const char *sz) { file.write(sz); },
|
||||
[&print]() { print.throw_if_canceled(); });
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Write some terse information on the slicing parameters.
|
||||
const PrintObject *first_object = print.objects().front();
|
||||
const double layer_height = first_object->config().layer_height.value;
|
||||
const double initial_layer_print_height = print.config().initial_layer_print_height.value;
|
||||
//BBS: remove useless information in gcode file
|
||||
#if 0
|
||||
for (size_t region_id = 0; region_id < print.num_print_regions(); ++ region_id) {
|
||||
const PrintRegion ®ion = print.get_print_region(region_id);
|
||||
file.write_format("; external perimeters extrusion width = %.2fmm\n", region.flow(*first_object, frExternalPerimeter, layer_height).width());
|
||||
|
@ -1386,8 +1426,6 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
file.write_format("; first layer extrusion width = %.2fmm\n", region.flow(*first_object, frPerimeter, initial_layer_print_height, true).width());
|
||||
file.write_format("\n");
|
||||
}
|
||||
print.throw_if_canceled();
|
||||
#endif
|
||||
|
||||
file.write_format("; EXECUTABLE_BLOCK_START\n");
|
||||
// adds tags for time estimators
|
||||
|
@ -1512,7 +1550,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
m_placeholder_parser.set("first_layer_print_max", new ConfigOptionFloats({ bbox.max.x(), bbox.max.y() }));
|
||||
m_placeholder_parser.set("first_layer_print_size", new ConfigOptionFloats({ bbox.size().x(), bbox.size().y() }));
|
||||
}
|
||||
|
||||
float outer_wall_volumetric_speed = 0.0f;
|
||||
{
|
||||
int curr_bed_type = m_config.curr_bed_type.getInt();
|
||||
|
||||
|
@ -1524,6 +1562,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
m_placeholder_parser.set("bed_temperature", new ConfigOptionInts(*bed_temp_opt));
|
||||
m_placeholder_parser.set("bed_temperature_initial_layer_single", new ConfigOptionInt(first_bed_temp_opt->get_at(initial_extruder_id)));
|
||||
m_placeholder_parser.set("bed_temperature_initial_layer_vector", new ConfigOptionString(""));
|
||||
m_placeholder_parser.set("chamber_temperature",new ConfigOptionInt(m_config.chamber_temperature));
|
||||
|
||||
//BBS: calculate the volumetric speed of outer wall. Ignore pre-object setting and multi-filament, and just use the default setting
|
||||
{
|
||||
|
@ -1535,7 +1574,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
}
|
||||
Flow outer_wall_flow = Flow(outer_wall_line_width, m_config.layer_height, m_config.nozzle_diameter.get_at(initial_extruder_id));
|
||||
float outer_wall_speed = print.default_region_config().outer_wall_speed.value;
|
||||
float outer_wall_volumetric_speed = outer_wall_speed * outer_wall_flow.mm3_per_mm();
|
||||
outer_wall_volumetric_speed = outer_wall_speed * outer_wall_flow.mm3_per_mm();
|
||||
if (outer_wall_volumetric_speed > filament_max_volumetric_speed)
|
||||
outer_wall_volumetric_speed = filament_max_volumetric_speed;
|
||||
m_placeholder_parser.set("outer_wall_volumetric_speed", new ConfigOptionFloat(outer_wall_volumetric_speed));
|
||||
|
@ -1598,8 +1637,23 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
if (this->m_objsWithBrim.empty() && this->m_objSupportsWithBrim.empty()) m_brim_done = true;
|
||||
|
||||
//BBS: open spaghetti detector
|
||||
if (is_bbl_printers) {
|
||||
// if (print.config().spaghetti_detector.value)
|
||||
file.write("M981 S1 P20000 ;open spaghetti detector\n");
|
||||
file.write_format("M900 K%.3f M%0.3f ; Override pressure advance value\n",
|
||||
m_config.pressure_advance.values.front(),
|
||||
outer_wall_volumetric_speed / (1.75 * 1.75 / 4 * 3.14) *
|
||||
m_config.pressure_advance.values.front());
|
||||
} else {
|
||||
if (m_config.enable_pressure_advance.value) {
|
||||
if(print.config().gcode_flavor.value == gcfKlipper)
|
||||
file.write_format("SET_PRESSURE_ADVANCE ADVANCE=%.3f ; Override pressure advance value\n",
|
||||
m_config.pressure_advance.values.front());
|
||||
else
|
||||
file.write_format("M900 K%.3f ; Override pressure advance value\n",
|
||||
m_config.pressure_advance.values.front());
|
||||
}
|
||||
}
|
||||
|
||||
// Do all objects for each layer.
|
||||
if (print.config().print_sequence == PrintSequence::ByObject) {
|
||||
|
@ -1663,7 +1717,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
this->process_layers(print, tool_ordering, collect_layers_to_print(object), *print_object_instance_sequential_active - object.instances().data(), file, prime_extruder);
|
||||
//BBS: close powerlost recovery
|
||||
{
|
||||
if (m_second_layer_things_done) {
|
||||
if (is_bbl_printers && m_second_layer_things_done) {
|
||||
file.write("; close powerlost recovery\n");
|
||||
file.write("M1003 S0\n");
|
||||
}
|
||||
|
@ -1734,7 +1788,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
this->process_layers(print, tool_ordering, print_object_instances_ordering, layers_to_print, file);
|
||||
//BBS: close powerlost recovery
|
||||
{
|
||||
if (m_second_layer_things_done) {
|
||||
if (is_bbl_printers && m_second_layer_things_done) {
|
||||
file.write("; close powerlost recovery\n");
|
||||
file.write("M1003 S0\n");
|
||||
}
|
||||
|
@ -1754,10 +1808,12 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
file.write(m_writer.set_fan(0));
|
||||
//BBS: make sure the additional fan is closed when end
|
||||
file.write(m_writer.set_additional_fan(0));
|
||||
if (is_bbl_printers) {
|
||||
//BBS: close spaghetti detector
|
||||
//Note: M981 is also used to tell xcam the last layer is finished, so we need always send it even if spaghetti option is disabled.
|
||||
//if (print.config().spaghetti_detector.value)
|
||||
file.write("M981 S0 P20000 ; close spaghetti detector\n");
|
||||
}
|
||||
|
||||
// adds tag for processor
|
||||
file.write_format(";%s%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Role).c_str(), ExtrusionEntity::role_to_string(erCustom).c_str());
|
||||
|
@ -1800,11 +1856,41 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
m_writer.extruders(),
|
||||
// Modifies
|
||||
print.m_print_statistics));
|
||||
//file.write("\n");
|
||||
//file.write_format("; total filament weight [g] = %.2lf\n", print.m_print_statistics.total_weight);
|
||||
//file.write_format("; total filament cost = %.2lf\n", print.m_print_statistics.total_cost);
|
||||
//if (print.m_print_statistics.total_toolchanges > 0)
|
||||
// file.write_format("; total filament change = %i\n", print.m_print_statistics.total_toolchanges);
|
||||
if (!is_bbl_printers) {
|
||||
file.write("\n");
|
||||
file.write("; CONFIG_BLOCK_START\n");
|
||||
std::string full_config;
|
||||
append_full_config(print, full_config);
|
||||
if (!full_config.empty())
|
||||
file.write(full_config);
|
||||
|
||||
// SoftFever: write compatiple info
|
||||
std::vector<int> temps_per_bed;
|
||||
int first_layer_bed_temperature = 0;
|
||||
get_bed_temperature(0, true, temps_per_bed, first_layer_bed_temperature);
|
||||
file.write_format("; first_layer_bed_temperature = %d\n",
|
||||
first_layer_bed_temperature);
|
||||
file.write_format(
|
||||
"; first_layer_temperature = %d\n",
|
||||
print.config().nozzle_temperature_initial_layer.get_at(0));
|
||||
file.write("; CONFIG_BLOCK_END\n\n");
|
||||
file.write_format("; total filament used [g] = %.2lf\n",
|
||||
print.m_print_statistics.total_weight);
|
||||
file.write_format("; total filament cost = %.2lf\n",
|
||||
print.m_print_statistics.total_cost);
|
||||
if (print.m_print_statistics.total_toolchanges > 0)
|
||||
file.write_format("; total filament change = %i\n",
|
||||
print.m_print_statistics.total_toolchanges);
|
||||
|
||||
file.write_format("; total layers count = %i\n", m_layer_count);
|
||||
file.write_format(
|
||||
";%s\n",
|
||||
GCodeProcessor::reserved_tag(
|
||||
GCodeProcessor::ETags::Estimated_Printing_Time_Placeholder)
|
||||
.c_str());
|
||||
|
||||
}
|
||||
file.write("\n");
|
||||
|
||||
print.throw_if_canceled();
|
||||
}
|
||||
|
@ -2501,10 +2587,17 @@ GCode::LayerResult GCode::process_layer(
|
|||
double acceleration = m_config.initial_layer_acceleration.value;
|
||||
gcode += m_writer.set_acceleration((unsigned int)floor(acceleration + 0.5));
|
||||
}
|
||||
|
||||
if (m_config.default_jerk.value > 0 && m_config.initial_layer_jerk.value > 0) {
|
||||
double jerk = m_config.initial_layer_jerk.value;
|
||||
gcode += m_writer.set_jerk_xy((unsigned int)floor(jerk + 0.5));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (! first_layer && ! m_second_layer_things_done) {
|
||||
//BBS: open powerlost recovery
|
||||
if (print.is_BBL_printer()) {
|
||||
// BBS: open powerlost recovery
|
||||
{
|
||||
gcode += "; open powerlost recovery\n";
|
||||
gcode += "M1003 S1\n";
|
||||
|
@ -2517,12 +2610,18 @@ GCode::LayerResult GCode::process_layer(
|
|||
gcode += "M400 P100\n";
|
||||
gcode += this->unretract();
|
||||
}
|
||||
|
||||
}
|
||||
//BBS: reset acceleration at sencond layer
|
||||
if (m_config.default_acceleration.value > 0 && m_config.initial_layer_acceleration.value > 0) {
|
||||
double acceleration = m_config.default_acceleration.value;
|
||||
gcode += m_writer.set_acceleration((unsigned int)floor(acceleration + 0.5));
|
||||
}
|
||||
|
||||
if (m_config.default_jerk.value > 0 && m_config.initial_layer_jerk.value > 0) {
|
||||
double jerk = m_config.default_jerk.value;
|
||||
gcode += m_writer.set_jerk_xy((unsigned int)floor(jerk + 0.5));
|
||||
}
|
||||
|
||||
// Transition from 1st to 2nd layer. Adjust nozzle temperatures as prescribed by the nozzle dependent
|
||||
// nozzle_temperature_initial_layer vs. temperature settings.
|
||||
for (const Extruder &extruder : m_writer.extruders()) {
|
||||
|
@ -3237,9 +3336,13 @@ std::string GCode::extrude_loop(ExtrusionLoop loop, std::string description, dou
|
|||
}
|
||||
|
||||
//BBS: don't reset acceleration when printing first layer. During first layer, acceleration is always same value.
|
||||
if (!this->on_first_layer())
|
||||
if (!this->on_first_layer()){
|
||||
// reset acceleration
|
||||
if(m_config.default_acceleration.value > 0)
|
||||
gcode += m_writer.set_acceleration((unsigned int)(m_config.default_acceleration.value + 0.5));
|
||||
if(m_config.default_jerk.value > 0)
|
||||
gcode += m_writer.set_jerk_xy((unsigned int)(m_config.default_jerk.value + 0.5));
|
||||
}
|
||||
|
||||
// BBS
|
||||
if (m_wipe.enable) {
|
||||
|
@ -3312,9 +3415,12 @@ std::string GCode::extrude_multi_path(ExtrusionMultiPath multipath, std::string
|
|||
m_wipe.path.reverse();
|
||||
}
|
||||
//BBS: don't reset acceleration when printing first layer. During first layer, acceleration is always same value.
|
||||
if (!this->on_first_layer())
|
||||
if (!this->on_first_layer()) {
|
||||
// reset acceleration
|
||||
gcode += m_writer.set_acceleration((unsigned int)floor(m_config.default_acceleration.value + 0.5));
|
||||
if(m_config.default_jerk.value > 0)
|
||||
gcode += m_writer.set_jerk_xy((unsigned int)floor(m_config.default_jerk.value + 0.5));
|
||||
}
|
||||
return gcode;
|
||||
}
|
||||
|
||||
|
@ -3340,9 +3446,13 @@ std::string GCode::extrude_path(ExtrusionPath path, std::string description, dou
|
|||
m_wipe.path.reverse();
|
||||
}
|
||||
//BBS: don't reset acceleration when printing first layer. During first layer, acceleration is always same value.
|
||||
if (!this->on_first_layer())
|
||||
if (!this->on_first_layer()){
|
||||
// reset acceleration
|
||||
gcode += m_writer.set_acceleration((unsigned int)floor(m_config.default_acceleration.value + 0.5));
|
||||
if(m_config.default_jerk.value > 0)
|
||||
gcode += m_writer.set_jerk_xy((unsigned int)floor(m_config.default_jerk.value + 0.5));
|
||||
|
||||
}
|
||||
return gcode;
|
||||
}
|
||||
|
||||
|
@ -3541,6 +3651,10 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
|
|||
} else if (m_config.perimeter_acceleration.value > 0 && is_perimeter(path.role())) {
|
||||
acceleration = m_config.perimeter_acceleration.value;
|
||||
#endif
|
||||
} else if (m_config.outer_wall_acceleration.value > 0 && is_external_perimeter(path.role())) {
|
||||
acceleration = m_config.outer_wall_acceleration.value;
|
||||
} else if (m_config.inner_wall_acceleration.value > 0 && is_internal_perimeter(path.role())) {
|
||||
acceleration = m_config.inner_wall_acceleration.value;
|
||||
} else if (m_config.top_surface_acceleration.value > 0 && is_top_surface(path.role())) {
|
||||
acceleration = m_config.top_surface_acceleration.value;
|
||||
} else {
|
||||
|
@ -3549,6 +3663,23 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
|
|||
gcode += m_writer.set_acceleration((unsigned int)floor(acceleration + 0.5));
|
||||
}
|
||||
|
||||
// adjust X Y jerk
|
||||
if (m_config.default_jerk.value > 0) {
|
||||
double jerk;
|
||||
if (this->on_first_layer() && m_config.initial_layer_jerk.value > 0) {
|
||||
jerk = m_config.initial_layer_jerk.value;
|
||||
} else if (m_config.outer_wall_jerk.value > 0 && is_external_perimeter(path.role())) {
|
||||
jerk = m_config.outer_wall_jerk.value;
|
||||
} else if (m_config.inner_wall_jerk.value > 0 && is_internal_perimeter(path.role())) {
|
||||
jerk = m_config.inner_wall_jerk.value;
|
||||
} else if (m_config.top_surface_jerk.value > 0 && is_top_surface(path.role())) {
|
||||
jerk = m_config.top_surface_jerk.value;
|
||||
} else {
|
||||
jerk = m_config.default_jerk.value;
|
||||
}
|
||||
gcode += m_writer.set_jerk_xy((unsigned int)floor(jerk + 0.5));
|
||||
}
|
||||
|
||||
// calculate extrusion length per distance unit
|
||||
double e_per_mm = m_writer.extruder()->e_per_mm3() * path.mm3_per_mm;
|
||||
|
||||
|
@ -3761,7 +3892,34 @@ std::string GCode::travel_to(const Point &point, ExtrusionRole role, std::string
|
|||
bool could_be_wipe_disabled = false;
|
||||
// Save state of use_external_mp_once for the case that will be needed to call twice m_avoid_crossing_perimeters.travel_to.
|
||||
const bool used_external_mp_once = m_avoid_crossing_perimeters.used_external_mp_once();
|
||||
std::string gcode;
|
||||
|
||||
// SoftFever
|
||||
if (this->on_first_layer()) {
|
||||
if(m_config.default_acceleration.value > 0)
|
||||
{
|
||||
auto jerk = (unsigned int)floor(m_config.initial_layer_jerk.value + 0.5);
|
||||
auto accel = (unsigned int)floor(m_config.initial_layer_acceleration.value + 0.5);
|
||||
if(jerk > 0)
|
||||
gcode += m_writer.set_jerk_xy(jerk);
|
||||
|
||||
if(accel > 0)
|
||||
gcode += m_writer.set_acceleration(accel);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(m_config.default_jerk.value > 0)
|
||||
{
|
||||
auto jerk = (unsigned int)floor(m_config.travel_jerk.value + 0.5);
|
||||
auto accel = (unsigned int)floor(m_config.travel_acceleration.value + 0.5);
|
||||
if(jerk > 0)
|
||||
gcode += m_writer.set_jerk_xy(jerk);
|
||||
|
||||
if(accel > 0)
|
||||
gcode += m_writer.set_acceleration(accel);
|
||||
}
|
||||
}
|
||||
// if a retraction would be needed, try to use reduce_crossing_wall to plan a
|
||||
// multi-hop travel path inside the configuration space
|
||||
if (needs_retraction
|
||||
|
@ -3777,7 +3935,6 @@ std::string GCode::travel_to(const Point &point, ExtrusionRole role, std::string
|
|||
m_avoid_crossing_perimeters.reset_once_modifiers();
|
||||
|
||||
// generate G-code for the travel move
|
||||
std::string gcode;
|
||||
if (needs_retraction) {
|
||||
if (m_config.reduce_crossing_wall && could_be_wipe_disabled)
|
||||
m_wipe.reset_path();
|
||||
|
@ -3808,9 +3965,9 @@ std::string GCode::travel_to(const Point &point, ExtrusionRole role, std::string
|
|||
if (i == travel.size() - 1 && !m_spiral_vase) {
|
||||
Vec2d dest2d = this->point_to_gcode(travel.points[i]);
|
||||
Vec3d dest3d(dest2d(0), dest2d(1), m_nominal_z);
|
||||
gcode += m_writer.travel_to_xyz(dest3d, comment);
|
||||
gcode += m_writer.travel_to_xyz(dest3d, comment+" travel_to_xyz");
|
||||
} else {
|
||||
gcode += m_writer.travel_to_xy(this->point_to_gcode(travel.points[i]), comment);
|
||||
gcode += m_writer.travel_to_xy(this->point_to_gcode(travel.points[i]), comment+" travel_to_xy");
|
||||
}
|
||||
}
|
||||
this->set_last_pos(travel.points.back());
|
||||
|
@ -3884,7 +4041,11 @@ std::string GCode::retract(bool toolchange, bool is_last_retraction)
|
|||
if (m_writer.extruder()->retraction_length() > 0) {
|
||||
// BBS: don't do lazy_lift when enable spiral vase
|
||||
size_t extruder_id = m_writer.extruder()->id();
|
||||
gcode += m_writer.lift(!m_spiral_vase ? LiftType::SpiralLift : LiftType::NormalLift);
|
||||
auto _lift = m_config.z_lift_type.value;
|
||||
if(m_spiral_vase)
|
||||
_lift = NormalLift;
|
||||
|
||||
gcode += m_writer.lift(_lift);
|
||||
}
|
||||
|
||||
return gcode;
|
||||
|
|
|
@ -453,10 +453,7 @@ void GCodeProcessor::TimeProcessor::post_process(const std::string& filename, st
|
|||
PrintEstimatedStatistics::ETimeMode mode = static_cast<PrintEstimatedStatistics::ETimeMode>(i);
|
||||
if (mode == PrintEstimatedStatistics::ETimeMode::Normal || machine.enabled) {
|
||||
char buf[128];
|
||||
//sprintf(buf, "; estimated printing time (%s mode) = %s\n",
|
||||
// (mode == PrintEstimatedStatistics::ETimeMode::Normal) ? "normal" : "silent",
|
||||
// get_time_dhms(machine.time).c_str());
|
||||
sprintf(buf, "; total estimated time: %s\n", get_time_dhms(machine.time).c_str());
|
||||
sprintf(buf, "; estimated printing time: %s\n", get_time_dhms(machine.time).c_str());
|
||||
ret += buf;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -99,8 +99,7 @@ public:
|
|||
}
|
||||
|
||||
WipeTowerWriter& disable_linear_advance() {
|
||||
m_gcode += (m_gcode_flavor == gcfRepRapSprinter || m_gcode_flavor == gcfRepRapFirmware
|
||||
? (std::string("M572 D") + std::to_string(m_current_tool) + " S0\n")
|
||||
m_gcode += (m_gcode_flavor == gcfKlipper ? (std::string("SET_PRESSURE_ADVANCE ADVANCE=0\n"))
|
||||
: std::string("M900 K0\n"));
|
||||
return *this;
|
||||
}
|
||||
|
|
|
@ -15,15 +15,16 @@
|
|||
|
||||
namespace Slic3r {
|
||||
|
||||
const bool GCodeWriter::full_gcode_comment = false;
|
||||
const bool GCodeWriter::full_gcode_comment = true;
|
||||
const double GCodeWriter::slope_threshold = 3 * PI / 180;
|
||||
|
||||
void GCodeWriter::apply_print_config(const PrintConfig &print_config)
|
||||
{
|
||||
this->config.apply(print_config, true);
|
||||
m_single_extruder_multi_material = print_config.single_extruder_multi_material.value;
|
||||
bool is_marlin = print_config.gcode_flavor.value == gcfMarlinLegacy || print_config.gcode_flavor.value == gcfMarlinFirmware;
|
||||
bool is_marlin = print_config.gcode_flavor.value == gcfMarlinLegacy || print_config.gcode_flavor.value == gcfMarlinFirmware || print_config.gcode_flavor.value == gcfKlipper;
|
||||
m_max_acceleration = std::lrint(is_marlin ? print_config.machine_max_acceleration_extruding.values.front() : 0);
|
||||
m_max_jerk = std::lrint(is_marlin ? std::min(print_config.machine_max_jerk_x.values.front(), print_config.machine_max_jerk_y.values.front()) : 0);
|
||||
}
|
||||
|
||||
void GCodeWriter::set_extruders(std::vector<unsigned int> extruder_ids)
|
||||
|
@ -54,7 +55,8 @@ std::string GCodeWriter::preamble()
|
|||
FLAVOR_IS(gcfMarlinFirmware) ||
|
||||
FLAVOR_IS(gcfTeacup) ||
|
||||
FLAVOR_IS(gcfRepetier) ||
|
||||
FLAVOR_IS(gcfSmoothie))
|
||||
FLAVOR_IS(gcfSmoothie) ||
|
||||
FLAVOR_IS(gcfKlipper))
|
||||
{
|
||||
if (RELATIVE_E_AXIS) {
|
||||
gcode << "M83 ; only support relative e\n";
|
||||
|
@ -183,6 +185,30 @@ std::string GCodeWriter::set_acceleration(unsigned int acceleration)
|
|||
return gcode.str();
|
||||
}
|
||||
|
||||
std::string GCodeWriter::set_jerk_xy(unsigned int jerk)
|
||||
{
|
||||
// Clamp the jerk to the allowed maximum.
|
||||
if (m_max_jerk > 0 && jerk > m_max_jerk)
|
||||
jerk = m_max_jerk;
|
||||
|
||||
if (jerk < 1 || jerk == m_last_jerk)
|
||||
return std::string();
|
||||
|
||||
m_last_jerk = jerk;
|
||||
|
||||
std::ostringstream gcode;
|
||||
if(FLAVOR_IS(gcfKlipper))
|
||||
gcode << "SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=" << jerk;
|
||||
else
|
||||
gcode << "M205 X" << jerk << " Y" << jerk;
|
||||
|
||||
if (GCodeWriter::full_gcode_comment) gcode << " ; adjust jerk";
|
||||
gcode << "\n";
|
||||
|
||||
return gcode.str();
|
||||
|
||||
}
|
||||
|
||||
std::string GCodeWriter::reset_e(bool force)
|
||||
{
|
||||
if (FLAVOR_IS(gcfMach3)
|
||||
|
|
|
@ -11,12 +11,6 @@
|
|||
|
||||
namespace Slic3r {
|
||||
|
||||
enum class LiftType {
|
||||
NormalLift,
|
||||
LazyLift,
|
||||
SpiralLift
|
||||
};
|
||||
|
||||
class GCodeWriter {
|
||||
public:
|
||||
GCodeConfig config;
|
||||
|
@ -26,6 +20,7 @@ public:
|
|||
multiple_extruders(false), m_extruder(nullptr),
|
||||
m_single_extruder_multi_material(false),
|
||||
m_last_acceleration(0), m_max_acceleration(0),
|
||||
m_last_jerk(0), m_max_jerk(0),
|
||||
/*m_last_bed_temperature(0), */m_last_bed_temperature_reached(true),
|
||||
m_lifted(0),
|
||||
m_to_lift(0),
|
||||
|
@ -51,6 +46,7 @@ public:
|
|||
// BBS
|
||||
std::string set_bed_temperature(std::vector<int> temps_per_bed, int default_temp, bool wait = false);
|
||||
std::string set_acceleration(unsigned int acceleration);
|
||||
std::string set_jerk_xy(unsigned int jerk);
|
||||
std::string reset_e(bool force = false);
|
||||
std::string update_progress(unsigned int num, unsigned int tot, bool allow_100 = false) const;
|
||||
// return false if this extruder was already selected
|
||||
|
@ -104,6 +100,13 @@ private:
|
|||
// Limit for setting the acceleration, to respect the machine limits set for the Marlin firmware.
|
||||
// If set to zero, the limit is not in action.
|
||||
unsigned int m_max_acceleration;
|
||||
unsigned int m_max_jerk;
|
||||
unsigned int m_last_jerk;
|
||||
|
||||
unsigned int m_travel_acceleration;
|
||||
unsigned int m_travel_jerk;
|
||||
|
||||
|
||||
//BBS
|
||||
unsigned int m_last_additional_fan_speed;
|
||||
// BBS
|
||||
|
|
|
@ -296,8 +296,10 @@ void LayerRegion::process_external_surfaces(const Layer *lower_layer, const Poly
|
|||
printf("Processing bridge at layer %zu:\n", this->layer()->id());
|
||||
#endif
|
||||
//BBS: use 0 as custom angle to enable auto detection all the time
|
||||
double custom_angle = Geometry::deg2rad(0.0);
|
||||
if (bd.detect_angle(custom_angle)) {
|
||||
double custom_angle = Geometry::deg2rad(this->region().config().bridge_angle.value);
|
||||
if(custom_angle > 0)
|
||||
bridges[idx_last].bridge_angle = custom_angle;
|
||||
else if (bd.detect_angle(custom_angle)) {
|
||||
bridges[idx_last].bridge_angle = bd.angle;
|
||||
if (this->layer()->object()->has_support()) {
|
||||
// polygons_append(this->bridged, bd.coverage());
|
||||
|
|
|
@ -412,6 +412,8 @@ void PerimeterGenerator::process()
|
|||
for (const Surface &surface : this->slices->surfaces) {
|
||||
// detect how many perimeters must be generated for this island
|
||||
int loop_number = this->config->wall_loops + surface.extra_perimeters - 1; // 0-indexed loops
|
||||
if (this->layer_id == 0 && this->config->only_one_wall_first_layer)
|
||||
loop_number = 0;
|
||||
//BBS: set the topmost layer to be one wall
|
||||
if (loop_number > 0 && config->only_one_wall_top && this->upper_slices == nullptr)
|
||||
loop_number = 0;
|
||||
|
|
|
@ -697,8 +697,9 @@ static std::vector<std::string> s_Preset_print_options {
|
|||
#endif /* HAS_PRESSURE_EQUALIZER */
|
||||
"inner_wall_speed", "outer_wall_speed", "small_perimeter_speed", "sparse_infill_speed", "internal_solid_infill_speed",
|
||||
"top_surface_speed", "support_speed", "support_object_xy_distance", "support_interface_speed",
|
||||
"bridge_speed", "gap_infill_speed", "travel_speed", "travel_speed_z", "initial_layer_speed",
|
||||
"initial_layer_acceleration", "top_surface_acceleration", "default_acceleration", "skirt_loops", "skirt_distance", "skirt_height", "draft_shield",
|
||||
"bridge_speed", "bridge_angle", "gap_infill_speed", "travel_speed", "travel_speed_z", "initial_layer_speed",
|
||||
"outer_wall_acceleration", "inner_wall_acceleration", "initial_layer_acceleration", "top_surface_acceleration", "default_acceleration", "travel_acceleration", "skirt_loops", "skirt_distance", "skirt_height", "draft_shield",
|
||||
"default_jerk", "outer_wall_jerk", "inner_wall_jerk", "top_surface_jerk", "initial_layer_jerk","travel_jerk",
|
||||
"brim_width", "brim_object_gap", "brim_type", "enable_support", "support_type", "support_threshold_angle", "enforce_support_layers",
|
||||
"raft_layers", "raft_first_layer_density", "raft_first_layer_expansion", "raft_contact_distance", "raft_expansion",
|
||||
"support_base_pattern", "support_base_pattern_spacing", "support_style",
|
||||
|
@ -722,14 +723,17 @@ static std::vector<std::string> s_Preset_print_options {
|
|||
"detect_narrow_internal_solid_infill",
|
||||
"gcode_add_line_number", "enable_arc_fitting", "infill_combination", "adaptive_layer_height",
|
||||
"support_bottom_interface_spacing", "enable_overhang_speed", "overhang_1_4_speed", "overhang_2_4_speed", "overhang_3_4_speed", "overhang_4_4_speed",
|
||||
"initial_layer_infill_speed", "only_one_wall_top",
|
||||
"timelapse_type"
|
||||
"initial_layer_infill_speed", "only_one_wall_top", "only_one_wall_first_layer",
|
||||
"timelapse_type",
|
||||
//SoftFever
|
||||
"top_solid_infill_flow_ratio","bottom_solid_infill_flow_ratio"
|
||||
|
||||
};
|
||||
|
||||
static std::vector<std::string> s_Preset_filament_options {
|
||||
/*"filament_colour", */"filament_diameter", "filament_type", "filament_soluble", "filament_is_support", "filament_max_volumetric_speed",
|
||||
"filament_flow_ratio", "filament_density", "filament_cost", "filament_minimal_purge_on_wipe_tower",
|
||||
"nozzle_temperature", "nozzle_temperature_initial_layer",
|
||||
"filament_flow_ratio", "enable_pressure_advance", "pressure_advance", "filament_density", "filament_cost", "filament_minimal_purge_on_wipe_tower",
|
||||
"chamber_temperature", "nozzle_temperature", "nozzle_temperature_initial_layer",
|
||||
// BBS
|
||||
"cool_plate_temp", "eng_plate_temp", "hot_plate_temp", "textured_plate_temp", "cool_plate_temp_initial_layer", "eng_plate_temp_initial_layer", "hot_plate_temp_initial_layer","textured_plate_temp_initial_layer",
|
||||
// "bed_type",
|
||||
|
@ -757,18 +761,20 @@ static std::vector<std::string> s_Preset_machine_limits_options {
|
|||
|
||||
static std::vector<std::string> s_Preset_printer_options {
|
||||
"printer_technology",
|
||||
"printable_area", "bed_exclude_area", "gcode_flavor",
|
||||
"printable_area", "bed_exclude_area", "gcode_flavor","z_lift_type",
|
||||
"single_extruder_multi_material", "machine_start_gcode", "machine_end_gcode", "before_layer_change_gcode", "layer_change_gcode", "change_filament_gcode",
|
||||
"printer_model", "printer_variant", "printable_height", "extruder_clearance_radius", "extruder_clearance_height_to_lid", "extruder_clearance_height_to_rod",
|
||||
"default_print_profile", "inherits",
|
||||
"silent_mode",
|
||||
// BBS
|
||||
"scan_first_layer", "machine_load_filament_time", "machine_unload_filament_time", "machine_pause_gcode", "template_custom_gcode",
|
||||
"nozzle_type", "auxiliary_fan", "nozzle_volume",
|
||||
"nozzle_type", "nozzle_diameter", "auxiliary_fan", "nozzle_volume",
|
||||
//SoftFever
|
||||
"host_type", "print_host", "printhost_apikey",
|
||||
"printhost_cafile","printhost_port","printhost_authorization_type",
|
||||
"printhost_user", "printhost_password", "printhost_ssl_ignore_revoke"
|
||||
"printhost_user",
|
||||
"printhost_password",
|
||||
"printhost_ssl_ignore_revoke", "thumbnails"
|
||||
};
|
||||
|
||||
static std::vector<std::string> s_Preset_sla_print_options {
|
||||
|
@ -2238,6 +2244,21 @@ void add_correct_opts_to_diff(const std::string &opt_key, t_config_option_keys&
|
|||
}
|
||||
}
|
||||
|
||||
// template<class T>
|
||||
// void add_correct_opt_to_diff(const std::string &opt_key, t_config_option_keys& vec, const ConfigBase &other, const ConfigBase &this_c)
|
||||
// {
|
||||
// const T* opt_init = static_cast<const T*>(other.option(opt_key));
|
||||
// const T* opt_cur = static_cast<const T*>(this_c.option(opt_key));
|
||||
// int opt_init_max_id = opt_init->values.size() - 1;
|
||||
// for (int i = 0; i < int(opt_cur->values.size()); i++)
|
||||
// {
|
||||
// int init_id = i <= opt_init_max_id ? i : 0;
|
||||
// if (opt_cur->values[i] != opt_init->values[init_id])
|
||||
// vec.emplace_back(opt_key + "#" + std::to_string(i));
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
// Use deep_diff to correct return of changed options, considering individual options for each extruder.
|
||||
inline t_config_option_keys deep_diff(const ConfigBase &config_this, const ConfigBase &config_other)
|
||||
{
|
||||
|
@ -2248,7 +2269,7 @@ inline t_config_option_keys deep_diff(const ConfigBase &config_this, const Confi
|
|||
if (this_opt != nullptr && other_opt != nullptr && *this_opt != *other_opt)
|
||||
{
|
||||
//BBS: add bed_exclude_area
|
||||
if (opt_key == "printable_area" || opt_key == "bed_exclude_area" || opt_key == "compatible_prints" || opt_key == "compatible_printers") {
|
||||
if (opt_key == "printable_area" || opt_key == "bed_exclude_area" || opt_key == "compatible_prints" || opt_key == "compatible_printers" || opt_key == "thumbnails") {
|
||||
// Scalar variable, or a vector variable, which is independent from number of extruders,
|
||||
// thus the vector is presented to the user as a single input.
|
||||
diff.emplace_back(opt_key);
|
||||
|
@ -2261,6 +2282,7 @@ inline t_config_option_keys deep_diff(const ConfigBase &config_this, const Confi
|
|||
case coBools: add_correct_opts_to_diff<ConfigOptionBools >(opt_key, diff, config_other, config_this); break;
|
||||
case coFloats: add_correct_opts_to_diff<ConfigOptionFloats >(opt_key, diff, config_other, config_this); break;
|
||||
case coStrings: add_correct_opts_to_diff<ConfigOptionStrings >(opt_key, diff, config_other, config_this); break;
|
||||
// case coString: add_correct_opts_to_diff<ConfigOptionString >(opt_key, diff, config_other, config_this); break;
|
||||
case coPercents:add_correct_opts_to_diff<ConfigOptionPercents >(opt_key, diff, config_other, config_this); break;
|
||||
case coPoints: add_correct_opts_to_diff<ConfigOptionPoints >(opt_key, diff, config_other, config_this); break;
|
||||
// BBS
|
||||
|
@ -2741,6 +2763,8 @@ void PhysicalPrinterCollection::load_printers(
|
|||
// see https://github.com/prusa3d/PrusaSlicer/issues/732
|
||||
boost::filesystem::path dir = boost::filesystem::absolute(boost::filesystem::path(dir_path) / subdir).make_preferred();
|
||||
m_dir_path = dir.string();
|
||||
if(!boost::filesystem::exists(dir))
|
||||
return;
|
||||
std::string errors_cummulative;
|
||||
// Store the loaded printers into a new vector, otherwise the binary search for already existing presets would be broken.
|
||||
std::deque<PhysicalPrinter> printers_loaded;
|
||||
|
|
|
@ -38,9 +38,9 @@ static std::vector<std::string> s_project_options {
|
|||
"wipe_tower_y",
|
||||
"wipe_tower_rotation_angle",
|
||||
"curr_bed_type",
|
||||
#if !BBL_RELEASE_TO_PUBLIC
|
||||
// #if !BBL_RELEASE_TO_PUBLIC
|
||||
"flush_multiplier",
|
||||
#endif
|
||||
// #endif
|
||||
};
|
||||
|
||||
//BBS: add BBL as default
|
||||
|
@ -90,7 +90,7 @@ PresetBundle::PresetBundle()
|
|||
for (size_t i = 0; i < 1; ++i) {
|
||||
// The following ugly switch is to avoid printers.preset(0) to return the edited instance, as the 0th default is the current one.
|
||||
Preset &preset = this->printers.default_preset(i);
|
||||
for (const char *key : {"printer_settings_id", "printer_model", "printer_variant"}) preset.config.optptr(key, true);
|
||||
for (const char *key : {"printer_settings_id", "printer_model", "printer_variant", "thumbnails"}) preset.config.optptr(key, true);
|
||||
//if (i == 0) {
|
||||
preset.config.optptr("default_print_profile", true);
|
||||
preset.config.option<ConfigOptionStrings>("default_filament_profile", true);
|
||||
|
@ -1419,8 +1419,10 @@ DynamicPrintConfig PresetBundle::full_config() const
|
|||
DynamicPrintConfig PresetBundle::full_config_secure() const
|
||||
{
|
||||
DynamicPrintConfig config = this->full_config();
|
||||
//BBS example: config.erase("print_host");
|
||||
return config;
|
||||
//FIXME legacy, the keys should not be there after conversion to a Physical Printer profile.
|
||||
config.erase("print_host");
|
||||
config.erase("printhost_apikey");
|
||||
config.erase("printhost_cafile"); return config;
|
||||
}
|
||||
|
||||
const std::set<std::string> ignore_settings_list ={
|
||||
|
@ -2960,7 +2962,7 @@ std::pair<PresetsConfigSubstitutions, size_t> PresetBundle::load_vendor_configs_
|
|||
//parse error
|
||||
std::string subfile_path = path + "/" + vendor_name + "/" + subfile.second;
|
||||
BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << boost::format(", got error when parse process setting from %1%") % subfile_path;
|
||||
throw ConfigurationError((boost::format("Failed loading configuration file %1%\nSuggest cleaning the directory %2% firstly") % subfile_path %vendor_system_path).str());
|
||||
throw ConfigurationError((boost::format("Failed loading configuration file %1%\nSuggest cleaning the directory %2% firstly.\nReason: %3%") % subfile_path %vendor_system_path %reason).str());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -68,7 +68,9 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|
|||
//BBS: add bed_exclude_area
|
||||
"bed_exclude_area",
|
||||
"before_layer_change_gcode",
|
||||
"enable_overhang_bridge_fan"
|
||||
"enable_pressure_advance",
|
||||
"pressure_advance",
|
||||
"enable_overhang_bridge_fan",
|
||||
"overhang_fan_speed",
|
||||
"overhang_fan_threshold",
|
||||
"slow_down_for_layer_cooling",
|
||||
|
@ -90,8 +92,11 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|
|||
"filament_diameter",
|
||||
"filament_density",
|
||||
"filament_cost",
|
||||
"outer_wall_acceleration",
|
||||
"inner_wall_acceleration",
|
||||
"initial_layer_acceleration",
|
||||
"top_surface_acceleration",
|
||||
"travel_acceleration",
|
||||
// BBS
|
||||
"cool_plate_temp_initial_layer",
|
||||
"eng_plate_temp_initial_layer",
|
||||
|
@ -124,10 +129,13 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|
|||
"filament_start_gcode",
|
||||
"change_filament_gcode",
|
||||
"wipe",
|
||||
"z_lift_type",
|
||||
// BBS
|
||||
"wipe_distance",
|
||||
"curr_bed_type",
|
||||
"nozzle_volume"
|
||||
"nozzle_volume",
|
||||
"chamber_temperature",
|
||||
"thumbnails"
|
||||
};
|
||||
|
||||
static std::unordered_set<std::string> steps_ignore;
|
||||
|
@ -164,6 +172,7 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|
|||
} else if (
|
||||
opt_key == "print_sequence"
|
||||
|| opt_key == "filament_type"
|
||||
|| opt_key == "chamber_temperature"
|
||||
|| opt_key == "nozzle_temperature_initial_layer"
|
||||
|| opt_key == "filament_minimal_purge_on_wipe_tower"
|
||||
|| opt_key == "filament_max_volumetric_speed"
|
||||
|
|