Compare commits
52 Commits
v1.6.0
...
v1.6.2-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4a288c617c | ||
|
|
e74d366791 | ||
|
|
656101dc79 | ||
|
|
661e79ca8c | ||
|
|
1852dec00e | ||
|
|
60adc6c5dc | ||
|
|
35725a23e6 | ||
|
|
44df0d8308 | ||
|
|
e7ee0effa2 | ||
|
|
d4b59ff52b | ||
|
|
7f12c18a4a | ||
|
|
9671cdfc68 | ||
|
|
8127f27d79 | ||
|
|
f5d82ee906 | ||
|
|
099ed10144 | ||
|
|
c25ac3829f | ||
|
|
a731241e9c | ||
|
|
b8c79d029a | ||
|
|
75567f3c3c | ||
|
|
65e397767c | ||
|
|
07d048ef36 | ||
|
|
ef3614a21a | ||
|
|
4976e4f91f | ||
|
|
ab6a77ddf3 | ||
|
|
cb22560d38 | ||
|
|
87ba3263cc | ||
|
|
0d20f13196 | ||
|
|
1dec3fe9cb | ||
|
|
793b6d2006 | ||
|
|
3f7ed3829c | ||
|
|
35d8c101fb | ||
|
|
094611a17c | ||
|
|
5c9012b967 | ||
|
|
5a2606a289 | ||
|
|
17d6e63cf9 | ||
|
|
078f240995 | ||
|
|
970d31c058 | ||
|
|
0c8b596c48 | ||
|
|
f983610827 | ||
|
|
23165b8f3e | ||
|
|
5d1c36c7d4 | ||
|
|
d9cdafbaa0 | ||
|
|
5c439c4acc | ||
|
|
81a0edbf3f | ||
|
|
be71e50be7 | ||
|
|
da558a8aea | ||
|
|
4446ae86ec | ||
|
|
7d582a9455 | ||
|
|
0ab05bacb7 | ||
|
|
f9f2148cf8 | ||
|
|
f0f1608b5a | ||
|
|
8c1e7eeb35 |
4
.github/workflows/build_win.yml
vendored
@@ -20,11 +20,11 @@ jobs:
|
||||
- run: mkdir ${{ github.workspace }}/deps/build/OrcaSlicer_dep
|
||||
- name: download deps
|
||||
shell: powershell
|
||||
run: '(new-object System.Net.WebClient).DownloadFile("https://github.com/SoftFever/FileSharing/releases/download/OrcaSlicer_deps_Mar/OrcaSlicer_dep_12Mar2023.zip", "$env:temp\OrcaSlicer_dep_12Mar2023.zip")'
|
||||
run: '(new-object System.Net.WebClient).DownloadFile("https://github.com/SoftFever/FileSharing/releases/download/OrcaSlicer_deps_Mar/OrcaSlicer_dep_10April2023.zip", "$env:temp\OrcaSlicer_dep_10April2023.zip")'
|
||||
- name: extract deps
|
||||
working-directory: ${{ github.workspace }}/deps/build
|
||||
shell: cmd
|
||||
run: '"C:/Program Files/7-Zip/7z.exe" x %temp%\OrcaSlicer_dep_12Mar2023.zip'
|
||||
run: '"C:/Program Files/7-Zip/7z.exe" x %temp%\OrcaSlicer_dep_10April2023.zip'
|
||||
|
||||
- run: dir "${{ github.workspace }}\deps\build\OrcaSlicer_dep"
|
||||
|
||||
|
||||
11
README.md
@@ -59,6 +59,17 @@ Prebuilt binaries are available through the [github releases page](https://githu
|
||||
- run `BuildLinux.sh -udisr`
|
||||
|
||||
|
||||
# Note:
|
||||
If you're running Klipper, it's recommended to add the following configuration to your `printer.cfg` file.
|
||||
```
|
||||
# Enable object exclusion
|
||||
[exclude_object]
|
||||
|
||||
# Enable arcs support
|
||||
[gcode_arcs]
|
||||
resolution: 0.1
|
||||
```
|
||||
|
||||
# License
|
||||
Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab.
|
||||
|
||||
|
||||
6
deps/wxWidgets/wxWidgets.cmake
vendored
@@ -1,15 +1,13 @@
|
||||
set(_wx_git_tag v3.1.5)
|
||||
|
||||
set(_wx_toolkit "")
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(_wx_private_font "-DwxUSE_PRIVATE_FONTS=1")
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(_gtk_ver 2)
|
||||
if (DEP_WX_GTK3)
|
||||
set(_gtk_ver 3)
|
||||
endif ()
|
||||
set(_wx_toolkit "-DwxBUILD_TOOLKIT=gtk${_gtk_ver}")
|
||||
set(_wx_private_font "-DwxUSE_PRIVATE_FONTS=1")
|
||||
else ()
|
||||
set(_wx_private_font "-DwxUSE_PRIVATE_FONTS=0")
|
||||
endif()
|
||||
|
||||
if (MSVC)
|
||||
|
||||
BIN
resources/handy_models/OrcaCube_v2.3mf
Normal file
|
Before Width: | Height: | Size: 21 KiB |
BIN
resources/images/OrcaSlicer.ico
Normal file
|
After Width: | Height: | Size: 218 KiB |
@@ -23,7 +23,7 @@
|
||||
"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",
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
"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",
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
"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",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "Bambulab",
|
||||
"url": "http://www.bambulab.com/Parameters/vendor/BBL.json",
|
||||
"version": "01.06.00.01",
|
||||
"version": "01.06.00.02",
|
||||
"force_update": "0",
|
||||
"description": "the initial version of BBL configurations",
|
||||
"machine_model_list": [
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
"machine_unload_filament_time": "28",
|
||||
"nozzle_type": "stainless_steel",
|
||||
"nozzle_hrc": "20",
|
||||
"auxiliary_fan": "0",
|
||||
"auxiliary_fan": "1",
|
||||
"upward_compatible_machine":[
|
||||
"Bambu Lab X1 0.4 nozzle",
|
||||
"Bambu Lab X1 Carbon 0.4 nozzle"
|
||||
|
||||
110
resources/profiles/FLSun.json
Normal file
@@ -0,0 +1,110 @@
|
||||
{
|
||||
"name": "FLSun",
|
||||
"version": "01.06.00.00",
|
||||
"force_update": "0",
|
||||
"description": "FLSun configurations",
|
||||
"machine_model_list": [
|
||||
{
|
||||
"name": "FLSun V400",
|
||||
"sub_path": "machine/FLSun V400.json"
|
||||
}
|
||||
],
|
||||
"process_list": [
|
||||
{
|
||||
"name": "fdm_process_common",
|
||||
"sub_path": "process/fdm_process_common.json"
|
||||
},
|
||||
{
|
||||
"name": "0.20mm Standard @FLSun",
|
||||
"sub_path": "process/0.20mm Standard @FLSun.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": "FLSun Generic PLA",
|
||||
"sub_path": "filament/FLSun Generic PLA.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic PLA-CF",
|
||||
"sub_path": "filament/FLSun Generic PLA-CF.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic PETG",
|
||||
"sub_path": "filament/FLSun Generic PETG.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic ABS",
|
||||
"sub_path": "filament/FLSun Generic ABS.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic TPU",
|
||||
"sub_path": "filament/FLSun Generic TPU.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic ASA",
|
||||
"sub_path": "filament/FLSun Generic ASA.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic PC",
|
||||
"sub_path": "filament/FLSun Generic PC.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic PVA",
|
||||
"sub_path": "filament/FLSun Generic PVA.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic PA",
|
||||
"sub_path": "filament/FLSun Generic PA.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun Generic PA-CF",
|
||||
"sub_path": "filament/FLSun Generic PA-CF.json"
|
||||
}
|
||||
],
|
||||
"machine_list": [
|
||||
{
|
||||
"name": "fdm_machine_common",
|
||||
"sub_path": "machine/fdm_machine_common.json"
|
||||
},
|
||||
{
|
||||
"name": "FLSun V400 0.4 nozzle",
|
||||
"sub_path": "machine/FLSun V400 0.4 nozzle.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
59
resources/profiles/FLSun/V400.svg
Normal file
|
After Width: | Height: | Size: 12 KiB |
18
resources/profiles/FLSun/filament/FLSun Generic ABS.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB99",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun Generic ABS",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_abs",
|
||||
"filament_flow_ratio": [
|
||||
"0.926"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
18
resources/profiles/FLSun/filament/FLSun Generic ASA.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB98",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun Generic ASA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_asa",
|
||||
"filament_flow_ratio": [
|
||||
"0.93"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
24
resources/profiles/FLSun/filament/FLSun Generic PA-CF.json
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN98",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun 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": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
21
resources/profiles/FLSun/filament/FLSun Generic PA.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN99",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun 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": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
18
resources/profiles/FLSun/filament/FLSun Generic PC.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFC99",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun Generic PC",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pc",
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.94"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
48
resources/profiles/FLSun/filament/FLSun Generic PETG.json
Normal file
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFG99",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun 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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"10"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
24
resources/profiles/FLSun/filament/FLSun Generic PLA-CF.json
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL98",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun 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": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
21
resources/profiles/FLSun/filament/FLSun Generic PLA.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL99",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun 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": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
24
resources/profiles/FLSun/filament/FLSun Generic PVA.json
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFS99",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun 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": [
|
||||
"10"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
15
resources/profiles/FLSun/filament/FLSun Generic TPU.json
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFU99",
|
||||
"setting_id": "GFSA04",
|
||||
"name": "FLSun Generic TPU",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_tpu",
|
||||
"filament_max_volumetric_speed": [
|
||||
"3.2"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
82
resources/profiles/FLSun/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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"3"
|
||||
]
|
||||
}
|
||||
82
resources/profiles/FLSun/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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"3"
|
||||
]
|
||||
}
|
||||
138
resources/profiles/FLSun/filament/fdm_filament_common.json
Normal file
@@ -0,0 +1,138 @@
|
||||
{
|
||||
"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_z_hop_types": [
|
||||
"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/FLSun/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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"2"
|
||||
]
|
||||
}
|
||||
82
resources/profiles/FLSun/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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"2"
|
||||
]
|
||||
}
|
||||
76
resources/profiles/FLSun/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/FLSun/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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
||||
94
resources/profiles/FLSun/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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"4"
|
||||
],
|
||||
"additional_cooling_fan_speed": [
|
||||
"70"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
]
|
||||
}
|
||||
82
resources/profiles/FLSun/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"
|
||||
]
|
||||
}
|
||||
99
resources/profiles/FLSun/machine/FLSun V400 0.4 nozzle.json
Normal file
@@ -0,0 +1,99 @@
|
||||
{
|
||||
"type": "machine",
|
||||
"setting_id": "GM003",
|
||||
"name": "FLSun V400 0.4 nozzle",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_machine_common",
|
||||
"printer_model": "FLSun V400",
|
||||
"default_print_profile": "0.20mm Standard @FLSun",
|
||||
"gcode_flavor": "klipper",
|
||||
"nozzle_diameter": [
|
||||
"0.4"
|
||||
],
|
||||
"bed_exclude_area": [
|
||||
"0x0"
|
||||
],
|
||||
"printable_area": [
|
||||
"149.429x13.0734",
|
||||
"147.721x26.0472",
|
||||
"144.889x38.8229",
|
||||
"140.954x51.303",
|
||||
"135.946x63.3927",
|
||||
"129.904x75",
|
||||
"122.873x86.0365",
|
||||
"114.907x96.4181",
|
||||
"106.066x106.066",
|
||||
"96.4181x114.907",
|
||||
"86.0365x122.873",
|
||||
"75x129.904",
|
||||
"63.3927x135.946",
|
||||
"51.303x140.954",
|
||||
"38.8229x144.889",
|
||||
"26.0472x147.721",
|
||||
"13.0734x149.429",
|
||||
"9.18485e-15x150",
|
||||
"-13.0734x149.429",
|
||||
"-26.0472x147.721",
|
||||
"-38.8229x144.889",
|
||||
"-51.303x140.954",
|
||||
"-63.3927x135.946",
|
||||
"-75x129.904",
|
||||
"-86.0365x122.873",
|
||||
"-96.4181x114.907",
|
||||
"-106.066x106.066",
|
||||
"-114.907x96.4181",
|
||||
"-122.873x86.0365",
|
||||
"-129.904x75",
|
||||
"-135.946x63.3927",
|
||||
"-140.954x51.303",
|
||||
"-144.889x38.8229",
|
||||
"-147.721x26.0472",
|
||||
"-149.429x13.0734",
|
||||
"-150x1.83697e-14",
|
||||
"-149.429x-13.0734",
|
||||
"-147.721x-26.0472",
|
||||
"-144.889x-38.8229",
|
||||
"-140.954x-51.303",
|
||||
"-135.946x-63.3927",
|
||||
"-129.904x-75",
|
||||
"-122.873x-86.0365",
|
||||
"-114.907x-96.4181",
|
||||
"-106.066x-106.066",
|
||||
"-96.4181x-114.907",
|
||||
"-86.0365x-122.873",
|
||||
"-75x-129.904",
|
||||
"-63.3927x-135.946",
|
||||
"-51.303x-140.954",
|
||||
"-38.8229x-144.889",
|
||||
"-26.0472x-147.721",
|
||||
"-13.0734x-149.429",
|
||||
"-2.75546e-14x-150",
|
||||
"13.0734x-149.429",
|
||||
"26.0472x-147.721",
|
||||
"38.8229x-144.889",
|
||||
"51.303x-140.954",
|
||||
"63.3927x-135.946",
|
||||
"75x-129.904",
|
||||
"86.0365x-122.873",
|
||||
"96.4181x-114.907",
|
||||
"106.066x-106.066",
|
||||
"114.907x-96.4181",
|
||||
"122.873x-86.0365",
|
||||
"129.904x-75",
|
||||
"135.946x-63.3927",
|
||||
"140.954x-51.303",
|
||||
"144.889x-38.8229",
|
||||
"147.721x-26.0472",
|
||||
"149.429x-13.0734",
|
||||
"150x-3.67394e-14"
|
||||
],
|
||||
"printable_height": "410",
|
||||
"machine_end_gcode": "M107 T0\nM104 S0\nM104 S0 T1\nM140 S0\nG92 E0\nG91\nG1 E-1 F300\nG1 Z+0.5 F6000\nG28 \nG90 ;absolute positioning",
|
||||
"machine_start_gcode": "G21\nG90\nM82\nM107 T0\nM140 S[bed_temperature_initial_layer_single]\nM104 S[nozzle_temperature_initial_layer] T0\nM190 S[bed_temperature_initial_layer_single]\nM109 S[nozzle_temperature_initial_layer] T0\nG28\nG1 F3000 Z1\nG1 X-150 Y0 Z0.4\nG92 E0\nG3 X0 Y-130 I150 Z0.3 E30 F2000\nG92 E0",
|
||||
"layer_change_gcode": "",
|
||||
"scan_first_layer": "0",
|
||||
"nozzle_type": "hardened_steel",
|
||||
"auxiliary_fan": "0"
|
||||
}
|
||||
|
||||
12
resources/profiles/FLSun/machine/FLSun V400.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"type": "machine_model",
|
||||
"name": "FLSun V400",
|
||||
"model_id": "FLSun_V400",
|
||||
"nozzle_diameter": "0.4",
|
||||
"machine_tech": "FFF",
|
||||
"family": "FLSun",
|
||||
"bed_model": "",
|
||||
"bed_texture": "V400.svg",
|
||||
"hotend_model": "",
|
||||
"default_materials": "FLSun Generic ABS;FLSun Generic PLA;FLSun Generic PLA-CF;FLSun Generic PETG;FLSun Generic TPU;FLSun Generic ASA;FLSun Generic PC;FLSun Generic PVA;FLSun Generic PA;FLSun Generic PA-CF"
|
||||
}
|
||||
139
resources/profiles/FLSun/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": ";AFTER_LAYER_CHANGE\n;[layer_z]",
|
||||
"machine_pause_gcode": "M400 U1\n",
|
||||
"wipe": [
|
||||
"1"
|
||||
],
|
||||
"z_hop_types": "Normal Lift"
|
||||
}
|
||||
20
resources/profiles/FLSun/process/0.20mm Standard @FLSun.json
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"type": "process",
|
||||
"setting_id": "GP004",
|
||||
"name": "0.20mm Standard @FLSun",
|
||||
"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": [
|
||||
"FLSun V400 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
108
resources/profiles/FLSun/process/fdm_process_common.json
Normal file
@@ -0,0 +1,108 @@
|
||||
{
|
||||
"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",
|
||||
|
||||
"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": "3",
|
||||
"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": "monotonic",
|
||||
"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",
|
||||
"exclude_object" : "0"
|
||||
|
||||
}
|
||||
@@ -23,7 +23,7 @@
|
||||
"bridge_no_support": "0",
|
||||
"draft_shield": "disabled",
|
||||
"elefant_foot_compensation": "0",
|
||||
"enable_arc_fitting": "1",
|
||||
"enable_arc_fitting": "0",
|
||||
"outer_wall_line_width": "0.4",
|
||||
"wall_infill_order": "inner wall/outer wall/infill",
|
||||
"line_width": "0.4",
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
"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",
|
||||
|
||||
@@ -11,6 +11,10 @@
|
||||
{
|
||||
"name": "Snapmaker A350",
|
||||
"sub_path": "machine/Snapmaker A350.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1",
|
||||
"sub_path": "machine/Snapmaker J1.json"
|
||||
}
|
||||
],
|
||||
"process_list": [
|
||||
@@ -21,6 +25,14 @@
|
||||
{
|
||||
"name": "0.20mm Standard @Snapmaker",
|
||||
"sub_path": "process/0.20mm Standard @Snapmaker.json"
|
||||
},
|
||||
{
|
||||
"name": "0.20mm 0.4 Standard @Snapmaker J1",
|
||||
"sub_path": "process/0.20mm 0.4 Standard @Snapmaker J1.json"
|
||||
},
|
||||
{
|
||||
"name": "0.20mm 0.6 Standard @Snapmaker J1",
|
||||
"sub_path": "process/0.20mm 0.6 Standard @Snapmaker J1.json"
|
||||
}
|
||||
],
|
||||
"filament_list": [
|
||||
@@ -99,6 +111,46 @@
|
||||
{
|
||||
"name": "Snapmaker Generic PA-CF",
|
||||
"sub_path": "filament/Snapmaker Generic PA-CF.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 PLA",
|
||||
"sub_path": "filament/Snapmaker J1 PLA.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 PLA-CF",
|
||||
"sub_path": "filament/Snapmaker J1 PLA-CF.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 PETG",
|
||||
"sub_path": "filament/Snapmaker J1 PETG.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 ABS",
|
||||
"sub_path": "filament/Snapmaker J1 ABS.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 TPU",
|
||||
"sub_path": "filament/Snapmaker J1 TPU.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 ASA",
|
||||
"sub_path": "filament/Snapmaker J1 ASA.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 PC",
|
||||
"sub_path": "filament/Snapmaker J1 PC.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 PVA",
|
||||
"sub_path": "filament/Snapmaker J1 PVA.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 PA",
|
||||
"sub_path": "filament/Snapmaker J1 PA.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 PA-CF",
|
||||
"sub_path": "filament/Snapmaker J1 PA-CF.json"
|
||||
}
|
||||
],
|
||||
"machine_list": [
|
||||
@@ -113,6 +165,14 @@
|
||||
{
|
||||
"name": "Snapmaker A350 0.4 nozzle",
|
||||
"sub_path": "machine/Snapmaker A350 0.4 nozzle.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 0.4 nozzle",
|
||||
"sub_path": "machine/Snapmaker J1 0.4 nozzle.json"
|
||||
},
|
||||
{
|
||||
"name": "Snapmaker J1 0.6 nozzle",
|
||||
"sub_path": "machine/Snapmaker J1 0.6 nozzle.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
186
resources/profiles/Snapmaker/J1_texture.svg
Normal file
@@ -0,0 +1,186 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" sodipodi:docname="j1 (googliola).svg" inkscape:export-ydpi="96" inkscape:export-xdpi="96" inkscape:export-filename="j1.svg" xml:space="preserve" id="svg5" version="1.1" viewBox="0 0 300 200" height="200mm" width="300mm" inkscape:version="1.2.2 (732a01da63, 2022-12-09)">
|
||||
<defs id="defs2">
|
||||
<clipPath id="clipPath16">
|
||||
<path d="M 0,858.9 H 1207.6 V 0 H 0 Z" id="path362"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
<g inkscape:label="GridCartesian:X30:Y20" id="g15224" style="display:inline">
|
||||
<g inkscape:label="MajorXGridlines" id="g15076" style="display:inline">
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 10,0 V 200" inkscape:label="MajorXDiv1" id="path15018"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 20,0 V 200" inkscape:label="MajorXDiv2" id="path15020"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 30,0 V 200" inkscape:label="MajorXDiv3" id="path15022"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 40,0 V 200" inkscape:label="MajorXDiv4" id="path15024"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 50,0 V 200" inkscape:label="MajorXDiv5" id="path15026"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 60,0 V 200" inkscape:label="MajorXDiv6" id="path15028"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 70,0 V 200" inkscape:label="MajorXDiv7" id="path15030"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 80,0 V 200" inkscape:label="MajorXDiv8" id="path15032"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 90,0 V 200" inkscape:label="MajorXDiv9" id="path15034"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 100,0 V 200" inkscape:label="MajorXDiv10" id="path15036"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 110,0 V 200" inkscape:label="MajorXDiv11" id="path15038"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 120,0 V 200" inkscape:label="MajorXDiv12" id="path15040"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 130,0 V 200" inkscape:label="MajorXDiv13" id="path15042"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 140,0 V 200" inkscape:label="MajorXDiv14" id="path15044"/>
|
||||
<path style="display:inline;fill:#00112b;stroke:#0066ff;stroke-width:0.258;stroke-dasharray:1.548, 0.258;stroke-dashoffset:0;stroke-opacity:1" d="M 160,10 V 200" inkscape:label="COPYLINE" id="path15048"/>
|
||||
<path style="fill:none;stroke:#ff0000;stroke-width:0.265;stroke-dasharray:1.59, 0.265;stroke-dashoffset:0;stroke-opacity:1" d="M 150,0 V 190" inkscape:label="MIRRORLINE" id="path15046" sodipodi:nodetypes="cc"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 170,0 V 200" inkscape:label="MajorXDiv17" id="path15050"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 180,0 V 200" inkscape:label="MajorXDiv18" id="path15052"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 190,0 V 200" inkscape:label="MajorXDiv19" id="path15054"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 200,0 V 200" inkscape:label="MajorXDiv20" id="path15056"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 210,0 V 200" inkscape:label="MajorXDiv21" id="path15058"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 220,0 V 200" inkscape:label="MajorXDiv22" id="path15060"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 230,0 V 200" inkscape:label="MajorXDiv23" id="path15062"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 240,0 V 200" inkscape:label="MajorXDiv24" id="path15064"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 250,0 V 200" inkscape:label="MajorXDiv25" id="path15066"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 260,0 V 200" inkscape:label="MajorXDiv26" id="path15068"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 270,0 V 200" inkscape:label="MajorXDiv27" id="path15070"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 280,0 V 200" inkscape:label="MajorXDiv28" id="path15072"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 290,0 V 200" inkscape:label="MajorXDiv29" id="path15074"/>
|
||||
<g aria-label="MIRROR" id="text16399" style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;word-spacing:0px;display:inline;stroke-width:0.264583" inkscape:label="MIRROR" inkscape:transform-center-x="-0.23386084">
|
||||
<path d="m 143.06355,193.62239 h 0.51849 l 0.65629,1.75011 0.65973,-1.75011 h 0.51849 v 2.57176 h -0.33934 v -2.25826 l -0.66318,1.76389 h -0.34968 l -0.66318,-1.76389 v 2.25826 h -0.33762 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal';fill:#ff0000" id="path17403"/>
|
||||
<path d="m 146.10729,193.62239 h 0.34796 v 2.57176 h -0.34796 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal';fill:#ff0000" id="path17405"/>
|
||||
<path d="m 148.36728,194.98837 q 0.11196,0.0379 0.21704,0.16192 0.10679,0.12402 0.21359,0.34106 l 0.35313,0.7028 h -0.3738 l -0.329,-0.65973 q -0.12747,-0.25839 -0.24805,-0.34279 -0.11886,-0.0844 -0.32556,-0.0844 h -0.37896 v 1.08693 h -0.34796 v -2.57176 h 0.78548 q 0.44098,0 0.65802,0.18431 0.21704,0.18431 0.21704,0.55638 0,0.24288 -0.11369,0.40308 -0.11197,0.1602 -0.32728,0.22221 z m -0.87161,-1.08004 v 0.91295 h 0.43752 q 0.2515,0 0.37896,-0.11541 0.1292,-0.11713 0.1292,-0.34279 0,-0.22565 -0.1292,-0.33934 -0.12746,-0.11541 -0.37896,-0.11541 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal';fill:#ff0000" id="path17407"/>
|
||||
<path d="m 150.81846,194.98837 q 0.11197,0.0379 0.21704,0.16192 0.1068,0.12402 0.2136,0.34106 l 0.35312,0.7028 h -0.37379 l -0.32901,-0.65973 q -0.12747,-0.25839 -0.24804,-0.34279 -0.11886,-0.0844 -0.32557,-0.0844 h -0.37896 v 1.08693 h -0.34795 v -2.57176 h 0.78548 q 0.44097,0 0.65801,0.18431 0.21705,0.18431 0.21705,0.55638 0,0.24288 -0.11369,0.40308 -0.11197,0.1602 -0.32729,0.22221 z m -0.87161,-1.08004 v 0.91295 h 0.43753 q 0.25149,0 0.37896,-0.11541 0.12919,-0.11713 0.12919,-0.34279 0,-0.22565 -0.12919,-0.33934 -0.12747,-0.11541 -0.37896,-0.11541 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal';fill:#ff0000" id="path17409"/>
|
||||
<path d="m 153.09395,193.85838 q -0.37896,0 -0.60289,0.28249 -0.22221,0.2825 -0.22221,0.76998 0,0.48576 0.22221,0.76826 0.22393,0.2825 0.60289,0.2825 0.37896,0 0.59945,-0.2825 0.22221,-0.2825 0.22221,-0.76826 0,-0.48748 -0.22221,-0.76998 -0.22049,-0.28249 -0.59945,-0.28249 z m 0,-0.2825 q 0.54088,0 0.86472,0.36346 0.32384,0.36173 0.32384,0.97151 0,0.60806 -0.32384,0.97152 -0.32384,0.36174 -0.86472,0.36174 -0.5426,0 -0.86816,-0.36174 -0.32384,-0.36173 -0.32384,-0.97152 0,-0.60978 0.32384,-0.97151 0.32556,-0.36346 0.86816,-0.36346 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal';fill:#ff0000" id="path17411"/>
|
||||
<path d="m 156.0464,194.98837 q 0.11196,0.0379 0.21704,0.16192 0.1068,0.12402 0.2136,0.34106 l 0.35312,0.7028 h -0.37379 l -0.32901,-0.65973 q -0.12747,-0.25839 -0.24805,-0.34279 -0.11885,-0.0844 -0.32556,-0.0844 h -0.37896 v 1.08693 h -0.34796 v -2.57176 h 0.78549 q 0.44097,0 0.65801,0.18431 0.21704,0.18431 0.21704,0.55638 0,0.24288 -0.11369,0.40308 -0.11196,0.1602 -0.32728,0.22221 z m -0.87161,-1.08004 v 0.91295 h 0.43753 q 0.25149,0 0.37896,-0.11541 0.12919,-0.11713 0.12919,-0.34279 0,-0.22565 -0.12919,-0.33934 -0.12747,-0.11541 -0.37896,-0.11541 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal';fill:#ff0000" id="path17413"/>
|
||||
</g>
|
||||
<g aria-label="COPY" id="text16407" style="font-size:10.5833px;line-height:1.25;letter-spacing:0px;word-spacing:0px;display:inline;fill:#0066ff;stroke-width:0.264583" inkscape:label="COPY" inkscape:transform-center-x="0.54570313" inkscape:transform-center-y="0.66145834">
|
||||
<path d="m 157.69645,3.740946 v 0.3669029 q -0.1757,-0.1636422 -0.37552,-0.244602 -0.19809,-0.08096 -0.42202,-0.08096 -0.44097,0 -0.67524,0.2704401 -0.23427,0.2687176 -0.23427,0.7785921 0,0.5081519 0.23427,0.7785921 0.23427,0.2687176 0.67524,0.2687176 0.22393,0 0.42202,-0.08096 0.19982,-0.08096 0.37552,-0.2446019 v 0.3634578 q -0.18259,0.1240235 -0.38757,0.1860353 -0.20326,0.062012 -0.43064,0.062012 -0.58394,0 -0.91984,-0.3565676 -0.3359,-0.3582902 -0.3359,-0.9766852 0,-0.6201176 0.3359,-0.9766852 0.3359,-0.3582902 0.91984,-0.3582902 0.23082,0 0.43408,0.062012 0.20498,0.060289 0.38413,0.1825902 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal'" id="path17394"/>
|
||||
<path d="m 159.27775,3.7788421 q -0.37896,0 -0.60289,0.282498 -0.22221,0.282498 -0.22221,0.7699793 0,0.4857588 0.22221,0.7682568 0.22393,0.282498 0.60289,0.282498 0.37896,0 0.59945,-0.282498 0.22221,-0.282498 0.22221,-0.7682568 0,-0.4874813 -0.22221,-0.7699793 -0.22049,-0.282498 -0.59945,-0.282498 z m 0,-0.2824981 q 0.54088,0 0.86472,0.3634578 0.32384,0.3617353 0.32384,0.9715176 0,0.6080598 -0.32384,0.9715176 -0.32384,0.3617352 -0.86472,0.3617352 -0.5426,0 -0.86816,-0.3617352 -0.32384,-0.3617353 -0.32384,-0.9715176 0,-0.6097823 0.32384,-0.9715176 0.32556,-0.3634578 0.86816,-0.3634578 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal'" id="path17396"/>
|
||||
<path d="m 161.35859,3.828796 v 0.9663499 h 0.43753 q 0.24288,0 0.37551,-0.1257461 0.13264,-0.1257461 0.13264,-0.3582902 0,-0.2308215 -0.13264,-0.3565676 -0.13263,-0.125746 -0.37551,-0.125746 z m -0.34796,-0.2859431 h 0.78549 q 0.43236,0 0.65284,0.1963705 0.22221,0.1946481 0.22221,0.5718862 0,0.3806833 -0.22221,0.5753314 -0.22048,0.194648 -0.65284,0.194648 h -0.43753 v 1.0335293 h -0.34796 z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal'" id="path17398"/>
|
||||
<path d="m 162.70734,3.5428529 h 0.3738 l 0.71313,1.057645 0.70797,-1.057645 h 0.37379 l -0.9095,1.3470332 v 1.2247322 h -0.34968 V 4.8898861 Z" style="font-size:3.52778px;-inkscape-font-specification:'sans-serif, Normal'" id="path17400"/>
|
||||
</g>
|
||||
</g>
|
||||
<g inkscape:label="MajorYGridlines" id="g15116" style="display:inline">
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,10 H 300" inkscape:label="MajorYDiv1" id="path15078"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,20 H 300" inkscape:label="MajorYDiv2" id="path15080"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,30 H 300" inkscape:label="MajorYDiv3" id="path15082"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,40 H 300" inkscape:label="MajorYDiv4" id="path15084"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,50 H 300" inkscape:label="MajorYDiv5" id="path15086"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,60 H 300" inkscape:label="MajorYDiv6" id="path15088"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,70 H 300" inkscape:label="MajorYDiv7" id="path15090"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,80 H 300" inkscape:label="MajorYDiv8" id="path15092"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,90 H 300" inkscape:label="MajorYDiv9" id="path15094"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,100 H 300" inkscape:label="MajorYDiv10" id="path15096"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,110 H 300" inkscape:label="MajorYDiv11" id="path15098"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,120 H 300" inkscape:label="MajorYDiv12" id="path15100"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,130 H 300" inkscape:label="MajorYDiv13" id="path15102"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,140 H 300" inkscape:label="MajorYDiv14" id="path15104"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,150 H 300" inkscape:label="MajorYDiv15" id="path15106"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,160 H 300" inkscape:label="MajorYDiv16" id="path15108"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,170 H 300" inkscape:label="MajorYDiv17" id="path15110"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,180 H 300" inkscape:label="MajorYDiv18" id="path15112"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.264583" d="M 0,190 H 300" inkscape:label="MajorYDiv19" id="path15114"/>
|
||||
</g>
|
||||
<g inkscape:label="SubMinorXGridlines" id="g15178" style="display:none">
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 5,0 V 200" inkscape:label="SubminorXDiv0:0:1" id="path15118"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 15,0 V 200" inkscape:label="SubminorXDiv1:0:1" id="path15120"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 25,0 V 200" inkscape:label="SubminorXDiv2:0:1" id="path15122"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 35,0 V 200" inkscape:label="SubminorXDiv3:0:1" id="path15124"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 45,0 V 200" inkscape:label="SubminorXDiv4:0:1" id="path15126"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 55,0 V 200" inkscape:label="SubminorXDiv5:0:1" id="path15128"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 65,0 V 200" inkscape:label="SubminorXDiv6:0:1" id="path15130"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 75,0 V 200" inkscape:label="SubminorXDiv7:0:1" id="path15132"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 85,0 V 200" inkscape:label="SubminorXDiv8:0:1" id="path15134"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 95,0 V 200" inkscape:label="SubminorXDiv9:0:1" id="path15136"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 105,0 V 200" inkscape:label="SubminorXDiv10:0:1" id="path15138"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 115,0 V 200" inkscape:label="SubminorXDiv11:0:1" id="path15140"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 125,0 V 200" inkscape:label="SubminorXDiv12:0:1" id="path15142"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 135,0 V 200" inkscape:label="SubminorXDiv13:0:1" id="path15144"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 145,0 V 200" inkscape:label="SubminorXDiv14:0:1" id="path15146"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 155,0 V 200" inkscape:label="SubminorXDiv15:0:1" id="path15148"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 165,0 V 200" inkscape:label="SubminorXDiv16:0:1" id="path15150"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 175,0 V 200" inkscape:label="SubminorXDiv17:0:1" id="path15152"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 185,0 V 200" inkscape:label="SubminorXDiv18:0:1" id="path15154"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 195,0 V 200" inkscape:label="SubminorXDiv19:0:1" id="path15156"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 205,0 V 200" inkscape:label="SubminorXDiv20:0:1" id="path15158"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 215,0 V 200" inkscape:label="SubminorXDiv21:0:1" id="path15160"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 225,0 V 200" inkscape:label="SubminorXDiv22:0:1" id="path15162"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 235,0 V 200" inkscape:label="SubminorXDiv23:0:1" id="path15164"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 245,0 V 200" inkscape:label="SubminorXDiv24:0:1" id="path15166"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 255,0 V 200" inkscape:label="SubminorXDiv25:0:1" id="path15168"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 265,0 V 200" inkscape:label="SubminorXDiv26:0:1" id="path15170"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 275,0 V 200" inkscape:label="SubminorXDiv27:0:1" id="path15172"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 285,0 V 200" inkscape:label="SubminorXDiv28:0:1" id="path15174"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 295,0 V 200" inkscape:label="SubminorXDiv29:0:1" id="path15176"/>
|
||||
</g>
|
||||
<g inkscape:label="SubMinorYGridlines" id="g15220" style="display:none">
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,5 H 300" inkscape:label="SubminorXDiv0:0:1" id="path15180"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,15 H 300" inkscape:label="SubminorXDiv1:0:1" id="path15182"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,25 H 300" inkscape:label="SubminorXDiv2:0:1" id="path15184"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,35 H 300" inkscape:label="SubminorXDiv3:0:1" id="path15186"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,45 H 300" inkscape:label="SubminorXDiv4:0:1" id="path15188"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,55 H 300" inkscape:label="SubminorXDiv5:0:1" id="path15190"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,65 H 300" inkscape:label="SubminorXDiv6:0:1" id="path15192"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,75 H 300" inkscape:label="SubminorXDiv7:0:1" id="path15194"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,85 H 300" inkscape:label="SubminorXDiv8:0:1" id="path15196"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,95 H 300" inkscape:label="SubminorXDiv9:0:1" id="path15198"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,105 H 300" inkscape:label="SubminorXDiv10:0:1" id="path15200"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,115 H 300" inkscape:label="SubminorXDiv11:0:1" id="path15202"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,125 H 300" inkscape:label="SubminorXDiv12:0:1" id="path15204"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,135 H 300" inkscape:label="SubminorXDiv13:0:1" id="path15206"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,145 H 300" inkscape:label="SubminorXDiv14:0:1" id="path15208"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,155 H 300" inkscape:label="SubminorXDiv15:0:1" id="path15210"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,165 H 300" inkscape:label="SubminorXDiv16:0:1" id="path15212"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,175 H 300" inkscape:label="SubminorXDiv17:0:1" id="path15214"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,185 H 300" inkscape:label="SubminorXDiv18:0:1" id="path15216"/>
|
||||
<path style="fill:none;stroke:#000000;stroke-width:0.079375" d="M 0,195 H 300" inkscape:label="SubminorXDiv19:0:1" id="path15218"/>
|
||||
</g>
|
||||
<rect x="0" y="0" width="300" height="200" style="fill:none;stroke:#000000;stroke-width:3.67183e-17" inkscape:label="Border" id="rect15222"/>
|
||||
</g>
|
||||
<g inkscape:groupmode="layer" id="layer3" inkscape:label="Snapmaker | J1" style="display:inline">
|
||||
<rect style="fill:#ffffff;stroke-width:0.154526" id="rect527" width="0.78233474" height="10.43113" x="279.55826" y="186.86078"/>
|
||||
<g aria-label="J1" id="text611" style="font-size:9.813px;line-height:1.25;font-family:'Heiti SC';-inkscape-font-specification:'Heiti SC';display:inline;fill:#ffffff;stroke-width:0.229992">
|
||||
<path d="m 287.28671,193.04701 q 0,0.99111 -0.157,1.47195 -0.1472,0.48083 -0.58878,0.77522 -0.43178,0.28458 -0.94205,0.28458 -0.50046,0 -0.93224,-0.15701 -0.42196,-0.15701 -1.00092,-0.65747 l 0.4514,-0.66728 q 0.56915,0.41214 0.86354,0.54952 0.29439,0.13739 0.56915,0.13739 0.28458,0 0.52009,-0.20608 0.23551,-0.20607 0.29439,-0.5299 0.0687,-0.33364 0.0687,-1.03036 v -4.79856 h 0.85373 z" id="path3063"/>
|
||||
<path d="m 291.33947,195.40213 h -0.83411 v -6.35883 h -1.16774 l 0.51027,-0.82429 h 1.49158 z" id="path3065"/>
|
||||
</g>
|
||||
<g clip-path="url(#clipPath16)" id="g17284" transform="matrix(0.08049864,0,0,-0.08049864,199.09857,227.00105)" style="display:inline;fill:#ffffff">
|
||||
<g transform="translate(363.26,466.65)" id="g17250" style="fill:#ffffff">
|
||||
<path d="m 0,0 c -20.922,0 -37.883,-16.96 -37.883,-37.883 v -37.213 h 15.153 v 37.213 h -0.002 c 0,12.555 10.178,22.733 22.732,22.733 12.555,0 22.732,-10.178 22.732,-22.733 h -0.003 v -37.213 h 15.154 v 37.213 C 37.883,-16.96 20.922,0 0,0" fill="#3f3b3a" id="path17248" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(445.58,406.04)" id="g17254" style="fill:#ffffff">
|
||||
<path d="m 0,0 c -12.554,0 -22.73,10.177 -22.73,22.729 0,12.554 10.176,22.73 22.73,22.73 12.553,0 22.729,-10.176 22.729,-22.73 C 22.729,10.177 12.553,0 0,0 M 22.729,58.244 V 53.037 C 16.398,57.792 8.529,60.612 0,60.612 c -20.923,0 -37.883,-16.96 -37.883,-37.883 0,-20.922 16.96,-37.882 37.883,-37.882 8.529,0 16.398,2.82 22.729,7.576 v -6.906 h 15.154 v 72.727 z" fill="#3f3b3a" id="path17252" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(532.26,406.04)" id="g17258" style="fill:#ffffff">
|
||||
<path d="m 0,0 c -12.553,0 -22.729,10.177 -22.729,22.729 0,12.554 10.176,22.73 22.729,22.73 12.553,0 22.73,-10.176 22.73,-22.73 C 22.73,10.177 12.553,0 0,0 m 0,60.612 c -20.922,0 -37.882,-16.96 -37.882,-37.883 v -69.2 h 15.153 v 38.894 c 6.331,-4.756 14.2,-7.576 22.729,-7.576 20.922,0 37.883,16.96 37.883,37.882 0,20.923 -16.961,37.883 -37.883,37.883" fill="#3f3b3a" id="path17256" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(734.31,398.46)" id="g17262" style="fill:#ffffff">
|
||||
<path d="m 0,0 c -16.737,0 -30.306,13.568 -30.306,30.306 0,16.737 13.569,30.306 30.306,30.306 16.737,0 30.306,-13.569 30.306,-30.306 C 30.306,13.568 16.737,0 0,0 M 30.306,65.82 V 53.037 C 23.394,62.237 12.393,68.188 0,68.188 c -20.922,0 -37.883,-16.959 -37.883,-37.882 0,-20.922 16.961,-37.883 37.883,-37.883 12.393,0 23.394,5.952 30.306,15.152 V -6.907 h 7.577 V 65.82 Z" fill="#3f3b3a" id="path17260" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(691.21,436.81)" id="g17266" style="fill:#ffffff">
|
||||
<path d="m 0,0 c -0.25,16.522 -13.713,29.841 -30.294,29.841 -11.414,0 -21.35,-6.312 -26.519,-15.634 -5.168,9.322 -15.104,15.634 -26.517,15.634 -16.582,0 -30.045,-13.319 -30.295,-29.841 h -0.012 v -45.255 h 7.577 v 44.79 c 0,12.553 10.176,22.729 22.73,22.729 12.553,0 22.729,-10.176 22.729,-22.729 v -44.79 h 7.577 v 44.79 c 0,12.553 10.176,22.729 22.73,22.729 12.553,0 22.73,-10.176 22.73,-22.729 v -44.79 H 0.012 V 0 Z" fill="#3f3b3a" id="path17264" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(856.21,455.02)" id="g17270" style="fill:#ffffff">
|
||||
<path d="M 0,0 C 13.382,7.726 30.204,4.078 39.292,-7.935 L -12.777,-37.997 C -18.635,-24.118 -13.384,-7.727 0,0 m 45.088,-30.903 c -1.362,-8.745 -6.52,-16.819 -14.782,-21.589 -13.384,-7.727 -30.203,-4.079 -39.294,7.934 L 49.691,-10.68 C 49.175,-9.54 48.6,-8.413 47.96,-7.305 37.499,10.814 14.331,17.022 -3.789,6.561 -21.907,-3.9 -28.115,-27.069 -17.655,-45.188 c 10.461,-18.119 33.631,-24.327 51.749,-13.865 12.12,6.997 18.901,19.681 18.937,32.735 z" fill="#3f3b3a" id="path17268" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(839.22,466.66)" id="g17274" style="fill:#ffffff">
|
||||
<path d="m 0,0 h -10.716 l -37.79,-37.79 v 70.377 h -7.577 v -107.69 h 7.577 v 26.598 l 5.422,5.421 32.02,-32.019 H -0.35 l -37.376,37.376 z" fill="#3f3b3a" id="path17272" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(917.36,428.77)" id="g17278" style="fill:#ffffff">
|
||||
<path d="m 0,0 c 0,-0.02 0.003,-0.039 0.003,-0.059 v -37.154 h 7.575 v 37.154 h 10e-4 c 0,0.02 -10e-4,0.039 -10e-4,0.059 0,16.738 13.568,30.306 30.306,30.306 v 7.577 C 16.962,37.883 0,20.923 0,0" fill="#3f3b3a" id="path17276" style="fill:#ffffff"/>
|
||||
</g>
|
||||
<g transform="translate(280.65,437.38)" id="g17282" style="fill:#ffffff">
|
||||
<path d="m 0,0 c -6.641,1.159 -10.845,4.978 -10.218,8.245 0.893,4.658 8.079,5.869 17.803,6.172 12.995,0.405 23.732,-4.078 23.732,-4.078 0,0 3.992,9.327 5.511,12.872 -11.468,5.271 -23.392,6.442 -29.098,6.442 -19.827,0 -35.061,-10.557 -35.061,-22.404 0,-12.88 15.262,-21.176 29.965,-22.574 12.015,-1.144 19.391,-5.593 18.967,-9.818 -0.374,-3.73 -6.558,-5.581 -13.394,-5.903 -5.915,-0.279 -17.31,-0.045 -29.296,4.451 -0.87,-2.064 -4.12,-9.767 -5.504,-13.048 3.022,-1.511 18.332,-8.378 38.223,-6.51 18.771,1.762 29.949,14.058 28.603,24.009 C 37.597,-2.648 11.585,-2.022 0,0" fill="#3f3b3a" id="path17280" style="fill:#ffffff"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g inkscape:label="Icons" inkscape:groupmode="layer" id="layer1" style="display:inline" transform="translate(0.39999965,-2.4459998)">
|
||||
<path sodipodi:type="star" style="fill:none;fill-opacity:1;stroke:#ffff00;stroke-width:0.264999;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path1349" sodipodi:sides="3" sodipodi:cx="39.555885" sodipodi:cy="333.11758" sodipodi:r1="12.85258" sodipodi:r2="6.42629" sodipodi:arg1="2.6179939" sodipodi:arg2="3.6651914" inkscape:flatsided="true" inkscape:rounded="0" inkscape:randomized="0" d="M 28.425224,339.54387 39.555886,320.265 50.686546,339.54387 Z" inkscape:transform-center-y="-2.4767285" transform="matrix(0.77080989,0,0,0.77080989,-11.733546,-62.159169)"/>
|
||||
<path sodipodi:type="star" style="fill:none;fill-opacity:1;stroke:#ffff00;stroke-width:0.264999;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path1349-1" sodipodi:sides="3" sodipodi:cx="74.701828" sodipodi:cy="333.11758" sodipodi:r1="12.85258" sodipodi:r2="6.4262905" sodipodi:arg1="2.6179939" sodipodi:arg2="3.6651914" inkscape:flatsided="true" inkscape:rounded="0" inkscape:randomized="0" d="M 63.571167,339.54387 74.701828,320.265 85.832489,339.54387 Z" inkscape:transform-center-y="-2.4767285" transform="matrix(0.77080989,0,0,0.77080989,-11.733546,-62.159169)"/>
|
||||
<path sodipodi:type="star" style="fill:none;fill-opacity:1;stroke:#ffff00;stroke-width:0.264999;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path1349-1-3" sodipodi:sides="3" sodipodi:cx="111.45139" sodipodi:cy="333.11758" sodipodi:r1="12.85258" sodipodi:r2="6.4262905" sodipodi:arg1="2.6179939" sodipodi:arg2="3.6651914" inkscape:flatsided="true" inkscape:rounded="0" inkscape:randomized="0" d="m 100.32073,339.54387 11.13066,-19.27887 11.13066,19.27887 z" inkscape:transform-center-y="-2.4767285" transform="matrix(0.77080989,0,0,0.77080989,-11.733546,-62.159169)"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.40005;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 44.86076,190.94921 c -0.607012,0.83768 -1.213985,1.6753 -1.2169,2.44625 -0.0029,0.77095 0.597978,1.47503 0.767817,2.01212 0.169839,0.53708 -0.09115,0.90733 -0.352123,1.27754" id="path1396" inkscape:path-effect="#path-effect1398" inkscape:original-d="m 44.86076,190.94921 c -0.606771,0.83785 -1.213745,1.67547 -1.820923,2.51287 0.601121,0.70432 1.202014,1.4084 1.802715,2.11228 -0.260801,0.37047 -0.521796,0.74071 -0.782998,1.11076"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.40005;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 46.061612,190.95887 c -0.607012,0.83768 -1.21398,1.67529 -1.216898,2.44625 -0.0029,0.77095 0.597971,1.47502 0.767813,2.01211 0.169841,0.53709 -0.09115,0.90734 -0.352121,1.27755" id="path1396-6" inkscape:path-effect="#path-effect1417" inkscape:original-d="m 46.061612,190.95887 c -0.606771,0.83785 -1.213745,1.67546 -1.820924,2.51287 0.601122,0.70432 1.202014,1.40839 1.802716,2.11228 -0.260801,0.37047 -0.521796,0.74071 -0.782998,1.11076"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.40005;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 47.463723,190.94066 c -0.607007,0.83767 -1.21398,1.67529 -1.216898,2.44625 -0.0029,0.77095 0.597971,1.47502 0.767813,2.01211 0.169841,0.53709 -0.09114,0.90733 -0.352121,1.27755" id="path1396-7" inkscape:path-effect="#path-effect1426" inkscape:original-d="m 47.463723,190.94066 c -0.606771,0.83784 -1.213745,1.67546 -1.820924,2.51287 0.601122,0.70432 1.202014,1.40839 1.802716,2.11228 -0.260801,0.37047 -0.521796,0.7407 -0.782998,1.11076"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.40005;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 41.874445,197.72306 h 7.647882" id="path1428"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.293709px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="m 73.497594,193.31026 c -0.198163,0.41818 -0.396244,0.83619 -0.618617,0.78533 -0.222372,-0.0509 -0.469255,-0.57083 -0.716102,-0.82171 -0.246847,-0.25088 -0.493717,-0.23232 -0.66669,-0.1487 -0.172973,0.0836 -0.271732,0.23218 -0.213909,0.36223 0.05782,0.13004 0.271769,0.24145 0.423902,0.4226 0.152134,0.18115 0.242663,0.43186 0.349605,0.96111 0.106942,0.52924 0.230379,1.33701 0.753087,1.79183 0.522707,0.45482 1.444396,0.55696 2.042911,0.34494 0.598514,-0.21202 0.874186,-0.73823 1.149928,-1.26457" id="path1434" inkscape:path-effect="#path-effect1436" inkscape:original-d="m 73.497594,193.31026 c -0.197813,0.41835 -0.395895,0.83636 -0.594271,1.25409 -0.246613,-0.51967 -0.493488,-1.03964 -0.740648,-1.5599 -0.246613,0.019 -0.493496,0.0374 -0.740656,0.0557 -0.09845,0.14888 -0.197227,0.29744 -0.296261,0.44569 0.214255,0.11178 0.428216,0.22316 0.6419,0.33426 0.09082,0.251 0.181333,0.50172 0.271572,0.7521 0.12373,0.80812 0.24716,1.6159 0.37032,2.42339 0.921996,0.10246 1.843685,0.2046 2.765103,0.30643 0.275988,-0.52597 0.551653,-1.05218 0.827056,-1.5787" sodipodi:nodetypes="cccccccccc"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.293709px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="m 76.19798,195.31224 c 0.31925,-0.47948 0.638551,-0.95904 0.761367,-1.3079 0.122817,-0.34885 0.04895,-0.5673 -0.0817,-0.64121 -0.130652,-0.0739 -0.318041,-0.003 -0.516785,0.2169 -0.198743,0.2198 -0.408593,0.58818 -0.618376,0.95645" id="path1442" inkscape:path-effect="#path-effect1444" inkscape:original-d="m 76.19798,195.31224 c 0.319586,-0.47926 0.638886,-0.95882 0.957916,-1.4387 -0.07354,-0.21812 -0.147448,-0.43655 -0.221584,-0.65531 -0.187161,0.0714 -0.374568,0.14237 -0.562275,0.21309 -0.209576,0.3687 -0.419421,0.73709 -0.629551,1.10516" sodipodi:nodetypes="ccccc"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.293709px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="m 75.625839,194.75097 c 0.427245,-0.70531 0.854505,-1.41064 0.970243,-1.81734 0.115737,-0.4067 -0.0805,-0.51463 -0.237262,-0.49903 -0.156767,0.0156 -0.273621,0.15486 -0.466514,0.4778 -0.192894,0.32293 -0.461778,0.82941 -0.73061,1.3358" id="path1442-1" inkscape:path-effect="#path-effect1463" inkscape:original-d="m 75.625839,194.75097 c 0.427576,-0.70511 0.854843,-1.41044 1.281941,-2.11627 -0.196024,-0.10766 -0.392265,-0.21557 -0.588821,-0.32384 -0.116585,0.1396 -0.23344,0.27887 -0.35058,0.41783 -0.268627,0.50682 -0.537501,1.01331 -0.806683,1.51951" sodipodi:nodetypes="ccccc"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.322939px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="m 75.161665,194.2482 c 0.481946,-0.8587 0.963986,-1.71756 1.084052,-2.22574 0.120065,-0.50817 -0.122202,-0.66556 -0.334468,-0.61383 -0.212265,0.0517 -0.393863,0.31261 -0.608715,0.71081 -0.214852,0.39819 -0.462807,0.93338 -0.710675,1.46838" id="path1442-4" inkscape:path-effect="#path-effect1472" inkscape:original-d="m 75.161665,194.2482 c 0.482296,-0.8585 0.964329,-1.71737 1.446163,-2.57667 -0.242112,-0.15714 -0.48437,-0.31454 -0.727067,-0.47233 -0.181449,0.26138 -0.363036,0.52228 -0.545009,0.78299 -0.247723,0.5356 -0.495677,1.07079 -0.743893,1.60563" sodipodi:nodetypes="ccccc"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.293709px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="m 74.591805,193.58782 c 0.292958,-0.63399 0.58592,-1.26799 0.680949,-1.68074 0.09503,-0.41275 -0.0082,-0.60404 -0.162225,-0.65713 -0.154047,-0.0531 -0.358771,0.0325 -0.582389,0.32275 -0.223619,0.29023 -0.465799,0.78467 -0.708062,1.27928" id="path1487" inkscape:path-effect="#path-effect1489" inkscape:original-d="m 74.591805,193.58782 c 0.293309,-0.63383 0.58627,-1.26783 0.87907,-1.9024 -0.103049,-0.19111 -0.206215,-0.38243 -0.309742,-0.57412 -0.204473,0.086 -0.409223,0.17154 -0.614266,0.25685 -0.241996,0.49495 -0.726789,1.48383 -0.726789,1.48383" sodipodi:nodetypes="ccccc"/>
|
||||
<path style="fill:none;stroke:#ffff00;stroke-width:0.340061;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 76.762344,196.16538 -3.740817,-3.75884 v 0" id="path1491"/>
|
||||
<g aria-label="!" id="text1642" style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15.875px;line-height:1.25;font-family:Amiri;-inkscape-font-specification:Amiri;fill:#ffff00;fill-opacity:1;stroke:none;stroke-width:0.265;stroke-miterlimit:4;stroke-dasharray:none" transform="matrix(0.77080989,0,0,0.77080989,-11.733546,-62.159169)">
|
||||
<path d="m 38.868313,336.48727 q -0.255799,-0.26355 -0.255799,-0.61236 0,-0.34882 0.255799,-0.58911 0.26355,-0.24805 0.612366,-0.24805 0.348815,0 0.589111,0.24805 0.248047,0.24029 0.248047,0.58911 0,0.34881 -0.248047,0.61236 -0.240296,0.2558 -0.589111,0.2558 -0.348816,0 -0.612366,-0.2558 z m 0.116272,-10.20868 q 0.217041,-0.27905 0.558105,-0.27905 0.341065,0 0.511597,0.27905 0.170532,0.27906 0.170532,0.62012 0,1.65882 -0.542602,7.00733 -0.09302,0.18603 -0.248047,0.20153 -0.147278,-0.062 -0.201538,-0.17053 -0.465088,-5.34851 -0.465088,-7.03833 0,-0.34106 0.217041,-0.62012 z" style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:15.875px;font-family:Amiri;-inkscape-font-specification:Amiri;fill:#ffff00;fill-opacity:1;stroke-width:0.265;stroke-miterlimit:4;stroke-dasharray:none" id="path1644"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 35 KiB |
25
resources/profiles/Snapmaker/filament/Snapmaker J1 ABS.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB99",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 ABS",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_abs",
|
||||
"filament_flow_ratio": [
|
||||
"0.926"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
25
resources/profiles/Snapmaker/filament/Snapmaker J1 ASA.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFB98",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 ASA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_asa",
|
||||
"filament_flow_ratio": [
|
||||
"0.93"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN98",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 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": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
]
|
||||
}
|
||||
28
resources/profiles/Snapmaker/filament/Snapmaker J1 PA.json
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFN99",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 PA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pa",
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"280"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"280"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
25
resources/profiles/Snapmaker/filament/Snapmaker J1 PC.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFC99",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 PC",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pc",
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.94"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
64
resources/profiles/Snapmaker/filament/Snapmaker J1 PETG.json
Normal file
@@ -0,0 +1,64 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFG99",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 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": [
|
||||
"10"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"filament_flow_ratio": [
|
||||
"0.95"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"10"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"245"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"245"
|
||||
],
|
||||
"nozzle_temperature_range_high": [
|
||||
"250"
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; filament start gcode\n"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL98",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 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": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
34
resources/profiles/Snapmaker/filament/Snapmaker J1 PLA.json
Normal file
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFL99",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 PLA",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_pla",
|
||||
"filament_flow_ratio": [
|
||||
"0.92"
|
||||
],
|
||||
"filament_max_volumetric_speed": [
|
||||
"12"
|
||||
],
|
||||
"slow_down_layer_time": [
|
||||
"8"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"205"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"200"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
31
resources/profiles/Snapmaker/filament/Snapmaker J1 PVA.json
Normal file
@@ -0,0 +1,31 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFS99",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 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": [
|
||||
"10"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
28
resources/profiles/Snapmaker/filament/Snapmaker J1 TPU.json
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"type": "filament",
|
||||
"filament_id": "GFU99",
|
||||
"setting_id": "GFSX04",
|
||||
"name": "Snapmaker J1 TPU",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_filament_tpu",
|
||||
"filament_max_volumetric_speed": [
|
||||
"3.2"
|
||||
],
|
||||
"nozzle_temperature": [
|
||||
"220"
|
||||
],
|
||||
"nozzle_temperature_initial_layer": [
|
||||
"220"
|
||||
],
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle",
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
],
|
||||
"filament_end_gcode": [
|
||||
"; ====================================\n;END Gcode for filament T[current_extruder] \nG92 E0\nG1 F600 E-6 ;retract\n{if current_extruder == 0}G0 X-20 F12000 {endif} ;\n{if current_extruder == 1}G0 X350 F12000 {endif} ;\nM106 S0 ; Lüfter aus\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 0}T1 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n{if has_wipe_tower and total_toolchanges > 0 and current_extruder == 1}T0 \nG0 X{wipe_tower_x[0]} Y{wipe_tower_y[0]} F{travel_speed*60}{endif} ;\n;END gcode for filament T[current_extruder] (Ende) \n; ====================================="
|
||||
],
|
||||
"filament_start_gcode": [
|
||||
"; ====================================\n; START gcode for filament T[current_extruder]\nM900 T[current_extruder] K0.054\nG1 F600 E5.5 \nM106 S255 ;Lüfter an\n; START gcode for filament T[current_extruder] (Ende)\n; ===================================="
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"type": "machine",
|
||||
"setting_id": "GM010",
|
||||
"name": "Snapmaker J1 0.4 nozzle",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_machine_common",
|
||||
"printer_model": "Snapmaker J1",
|
||||
"default_print_profile": "0.20mm 0.4 Standard @Snapmaker J1",
|
||||
"retraction_minimum_travel": [
|
||||
"3"
|
||||
],
|
||||
"thumbnails": [
|
||||
"400x400"
|
||||
],
|
||||
"z_hop_types": [
|
||||
"Auto Lift"
|
||||
],
|
||||
"z_lift_type": [
|
||||
"SpiralLift"
|
||||
],
|
||||
"nozzle_diameter": [
|
||||
"0.4"
|
||||
],
|
||||
"bed_exclude_area": [
|
||||
"0x0"
|
||||
],
|
||||
"printable_area": [
|
||||
"0x0",
|
||||
"324x0",
|
||||
"324x200",
|
||||
"0x200"
|
||||
],
|
||||
"printable_height": "200",
|
||||
"machine_start_gcode": ";***** Snapmaker J1\n;***** Update : 20221222\n;***** Printer : [printer_preset]\n;***** Profile : [print_preset]\nM593 P1 X F35.7 \nM593 P1 Y F33.7 \nM355 S1 P16 ;------------OPTIONAL ;dim led \nM83 ;absolute extrusion mode\nM140 S[first_layer_bed_temperature] ;Start Warming Bed\nT[initial_extruder] ;switch to initial extruder\n{if total_toolchanges < 1}; Preheat one extruder (just one used)\nM104 S160 ;preheat nozzle\n{else}; Preheat both extruders used\nM104 S160 T0 ;preheat T0\nM104 S160 T1 ;preheat T1\n{endif}\nG28 ; home all axes\nG90 ;absolute positioning\nG1 Z0.8 F1800\nM201 X5000 Y5000 Z500 E5000\nM205 V5\nM900 T0 K0.02\nM900 T1 K0.02\nM190 S[first_layer_bed_temperature] ; C3 W2 Wait For Bed Temperature\n{if total_toolchanges < 1}; Heat one extruder\nM104 S[first_layer_temperature]\nM109 S[first_layer_temperature] ;Wait for Hotend Temperature\n{else}; Heat both extruders\nM104 T0 S{first_layer_temperature[0]}\nM104 T1 S{first_layer_temperature[1]}\nM109 T0 S{first_layer_temperature[0]} ;Wait for Hotend Temperature\nM109 T1 S{first_layer_temperature[1]} ;Wait for Hotend Temperature\n{endif}\n;\n{if 1==1} ;-----------OPTIONAL ;led effect\n M355 S1 P32\n G4 S1\n M355 S1 P48\n G4 S1\n M355 S1 P64\n G4 S1\n M355 S1 P96\n G4 S1\n M355 S1 P128\n G4 S1\n M355 S1 P255\n{endif}\n;\nG92 E0\n;\n{if total_toolchanges > 0 or initial_extruder == 0}; Purge line T0\nT0\nG92 E0\nG1 F1200 X5 Z0.5\nG1 F600 X100 E20\nG1 F600 Z2\nG92 E0\nG1 F1200 E-6\nG0 X-20 F12000 ; park T0\n{endif}\n{if total_toolchanges > 0 or initial_extruder == 1}; Purge line T1\nT1\nG92 E0\nG1 F1200 X295 Z0.5\nG1 F600 X200 E20\nG1 F600 Z2\nG92 E0\nG1 F1200 E-6\nG0 X350 F12000 ; park T1 (old 345)\n{endif}\n;End Start Gcode J1\n",
|
||||
"layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_num]\n",
|
||||
"machine_end_gcode": ";End GCode J1 begin\nM140 S0 ;heated bed heater off \nG90 ;absolute positioning\nG92 E0\n;\nG1 E-6 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\n;\nM104 S0 T0 ;extruder heater off\nM104 S0 T1 ;extruder heater off\n;\nG1 Z200 F1500 ;move bed down\nG0 Y10 F3000 ;so the head is out of the way\nM84 ;steppers off\nM355 S1 P16 ;------------OPTIONAL ;dim led \nM107\n;End of Gcode\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/Snapmaker2Slic3rPostProcessor)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n;",
|
||||
"change_filament_gcode": ";Change Filament",
|
||||
"machine_max_acceleration_e": [
|
||||
"6000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_extruding": [
|
||||
"5000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_retracting": [
|
||||
"6000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_x": [
|
||||
"5000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_y": [
|
||||
"5000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_speed_e": [
|
||||
"60",
|
||||
"25"
|
||||
],
|
||||
"max_layer_height": [
|
||||
"0.30"
|
||||
],
|
||||
"scan_first_layer": "0",
|
||||
"nozzle_type": "hardened_steel",
|
||||
"auxiliary_fan": "0"
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"type": "machine",
|
||||
"setting_id": "GM011",
|
||||
"name": "Snapmaker J1 0.6 nozzle",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_machine_common",
|
||||
"printer_model": "Snapmaker J1",
|
||||
"default_print_profile": "0.20mm 0.6 Standard @Snapmaker J1",
|
||||
"retraction_minimum_travel": [
|
||||
"3"
|
||||
],
|
||||
"thumbnails": [
|
||||
"400x400"
|
||||
],
|
||||
"z_hop_types": [
|
||||
"Auto Lift"
|
||||
],
|
||||
"z_lift_type": [
|
||||
"SpiralLift"
|
||||
],
|
||||
"nozzle_diameter": [
|
||||
"0.6"
|
||||
],
|
||||
"bed_exclude_area": [
|
||||
"0x0"
|
||||
],
|
||||
"printable_area": [
|
||||
"0x0",
|
||||
"324x0",
|
||||
"324x200",
|
||||
"0x200"
|
||||
],
|
||||
"printable_height": "200",
|
||||
"machine_start_gcode": ";***** Snapmaker J1\n;***** Update : 20221222\n;***** Printer : [printer_preset]\n;***** Profile : [print_preset]\nM593 P1 X F35.7 \nM593 P1 Y F33.7 \nM355 S1 P16 ;------------OPTIONAL ;dim led \nM83 ;absolute extrusion mode\nM140 S[first_layer_bed_temperature] ;Start Warming Bed\nT[initial_extruder] ;switch to initial extruder\n{if total_toolchanges < 1}; Preheat one extruder (just one used)\nM104 S160 ;preheat nozzle\n{else}; Preheat both extruders used\nM104 S160 T0 ;preheat T0\nM104 S160 T1 ;preheat T1\n{endif}\nG28 ; home all axes\nG90 ;absolute positioning\nG1 Z0.8 F1800\nM201 X5000 Y5000 Z500 E5000\nM205 V5\nM900 T0 K0.02\nM900 T1 K0.02\nM190 S[first_layer_bed_temperature] ; C3 W2 Wait For Bed Temperature\n{if total_toolchanges < 1}; Heat one extruder\nM104 S[first_layer_temperature]\nM109 S[first_layer_temperature] ;Wait for Hotend Temperature\n{else}; Heat both extruders\nM104 T0 S{first_layer_temperature[0]}\nM104 T1 S{first_layer_temperature[1]}\nM109 T0 S{first_layer_temperature[0]} ;Wait for Hotend Temperature\nM109 T1 S{first_layer_temperature[1]} ;Wait for Hotend Temperature\n{endif}\n;\n{if 1==1} ;-----------OPTIONAL ;led effect\n M355 S1 P32\n G4 S1\n M355 S1 P48\n G4 S1\n M355 S1 P64\n G4 S1\n M355 S1 P96\n G4 S1\n M355 S1 P128\n G4 S1\n M355 S1 P255\n{endif}\n;\nG92 E0\n;\n{if total_toolchanges > 0 or initial_extruder == 0}; Purge line T0\nT0\nG92 E0\nG1 F1200 X5 Z0.5\nG1 F600 X100 E20\nG1 F600 Z2\nG92 E0\nG1 F1200 E-6\nG0 X-20 F12000 ; park T0\n{endif}\n{if total_toolchanges > 0 or initial_extruder == 1}; Purge line T1\nT1\nG92 E0\nG1 F1200 X295 Z0.5\nG1 F600 X200 E20\nG1 F600 Z2\nG92 E0\nG1 F1200 E-6\nG0 X350 F12000 ; park T1 (old 345)\n{endif}\n;End Start Gcode J1\n",
|
||||
"layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_num]\n",
|
||||
"machine_end_gcode": ";End GCode J1 begin\nM140 S0 ;heated bed heater off \nG90 ;absolute positioning\nG92 E0\n;\nG1 E-6 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\n;\nM104 S0 T0 ;extruder heater off\nM104 S0 T1 ;extruder heater off\n;\nG1 Z200 F1500 ;move bed down\nG0 Y10 F3000 ;so the head is out of the way\nM84 ;steppers off\nM355 S1 P16 ;------------OPTIONAL ;dim led \nM107\n;End of Gcode\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/Snapmaker2Slic3rPostProcessor)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n;",
|
||||
"change_filament_gcode": ";Change Filament",
|
||||
"machine_max_acceleration_e": [
|
||||
"6000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_extruding": [
|
||||
"5000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_retracting": [
|
||||
"6000",
|
||||
"5000"
|
||||
],
|
||||
"machine_max_acceleration_x": [
|
||||
"5000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_acceleration_y": [
|
||||
"5000",
|
||||
"2000"
|
||||
],
|
||||
"machine_max_speed_e": [
|
||||
"60",
|
||||
"25"
|
||||
],
|
||||
"max_layer_height": [
|
||||
"0.40"
|
||||
],
|
||||
"scan_first_layer": "0",
|
||||
"nozzle_type": "hardened_steel",
|
||||
"auxiliary_fan": "0"
|
||||
}
|
||||
12
resources/profiles/Snapmaker/machine/Snapmaker J1.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"type": "machine_model",
|
||||
"name": "Snapmaker J1",
|
||||
"model_id": "SnapmakerJ1",
|
||||
"nozzle_diameter": "0.4;0,6",
|
||||
"machine_tech": "FFF",
|
||||
"family": "Snapmaker",
|
||||
"bed_model": "",
|
||||
"bed_texture": "j1_texture.svg",
|
||||
"hotend_model": "hotend.stl",
|
||||
"default_materials": "Snapmaker J1 ABS;Snapmaker J1 PLA;Snapmaker J1 PLA-CF;Snapmaker J1 PETG;Snapmaker J1 TPU;Snapmaker J1 ASA;Snapmaker J1 PC;Snapmaker J1 PVA;Snapmaker J1 PA;Snapmaker J1 PA-CF"
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"type": "process",
|
||||
"setting_id": "GP040",
|
||||
"name": "0.20mm 0.4 Standard @Snapmaker J1",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_process_common",
|
||||
"bottom_shell_layers": "4",
|
||||
"bridge_acceleration": "60%",
|
||||
"brim_type": "no_brim",
|
||||
"default_acceleration": "5000",
|
||||
"default_jerk": "3",
|
||||
"elefant_foot_compensation": "0.1",
|
||||
"enable_arc_fitting": "1",
|
||||
"enable_support": "1",
|
||||
"filename_format": "{input_filename_base}_{layer_height}mm_J1_{print_time}.gcode",
|
||||
"flush_into_infill": "1",
|
||||
"gap_infill_speed": "80",
|
||||
"gcode_comments": "1",
|
||||
"infill_jerk": "3",
|
||||
"initial_layer_acceleration": "1000",
|
||||
"initial_layer_infill_speed": "40",
|
||||
"initial_layer_jerk": "1",
|
||||
"initial_layer_speed": "35",
|
||||
"initial_layer_travel_speed": "50%",
|
||||
"inner_wall_acceleration": "2000",
|
||||
"inner_wall_jerk": "3",
|
||||
"inner_wall_line_width": "0.44",
|
||||
"inner_wall_speed": "120",
|
||||
"internal_solid_infill_line_width": "0.45",
|
||||
"internal_solid_infill_speed": "160",
|
||||
"is_custom_defined": "0",
|
||||
"layer_height": "0.25",
|
||||
"line_width": "0.44",
|
||||
"max_travel_detour_distance": "3",
|
||||
"only_one_wall_top": "1",
|
||||
"outer_wall_acceleration": "2000",
|
||||
"outer_wall_jerk": "2",
|
||||
"outer_wall_line_width": "0.42",
|
||||
"outer_wall_speed": "100",
|
||||
"overhang_1_4_speed": "50",
|
||||
"overhang_2_4_speed": "30",
|
||||
"overhang_3_4_speed": "20",
|
||||
"post_process": [
|
||||
"/Users/hliebscher/smfix_bs-darwin-arm64",
|
||||
"\n/Users/hliebscher/j1x2",
|
||||
"\n"
|
||||
],
|
||||
"precise_outer_wall": "1",
|
||||
"prime_tower_brim_width": "1",
|
||||
"prime_tower_width": "10",
|
||||
"prime_volume": "2",
|
||||
"print_settings_id": "0.4 0.25mm Normal S2J2 Parts",
|
||||
"reduce_crossing_wall": "1",
|
||||
"skirt_loops": "2",
|
||||
"small_perimeter_speed": "80%",
|
||||
"small_perimeter_threshold": "6",
|
||||
"sparse_infill_density": "35%",
|
||||
"sparse_infill_line_width": "0.44",
|
||||
"sparse_infill_pattern": "adaptivecubic",
|
||||
"sparse_infill_speed": "130",
|
||||
"support_interface_top_layers": "0",
|
||||
"support_line_width": "0.45",
|
||||
"support_speed": "100",
|
||||
"support_top_z_distance": "0",
|
||||
"support_type": "normal(manual)",
|
||||
"thick_bridges": "1",
|
||||
"top_shell_thickness": "0",
|
||||
"top_surface_acceleration": "1000",
|
||||
"top_surface_jerk": "1",
|
||||
"top_surface_speed": "60",
|
||||
"travel_acceleration": "2500",
|
||||
"travel_jerk": "9",
|
||||
"travel_speed": "150",
|
||||
"tree_support_wall_count": "2",
|
||||
"xy_hole_compensation": "0.08",
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.4 nozzle"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
{
|
||||
"type": "process",
|
||||
"setting_id": "GP041",
|
||||
"name": "0.20mm 0.6 Standard @Snapmaker J1",
|
||||
"from": "system",
|
||||
"instantiation": "true",
|
||||
"inherits": "fdm_process_common",
|
||||
"bottom_shell_layers": "4",
|
||||
"bridge_acceleration": "60%",
|
||||
"brim_type": "no_brim",
|
||||
"default_acceleration": "5000",
|
||||
"default_jerk": "3",
|
||||
"elefant_foot_compensation": "0.1",
|
||||
"enable_arc_fitting": "1",
|
||||
"enable_support": "1",
|
||||
"filename_format": "{input_filename_base}_{layer_height}mm_J1_{print_time}.gcode",
|
||||
"flush_into_infill": "1",
|
||||
"gap_infill_speed": "80",
|
||||
"gcode_comments": "1",
|
||||
"infill_jerk": "3",
|
||||
"initial_layer_acceleration": "1000",
|
||||
"initial_layer_infill_speed": "40",
|
||||
"initial_layer_jerk": "1",
|
||||
"initial_layer_speed": "35",
|
||||
"initial_layer_travel_speed": "50%",
|
||||
"inner_wall_acceleration": "2000",
|
||||
"inner_wall_jerk": "3",
|
||||
"inner_wall_line_width": "0.64",
|
||||
"inner_wall_speed": "120",
|
||||
"internal_solid_infill_line_width": "0.65",
|
||||
"internal_solid_infill_speed": "160",
|
||||
"is_custom_defined": "0",
|
||||
"layer_height": "0.25",
|
||||
"line_width": "0.64",
|
||||
"max_travel_detour_distance": "3",
|
||||
"only_one_wall_top": "1",
|
||||
"outer_wall_acceleration": "2000",
|
||||
"outer_wall_jerk": "2",
|
||||
"outer_wall_line_width": "0.62",
|
||||
"outer_wall_speed": "100",
|
||||
"overhang_1_4_speed": "50",
|
||||
"overhang_2_4_speed": "30",
|
||||
"overhang_3_4_speed": "20",
|
||||
"post_process": [
|
||||
"/Users/hliebscher/smfix_bs-darwin-arm64",
|
||||
"\n/Users/hliebscher/j1x1",
|
||||
"\n"
|
||||
],
|
||||
"precise_outer_wall": "1",
|
||||
"prime_tower_brim_width": "1",
|
||||
"prime_tower_width": "10",
|
||||
"prime_volume": "2",
|
||||
"print_settings_id": "0.6 0.25mm Normal S2J2 Parts",
|
||||
"reduce_crossing_wall": "1",
|
||||
"skirt_loops": "2",
|
||||
"small_perimeter_speed": "80%",
|
||||
"small_perimeter_threshold": "6",
|
||||
"sparse_infill_density": "35%",
|
||||
"sparse_infill_line_width": "0.64",
|
||||
"sparse_infill_pattern": "adaptivecubic",
|
||||
"sparse_infill_speed": "130",
|
||||
"support_interface_top_layers": "0",
|
||||
"support_line_width": "0.65",
|
||||
"support_speed": "100",
|
||||
"support_top_z_distance": "0",
|
||||
"support_type": "normal(manual)",
|
||||
"thick_bridges": "1",
|
||||
"top_shell_thickness": "0",
|
||||
"top_surface_acceleration": "1000",
|
||||
"top_surface_jerk": "1",
|
||||
"top_surface_speed": "60",
|
||||
"travel_acceleration": "2500",
|
||||
"travel_jerk": "9",
|
||||
"travel_speed": "150",
|
||||
"tree_support_wall_count": "2",
|
||||
"xy_hole_compensation": "0.08",
|
||||
"compatible_printers": [
|
||||
"Snapmaker J1 0.6 nozzle"
|
||||
]
|
||||
}
|
||||
@@ -23,7 +23,6 @@
|
||||
"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",
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
"bridge_no_support": "0",
|
||||
"draft_shield": "disabled",
|
||||
"elefant_foot_compensation": "0",
|
||||
"enable_arc_fitting": "1",
|
||||
"enable_arc_fitting": "0",
|
||||
"outer_wall_line_width": "0.4",
|
||||
"wall_infill_order": "inner wall/outer wall/infill",
|
||||
"line_width": "0.4",
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
"bridge_no_support": "0",
|
||||
"draft_shield": "disabled",
|
||||
"elefant_foot_compensation": "0",
|
||||
"enable_arc_fitting": "1",
|
||||
"enable_arc_fitting": "0",
|
||||
"outer_wall_line_width": "0.4",
|
||||
"wall_infill_order": "inner wall/outer wall/infill",
|
||||
"line_width": "0.4",
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
"bridge_no_support": "0",
|
||||
"draft_shield": "disabled",
|
||||
"elefant_foot_compensation": "0",
|
||||
"enable_arc_fitting": "1",
|
||||
"enable_arc_fitting": "0",
|
||||
"outer_wall_line_width": "0.4",
|
||||
"wall_infill_order": "inner wall/outer wall/infill",
|
||||
"line_width": "0.4",
|
||||
|
||||
@@ -20,7 +20,6 @@
|
||||
"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",
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
"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",
|
||||
|
||||
@@ -98,7 +98,7 @@ var LangText={
|
||||
"t9":"Weiter",
|
||||
"t10":"Druckerauswahl",
|
||||
"t11":"Alle",
|
||||
"t12":"Alles leeren",
|
||||
"t12":"Keinen",
|
||||
"t13":"mm Düse",
|
||||
"t14":"Filamentauswahl",
|
||||
"t15":"Drucker",
|
||||
|
||||
|
Before Width: | Height: | Size: 501 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 278 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 158 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 279 KiB After Width: | Height: | Size: 17 KiB |
BIN
resources/web/image/printer/FLSun V400_cover.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
resources/web/image/printer/Snapmaker J1_cover.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 201 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 514 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 514 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 514 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 914 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 914 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 914 KiB After Width: | Height: | Size: 39 KiB |
@@ -103,8 +103,8 @@ endif()
|
||||
# Create a slic3r executable
|
||||
# Process mainfests for various platforms.
|
||||
set(MACOSX_BUNDLE_COPYRIGHT "Copyright(C) 2022-2023 Li Jiang All Rights Reserved")
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/BambuStudio.rc.in ${CMAKE_CURRENT_BINARY_DIR}/BambuStudio.rc @ONLY)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/BambuStudio.manifest.in ${CMAKE_CURRENT_BINARY_DIR}/BambuStudio.manifest @ONLY)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/OrcaSlicer.rc.in ${CMAKE_CURRENT_BINARY_DIR}/OrcaSlicer.rc @ONLY)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/OrcaSlicer.manifest.in ${CMAKE_CURRENT_BINARY_DIR}/OrcaSlicer.manifest @ONLY)
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/osx/Info.plist.in ${CMAKE_CURRENT_BINARY_DIR}/Info.plist @ONLY)
|
||||
if (WIN32)
|
||||
add_library(OrcaSlicer SHARED BambuStudio.cpp BambuStudio.hpp BaseException.cpp BaseException.h StackWalker.cpp StackWalker.h)
|
||||
@@ -166,7 +166,7 @@ if (WIN32)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -municode")
|
||||
endif()
|
||||
|
||||
add_executable(OrcaSlicer_app_gui WIN32 BambuStudio_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/BambuStudio.rc)
|
||||
add_executable(OrcaSlicer_app_gui WIN32 BambuStudio_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/OrcaSlicer.rc)
|
||||
# Generate debug symbols even in release mode.
|
||||
if(MSVC)
|
||||
target_link_options(OrcaSlicer_app_gui PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
||||
|
||||
@@ -310,6 +310,10 @@ void AppConfig::set_defaults()
|
||||
// }
|
||||
// #endif
|
||||
|
||||
if (get("presets", "filament_colors").empty()) {
|
||||
set_str("presets", "filament_colors", "#F2754E");
|
||||
}
|
||||
|
||||
// Remove legacy window positions/sizes
|
||||
erase("app", "main_frame_maximized");
|
||||
erase("app", "main_frame_pos");
|
||||
|
||||
@@ -70,6 +70,26 @@ public:
|
||||
return ! (this->max(0) < other.min(0) || this->min(0) > other.max(0) ||
|
||||
this->max(1) < other.min(1) || this->min(1) > other.max(1));
|
||||
}
|
||||
PointClass operator[](size_t idx) const {
|
||||
switch (idx) {
|
||||
case 0:
|
||||
return min;
|
||||
break;
|
||||
case 1:
|
||||
return PointClass(max(0), min(1));
|
||||
break;
|
||||
case 2:
|
||||
return max;
|
||||
break;
|
||||
case 3:
|
||||
return PointClass(min(0), max(1));
|
||||
break;
|
||||
default:
|
||||
return PointClass();
|
||||
break;
|
||||
}
|
||||
return PointClass();
|
||||
}
|
||||
bool operator==(const BoundingBoxBase<PointClass> &rhs) { return this->min == rhs.min && this->max == rhs.max; }
|
||||
bool operator!=(const BoundingBoxBase<PointClass> &rhs) { return ! (*this == rhs); }
|
||||
friend std::ostream &operator<<(std::ostream &os, const BoundingBoxBase &bbox)
|
||||
|
||||
@@ -24,7 +24,7 @@ BuildVolume::BuildVolume(const std::vector<Vec2d> &printable_area, const double
|
||||
|
||||
if (printable_area.size() >= 4 && std::abs((m_area - double(m_bbox.size().x()) * double(m_bbox.size().y()))) < sqr(SCALED_EPSILON)) {
|
||||
// Square print bed, use the bounding box for collision detection.
|
||||
m_type = Type::Rectangle;
|
||||
m_type = BuildVolume_Type::Rectangle;
|
||||
m_circle.center = 0.5 * (m_bbox.min.cast<double>() + m_bbox.max.cast<double>());
|
||||
m_circle.radius = 0.5 * m_bbox.size().cast<double>().norm();
|
||||
} else if (printable_area.size() > 3) {
|
||||
@@ -52,16 +52,16 @@ BuildVolume::BuildVolume(const std::vector<Vec2d> &printable_area, const double
|
||||
prev = p;
|
||||
}
|
||||
if (is_circle) {
|
||||
m_type = Type::Circle;
|
||||
m_type = BuildVolume_Type::Circle;
|
||||
m_circle.center = scaled<double>(m_circle.center);
|
||||
m_circle.radius = scaled<double>(m_circle.radius);
|
||||
}
|
||||
}
|
||||
|
||||
if (printable_area.size() >= 3 && m_type == Type::Invalid) {
|
||||
if (printable_area.size() >= 3 && m_type == BuildVolume_Type::Invalid) {
|
||||
// Circle check is not used for Convex / Custom shapes, fill it with something reasonable.
|
||||
m_circle = Geometry::smallest_enclosing_circle_welzl(m_convex_hull.points);
|
||||
m_type = (m_convex_hull.area() - m_area) < sqr(SCALED_EPSILON) ? Type::Convex : Type::Custom;
|
||||
m_type = (m_convex_hull.area() - m_area) < sqr(SCALED_EPSILON) ? BuildVolume_Type::Convex : BuildVolume_Type::Custom;
|
||||
// Initialize the top / bottom decomposition for inside convex polygon check. Do it with two different epsilons applied.
|
||||
auto convex_decomposition = [](const Polygon &in, double epsilon) {
|
||||
Polygon src = expand(in, float(epsilon)).front();
|
||||
@@ -272,7 +272,7 @@ BuildVolume::ObjectState object_state_templ(const indexed_triangle_set &its, con
|
||||
BuildVolume::ObjectState BuildVolume::object_state(const indexed_triangle_set& its, const Transform3f& trafo, bool may_be_below_bed, bool ignore_bottom) const
|
||||
{
|
||||
switch (m_type) {
|
||||
case Type::Rectangle:
|
||||
case BuildVolume_Type::Rectangle:
|
||||
{
|
||||
BoundingBox3Base<Vec3d> build_volume = this->bounding_volume().inflated(SceneEpsilon);
|
||||
if (m_max_print_height == 0.0)
|
||||
@@ -285,20 +285,20 @@ BuildVolume::ObjectState BuildVolume::object_state(const indexed_triangle_set& i
|
||||
//FIXME This test does NOT correctly interprets intersection of a non-convex object with a rectangular build volume.
|
||||
return object_state_templ(its, trafo, may_be_below_bed, [build_volumef](const Vec3f &pt) { return build_volumef.contains(pt); });
|
||||
}
|
||||
case Type::Circle:
|
||||
case BuildVolume_Type::Circle:
|
||||
{
|
||||
Geometry::Circlef circle { unscaled<float>(m_circle.center), unscaled<float>(m_circle.radius + SceneEpsilon) };
|
||||
return m_max_print_height == 0.0 ?
|
||||
object_state_templ(its, trafo, may_be_below_bed, [circle](const Vec3f &pt) { return circle.contains(to_2d(pt)); }) :
|
||||
object_state_templ(its, trafo, may_be_below_bed, [circle, z = m_max_print_height + SceneEpsilon](const Vec3f &pt) { return pt.z() < z && circle.contains(to_2d(pt)); });
|
||||
}
|
||||
case Type::Convex:
|
||||
case BuildVolume_Type::Convex:
|
||||
//FIXME doing test on convex hull until we learn to do test on non-convex polygons efficiently.
|
||||
case Type::Custom:
|
||||
case BuildVolume_Type::Custom:
|
||||
return m_max_print_height == 0.0 ?
|
||||
object_state_templ(its, trafo, may_be_below_bed, [this](const Vec3f &pt) { return Geometry::inside_convex_polygon(m_top_bottom_convex_hull_decomposition_scene, to_2d(pt).cast<double>()); }) :
|
||||
object_state_templ(its, trafo, may_be_below_bed, [this, z = m_max_print_height + SceneEpsilon](const Vec3f &pt) { return pt.z() < z && Geometry::inside_convex_polygon(m_top_bottom_convex_hull_decomposition_scene, to_2d(pt).cast<double>()); });
|
||||
case Type::Invalid:
|
||||
case BuildVolume_Type::Invalid:
|
||||
default:
|
||||
return ObjectState::Inside;
|
||||
}
|
||||
@@ -306,7 +306,7 @@ BuildVolume::ObjectState BuildVolume::object_state(const indexed_triangle_set& i
|
||||
|
||||
BuildVolume::ObjectState BuildVolume::volume_state_bbox(const BoundingBoxf3& volume_bbox, bool ignore_bottom) const
|
||||
{
|
||||
assert(m_type == Type::Rectangle);
|
||||
assert(m_type == BuildVolume_Type::Rectangle);
|
||||
BoundingBox3Base<Vec3d> build_volume = this->bounding_volume().inflated(SceneEpsilon);
|
||||
if (m_max_print_height == 0.0)
|
||||
build_volume.max.z() = std::numeric_limits<double>::max();
|
||||
@@ -325,7 +325,7 @@ bool BuildVolume::all_paths_inside(const GCodeProcessorResult& paths, const Boun
|
||||
static constexpr const double epsilon = BedEpsilon;
|
||||
|
||||
switch (m_type) {
|
||||
case Type::Rectangle:
|
||||
case BuildVolume_Type::Rectangle:
|
||||
{
|
||||
BoundingBox3Base<Vec3d> build_volume = this->bounding_volume().inflated(epsilon);
|
||||
if (m_max_print_height == 0.0)
|
||||
@@ -334,7 +334,7 @@ bool BuildVolume::all_paths_inside(const GCodeProcessorResult& paths, const Boun
|
||||
build_volume.min.z() = -std::numeric_limits<double>::max();
|
||||
return build_volume.contains(paths_bbox);
|
||||
}
|
||||
case Type::Circle:
|
||||
case BuildVolume_Type::Circle:
|
||||
{
|
||||
const Vec2f c = unscaled<float>(m_circle.center);
|
||||
const float r = unscaled<double>(m_circle.radius) + epsilon;
|
||||
@@ -345,9 +345,9 @@ bool BuildVolume::all_paths_inside(const GCodeProcessorResult& paths, const Boun
|
||||
std::all_of(paths.moves.begin(), paths.moves.end(), [move_valid, c, r2, z = m_max_print_height + epsilon](const GCodeProcessorResult::MoveVertex& move)
|
||||
{ return ! move_valid(move) || ((to_2d(move.position) - c).squaredNorm() <= r2 && move.position.z() <= z); });
|
||||
}
|
||||
case Type::Convex:
|
||||
case BuildVolume_Type::Convex:
|
||||
//FIXME doing test on convex hull until we learn to do test on non-convex polygons efficiently.
|
||||
case Type::Custom:
|
||||
case BuildVolume_Type::Custom:
|
||||
return m_max_print_height == 0.0 ?
|
||||
std::all_of(paths.moves.begin(), paths.moves.end(), [move_valid, this](const GCodeProcessorResult::MoveVertex &move)
|
||||
{ return ! move_valid(move) || Geometry::inside_convex_polygon(m_top_bottom_convex_hull_decomposition_bed, to_2d(move.position).cast<double>()); }) :
|
||||
@@ -375,7 +375,7 @@ bool BuildVolume::all_paths_inside_vertices_and_normals_interleaved(const std::v
|
||||
assert(paths.size() % 6 == 0);
|
||||
static constexpr const double epsilon = BedEpsilon;
|
||||
switch (m_type) {
|
||||
case Type::Rectangle:
|
||||
case BuildVolume_Type::Rectangle:
|
||||
{
|
||||
BoundingBox3Base<Vec3d> build_volume = this->bounding_volume().inflated(epsilon);
|
||||
if (m_max_print_height == 0.0)
|
||||
@@ -384,7 +384,7 @@ bool BuildVolume::all_paths_inside_vertices_and_normals_interleaved(const std::v
|
||||
build_volume.min.z() = -std::numeric_limits<double>::max();
|
||||
return build_volume.contains(paths_bbox.min().cast<double>()) && build_volume.contains(paths_bbox.max().cast<double>());
|
||||
}
|
||||
case Type::Circle:
|
||||
case BuildVolume_Type::Circle:
|
||||
{
|
||||
const Vec2f c = unscaled<float>(m_circle.center);
|
||||
const float r = unscaled<double>(m_circle.radius) + float(epsilon);
|
||||
@@ -393,9 +393,9 @@ bool BuildVolume::all_paths_inside_vertices_and_normals_interleaved(const std::v
|
||||
all_inside_vertices_normals_interleaved(paths, [c, r2](Vec3f p) { return (to_2d(p) - c).squaredNorm() <= r2; }) :
|
||||
all_inside_vertices_normals_interleaved(paths, [c, r2, z = m_max_print_height + epsilon](Vec3f p) { return (to_2d(p) - c).squaredNorm() <= r2 && p.z() <= z; });
|
||||
}
|
||||
case Type::Convex:
|
||||
case BuildVolume_Type::Convex:
|
||||
//FIXME doing test on convex hull until we learn to do test on non-convex polygons efficiently.
|
||||
case Type::Custom:
|
||||
case BuildVolume_Type::Custom:
|
||||
return m_max_print_height == 0.0 ?
|
||||
all_inside_vertices_normals_interleaved(paths, [this](Vec3f p) { return Geometry::inside_convex_polygon(m_top_bottom_convex_hull_decomposition_bed, to_2d(p).cast<double>()); }) :
|
||||
all_inside_vertices_normals_interleaved(paths, [this, z = m_max_print_height + epsilon](Vec3f p) { return Geometry::inside_convex_polygon(m_top_bottom_convex_hull_decomposition_bed, to_2d(p).cast<double>()) && p.z() <= z; });
|
||||
@@ -404,15 +404,15 @@ bool BuildVolume::all_paths_inside_vertices_and_normals_interleaved(const std::v
|
||||
}
|
||||
}
|
||||
|
||||
std::string_view BuildVolume::type_name(Type type)
|
||||
std::string_view BuildVolume::type_name(BuildVolume_Type type)
|
||||
{
|
||||
using namespace std::literals;
|
||||
switch (type) {
|
||||
case Type::Invalid: return "Invalid"sv;
|
||||
case Type::Rectangle: return "Rectangle"sv;
|
||||
case Type::Circle: return "Circle"sv;
|
||||
case Type::Convex: return "Convex"sv;
|
||||
case Type::Custom: return "Custom"sv;
|
||||
case BuildVolume_Type::Invalid: return "Invalid"sv;
|
||||
case BuildVolume_Type::Rectangle: return "Rectangle"sv;
|
||||
case BuildVolume_Type::Circle: return "Circle"sv;
|
||||
case BuildVolume_Type::Convex: return "Convex"sv;
|
||||
case BuildVolume_Type::Custom: return "Custom"sv;
|
||||
}
|
||||
// make visual studio happy
|
||||
assert(false);
|
||||
|
||||
@@ -12,24 +12,23 @@
|
||||
namespace Slic3r {
|
||||
|
||||
struct GCodeProcessorResult;
|
||||
|
||||
enum class BuildVolume_Type : unsigned char {
|
||||
// Not set yet or undefined.
|
||||
Invalid,
|
||||
// Rectangular print bed. Most common, cheap to work with.
|
||||
Rectangle,
|
||||
// Circular print bed. Common on detals, cheap to work with.
|
||||
Circle,
|
||||
// Convex print bed. Complex to process.
|
||||
Convex,
|
||||
// Some non convex shape.
|
||||
Custom
|
||||
};
|
||||
// For collision detection of objects and G-code (extrusion paths) against the build volume.
|
||||
class BuildVolume
|
||||
{
|
||||
public:
|
||||
enum class Type : unsigned char
|
||||
{
|
||||
// Not set yet or undefined.
|
||||
Invalid,
|
||||
// Rectangular print bed. Most common, cheap to work with.
|
||||
Rectangle,
|
||||
// Circular print bed. Common on detals, cheap to work with.
|
||||
Circle,
|
||||
// Convex print bed. Complex to process.
|
||||
Convex,
|
||||
// Some non convex shape.
|
||||
Custom
|
||||
};
|
||||
|
||||
|
||||
// Initialized to empty, all zeros, Invalid.
|
||||
BuildVolume() {}
|
||||
@@ -41,11 +40,11 @@ public:
|
||||
double printable_height() const { return m_max_print_height; }
|
||||
|
||||
// Derived data
|
||||
Type type() const { return m_type; }
|
||||
BuildVolume_Type type() const { return m_type; }
|
||||
// Format the type for console output.
|
||||
static std::string_view type_name(Type type);
|
||||
static std::string_view type_name(BuildVolume_Type type);
|
||||
std::string_view type_name() const { return type_name(m_type); }
|
||||
bool valid() const { return m_type != Type::Invalid; }
|
||||
bool valid() const { return m_type != BuildVolume_Type::Invalid; }
|
||||
// Same as printable_area(), but scaled coordinates.
|
||||
const Polygon& polygon() const { return m_polygon; }
|
||||
// Bounding box of polygon(), scaled.
|
||||
@@ -101,7 +100,7 @@ private:
|
||||
double m_max_print_height { 0.f };
|
||||
|
||||
// Derived values.
|
||||
Type m_type { Type::Invalid };
|
||||
BuildVolume_Type m_type { BuildVolume_Type::Invalid };
|
||||
// Geometry of the print bed, scaled copy of m_bed_shape.
|
||||
Polygon m_polygon;
|
||||
// Scaled snug bounding box around m_polygon.
|
||||
|
||||
@@ -1308,7 +1308,7 @@ void ConfigBase::save_to_json(const std::string &file, const std::string &name,
|
||||
{
|
||||
const ConfigOption* opt = this->option(opt_key);
|
||||
if ( opt->is_scalar() ) {
|
||||
if (opt->type() == coString)
|
||||
if (opt->type() == coString && (opt_key != "bed_custom_texture" && opt_key != "bed_custom_model"))
|
||||
//keep \n, \r, \t
|
||||
j[opt_key] = (dynamic_cast<const ConfigOptionString *>(opt))->value;
|
||||
else
|
||||
|
||||
@@ -1500,8 +1500,8 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
||||
file.write_format("; HEADER_BLOCK_START\n");
|
||||
// Write information on the generator.
|
||||
file.write_format("; generated by %s on %s\n", Slic3r::header_slic3r_generated().c_str(), Slic3r::Utils::local_timestamp().c_str());
|
||||
//BBS: total estimated printing time
|
||||
file.write_format(";%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Estimated_Printing_Time_Placeholder).c_str());
|
||||
if (is_bbl_printers)
|
||||
file.write_format(";%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Estimated_Printing_Time_Placeholder).c_str());
|
||||
//BBS: total layer number
|
||||
file.write_format(";%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Total_Layer_Number_Placeholder).c_str());
|
||||
file.write_format("; HEADER_BLOCK_END\n\n");
|
||||
@@ -1730,7 +1730,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
||||
auto pts = std::make_unique<ConfigOptionPoints>();
|
||||
pts->values.reserve(print.first_layer_convex_hull().size());
|
||||
for (const Point& pt : print.first_layer_convex_hull().points)
|
||||
pts->values.emplace_back(unscale(pt) - Vec2d(print.get_plate_origin().x(), print.get_plate_origin().y()));
|
||||
pts->values.emplace_back(print.translate_to_print_space(pt));
|
||||
BoundingBoxf bbox(pts->values);
|
||||
m_placeholder_parser.set("first_layer_print_convex_hull", pts.release());
|
||||
m_placeholder_parser.set("first_layer_print_min", new ConfigOptionFloats({bbox.min.x(), bbox.min.y()}));
|
||||
@@ -2662,12 +2662,16 @@ namespace Skirt {
|
||||
|
||||
} // namespace Skirt
|
||||
|
||||
inline std::string get_instance_name(const PrintObject *object, const PrintInstance &inst) {
|
||||
return (boost::format("%1%_id_%2%_copy_%3%") % object->model_object()->name % object->get_id() % inst.id).str();
|
||||
inline std::string get_instance_name(const PrintObject *object, size_t inst_id) {
|
||||
auto obj_name = object->model_object()->name;
|
||||
// replace space in obj_name with '-'
|
||||
std::replace(obj_name.begin(), obj_name.end(), ' ', '_');
|
||||
|
||||
return (boost::format("%1%_id_%2%_copy_%3%") % obj_name % object->get_id() % inst_id).str();
|
||||
}
|
||||
|
||||
inline std::string get_instance_name(const PrintObject *object, size_t inst_id) {
|
||||
return (boost::format("%1%_id_%2%_copy_%3%") % object->model_object()->name % object->get_id() % inst_id).str();
|
||||
inline std::string get_instance_name(const PrintObject *object, const PrintInstance &inst) {
|
||||
return get_instance_name(object, inst.id);
|
||||
}
|
||||
|
||||
// In sequential mode, process_layer is called once per each object and its copy,
|
||||
@@ -3870,7 +3874,13 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
|
||||
}
|
||||
|
||||
// calculate extrusion length per distance unit
|
||||
const auto _mm3_per_mm = path.mm3_per_mm * this->config().print_flow_ratio;
|
||||
auto _mm3_per_mm = path.mm3_per_mm * this->config().print_flow_ratio;
|
||||
if (path.role() == erTopSolidInfill)
|
||||
_mm3_per_mm *= m_config.top_solid_infill_flow_ratio;
|
||||
else if (path.role() == erBottomSurface)
|
||||
_mm3_per_mm *= m_config.bottom_solid_infill_flow_ratio;
|
||||
|
||||
|
||||
double e_per_mm = m_writer.extruder()->e_per_mm3() * _mm3_per_mm;
|
||||
|
||||
double min_speed = double(m_config.slow_down_min_speed.get_at(m_writer.extruder()->id()));
|
||||
@@ -4606,31 +4616,34 @@ std::string GCode::set_extruder(unsigned int extruder_id, double print_z)
|
||||
return gcode;
|
||||
}
|
||||
|
||||
inline std::string polygon_to_string(const Polygon &polygon) {
|
||||
inline std::string polygon_to_string(const Polygon &polygon, Print *print) {
|
||||
std::ostringstream gcode;
|
||||
gcode << "[";
|
||||
for (const Point &p : polygon.points) {
|
||||
gcode << "[" << unscaled(p.x()) << "," << unscaled(p.y()) << "],";
|
||||
const auto v = print->translate_to_print_space(p);
|
||||
gcode << "[" << v.x() << "," << v.y() << "],";
|
||||
}
|
||||
gcode << "[" << unscaled(polygon.points.front().x()) << "," << unscaled(polygon.points.front().y()) << "]";
|
||||
const auto first_v = print->translate_to_print_space(polygon.points.front());
|
||||
gcode << "[" << first_v.x() << "," << first_v.y() << "]";
|
||||
gcode << "]";
|
||||
return gcode.str();
|
||||
}
|
||||
// this function iterator PrintObject and assign a seqential id to each object.
|
||||
// this function iterator PrintObject and assign a seqential id to each object.
|
||||
// this id is used to generate unique object id for each object.
|
||||
std::string GCode::set_object_info(Print* print) {
|
||||
std::string GCode::set_object_info(Print *print) {
|
||||
std::ostringstream gcode;
|
||||
size_t object_id = 0;
|
||||
for (PrintObject* object : print->objects()) {
|
||||
for (PrintObject *object : print->objects()) {
|
||||
object->set_id(object_id++);
|
||||
size_t inst_id = 0;
|
||||
for (PrintInstance &inst : object->instances()) {
|
||||
inst.id = inst_id++;
|
||||
if (this->config().exclude_object && print->config().gcode_flavor.value == gcfKlipper) {
|
||||
auto bbox = inst.get_bounding_box();
|
||||
gcode << "EXCLUDE_OBJECT_DEFINE NAME=" << get_instance_name(object, inst)
|
||||
<< " CENTER=" << bbox.center().x() << "," << bbox.center().y()
|
||||
<< " POLYGON=" << polygon_to_string(inst.get_convex_hull_2d()) << "\n";
|
||||
auto center = print->translate_to_print_space(Vec2d(bbox.center().x(), bbox.center().y()));
|
||||
gcode << "EXCLUDE_OBJECT_DEFINE NAME=" << get_instance_name(object, inst) << " CENTER=" << center.x()
|
||||
<< "," << center.y() << " POLYGON=" << polygon_to_string(inst.get_convex_hull_2d(), print)
|
||||
<< "\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1945,6 +1945,15 @@ std::vector<Point> Print::first_layer_wipe_tower_corners(bool check_wipe_tower_e
|
||||
return corners;
|
||||
}
|
||||
|
||||
//SoftFever
|
||||
Vec2d Print::translate_to_print_space(const Vec2d &point) const {
|
||||
//const BoundingBoxf bed_bbox(config().printable_area.values);
|
||||
return Vec2d(point(0) - m_origin(0), point(1) - m_origin(1));
|
||||
}
|
||||
|
||||
Vec2d Print::translate_to_print_space(const Point &point) const {
|
||||
return Vec2d(unscaled(point.x()) - m_origin(0), unscaled(point.y()) - m_origin(1));
|
||||
}
|
||||
void Print::finalize_first_layer_convex_hull()
|
||||
{
|
||||
append(m_first_layer_convex_hull.points, m_skirt_convex_hull);
|
||||
|
||||
@@ -750,6 +750,9 @@ public:
|
||||
const CalibMode calib_mode() const { return m_calib_params.mode; }
|
||||
void set_calib_params(const Calib_Params& params);
|
||||
const Calib_Params& calib_params() const { return m_calib_params; }
|
||||
Vec2d translate_to_print_space(const Vec2d &point) const;
|
||||
// scaled point
|
||||
Vec2d translate_to_print_space(const Point &point) const;
|
||||
protected:
|
||||
// Invalidates the step, and its depending steps in Print.
|
||||
bool invalidate_step(PrintStep step);
|
||||
|
||||
@@ -1228,7 +1228,7 @@ void PrintConfigDef::init_fff_params()
|
||||
def->tooltip = L("Default filament color");
|
||||
def->gui_type = ConfigOptionDef::GUIType::color;
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionStrings{"#F2754E"});
|
||||
def->set_default_value(new ConfigOptionStrings{""});
|
||||
|
||||
def = this->add("filament_colour", coStrings);
|
||||
def->label = L("Color");
|
||||
@@ -2184,7 +2184,7 @@ void PrintConfigDef::init_fff_params()
|
||||
def->tooltip = L("Diameter of nozzle");
|
||||
def->sidetext = L("mm");
|
||||
def->mode = comAdvanced;
|
||||
def->max = 1.8;
|
||||
def->max = 100;
|
||||
def->set_default_value(new ConfigOptionFloats { 0.4 });
|
||||
|
||||
def = this->add("host_type", coEnum);
|
||||
|
||||
@@ -22,15 +22,10 @@ Flow PrintRegion::flow(const PrintObject &object, FlowRole role, double layer_he
|
||||
{
|
||||
const PrintConfig &print_config = object.print()->config();
|
||||
ConfigOptionFloat config_width;
|
||||
double flow_ratio = 1.0;
|
||||
// Get extrusion width from configuration.
|
||||
// (might be an absolute value, or a percent value, or zero for auto)
|
||||
if (first_layer) {
|
||||
if(role != frExternalPerimeter)
|
||||
flow_ratio = m_config.bottom_solid_infill_flow_ratio;
|
||||
if(print_config.initial_layer_line_width.value > 0) {
|
||||
config_width = print_config.initial_layer_line_width;
|
||||
}
|
||||
if (first_layer && print_config.initial_layer_line_width.value > 0) {
|
||||
config_width = print_config.initial_layer_line_width;
|
||||
} else if (role == frExternalPerimeter) {
|
||||
config_width = m_config.outer_wall_line_width;
|
||||
} else if (role == frPerimeter) {
|
||||
@@ -41,7 +36,6 @@ Flow PrintRegion::flow(const PrintObject &object, FlowRole role, double layer_he
|
||||
config_width = m_config.internal_solid_infill_line_width;
|
||||
} else if (role == frTopSolidInfill) {
|
||||
config_width = m_config.top_surface_line_width;
|
||||
flow_ratio = m_config.top_solid_infill_flow_ratio;
|
||||
} else {
|
||||
throw Slic3r::InvalidArgument("Unknown role");
|
||||
}
|
||||
@@ -52,7 +46,7 @@ Flow PrintRegion::flow(const PrintObject &object, FlowRole role, double layer_he
|
||||
// Get the configured nozzle_diameter for the extruder associated to the flow role requested.
|
||||
// Here this->extruder(role) - 1 may underflow to MAX_INT, but then the get_at() will follback to zero'th element, so everything is all right.
|
||||
auto nozzle_diameter = float(print_config.nozzle_diameter.get_at(this->extruder(role) - 1));
|
||||
return Flow::new_from_config_width(role, config_width, nozzle_diameter, float(layer_height)).with_flow_ratio(flow_ratio);
|
||||
return Flow::new_from_config_width(role, config_width, nozzle_diameter, float(layer_height));
|
||||
}
|
||||
|
||||
coordf_t PrintRegion::nozzle_dmr_avg(const PrintConfig &print_config) const
|
||||
|
||||
@@ -6,13 +6,13 @@ PRODUCTVERSION @SLIC3R_VERSION@
|
||||
{
|
||||
BLOCK "040904E4"
|
||||
{
|
||||
VALUE "CompanyName", "Bambu Research"
|
||||
VALUE "CompanyName", "SoftFever"
|
||||
VALUE "FileDescription", "@SLIC3R_APP_NAME@ G-code Viewer"
|
||||
VALUE "FileVersion", "@SLIC3R_BUILD_ID@"
|
||||
VALUE "ProductName", "@SLIC3R_APP_NAME@ G-code Viewer"
|
||||
VALUE "ProductVersion", "@SLIC3R_BUILD_ID@"
|
||||
VALUE "InternalName", "@SLIC3R_APP_NAME@ G-code Viewer"
|
||||
VALUE "LegalCopyright", "Copyright(C) 2021-2023 Lunkuo All Rights Reserved"
|
||||
VALUE "LegalCopyright", ""
|
||||
VALUE "OriginalFilename", "bambu-gcodeviewer.exe"
|
||||
}
|
||||
}
|
||||
@@ -22,4 +22,4 @@ PRODUCTVERSION @SLIC3R_VERSION@
|
||||
}
|
||||
}
|
||||
2 ICON "@SLIC3R_RESOURCES_DIR@/images/BambuStudio-gcodeviewer.ico"
|
||||
1 24 "BambuStudio.manifest"
|
||||
1 24 "OrcaSlicer.manifest"
|
||||
@@ -6,13 +6,13 @@ PRODUCTVERSION @SLIC3R_VERSION@
|
||||
{
|
||||
BLOCK "040904E4"
|
||||
{
|
||||
VALUE "CompanyName", "Bambu Research"
|
||||
VALUE "CompanyName", "SoftFever"
|
||||
VALUE "FileDescription", "@SLIC3R_APP_NAME@"
|
||||
VALUE "FileVersion", "@SLIC3R_BUILD_ID@"
|
||||
VALUE "ProductName", "@SLIC3R_APP_NAME@"
|
||||
VALUE "ProductVersion", "@SLIC3R_BUILD_ID@"
|
||||
VALUE "InternalName", "@SLIC3R_APP_NAME@"
|
||||
VALUE "LegalCopyright", "Copyright(C) 2021-2023 Lunkuo All Rights Reserved"
|
||||
VALUE "LegalCopyright", ""
|
||||
VALUE "OriginalFilename", "orca-slicer.exe"
|
||||
}
|
||||
}
|
||||
@@ -21,5 +21,5 @@ PRODUCTVERSION @SLIC3R_VERSION@
|
||||
VALUE "Translation", 0x409, 1252
|
||||
}
|
||||
}
|
||||
2 ICON "@SLIC3R_RESOURCES_DIR@/images/BambuStudio.ico"
|
||||
1 24 "BambuStudio.manifest"
|
||||
2 ICON "@SLIC3R_RESOURCES_DIR@/images/OrcaSlicer.ico"
|
||||
1 24 "OrcaSlicer.manifest"
|
||||
@@ -338,7 +338,6 @@ void Bed3D::render_internal(GLCanvas3D& canvas, bool bottom, float scale_factor,
|
||||
|
||||
if (show_axes)
|
||||
render_axes();
|
||||
|
||||
glsafe(::glEnable(GL_DEPTH_TEST));
|
||||
|
||||
m_model.set_color(-1, m_is_dark ? DEFAULT_MODEL_COLOR_DARK : DEFAULT_MODEL_COLOR);
|
||||
@@ -631,9 +630,9 @@ GeometryBuffer Bed3D::update_bed_triangles() const
|
||||
BoundingBoxf3 build_volume;
|
||||
|
||||
if (!m_build_volume.valid()) return new_triangles;
|
||||
|
||||
(*model_offset_ptr)(0) = m_build_volume.bounding_volume2d().min.x();
|
||||
(*model_offset_ptr)(1) = m_build_volume.bounding_volume2d().min.y();
|
||||
auto bed_ext = get_extents(m_bed_shape);
|
||||
(*model_offset_ptr)(0) = m_build_volume.bounding_volume2d().min.x() - bed_ext.min.x();
|
||||
(*model_offset_ptr)(1) = m_build_volume.bounding_volume2d().min.y() - bed_ext.min.y();
|
||||
(*model_offset_ptr)(2) = -0.41 + GROUND_Z;
|
||||
|
||||
std::vector<Vec2d> new_bed_shape;
|
||||
|
||||
@@ -131,6 +131,9 @@ public:
|
||||
// Was the model generated procedurally?
|
||||
bool is_custom() const { return m_type == Type::Custom; }
|
||||
|
||||
// get the bed shape type
|
||||
BuildVolume_Type get_build_volume_type() const { return m_build_volume.type(); }
|
||||
|
||||
// Bounding box around the print bed, axes and model, for rendering.
|
||||
const BoundingBoxf3& extended_bounding_box() const { return m_extended_bounding_box; }
|
||||
|
||||
|
||||
@@ -1414,14 +1414,14 @@ bool GLVolumeCollection::check_outside_state(const BuildVolume &build_volume, Mo
|
||||
state = BuildVolume::ObjectState::Below;
|
||||
else {
|
||||
switch (plate_build_volume.type()) {
|
||||
case BuildVolume::Type::Rectangle:
|
||||
case BuildVolume_Type::Rectangle:
|
||||
//FIXME this test does not evaluate collision of a build volume bounding box with non-convex objects.
|
||||
state = plate_build_volume.volume_state_bbox(bb);
|
||||
break;
|
||||
case BuildVolume::Type::Circle:
|
||||
case BuildVolume::Type::Convex:
|
||||
case BuildVolume_Type::Circle:
|
||||
case BuildVolume_Type::Convex:
|
||||
//FIXME doing test on convex hull until we learn to do test on non-convex polygons efficiently.
|
||||
case BuildVolume::Type::Custom:
|
||||
case BuildVolume_Type::Custom:
|
||||
state = plate_build_volume.object_state(volume_convex_mesh(*volume).its, volume->world_matrix().cast<float>(), volume_sinking(*volume));
|
||||
break;
|
||||
default:
|
||||
|
||||
@@ -56,7 +56,6 @@ void BedShape::append_option_line(ConfigOptionsGroupShp optgroup, Parameter para
|
||||
def.max = 1073.5;
|
||||
def.label = get_option_label(param);
|
||||
def.tooltip = L("Distance of the 0,0 G-code coordinate from the front left corner of the rectangle.");
|
||||
def.readonly = true;
|
||||
key = "rect_origin";
|
||||
break;
|
||||
case Parameter::Diameter:
|
||||
@@ -89,11 +88,11 @@ wxString BedShape::get_name(PageType type)
|
||||
BedShape::PageType BedShape::get_page_type()
|
||||
{
|
||||
switch (m_build_volume.type()) {
|
||||
case BuildVolume::Type::Rectangle:
|
||||
case BuildVolume::Type::Invalid: return PageType::Rectangle;
|
||||
case BuildVolume::Type::Circle: return PageType::Circle;
|
||||
case BuildVolume::Type::Convex:
|
||||
case BuildVolume::Type::Custom: return PageType::Custom;
|
||||
case BuildVolume_Type::Rectangle:
|
||||
case BuildVolume_Type::Invalid: return PageType::Rectangle;
|
||||
case BuildVolume_Type::Circle: return PageType::Circle;
|
||||
case BuildVolume_Type::Convex:
|
||||
case BuildVolume_Type::Custom: return PageType::Custom;
|
||||
}
|
||||
// make visual studio happy
|
||||
assert(false);
|
||||
@@ -104,7 +103,7 @@ wxString BedShape::get_full_name_with_params()
|
||||
{
|
||||
wxString out = _L("Shape") + ": " + get_name(this->get_page_type());
|
||||
switch (m_build_volume.type()) {
|
||||
case BuildVolume::Type::Circle:
|
||||
case BuildVolume_Type::Circle:
|
||||
out += "\n" + _L(get_option_label(Parameter::Diameter)) + ": [" + double_to_string(2. * unscaled<double>(m_build_volume.circle().radius)) + "]";
|
||||
break;
|
||||
default:
|
||||
@@ -119,7 +118,7 @@ wxString BedShape::get_full_name_with_params()
|
||||
void BedShape::apply_optgroup_values(ConfigOptionsGroupShp optgroup)
|
||||
{
|
||||
switch (m_build_volume.type()) {
|
||||
case BuildVolume::Type::Circle:
|
||||
case BuildVolume_Type::Circle:
|
||||
optgroup->set_value("diameter", double_to_string(2. * unscaled<double>(m_build_volume.circle().radius)));
|
||||
break;
|
||||
default:
|
||||
@@ -170,12 +169,12 @@ void BedShapeDialog::on_dpi_changed(const wxRect &suggested_rect)
|
||||
const std::string BedShapePanel::NONE = "None";
|
||||
const std::string BedShapePanel::EMPTY_STRING = "";
|
||||
|
||||
void BedShapePanel::build_panel(const ConfigOptionPoints& default_pt, const ConfigOptionString& custom_texture, const ConfigOptionString& custom_model)
|
||||
void BedShapePanel::build_panel(const ConfigOptionPoints& default_pt, const std::string& custom_texture, const std::string& custom_model)
|
||||
{
|
||||
wxGetApp().UpdateDarkUI(this);
|
||||
m_shape = default_pt.values;
|
||||
m_custom_texture = custom_texture.value.empty() ? NONE : custom_texture.value;
|
||||
m_custom_model = custom_model.value.empty() ? NONE : custom_model.value;
|
||||
m_custom_texture = custom_texture.empty() ? NONE : custom_texture;
|
||||
m_custom_model = custom_model.empty() ? NONE : custom_model;
|
||||
|
||||
auto sbsizer = new wxStaticBoxSizer(wxVERTICAL, this, _L("Shape"));
|
||||
sbsizer->GetStaticBox()->SetFont(wxGetApp().bold_font());
|
||||
@@ -192,9 +191,9 @@ void BedShapePanel::build_panel(const ConfigOptionPoints& default_pt, const Conf
|
||||
BedShape::append_option_line(optgroup, BedShape::Parameter::RectOrigin);
|
||||
activate_options_page(optgroup);
|
||||
|
||||
// optgroup = init_shape_options_page(BedShape::get_name(BedShape::PageType::Circle));
|
||||
// BedShape::append_option_line(optgroup, BedShape::Parameter::Diameter);
|
||||
// activate_options_page(optgroup);
|
||||
optgroup = init_shape_options_page(BedShape::get_name(BedShape::PageType::Circle));
|
||||
BedShape::append_option_line(optgroup, BedShape::Parameter::Diameter);
|
||||
activate_options_page(optgroup);
|
||||
|
||||
optgroup = init_shape_options_page(BedShape::get_name(BedShape::PageType::Custom));
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ struct BedShape
|
||||
|
||||
BedShape(const ConfigOptionPoints& points);
|
||||
|
||||
bool is_custom() { return m_build_volume.type() == BuildVolume::Type::Convex || m_build_volume.type() == BuildVolume::Type::Custom; }
|
||||
bool is_custom() { return m_build_volume.type() == BuildVolume_Type::Convex || m_build_volume.type() == BuildVolume_Type::Custom; }
|
||||
|
||||
static void append_option_line(ConfigOptionsGroupShp optgroup, Parameter param);
|
||||
static wxString get_name(PageType type);
|
||||
@@ -63,7 +63,7 @@ class BedShapePanel : public wxPanel
|
||||
public:
|
||||
BedShapePanel(wxWindow* parent) : wxPanel(parent, wxID_ANY), m_custom_texture(NONE), m_custom_model(NONE) {}
|
||||
|
||||
void build_panel(const ConfigOptionPoints& default_pt, const ConfigOptionString& custom_texture, const ConfigOptionString& custom_model);
|
||||
void build_panel(const ConfigOptionPoints& default_pt, const std::string& custom_texture, const std::string& custom_model);
|
||||
|
||||
// Returns the resulting bed shape polygon. This value will be stored to the ini file.
|
||||
const std::vector<Vec2d>& get_shape() const { return m_shape; }
|
||||
|
||||
@@ -116,7 +116,7 @@ RetinaHelper::~RetinaHelper() {}
|
||||
float RetinaHelper::get_scale_factor() { return float(m_window->GetContentScaleFactor()); }
|
||||
#endif // __WXGTK3__
|
||||
|
||||
// Fixed the collision between BuildVolume::Type::Convex and macro Convex defined inside /usr/include/X11/X.h that is included by WxWidgets 3.0.
|
||||
// Fixed the collision between BuildVolume_Type::Convex and macro Convex defined inside /usr/include/X11/X.h that is included by WxWidgets 3.0.
|
||||
#if defined(__linux__) && defined(Convex)
|
||||
#undef Convex
|
||||
#endif
|
||||
@@ -6542,22 +6542,22 @@ void GLCanvas3D::_render_objects(GLVolumeCollection::ERenderType type, bool with
|
||||
|
||||
if (const BuildVolume &build_volume = m_bed.build_volume(); build_volume.valid()) {
|
||||
switch (build_volume.type()) {
|
||||
case BuildVolume::Type::Rectangle: {
|
||||
case BuildVolume_Type::Rectangle: {
|
||||
const BoundingBox3Base<Vec3d> bed_bb = build_volume.bounding_volume().inflated(BuildVolume::SceneEpsilon);
|
||||
m_volumes.set_print_volume({ 0, // Rectangle
|
||||
{ float(bed_bb.min.x()), float(bed_bb.min.y()), float(bed_bb.max.x()), float(bed_bb.max.y()) },
|
||||
{ 0.0f, float(build_volume.printable_height()) } });
|
||||
break;
|
||||
}
|
||||
case BuildVolume::Type::Circle: {
|
||||
case BuildVolume_Type::Circle: {
|
||||
m_volumes.set_print_volume({ 1, // Circle
|
||||
{ unscaled<float>(build_volume.circle().center.x()), unscaled<float>(build_volume.circle().center.y()), unscaled<float>(build_volume.circle().radius + BuildVolume::SceneEpsilon), 0.0f },
|
||||
{ 0.0f, float(build_volume.printable_height() + BuildVolume::SceneEpsilon) } });
|
||||
break;
|
||||
}
|
||||
default:
|
||||
case BuildVolume::Type::Convex:
|
||||
case BuildVolume::Type::Custom: {
|
||||
case BuildVolume_Type::Convex:
|
||||
case BuildVolume_Type::Custom: {
|
||||
m_volumes.set_print_volume({ static_cast<int>(type),
|
||||
{ -FLT_MAX, -FLT_MAX, FLT_MAX, FLT_MAX },
|
||||
{ -FLT_MAX, FLT_MAX } }
|
||||
|
||||
@@ -488,7 +488,7 @@ wxMenu* MenuFactory::append_submenu_add_generic(wxMenu* menu, ModelVolumeType ty
|
||||
std::vector<boost::filesystem::path> input_files;
|
||||
std::string file_name = item;
|
||||
if (file_name == "Orca Cube")
|
||||
file_name = "OrcaCube_v1.3mf";
|
||||
file_name = "OrcaCube_v2.3mf";
|
||||
else if (file_name == "3DBenchy")
|
||||
file_name = "3DBenchy.stl";
|
||||
else if (file_name == "Autodesk FDM Test")
|
||||
|
||||
@@ -3286,7 +3286,7 @@ ObjectTableDialog::ObjectTableDialog(wxWindow* parent, Plater* platerObj, Model
|
||||
auto m_main_sizer = new wxBoxSizer(wxVERTICAL);
|
||||
|
||||
// icon
|
||||
std::string icon_path = (boost::format("%1%/images/BambuStudio.ico") % resources_dir()).str();
|
||||
std::string icon_path = (boost::format("%1%/images/OrcaSlicer.ico") % resources_dir()).str();
|
||||
SetIcon(wxIcon(encode_path(icon_path.c_str()), wxBITMAP_TYPE_ICO));
|
||||
|
||||
//top line
|
||||
|
||||