mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-24 15:13:56 -06:00
Merge branch 'master' of https://github.com/Ultimaker/Cura
This commit is contained in:
commit
0989c8345e
12 changed files with 485 additions and 227 deletions
Binary file not shown.
Binary file not shown.
|
@ -9,8 +9,18 @@ import QtQuick.Window 2.1
|
|||
import UM 1.0 as UM
|
||||
|
||||
UM.Wizard{
|
||||
id: base
|
||||
// This part checks whether there is a printer -> if not some of the functions (delete for example) are disabled
|
||||
// This part is optional
|
||||
property bool printer: true
|
||||
file: "ultimaker2.json"
|
||||
firstRun: printer ? false : true
|
||||
|
||||
//: Add Printer dialog title
|
||||
wizardTitle: qsTr("Add Printer")
|
||||
|
||||
wizardPages: [
|
||||
{
|
||||
title: "Add Printer",
|
||||
page: "AddMachine.qml"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -5,6 +5,7 @@ import QtQuick 2.2
|
|||
import QtQuick.Controls 1.1
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Window 2.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import ".."
|
||||
|
@ -12,94 +13,240 @@ import ".."
|
|||
ColumnLayout {
|
||||
id: wizardPage
|
||||
property string title
|
||||
signal openFile(string fileName)
|
||||
property int pageWidth
|
||||
property int pageHeight
|
||||
property var manufacturers: wizardPage.lineManufacturers()
|
||||
property int manufacturerIndex: 0
|
||||
|
||||
SystemPalette{id: palette}
|
||||
signal reloadModel(var newModel)
|
||||
signal closeWizard()
|
||||
|
||||
width: wizardPage.pageWidth
|
||||
height: wizardPage.pageHeight
|
||||
|
||||
Connections {
|
||||
target: rootElement
|
||||
target: elementRoot
|
||||
onFinalClicked: {//You can add functions here that get triggered when the final button is clicked in the wizard-element
|
||||
saveMachine()
|
||||
}
|
||||
onResize: {
|
||||
wizardPage.width = pageWidth
|
||||
wizardPage.height = pageHeight
|
||||
}
|
||||
}
|
||||
|
||||
function lineManufacturers(manufacturer){
|
||||
var manufacturers = []
|
||||
for (var i = 0; i < UM.Models.availableMachinesModel.rowCount(); i++) {
|
||||
if (UM.Models.availableMachinesModel.getItem(i).manufacturer != manufacturers[manufacturers.length - 1]){
|
||||
manufacturers.push(UM.Models.availableMachinesModel.getItem(i).manufacturer)
|
||||
}
|
||||
}
|
||||
return manufacturers
|
||||
}
|
||||
|
||||
Label {
|
||||
id: title
|
||||
anchors.left: parent.left
|
||||
anchors.top: parent.top
|
||||
text: parent.title
|
||||
font.pointSize: 18;
|
||||
}
|
||||
|
||||
Label {
|
||||
id: subTitle
|
||||
anchors.left: parent.left
|
||||
anchors.top: title.bottom
|
||||
//: Add Printer wizard page description
|
||||
text: qsTr("Please select the type of printer:");
|
||||
}
|
||||
|
||||
ScrollView {
|
||||
ListView {
|
||||
id: machineList;
|
||||
model: UM.Models.availableMachinesModel
|
||||
delegate: RadioButton {
|
||||
id:machine_button
|
||||
exclusiveGroup: printerGroup;
|
||||
checked: ListView.view.currentIndex == index ? true : false
|
||||
text: model.name;
|
||||
onClicked: {
|
||||
ListView.view.currentIndex = index;
|
||||
id: machinesHolder
|
||||
anchors.left: parent.left
|
||||
anchors.top: subTitle.bottom
|
||||
implicitWidth: wizardPage.width- UM.Theme.sizes.default_margin.width
|
||||
implicitHeight: wizardPage.height - subTitle.height - title.height - (machineNameHolder.height * 2)
|
||||
|
||||
Component {
|
||||
id: machineDelegate
|
||||
ColumnLayout {
|
||||
id: machineLayout
|
||||
spacing: 0
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: UM.Theme.sizes.standard_list_lineheight.width
|
||||
function showManufacturer(){
|
||||
if (model.manufacturer == UM.Models.availableMachinesModel.getItem(index - 1).manufacturer){
|
||||
return false
|
||||
}
|
||||
else{
|
||||
return true
|
||||
}
|
||||
}
|
||||
height: {
|
||||
if (machineLayout.showManufacturer() & wizardPage.manufacturers[wizardPage.manufacturerIndex] == model.manufacturer)
|
||||
return UM.Theme.sizes.standard_list_lineheight.height * 2
|
||||
if (wizardPage.manufacturers[wizardPage.manufacturerIndex] == model.manufacturer | machineLayout.showManufacturer())
|
||||
return UM.Theme.sizes.standard_list_lineheight.height * 1
|
||||
else
|
||||
return 0
|
||||
}
|
||||
Behavior on height{
|
||||
NumberAnimation { target: machineLayout; property: "height"; duration: 200}
|
||||
}
|
||||
Button {
|
||||
id: manufacturer
|
||||
property color backgroundColor: "transparent"
|
||||
height: UM.Theme.sizes.standard_list_lineheight.height
|
||||
visible: machineLayout.showManufacturer()
|
||||
anchors.top: machineLayout.top
|
||||
anchors.topMargin: 0
|
||||
text: {
|
||||
if (wizardPage.manufacturers[wizardPage.manufacturerIndex] == model.manufacturer)
|
||||
return model.manufacturer + " ▼"
|
||||
else
|
||||
return model.manufacturer + " ►"
|
||||
}
|
||||
style: ButtonStyle {
|
||||
background: Rectangle {
|
||||
id: manufacturerBackground
|
||||
opacity: 0.3
|
||||
border.width: 0
|
||||
color: manufacturer.backgroundColor
|
||||
height: UM.Theme.sizes.standard_list_lineheight.height
|
||||
}
|
||||
label: Text {
|
||||
renderType: Text.NativeRendering
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
text: control.text
|
||||
color: palette.windowText
|
||||
font.bold: true
|
||||
}
|
||||
}
|
||||
MouseArea {
|
||||
id: mousearea
|
||||
hoverEnabled: true
|
||||
anchors.fill: parent
|
||||
onEntered: manufacturer.backgroundColor = palette.light
|
||||
onExited: manufacturer.backgroundColor = "transparent"
|
||||
onClicked: {
|
||||
wizardPage.manufacturerIndex = wizardPage.manufacturers.indexOf(model.manufacturer)
|
||||
machineList.currentIndex = index
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
RadioButton {
|
||||
id: machineButton
|
||||
opacity: wizardPage.manufacturers[wizardPage.manufacturerIndex] == model.manufacturer ? 1 : 0
|
||||
height: wizardPage.manufacturers[wizardPage.manufacturerIndex] == model.manufacturer ? UM.Theme.sizes.standard_list_lineheight.height : 0
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: machineLayout.showManufacturer() ? manufacturer.height - 5 : 0
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: UM.Theme.sizes.standard_list_lineheight.width
|
||||
checked: machineList.currentIndex == index ? true : false
|
||||
exclusiveGroup: printerGroup;
|
||||
text: model.name
|
||||
onClicked: machineList.currentIndex = index;
|
||||
function getAnimationTime(time){
|
||||
if (machineButton.opacity == 0)
|
||||
return time
|
||||
else
|
||||
return 0
|
||||
}
|
||||
Label {
|
||||
id: author
|
||||
visible: model.author != "Ultimaker" ? true : false
|
||||
height: wizardPage.manufacturers[wizardPage.manufacturerIndex] == model.manufacturer ? UM.Theme.sizes.standard_list_lineheight.height : 0
|
||||
//: Printer profile caption meaning: this profile is supported by the community
|
||||
text: qsTr("community supported profile");
|
||||
opacity: wizardPage.manufacturers[wizardPage.manufacturerIndex] == model.manufacturer ? 1 : 0
|
||||
anchors.left: machineButton.right
|
||||
anchors.leftMargin: UM.Theme.sizes.standard_list_lineheight.height/2
|
||||
anchors.verticalCenter: machineButton.verticalCenter
|
||||
anchors.verticalCenterOffset: UM.Theme.sizes.standard_list_lineheight.height / 4
|
||||
font: UM.Theme.fonts.caption;
|
||||
color: palette.mid
|
||||
}
|
||||
Behavior on opacity {
|
||||
SequentialAnimation {
|
||||
PauseAnimation { duration: machineButton.getAnimationTime(100) }
|
||||
NumberAnimation { properties:"opacity"; duration: machineButton.getAnimationTime(200) }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
ListView {
|
||||
id: machineList
|
||||
property int currentIndex: 0
|
||||
property int otherMachinesIndex: {
|
||||
for (var i = 0; i < UM.Models.availableMachinesModel.rowCount(); i++) {
|
||||
if (UM.Models.availableMachinesModel.getItem(i).manufacturer != "Ultimaker"){
|
||||
return i
|
||||
}
|
||||
}
|
||||
}
|
||||
anchors.fill: parent
|
||||
model: UM.Models.availableMachinesModel
|
||||
delegate: machineDelegate
|
||||
focus: true
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: qsTr("Variation:");
|
||||
Item{
|
||||
id: machineNameHolder
|
||||
height: childrenRect.height
|
||||
anchors.top: machinesHolder.bottom
|
||||
Label {
|
||||
id: insertNameLabel
|
||||
//: Add Printer wizard field label
|
||||
text: qsTr("Printer Name:");
|
||||
}
|
||||
|
||||
ScrollView {
|
||||
ListView {
|
||||
id: variations_list
|
||||
model: machineList.model.getItem(machineList.currentIndex).variations
|
||||
delegate: RadioButton {
|
||||
id: variation_radio_button
|
||||
checked: ListView.view.currentIndex == index ? true : false
|
||||
exclusiveGroup: variationGroup;
|
||||
text: model.name;
|
||||
onClicked: ListView.view.currentIndex = index;
|
||||
}
|
||||
TextField {
|
||||
id: machineName;
|
||||
anchors.top: insertNameLabel.bottom
|
||||
text: machineList.model.getItem(machineList.currentIndex).name
|
||||
implicitWidth: UM.Theme.sizes.standard_list_input.width
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
//: Add Printer wizard field label
|
||||
text: qsTr("Printer Name:");
|
||||
}
|
||||
|
||||
TextField { id: machineName; Layout.fillWidth: true; text: machineList.model.getItem(machineList.currentIndex).name }
|
||||
Item { Layout.fillWidth: true; Layout.fillHeight: true; }
|
||||
ExclusiveGroup { id: printerGroup; }
|
||||
ExclusiveGroup { id: variationGroup; }
|
||||
|
||||
function getSpecialMachineType(machineId){
|
||||
for (var i = 0; i < UM.Models.addMachinesModel.rowCount(); i++) {
|
||||
if (UM.Models.addMachinesModel.getItem(i).name == machineId){
|
||||
return UM.Models.addMachinesModel.getItem(i).name
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function saveMachine(){
|
||||
if(machineList.currentIndex != -1) {
|
||||
UM.Models.availableMachinesModel.createMachine(machineList.currentIndex, variations_list.currentIndex, machineName.text)
|
||||
UM.Models.availableMachinesModel.createMachine(machineList.currentIndex, machineName.text)
|
||||
|
||||
var chosenMachine = UM.Models.availableMachinesModel.getItem(machineList.currentIndex).name
|
||||
var originalString = "Ultimaker Original"
|
||||
var originalPlusString = "Ultimaker Original+"
|
||||
var originalMachineType = getSpecialMachineType(originalString)
|
||||
|
||||
if (UM.Models.availableMachinesModel.getItem(machineList.currentIndex).name == originalMachineType){
|
||||
var variation = UM.Models.availableMachinesModel.getItem(machineList.currentIndex).variations.getItem(variations_list.currentIndex).name
|
||||
if (variation == originalString || variation == originalPlusString){
|
||||
console.log(UM.Models.availableMachinesModel.getItem(machineList.currentIndex).variations.getItem(variations_list.currentIndex).type)
|
||||
wizardPage.openFile(UM.Models.availableMachinesModel.getItem(machineList.currentIndex).variations.getItem(variations_list.currentIndex).type)
|
||||
}
|
||||
if (chosenMachine == originalString | chosenMachine == originalPlusString ){
|
||||
wizardPage.reloadModel([
|
||||
{
|
||||
title: "Select Upgraded Parts",
|
||||
page: "SelectUpgradedParts.qml"
|
||||
},
|
||||
{
|
||||
title: "Upgrade Ultimaker Firmware",
|
||||
page: "UpgradeFirmware.qml"
|
||||
},
|
||||
{
|
||||
title: "Ultimaker Checkup",
|
||||
page: "UltimakerCheckup.qml"
|
||||
},
|
||||
{
|
||||
title: "Bedleveling Wizard",
|
||||
page: "Bedleveling.qml"
|
||||
}
|
||||
]
|
||||
)
|
||||
}
|
||||
|
||||
else {
|
||||
wizardPage.closeWizard()
|
||||
}
|
||||
|
|
|
@ -9,8 +9,25 @@ import QtQuick.Window 2.1
|
|||
import UM 1.0 as UM
|
||||
|
||||
ColumnLayout {
|
||||
id: wizardPage
|
||||
property string title
|
||||
anchors.fill: parent;
|
||||
property int pageWidth
|
||||
property int pageHeight
|
||||
|
||||
SystemPalette{id: palette}
|
||||
//signal openFile(string fileName)
|
||||
//signal closeWizard()
|
||||
|
||||
width: wizardPage.pageWidth
|
||||
height: wizardPage.pageHeight
|
||||
|
||||
Connections {
|
||||
target: elementRoot
|
||||
onResize: {
|
||||
wizardPage.width = pageWidth
|
||||
wizardPage.height = pageHeight
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: parent.title
|
||||
|
|
|
@ -9,8 +9,25 @@ import QtQuick.Window 2.1
|
|||
import UM 1.0 as UM
|
||||
|
||||
ColumnLayout {
|
||||
id: wizardPage
|
||||
property string title
|
||||
anchors.fill: parent;
|
||||
property int pageWidth
|
||||
property int pageHeight
|
||||
|
||||
SystemPalette{id: palette}
|
||||
//signal openFile(string fileName)
|
||||
//signal closeWizard()
|
||||
|
||||
width: wizardPage.pageWidth
|
||||
height: wizardPage.pageHeight
|
||||
|
||||
Connections {
|
||||
target: elementRoot
|
||||
onResize: {
|
||||
wizardPage.width = pageWidth
|
||||
wizardPage.height = pageHeight
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: parent.title
|
||||
|
@ -18,23 +35,26 @@ ColumnLayout {
|
|||
}
|
||||
|
||||
Label {
|
||||
//: Add Printer wizard page description
|
||||
text: qsTr("Please select the type of printer:");
|
||||
//: Add UM Original wizard page description
|
||||
width: 300
|
||||
|
||||
wrapMode: Text.WordWrap
|
||||
text: qsTr("To assist you in having better default settings for your Ultimaker. Cura would like to know which upgrades you have in your machine:");
|
||||
}
|
||||
|
||||
ScrollView {
|
||||
Layout.fillWidth: true;
|
||||
|
||||
ListView {
|
||||
id: machineList;
|
||||
model: UM.Models.availableMachinesModel
|
||||
delegate: RadioButton {
|
||||
exclusiveGroup: printerGroup;
|
||||
text: model.name;
|
||||
onClicked: {
|
||||
ListView.view.currentIndex = index;
|
||||
|
||||
}
|
||||
Column {
|
||||
CheckBox {
|
||||
text: qsTr("Breakfast")
|
||||
checked: true
|
||||
}
|
||||
CheckBox {
|
||||
text: qsTr("Lunch")
|
||||
}
|
||||
CheckBox {
|
||||
text: qsTr("Dinner")
|
||||
checked: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -44,7 +64,6 @@ ColumnLayout {
|
|||
text: qsTr("Printer Name:");
|
||||
}
|
||||
|
||||
TextField { id: machineName; Layout.fillWidth: true; text: machineList.model.getItem(machineList.currentIndex).name }
|
||||
|
||||
Item { Layout.fillWidth: true; Layout.fillHeight: true; }
|
||||
|
||||
|
|
|
@ -9,7 +9,10 @@ import QtQuick.Window 2.1
|
|||
import UM 1.0 as UM
|
||||
|
||||
ColumnLayout {
|
||||
id: wizardPage
|
||||
property string title
|
||||
property int pageWidth
|
||||
property int pageHeight
|
||||
anchors.fill: parent;
|
||||
|
||||
Label {
|
||||
|
|
|
@ -9,9 +9,11 @@ import QtQuick.Window 2.1
|
|||
import UM 1.0 as UM
|
||||
|
||||
ColumnLayout {
|
||||
id: wizardPage
|
||||
property string title
|
||||
property int pageWidth
|
||||
property int pageHeight
|
||||
anchors.fill: parent;
|
||||
signal openFile(string fileName)
|
||||
|
||||
Label {
|
||||
text: parent.title
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
"default": 1
|
||||
},
|
||||
"machine_use_extruder_offset_to_offset_coords": { "default": false },
|
||||
|
||||
"extruder_nr": { "default": 0 },
|
||||
"machine_nozzle_offset_x": { "default": 0, "SEE_machine_extruder_trains": true },
|
||||
"machine_nozzle_offset_y": { "default": 0, "SEE_machine_extruder_trains": true },
|
||||
|
@ -55,18 +56,16 @@
|
|||
"machine_nozzle_tip_outer_diameter": { "default": 1, "SEE_machine_extruder_trains": true },
|
||||
"machine_nozzle_head_distance": { "default": 3, "SEE_machine_extruder_trains": true },
|
||||
"machine_nozzle_expansion_angle": { "default": 45, "SEE_machine_extruder_trains": true },
|
||||
"machine_heat_zone_length": { "default": 16, "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_start_code": { "default": "", "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_start_pos_abs": { "default": false, "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_start_pos_x": { "default": 0, "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_start_pos_y": { "default": 0, "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_end_pos_abs": { "default": false, "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_end_pos_x": { "default": 0, "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_end_pos_y": { "default": 0, "SEE_machine_extruder_trains": true },
|
||||
"machine_extruder_end_code": { "default": "", "SEE_machine_extruder_trains": true },
|
||||
"machine_switch_extruder_retraction_amount": { "default": 16, "SEE_machine_extruder_trains": true },
|
||||
"machine_switch_extruder_retraction_speed": { "default": 20, "SEE_machine_extruder_trains": true },
|
||||
"machine_switch_extruder_prime_speed": { "default": 20, "SEE_machine_extruder_trains": true },
|
||||
|
||||
"machine_nozzle_offset_x_1": {
|
||||
"default": 0
|
||||
},
|
||||
"machine_nozzle_offset_y_1": {
|
||||
"default": 0
|
||||
},
|
||||
"machine_gcode_flavor": {
|
||||
"default": "RepRap"
|
||||
},
|
||||
|
@ -658,6 +657,180 @@
|
|||
"min_value": 5,
|
||||
"min_value_warning": 50,
|
||||
"max_value_warning": 150
|
||||
},
|
||||
"retraction_enable": {
|
||||
"label": "Enable Retraction",
|
||||
"description": "Retract the filament when the nozzle is moving over a non-printed area. Details about the retraction can be configured in the advanced tab.",
|
||||
"type": "boolean",
|
||||
"default": true
|
||||
},
|
||||
"retraction_amount": {
|
||||
"label": "Retraction Distance",
|
||||
"description": "The amount of retraction: Set at 0 for no retraction at all. A value of 4.5mm seems to generate good results for 3mm filament in Bowden-tube fed printers.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 4.5,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_speed": {
|
||||
"label": "Retraction Speed",
|
||||
"description": "The speed at which the filament is retracted. A higher retraction speed works better, but a very high retraction speed can lead to filament grinding.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 25,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
},
|
||||
"children": {
|
||||
"retraction_retract_speed": {
|
||||
"label": "Retraction Retract Speed",
|
||||
"description": "The speed at which the filament is retracted. A higher retraction speed works better, but a very high retraction speed can lead to filament grinding.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 25,
|
||||
"visible": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_prime_speed": {
|
||||
"label": "Retraction Prime Speed",
|
||||
"description": "The speed at which the filament is pushed back after retraction.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 25,
|
||||
"visible": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"retraction_extra_prime_amount": {
|
||||
"label": "Retraction Extra Prime Amount",
|
||||
"description": "The amount of material extruded after unretracting. During a retracted travel material might get lost and so we need to compensate for this.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 0,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_min_travel": {
|
||||
"label": "Retraction Minimum Travel",
|
||||
"description": "The minimum distance of travel needed for a retraction to happen at all. This helps ensure you do not get a lot of retractions in a small area.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 4.5,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_count_max": {
|
||||
"label": "Maximal Retraction Count",
|
||||
"description": "This settings limits the number of retractions occuring within the Minimal Extrusion Distance Window. Further retractions within this window will be ignored. This avoids retracting repeatedly on the same piece of filament as that can flatten the filament and cause grinding issues.",
|
||||
"default": 6,
|
||||
"type": "int",
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_extrusion_window": {
|
||||
"label": "Minimal Extrusion Distance Window",
|
||||
"description": "The window in which the Maximal Retraction Count is enforced. This window should be approximately the size of the Retraction distance, so that effectively the number of times a retraction passes the same patch of material is limited.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 4.5,
|
||||
"visible": false,
|
||||
"inherit_function": "retraction_amount",
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_hop": {
|
||||
"label": "Z Hop when Retracting",
|
||||
"description": "Whenever a retraction is done, the head is lifted by this amount to travel over the print. A value of 0.075 works well. This feature has a lot of positive effect on delta towers.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 0,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"machine_switch_extruder_retraction_amount": {
|
||||
"label": "Nozzle Switch Retraction Distance",
|
||||
"description": "The amount of retraction: Set at 0 for no retraction at all. This should generally be the same as the length of the heat zone.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 16,
|
||||
"visible": false,
|
||||
"inherit_function": "machine_heat_zone_length",
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"machine_switch_extruder_retraction_speed": {
|
||||
"label": "Nozzle Switch Retraction Speed",
|
||||
"description": "The speed at which the filament is retracted. A higher retraction speed works better, but a very high retraction speed can lead to filament grinding.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 20,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
},
|
||||
"children": {
|
||||
"machine_switch_extruder_retraction_speed": {
|
||||
"label": "Nozzle Switch Retract Speed",
|
||||
"description": "The speed at which the filament is retracted during a nozzle switch retract. ",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 20,
|
||||
"visible": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"machine_switch_extruder_prime_speed": {
|
||||
"label": "Nozzle Switch Prime Speed",
|
||||
"description": "The speed at which the filament is pushed back after a nozzle switch retraction.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 20,
|
||||
"visible": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -830,139 +1003,6 @@
|
|||
"visible": true,
|
||||
"icon": "category_travel",
|
||||
"settings": {
|
||||
"retraction_enable": {
|
||||
"label": "Enable Retraction",
|
||||
"description": "Retract the filament when the nozzle is moving over a non-printed area. Details about the retraction can be configured in the advanced tab.",
|
||||
"type": "boolean",
|
||||
"default": true
|
||||
},
|
||||
"print_sequence": {
|
||||
"label": "Print sequence",
|
||||
"description": "TODO",
|
||||
"type": "enum",
|
||||
"options": [
|
||||
"All at once",
|
||||
"One at a time"
|
||||
],
|
||||
"default": "All at once",
|
||||
"visible": true
|
||||
},
|
||||
"retraction_speed": {
|
||||
"label": "Retraction Speed",
|
||||
"description": "The speed at which the filament is retracted. A higher retraction speed works better, but a very high retraction speed can lead to filament grinding.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 25,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
},
|
||||
"children": {
|
||||
"retraction_retract_speed": {
|
||||
"label": "Retraction Retract Speed",
|
||||
"description": "The speed at which the filament is retracted. A higher retraction speed works better, but a very high retraction speed can lead to filament grinding.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 25,
|
||||
"visible": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_prime_speed": {
|
||||
"label": "Retraction Prime Speed",
|
||||
"description": "The speed at which the filament is pushed back after retraction.",
|
||||
"unit": "mm/s",
|
||||
"type": "float",
|
||||
"default": 25,
|
||||
"visible": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"retraction_amount": {
|
||||
"label": "Retraction Distance",
|
||||
"description": "The amount of retraction: Set at 0 for no retraction at all. A value of 4.5mm seems to generate good results for 3mm filament in Bowden-tube fed printers.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 4.5,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_extra_prime_amount": {
|
||||
"label": "Retraction Extra Prime Amount",
|
||||
"description": "The amount of material extruded after unretracting. During a retracted travel material might get lost and so we need to compensate for this.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 0,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_min_travel": {
|
||||
"label": "Retraction Minimum Travel",
|
||||
"description": "The minimum distance of travel needed for a retraction to happen at all. This helps ensure you do not get a lot of retractions in a small area.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 4.5,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_count_max": {
|
||||
"label": "Maximal Retraction Count",
|
||||
"description": "This settings limits the number of retractions occuring within the Minimal Extrusion Distance Window. Further retractions within this window will be ignored. This avoids retracting repeatedly on the same piece of filament as that can flatten the filament and cause grinding issues.",
|
||||
"default": 6,
|
||||
"type": "int",
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_extrusion_window": {
|
||||
"label": "Minimal Extrusion Distance Window",
|
||||
"description": "The window in which the Maximal Retraction Count is enforced. This window should be approximately the size of the Retraction distance, so that effectively the number of times a retraction passes the same patch of material is limited.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 4.5,
|
||||
"visible": false,
|
||||
"inherit_function": "retraction_amount",
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_hop": {
|
||||
"label": "Z Hop when Retracting",
|
||||
"description": "Whenever a retraction is done, the head is lifted by this amount to travel over the print. A value of 0.075 works well. This feature has a lot of positive effect on delta towers.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 0,
|
||||
"visible": false,
|
||||
"inherit": false,
|
||||
"active_if": {
|
||||
"setting": "retraction_enable",
|
||||
"value": true
|
||||
}
|
||||
},
|
||||
"retraction_combing": {
|
||||
"label": "Enable Combing",
|
||||
"description": "Combing keeps the head within the interior of the print whenever possible when traveling from one part of the print to another, and does not use retraction. If combing is disabled the printer head moves straight from the start point to the end point and it will always retract.",
|
||||
|
@ -1000,7 +1040,7 @@
|
|||
"label": "Enable Coasting",
|
||||
"description": "Coasting replaces the last part of an extrusion path with a travel path. The oozed material is used to lay down the last piece of the extrusion path in order to reduce stringing.",
|
||||
"type": "boolean",
|
||||
"default": true,
|
||||
"default": false,
|
||||
"visible": true
|
||||
},
|
||||
"coasting_volume": {
|
||||
|
@ -1021,7 +1061,7 @@
|
|||
"description": "The volume otherwise oozed in a travel move with retraction.",
|
||||
"unit": "mm³",
|
||||
"type": "float",
|
||||
"default": 0.096,
|
||||
"default": 0.064,
|
||||
"visible": false,
|
||||
"inherit": true,
|
||||
"active_if": {
|
||||
|
@ -1034,7 +1074,7 @@
|
|||
"description": "The volume otherwise oozed in a travel move without retraction.",
|
||||
"unit": "mm³",
|
||||
"type": "float",
|
||||
"default": 0.064,
|
||||
"default": 0.096,
|
||||
"visible": false,
|
||||
"inherit": true,
|
||||
"active_if": {
|
||||
|
@ -1775,7 +1815,7 @@
|
|||
"description": "The height of the steps of the stair-like bottom of support resting on the model. Small steps can cause the support to be hard to remove from the top of the model.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"default": 1,
|
||||
"default": 2,
|
||||
"visible": false,
|
||||
"active_if": {
|
||||
"setting": "support_type",
|
||||
|
@ -1969,6 +2009,17 @@
|
|||
"visible": true,
|
||||
"icon": "category_blackmagic",
|
||||
"settings": {
|
||||
"print_sequence": {
|
||||
"label": "Print sequence",
|
||||
"description": "Whether to print all objects one layer at a time or to wait for one object to finish, before moving on to the next. One at a time mode is only possible if all models are separated such that the whole print head can move between and all models are lower than the distance between the nozzle and the X/Y axles.",
|
||||
"type": "enum",
|
||||
"options": [
|
||||
"All at once",
|
||||
"One at a time"
|
||||
],
|
||||
"default": "All at once",
|
||||
"visible": true
|
||||
},
|
||||
"magic_mesh_surface_mode": {
|
||||
"label": "Surface Mode",
|
||||
"description": "Print the surface instead of the volume. No infill, no top/bottom skin, just a single wall of which the middle coincides with the surface of the mesh.",
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"id": "grr_neo",
|
||||
"version": 1,
|
||||
"name": "German RepRap Neo",
|
||||
"manufacturer": "German RepRap",
|
||||
"manufacturer": "Other",
|
||||
"author": "other",
|
||||
"icon": "icon_ultimaker.png",
|
||||
"platform": "grr_neo_platform.stl",
|
||||
|
|
|
@ -1,18 +1,15 @@
|
|||
{
|
||||
"id": "maker_starter",
|
||||
"name": "3DMaker Starter",
|
||||
"icon": "icon_ultimaker2.png",
|
||||
"platform": "makerstarter_platform.stl",
|
||||
"version": 1,
|
||||
"name": "3DMaker Starter",
|
||||
"manufacturer": "Other",
|
||||
"author": "Other",
|
||||
"icon": "icon_ultimaker2.png",
|
||||
"platform": "makerstarter_platform.stl",
|
||||
|
||||
"inherits": "fdmprinter.json",
|
||||
|
||||
"inherits": "fdmprinter.json",
|
||||
|
||||
"machine_settings": {
|
||||
"machine_start_gcode": {
|
||||
"default": "G21 ;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\nG1 F200 E3 ;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F{travel_speed}\n;Put printing message on LCD screen\nM117 Printing...\nM220 S50"
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default": "M104 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\nM84 ;steppers off\nG90 ;absolute positioning"
|
||||
},
|
||||
"machine_width": { "default": 210 },
|
||||
"machine_depth": { "default": 185 },
|
||||
"machine_height": { "default": 200 },
|
||||
|
@ -35,6 +32,7 @@
|
|||
"machine_nozzle_head_distance": { "default": 3.0 },
|
||||
"machine_nozzle_expansion_angle": { "default": 45 }
|
||||
},
|
||||
|
||||
"categories": {
|
||||
"resolution": {
|
||||
"label": "Quality",
|
||||
|
|
|
@ -22,6 +22,11 @@
|
|||
"size": 0.5,
|
||||
"family": "Roboto"
|
||||
},
|
||||
"caption": {
|
||||
"size": 0.75,
|
||||
"italic": true,
|
||||
"family": "Roboto"
|
||||
},
|
||||
"sidebar_header": {
|
||||
"size": 0.75,
|
||||
"capitalize": true,
|
||||
|
@ -120,7 +125,7 @@
|
|||
"save_button_printtime_text": [12, 169, 227, 255],
|
||||
"save_button_background": [249, 249, 249, 255],
|
||||
|
||||
"message": [205, 202, 201, 255],
|
||||
"message": [160, 163, 171, 255],
|
||||
"message_text": [35, 35, 35, 255],
|
||||
|
||||
"tool_panel_background": [255, 255, 255, 255]
|
||||
|
@ -144,6 +149,9 @@
|
|||
"setting_unit_margin": [0.5, 0.5],
|
||||
"setting_text_maxwidth": [40.0, 0.0],
|
||||
|
||||
"standard_list_lineheight": [1.5, 1.5],
|
||||
"standard_list_input": [20.0, 25.0],
|
||||
|
||||
"button": [4.25, 4.25],
|
||||
"button_icon": [2.9, 2.9],
|
||||
|
||||
|
@ -171,6 +179,9 @@
|
|||
"save_button_label_margin": [0.5, 0.5],
|
||||
"save_button_save_to_button": [0.3, 2.7],
|
||||
|
||||
"modal_window_minimum": [30.0, 30.0],
|
||||
"wizard_progress": [10.0, 0.0],
|
||||
|
||||
"message": [30.0, 5.0],
|
||||
"message_close": [1.25, 1.25]
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue