Merge branch '15.06' of https://github.com/Ultimaker/Cura into 15.06

This commit is contained in:
Tamara Hogenhout 2015-06-25 16:53:33 +02:00
commit d13eedee64
14 changed files with 2793 additions and 67 deletions

View file

@ -42,6 +42,9 @@ class BuildVolume(SceneNode):
def setDepth(self, depth):
self._depth = depth
def getDisallowedAreas(self):
return self._disallowed_areas
def setDisallowedAreas(self, areas):
self._disallowed_areas = areas
@ -109,19 +112,43 @@ class BuildVolume(SceneNode):
v = self._grid_mesh.getVertex(n)
self._grid_mesh.setVertexUVCoordinates(n, v[0], v[2])
disallowed_area_size = 0
if self._disallowed_areas:
mb = MeshBuilder()
for area in self._disallowed_areas:
for polygon in self._disallowed_areas:
points = polygon.getPoints()
mb.addQuad(
area[0],
area[1],
area[2],
area[3],
Vector(points[0, 0], 0.1, points[0, 1]),
Vector(points[1, 0], 0.1, points[1, 1]),
Vector(points[2, 0], 0.1, points[2, 1]),
Vector(points[3, 0], 0.1, points[3, 1]),
color = Color(174, 174, 174, 255)
)
# Find the largest disallowed area to exclude it from the maximum scale bounds
size = abs(numpy.max(points[:, 1]) - numpy.min(points[:, 1]))
disallowed_area_size = max(size, disallowed_area_size)
self._disallowed_area_mesh = mb.getData()
else:
self._disallowed_area_mesh = None
self._aabb = AxisAlignedBox(minimum = Vector(minW, minH - 1.0, minD), maximum = Vector(maxW, maxH, maxD))
settings = Application.getInstance().getActiveMachine()
skirt_size = 0.0
if settings.getSettingValueByKey("adhesion_type") == "None":
skirt_size = settings.getSettingValueByKey("skirt_line_count") * settings.getSettingValueByKey("skirt_line_width") + settings.getSettingValueByKey("skirt_gap")
elif settings.getSettingValueByKey("adhesion_type") == "Brim":
skirt_size = settings.getSettingValueByKey("brim_line_count") * settings.getSettingValueByKey("skirt_line_width")
else:
skirt_size = settings.getSettingValueByKey("skirt_line_width")
skirt_size += settings.getSettingValueByKey("skirt_line_width")
scale_to_max_bounds = AxisAlignedBox(
minimum = Vector(minW + skirt_size, minH, minD + skirt_size + disallowed_area_size),
maximum = Vector(maxW - skirt_size, maxH, maxD - skirt_size - disallowed_area_size)
)
Application.getInstance().getController().getScene()._maximum_bounds = scale_to_max_bounds

View file

@ -18,6 +18,7 @@ from UM.Preferences import Preferences
from UM.Message import Message
from UM.PluginRegistry import PluginRegistry
from UM.JobQueue import JobQueue
from UM.Math.Polygon import Polygon
from UM.Scene.BoxRenderer import BoxRenderer
from UM.Scene.Selection import Selection
@ -36,7 +37,7 @@ from . import PrintInformation
from . import CuraActions
from PyQt5.QtCore import pyqtSlot, QUrl, Qt, pyqtSignal, pyqtProperty
from PyQt5.QtGui import QColor
from PyQt5.QtGui import QColor, QIcon
import platform
import sys
@ -50,7 +51,9 @@ class CuraApplication(QtApplication):
if not hasattr(sys, "frozen"):
Resources.addResourcePath(os.path.join(os.path.abspath(os.path.dirname(__file__)), ".."))
super().__init__(name = "cura", version = "15.05.95")
super().__init__(name = "cura", version = "15.05.96")
self.setWindowIcon(QIcon(Resources.getPath(Resources.ImagesLocation, "cura-icon.png")))
self.setRequiredPlugins([
"CuraEngineBackend",
@ -464,23 +467,13 @@ class CuraApplication(QtApplication):
disallowed_areas = machine.getSettingValueByKey("machine_disallowed_areas")
areas = []
if disallowed_areas:
for area in disallowed_areas:
polygon = []
polygon.append(Vector(area[0][0], 0.2, area[0][1]))
polygon.append(Vector(area[1][0], 0.2, area[1][1]))
polygon.append(Vector(area[2][0], 0.2, area[2][1]))
polygon.append(Vector(area[3][0], 0.2, area[3][1]))
areas.append(polygon)
areas.append(Polygon(numpy.array(area, numpy.float32)))
self._volume.setDisallowedAreas(areas)
self._volume.rebuild()
if self.getController().getTool("ScaleTool"):
bbox = self._volume.getBoundingBox()
bbox.setBottom(0.0)
self.getController().getTool("ScaleTool").setMaximumBounds(bbox)
offset = machine.getSettingValueByKey("machine_platform_offset")
if offset:
self._platform.setPosition(Vector(offset[0], offset[1], offset[2]))

View file

@ -94,14 +94,19 @@ class PlatformPhysics:
move_vector.setX(overlap[0] * 1.1)
move_vector.setZ(overlap[1] * 1.1)
if hasattr(node, "_convex_hull"):
# Check for collisions between disallowed areas and the object
for area in self._build_volume.getDisallowedAreas():
overlap = node._convex_hull.intersectsPolygon(area)
if overlap is None:
continue
node._outside_buildarea = True
if move_vector != Vector():
op = PlatformPhysicsOperation.PlatformPhysicsOperation(node, move_vector)
op.push()
if node.getBoundingBox().intersectsBox(self._build_volume.getBoundingBox()) == AxisAlignedBox.IntersectionResult.FullIntersection:
op = ScaleToBoundsOperation(node, self._build_volume.getBoundingBox())
op.push()
def _onToolOperationStarted(self, tool):
self._enabled = False

View file

@ -38,6 +38,8 @@ class PrintInformation(QObject):
def __init__(self, parent = None):
super().__init__(parent)
self._enabled = False
self._minimum_print_time = Duration(None, self)
self._current_print_time = Duration(None, self)
self._maximum_print_time = Duration(None, self)
@ -103,6 +105,21 @@ class PrintInformation(QObject):
def timeQualityValue(self):
return self._time_quality_value
def setEnabled(self, enabled):
if enabled != self._enabled:
self._enabled = enabled
if self._enabled:
self._updateTimeQualitySettings()
self._onSlicingStarted()
self.enabledChanged.emit()
enabledChanged = pyqtSignal()
@pyqtProperty(bool, fset = setEnabled, notify = enabledChanged)
def enabled(self):
return self._enabled
@pyqtSlot(int)
def setTimeQualityValue(self, value):
if value != self._time_quality_value:
@ -132,7 +149,10 @@ class PrintInformation(QObject):
self._material_amount = round(amount / 10) / 100
self.materialAmountChanged.emit()
if self._slice_reason != self.SliceReason.SettingChanged:
if not self._enabled:
return
if self._slice_reason != self.SliceReason.SettingChanged or not self._minimum_print_time.valid or not self._maximum_print_time.valid:
self._slice_pass = self.SlicePass.LowQualitySettings
self._backend.slice(settings = self._low_quality_settings, save_gcode = False, save_polygons = False, force_restart = False, report_progress = False)
else:
@ -166,7 +186,7 @@ class PrintInformation(QObject):
self._slice_reason = self.SliceReason.ActiveMachineChanged
def _updateTimeQualitySettings(self):
if not self._current_settings:
if not self._current_settings or not self._enabled:
return
if not self._low_quality_settings:

View file

@ -1,5 +1,5 @@
!ifndef VERSION
!define VERSION '15.05.95'
!define VERSION '15.05.96'
!endif
; The name of the installer
@ -92,7 +92,7 @@ Section "Cura ${VERSION}"
CreateDirectory "$SMPROGRAMS\Cura ${VERSION}"
CreateShortCut "$SMPROGRAMS\Cura ${VERSION}\Uninstall Cura ${VERSION}.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
CreateShortCut "$SMPROGRAMS\Cura ${VERSION}\Cura ${VERSION}.lnk" "$INSTDIR\Cura.exe" '' "$INSTDIR\resources\cura.ico" 0
CreateShortCut "$SMPROGRAMS\Cura ${VERSION}\Cura ${VERSION}.lnk" "$INSTDIR\Cura.exe" '' "$INSTDIR\Cura.exe" 0
SectionEnd
@ -107,7 +107,7 @@ Section "Install Visual Studio 2010 Redistributable"
File "vcredist_2010_20110908_x86.exe"
IfSilent +2
ExecWait '"$INSTDIR\vcredist_2010_20110908_x86.exe" /silent /norestart'
ExecWait '"$INSTDIR\vcredist_2010_20110908_x86.exe" /q /norestart'
SectionEnd

115
resources/i18n/fr/cura.po Normal file
View file

@ -0,0 +1,115 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-05-07 16:35+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: /home/ahiemstra/Projects/Ultimaker/cura/src/CuraApplication.py:91
msgctxt "Save button tooltip"
msgid "Save to Disk"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/src/CuraApplication.py:96
msgctxt "Splash screen message"
msgid "Setting up scene..."
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/src/CuraApplication.py:130
msgctxt "Splash screen message"
msgid "Loading interface..."
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/src/CuraApplication.py:373
#, python-brace-format
msgctxt "Save button tooltip. {0} is sd card name"
msgid "Save to SD Card {0}"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/src/CuraApplication.py:421
#, python-brace-format
msgctxt "Saved to SD message, {0} is sdcard, {1} is filename"
msgid "Saved to SD Card {0} as {1}"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/src/CuraApplication.py:424
msgctxt "Message action"
msgid "Eject"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/src/CuraApplication.py:426
#, python-brace-format
msgctxt "Message action tooltip, {0} is sdcard"
msgid "Eject SD Card {0}"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/plugins/CuraEngineBackend/__init__.py:13
msgctxt "CuraEngine backend plugin description"
msgid "Provides the link to the CuraEngine slicing backend"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/plugins/USBPrinting/USBPrinterManager.py:40
msgid "Update Firmware"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/plugins/USBPrinting/__init__.py:13
msgctxt "USB Printing plugin description"
msgid ""
"Accepts G-Code and sends them to a printer. Plugin can also update firmware"
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/plugins/GCodeWriter/__init__.py:13
msgctxt "GCode Writer Plugin Description"
msgid "Writes GCode to a file"
msgstr "Écrire le GCode dans un fichier"
#: /home/ahiemstra/Projects/Ultimaker/cura/plugins/GCodeWriter/__init__.py:18
msgctxt "GCode Writer File Description"
msgid "GCode File"
msgstr "Fichier GCode"
#: /home/ahiemstra/Projects/Ultimaker/cura/plugins/LayerView/__init__.py:13
msgctxt "Layer View plugin description"
msgid "Provides the Layer view."
msgstr ""
#: /home/ahiemstra/Projects/Ultimaker/cura/plugins/LayerView/__init__.py:16
msgctxt "Layers View mode"
msgid "Layers"
msgstr ""
#~ msgctxt "Rotate tool toolbar button name"
#~ msgid "Rotate"
#~ msgstr "Pivoter"
#~ msgctxt "Rotate tool description"
#~ msgid "Rotate Object"
#~ msgstr "Pivoter lobjet"
#~ msgctxt "Scale tool toolbar button"
#~ msgid "Scale"
#~ msgstr "Mettre à léchelle"
#~ msgctxt "Scale tool description"
#~ msgid "Scale Object"
#~ msgstr "Mettre lobjet à léchelle"
#~ msgctxt "Erase tool toolbar button"
#~ msgid "Erase"
#~ msgstr "Effacer"
#~ msgctxt "erase tool description"
#~ msgid "Remove points"
#~ msgstr "Supprimer les points"

View file

@ -0,0 +1,496 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Qt-Contexts: true\n"
"X-Generator: Poedit 1.5.7\n"
#. About dialog title
#: ../resources/qml/AboutDialog.qml:12
msgctxt "AboutDialog|"
msgid "About Cura"
msgstr ""
#. About dialog application description
#: ../resources/qml/AboutDialog.qml:42
msgctxt "AboutDialog|"
msgid "End-to-end solution for fused filament 3D printing."
msgstr ""
#. About dialog application author note
#: ../resources/qml/AboutDialog.qml:47
msgctxt "AboutDialog|"
msgid ""
"Cura has been developed by Ultimaker B.V. in cooperation with the community."
msgstr ""
#. Close about dialog button
#: ../resources/qml/AboutDialog.qml:58
msgctxt "AboutDialog|"
msgid "Close"
msgstr ""
#. Undo action
#: ../resources/qml/Actions.qml:37
#, fuzzy
msgctxt "Actions|"
msgid "&Undo"
msgstr "Annuler"
#. Redo action
#: ../resources/qml/Actions.qml:45
#, fuzzy
msgctxt "Actions|"
msgid "&Redo"
msgstr "Rétablir"
#. Quit action
#: ../resources/qml/Actions.qml:53
#, fuzzy
msgctxt "Actions|"
msgid "&Quit"
msgstr "Quitter"
#. Preferences action
#: ../resources/qml/Actions.qml:61
#, fuzzy
msgctxt "Actions|"
msgid "&Preferences..."
msgstr "Préférences"
#. Add Printer action
#: ../resources/qml/Actions.qml:68
#, fuzzy
msgctxt "Actions|"
msgid "&Add Printer..."
msgstr "Ajouter une imprimante..."
#. Configure Printers action
#: ../resources/qml/Actions.qml:74
#, fuzzy
msgctxt "Actions|"
msgid "&Configure Printers"
msgstr "Configurer les imprimantes"
#. Show Online Documentation action
#: ../resources/qml/Actions.qml:81
msgctxt "Actions|"
msgid "Show Online &Documentation"
msgstr ""
#. Report a Bug Action
#: ../resources/qml/Actions.qml:89
msgctxt "Actions|"
msgid "Report a &Bug"
msgstr ""
#. About action
#: ../resources/qml/Actions.qml:96
#, fuzzy
msgctxt "Actions|"
msgid "&About..."
msgstr "À propos de..."
#. Delete selection action
#: ../resources/qml/Actions.qml:103
#, fuzzy
msgctxt "Actions|"
msgid "Delete Selection"
msgstr "Supprimer la sélection"
#. Delete object action
#: ../resources/qml/Actions.qml:111
#, fuzzy
msgctxt "Actions|"
msgid "Delete Object"
msgstr "Supprimer lobjet"
#. Center object action
#: ../resources/qml/Actions.qml:118
#, fuzzy
msgctxt "Actions|"
msgid "Center Object on Platform"
msgstr "Centrer lobjet sur le plateau"
#. Duplicate object action
#: ../resources/qml/Actions.qml:124
#, fuzzy
msgctxt "Actions|"
msgid "Duplicate Object"
msgstr "Dupliquer lobjet"
#. Split object action
#: ../resources/qml/Actions.qml:130
#, fuzzy
msgctxt "Actions|"
msgid "Split Object into Parts"
msgstr "Diviser lobjet en plusieurs parties"
#. Clear build platform action
#: ../resources/qml/Actions.qml:137
#, fuzzy
msgctxt "Actions|"
msgid "Clear Build Platform"
msgstr "Effacer les éléments du plateau dimpression"
#. Reload all objects action
#: ../resources/qml/Actions.qml:144
#, fuzzy
msgctxt "Actions|"
msgid "Reload All Objects"
msgstr "Recharger tous les objets"
#. Reset all positions action
#: ../resources/qml/Actions.qml:150
#, fuzzy
msgctxt "Actions|"
msgid "Reset All Object Positions"
msgstr "Réinitialiser toutes les positions de lobjet"
#. Reset all positions action
#: ../resources/qml/Actions.qml:156
#, fuzzy
msgctxt "Actions|"
msgid "Reset All Object Transformations"
msgstr "Réinitialiser toutes les transformations de lobjet"
#. Open file action
#: ../resources/qml/Actions.qml:162
#, fuzzy
msgctxt "Actions|"
msgid "&Open..."
msgstr "Ouvrir..."
#. Save file action
#: ../resources/qml/Actions.qml:170
#, fuzzy
msgctxt "Actions|"
msgid "&Save..."
msgstr "Enregistrer..."
#. Show engine log action
#: ../resources/qml/Actions.qml:178
msgctxt "Actions|"
msgid "Show engine &log..."
msgstr ""
#. Add Printer dialog title
#. ----------
#. Add Printer wizard page title
#: ../resources/qml/AddMachineWizard.qml:12
#: ../resources/qml/AddMachineWizard.qml:19
msgctxt "AddMachineWizard|"
msgid "Add Printer"
msgstr "Ajouter une imprimante"
#. Add Printer wizard page description
#: ../resources/qml/AddMachineWizard.qml:25
msgctxt "AddMachineWizard|"
msgid "Please select the type of printer:"
msgstr "Veuillez sélectionner le type dimprimante :"
#. Add Printer wizard field label
#: ../resources/qml/AddMachineWizard.qml:40
msgctxt "AddMachineWizard|"
msgid "Printer Name:"
msgstr "Nom de limprimante :"
#. Add Printer wizarad button
#: ../resources/qml/AddMachineWizard.qml:53
msgctxt "AddMachineWizard|"
msgid "Next"
msgstr "Suivant"
#. Add Printer wizarad button
#: ../resources/qml/AddMachineWizard.qml:63
msgctxt "AddMachineWizard|"
msgid "Cancel"
msgstr "Annuler"
#. USB Printing dialog label, %1 is head temperature
#: ../plugins/USBPrinting/ControlWindow.qml:15
#, qt-format
msgctxt "ControlWindow|"
msgid "Extruder Temperature %1"
msgstr ""
#. USB Printing dialog label, %1 is bed temperature
#: ../plugins/USBPrinting/ControlWindow.qml:20
#, qt-format
msgctxt "ControlWindow|"
msgid "Bed Temperature %1"
msgstr ""
#. USB Printing dialog start print button
#: ../plugins/USBPrinting/ControlWindow.qml:33
#, fuzzy
msgctxt "ControlWindow|"
msgid "Print"
msgstr "Ajouter une imprimante"
#. USB Printing dialog cancel print button
#: ../plugins/USBPrinting/ControlWindow.qml:40
#, fuzzy
msgctxt "ControlWindow|"
msgid "Cancel"
msgstr "Annuler"
#. Cura application window title
#: ../resources/qml/Cura.qml:14
#, fuzzy
msgctxt "Cura|"
msgid "Cura"
msgstr "Cura"
#. File menu
#: ../resources/qml/Cura.qml:26
#, fuzzy
msgctxt "Cura|"
msgid "&File"
msgstr "&Fichier"
#. Edit menu
#: ../resources/qml/Cura.qml:38
#, fuzzy
msgctxt "Cura|"
msgid "&Edit"
msgstr "M&odifier"
#. Machine menu
#: ../resources/qml/Cura.qml:50
#, fuzzy
msgctxt "Cura|"
msgid "&Machine"
msgstr "&Machine"
#. Extensions menu
#: ../resources/qml/Cura.qml:76
#, fuzzy
msgctxt "Cura|"
msgid "E&xtensions"
msgstr "&Extensions"
#. Settings menu
#: ../resources/qml/Cura.qml:107
#, fuzzy
msgctxt "Cura|"
msgid "&Settings"
msgstr "&Paramètres"
#. Help menu
#: ../resources/qml/Cura.qml:114
#, fuzzy
msgctxt "Cura|"
msgid "&Help"
msgstr "&Aide"
#. View Mode toolbar button
#: ../resources/qml/Cura.qml:231
#, fuzzy
msgctxt "Cura|"
msgid "View Mode"
msgstr "Mode daffichage"
#. View preferences page title
#: ../resources/qml/Cura.qml:273
#, fuzzy
msgctxt "Cura|"
msgid "View"
msgstr "Afficher"
#. File open dialog title
#: ../resources/qml/Cura.qml:370
#, fuzzy
msgctxt "Cura|"
msgid "Open File"
msgstr "Ouvrir un fichier"
#. File save dialog title
#: ../resources/qml/Cura.qml:386
#, fuzzy
msgctxt "Cura|"
msgid "Save File"
msgstr "Enregistrer un fichier"
#. Engine Log dialog title
#: ../resources/qml/EngineLog.qml:11
msgctxt "EngineLog|"
msgid "Engine Log"
msgstr ""
#. Close engine log button
#: ../resources/qml/EngineLog.qml:30
msgctxt "EngineLog|"
msgid "Close"
msgstr ""
#. Firmware update status label
#: ../plugins/USBPrinting/FirmwareUpdateWindow.qml:16
msgctxt "FirmwareUpdateWindow|"
msgid "Starting firmware update, this may take a while."
msgstr ""
#. Firmware update status label
#: ../plugins/USBPrinting/FirmwareUpdateWindow.qml:21
msgctxt "FirmwareUpdateWindow|"
msgid "Firmware update completed."
msgstr ""
#. Firmware update status label
#: ../plugins/USBPrinting/FirmwareUpdateWindow.qml:26
msgctxt "FirmwareUpdateWindow|"
msgid "Updating firmware."
msgstr ""
#. Print material amount save button label
#: ../resources/qml/SaveButton.qml:149
#, fuzzy, qt-format
msgctxt "SaveButton|"
msgid "%1m material"
msgstr "Matériel"
#. Save button label
#: ../resources/qml/SaveButton.qml:191
msgctxt "SaveButton|"
msgid "Please load a 3D model"
msgstr ""
#. Save button label
#: ../resources/qml/SaveButton.qml:194
msgctxt "SaveButton|"
msgid "Calculating Print-time"
msgstr ""
#. Save button label
#: ../resources/qml/SaveButton.qml:197
msgctxt "SaveButton|"
msgid "Estimated Print-time"
msgstr ""
#. Simple configuration mode option
#: ../resources/qml/Sidebar.qml:105
msgctxt "Sidebar|"
msgid "Simple"
msgstr ""
#. Advanced configuration mode option
#: ../resources/qml/Sidebar.qml:107
msgctxt "Sidebar|"
msgid "Advanced"
msgstr ""
#. Configuration mode label
#: ../resources/qml/SidebarHeader.qml:26
msgctxt "SidebarHeader|"
msgid "Mode:"
msgstr ""
#. Machine selection label
#: ../resources/qml/SidebarHeader.qml:70
#, fuzzy
msgctxt "SidebarHeader|"
msgid "Machine:"
msgstr "Machine"
#. Sidebar header label
#: ../resources/qml/SidebarHeader.qml:117
#, fuzzy
msgctxt "SidebarHeader|"
msgid "Print Setup"
msgstr "Paramètres dimpression"
#. Sidebar configuration label
#: ../resources/qml/SidebarSimple.qml:40
msgctxt "SidebarSimple|"
msgid "No Model Loaded"
msgstr ""
#. Sidebar configuration label
#: ../resources/qml/SidebarSimple.qml:45
msgctxt "SidebarSimple|"
msgid "Calculating..."
msgstr ""
#. Sidebar configuration label
#: ../resources/qml/SidebarSimple.qml:50
msgctxt "SidebarSimple|"
msgid "Estimated Print Time"
msgstr ""
#. Quality slider label
#: ../resources/qml/SidebarSimple.qml:87
msgctxt "SidebarSimple|"
msgid ""
"Minimum\n"
"Draft"
msgstr ""
#. Quality slider label
#: ../resources/qml/SidebarSimple.qml:97
msgctxt "SidebarSimple|"
msgid ""
"Maximum\n"
"Quality"
msgstr ""
#. Setting checkbox
#: ../resources/qml/SidebarSimple.qml:109
msgctxt "SidebarSimple|"
msgid "Enable Support"
msgstr ""
#. View configuration page title
#: ../resources/qml/ViewPage.qml:9
msgctxt "ViewPage|"
msgid "View"
msgstr "Afficher"
#. Display Overhang preference checkbox
#: ../resources/qml/ViewPage.qml:24
#, fuzzy
msgctxt "ViewPage|"
msgid "Display Overhang"
msgstr "Dépassement de laffichage"
#~ msgctxt "OutputGCodeButton|"
#~ msgid "Save"
#~ msgstr "Enregistrer"
#~ msgctxt "OutputGCodeButton|"
#~ msgid "Write to SD"
#~ msgstr "Enregistrer sur la carte SD"
#~ msgctxt "OutputGCodeButton|"
#~ msgid "Send over USB"
#~ msgstr "Transférer vers le périphérique USB"
#~ msgctxt "Printer|"
#~ msgid "No extensions loaded"
#~ msgstr "Aucune extension téléchargée"
#~ msgctxt "Printer|"
#~ msgid "Open File"
#~ msgstr "Ouvrir un fichier"
#~ msgctxt "PrinterActions|"
#~ msgid "Show Manual"
#~ msgstr "Afficher les instructions"
#~ msgctxt "SettingsPane|"
#~ msgid "Time"
#~ msgstr "Heure"
#~ msgctxt "SettingsPane|"
#~ msgid "Low Quality"
#~ msgstr "Basse qualité"
#~ msgctxt "SettingsPane|"
#~ msgid "High Quality"
#~ msgstr "Haute qualité"

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View file

@ -272,7 +272,6 @@ UM.MainWindow {
top: parent.top;
bottom: parent.bottom;
right: parent.right;
rightMargin: UM.Theme.sizes.window_margin.width;
}
width: UM.Theme.sizes.panel.width;

View file

@ -20,6 +20,9 @@ Item {
property variant minimumPrintTime: PrintInformation.minimumPrintTime;
property variant maximumPrintTime: PrintInformation.maximumPrintTime;
Component.onCompleted: PrintInformation.enabled = true
Component.onDestruction: PrintInformation.enabled = false
ColumnLayout {
anchors.fill: parent;

View file

@ -41,23 +41,20 @@
"unit": "mm",
"type": "float",
"default": 0.1,
"min_value": 0.00001,
"min_value": 0.0001,
"min_value_warning": 0.04,
"max_value_warning": 2.0,
"always_visible": true,
"children": {
"layer_height_0": {
"label": "Initial Layer Thickness",
"description": "The layer thickness of the bottom layer. A thicker bottom layer makes sticking to the bed easier.",
"unit": "mm",
"type": "float",
"default": 0.3,
"min_value": 0.0,
"min_value_warning": 0.04,
"max_value_warning": 2.0,
"visible": false
}
}
"max_value_warning": 0.32
},
"layer_height_0": {
"label": "Initial Layer Thickness",
"description": "The layer thickness of the bottom layer. A thicker bottom layer makes sticking to the bed easier.",
"unit": "mm",
"type": "float",
"default": 0.3,
"min_value": 0.0001,
"min_value_warning": 0.04,
"max_value_warning": 0.32,
"visible": false
},
"shell_thickness": {
"label": "Shell Thickness",
@ -66,7 +63,8 @@
"type": "float",
"default": 0.8,
"min_value": 0.0,
"max_value": 5.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"children": {
"wall_thickness": {
"label": "Wall Thickness",
@ -74,9 +72,8 @@
"unit": "mm",
"default": 0.8,
"min_value": 0.0,
"max_value": 5.0,
"min_value_warning": 0.4,
"max_value_warning": 2.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"type": "float",
"visible": false,
@ -84,6 +81,7 @@
"wall_line_count": {
"label": "Wall Line Count",
"description": "Number of shell lines. This these lines are called perimeter lines in other tools and impact the strength and structural integrity of your print.",
"min_value": 0,
"default": 2,
"type": "int",
"visible": false,
@ -93,6 +91,9 @@
"label": "Wall Line Width",
"description": "Width of a single shell line. Each line of the shell will be printed with this width in mind.",
"unit": "mm",
"min_value": 0.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"default": 0.4,
"type": "float",
"visible": false,
@ -103,6 +104,9 @@
"label": "First Wall Line Width",
"description": "Width of the outermost shell line. By printing a thinner outermost wall line you can print higher details with a larger nozzle.",
"unit": "mm",
"min_value": 0.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"default": 0.4,
"type": "float",
"visible": false
@ -111,6 +115,9 @@
"label": "Other Walls Line Width",
"description": "Width of a single shell line for all shell lines except the outermost one.",
"unit": "mm",
"min_value": 0.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"default": 0.4,
"type": "float",
"visible": false
@ -119,6 +126,9 @@
"label": "Skirt line width",
"description": "Width of a single skirt line.",
"unit": "mm",
"min_value": 0.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"default": 0.4,
"type": "float",
"visible": false
@ -127,6 +137,9 @@
"label": "Top/bottom line width",
"description": "Width of a single top/bottom printed line. Which are used to fill up the top/bottom areas of a print.",
"unit": "mm",
"min_value": 0.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"default": 0.4,
"type": "float",
"visible": false
@ -135,6 +148,9 @@
"label": "Infill line width",
"description": "Width of the inner infill printed lines.",
"unit": "mm",
"min_value": 0.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"default": 0.4,
"type": "float",
"visible": false
@ -143,6 +159,9 @@
"label": "Support line width",
"description": "Width of the printed support structures lines.",
"unit": "mm",
"min_value": 0.0,
"min_value_warning": 0.2,
"max_value_warning": 5.0,
"default": 0.4,
"type": "float",
"visible": false
@ -168,6 +187,7 @@
"label": "Top Thickness",
"description": "This controls the thickness of the top layers. The number of solid layers printed is calculated from the layer thickness and this value. Having this value be a multiple of the layer thickness makes sense. And keep it nearto your wall thickness to make an evenly strong part.",
"unit": "mm",
"min_value": 0.0,
"default": 0.8,
"type": "float",
"visible": false,
@ -176,6 +196,7 @@
"top_layers": {
"label": "Top Layers",
"description": "This controls the amount of top layers.",
"min_value": 0,
"default": 4,
"type": "int",
"visible": false,
@ -187,6 +208,7 @@
"label": "Bottom Thickness",
"description": "This controls the thickness of the bottom layers. The number of solid layers printed is calculated from the layer thickness and this value. Having this value be a multiple of the layer thickness makes sense. And keep it near to your wall thickness to make an evenly strong part.",
"unit": "mm",
"min_value": 0.0,
"default": 0.8,
"type": "float",
"visible": false,
@ -195,6 +217,7 @@
"bottom_layers": {
"label": "Bottom Layers",
"description": "This controls the amount of bottom layers.",
"min_value": 0,
"default": 4,
"type": "int",
"visible": false,
@ -256,18 +279,18 @@
"description": "The temperature used for printing. Set at 0 to pre-heat yourself. For PLA a value of 210C is usually used.\nFor ABS a value of 230C or higher is required.",
"unit": "°C",
"type": "float",
"default": 220,
"min_value": 10,
"max_value": 340
"default": 210,
"min_value": 0,
"max_value_warning": 260
},
"material_bed_temperature": {
"label": "Bed Temperature",
"description": "The temperature used for the heated printer bed. Set at 0 to pre-heat it yourself.",
"unit": "°C",
"type": "float",
"default": 70,
"default": 60,
"min_value": 0,
"max_value": 340
"max_value_warning": 260
},
"material_diameter": {
"label": "Diameter",
@ -275,8 +298,8 @@
"unit": "mm",
"type": "float",
"default": 2.85,
"min_value": 0.4,
"max_value": 5.0
"min_value_warning": 0.4,
"max_value_warning": 3.5
},
"material_flow": {
"label": "Flow",
@ -285,13 +308,15 @@
"default": 100.0,
"type": "float",
"min_value": 5.0,
"max_value": 300.0
"min_value_warning": 50.0,
"max_value_warning": 150.0
},
"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,
"always_visible": true,
"children": {
"retraction_speed": {
@ -299,7 +324,8 @@
"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.0,
"min_value": 0.1,
"default": 40.0,
"visible": false,
"inherit": false,
@ -309,6 +335,7 @@
"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",
"min_value": 0.1,
"default": 25.0,
"visible": false
},
@ -317,6 +344,7 @@
"description": "The speed at which the filament is pushed back after retraction.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"default": 25.0,
"visible": false
}
@ -327,6 +355,7 @@
"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",
"min_value": 0.0,
"default": 4.5,
"visible": false,
"inherit": false
@ -336,7 +365,8 @@
"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,
"min_value": 0.0,
"default": 1.5,
"visible": false,
"inherit": false
},
@ -353,6 +383,7 @@
"description": "The minimum amount of extrusion that needs to happen between retractions. If a retraction should happen before this minimum is reached, it will be ignored. This avoids retracting repeatedly on the same piece of filament as that can flatten the filament and cause grinding issues.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 0.02,
"visible": false,
"inherit": false
@ -362,6 +393,7 @@
"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",
"min_value": 0.0,
"default": 0.0,
"visible": false,
"inherit": false
@ -380,6 +412,8 @@
"description": "The speed at which printing happens. A well-adjusted Ultimaker can reach 150mm/s, but for good quality prints you will want to print slower. Printing speed depends on a lot of factors, so you will need to experiment with optimal settings for this.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 150.0,
"default": 50.0,
"children": {
@ -388,6 +422,8 @@
"description": "The speed at which infill parts are printed. Printing the infill faster can greatly reduce printing time, but this can negatively affect print quality.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 150.0,
"default": 50.0,
"visible": false
},
@ -396,6 +432,8 @@
"description": "The speed at which shell is printed. Printing the outer shell at a lower speed improves the final skin quality.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 150.0,
"default": 50.0,
"visible": false,
@ -405,6 +443,8 @@
"description": "The speed at which outer shell is printed. Printing the outer shell at a lower speed improves the final skin quality. However, having a large difference between the inner shell speed and the outer shell speed will effect quality in a negative way.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 150.0,
"default": 50.0,
"visible": false
},
@ -413,6 +453,8 @@
"description": "The speed at which all inner shells are printed. Printing the inner shell fasster than the outer shell will reduce printing time. It is good to set this in between the outer shell speed and the infill speed.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 150.0,
"default": 50.0,
"visible": false
}
@ -423,6 +465,8 @@
"description": "Speed at which top/bottom parts are printed. Printing the top/bottom faster can greatly reduce printing time, but this can negatively affect print quality.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 150.0,
"default": 50.0,
"visible": false
},
@ -431,6 +475,8 @@
"description": "The speed at which exterior support is printed. Printing exterior supports at higher speeds can greatly improve printing time. And the surface quality of exterior support is usually not important, so higher speeds can be used.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 150.0,
"default": 50.0,
"visible": false,
"inherit_function": "speed_wall_0"
@ -442,6 +488,8 @@
"description": "The speed at which travel moves are done. A well-built Ultimaker can reach speeds of 250mm/s. But some machines might have misaligned layers then.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"max_value_warning": 300.0,
"default": 150.0
},
"speed_layer_0": {
@ -449,6 +497,7 @@
"description": "The print speed for the bottom layer: You want to print the first layer slower so it sticks to the printer bed better.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"default": 15.0,
"visible": false,
@ -458,6 +507,7 @@
"description": "The speed at which the skirt and brim are printed. Normally this is done at the initial layer speed. But sometimes you want to print the skirt at a different speed.",
"unit": "mm/s",
"type": "float",
"min_value": 0.1,
"default": 15.0,
"visible": false
}
@ -467,6 +517,7 @@
"label": "Amount of Slower Layers",
"description": "The first few layers are printed slower then the rest of the object, this to get better adhesion to the printer bed and improve the overall success rate of prints. The speed is gradually increased over these layers. 4 layers of speed-up is generally right for most materials and printers.",
"type": "int",
"min_value": 0,
"default": 4,
"visible": false
}
@ -482,6 +533,8 @@
"description": "This controls how densely filled the insides of your print will be. For a solid part use 100%, for an hollow part use 0%. A value around 20% is usually enough. This won't affect the outside of the print and only adjusts how strong the part becomes.",
"unit": "%",
"type": "float",
"min_value": 0.0,
"max_value": 100.0,
"default": 20.0,
"children": {
@ -504,6 +557,7 @@
"description": "Distance between the printed infill lines.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 2.0,
"visible": false,
"inherit_function": "(infill_line_width * 100) / parent_value"
@ -515,6 +569,8 @@
"description": "The amount of overlap between the infill and the walls. A slight overlap allows the walls to connect firmly to the infill.",
"unit": "%",
"type": "float",
"min_value": 0.0,
"max_value": 100.0,
"default": 15.0,
"visible": false
},
@ -523,6 +579,7 @@
"description": "The thickness of the sparse infill. This is rounded to a multiple of the layerheight and used to print the sparse-infill in fewer, thicker layers to save printing time.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 0.1,
"visible": false,
@ -556,6 +613,8 @@
"description": "Fan speed used for the print cooling fan on the printer head.",
"unit": "%",
"type": "float",
"min_value": 0.0,
"max_value": 100.0,
"default": 100.0,
"visible": false,
"inherit_function": "100.0 if parent_value else 0.0",
@ -566,6 +625,8 @@
"description": "Normally the fan runs at the minimum fan speed. If the layer is slowed down due to minimum layer time, the fan speed adjusts between minimum and maximum fan speed.",
"unit": "%",
"type": "float",
"min_value": 0.0,
"max_value": 100.0,
"default": 100.0,
"visible": false
},
@ -574,6 +635,8 @@
"description": "Normally the fan runs at the minimum fan speed. If the layer is slowed down due to minimum layer time, the fan speed adjusts between minimum and maximum fan speed.",
"unit": "%",
"type": "float",
"min_value": 0.0,
"max_value": 100.0,
"default": 100.0,
"visible": false
}
@ -586,6 +649,7 @@
"description": "The height at which the fan is turned on completely. For the layers below this the fan speed is scaled linearly with the fan off for the first layer.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 0.5,
"visible": false,
@ -594,6 +658,7 @@
"label": "Fan Full on at Layer",
"description": "The layer number at which the fan is turned on completely. For the layers below this the fan speed is scaled linearly with the fan off for the first layer.",
"type": "int",
"min_value": 0,
"default": 4,
"visible": false,
"inherit_function": "int((parent_value - layer_height_0 + 0.001) / layer_height)"
@ -605,6 +670,7 @@
"description": "The minimum time spent in a layer: Gives the layer time to cool down before the next one is put on top. If a layer would print in less time, then the printer will slow down to make sure it has spent at least this many seconds printing the layer.",
"unit": "sec",
"type": "float",
"min_value": 0.0,
"default": 5.0,
"visible": false
},
@ -613,6 +679,7 @@
"description": "The minimum time spent in a layer which will cause the fan to be at minmum speed. The fan speed increases linearly from maximal fan speed for layers taking minimal layer time to minimal fan speed for layers taking the time specified here.",
"unit": "sec",
"type": "float",
"min_value": 0.0,
"default": 10.0,
"visible": false
},
@ -621,6 +688,7 @@
"description": "The minimum layer time can cause the print to slow down so much it starts to droop. The minimum feedrate protects against this. Even if a print gets slowed down it will never be slower than this minimum speed.",
"unit": "mm/s",
"type": "float",
"min_value": 0.0,
"default": 10.0,
"visible": false
},
@ -649,7 +717,6 @@
"description": "Where to place support structures. The placement can be restricted such that the support structures won't rest on the model, which could otherwise cause scarring.",
"type": "enum",
"options": [
"None",
"Touching Buildplate",
"Everywhere"
],
@ -665,6 +732,8 @@
"description": "The maximum angle of overhangs for which support will be added. With 0 degrees being horizontal, and 90 degrees being vertical.",
"unit": "°",
"type": "float",
"min_value": 0.0,
"max_value": 90.0,
"default": 60.0,
"visible": false,
"active_if": {
@ -677,6 +746,8 @@
"description": "Distance of the support structure from the print, in the X/Y directions. 0.7mm typically gives a nice distance from the print so the support does not stick to the surface.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"max_value_warning": 10.0,
"default": 0.7,
"visible": false,
"active_if": {
@ -689,6 +760,8 @@
"description": "Distance from the top/bottom of the support to the print. A small gap here makes it easier to remove the support but makes the print a bit uglier. 0.15mm allows for easier separation of the support structure.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"max_value_warning": 10.0,
"default": 0.15,
"visible": false,
"active_if": {
@ -700,6 +773,8 @@
"label": "Top Distance",
"description": "Distance from the top of the support to the print.",
"unit": "mm",
"min_value": 0.0,
"max_value_warning": 10.0,
"default": 0.15,
"type": "float",
"visible": false,
@ -712,6 +787,8 @@
"label": "Bottom Distance",
"description": "Distance from the print to the bottom of the support.",
"unit": "mm",
"min_value": 0.0,
"max_value_warning": 10.0,
"default": 0.15,
"type": "float",
"visible": false,
@ -798,6 +875,8 @@
"description": "The angle of the rooftop of a tower. Larger angles mean more pointy towers. ",
"unit": "°",
"type": "int",
"min_value": 0,
"max_value": 90,
"default": 65,
"visible": false,
"active_if": {
@ -837,6 +916,8 @@
"description": "The amount of infill structure in the support, less infill gives weaker support which is easier to remove.",
"unit": "%",
"type": "float",
"min_value": 0.0,
"max_value": 100.0,
"default": 15,
"visible": false,
"active_if": {
@ -850,6 +931,7 @@
"description": "Distance between the printed support lines.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 2.66,
"visible": false,
"active_if": {
@ -882,6 +964,8 @@
"label": "Skirt Line Count",
"description": "The skirt is a line drawn around the first layer of the. This helps to prime your extruder, and to see if the object fits on your platform. Setting this to 0 will disable the skirt. Multiple skirt lines can help to prime your extruder better for small objects.",
"type": "int",
"min_value": 0,
"max_value_warning": 100,
"default": 1,
"active_if": {
"setting": "adhesion_type",
@ -893,6 +977,7 @@
"description": "The horizontal distance between the skirt and the first layer of the print.\nThis is the minimum distance, multiple skirt lines will extend outwards from this distance.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 3.0,
"active_if": {
"setting": "adhesion_type",
@ -904,7 +989,8 @@
"description": "The minimum length of the skirt. If this minimum length is not reached, more skirt lines will be added to reach this minimum length. Note: If the line count is set to 0 this is ignored.",
"unit": "mm",
"type": "float",
"default": 250,
"min_value": 0.0,
"default": 250.0,
"active_if": {
"setting": "adhesion_type",
"value": "None"
@ -914,7 +1000,9 @@
"label": "Brim Line Count",
"description": "The amount of lines used for a brim: More lines means a larger brim which sticks better, but this also makes your effective print area smaller.",
"type": "int",
"default": 10,
"min_value": 0,
"max_value_warning": 100,
"default": 20,
"active_if": {
"setting": "adhesion_type",
"value": "Brim"
@ -925,6 +1013,7 @@
"description": "If the raft is enabled, this is the extra raft area around the object which is also given a raft. Increasing this margin will create a stronger raft while using more material and leaving less area for your print.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 5.0,
"active_if": {
"setting": "adhesion_type",
@ -936,7 +1025,8 @@
"description": "The distance between the raft lines. The first 2 layers of the raft have this amount of spacing between the raft lines.",
"unit": "mm",
"type": "float",
"default": 5.0,
"min_value": 0.0,
"default": 3.0,
"active_if": {
"setting": "adhesion_type",
"value": "Raft"
@ -947,6 +1037,7 @@
"description": "Layer thickness of the first raft layer. This should be a thick layer which sticks firmly to the printer bed.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 0.3,
"active_if": {
"setting": "adhesion_type",
@ -980,6 +1071,7 @@
"description": "Thickness of the 2nd raft layer.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 0.27,
"active_if": {
"setting": "adhesion_type",
@ -991,6 +1083,7 @@
"description": "Width of the 2nd raft layer lines. These lines should be thinner than the first layer, but strong enough to attach the object to.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 0.4,
"active_if": {
"setting": "adhesion_type",
@ -1002,6 +1095,7 @@
"description": "The gap between the final raft layer and the first layer of the object. Only the first layer is raised by this amount to lower the bonding between the raft layer and the object. Makes it easier to peel off the raft.",
"unit": "mm",
"type": "float",
"min_value": 0.0,
"default": 0.22,
"active_if": {
"setting": "adhesion_type",
@ -1012,6 +1106,7 @@
"label": "Raft Surface Layers",
"description": "The number of surface layers on top of the 2nd raft layer. These are fully filled layers that the object sits on. 2 layers usually works fine.",
"type": "int",
"min_value": 0,
"default": 2,
"active_if": {
"setting": "adhesion_type",

View file

@ -19,7 +19,14 @@
"machine_nozzle_gantry_distance": { "default": 55 },
"machine_nozzle_offset_x_1": { "default": 18.0 },
"machine_nozzle_offset_y_1": { "default": 0.0 },
"machine_gcode_flavor": { "default": "RepRap (Marlin/Sprinter)" }
"machine_gcode_flavor": { "default": "RepRap (Marlin/Sprinter)" },
"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 F9000 ;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 F9000\n;Put printing message on LCD screen\nM117 Printing..."
},
"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 F9000 ;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"
}
},
"categories": {

View file

@ -47,12 +47,12 @@ setup(name="Cura",
url="http://software.ultimaker.com/",
license="GNU AFFERO GENERAL PUBLIC LICENSE (AGPL)",
scripts=["cura_app.py"],
#windows=[{"script": "printer.py", "dest_name": "Cura"}],
console=[{"script": "cura_app.py"}],
windows=[{"script": "cura_app.py", "dest_name": "Cura", "icon_resources": [(1, "icons/cura.ico")]}],
#console=[{"script": "cura_app.py"}],
options={"py2exe": {"skip_archive": False, "includes": includes}})
print("Coping Cura plugins.")
shutil.copytree(os.path.dirname(UM.__file__) + "/../plugins", "dist/plugins")
shutil.copytree(os.path.dirname(UM.__file__) + "/../plugins", "dist/plugins", ignore = shutil.ignore_patterns("ConsoleLogger", "OBJWriter", "MLPWriter", "MLPReader"))
for path in os.listdir("plugins"):
shutil.copytree("plugins/" + path, "dist/plugins/" + path)
print("Coping resources.")