Merge branch 'main' into enh-port-edit-gcode-dlg

This commit is contained in:
Ocraftyone 2024-01-08 22:41:35 -05:00 committed by GitHub
commit d5ee4ff1ab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
87 changed files with 687 additions and 270 deletions

View file

@ -26,6 +26,13 @@ jobs:
- name: Checkout
uses: actions/checkout@v3
- name: load cached deps
uses: actions/cache@v3
with:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
fail-on-cache-miss: true
- name: Get the version and date on Ubuntu and macOS
if: inputs.os != 'windows-latest'
run: |
@ -66,12 +73,6 @@ jobs:
echo "date: ${{ env.date }} version: ${{ env.ver }}"
shell: pwsh
- name: load cached deps
uses: actions/cache@v3
with:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
# Mac
- name: Install tools mac
if: inputs.os == 'macos-12'

1
.gitignore vendored
View file

@ -31,3 +31,4 @@ src/OrcaSlicer-doc/
**/machine_full/
**/filament_full/
/deps/DL_CACHE/
/deps/DL_CACHE

View file

@ -491,44 +491,44 @@ msgstr "Fehlerhafte Verbinder gefunden"
#, c-format, boost-format
msgid "%1$d connector is out of cut contour"
msgid_plural "%1$d connectors are out of cut contour"
msgstr[0] ""
msgstr[1] ""
msgstr[0] "%1$d Verbinder ist außerhalb des Schnittkontur"
msgstr[1] "%1$d Verbinder sind außerhalb des Schnittkontur"
#, c-format, boost-format
msgid "%1$d connector is out of object"
msgid_plural "%1$d connectors are out of object"
msgstr[0] ""
msgstr[1] ""
msgstr[0] "%1$d Verbinder ist außerhalb des Objekts"
msgstr[1] "%1$d Verbinder sind außerhalb des Objekts"
msgid "Some connectors are overlapped"
msgstr "Einige Verbinder überlappen sich"
msgid "Select at least one object to keep after cutting."
msgstr ""
msgstr "Wählen Sie mindestens ein Objekt aus, das nach dem Schneiden erhalten bleiben soll."
msgid "Cut plane is placed out of object"
msgstr ""
msgstr "Schnittfläche ist außerhalb des Objekts platziert"
msgid "Cut plane with groove is invalid"
msgstr ""
msgstr "Schnittfläche mit Nut ist ungültig"
msgid "Connector"
msgstr "Verbinder"
msgid "Cut by Plane"
msgstr ""
msgstr "Schnitt durch Ebene"
msgid "non-manifold edges be caused by cut tool, do you want to fix it now?"
msgstr ""
msgstr "Nicht-manifold Kanten durch Schneidwerkzeug verursacht, möchten Sie es jetzt beheben?"
msgid "Repairing model object"
msgstr "Modellobjekt reparieren"
msgid "Cut by line"
msgstr ""
msgstr "Schnitt durch Linie"
msgid "Delete connector"
msgstr ""
msgstr "Verbinder löschen"
msgid "Mesh name"
msgstr "Netzname"
@ -4058,7 +4058,7 @@ msgstr "Volumen:"
msgid "Size:"
msgstr "Größe:"
#, c-format, boost-format
#, boost-format
msgid ""
"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please "
"separate the conflicted objects farther (%s <-> %s)."
@ -4494,7 +4494,6 @@ msgstr "Durchflussrate"
msgid "Pressure advance"
msgstr "Pressure advance"
#, fuzzy
msgid "Retraction test"
msgstr "Rückzugslängen Test"
@ -6704,8 +6703,8 @@ msgstr ""
msgid ""
"Timelapse is not supported because Print sequence is set to \"By object\"."
msgstr ""
"Zeitraffer wird nicht unterstützt, da die Druckreihenfolge auf \"Nach Objekt"
"\" eingestellt ist."
"Zeitraffer wird nicht unterstützt, da die Druckreihenfolge auf \"Nach "
"Objekt\" eingestellt ist."
msgid "Errors"
msgstr "Fehler"
@ -7038,13 +7037,13 @@ msgstr "Ignorieren"
msgid ""
"When recording timelapse without toolhead, it is recommended to add a "
"\"Timelapse Wipe Tower\" \n"
"by right-click the empty position of build plate and choose \"Add Primitive"
"\"->\"Timelapse Wipe Tower\"."
"by right-click the empty position of build plate and choose \"Add "
"Primitive\"->\"Timelapse Wipe Tower\"."
msgstr ""
"Wenn Sie einen Zeitraffer ohne Werkzeugkopf aufnehmen, wird empfohlen, einen "
"\"Timelapse Wischturm\" hinzuzufügen, indem Sie mit der rechten Maustaste "
"auf die leere Position der Bauplatte klicken und \"Primitiv hinzufügen\"->"
"\"Timelapse Wischturm\" wählen."
"auf die leere Position der Bauplatte klicken und \"Primitiv hinzufügen\"-"
">\"Timelapse Wischturm\" wählen."
msgid "Line width"
msgstr "Breite der Linie"
@ -7301,11 +7300,9 @@ msgstr "Toolchange-Parameter bei Multi-Extruder-MM-Druckern"
msgid "Printable space"
msgstr "Druckbarer Raum"
#, fuzzy
msgid "Cooling Fan"
msgstr "Kühlung"
#, fuzzy
msgid "Fan speed-up time"
msgstr "Lüfter Beschleunigungszeit"
@ -8714,7 +8711,6 @@ msgstr ""
"Passwort in die URL in folgendem Format eingegeben werden: https://username:"
"password@Ihre-octopi-Adresse/"
#, fuzzy
msgid "Device UI"
msgstr "Gerät"
@ -10218,7 +10214,6 @@ msgstr "Bewegung"
msgid "Travel speed of initial layer"
msgstr "Bewegungsgeschwindigkeit der ersten Schicht"
#, fuzzy
msgid "Number of slow layers"
msgstr "Anzahl der lansamen Schichten"
@ -10243,19 +10238,18 @@ msgstr "Volle Lüfterdrehzahl ab Schicht"
msgid ""
"Fan speed will be ramped up linearly from zero at layer "
"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
"\". \"full_fan_speed_layer\" will be ignored if lower than "
"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
"\"close_fan_the_first_x_layers\" to maximum at layer "
"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
msgstr ""
"Die Lüftergeschwindigkeit wird linear von Null bei der Schicht"
"\"close_fan_the_first_x_layers\" auf das Maximum bei der Schicht "
"Die Lüftergeschwindigkeit wird linear von Null bei der "
"Schicht\"close_fan_the_first_x_layers\" auf das Maximum bei der Schicht "
"\"full_fan_speed_layer\" erhöht. \"full_fan_speed_layer\" wird ignoriert, "
"wenn es niedriger ist als \"close_fan_the_first_x_layers\",in diesem Fall "
"läuft der Lüfter bei Schicht \"close_fan_the_first_x_layers\"+ 1 mit maximal "
"zulässiger Geschwindigkeit."
#, fuzzy
msgid "Support interface fan speed"
msgstr "Stützstruktur-Schnittstelle"
@ -10442,7 +10436,6 @@ msgstr ""
"den Start-G-Code verschoben, wenn nur benutzerdefinierterStart-G-Code "
"aktiviert ist. Verwende 0, um den Lüfter zu deaktivieren."
#, fuzzy
msgid "Only overhangs"
msgstr "Nur an Überhängen"
@ -10505,7 +10498,6 @@ msgstr "Mit welcher Art von G-Code ist der Drucker kompatibel"
msgid "Klipper"
msgstr "Klipper"
#, fuzzy
msgid "Label objects"
msgstr "Objekte beschriften"
@ -11407,7 +11399,6 @@ msgstr ""
msgid "Role base wipe speed"
msgstr "Rollenbasierte Wipe Geschwindigkeit"
#, fuzzy
msgid ""
"The wipe speed is determined by the speed of the current extrusion role.e.g. "
"if a wipe action is executed immediately following an outer wall extrusion, "
@ -12945,7 +12936,7 @@ msgid ""
"cause the result not exactly the same in each calibration. We are still "
"investigating the root cause to do improvements with new updates."
msgstr ""
"Bitte finden Sie die Details der Flussdynamik-Kalibrierung in unserem Wiki.\n"
"Sie finden die Details der Dynamischen-Kalibrierung in unserem Wiki.\n"
"\n"
"Normalerweise ist die Kalibrierung nicht erforderlich. Wenn Sie einen Einzel-"
"Farb-/Materialdruck mit der Option \"Flussdynamik-Kalibrierung\" im "
@ -13438,11 +13429,9 @@ msgstr ""
"Schritt >= 0\n"
"Ende > Start + Schritt)"
#, fuzzy
msgid "Start retraction length: "
msgstr "Start Rückzugslänge"
#, fuzzy
msgid "End retraction length: "
msgstr "Ende Rückzugslänge"
@ -13468,7 +13457,6 @@ msgstr ""
"Der Dateiname für den Upload endet nicht mit \"%s\". Möchten Sie den Vorgang "
"fortsetzen?"
#, fuzzy
msgid "Upload"
msgstr "Hochladen"
@ -13724,8 +13712,8 @@ msgstr ""
"Möchten Sie es überschreiben?"
msgid ""
"We would rename the presets as \"Vendor Type Serial @printer you selected"
"\". \n"
"We would rename the presets as \"Vendor Type Serial @printer you "
"selected\". \n"
"To add preset for more prinetrs, Please go to printer selection"
msgstr ""
"Wir würden die Voreinstellungen als \"Hersteller Typ Seriennummer @Drucker "
@ -14124,7 +14112,7 @@ msgid "For more information, please check out Wiki"
msgstr "Für weitere Informationen besuchen Sie bitte Wiki"
msgid "Collapse"
msgstr "Zusammenbruch"
msgstr "Zuklappen"
msgid "Daily Tips"
msgstr "Tägliche Tipps"
@ -14142,7 +14130,6 @@ msgstr ""
"Kalibrierung nicht möglich: Möglicherweise, weil der eingestellte "
"Kalibrierungswertebereich zu groß ist oder der Schritt zu klein ist"
#, fuzzy
msgid "Physical Printer"
msgstr "Drucker"
@ -14407,7 +14394,7 @@ msgid ""
"Did you know that Orca Slicer offers a wide range of keyboard shortcuts and "
"3D scene operations."
msgstr ""
"Wie werden Tastenkombinationen verwendet\n"
"Tastenkombinationen verwenden\n"
"Wussten Sie, dass Orca Slicer eine Vielzahl von Tastenkombinationen und 3D-"
"Szenenoperationen bietet."
@ -14427,9 +14414,9 @@ msgid ""
"Did you know that you can cut a model at any angle and position with the "
"cutting tool?"
msgstr ""
"Schnittwerkzeug\n"
"Wussten Sie, dass Sie mit dem Schnittwerkzeug ein Modell in jedem beliebigen "
"Winkel und jeder beliebigen Position zerschneiden können?"
"Schneidwerkzeug\n"
"Wussten Sie, dass Sie ein Modell mit dem Schneidwerkzeug in jedem Winkel und "
"an jeder Position schneiden können?"
#: resources/data/hints.ini: [hint:Fix Model]
msgid ""
@ -14447,7 +14434,8 @@ msgid ""
"Did you know that you can generate a timelapse video during each print?"
msgstr ""
"Zeitraffer\n"
"Wussten Sie, dass Sie bei jedem Druck ein Zeitraffervideo erstellen können?"
"Wussten Sie, dass Sie während jedes Drucks ein Zeitraffervideo erstellen "
"können?"
#: resources/data/hints.ini: [hint:Auto-Arrange]
msgid ""
@ -14464,9 +14452,9 @@ msgid ""
"Did you know that you can rotate objects to an optimal orientation for "
"printing by a simple click?"
msgstr ""
"Automatische Ausrichtung\n"
"Wussten Sie schon, dass Sie Objekte mit einem einfachen Klick in eine für "
"den Druck optimale Ausrichtung drehen können?"
"Automatisch ausrichten\n"
"Wussten Sie, dass Sie Objekte durch einen einfachen Klick in eine optimale "
"Druckausrichtung drehen können?"
#: resources/data/hints.ini: [hint:Lay on Face]
msgid ""
@ -14602,9 +14590,9 @@ msgid ""
"Did you know that you can print a model even faster, by using the Adaptive "
"Layer Height option? Check it out!"
msgstr ""
"Beschleunigen Sie Ihren Druck mit adaptiven Schichthöhe\n"
"Wussten Sie, dass Sie ein Modell noch schneller drucken können, wenn Sie die "
"Option \"Adaptive Schichthöhe\" verwenden? Probiere es aus!"
"Beschleunigen Sie Ihren Druck mit adaptiver Schichthöhe\n"
"Wussten Sie, dass Sie ein Modell noch schneller drucken können, indem Sie "
"die Option Adaptive Schichthöhe verwenden? Probiere es aus!"
#: resources/data/hints.ini: [hint:Support painting]
msgid ""
@ -14637,10 +14625,10 @@ msgid ""
"successfully? Higher temperature and lower speed are always recommended for "
"the best results."
msgstr ""
"Drucken von Silkfilamenten\n"
"Wussten Sie, dass Silkfilamente besondere Bedingungen erfordern, um "
"erfolgreich gedruckt zu werden? Eine höhere Temperatur und eine niedrigere "
"Geschwindigkeit werden immer empfohlen, um die besten Ergebnisse zu erzielen."
"Drucken von Seidenfilament\n"
"Wussten Sie, dass Seidenfilament besondere Überlegungen erfordert, um es "
"erfolgreich zu drucken? Höhere Temperaturen und niedrigere Geschwindigkeiten "
"werden immer für die besten Ergebnisse empfohlen."
#: resources/data/hints.ini: [hint:Brim for better adhesion]
msgid ""

View file

@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: OrcaSlicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-29 22:55+0800\n"
"PO-Revision-Date: 2024-01-01 00:01+0300\n"
"PO-Revision-Date: 2024-01-05 21:10+0300\n"
"Last-Translator: Olcay ÖREN\n"
"Language-Team: Türkçe\n"
"Language: tr_TR\n"
@ -1278,7 +1278,7 @@ msgid "Select point"
msgstr "Nokta seç"
msgid "Delete"
msgstr "Delete"
msgstr "Sil"
msgid "Restart selection"
msgstr "Seçimi sıfırla"
@ -11041,7 +11041,7 @@ msgid "Slope"
msgstr "Eğim"
msgid "Spiral"
msgstr "Sarmal"
msgstr "Spiral"
msgid "Only lift Z above"
msgstr "Z'yi sadece şu değerin üstündeki durumlarda kaldır"
@ -11293,7 +11293,7 @@ msgid "Speed of internal solid infill, not the top and bottom surface"
msgstr "Üst ve alt yüzeyin değil, iç katı dolgunun hızı"
msgid "Spiral vase"
msgstr "Sarmal vazo"
msgstr "Spiral vazo"
msgid ""
"Spiralize smooths out the z moves of the outer contour. And turns a solid "

View file

@ -1,6 +1,6 @@
{
"name": "Anker",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Anker configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Anycubic",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Anycubic configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Artillery",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Artillery configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "BIQU",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "BIQU configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Comgrow",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Comgrow configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Creality",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Creality configurations",
"machine_model_list": [

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-10 Max",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-10 V2",
"printer_structure": "i3",
"default_print_profile": "0.20mm Standard @Creality CR10V2",
"nozzle_diameter": [
"0.4"

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 Max",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 Max",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 Max",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 Max",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 SE",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 SE",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 SE",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality CR-6 SE",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality Ender-3",
"printer_structure": "i3",
"default_print_profile": "0.20mm Standard @Creality Ender3",
"thumbnails": [""],
"nozzle_diameter": [

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality Ender-3 S1",
"printer_structure": "i3",
"default_print_profile": "0.20mm Standard @Creality Ender3S1",
"nozzle_diameter": [
"0.4"

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality Ender-3 S1 Pro",
"printer_structure": "i3",
"default_print_profile": "0.20mm Standard @Creality Ender3S1Pro",
"nozzle_diameter": [
"0.4"

View file

@ -6,6 +6,7 @@
"instantiation": "true",
"inherits": "fdm_creality_common",
"printer_model": "Creality Ender-3 V2",
"printer_structure": "i3",
"default_filament_profile": [
"Creality Generic PLA"
],

View file

@ -1,6 +1,6 @@
{
"name": "Custom Printer",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "My configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Elegoo",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Elegoo configurations",
"machine_model_list": [

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 191 KiB

Before After
Before After

View file

@ -101,7 +101,7 @@
"0"
],
"single_extruder_multi_material": "1",
"change_filament_gcode": "",
"change_filament_gcode": "M600",
"machine_pause_gcode": "M0",
"default_filament_profile": [
"Elegoo Generic PLA"

View file

@ -101,7 +101,7 @@
"0"
],
"single_extruder_multi_material": "1",
"change_filament_gcode": "",
"change_filament_gcode": "M600",
"machine_pause_gcode": "M0",
"default_filament_profile": [
"Elegoo Generic PLA"

View file

@ -101,7 +101,7 @@
"0"
],
"single_extruder_multi_material": "1",
"change_filament_gcode": "",
"change_filament_gcode": "M600",
"machine_pause_gcode": "M0",
"default_filament_profile": [
"Elegoo Generic PLA"

View file

@ -101,7 +101,7 @@
"40"
],
"single_extruder_multi_material": "1",
"change_filament_gcode": "PAUSE",
"change_filament_gcode": "",
"machine_pause_gcode": "M0",
"default_filament_profile": [
"Elegoo Generic PLA"

View file

@ -1,6 +1,6 @@
{
"name": "FLSun",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "FLSun configurations",
"machine_model_list": [

View file

@ -1,7 +1,7 @@
{
"name": "Flashforge",
"url": "",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Flashforge configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "FlyingBear",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "1",
"description": "FlyingBear configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Folgertech",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Folgertech configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "InfiMech",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "1",
"description": "InfiMech configurations",
"machine_model_list": [

View file

@ -1,7 +1,7 @@
{
"name": "Kingroon",
"url": "https://kingroon.com/",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Kingroon configuration files",
"machine_model_list": [

View file

@ -1,7 +1,7 @@
{
"name": "Orca Arena Printer",
"url": "",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Orca Arena configuration files",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Prusa",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Prusa configurations",
"machine_model_list": [

View file

@ -40,7 +40,7 @@
"ironing_flow": "15%",
"ironing_spacing": "0.1",
"ironing_speed": "15",
"ironing_type": "top",
"ironing_type": "no ironing",
"is_custom_defined": "1",
"max_travel_detour_distance": "0",
"min_bead_width": "85%",

View file

@ -1,6 +1,6 @@
{
"name": "Qidi",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Qidi configurations",
"machine_model_list": [
@ -464,10 +464,34 @@
"name": "Qidi Generic ABS",
"sub_path": "filament/Qidi Generic ABS.json"
},
{
"name": "Qidi Generic ABS @Qidi X-Max 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic ABS @Qidi X-Max 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic ABS @Qidi X-Plus 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic ABS @Qidi X-Plus 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic ABS @Qidi X-Smart 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic ABS @Qidi X-Smart 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic ASA",
"sub_path": "filament/Qidi Generic ASA.json"
},
{
"name": "Qidi Generic ASA @Qidi X-Max 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic ASA @Qidi X-Max 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic ASA @Qidi X-Plus 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic ASA @Qidi X-Plus 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic ASA @Qidi X-Smart 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic ASA @Qidi X-Smart 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic PA",
"sub_path": "filament/Qidi Generic PA.json"
@ -483,6 +507,18 @@
{
"name": "Qidi Generic PETG",
"sub_path": "filament/Qidi Generic PETG.json"
},
{
"name": "Qidi Generic PETG @Qidi X-Smart 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic PETG @Qidi X-Smart 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic PETG @Qidi X-Plus 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic PETG @Qidi X-Plus 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic PETG @Qidi XMax3 0.2 nozzle",
"sub_path": "filament/Qidi Generic PETG @Qidi X-Max 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic PETG-CF",
@ -495,6 +531,18 @@
{
"name": "Qidi Generic PLA",
"sub_path": "filament/Qidi Generic PLA.json"
},
{
"name": "Qidi Generic PLA @Qidi X-Smart 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic PLA @Qidi X-Smart 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic PLA @Qidi X-Plus 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic PLA @Qidi X-Plus 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic PLA @Qidi X-Max 3 0.2 nozzle",
"sub_path": "filament/Qidi Generic PLA @Qidi X-Max 3 0.2 nozzle.json"
},
{
"name": "Qidi Generic PLA-CF",

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFB99",
"setting_id": "GFSA04",
"name": "Qidi Generic ABS @Qidi X-Max 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_abs",
"filament_flow_ratio": [
"0.926"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.021"
],
"filament_max_volumetric_speed": [
"2"
],
"filament_start_gcode": [
"; filament start gcode\n{if (bed_temperature[current_extruder] >90)||(bed_temperature_initial_layer[current_extruder] >90)}M106 P3 S0\n{elsif(bed_temperature[current_extruder] >70)||(bed_temperature_initial_layer[current_extruder] >70)}M106 P3 S153\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{endif}"
],
"compatible_printers": [
"Qidi X-Max 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFB99",
"setting_id": "GFSA04",
"name": "Qidi Generic ABS @Qidi X-Plus 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_abs",
"filament_flow_ratio": [
"0.926"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.021"
],
"filament_max_volumetric_speed": [
"2"
],
"filament_start_gcode": [
"; filament start gcode\n{if (bed_temperature[current_extruder] >90)||(bed_temperature_initial_layer[current_extruder] >90)}M106 P3 S0\n{elsif(bed_temperature[current_extruder] >70)||(bed_temperature_initial_layer[current_extruder] >70)}M106 P3 S153\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{endif}"
],
"compatible_printers": [
"Qidi X-Plus 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFB99",
"setting_id": "GFSA04",
"name": "Qidi Generic ABS @Qidi X-Smart 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_abs",
"filament_flow_ratio": [
"0.926"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.021"
],
"filament_max_volumetric_speed": [
"2"
],
"filament_start_gcode": [
"; filament start gcode\n{if (bed_temperature[current_extruder] >90)||(bed_temperature_initial_layer[current_extruder] >90)}M106 P3 S0\n{elsif(bed_temperature[current_extruder] >70)||(bed_temperature_initial_layer[current_extruder] >70)}M106 P3 S153\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{endif}"
],
"compatible_printers": [
"Qidi X-Smart 3 0.2 nozzle"
]
}

View file

@ -35,9 +35,6 @@
"Qidi X-CF Pro 0.8 nozzle",
"Qidi X-Smart 3 0.8 nozzle",
"Qidi X-Plus 3 0.8 nozzle",
"Qidi X-Max 3 0.8 nozzle",
"Qidi X-Smart 3 0.2 nozzle",
"Qidi X-Plus 3 0.2 nozzle",
"Qidi X-Max 3 0.2 nozzle"
"Qidi X-Max 3 0.8 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFB99",
"setting_id": "GFSA04",
"name": "Qidi Generic ASA @Qidi X-Max 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_abs",
"filament_flow_ratio": [
"0.926"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.021"
],
"filament_max_volumetric_speed": [
"2"
],
"filament_start_gcode": [
"; filament start gcode\n{if (bed_temperature[current_extruder] >90)||(bed_temperature_initial_layer[current_extruder] >90)}M106 P3 S0\n{elsif(bed_temperature[current_extruder] >70)||(bed_temperature_initial_layer[current_extruder] >70)}M106 P3 S153\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{endif}"
],
"compatible_printers": [
"Qidi X-Max 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFB99",
"setting_id": "GFSA04",
"name": "Qidi Generic ASA @Qidi X-Plus 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_abs",
"filament_flow_ratio": [
"0.926"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.021"
],
"filament_max_volumetric_speed": [
"2"
],
"filament_start_gcode": [
"; filament start gcode\n{if (bed_temperature[current_extruder] >90)||(bed_temperature_initial_layer[current_extruder] >90)}M106 P3 S0\n{elsif(bed_temperature[current_extruder] >70)||(bed_temperature_initial_layer[current_extruder] >70)}M106 P3 S153\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{endif}"
],
"compatible_printers": [
"Qidi X-Plus 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFB99",
"setting_id": "GFSA04",
"name": "Qidi Generic ASA @Qidi X-Smart 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_abs",
"filament_flow_ratio": [
"0.926"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.021"
],
"filament_max_volumetric_speed": [
"2"
],
"filament_start_gcode": [
"; filament start gcode\n{if (bed_temperature[current_extruder] >90)||(bed_temperature_initial_layer[current_extruder] >90)}M106 P3 S0\n{elsif(bed_temperature[current_extruder] >70)||(bed_temperature_initial_layer[current_extruder] >70)}M106 P3 S153\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{endif}"
],
"compatible_printers": [
"Qidi X-Smart 3 0.2 nozzle"
]
}

View file

@ -44,9 +44,6 @@
"Qidi X-CF Pro 0.8 nozzle",
"Qidi X-Smart 3 0.8 nozzle",
"Qidi X-Plus 3 0.8 nozzle",
"Qidi X-Max 3 0.8 nozzle",
"Qidi X-Smart 3 0.2 nozzle",
"Qidi X-Plus 3 0.2 nozzle",
"Qidi X-Max 3 0.2 nozzle"
"Qidi X-Max 3 0.8 nozzle"
]
}

View file

@ -0,0 +1,51 @@
{
"type": "filament",
"filament_id": "GFG99",
"setting_id": "GFSG99",
"name": "Qidi Generic PETG @Qidi X-Max 3 0.2 nozzle",
"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": [
"40"
],
"fan_min_speed": [
"10"
],
"slow_down_min_speed": [
"10"
],
"slow_down_layer_time": [
"8"
],
"filament_flow_ratio": [
"0.95"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.05"
],
"filament_max_volumetric_speed": [
"1"
],
"compatible_printers": [
"Qidi X-Max 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,51 @@
{
"type": "filament",
"filament_id": "GFG99",
"setting_id": "GFSG99",
"name": "Qidi Generic PETG @Qidi X-Plus 3 0.2 nozzle",
"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": [
"40"
],
"fan_min_speed": [
"10"
],
"slow_down_min_speed": [
"10"
],
"slow_down_layer_time": [
"8"
],
"filament_flow_ratio": [
"0.95"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.05"
],
"filament_max_volumetric_speed": [
"1"
],
"compatible_printers": [
"Qidi X-Plus 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,51 @@
{
"type": "filament",
"filament_id": "GFG99",
"setting_id": "GFSG99",
"name": "Qidi Generic PETG @Qidi X-Smart 3 0.2 nozzle",
"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": [
"40"
],
"fan_min_speed": [
"10"
],
"slow_down_min_speed": [
"10"
],
"slow_down_layer_time": [
"8"
],
"filament_flow_ratio": [
"0.95"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.05"
],
"filament_max_volumetric_speed": [
"1"
],
"compatible_printers": [
"Qidi X-Smart 3 0.2 nozzle"
]
}

View file

@ -62,9 +62,6 @@
"Qidi X-CF Pro 0.8 nozzle",
"Qidi X-Smart 3 0.8 nozzle",
"Qidi X-Plus 3 0.8 nozzle",
"Qidi X-Max 3 0.8 nozzle",
"Qidi X-Smart 3 0.2 nozzle",
"Qidi X-Plus 3 0.2 nozzle",
"Qidi X-Max 3 0.2 nozzle"
"Qidi X-Max 3 0.8 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFL99",
"setting_id": "GFSL99",
"name": "Qidi Generic PLA @Qidi X-Max 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_pla",
"filament_flow_ratio": [
"0.98"
],
"slow_down_layer_time": [
"5"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.031"
],
"filament_max_volumetric_speed": [
"2"
],
"compatible_printers": [
"Qidi X-Max 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFL99",
"setting_id": "GFSL99",
"name": "Qidi Generic PLA @Qidi X-Plus 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_pla",
"filament_flow_ratio": [
"0.98"
],
"slow_down_layer_time": [
"5"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.031"
],
"filament_max_volumetric_speed": [
"2"
],
"compatible_printers": [
"Qidi X-Plus 3 0.2 nozzle"
]
}

View file

@ -0,0 +1,27 @@
{
"type": "filament",
"filament_id": "GFL99",
"setting_id": "GFSL99",
"name": "Qidi Generic PLA @Qidi X-Smart 3 0.2 nozzle",
"from": "system",
"instantiation": "true",
"inherits": "fdm_filament_pla",
"filament_flow_ratio": [
"0.98"
],
"slow_down_layer_time": [
"5"
],
"enable_pressure_advance": [
"1"
],
"pressure_advance": [
"0.031"
],
"filament_max_volumetric_speed": [
"2"
],
"compatible_printers": [
"Qidi X-Smart 3 0.2 nozzle"
]
}

View file

@ -35,9 +35,6 @@
"Qidi X-CF Pro 0.8 nozzle",
"Qidi X-Smart 3 0.8 nozzle",
"Qidi X-Plus 3 0.8 nozzle",
"Qidi X-Max 3 0.8 nozzle",
"Qidi X-Smart 3 0.2 nozzle",
"Qidi X-Plus 3 0.2 nozzle",
"Qidi X-Max 3 0.2 nozzle"
"Qidi X-Max 3 0.8 nozzle"
]
}

View file

@ -38,9 +38,6 @@
"Qidi X-CF Pro 0.8 nozzle",
"Qidi X-Smart 3 0.8 nozzle",
"Qidi X-Plus 3 0.8 nozzle",
"Qidi X-Max 3 0.8 nozzle",
"Qidi X-Smart 3 0.2 nozzle",
"Qidi X-Plus 3 0.2 nozzle",
"Qidi X-Max 3 0.2 nozzle"
"Qidi X-Max 3 0.8 nozzle"
]
}

View file

@ -103,7 +103,8 @@
"top_shell_layers": "4",
"top_shell_thickness": "0.8",
"travel_speed": "500",
"enable_prime_tower": "1",
"enable_prime_tower": "0",
"independent_support_layer_height": "0",
"wipe_tower_no_sparse_layers": "0",
"prime_tower_width": "35",
"xy_hole_compensation": "0",

View file

@ -1,7 +1,7 @@
{
"name": "Raise3D",
"url": "",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Raise3D configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "RatRig",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "RatRig configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "SecKit",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "SecKit configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Snapmaker",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Snapmaker configurations",
"machine_model_list": [

View file

@ -1,7 +1,7 @@
{
"name": "Sovol",
"url": "",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Sovol configurations",
"machine_model_list": [

View file

@ -44,7 +44,7 @@
"ironing_flow": "15%",
"ironing_spacing": "0.25",
"ironing_speed": "15",
"ironing_type": "top",
"ironing_type": "no ironing",
"reduce_infill_retraction": "1",
"filename_format": "[input_filename_base].gcode",
"detect_overhang_wall": "1",

View file

@ -44,7 +44,7 @@
"ironing_flow": "15%",
"ironing_spacing": "0.25",
"ironing_speed": "15",
"ironing_type": "top",
"ironing_type": "no ironing",
"reduce_infill_retraction": "1",
"filename_format": "[input_filename_base].gcode",
"detect_overhang_wall": "1",

View file

@ -44,7 +44,7 @@
"ironing_flow": "15%",
"ironing_spacing": "0.25",
"ironing_speed": "15",
"ironing_type": "top",
"ironing_type": "no ironing",
"reduce_infill_retraction": "1",
"filename_format": "[input_filename_base].gcode",
"detect_overhang_wall": "1",

View file

@ -44,7 +44,7 @@
"ironing_flow": "15%",
"ironing_spacing": "0.25",
"ironing_speed": "15",
"ironing_type": "top",
"ironing_type": "no ironing",
"reduce_infill_retraction": "1",
"filename_format": "[input_filename_base].gcode",
"detect_overhang_wall": "1",

View file

@ -1,6 +1,6 @@
{
"name": "Tronxy",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Tronxy configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "TwoTrees",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "1",
"description": "TwoTrees configurations",
"machine_model_list": [

View file

@ -1,7 +1,7 @@
{
"name": "UltiMaker",
"url": "",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "UltiMaker configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Vivedino",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Vivedino configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Voron",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Voron configurations",
"machine_model_list": [

View file

@ -1,7 +1,7 @@
{
"name": "Voxelab",
"url": "",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Voxelab configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Vzbot",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Vzbot configurations",
"machine_model_list": [

View file

@ -1,6 +1,6 @@
{
"name": "Wanhao",
"version": "01.09.00.01",
"version": "01.09.00.02",
"force_update": "0",
"description": "Wanhao configurations",
"machine_model_list": [

View file

@ -3113,10 +3113,15 @@ void FillMonotonicLineWGapFill::fill_surface_extrusion(const Surface* surface, c
params2.dont_adjust = true;
//BBS: always use no overlap expolygons to avoid overflow in top surface
for (const ExPolygon &rectilinear_area : this->no_overlap_expolygons) {
rectilinear_surface.expolygon = rectilinear_area;
fill_surface_by_lines(&rectilinear_surface, params2, polylines_rectilinear);
}
//for (const ExPolygon &rectilinear_area : this->no_overlap_expolygons) {
// rectilinear_surface.expolygon = rectilinear_area;
// fill_surface_by_lines(&rectilinear_surface, params2, polylines_rectilinear);
//}
// Orca: The above causes pockmarks in top layer surfaces with a properly calibrated printer with PA and EM tuned.
// Revert implementation to the prusa slicer approach that respects the infill/wall overlap setting
// while retaining the gap fill logic below. The user can adjust the overlap calue to reduce overflow if needed.
fill_surface_by_lines(surface, params2, polylines_rectilinear);
ExPolygons unextruded_areas;
Flow new_flow = params.flow;
if (!polylines_rectilinear.empty()) {

View file

@ -1716,18 +1716,18 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
project->project_country_code = m_contry_code;
}
//BBS: version check
// Orca: skip version check
bool dont_load_config = !m_load_config;
if (m_bambuslicer_generator_version) {
Semver app_version = *(Semver::parse(SoftFever_VERSION));
Semver file_version = *m_bambuslicer_generator_version;
if (file_version.maj() != app_version.maj())
dont_load_config = true;
}
else {
m_bambuslicer_generator_version = Semver::parse("0.0.0.0");
dont_load_config = true;
}
// if (m_bambuslicer_generator_version) {
// Semver app_version = *(Semver::parse(SoftFever_VERSION));
// Semver file_version = *m_bambuslicer_generator_version;
// if (file_version.maj() != app_version.maj())
// dont_load_config = true;
// }
// else {
// m_bambuslicer_generator_version = Semver::parse("0.0.0.0");
// dont_load_config = true;
// }
// we then loop again the entries to read other files stored in the archive
for (mz_uint i = 0; i < num_entries; ++i) {

View file

@ -5948,7 +5948,8 @@ inline std::string polygon_to_string(const Polygon &polygon, Print *print, bool
// this id is used to generate unique object id for each object.
std::string GCode::set_object_info(Print *print) {
const auto gflavor = print->config().gcode_flavor.value;
if (gflavor != gcfKlipper && gflavor != gcfMarlinLegacy && gflavor != gcfMarlinFirmware && gflavor != gcfRepRapFirmware)
if (print->is_BBL_printer() ||
(gflavor != gcfKlipper && gflavor != gcfMarlinLegacy && gflavor != gcfMarlinFirmware && gflavor != gcfRepRapFirmware))
return "";
std::ostringstream gcode;
size_t object_id = 0;

View file

@ -878,7 +878,7 @@ static std::vector<std::string> s_Preset_printer_options {
"cooling_tube_retraction",
"cooling_tube_length", "high_current_on_filament_swap", "parking_pos_retraction", "extra_loading_move", "purge_in_prime_tower", "enable_filament_ramming",
"z_offset",
"disable_m73", "preferred_orientation", "emit_machine_limits_to_gcode"
"disable_m73", "preferred_orientation", "emit_machine_limits_to_gcode", "support_multi_bed_types"
};
static std::vector<std::string> s_Preset_sla_print_options {

View file

@ -294,6 +294,7 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|| opt_key == "enable_filament_ramming"
|| opt_key == "purge_in_prime_tower"
|| opt_key == "z_offset"
|| opt_key == "support_multi_bed_types"
) {
steps.emplace_back(psWipeTower);
steps.emplace_back(psSkirtBrim);

View file

@ -2355,6 +2355,12 @@ def = this->add("filament_loading_speed", coFloats);
def->readonly = false;
def->set_default_value(new ConfigOptionEnum<GCodeFlavor>(gcfMarlinLegacy));
def = this->add("support_multi_bed_types", coBool);
def->label = L("Support multi bed types");
def->tooltip = L("Enable this option if you want to use multiple bed types");
def->mode = comSimple;
def->set_default_value(new ConfigOptionBool(false));
def = this->add("gcode_label_objects", coBool);
def->label = L("Label objects");
def->tooltip = L("Enable this to add comments into the G-Code labeling print moves with what object they belong to,"

View file

@ -1051,6 +1051,7 @@ PRINT_CONFIG_CLASS_DEFINE(
((ConfigOptionFloats, filament_multitool_ramming_flow))
((ConfigOptionBool, purge_in_prime_tower))
((ConfigOptionBool, enable_filament_ramming))
((ConfigOptionBool, support_multi_bed_types))
)

View file

@ -2013,7 +2013,11 @@ void GLCanvas3D::render_thumbnail(ThumbnailData& thumbnail_data, unsigned int w,
void GLCanvas3D::render_thumbnail(ThumbnailData& thumbnail_data, unsigned int w, unsigned int h, const ThumbnailsParams& thumbnail_params,
const GLVolumeCollection& volumes, Camera::EType camera_type, bool use_top_view, bool for_picking)
{
GLShaderProgram* shader = wxGetApp().get_shader("thumbnail");
GLShaderProgram* shader = nullptr;
if (for_picking)
shader = wxGetApp().get_shader("flat");
else
shader = wxGetApp().get_shader("thumbnail");
ModelObjectPtrs& model_objects = GUI::wxGetApp().model().objects;
std::vector<ColorRGBA> colors = ::get_extruders_colors();
switch (OpenGLManager::get_framebuffers_type())
@ -5678,6 +5682,7 @@ void GLCanvas3D::render_thumbnail_internal(ThumbnailData& thumbnail_data, const
//if (OpenGLManager::can_multisample())
// This flag is often ignored by NVIDIA drivers if rendering into a screen buffer.
// glsafe(::glDisable(GL_MULTISAMPLE));
shader->start_using();
glsafe(::glDisable(GL_BLEND));
@ -5709,8 +5714,6 @@ void GLCanvas3D::render_thumbnail_internal(ThumbnailData& thumbnail_data, const
const Transform3d model_matrix = vol->world_matrix();
shader->set_uniform("view_model_matrix", view_matrix * model_matrix);
shader->set_uniform("projection_matrix", projection_matrix);
const Matrix3d view_normal_matrix = view_matrix.matrix().block(0, 0, 3, 3) * model_matrix.matrix().block(0, 0, 3, 3).inverse().transpose();
shader->set_uniform("view_normal_matrix", view_normal_matrix);
vol->simple_render(shader, model_objects, extruder_colors);
vol->is_active = is_active;
}

View file

@ -114,47 +114,15 @@ void SendJob::process(Ctl &ctl)
unsigned int http_code;
std::string http_body;
// local print access
params.dev_ip = m_dev_ip;
params.username = "bblp";
params.password = m_access_code;
params.use_ssl_for_ftp = m_local_use_ssl_for_ftp;
params.use_ssl_for_mqtt = m_local_use_ssl_for_mqtt;
// check access code and ip address
params.dev_id = m_dev_id;
params.project_name = "verify_job";
params.filename = job_data._temp_path.string();
params.connection_type = this->connection_type;
result = m_agent->start_send_gcode_to_sdcard(params, nullptr, nullptr, nullptr);
if (result != 0) {
BOOST_LOG_TRIVIAL(error) << "access code is invalid";
m_enter_ip_address_fun_fail(result);
m_job_finished = true;
return;
}
else if(m_is_check_mode && !m_check_and_continue){
m_enter_ip_address_fun_success();
m_job_finished = true;
return;
}
/* display info */
msg = _u8L("Sending gcode file over LAN");
/* if (this->connection_type == "lan") {
msg = _u8L("Sending gcode file over LAN");
if (this->connection_type == "lan") {
msg = _u8L("Sending print job over LAN");
}
else {
msg = _u8L("Sending gcode file through cloud service");
}*/
msg = _u8L("Sending print job through cloud service");
}
ctl.call_on_main_thread([this] { prepare(); }).wait();
ctl.update_status(0, msg);
int total_plate_num = m_plater->get_partplate_list().get_plate_count();
PartPlate* plate = m_plater->get_partplate_list().get_plate(job_data.plate_idx);

View file

@ -19,6 +19,7 @@
///|/
#include "Plater.hpp"
#include "libslic3r/Config.hpp"
#include "libslic3r_version.h"
#include <cstddef>
#include <algorithm>
@ -1132,6 +1133,7 @@ void Sidebar::update_all_preset_comboboxes()
// Orca:: show device tab based on vendor type
auto p_mainframe = wxGetApp().mainframe;
p_mainframe->show_device(is_bbl_vendor);
auto cfg = preset_bundle.printers.get_edited_preset().config;
if (is_bbl_vendor) {
//only show connection button for not-BBL printer
@ -1140,32 +1142,9 @@ void Sidebar::update_all_preset_comboboxes()
ams_btn->Show();
//update print button default value for bbl or third-party printer
p_mainframe->set_print_button_to_default(MainFrame::PrintSelectType::ePrintPlate);
AppConfig* config = wxGetApp().app_config;
if (config && !config->get("curr_bed_type").empty()) {
int bed_type_idx = 0;
std::string str_bed_type = config->get("curr_bed_type");
int bed_type_value = (int)btPC;
try {
bed_type_value = atoi(str_bed_type.c_str());
} catch(...) {}
bed_type_idx = bed_type_value - 1;
m_bed_type_list->SelectAndNotify(bed_type_idx);
} else {
BedType bed_type = preset_bundle.printers.get_edited_preset().get_default_bed_type(&preset_bundle);
m_bed_type_list->SelectAndNotify((int)bed_type - 1);
}
m_bed_type_list->Enable();
auto str_bed_type = wxGetApp().app_config->get_printer_setting(wxGetApp().preset_bundle->printers.get_selected_preset_name(), "curr_bed_type");
if(!str_bed_type.empty()){
int bed_type_value = atoi(str_bed_type.c_str());
if(bed_type_value == 0)
bed_type_value = 1;
m_bed_type_list->SelectAndNotify(bed_type_value - 1);
}
} else {
connection_btn->Show();
ams_btn->Hide();
auto cfg = preset_bundle.printers.get_edited_preset().config;
auto print_btn_type = MainFrame::PrintSelectType::eExportGcode;
wxString url = cfg.opt_string("print_host_webui").empty() ? cfg.opt_string("print_host") : cfg.opt_string("print_host_webui");
if(!url.empty())
@ -1182,7 +1161,23 @@ void Sidebar::update_all_preset_comboboxes()
}
p_mainframe->set_print_button_to_default(print_btn_type);
m_bed_type_list->SelectAndNotify(btPEI-1);
}
if (is_bbl_vendor || cfg.opt_bool("support_multi_bed_types")) {
m_bed_type_list->Enable();
auto str_bed_type = wxGetApp().app_config->get_printer_setting(wxGetApp().preset_bundle->printers.get_selected_preset_name(),
"curr_bed_type");
if (!str_bed_type.empty()) {
int bed_type_value = atoi(str_bed_type.c_str());
if (bed_type_value == 0)
bed_type_value = 1;
m_bed_type_list->SelectAndNotify(bed_type_value - 1);
} else {
BedType bed_type = preset_bundle.printers.get_edited_preset().get_default_bed_type(&preset_bundle);
m_bed_type_list->SelectAndNotify((int) bed_type - 1);
}
} else {
m_bed_type_list->SelectAndNotify(btPEI - 1);
m_bed_type_list->Disable();
}
@ -3492,69 +3487,71 @@ std::vector<size_t> Plater::priv::load_files(const std::vector<fs::path>& input_
load_type = static_cast<LoadType>(std::stoi(import_project_action));
// BBS: version check
Semver app_version = *(Semver::parse(SLIC3R_VERSION));
Semver app_version = *(Semver::parse(SoftFever_VERSION));
if (en_3mf_file_type == En3mfType::From_Prusa) {
// do not reset the model config
load_config = false;
if(load_type != LoadType::LoadGeometry)
show_info(q, _L("The 3mf is not supported by OrcaSlicer, load geometry data only."), _L("Load 3mf"));
}
else if (load_config && (file_version.maj() != app_version.maj())) {
// version mismatch, only load geometries
load_config = false;
if (!load_model) {
// only load config case, return directly
show_info(q, _L("The Config can not be loaded."), _L("Load 3mf"));
q->skip_thumbnail_invalid = false;
return empty_result;
}
load_old_project = true;
// select view to 3D
q->select_view_3D("3D");
// select plate 0 as default
q->select_plate(0);
if (load_type != LoadType::LoadGeometry) {
if (en_3mf_file_type == En3mfType::From_BBS)
show_info(q, _L("The 3mf is generated by old Orca Slicer, load geometry data only."), _L("Load 3mf"));
else
show_info(q, _L("The 3mf is not supported by OrcaSlicer, load geometry data only."), _L("Load 3mf"));
}
for (ModelObject *model_object : model.objects) {
model_object->config.reset();
// Is there any modifier or advanced config data?
for (ModelVolume *model_volume : model_object->volumes) model_volume->config.reset();
}
}
// else if (load_config && (file_version > app_version)) {
// if (config_substitutions.unrecogized_keys.size() > 0) {
// wxString text = wxString::Format(_L("The 3mf's version %s is newer than %s's version %s, Found following keys unrecognized:"),
// file_version.to_string(), std::string(SLIC3R_APP_FULL_NAME), app_version.to_string());
// text += "\n";
// bool first = true;
// // std::string context = into_u8(text);
// wxString context = text;
// else if (load_config && (file_version.maj() != app_version.maj())) {
// // version mismatch, only load geometries
// load_config = false;
// if (!load_model) {
// // only load config case, return directly
// show_info(q, _L("The Config can not be loaded."), _L("Load 3mf"));
// q->skip_thumbnail_invalid = false;
// return empty_result;
// }
// load_old_project = true;
// // select view to 3D
// q->select_view_3D("3D");
// // select plate 0 as default
// q->select_plate(0);
// if (load_type != LoadType::LoadGeometry) {
// if (en_3mf_file_type == En3mfType::From_BBS)
// show_info(q, _L("The 3mf is generated by old Orca Slicer, load geometry data only."), _L("Load 3mf"));
// else
// show_info(q, _L("The 3mf is not supported by OrcaSlicer, load geometry data only."), _L("Load 3mf"));
// }
// for (ModelObject *model_object : model.objects) {
// model_object->config.reset();
// // Is there any modifier or advanced config data?
// for (ModelVolume *model_volume : model_object->volumes) model_volume->config.reset();
// }
// }
else if (load_config && (file_version > app_version)) {
if (config_substitutions.unrecogized_keys.size() > 0) {
wxString text = wxString::Format(_L("The 3mf's version %s is newer than %s's version %s, Found following keys unrecognized:"),
file_version.to_string(), std::string(SLIC3R_APP_FULL_NAME), app_version.to_string());
text += "\n";
bool first = true;
// std::string context = into_u8(text);
wxString context = text;
// if (wxGetApp().app_config->get("user_mode") == "develop") {
// for (auto &key : config_substitutions.unrecogized_keys) {
// context += " -";
// context += key;
// context += ";\n";
// first = false;
// }
// wxString append = _L("You'd better upgrade your software.\n");
// context += "\n\n";
// // context += into_u8(append);
// context += append;
// show_info(q, context, _L("Newer 3mf version"));
// }
// else {
// //if the minor version is not matched
// if (file_version.min() != app_version.min()) {
// wxString text = wxString::Format(_L("The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your software."),
// file_version.to_string(), std::string(SLIC3R_APP_FULL_NAME), app_version.to_string());
// text += "\n";
// show_info(q, text, _L("Newer 3mf version"));
// }
// }
// }
wxString append = _L("You'd better upgrade your software.\n");
context += "\n\n";
// context += into_u8(append);
context += append;
show_info(q, context, _L("Newer 3mf version"));
}
else {
//if the minor version is not matched
if (file_version.min() != app_version.min()) {
wxString text = wxString::Format(_L("The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your software."),
file_version.to_string(), std::string(SLIC3R_APP_FULL_NAME), app_version.to_string());
text += "\n";
show_info(q, text, _L("Newer 3mf version"));
}
}
}
else if (!load_config) {
// reset config except color
for (ModelObject *model_object : model.objects) {

View file

@ -3084,6 +3084,7 @@ void TabFilament::build()
line.append_option(optgroup->get_option("nozzle_temperature"));
optgroup->append_line(line);
optgroup = page->new_optgroup(L("Bed temperature"), L"param_temperature");
line = { L("Cool plate"), L("Bed temperature when cool plate is installed. Value 0 means the filament does not support to print on the Cool Plate") };
line.append_option(optgroup->get_option("cool_plate_temp_initial_layer"));
line.append_option(optgroup->get_option("cool_plate_temp"));
@ -3337,23 +3338,22 @@ void TabFilament::toggle_options()
wxGetApp().preset_bundle->is_bbl_vendor();
}
auto cfg = m_preset_bundle->printers.get_edited_preset().config;
if (m_active_page->title() == L("Cooling")) {
bool has_enable_overhang_bridge_fan = m_config->opt_bool("enable_overhang_bridge_fan", 0);
for (auto el : {"overhang_fan_speed", "overhang_fan_threshold"})
toggle_option(el, has_enable_overhang_bridge_fan);
toggle_option(
"additional_cooling_fan_speed",
m_preset_bundle->printers.get_edited_preset().config.option<ConfigOptionBool>("auxiliary_fan")->value);
toggle_option("additional_cooling_fan_speed", cfg.opt_bool("auxiliary_fan"));
}
if (m_active_page->title() == L("Filament"))
{
bool pa = m_config->opt_bool("enable_pressure_advance", 0);
toggle_option("pressure_advance", pa);
toggle_line("cool_plate_temp_initial_layer", is_BBL_printer);
toggle_line("eng_plate_temp_initial_layer", is_BBL_printer);
toggle_line("textured_plate_temp_initial_layer", is_BBL_printer);
auto support_multi_bed_types = is_BBL_printer || cfg.opt_bool("support_multi_bed_types");
toggle_line("cool_plate_temp_initial_layer", support_multi_bed_types );
toggle_line("eng_plate_temp_initial_layer", support_multi_bed_types);
toggle_line("textured_plate_temp_initial_layer", support_multi_bed_types);
}
if (m_active_page->title() == L("Setting Overrides"))
@ -3466,6 +3466,7 @@ void TabPrinter::build_fff()
optgroup->append_single_option_line(option);
// optgroup->append_single_option_line("printable_area");
optgroup->append_single_option_line("printable_height");
optgroup->append_single_option_line("support_multi_bed_types");
optgroup->append_single_option_line("nozzle_volume");
optgroup->append_single_option_line("best_object_pos");
optgroup->append_single_option_line("z_offset");
@ -4128,7 +4129,7 @@ void TabPrinter::toggle_options()
toggle_line(el, is_BBL_printer);
// SoftFever: hide non-BBL settings
for (auto el : {"use_firmware_retraction", "use_relative_e_distances"})
for (auto el : {"use_firmware_retraction", "use_relative_e_distances", "support_multi_bed_types"})
toggle_line(el, !is_BBL_printer);
}