Merge branch 'main' into CURA-12335_expose-bottom-skin-settings

This commit is contained in:
HellAholic 2025-01-29 15:50:00 +01:00 committed by GitHub
commit 654150526e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 159 additions and 26 deletions

View file

@ -10,6 +10,6 @@
"overrides":
{
"retraction_amount": { "default_value": 5 },
"retraction_speed": { "value": "machine_max_feedrate_e" }
"retraction_speed": { "value": "resolveOrValue('machine_max_feedrate_e')" }
}
}

View file

@ -52,15 +52,13 @@
"ultimaker_rapidrinse",
"ultimaker_sr30",
"ultimaker_petg",
"ultimaker_metallic_pla",
"basf_",
"jabil_",
"polymaker_",
"ultimaker_rapidrinse",
"ultimaker_sr30",
"ultimaker_petg",
"ultimaker_pva",
"ultimaker_metallic_pla"
"ultimaker_pva"
],
"has_machine_quality": true,
"has_materials": true,

View file

@ -53,8 +53,7 @@
"ultimaker_pva",
"ultimaker_rapidrinse",
"ultimaker_sr30",
"ultimaker_petg",
"ultimaker_metallic_pla"
"ultimaker_petg"
],
"has_machine_quality": true,
"has_materials": true,

View file

@ -1,4 +1,4 @@
// Copyright (c) 2018 Ultimaker B.V.
// Copyright (c) 2025 UltiMaker
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.7
@ -12,7 +12,7 @@ Button
id: configurationItem
property var configuration: null
hoverEnabled: isValidMaterial
hoverEnabled: isValidMaterial && isValidCore
property bool isValidMaterial:
{
@ -25,7 +25,6 @@ Button
for (var index in extruderConfigurations)
{
var name = extruderConfigurations[index].material ? extruderConfigurations[index].material.name : ""
if (name == "" || name == "Unknown")
{
return false
@ -34,6 +33,25 @@ Button
return true
}
property bool isValidCore:
{
if (configuration === null)
{
return false
}
var extruderConfigurations = configuration.extruderConfigurations
var coresList = configuration.validCoresForPrinterType
for (var index in extruderConfigurations)
{
var name = extruderConfigurations[index].hotendID ? extruderConfigurations[index].hotendID : ""
if (name != "" && ! coresList.includes(name))
{
return false
}
}
return true
}
background: Rectangle
{
color: parent.hovered ? UM.Theme.getColor("action_button_hovered") : UM.Theme.getColor("action_button")
@ -60,7 +78,7 @@ Button
right: parent.right
rightMargin: UM.Theme.getSize("wide_margin").width
}
height: childrenRect.height
height: unknownMaterial.visible ? unknownMaterial.height : (repeater.count > 0 ? repeater.itemAt(0).height : 0)
spacing: UM.Theme.getSize("default_margin").width
Repeater
@ -72,21 +90,20 @@ Button
{
width: Math.round(parent.width / (configuration !== null ? configuration.extruderConfigurations.length : 1))
printCoreConfiguration: modelData
visible: configurationItem.isValidMaterial
visible: configurationItem.isValidMaterial && configurationItem.isValidCore
}
}
// Unknown material
// Unknown material or core ('variant')
Item
{
id: unknownMaterial
height: unknownMaterialMessage.height + UM.Theme.getSize("thin_margin").width / 2
height: unknownMaterialMessage.height
width: parent.width
anchors.top: parent.top
anchors.topMargin: UM.Theme.getSize("thin_margin").width / 2
visible: !configurationItem.isValidMaterial
visible: ! (configurationItem.isValidMaterial && configurationItem.isValidCore)
UM.ColorImage
{
@ -102,13 +119,9 @@ Button
UM.Label
{
id: unknownMaterialMessage
text:
{
if (configuration === null)
{
return ""
}
function whenUnknownMaterial()
{
var extruderConfigurations = configuration.extruderConfigurations
var unknownMaterials = []
for (var index in extruderConfigurations)
@ -135,9 +148,47 @@ Button
unknownMaterials = "<b>" + unknownMaterials + "</b>"
var draftResult = catalog.i18nc("@label", "This configuration is not available because %1 is not recognized. Please visit %2 to download the correct material profile.");
var result = draftResult.arg(unknownMaterials).arg("<a href=' '>" + catalog.i18nc("@label","Marketplace") + "</a> ")
return draftResult.arg(unknownMaterials).arg("<a href=' '>" + catalog.i18nc("@label","Marketplace") + "</a> ")
}
return result
function whenMismatchedCore()
{
var extruderConfigurations = configuration.extruderConfigurations
var coresList = configuration.validCoresForPrinterType
var mismatchedCores = []
for (var index in extruderConfigurations)
{
var name = extruderConfigurations[index].hotendID ? extruderConfigurations[index].hotendID : ""
if (name != "" && ! coresList.includes(name))
{
mismatchedCores.push(name)
}
}
mismatchedCores = "<b>" + mismatchedCores + "</b>"
var draftResult = catalog.i18nc("@label", "This configuration is not available because there is a mismatch or other problem with core-type %1. Please visit %2 to check which cores this printer-type supports w.r.t. new slices.");
return draftResult.arg(mismatchedCores).arg("<a href=' '>" + catalog.i18nc("@label","WEBSITE") + "</a> ")
}
text:
{
if (configuration === null)
{
return ""
}
var extruderConfigurations = configuration.extruderConfigurations
var perExtruder = []
for (var index in extruderConfigurations)
{
var matName = extruderConfigurations[index].material ? extruderConfigurations[index].material.name : ""
var coreName = extruderConfigurations[index].hotendID ? extruderConfigurations[index].hotendID : ""
perExtruder.push(` [${coreName}/${matName}]`)
}
var configsStr = "<i>" + perExtruder + "</i>"
var warnStr = isValidMaterial ? whenMismatchedCore() : whenUnknownMaterial()
return configsStr + "<br/>" + warnStr
}
width: extruderRow.width
@ -225,7 +276,7 @@ Button
onClicked:
{
if(isValidMaterial)
if (isValidMaterial && isValidCore)
{
toggleContent()
Cura.MachineManager.applyRemoteConfiguration(configuration)

View file

@ -0,0 +1,15 @@
[general]
definition = ultimaker_sketch
name = Fast
version = 4
[metadata]
material = ultimaker_metallic_pla_175
quality_type = draft
setting_version = 24
type = quality
variant = 0.4mm
weight = -2
[values]

View file

@ -0,0 +1,15 @@
[general]
definition = ultimaker_sketch_large
name = Fast
version = 4
[metadata]
material = ultimaker_metallic_pla_175
quality_type = draft
setting_version = 24
type = quality
variant = 0.4mm
weight = -2
[values]

View file

@ -0,0 +1,28 @@
[general]
definition = ultimaker_sketch_sprint
name = Fast
version = 4
[metadata]
material = ultimaker_metallic_pla_175
quality_type = draft
setting_version = 24
type = quality
variant = 0.4mm
weight = -2
[values]
cool_min_temperature = 230
infill_angles = [45,45,45,45,45,135,135,135,135,135]
material_final_print_temperature = 230
material_initial_print_temperature = 230
speed_print = 125
speed_roofing = 100
speed_support_bottom = 100
speed_support_interface = 125
speed_topbottom = 100
speed_wall = 75
speed_wall_x = 100
support_material_flow = 92
wall_overhang_speed_factor = 23