mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-16 07:36:02 +08:00
Merge branch 'master' into libArachne_rebased
This commit is contained in:
commit
f22e223d72
2
.github/ISSUE_TEMPLATE/featurerequest.yaml
vendored
2
.github/ISSUE_TEMPLATE/featurerequest.yaml
vendored
@ -28,7 +28,7 @@ body:
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Describe alternatives you've considered
|
||||
description: A clear and concise description of any alternative solutions or features you've considered. Again, if possible, think about why these alternatives are not working out.
|
||||
description: A clear and concise description of any alternative solutions or features you've considered. If possible, think about why these alternatives are not working out.
|
||||
placeholder: The alternatives I've considered are...
|
||||
validations:
|
||||
required: true
|
||||
|
@ -58,6 +58,11 @@ class Account(QObject):
|
||||
manualSyncEnabledChanged = pyqtSignal(bool)
|
||||
updatePackagesEnabledChanged = pyqtSignal(bool)
|
||||
|
||||
CLIENT_SCOPES = "account.user.read drive.backup.read drive.backup.write packages.download " \
|
||||
"packages.rating.read packages.rating.write connect.cluster.read connect.cluster.write " \
|
||||
"library.project.read library.project.write cura.printjob.read cura.printjob.write " \
|
||||
"cura.mesh.read cura.mesh.write"
|
||||
|
||||
def __init__(self, application: "CuraApplication", parent = None) -> None:
|
||||
super().__init__(parent)
|
||||
self._application = application
|
||||
@ -79,10 +84,7 @@ class Account(QObject):
|
||||
CALLBACK_PORT=self._callback_port,
|
||||
CALLBACK_URL="http://localhost:{}/callback".format(self._callback_port),
|
||||
CLIENT_ID="um----------------------------ultimaker_cura",
|
||||
CLIENT_SCOPES="account.user.read drive.backup.read drive.backup.write packages.download "
|
||||
"packages.rating.read packages.rating.write connect.cluster.read connect.cluster.write "
|
||||
"library.project.read library.project.write cura.printjob.read cura.printjob.write "
|
||||
"cura.mesh.read cura.mesh.write",
|
||||
CLIENT_SCOPES=self.CLIENT_SCOPES,
|
||||
AUTH_DATA_PREFERENCE_KEY="general/ultimaker_auth_data",
|
||||
AUTH_SUCCESS_REDIRECT="{}/app/auth-success".format(self._oauth_root),
|
||||
AUTH_FAILED_REDIRECT="{}/app/auth-error".format(self._oauth_root)
|
||||
|
@ -75,7 +75,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
|
||||
# Clip the disallowed areas so that they don't overlap the bounding box (The arranger chokes otherwise)
|
||||
clipped_area = area.intersectionConvexHulls(build_plate_polygon)
|
||||
|
||||
if clipped_area.getPoints() is not None: # numpy array has to be explicitly checked against None
|
||||
if clipped_area.getPoints() is not None and len(clipped_area.getPoints()) > 2: # numpy array has to be explicitly checked against None
|
||||
for point in clipped_area.getPoints():
|
||||
converted_points.append(Point(int(point[0] * factor), int(point[1] * factor)))
|
||||
|
||||
@ -88,7 +88,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
|
||||
converted_points = []
|
||||
hull_polygon = node.callDecoration("getConvexHull")
|
||||
|
||||
if hull_polygon is not None and hull_polygon.getPoints() is not None: # numpy array has to be explicitly checked against None
|
||||
if hull_polygon is not None and hull_polygon.getPoints() is not None and len(hull_polygon.getPoints()) > 2: # numpy array has to be explicitly checked against None
|
||||
for point in hull_polygon.getPoints():
|
||||
converted_points.append(Point(point[0] * factor, point[1] * factor))
|
||||
item = Item(converted_points)
|
||||
|
@ -18,6 +18,9 @@ if Platform.isWindows() and hasattr(sys, "frozen"):
|
||||
import win32timezone
|
||||
from keyring.backends.Windows import WinVaultKeyring
|
||||
keyring.set_keyring(WinVaultKeyring())
|
||||
if Platform.isOSX() and hasattr(sys, "frozen"):
|
||||
from keyring.backends.macOS import Keyring
|
||||
keyring.set_keyring(Keyring())
|
||||
|
||||
# Even if errors happen, we don't want this stored locally:
|
||||
DONT_EVER_STORE_LOCALLY: List[str] = ["refresh_token"]
|
||||
|
@ -164,5 +164,16 @@ Rectangle
|
||||
onExited: manageQueueText.font.underline = false
|
||||
}
|
||||
}
|
||||
Label
|
||||
{
|
||||
id: noConnectionLabel
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
visible: !isNetworkConfigurable
|
||||
text: catalog.i18nc("@info", "In order to monitor your print from Cura, please connect the printer.")
|
||||
font: UM.Theme.getFont("medium")
|
||||
color: UM.Theme.getColor("text")
|
||||
wrapMode: Text.WordWrap
|
||||
width: contentWidth
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -287,7 +287,7 @@ class CloudOutputDevice(UltimakerNetworkedPrinterOutputDevice):
|
||||
firmware_version = Version([version_number[0], version_number[1], version_number[2]])
|
||||
return firmware_version >= self.PRINT_JOB_ACTIONS_MIN_VERSION
|
||||
|
||||
@pyqtProperty(bool)
|
||||
@pyqtProperty(bool, constant = True)
|
||||
def supportsPrintJobQueue(self) -> bool:
|
||||
"""Gets whether the printer supports a queue"""
|
||||
|
||||
|
@ -4,8 +4,10 @@
|
||||
import configparser
|
||||
from typing import Tuple, List
|
||||
import io
|
||||
import json
|
||||
|
||||
from UM.VersionUpgrade import VersionUpgrade
|
||||
from cura.API import Account
|
||||
|
||||
|
||||
class VersionUpgrade48to49(VersionUpgrade):
|
||||
@ -32,6 +34,13 @@ class VersionUpgrade48to49(VersionUpgrade):
|
||||
if "categories_expanded" in parser["cura"] and any([setting in parser["cura"]["categories_expanded"] for setting in self._moved_visibility_settings]):
|
||||
parser["cura"]["categories_expanded"] += ";top_bottom"
|
||||
|
||||
# If the account scope in 4.8 is outdated, delete it so that the user is enforced to log in again and get the
|
||||
# correct permissions.
|
||||
if "ultimaker_auth_data" in parser["general"]:
|
||||
ultimaker_auth_data = json.loads(parser["general"]["ultimaker_auth_data"])
|
||||
if set(Account.CLIENT_SCOPES.split(" ")) - set(ultimaker_auth_data["scope"].split(" ")):
|
||||
parser["general"]["ultimaker_auth_data"] = "{}"
|
||||
|
||||
result = io.StringIO()
|
||||
parser.write(result)
|
||||
return [filename], [result.getvalue()]
|
||||
|
@ -1,14 +1,18 @@
|
||||
cffi==1.14.1
|
||||
colorlog
|
||||
cryptography==3.4.6
|
||||
importlib-metadata==3.7.2
|
||||
mypy==0.740
|
||||
PyQt5==5.10
|
||||
numpy==1.15.4
|
||||
scipy==1.2.0
|
||||
shapely[vectorized]==1.6.4.post2
|
||||
numpy==1.20.2
|
||||
PyQt5==5.15.2
|
||||
PyQt5-sip==12.8.1
|
||||
scipy==1.6.1
|
||||
shapely[vectorized]==1.7.1
|
||||
twisted==21.2.0
|
||||
typing
|
||||
appdirs==1.4.3
|
||||
certifi==2019.11.28
|
||||
cffi==1.13.1
|
||||
chardet==3.0.4
|
||||
cryptography==2.8
|
||||
decorator==4.4.0
|
||||
idna==2.8
|
||||
netifaces==0.10.9
|
||||
@ -26,10 +30,7 @@ requests==2.22.0
|
||||
sentry-sdk==0.13.5
|
||||
six==1.12.0
|
||||
trimesh==3.2.33
|
||||
typing==3.7.4
|
||||
twisted==19.10.0
|
||||
urllib3==1.25.6
|
||||
PyYAML==5.1.2
|
||||
zeroconf==0.24.1
|
||||
comtypes==1.1.7
|
||||
pywin32==300
|
||||
|
159
resources/definitions/atom3.def.json
Normal file
159
resources/definitions/atom3.def.json
Normal file
@ -0,0 +1,159 @@
|
||||
{
|
||||
"version": 2,
|
||||
"name": "Atom 3",
|
||||
"inherits": "fdmprinter",
|
||||
"metadata": {
|
||||
"visible": true,
|
||||
"author": "Daniel Kurth",
|
||||
"manufacturer": "Layer One",
|
||||
"platform_offset": [0, 0, 0],
|
||||
"has_machine_quality": false,
|
||||
"has_materials": true,
|
||||
"preferred_material": "layer_one_dark_gray_pla",
|
||||
"has_variants": true,
|
||||
"preferred_variant_name": "PTFE hotend + 0.4mm brass nozzle",
|
||||
"preferred_quality_type": "normal",
|
||||
"variants_name": "Tool:",
|
||||
"platform": "Atom 3 bed.3mf",
|
||||
"machine_extruder_trains":
|
||||
{
|
||||
"0": "atom3_extruder_0"
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
"overrides": {
|
||||
|
||||
"machine_name": { "default_value": "Atom 3" },
|
||||
"machine_show_variants": { "default_value": true},
|
||||
"machine_shape": { "default_value": "elliptic" },
|
||||
"machine_width": { "default_value": 270},
|
||||
"machine_depth": { "default_value": 270},
|
||||
"machine_height": { "default_value": 340},
|
||||
"machine_center_is_zero": { "default_value": true},
|
||||
"machine_nozzle_head_distance": { "default_value": 6},
|
||||
"machine_head_with_fans_polygon":
|
||||
{
|
||||
"default_value":[
|
||||
[-23.82, 51.25],
|
||||
[23.82, 51.25],
|
||||
[56.292 , -5.00],
|
||||
[32.476, -46.250],
|
||||
[-32.476, -46.25],
|
||||
[-56.292, -5.00]
|
||||
]
|
||||
},
|
||||
"machine_gcode_flavor": { "RepRap (Marlin/Sprinter)": "Marlin" },
|
||||
"machine_heated_bed": { "default_value": true },
|
||||
"material_diameter": { "default_value": 1.75},
|
||||
"machine_start_gcode": {
|
||||
"default_value": ";MACHINE START CODE\nG21 ;metric values\nG90 ;absolute positioning\nG28 ;home\nG1 Z5 F9000\n;MACHINE START CODE"
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default_value": ";MACHINE END CODE\nG91 ;relative positioning\nG1 E-1 F300 ;retract filament release pressure\nG1 Z+1.0 E-5 F9000 ;move up a and retract more\nG90 ;absolute positioning\nG28; home\nM84 ;steppers off\n;MACHINE END CODE"
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
"layer_height": {"default_value": 0.2 },
|
||||
"layer_height_0": {
|
||||
"default_value": 0.2,
|
||||
"value": "layer_height"
|
||||
},
|
||||
"line_width": { "value": "machine_nozzle_size"},
|
||||
"infill_line_width": { "value":"line_width"},
|
||||
"initial_layer_line_width_factor": { "default_value": 100},
|
||||
|
||||
|
||||
|
||||
|
||||
"top_bottom_thickness": { "default_value": 1.0},
|
||||
|
||||
|
||||
|
||||
|
||||
"infill_sparse_density": { "default_value": 17},
|
||||
"infill_before_walls": { "value": false},
|
||||
"zig_zaggify_infill": { "value": true},
|
||||
|
||||
|
||||
|
||||
|
||||
"default_material_print_temperature": { "default_value": 200 },
|
||||
"material_print_temperature_layer_0": { "value": "material_print_temperature + 0"},
|
||||
"material_initial_print_temperature": { "value": "material_print_temperature_layer_0"},
|
||||
"material_final_print_temperature": { "value": "material_print_temperature"},
|
||||
"default_material_bed_temperature": {
|
||||
"default_value": 60,
|
||||
"minimum_value": "0",
|
||||
"minimum_value_warning": "build_volume_temperature",
|
||||
"maximum_value_warning": "115",
|
||||
"maximum_value": "120"
|
||||
},
|
||||
"material_bed_temperature":
|
||||
{
|
||||
"value": "round(default_material_bed_temperature-((-0.202*default_material_bed_temperature)+7.16)) if default_material_bed_temperature > 40 else default_material_bed_temperature",
|
||||
"minimum_value": "0",
|
||||
"minimum_value_warning": "build_volume_temperature",
|
||||
"maximum_value_warning": "115",
|
||||
"maximum_value": "120"
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
"speed_print": { "default_value": 40},
|
||||
"speed_wall": { "value": "speed_print * 0.75"},
|
||||
"speed_wall_0": { "value": "speed_print * 0.5"},
|
||||
"speed_wall_x": { "value": "speed_print * 0.75"},
|
||||
"speed_layer_0": { "value": "20"},
|
||||
"speed_slowdown_layers": { "default_value": 1},
|
||||
|
||||
|
||||
|
||||
|
||||
"retraction_amount": {
|
||||
"default_value": 7,
|
||||
"maximum_value_warning": 9 },
|
||||
"retraction_speed": {
|
||||
"default_value": 70,
|
||||
"maximum_value_warning": 80
|
||||
},
|
||||
"retraction_hop_enabled": { "default_value": true},
|
||||
"retraction_hop": { "default_value": 0.5},
|
||||
|
||||
|
||||
|
||||
|
||||
"cool_min_layer_time": { "default_value": 5},
|
||||
"cool_min_speed": { "default_value": 10},
|
||||
"cool_lift_head": { "default_value": false},
|
||||
|
||||
|
||||
|
||||
|
||||
"support_type": { "default_value": "everywhere"},
|
||||
"support_angle": { "default_value": 60},
|
||||
"support_z_distance": { "value": "layer_height"},
|
||||
"support_xy_distance_overhang":{"value": "machine_nozzle_size"},
|
||||
|
||||
|
||||
|
||||
|
||||
"adhesion_type": { "default_value": "skirt"},
|
||||
"skirt_brim_minimal_length": {
|
||||
"default_value": 750,
|
||||
"value": "60/(layer_height_0*line_width)",
|
||||
"minimum_value": "0",
|
||||
"minimum_value_warning": "25",
|
||||
"maximum_value_warning": "4000"
|
||||
},
|
||||
"skirt_gap": {
|
||||
"default_value": "1`",
|
||||
"value": "3*wall_line_width_0"
|
||||
}
|
||||
}
|
||||
}
|
62
resources/definitions/atom3_lite.def.json
Normal file
62
resources/definitions/atom3_lite.def.json
Normal file
@ -0,0 +1,62 @@
|
||||
{
|
||||
"version": 2,
|
||||
"name": "Atom 3 Lite",
|
||||
"inherits": "atom3",
|
||||
"metadata": {
|
||||
"author": "Daniel Kurth",
|
||||
"manufacturer": "Layer One",
|
||||
"platform_offset": [0, 0, 0],
|
||||
"preferred_variant_name": "PTFE hotend + 0.4mm brass nozzle",
|
||||
"platform": "Atom 3 lite bed.3mf"
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
"overrides": {
|
||||
"machine_head_with_fans_polygon":
|
||||
{
|
||||
"default_value":
|
||||
[
|
||||
[-23.82, 41.25],
|
||||
[23.82, 41.25],
|
||||
[38.105, 16.5],
|
||||
[57.631 , 16.5],
|
||||
|
||||
[57.631 , -16.5],
|
||||
[38.105, -16.5],
|
||||
[23.82, -41.25],
|
||||
[-23.82, -41.25],
|
||||
|
||||
[-38.105, -16.5],
|
||||
[-57.631 , -16.5],
|
||||
[-57.631 , 16.5],
|
||||
[-38.105, 16.5],
|
||||
[-23.82, 41.25]
|
||||
]
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
"retraction_amount": { "default_value": 7 },
|
||||
"retraction_speed": {
|
||||
"default_value": 70,
|
||||
"maximum_value_warning": "90"
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
"cool_min_layer_time": { "default_value": 15},
|
||||
"cool_min_speed": { "default_value": 5},
|
||||
"cool_lift_head": { "default_value": false},
|
||||
|
||||
|
||||
|
||||
|
||||
"support_angle": { "default_value": 45}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3038,6 +3038,7 @@
|
||||
"description": "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"enabled": "speed_slowdown_layers > 0",
|
||||
"default_value": 30,
|
||||
"value": "speed_print * 30 / 60",
|
||||
"minimum_value": "0.1",
|
||||
@ -3052,6 +3053,7 @@
|
||||
"description": "The speed of printing for the initial layer. A lower value is advised to improve adhesion to the build plate.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"enabled": "speed_slowdown_layers > 0",
|
||||
"default_value": 30,
|
||||
"value": "speed_layer_0",
|
||||
"minimum_value": "0.1",
|
||||
@ -3065,6 +3067,7 @@
|
||||
"description": "The speed of travel moves in the initial layer. A lower value is advised to prevent pulling previously printed parts away from the build plate. The value of this setting can automatically be calculated from the ratio between the Travel Speed and the Print Speed.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"enabled": "speed_slowdown_layers > 0",
|
||||
"default_value": 60,
|
||||
"value": "speed_layer_0 * speed_travel / speed_print",
|
||||
"minimum_value": "0.1",
|
||||
|
48
resources/definitions/jgaurora_a6.def.json
Normal file
48
resources/definitions/jgaurora_a6.def.json
Normal file
@ -0,0 +1,48 @@
|
||||
{
|
||||
"version": 2,
|
||||
"name": "JGAurora A6",
|
||||
"inherits": "fdmprinter",
|
||||
"metadata": {
|
||||
"visible": true,
|
||||
"author": "CrissR",
|
||||
"manufacturer": "JGAurora",
|
||||
"file_formats": "text/x-gcode",
|
||||
"platform": "jgaurora_a6_platform.stl",
|
||||
"supports_usb_connection": true,
|
||||
"supports_network_connection": false,
|
||||
"has_machine_quality": true,
|
||||
"quality_definition": "jgaurora_a6",
|
||||
"has_variants": false,
|
||||
"preferred_quality_type": "normal",
|
||||
"machine_extruder_trains":
|
||||
{
|
||||
"0": "jgaurora_a6_extruder_0"
|
||||
}
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"machine_name": { "default_value": "JGAurora A6" },
|
||||
"machine_heated_bed": { "default_value": true },
|
||||
"machine_width": { "default_value": 300 },
|
||||
"machine_height": { "default_value": 200 },
|
||||
"machine_depth": { "default_value": 200 },
|
||||
"machine_center_is_zero": { "default_value": false },
|
||||
"machine_nozzle_size": { "default_value": 0.4 },
|
||||
"material_diameter": { "default_value": 1.75 },
|
||||
"layer_height": { "default_value": 0.16 },
|
||||
"layer_height_0": { "default_value": 0.2 },
|
||||
"retraction_enable": { "default_value": true },
|
||||
"retraction_amount": { "default_value": 4 },
|
||||
"retraction_speed": { "default_value": 45 },
|
||||
"adhesion_type": { "default_value": "skirt" },
|
||||
"speed_print": { "default_value": 60},
|
||||
"gantry_height": { "value": 10 },
|
||||
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
|
||||
"machine_start_gcode": {
|
||||
"default_value": "M190 S{print_bed_temperature} ;bed temperature line\nM109 S{print_temperature} ;temperature line\nG21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107;start with the fan off\nG28 X0 Y0 ;move X/Y to min endstops\nG28 Z0 ;move Z to min endstops\nG1 Z15.0 F{travel_speed} ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nF200 E3;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F{travel_speed}\nG1 Z0.0 F{travel_speed}\nM117 Printing... ;LCD Message"
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default_value": "M104 S0 ;extruder heater off\nM140 S0;heated bed heater off\nG91;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more\nG28 X0 Y0;move X/Y to min endstops, so the head is out of the way\nM84 ;steppers off\nG90;absolute positioning\nM104 S0 ; turn off extruder\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nG1 X178 Y180 F4200 ; park print head\nM84 ; disable motors"
|
||||
}
|
||||
}
|
||||
}
|
15
resources/extruders/atom3_extruder_0.def.json
Normal file
15
resources/extruders/atom3_extruder_0.def.json
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
"version": 2,
|
||||
"name": "Extruder 1",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "atom3",
|
||||
"position": "0"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": { "default_value": 0 },
|
||||
"machine_nozzle_size": { "default_value": 0.4 },
|
||||
"material_diameter": { "default_value": 1.75 }
|
||||
}
|
||||
}
|
16
resources/extruders/jgaurora_a6_extruder_0.def.json
Normal file
16
resources/extruders/jgaurora_a6_extruder_0.def.json
Normal file
@ -0,0 +1,16 @@
|
||||
{
|
||||
"version": 2,
|
||||
"name": "Extruder 1",
|
||||
"inherits": "fdmextruder",
|
||||
|
||||
"metadata": {
|
||||
"machine": "jgaurora_a6",
|
||||
"position": "0"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": { "default_value": 0 },
|
||||
"machine_nozzle_size": { "default_value": 0.4 },
|
||||
"material_diameter": { "default_value": 1.75 }
|
||||
}
|
||||
}
|
Binary file not shown.
Before Width: | Height: | Size: 495 KiB After Width: | Height: | Size: 502 KiB |
BIN
resources/meshes/Atom 3 bed.3mf
Normal file
BIN
resources/meshes/Atom 3 bed.3mf
Normal file
Binary file not shown.
BIN
resources/meshes/Atom 3 lite bed.3mf
Normal file
BIN
resources/meshes/Atom 3 lite bed.3mf
Normal file
Binary file not shown.
BIN
resources/meshes/jgaurora_a6_platform.stl
Normal file
BIN
resources/meshes/jgaurora_a6_platform.stl
Normal file
Binary file not shown.
@ -863,6 +863,8 @@ UM.MainWindow
|
||||
{
|
||||
id: whatsNewDialog
|
||||
title: catalog.i18nc("@title:window", "What's New")
|
||||
minimumWidth: UM.Theme.getSize("welcome_wizard_window").width
|
||||
minimumHeight: UM.Theme.getSize("welcome_wizard_window").height
|
||||
model: CuraApplication.getWhatsNewPagesModel()
|
||||
progressBarVisible: false
|
||||
visible: false
|
||||
|
@ -1,14 +1,17 @@
|
||||
// Copyright (c) 2018 Ultimaker B.V.
|
||||
// Copyright (c) 2021 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.7
|
||||
import QtQuick.Controls 1.4
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 2.11
|
||||
import QtQml.Models 2.14 as Models
|
||||
|
||||
import UM 1.2 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
Menu
|
||||
{
|
||||
ActionGroup { id: group }
|
||||
|
||||
id: menu
|
||||
title: catalog.i18nc("@action:inmenu", "Visible Settings")
|
||||
|
||||
@ -16,7 +19,7 @@ Menu
|
||||
|
||||
signal collapseAllCategories()
|
||||
|
||||
Instantiator
|
||||
Models.Instantiator
|
||||
{
|
||||
model: settingVisibilityPresetsModel.items
|
||||
|
||||
@ -25,7 +28,7 @@ Menu
|
||||
text: modelData.name
|
||||
checkable: true
|
||||
checked: modelData.presetId == settingVisibilityPresetsModel.activePreset
|
||||
exclusiveGroup: group
|
||||
ActionGroup.group: group
|
||||
onTriggered:
|
||||
{
|
||||
settingVisibilityPresetsModel.setActivePreset(modelData.presetId);
|
||||
@ -49,9 +52,7 @@ Menu
|
||||
MenuItem
|
||||
{
|
||||
text: catalog.i18nc("@action:inmenu", "Manage Setting Visibility...")
|
||||
iconName: "configure"
|
||||
icon.name: "configure"
|
||||
onTriggered: Cura.Actions.configureSettingVisibility.trigger()
|
||||
}
|
||||
|
||||
ExclusiveGroup { id: group }
|
||||
}
|
||||
|
@ -2,10 +2,12 @@
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 2.3
|
||||
import QtQuick.Controls 1.1
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import QtQuick.Controls 2.3 as NewControls
|
||||
|
||||
import UM 1.1 as UM
|
||||
import Cura 1.1 as Cura
|
||||
|
||||
@ -139,6 +141,7 @@ UM.PreferencesPage
|
||||
{
|
||||
id: interfaceGrid
|
||||
columns: 4
|
||||
width: parent.width
|
||||
|
||||
Label
|
||||
{
|
||||
@ -178,12 +181,13 @@ UM.PreferencesPage
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox
|
||||
NewControls.ComboBox
|
||||
{
|
||||
id: languageComboBox
|
||||
|
||||
textRole: "text"
|
||||
model: languageList
|
||||
Layout.fillWidth: true
|
||||
|
||||
currentIndex:
|
||||
{
|
||||
@ -197,20 +201,6 @@ UM.PreferencesPage
|
||||
}
|
||||
}
|
||||
onActivated: UM.Preferences.setValue("general/language", model.get(index).code)
|
||||
|
||||
Component.onCompleted:
|
||||
{
|
||||
// Because ListModel is stupid and does not allow using qsTr() for values.
|
||||
for(var i = 0; i < languageList.count; ++i)
|
||||
{
|
||||
languageList.setProperty(i, "text", catalog.i18n(languageList.get(i).text));
|
||||
}
|
||||
|
||||
// Glorious hack time. ComboBox does not update the text properly after changing the
|
||||
// model. So change the indices around to force it to update.
|
||||
currentIndex += 1;
|
||||
currentIndex -= 1;
|
||||
}
|
||||
}
|
||||
|
||||
Label
|
||||
@ -245,12 +235,13 @@ UM.PreferencesPage
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox
|
||||
NewControls.ComboBox
|
||||
{
|
||||
id: themeComboBox
|
||||
|
||||
model: themeList
|
||||
textRole: "text"
|
||||
Layout.fillWidth: true
|
||||
|
||||
currentIndex:
|
||||
{
|
||||
@ -265,21 +256,6 @@ UM.PreferencesPage
|
||||
return 0;
|
||||
}
|
||||
onActivated: UM.Preferences.setValue("general/theme", model.get(index).code)
|
||||
|
||||
Component.onCompleted:
|
||||
{
|
||||
// Because ListModel is stupid and does not allow using qsTr() for values.
|
||||
for(var i = 0; i < themeList.count; ++i)
|
||||
{
|
||||
themeList.setProperty(i, "text", catalog.i18n(themeList.get(i).text));
|
||||
}
|
||||
|
||||
// Glorious hack time. ComboBox does not update the text properly after changing the
|
||||
// model. So change the indices around to force it to update.
|
||||
currentIndex += 1;
|
||||
currentIndex -= 1;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -535,7 +511,7 @@ UM.PreferencesPage
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox
|
||||
NewControls.ComboBox
|
||||
{
|
||||
id: cameraComboBox
|
||||
|
||||
@ -676,10 +652,10 @@ UM.PreferencesPage
|
||||
text: catalog.i18nc("@window:text", "Default behavior when opening a project file: ")
|
||||
}
|
||||
|
||||
ComboBox
|
||||
NewControls.ComboBox
|
||||
{
|
||||
id: choiceOnOpenProjectDropDownButton
|
||||
width: 200 * screenScaleFactor
|
||||
width: Math.round(250 * screenScaleFactor)
|
||||
|
||||
model: ListModel
|
||||
{
|
||||
@ -743,11 +719,11 @@ UM.PreferencesPage
|
||||
text: catalog.i18nc("@window:text", "Default behavior for changed setting values when switching to a different profile: ")
|
||||
}
|
||||
|
||||
ComboBox
|
||||
NewControls.ComboBox
|
||||
{
|
||||
id: choiceOnProfileOverrideDropDownButton
|
||||
width: 200 * screenScaleFactor
|
||||
|
||||
width: Math.round(250 * screenScaleFactor)
|
||||
popup.width: Math.round(350 * screenScaleFactor)
|
||||
model: ListModel
|
||||
{
|
||||
id: discardOrKeepProfileListModel
|
||||
|
@ -5,6 +5,8 @@ import QtQuick 2.1
|
||||
import QtQuick.Controls 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import QtQuick.Controls 2.3 as NewControls
|
||||
|
||||
import UM 1.2 as UM
|
||||
|
||||
import Cura 1.0 as Cura
|
||||
@ -96,7 +98,7 @@ UM.PreferencesPage
|
||||
onTextChanged: definitionsModel.filter = {"i18n_label": "*" + text}
|
||||
}
|
||||
|
||||
ComboBox
|
||||
NewControls.ComboBox
|
||||
{
|
||||
id: visibilityPreset
|
||||
width: 150 * screenScaleFactor
|
||||
@ -104,6 +106,7 @@ UM.PreferencesPage
|
||||
{
|
||||
top: parent.top
|
||||
right: parent.right
|
||||
bottom: scrollView.top
|
||||
}
|
||||
|
||||
model: settingVisibilityPresetsModel.items
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (c) 2019 Ultimaker B.V.
|
||||
// Copyright (c) 2021 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.7
|
||||
@ -154,6 +154,20 @@ Item
|
||||
}
|
||||
}
|
||||
|
||||
SettingVisibilityPresetsMenu
|
||||
{
|
||||
id: settingVisibilityPresetsMenu
|
||||
x: settingVisibilityMenu.x
|
||||
y: settingVisibilityMenu.y
|
||||
onCollapseAllCategories:
|
||||
{
|
||||
settingsSearchTimer.stop()
|
||||
filter.text = "" // clear search field
|
||||
filter.editingFinished()
|
||||
definitionsModel.collapseAllCategories()
|
||||
}
|
||||
}
|
||||
|
||||
ToolButton
|
||||
{
|
||||
id: settingVisibilityMenu
|
||||
@ -185,16 +199,7 @@ Item
|
||||
label: Label {}
|
||||
}
|
||||
|
||||
menu: SettingVisibilityPresetsMenu
|
||||
{
|
||||
onCollapseAllCategories:
|
||||
{
|
||||
settingsSearchTimer.stop()
|
||||
filter.text = "" // clear search field
|
||||
filter.editingFinished()
|
||||
definitionsModel.collapseAllCategories()
|
||||
}
|
||||
}
|
||||
onClicked: settingVisibilityPresetsMenu.open()
|
||||
}
|
||||
|
||||
// Mouse area that gathers the scroll events to not propagate it to the main view.
|
||||
@ -383,7 +388,7 @@ Item
|
||||
animateContentY.to = contents.contentY;
|
||||
animateContentY.running = true;
|
||||
}
|
||||
function onSetActiveFocusToNextSetting()
|
||||
function onSetActiveFocusToNextSetting(forward)
|
||||
{
|
||||
if (forward == undefined || forward)
|
||||
{
|
||||
|
@ -44,7 +44,7 @@ Item
|
||||
textArea.textFormat: Text.RichText
|
||||
textArea.wrapMode: Text.WordWrap
|
||||
textArea.readOnly: true
|
||||
textArea.font: UM.Theme.getFont("medium")
|
||||
textArea.font: UM.Theme.getFont("default")
|
||||
textArea.onLinkActivated: Qt.openUrlExternally(link)
|
||||
}
|
||||
|
||||
|
@ -31,23 +31,16 @@ Item
|
||||
renderType: Text.NativeRendering
|
||||
}
|
||||
|
||||
Item
|
||||
{
|
||||
id: topSpacer
|
||||
anchors.top: titleLabel.bottom
|
||||
height: UM.Theme.getSize("default_margin").height
|
||||
width: UM.Theme.getSize("default_margin").width
|
||||
}
|
||||
|
||||
Rectangle
|
||||
{
|
||||
anchors
|
||||
{
|
||||
top: topSpacer.bottom
|
||||
top: titleLabel.bottom
|
||||
topMargin: UM.Theme.getSize("default_margin").width
|
||||
bottom: whatsNewDots.top
|
||||
bottomMargin: UM.Theme.getSize("narrow_margin").width
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
margins: UM.Theme.getSize("default_margin").width * 2
|
||||
}
|
||||
|
||||
color: UM.Theme.getColor("viewport_overlay")
|
||||
@ -59,7 +52,6 @@ Item
|
||||
anchors
|
||||
{
|
||||
top: parent.top
|
||||
topMargin: UM.Theme.getSize("default_margin").width
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
height: parent.height
|
||||
@ -69,12 +61,6 @@ Item
|
||||
|
||||
Repeater
|
||||
{
|
||||
anchors
|
||||
{
|
||||
top: parent.top
|
||||
topMargin: UM.Theme.getSize("default_margin").width / 2
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
model: manager.subpageCount
|
||||
|
||||
@ -82,6 +68,8 @@ Item
|
||||
{
|
||||
Layout.alignment: Qt.AlignHCenter
|
||||
color: UM.Theme.getColor("viewport_overlay")
|
||||
width: whatsNewViewport.width
|
||||
height: whatsNewViewport.height
|
||||
|
||||
Image
|
||||
{
|
||||
@ -89,12 +77,15 @@ Item
|
||||
|
||||
anchors
|
||||
{
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
top: parent.top
|
||||
topMargin: UM.Theme.getSize("default_margin").width
|
||||
topMargin: UM.Theme.getSize("thick_margin").width
|
||||
left: parent.left
|
||||
leftMargin: UM.Theme.getSize("thick_margin").width
|
||||
right: parent.right
|
||||
rightMargin: UM.Theme.getSize("thick_margin").width
|
||||
}
|
||||
width: Math.round(parent.width - (UM.Theme.getSize("default_margin").width * 2))
|
||||
height: Math.round((parent.height - UM.Theme.getSize("default_margin").height) * 0.75)
|
||||
width: sourceSize.width
|
||||
sourceSize.width: Math.round(parent.width - (UM.Theme.getSize("thick_margin").height * 2))
|
||||
fillMode: Image.PreserveAspectFit
|
||||
|
||||
source: manager.getSubpageImageSource(index)
|
||||
@ -107,10 +98,12 @@ Item
|
||||
anchors
|
||||
{
|
||||
top: subpageImage.bottom
|
||||
topMargin: UM.Theme.getSize("default_margin").height
|
||||
bottom: parent.bottom
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
bottomMargin: UM.Theme.getSize("thick_margin").height
|
||||
left: subpageImage.left
|
||||
right: subpageImage.right
|
||||
}
|
||||
width: Math.round(parent.width - (UM.Theme.getSize("default_margin").width * 2))
|
||||
|
||||
ScrollBar.horizontal.policy: ScrollBar.AlwaysOff
|
||||
|
||||
@ -121,8 +114,10 @@ Item
|
||||
textArea.text: manager.getSubpageText(index)
|
||||
textArea.textFormat: Text.RichText
|
||||
textArea.readOnly: true
|
||||
textArea.font: UM.Theme.getFont("medium")
|
||||
textArea.font: UM.Theme.getFont("default")
|
||||
textArea.onLinkActivated: Qt.openUrlExternally(link)
|
||||
textArea.leftPadding: 0
|
||||
textArea.rightPadding: 0
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -139,7 +134,8 @@ Item
|
||||
|
||||
anchors
|
||||
{
|
||||
bottom: bottomSpacer.top
|
||||
bottom: whatsNewNextButton.top
|
||||
bottomMargin: UM.Theme.getSize("narrow_margin").height
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
|
@ -53,7 +53,7 @@ Item
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
|
||||
height: UM.Theme.getSize("progressbar").height
|
||||
height: visible ? UM.Theme.getSize("progressbar").height : 0
|
||||
|
||||
value: base.progressValue
|
||||
}
|
||||
@ -64,7 +64,6 @@ Item
|
||||
anchors
|
||||
{
|
||||
margins: UM.Theme.getSize("wide_margin").width
|
||||
bottomMargin: UM.Theme.getSize("default_margin").width
|
||||
top: progressBar.bottom
|
||||
bottom: parent.bottom
|
||||
left: parent.left
|
||||
|
@ -0,0 +1,26 @@
|
||||
[general]
|
||||
version = 4
|
||||
name = Detail 0.12
|
||||
definition = jgaurora_a6
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
quality_type = detail
|
||||
type = quality
|
||||
weight = 0
|
||||
global_quality = true
|
||||
|
||||
[values]
|
||||
layer_height = 0.12
|
||||
layer_height_0 = 0.2
|
||||
initial_layer_line_width_factor = 150
|
||||
infill_before_walls = true
|
||||
speed_print = 50
|
||||
speed_travel = 80
|
||||
retraction_amount = 4
|
||||
acceleration_enabled = True
|
||||
adhesion_type = skirt
|
||||
jerk_enabled = True
|
||||
retraction_combing = infill
|
||||
support_enable = False
|
||||
travel_retract_before_outer_wall = True
|
@ -0,0 +1,27 @@
|
||||
[general]
|
||||
version = 4
|
||||
name = Optimal 0.16
|
||||
definition = jgaurora_a6
|
||||
|
||||
[metadata]
|
||||
quality_type = optimal
|
||||
setting_version = 16
|
||||
type = quality
|
||||
weight = -1
|
||||
global_quality = true
|
||||
|
||||
[values]
|
||||
layer_height = 0.16
|
||||
layer_height_0 = 0.2
|
||||
initial_layer_line_width_factor = 150
|
||||
infill_before_walls = true
|
||||
speed_print = 55
|
||||
speed_travel = 80
|
||||
retraction_amount = 4
|
||||
adhesion_type = skirt
|
||||
acceleration_enabled = True
|
||||
adhesion_type = skirt
|
||||
jerk_enabled = True
|
||||
retraction_combing = infill
|
||||
support_enable = False
|
||||
travel_retract_before_outer_wall = True
|
@ -0,0 +1,21 @@
|
||||
[general]
|
||||
version = 4
|
||||
name = Draft 0.24
|
||||
definition = jgaurora_a6
|
||||
|
||||
[metadata]
|
||||
quality_type = draft
|
||||
setting_version = 16
|
||||
type = quality
|
||||
weight = -3
|
||||
global_quality = true
|
||||
|
||||
[values]
|
||||
layer_height = 0.24
|
||||
layer_height_0 = 0.24
|
||||
speed_print = 60
|
||||
retraction_amount = 4
|
||||
adhesion_type = skirt
|
||||
retraction_combing = infill
|
||||
support_enable = False
|
||||
travel_retract_before_outer_wall = True
|
@ -0,0 +1,24 @@
|
||||
[general]
|
||||
version = 4
|
||||
name = Fast 0.28
|
||||
definition = jgaurora_a6
|
||||
|
||||
[metadata]
|
||||
quality_type = fast
|
||||
setting_version = 16
|
||||
type = quality
|
||||
weight = -4
|
||||
global_quality = true
|
||||
|
||||
[values]
|
||||
layer_height = 0.28
|
||||
layer_height_0 = 0.28
|
||||
speed_print = 60
|
||||
speed_travel = 120
|
||||
speed_layer_0 = 30
|
||||
wall_thickness = =line_width * 4
|
||||
retraction_amount = 4
|
||||
adhesion_type = skirt
|
||||
retraction_combing = infill
|
||||
support_enable = False
|
||||
travel_retract_before_outer_wall = True
|
@ -0,0 +1,21 @@
|
||||
[general]
|
||||
version = 4
|
||||
name = Normal 0.20
|
||||
definition = jgaurora_a6
|
||||
|
||||
[metadata]
|
||||
quality_type = normal
|
||||
setting_version = 16
|
||||
type = quality
|
||||
weight = -2
|
||||
global_quality = true
|
||||
|
||||
[values]
|
||||
layer_height = 0.2
|
||||
layer_height_0 = 0.2
|
||||
speed_print = 60
|
||||
speed_travel = 100
|
||||
adhesion_type = skirt
|
||||
retraction_combing = infill
|
||||
support_enable = False
|
||||
travel_retract_before_outer_wall = True
|
@ -14,8 +14,8 @@ variant = 0.6 mm
|
||||
[values]
|
||||
adhesion_type = brim
|
||||
brim_line_count = 20
|
||||
cool_fan_speed = 60
|
||||
cool_fan_speed_min = =cool_fan_speed * 35 / 60
|
||||
cool_fan_speed = 80
|
||||
cool_fan_speed_min = =cool_fan_speed
|
||||
cool_min_speed = 15
|
||||
infill_sparse_density = 10
|
||||
layer_0_z_overlap = 0.12
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,3 @@
|
||||
<h4>Better visual representation</h4>
|
||||
<p>The Z-seam is now clearly indicated in Preview mode. This ensures that you will know whether the seam will be sufficiently hidden in the end product. </br>
|
||||
<p>The Z-seam is now clearly indicated in Preview mode. This ensures that you will know whether the seam will be sufficiently hidden in the end product. <br>
|
||||
<i>Thanks to BasF0 for contributing to this feature.</i> </p>
|
||||
|
14
resources/variants/atom3_all_metal_brass_0.2.inst.cfg
Normal file
14
resources/variants/atom3_all_metal_brass_0.2.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = All metal hotend + 0.2mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.2
|
||||
retraction_amount = 3
|
||||
retraction_speed = 50
|
14
resources/variants/atom3_all_metal_brass_0.4.inst.cfg
Normal file
14
resources/variants/atom3_all_metal_brass_0.4.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = All metal hotend + 0.4mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.4
|
||||
retraction_amount = 3
|
||||
retraction_speed = 50
|
14
resources/variants/atom3_all_metal_brass_0.6.inst.cfg
Normal file
14
resources/variants/atom3_all_metal_brass_0.6.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = All metal hotend + 0.6mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.6
|
||||
retraction_amount = 3
|
||||
retraction_speed = 50
|
14
resources/variants/atom3_lite_all_metal_brass_0.2.inst.cfg
Normal file
14
resources/variants/atom3_lite_all_metal_brass_0.2.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = All metal hotend + 0.2mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3_lite
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.2
|
||||
retraction_amount = 3
|
||||
retraction_speed = 50
|
14
resources/variants/atom3_lite_all_metal_brass_0.4.inst.cfg
Normal file
14
resources/variants/atom3_lite_all_metal_brass_0.4.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = All metal hotend + 0.4mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3_lite
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.4
|
||||
retraction_amount = 3
|
||||
retraction_speed = 50
|
14
resources/variants/atom3_lite_all_metal_brass_0.6.inst.cfg
Normal file
14
resources/variants/atom3_lite_all_metal_brass_0.6.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = All metal hotend + 0.6mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3_lite
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.6
|
||||
retraction_amount = 3
|
||||
retraction_speed = 50
|
14
resources/variants/atom3_lite_ptfe_brass_0.2.inst.cfg
Normal file
14
resources/variants/atom3_lite_ptfe_brass_0.2.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = PTFE hotend + 0.2mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3_lite
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.2
|
||||
retraction_amount = 7
|
||||
retraction_speed = 70
|
14
resources/variants/atom3_lite_ptfe_brass_0.4.inst.cfg
Normal file
14
resources/variants/atom3_lite_ptfe_brass_0.4.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = PTFE hotend + 0.4mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3_lite
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.4
|
||||
retraction_amount = 7
|
||||
retraction_speed = 70
|
14
resources/variants/atom3_lite_ptfe_brass_0.6.inst.cfg
Normal file
14
resources/variants/atom3_lite_ptfe_brass_0.6.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = PTFE hotend + 0.6mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3_lite
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.6
|
||||
retraction_amount = 7
|
||||
retraction_speed = 70
|
14
resources/variants/atom3_ptfe_brass_0.2.inst.cfg
Normal file
14
resources/variants/atom3_ptfe_brass_0.2.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = PTFE hotend + 0.2mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.2
|
||||
retraction_amount = 7
|
||||
retraction_speed = 70
|
14
resources/variants/atom3_ptfe_brass_0.4.inst.cfg
Normal file
14
resources/variants/atom3_ptfe_brass_0.4.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = PTFE hotend + 0.4mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.4
|
||||
retraction_amount = 7
|
||||
retraction_speed = 70
|
14
resources/variants/atom3_ptfe_brass_0.6.inst.cfg
Normal file
14
resources/variants/atom3_ptfe_brass_0.6.inst.cfg
Normal file
@ -0,0 +1,14 @@
|
||||
[general]
|
||||
name = PTFE hotend + 0.6mm brass nozzle
|
||||
version = 4
|
||||
definition = atom3
|
||||
|
||||
[metadata]
|
||||
setting_version = 16
|
||||
type = variant
|
||||
hardware_type = nozzle
|
||||
|
||||
[values]
|
||||
machine_nozzle_size = 0.6
|
||||
retraction_amount = 7
|
||||
retraction_speed = 70
|
Loading…
x
Reference in New Issue
Block a user