mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-14 13:55:56 +08:00
Merge branch '2.3' of github.com:Ultimaker/Cura
This commit is contained in:
commit
754e0fe613
@ -15,6 +15,9 @@ from cura.ConvexHullDecorator import ConvexHullDecorator
|
|||||||
from . import PlatformPhysicsOperation
|
from . import PlatformPhysicsOperation
|
||||||
from . import ZOffsetDecorator
|
from . import ZOffsetDecorator
|
||||||
|
|
||||||
|
import random # used for list shuffling
|
||||||
|
|
||||||
|
|
||||||
class PlatformPhysics:
|
class PlatformPhysics:
|
||||||
def __init__(self, controller, volume):
|
def __init__(self, controller, volume):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
@ -49,8 +52,11 @@ class PlatformPhysics:
|
|||||||
transformed_nodes = []
|
transformed_nodes = []
|
||||||
|
|
||||||
group_nodes = []
|
group_nodes = []
|
||||||
|
# We try to shuffle all the nodes to prevent "locked" situations, where iteration B inverts iteration A.
|
||||||
for node in BreadthFirstIterator(root):
|
# By shuffling the order of the nodes, this might happen a few times, but at some point it will resolve.
|
||||||
|
nodes = list(BreadthFirstIterator(root))
|
||||||
|
random.shuffle(nodes)
|
||||||
|
for node in nodes:
|
||||||
if node is root or type(node) is not SceneNode or node.getBoundingBox() is None:
|
if node is root or type(node) is not SceneNode or node.getBoundingBox() is None:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -3221,6 +3221,7 @@
|
|||||||
"type": "category",
|
"type": "category",
|
||||||
"icon": "category_dual",
|
"icon": "category_dual",
|
||||||
"description": "Settings used for printing with multiple extruders.",
|
"description": "Settings used for printing with multiple extruders.",
|
||||||
|
"enabled": "machine_extruder_count > 1",
|
||||||
"children":
|
"children":
|
||||||
{
|
{
|
||||||
"adhesion_extruder_nr":
|
"adhesion_extruder_nr":
|
||||||
|
@ -14,11 +14,10 @@ Generic Nylon profile. Serves as an example file, data in this file is not corre
|
|||||||
<color_code>#3DF266</color_code>
|
<color_code>#3DF266</color_code>
|
||||||
</metadata>
|
</metadata>
|
||||||
<properties>
|
<properties>
|
||||||
<density>1.19</density>
|
<density>1.14</density>
|
||||||
<diameter>2.85</diameter>
|
<diameter>2.85</diameter>
|
||||||
</properties>
|
</properties>
|
||||||
<settings>
|
<settings>
|
||||||
<setting key="hardware compatible">no</setting><!-- This material is not supported on most printers due to high temperatures -->
|
|
||||||
<setting key="print temperature">250</setting>
|
<setting key="print temperature">250</setting>
|
||||||
<setting key="heated bed temperature">60</setting>
|
<setting key="heated bed temperature">60</setting>
|
||||||
<setting key="standby temperature">175</setting>
|
<setting key="standby temperature">175</setting>
|
||||||
|
@ -14,7 +14,7 @@ Generic PC profile. Serves as an example file, data in this file is not correct.
|
|||||||
<color_code>#F29030</color_code>
|
<color_code>#F29030</color_code>
|
||||||
</metadata>
|
</metadata>
|
||||||
<properties>
|
<properties>
|
||||||
<density>1.18</density>
|
<density>1.19</density>
|
||||||
<diameter>2.85</diameter>
|
<diameter>2.85</diameter>
|
||||||
</properties>
|
</properties>
|
||||||
<settings>
|
<settings>
|
||||||
|
@ -14,7 +14,7 @@ Generic TPU 95A profile. Serves as an example file, data in this file is not cor
|
|||||||
<color_code>#B22744</color_code>
|
<color_code>#B22744</color_code>
|
||||||
</metadata>
|
</metadata>
|
||||||
<properties>
|
<properties>
|
||||||
<density>1.19</density>
|
<density>1.22</density>
|
||||||
<diameter>2.85</diameter>
|
<diameter>2.85</diameter>
|
||||||
</properties>
|
</properties>
|
||||||
<settings>
|
<settings>
|
||||||
|
@ -115,7 +115,7 @@ TabView
|
|||||||
width: base.secondColumnWidth;
|
width: base.secondColumnWidth;
|
||||||
value: properties.density;
|
value: properties.density;
|
||||||
decimals: 2
|
decimals: 2
|
||||||
suffix: "g/cm"
|
suffix: "g/cm³"
|
||||||
stepSize: 0.01
|
stepSize: 0.01
|
||||||
readOnly: !base.editingEnabled;
|
readOnly: !base.editingEnabled;
|
||||||
|
|
||||||
@ -128,7 +128,7 @@ TabView
|
|||||||
width: base.secondColumnWidth;
|
width: base.secondColumnWidth;
|
||||||
value: properties.diameter;
|
value: properties.diameter;
|
||||||
decimals: 2
|
decimals: 2
|
||||||
suffix: "mm³"
|
suffix: "mm"
|
||||||
stepSize: 0.01
|
stepSize: 0.01
|
||||||
readOnly: !base.editingEnabled;
|
readOnly: !base.editingEnabled;
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ ScrollView
|
|||||||
id: delegate
|
id: delegate
|
||||||
|
|
||||||
width: UM.Theme.getSize("sidebar").width;
|
width: UM.Theme.getSize("sidebar").width;
|
||||||
height: provider.properties.enabled == "True" ? UM.Theme.getSize("section").height : 0
|
height: provider.properties.enabled == "True" ? UM.Theme.getSize("section").height : - contents.spacing
|
||||||
Behavior on height { NumberAnimation { duration: 100 } }
|
Behavior on height { NumberAnimation { duration: 100 } }
|
||||||
opacity: provider.properties.enabled == "True" ? 1 : 0
|
opacity: provider.properties.enabled == "True" ? 1 : 0
|
||||||
Behavior on opacity { NumberAnimation { duration: 100 } }
|
Behavior on opacity { NumberAnimation { duration: 100 } }
|
||||||
|
@ -199,18 +199,32 @@ QtObject {
|
|||||||
|
|
||||||
property Component progressbar: Component{
|
property Component progressbar: Component{
|
||||||
ProgressBarStyle {
|
ProgressBarStyle {
|
||||||
background:Rectangle {
|
background: Rectangle {
|
||||||
implicitWidth: Theme.getSize("message").width - (Theme.getSize("default_margin").width * 2)
|
implicitWidth: Theme.getSize("message").width - (Theme.getSize("default_margin").width * 2)
|
||||||
implicitHeight: Theme.getSize("progressbar").height
|
implicitHeight: Theme.getSize("progressbar").height
|
||||||
radius: Theme.getSize("progressbar_radius").width
|
radius: Theme.getSize("progressbar_radius").width
|
||||||
color: Theme.getColor("progressbar_background")
|
color: control.hasOwnProperty("backgroundColor") ? control.backgroundColor : Theme.getColor("progressbar_background")
|
||||||
}
|
}
|
||||||
progress: Rectangle {
|
progress: Rectangle {
|
||||||
color: control.indeterminate ? "transparent" : Theme.getColor("progressbar_control")
|
color:
|
||||||
|
{
|
||||||
|
if(control.indeterminate)
|
||||||
|
{
|
||||||
|
return "transparent";
|
||||||
|
}
|
||||||
|
else if(control.hasOwnProperty("controlColor"))
|
||||||
|
{
|
||||||
|
return control.controlColor;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return Theme.getColor("progressbar_control");
|
||||||
|
}
|
||||||
|
}
|
||||||
radius: Theme.getSize("progressbar_radius").width
|
radius: Theme.getSize("progressbar_radius").width
|
||||||
Rectangle{
|
Rectangle{
|
||||||
radius: Theme.getSize("progressbar_radius").width
|
radius: Theme.getSize("progressbar_radius").width
|
||||||
color: Theme.getColor("progressbar_control")
|
color: control.hasOwnProperty("controlColor") ? control.controlColor : Theme.getColor("progressbar_control")
|
||||||
width: Theme.getSize("progressbar_control").width
|
width: Theme.getSize("progressbar_control").width
|
||||||
height: Theme.getSize("progressbar_control").height
|
height: Theme.getSize("progressbar_control").height
|
||||||
visible: control.indeterminate
|
visible: control.indeterminate
|
||||||
|
@ -159,9 +159,17 @@
|
|||||||
"tooltip": [12, 169, 227, 255],
|
"tooltip": [12, 169, 227, 255],
|
||||||
"tooltip_text": [255, 255, 255, 255],
|
"tooltip_text": [255, 255, 255, 255],
|
||||||
|
|
||||||
"message_background": [255, 255, 255, 255],
|
"message_background": [24, 41, 77, 255],
|
||||||
"message_text": [32, 166, 219, 255],
|
"message_text": [255, 255, 255, 255],
|
||||||
"message_dismiss": [127, 127, 127, 255],
|
"message_border": [24, 41, 77, 255],
|
||||||
|
"message_button": [255, 255, 255, 255],
|
||||||
|
"message_button_hover": [12, 169, 227, 255],
|
||||||
|
"message_button_active": [32, 166, 219, 255],
|
||||||
|
"message_button_text": [24, 41, 77, 255],
|
||||||
|
"message_button_text_hover": [255, 255, 255, 255],
|
||||||
|
"message_button_text_active": [255, 255, 255, 255],
|
||||||
|
"message_progressbar_background": [255, 255, 255, 255],
|
||||||
|
"message_progressbar_control": [12, 169, 227, 255],
|
||||||
|
|
||||||
"tool_panel_background": [255, 255, 255, 255],
|
"tool_panel_background": [255, 255, 255, 255],
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user