mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-15 15:18:01 +08:00
Merge branch 'master' of github.com:Ultimaker/Cura
This commit is contained in:
commit
70749ee0ec
@ -773,9 +773,8 @@ class MachineManager(QObject):
|
|||||||
old_material = self._active_container_stack.material
|
old_material = self._active_container_stack.material
|
||||||
if old_variant:
|
if old_variant:
|
||||||
self.blurSettings.emit()
|
self.blurSettings.emit()
|
||||||
variant_index = self._active_container_stack.getContainerIndex(old_variant)
|
self._active_container_stack.variant = containers[0]
|
||||||
self._active_container_stack.replaceContainer(variant_index, containers[0])
|
Logger.log("d", "Active variant changed to {active_variant_id}".format(active_variant_id = containers[0].getId()))
|
||||||
Logger.log("d", "Active variant changed")
|
|
||||||
preferred_material = None
|
preferred_material = None
|
||||||
if old_material:
|
if old_material:
|
||||||
preferred_material_name = old_material.getName()
|
preferred_material_name = old_material.getName()
|
||||||
|
@ -380,10 +380,6 @@ Cura.MachineAction
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
currentIndex: machineExtruderCountProvider.properties.value - 1
|
currentIndex: machineExtruderCountProvider.properties.value - 1
|
||||||
Component.onCompleted:
|
|
||||||
{
|
|
||||||
//manager.setMachineExtruderCount(1);
|
|
||||||
}
|
|
||||||
onActivated:
|
onActivated:
|
||||||
{
|
{
|
||||||
manager.setMachineExtruderCount(index + 1);
|
manager.setMachineExtruderCount(index + 1);
|
||||||
|
65
plugins/UltimakerMachineActions/UM2UpgradeSelection.py
Normal file
65
plugins/UltimakerMachineActions/UM2UpgradeSelection.py
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# Copyright (c) 2017 Ultimaker B.V.
|
||||||
|
# Uranium is released under the terms of the AGPLv3 or higher.
|
||||||
|
|
||||||
|
from UM.Settings.ContainerRegistry import ContainerRegistry
|
||||||
|
from UM.Settings.InstanceContainer import InstanceContainer
|
||||||
|
from cura.MachineAction import MachineAction
|
||||||
|
from PyQt5.QtCore import pyqtSlot, pyqtSignal, pyqtProperty
|
||||||
|
|
||||||
|
from UM.i18n import i18nCatalog
|
||||||
|
from UM.Application import Application
|
||||||
|
from UM.Util import parseBool
|
||||||
|
catalog = i18nCatalog("cura")
|
||||||
|
|
||||||
|
import UM.Settings.InstanceContainer
|
||||||
|
|
||||||
|
|
||||||
|
## The Ultimaker 2 can have a few revisions & upgrades.
|
||||||
|
class UM2UpgradeSelection(MachineAction):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__("UM2UpgradeSelection", catalog.i18nc("@action", "Select upgrades"))
|
||||||
|
self._qml_url = "UM2UpgradeSelectionMachineAction.qml"
|
||||||
|
|
||||||
|
self._container_registry = ContainerRegistry.getInstance()
|
||||||
|
|
||||||
|
def _reset(self):
|
||||||
|
self.hasVariantsChanged.emit()
|
||||||
|
|
||||||
|
hasVariantsChanged = pyqtSignal()
|
||||||
|
|
||||||
|
@pyqtProperty(bool, notify = hasVariantsChanged)
|
||||||
|
def hasVariants(self):
|
||||||
|
global_container_stack = Application.getInstance().getGlobalContainerStack()
|
||||||
|
if global_container_stack:
|
||||||
|
return parseBool(global_container_stack.getMetaDataEntry("has_variants", "false"))
|
||||||
|
|
||||||
|
@pyqtSlot(bool)
|
||||||
|
def setHasVariants(self, has_variants = True):
|
||||||
|
global_container_stack = Application.getInstance().getGlobalContainerStack()
|
||||||
|
if global_container_stack:
|
||||||
|
variant_container = global_container_stack.variant
|
||||||
|
variant_index = global_container_stack.getContainerIndex(variant_container)
|
||||||
|
|
||||||
|
if has_variants:
|
||||||
|
if "has_variants" in global_container_stack.getMetaData():
|
||||||
|
global_container_stack.setMetaDataEntry("has_variants", True)
|
||||||
|
else:
|
||||||
|
global_container_stack.addMetaDataEntry("has_variants", True)
|
||||||
|
|
||||||
|
# Set the variant container to a sane default
|
||||||
|
empty_container = ContainerRegistry.getInstance().getEmptyInstanceContainer()
|
||||||
|
if type(variant_container) == type(empty_container):
|
||||||
|
search_criteria = { "type": "variant", "definition": "ultimaker2", "id": "*0.4*" }
|
||||||
|
containers = self._container_registry.findInstanceContainers(**search_criteria)
|
||||||
|
if containers:
|
||||||
|
global_container_stack.variant = containers[0]
|
||||||
|
else:
|
||||||
|
# The metadata entry is stored in an ini, and ini files are parsed as strings only.
|
||||||
|
# Because any non-empty string evaluates to a boolean True, we have to remove the entry to make it False.
|
||||||
|
if "has_variants" in global_container_stack.getMetaData():
|
||||||
|
global_container_stack.removeMetaDataEntry("has_variants")
|
||||||
|
|
||||||
|
# Set the variant container to an empty variant
|
||||||
|
global_container_stack.variant = ContainerRegistry.getInstance().getEmptyInstanceContainer()
|
||||||
|
|
||||||
|
Application.getInstance().globalContainerStackChanged.emit()
|
@ -0,0 +1,52 @@
|
|||||||
|
// Copyright (c) 2016 Ultimaker B.V.
|
||||||
|
// Cura is released under the terms of the AGPLv3 or higher.
|
||||||
|
|
||||||
|
import QtQuick 2.2
|
||||||
|
import QtQuick.Controls 1.1
|
||||||
|
import QtQuick.Layouts 1.1
|
||||||
|
import QtQuick.Window 2.1
|
||||||
|
|
||||||
|
import UM 1.2 as UM
|
||||||
|
import Cura 1.0 as Cura
|
||||||
|
|
||||||
|
|
||||||
|
Cura.MachineAction
|
||||||
|
{
|
||||||
|
anchors.fill: parent;
|
||||||
|
Item
|
||||||
|
{
|
||||||
|
id: upgradeSelectionMachineAction
|
||||||
|
anchors.fill: parent
|
||||||
|
|
||||||
|
Label
|
||||||
|
{
|
||||||
|
id: pageTitle
|
||||||
|
width: parent.width
|
||||||
|
text: catalog.i18nc("@title", "Select Printer Upgrades")
|
||||||
|
wrapMode: Text.WordWrap
|
||||||
|
font.pointSize: 18;
|
||||||
|
}
|
||||||
|
|
||||||
|
Label
|
||||||
|
{
|
||||||
|
id: pageDescription
|
||||||
|
anchors.top: pageTitle.bottom
|
||||||
|
anchors.topMargin: UM.Theme.getSize("default_margin").height
|
||||||
|
width: parent.width
|
||||||
|
wrapMode: Text.WordWrap
|
||||||
|
text: catalog.i18nc("@label","Please select any upgrades made to this Ultimaker 2");
|
||||||
|
}
|
||||||
|
|
||||||
|
CheckBox
|
||||||
|
{
|
||||||
|
anchors.top: pageDescription.bottom
|
||||||
|
anchors.topMargin: UM.Theme.getSize("default_margin").height
|
||||||
|
|
||||||
|
text: catalog.i18nc("@label", "Olsson Block")
|
||||||
|
checked: manager.hasVariants
|
||||||
|
onClicked: manager.setHasVariants(checked)
|
||||||
|
}
|
||||||
|
|
||||||
|
UM.I18nCatalog { id: catalog; name: "cura"; }
|
||||||
|
}
|
||||||
|
}
|
@ -5,6 +5,7 @@ from . import BedLevelMachineAction
|
|||||||
from . import UpgradeFirmwareMachineAction
|
from . import UpgradeFirmwareMachineAction
|
||||||
from . import UMOCheckupMachineAction
|
from . import UMOCheckupMachineAction
|
||||||
from . import UMOUpgradeSelection
|
from . import UMOUpgradeSelection
|
||||||
|
from . import UM2UpgradeSelection
|
||||||
|
|
||||||
from UM.i18n import i18nCatalog
|
from UM.i18n import i18nCatalog
|
||||||
catalog = i18nCatalog("cura")
|
catalog = i18nCatalog("cura")
|
||||||
@ -21,4 +22,10 @@ def getMetaData():
|
|||||||
}
|
}
|
||||||
|
|
||||||
def register(app):
|
def register(app):
|
||||||
return { "machine_action": [BedLevelMachineAction.BedLevelMachineAction(), UpgradeFirmwareMachineAction.UpgradeFirmwareMachineAction(), UMOCheckupMachineAction.UMOCheckupMachineAction(), UMOUpgradeSelection.UMOUpgradeSelection()]}
|
return { "machine_action": [
|
||||||
|
BedLevelMachineAction.BedLevelMachineAction(),
|
||||||
|
UpgradeFirmwareMachineAction.UpgradeFirmwareMachineAction(),
|
||||||
|
UMOCheckupMachineAction.UMOCheckupMachineAction(),
|
||||||
|
UMOUpgradeSelection.UMOUpgradeSelection(),
|
||||||
|
UM2UpgradeSelection.UM2UpgradeSelection()
|
||||||
|
]}
|
||||||
|
61
resources/definitions/alya3dp.def.json
Normal file
61
resources/definitions/alya3dp.def.json
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
{
|
||||||
|
"id": "alya3dp",
|
||||||
|
"name": "ALYA",
|
||||||
|
"version": 2,
|
||||||
|
"inherits": "fdmprinter",
|
||||||
|
"metadata": {
|
||||||
|
"visible": true,
|
||||||
|
"author": "ALYA",
|
||||||
|
"manufacturer": "ALYA",
|
||||||
|
"category": "Other",
|
||||||
|
"file_formats": "text/x-gcode"
|
||||||
|
},
|
||||||
|
|
||||||
|
"overrides": {
|
||||||
|
"machine_width": {
|
||||||
|
"default_value": 100
|
||||||
|
},
|
||||||
|
"machine_height": {
|
||||||
|
"default_value": 133
|
||||||
|
},
|
||||||
|
"machine_depth": {
|
||||||
|
"default_value": 100
|
||||||
|
},
|
||||||
|
"machine_center_is_zero": {
|
||||||
|
"default_value": false
|
||||||
|
},
|
||||||
|
"machine_nozzle_size": {
|
||||||
|
"default_value": 0.4
|
||||||
|
},
|
||||||
|
"machine_head_shape_min_x": {
|
||||||
|
"default_value": 75
|
||||||
|
},
|
||||||
|
"machine_head_shape_min_y": {
|
||||||
|
"default_value": 18
|
||||||
|
},
|
||||||
|
"machine_head_shape_max_x": {
|
||||||
|
"default_value": 18
|
||||||
|
},
|
||||||
|
"machine_head_shape_max_y": {
|
||||||
|
"default_value": 35
|
||||||
|
},
|
||||||
|
"machine_nozzle_gantry_distance": {
|
||||||
|
"default_value": 55
|
||||||
|
},
|
||||||
|
"machine_nozzle_offset_x_1": {
|
||||||
|
"default_value": 18
|
||||||
|
},
|
||||||
|
"machine_nozzle_offset_y_1": {
|
||||||
|
"default_value": 0
|
||||||
|
},
|
||||||
|
"machine_gcode_flavor": {
|
||||||
|
"default_value": "RepRap"
|
||||||
|
},
|
||||||
|
"machine_start_gcode": {
|
||||||
|
"default_value": ";Sliced at: {day} {date} {time}\n;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}\n;Print time: {print_time}\n;Filament used: {filament_amount}m {filament_weight}g\n;Filament cost: {filament_cost}\n;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line\n;M109 S{print_temperature} ;Uncomment to add your own 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 max endstops\nG1 Z115.0 F{travel_speed} ;move th e platform up 20mm\nG28 Z0 ;move Z to max endstop\nG1 Z15.0 F{travel_speed} ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E3 ;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F{travel_speed}\nM301 H1 P26.38 I2.57 D67.78\n;Put printing message on LCD screen\nM117 Printing..."
|
||||||
|
},
|
||||||
|
"machine_end_gcode": {
|
||||||
|
"default_value": ";End GCode\nM104 S0 ;extruder heater off\nM140 S0 ;heated bed heater off (if you have it)\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\nG28 Z0\nM84 ;steppers off\nG90 ;absolute positioning\n;{profile_string}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -22,12 +22,5 @@
|
|||||||
"7": "custom_extruder_8"
|
"7": "custom_extruder_8"
|
||||||
},
|
},
|
||||||
"first_start_actions": ["MachineSettingsAction"]
|
"first_start_actions": ["MachineSettingsAction"]
|
||||||
},
|
|
||||||
"overrides":
|
|
||||||
{
|
|
||||||
"machine_extruder_count":
|
|
||||||
{
|
|
||||||
"default_value": 1
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,8 @@
|
|||||||
"platform_texture": "Ultimaker2backplate.png",
|
"platform_texture": "Ultimaker2backplate.png",
|
||||||
"platform_offset": [9, 0, 0],
|
"platform_offset": [9, 0, 0],
|
||||||
"has_materials": false,
|
"has_materials": false,
|
||||||
"supported_actions":["UpgradeFirmware"]
|
"first_start_actions": ["UM2UpgradeSelection"],
|
||||||
|
"supported_actions":["UM2UpgradeSelection", "UpgradeFirmware"]
|
||||||
},
|
},
|
||||||
"overrides": {
|
"overrides": {
|
||||||
"machine_name": { "default_value": "Ultimaker 2" },
|
"machine_name": { "default_value": "Ultimaker 2" },
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
"has_materials": true,
|
"has_materials": true,
|
||||||
"has_machine_materials": true,
|
"has_machine_materials": true,
|
||||||
"has_machine_quality": true,
|
"has_machine_quality": true,
|
||||||
|
"first_start_actions": [],
|
||||||
"supported_actions":["UpgradeFirmware"]
|
"supported_actions":["UpgradeFirmware"]
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -468,7 +468,7 @@ Rectangle
|
|||||||
acceptedButtons: Qt.NoButton
|
acceptedButtons: Qt.NoButton
|
||||||
}
|
}
|
||||||
|
|
||||||
onClicked:
|
onCheckedChanged:
|
||||||
{
|
{
|
||||||
var index = 0;
|
var index = 0;
|
||||||
if (checked)
|
if (checked)
|
||||||
|
12
resources/variants/ultimaker2_0.25.inst.cfg
Normal file
12
resources/variants/ultimaker2_0.25.inst.cfg
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[general]
|
||||||
|
name = 0.25 mm
|
||||||
|
version = 2
|
||||||
|
definition = ultimaker2
|
||||||
|
|
||||||
|
[metadata]
|
||||||
|
author = Ultimaker
|
||||||
|
type = variant
|
||||||
|
|
||||||
|
[values]
|
||||||
|
machine_nozzle_size = 0.25
|
||||||
|
machine_nozzle_tip_outer_diameter = 0.8
|
12
resources/variants/ultimaker2_0.4.inst.cfg
Normal file
12
resources/variants/ultimaker2_0.4.inst.cfg
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[general]
|
||||||
|
name = 0.4 mm
|
||||||
|
version = 2
|
||||||
|
definition = ultimaker2
|
||||||
|
|
||||||
|
[metadata]
|
||||||
|
author = Ultimaker
|
||||||
|
type = variant
|
||||||
|
|
||||||
|
[values]
|
||||||
|
machine_nozzle_size = 0.4
|
||||||
|
machine_nozzle_tip_outer_diameter = 1.05
|
12
resources/variants/ultimaker2_0.6.inst.cfg
Normal file
12
resources/variants/ultimaker2_0.6.inst.cfg
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[general]
|
||||||
|
name = 0.6 mm
|
||||||
|
version = 2
|
||||||
|
definition = ultimaker2
|
||||||
|
|
||||||
|
[metadata]
|
||||||
|
author = Ultimaker
|
||||||
|
type = variant
|
||||||
|
|
||||||
|
[values]
|
||||||
|
machine_nozzle_size = 0.6
|
||||||
|
machine_nozzle_tip_outer_diameter = 1.25
|
12
resources/variants/ultimaker2_0.8.inst.cfg
Normal file
12
resources/variants/ultimaker2_0.8.inst.cfg
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[general]
|
||||||
|
name = 0.8 mm
|
||||||
|
version = 2
|
||||||
|
definition = ultimaker2
|
||||||
|
|
||||||
|
[metadata]
|
||||||
|
author = Ultimaker
|
||||||
|
type = variant
|
||||||
|
|
||||||
|
[values]
|
||||||
|
machine_nozzle_size = 0.8
|
||||||
|
machine_nozzle_tip_outer_diameter = 1.35
|
Loading…
x
Reference in New Issue
Block a user