mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 22:47:29 -06:00
Merge branch 'master' into feature_local_container_server
This commit is contained in:
commit
1029d4509c
117 changed files with 15146 additions and 3512 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -45,6 +45,7 @@ plugins/cura-big-flame-graph
|
|||
plugins/cura-siemensnx-plugin
|
||||
plugins/CuraVariSlicePlugin
|
||||
plugins/CuraLiveScriptingPlugin
|
||||
plugins/CuraPrintProfileCreator
|
||||
|
||||
#Build stuff
|
||||
CMakeCache.txt
|
||||
|
|
173
CHANGES
173
CHANGES
|
@ -1,173 +0,0 @@
|
|||
Cura 15.06 Beta
|
||||
===============
|
||||
|
||||
This is the *Beta* version of Cura 15.06.
|
||||
|
||||
Cura 15.06 is a new release built from the ground up on a completely new
|
||||
framework called Uranium. This framework has been designed to make it easier to
|
||||
extend Cura with additional functionality as well as provide a cleaner UI.
|
||||
|
||||
Changes since 15.05.95
|
||||
----------------------
|
||||
|
||||
* Fixed: Selection ghost remains visible after deleting an object
|
||||
* Fixed: Window does not show up immediately after starting application on OSX
|
||||
* Fixed: Added display of rotation angle during rotation
|
||||
* Fixed: Object changes position while rotating/scaling
|
||||
* Fixed: Loading improvements in the layer view
|
||||
* Fixed: Added application icons
|
||||
* Fixed: Improved feedback when loading models
|
||||
* Fixed: Eject device on MacOSX now provides proper feedback
|
||||
* Fixed: Make it possible to show retraction settings for UM2
|
||||
* Fixed: Opening the machine preferences page will switch to the first available machine
|
||||
* Fixed: Improved tool handle hit area size
|
||||
* Fixed: Render lines with a thickness based on screen DPI
|
||||
|
||||
Changes since 15.05.94
|
||||
----------------------
|
||||
|
||||
* Added Russian translations
|
||||
* Fixed: Infill not displayed in layer view
|
||||
* Fixed: Cannot select/scale/rotate when first activating the tool and then trying to select a model.
|
||||
* Fixed: Improved font rendering on Windows
|
||||
* Fixed: Help > Show Documentation crashes Cura on Windows
|
||||
* Fixed: "There is no disk in the drive" repeating messages on Windows
|
||||
* Fixed: Retraction settings not visible for Ultimaker2
|
||||
* Fixed: Display rotation angle when rotating an object
|
||||
* Fixed: Time/Quality slider values are properly rounded
|
||||
* Fixed: Improved clarity of buttons and text
|
||||
* Fixed: No indication that anything is happening when loading a model
|
||||
* Fixed: Eject device now works on Windows
|
||||
|
||||
Changes since 15.05.93
|
||||
----------------------
|
||||
|
||||
* Fixed: No shortcuts for moving up/down layers in layer view.
|
||||
* Fixed: Last view layers could not be scrolled through in layer view.
|
||||
* Fixed: Files provided on command line would not actually show up on the build
|
||||
platform.
|
||||
* Fixed: Render a ghost of the selection in Layer view to make the actual object
|
||||
position clear.
|
||||
* Fixed: Showing a menu would clear the selection.
|
||||
* Fixed: Size and scaling factor display for scale tool.
|
||||
* Fixed: Missing background for additional tool controls.
|
||||
* Fixed: Loading message times out when loading large files.
|
||||
* Fixed: Show recent files in the file menu.
|
||||
* Fixed: Windows installer will now install MSVC 2010 redistributable, to
|
||||
prevent issues with missing DLL's.
|
||||
* Fixed: Collapsed/expanded state of setting categories not stored.
|
||||
|
||||
Changes since 15.05.91
|
||||
----------------------
|
||||
|
||||
* There is now a working MacOSX version. Currently it supports OSX 10.7 and
|
||||
higher.
|
||||
* Fixed: Need to deselect before selecting a different object.
|
||||
* Fixed: Object can be moved on Z axis.
|
||||
* Fixed: Error values should be considered invalid values and will not trigger a
|
||||
slice.
|
||||
* Fixed: Text fields used a locale-aware validator while the underlying code did
|
||||
not.
|
||||
* Fixed: Text fields will trigger a slice on text change, not only after focus
|
||||
change/enter press.
|
||||
* Fixed: Rotate Tool snaps to incorrect value.
|
||||
* Fixed: Object Collision would only moved objects to the right.
|
||||
* Fixed: Object Collision would move the selected object when it should not.
|
||||
* Fixed: Camera panning now works correctly instead of doing nothing.
|
||||
* Fixed: Camera would flip around center point at maximum rotation.
|
||||
* Fixed: Build platform grid blocked view from below objects.
|
||||
* Fixed: Viewport on MacOSX with high-DPI screens was only taking 1/4th of the
|
||||
window
|
||||
|
||||
Changes since 15.05.90
|
||||
----------------------
|
||||
|
||||
* Fixed: Additional UI elements for tools and views not loading.
|
||||
* Fixed: Double click needed to change setting dialog page.
|
||||
* Fixed: Context menu entries (reload, center object, etc.) not working.
|
||||
* Fixed: "Open With" or passing files from command line not working.
|
||||
* Fixed: "Reload All" would not reload files.
|
||||
|
||||
In addition, a lot of work has gone into getting a usable Mac OSX version.
|
||||
|
||||
New Features
|
||||
------------
|
||||
|
||||
* Plugin based system
|
||||
The Uranium framework provides us with a plugin-based system
|
||||
that provides additional flexibility when extending Cura. Think
|
||||
of new views, tools, file formats, etc. This is probably the
|
||||
biggest new feature.
|
||||
* Improved UI
|
||||
The UI has received a complete overhaul.
|
||||
* Time-Quality Slider
|
||||
The 4 static quick print profiles have been replaced with
|
||||
a slider that should make it easier to find the right spot
|
||||
between print time and print quality.
|
||||
* More Settings
|
||||
The Advanced mode is now configurable and can show many
|
||||
additional settings that were previously not available, while at
|
||||
the same time not overwhelming new users with too many settings.
|
||||
Custom set of visible settings can be created by the user.
|
||||
* Support for high-DPI screens
|
||||
The refreshed UI has been designed with high-DPI screens in
|
||||
mind which should improve the experience of Cura on such
|
||||
devices.
|
||||
* Improved language support
|
||||
(Not yet available for the Beta release.)
|
||||
* Improved support structure generation
|
||||
The new version of the CuraEngine now features improved
|
||||
support generation algorithms and additional options for support
|
||||
structure generation.
|
||||
* Experimental Feature: Wire Printing
|
||||
Wire Printing has been added as an experimental new feature. It
|
||||
will print objects as a structure of lines. It can be enabled by
|
||||
from Advanced Mode -> Fixes -> Wire Printing.
|
||||
* Undo/Redo
|
||||
It is now possible to undo and redo most scene operations, like
|
||||
moving or rotating objects.
|
||||
|
||||
Features from earlier versions not (yet) in this release
|
||||
--------------------------------------------------------
|
||||
|
||||
* The All-at-once/One-at-a-time toggle is not available.
|
||||
We are working on an improved implementation of this mechanism
|
||||
but it will not be available for this release.
|
||||
* No dual extrusion features are available yet.
|
||||
We are working on a completely new workflow for this but this
|
||||
needs additional time.
|
||||
* “Lay Flat” has been removed.
|
||||
The existing implementation was unfortunately not salvageable.
|
||||
We will be looking into an improved implementation for this
|
||||
feature.
|
||||
* "Split Object Into Parts" has been removed.
|
||||
Due to the same reason as Lay Flat.
|
||||
* Support for AMF and DAE file formats has been removed.
|
||||
Both of these will be implemented as plugins in the future.
|
||||
* Support for directly loading a GCode file is not yet available.
|
||||
This will be implemented as a plugin in the future.
|
||||
* Support for PNG, JPG and other image formats has been removed.
|
||||
These can be supported by a plugin with an improved UI.
|
||||
* Support for loading Minecraft levels has been removed.
|
||||
This can be implemented as a plugin.
|
||||
* Windows XP support has been dropped.
|
||||
Microsoft is no longer supporting xp, so they no longer back
|
||||
port certain features that we require.
|
||||
* X-Ray view is missing.
|
||||
Will be implemented as a (you might have guessed it) plugin.
|
||||
* Fixes: Follow Mesh Surface
|
||||
Has been removed from the engine, the same result can be
|
||||
achieved using no infill or top/bottom layers.
|
||||
|
||||
Known Issues
|
||||
------------
|
||||
|
||||
For an up to date list of all known issues, please see
|
||||
https://github.com/Ultimaker/Cura/issues and
|
||||
https://github.com/Ultimaker/Uranium/issues .
|
||||
|
||||
* Some OBJ files are rendered as black objects due to missing
|
||||
normals.
|
||||
* Disabling plugins does not work correctly yet.
|
||||
* Unicorn occasionally still requires feeding. Do not feed it
|
||||
after midnight.
|
|
@ -1,6 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Name=Cura
|
||||
Name[de]=Cura
|
||||
Name=Ultimaker Cura
|
||||
Name[de]=Ultimaker Cura
|
||||
GenericName=3D Printing Software
|
||||
GenericName[de]=3D-Druck-Software
|
||||
Comment=Cura converts 3D models into paths for a 3D printer. It prepares your print for maximum accuracy, minimum printing time and good reliability with many extra features that make your print come out great.
|
||||
|
|
|
@ -52,6 +52,8 @@ class Arrange:
|
|||
# Place all objects fixed nodes
|
||||
for fixed_node in fixed_nodes:
|
||||
vertices = fixed_node.callDecoration("getConvexHull")
|
||||
if not vertices:
|
||||
continue
|
||||
points = copy.deepcopy(vertices._points)
|
||||
shape_arr = ShapeArray.fromPolygon(points, scale = scale)
|
||||
arranger.place(0, 0, shape_arr)
|
||||
|
|
|
@ -513,14 +513,13 @@ class BuildVolume(SceneNode):
|
|||
update_disallowed_areas = False
|
||||
update_raft_thickness = False
|
||||
update_extra_z_clearance = True
|
||||
|
||||
for setting_key in self._changed_settings_since_last_rebuild:
|
||||
|
||||
if setting_key == "print_sequence":
|
||||
machine_height = self._global_container_stack.getProperty("machine_height", "value")
|
||||
if Application.getInstance().getGlobalContainerStack().getProperty("print_sequence",
|
||||
"value") == "one_at_a_time" and len(
|
||||
self._scene_objects) > 1:
|
||||
self._height = min(self._global_container_stack.getProperty("gantry_height", "value"),
|
||||
machine_height)
|
||||
if Application.getInstance().getGlobalContainerStack().getProperty("print_sequence", "value") == "one_at_a_time" and len(self._scene_objects) > 1:
|
||||
self._height = min(self._global_container_stack.getProperty("gantry_height", "value"), machine_height)
|
||||
if self._height < machine_height:
|
||||
self._build_volume_message.show()
|
||||
else:
|
||||
|
@ -528,9 +527,20 @@ class BuildVolume(SceneNode):
|
|||
else:
|
||||
self._height = self._global_container_stack.getProperty("machine_height", "value")
|
||||
self._build_volume_message.hide()
|
||||
update_disallowed_areas = True
|
||||
rebuild_me = True
|
||||
|
||||
if setting_key in self._skirt_settings or setting_key in self._prime_settings or setting_key in self._tower_settings or setting_key == "print_sequence" or setting_key in self._ooze_shield_settings or setting_key in self._distance_settings or setting_key in self._extruder_settings:
|
||||
# sometimes the machine size or shape settings are adjusted on the active machine, we should reflect this
|
||||
if setting_key in self._machine_settings:
|
||||
self._height = self._global_container_stack.getProperty("machine_height", "value")
|
||||
self._width = self._global_container_stack.getProperty("machine_width", "value")
|
||||
self._depth = self._global_container_stack.getProperty("machine_depth", "value")
|
||||
self._shape = self._global_container_stack.getProperty("machine_shape", "value")
|
||||
update_extra_z_clearance = True
|
||||
update_disallowed_areas = True
|
||||
rebuild_me = True
|
||||
|
||||
if setting_key in self._skirt_settings + self._prime_settings + self._tower_settings + self._ooze_shield_settings + self._distance_settings + self._extruder_settings:
|
||||
update_disallowed_areas = True
|
||||
rebuild_me = True
|
||||
|
||||
|
@ -969,6 +979,7 @@ class BuildVolume(SceneNode):
|
|||
def _clamp(self, value, min_value, max_value):
|
||||
return max(min(value, max_value), min_value)
|
||||
|
||||
_machine_settings = ["machine_width", "machine_depth", "machine_height", "machine_shape", "machine_center_is_zero"]
|
||||
_skirt_settings = ["adhesion_type", "skirt_gap", "skirt_line_count", "skirt_brim_line_width", "brim_width", "brim_line_count", "raft_margin", "draft_shield_enabled", "draft_shield_dist", "initial_layer_line_width_factor"]
|
||||
_raft_settings = ["adhesion_type", "raft_base_thickness", "raft_interface_thickness", "raft_surface_layers", "raft_surface_thickness", "raft_airgap", "layer_0_z_overlap"]
|
||||
_extra_z_settings = ["retraction_hop_enabled", "retraction_hop"]
|
||||
|
|
|
@ -56,6 +56,11 @@ class ConvexHullDecorator(SceneNodeDecorator):
|
|||
if self._node is None:
|
||||
return None
|
||||
|
||||
if getattr(self._node, "_non_printing_mesh", False):
|
||||
# infill_mesh, cutting_mesh and anti_overhang_mesh do not need a convex hull
|
||||
# node._non_printing_mesh is set in SettingOverrideDecorator
|
||||
return None
|
||||
|
||||
hull = self._compute2DConvexHull()
|
||||
|
||||
if self._global_stack and self._node:
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from PyQt5.QtNetwork import QLocalServer
|
||||
from PyQt5.QtNetwork import QLocalSocket
|
||||
|
||||
|
@ -32,6 +31,7 @@ from UM.Operations.AddSceneNodeOperation import AddSceneNodeOperation
|
|||
from UM.Operations.RemoveSceneNodeOperation import RemoveSceneNodeOperation
|
||||
from UM.Operations.GroupedOperation import GroupedOperation
|
||||
from UM.Operations.SetTransformOperation import SetTransformOperation
|
||||
|
||||
from cura.Arrange import Arrange
|
||||
from cura.ShapeArray import ShapeArray
|
||||
from cura.ConvexHullDecorator import ConvexHullDecorator
|
||||
|
@ -95,10 +95,11 @@ numpy.seterr(all="ignore")
|
|||
MYPY = False
|
||||
if not MYPY:
|
||||
try:
|
||||
from cura.CuraVersion import CuraVersion, CuraBuildType
|
||||
from cura.CuraVersion import CuraVersion, CuraBuildType, CuraDebugMode
|
||||
except ImportError:
|
||||
CuraVersion = "master" # [CodeStyle: Reflecting imported value]
|
||||
CuraBuildType = ""
|
||||
CuraDebugMode = False
|
||||
|
||||
|
||||
class CuraApplication(QtApplication):
|
||||
|
@ -127,6 +128,7 @@ class CuraApplication(QtApplication):
|
|||
stacksValidationFinished = pyqtSignal() # Emitted whenever a validation is finished
|
||||
|
||||
def __init__(self):
|
||||
|
||||
# this list of dir names will be used by UM to detect an old cura directory
|
||||
for dir_name in ["extruders", "machine_instances", "materials", "plugins", "quality", "user", "variants"]:
|
||||
Resources.addExpectedDirNameInData(dir_name)
|
||||
|
@ -155,7 +157,6 @@ class CuraApplication(QtApplication):
|
|||
|
||||
SettingDefinition.addSettingType("extruder", None, str, Validator)
|
||||
SettingDefinition.addSettingType("optional_extruder", None, str, None)
|
||||
|
||||
SettingDefinition.addSettingType("[int]", None, str, None)
|
||||
|
||||
SettingFunction.registerOperator("extruderValues", ExtruderManager.getExtruderValues)
|
||||
|
@ -181,7 +182,8 @@ class CuraApplication(QtApplication):
|
|||
ContainerRegistry.getInstance().addResourceType(self.ResourceTypes.DefinitionChangesContainer, "definition_changes")
|
||||
|
||||
## Initialise the version upgrade manager with Cura's storage paths.
|
||||
import UM.VersionUpgradeManager #Needs to be here to prevent circular dependencies.
|
||||
# Needs to be here to prevent circular dependencies.
|
||||
import UM.VersionUpgradeManager
|
||||
|
||||
UM.VersionUpgradeManager.VersionUpgradeManager.getInstance().setCurrentVersions(
|
||||
{
|
||||
|
@ -207,6 +209,7 @@ class CuraApplication(QtApplication):
|
|||
self._additional_components = {} # Components to add to certain areas in the interface
|
||||
|
||||
super().__init__(name = "cura", version = CuraVersion, buildtype = CuraBuildType,
|
||||
is_debug_mode = CuraDebugMode,
|
||||
tray_icon_name = "cura-icon-32.png")
|
||||
|
||||
self.default_theme = "cura-light"
|
||||
|
@ -226,7 +229,9 @@ class CuraApplication(QtApplication):
|
|||
"TranslateTool",
|
||||
"FileLogger",
|
||||
"XmlMaterialProfile",
|
||||
"PluginBrowser"
|
||||
"PluginBrowser",
|
||||
"PrepareStage",
|
||||
"MonitorStage"
|
||||
])
|
||||
self._physics = None
|
||||
self._volume = None
|
||||
|
@ -387,7 +392,6 @@ class CuraApplication(QtApplication):
|
|||
def needToShowUserAgreement(self):
|
||||
return self._need_to_show_user_agreement
|
||||
|
||||
|
||||
def setNeedToShowUserAgreement(self, set_value = True):
|
||||
self._need_to_show_user_agreement = set_value
|
||||
|
||||
|
@ -606,14 +610,14 @@ class CuraApplication(QtApplication):
|
|||
|
||||
controller = self.getController()
|
||||
|
||||
controller.setActiveStage("PrepareStage")
|
||||
controller.setActiveView("SolidView")
|
||||
|
||||
controller.setCameraTool("CameraTool")
|
||||
controller.setSelectionTool("SelectionTool")
|
||||
|
||||
t = controller.getTool("TranslateTool")
|
||||
if t:
|
||||
t.setEnabledAxis([ToolHandle.XAxis, ToolHandle.YAxis,ToolHandle.ZAxis])
|
||||
t.setEnabledAxis([ToolHandle.XAxis, ToolHandle.YAxis, ToolHandle.ZAxis])
|
||||
|
||||
Selection.selectionChanged.connect(self.onSelectionChanged)
|
||||
|
||||
|
@ -657,6 +661,7 @@ class CuraApplication(QtApplication):
|
|||
run_headless = self.getCommandLineOption("headless", False)
|
||||
if not run_headless:
|
||||
self.initializeEngine()
|
||||
controller.setActiveStage("PrepareStage")
|
||||
|
||||
if run_headless or self._engine.rootObjects:
|
||||
self.closeSplash()
|
||||
|
|
|
@ -1,12 +1,10 @@
|
|||
# Copyright (c) 2016 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from PyQt5.QtCore import QObject, pyqtSlot, pyqtProperty, pyqtSignal, QUrl
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from PyQt5.QtCore import QObject, pyqtSlot, pyqtProperty, pyqtSignal
|
||||
|
||||
from UM.PluginObject import PluginObject
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Logger import Logger
|
||||
from UM.Application import Application
|
||||
|
||||
import os
|
||||
|
@ -26,9 +24,6 @@ class MachineAction(QObject, PluginObject):
|
|||
self._key = key
|
||||
self._label = label
|
||||
self._qml_url = ""
|
||||
|
||||
self._component = None
|
||||
self._context = None
|
||||
self._view = None
|
||||
self._finished = False
|
||||
|
||||
|
@ -52,7 +47,6 @@ class MachineAction(QObject, PluginObject):
|
|||
# /sa _reset
|
||||
@pyqtSlot()
|
||||
def reset(self):
|
||||
self._component = None
|
||||
self._finished = False
|
||||
self._reset()
|
||||
|
||||
|
@ -78,7 +72,6 @@ class MachineAction(QObject, PluginObject):
|
|||
|
||||
@pyqtProperty(QObject, constant = True)
|
||||
def displayItem(self):
|
||||
if not self._component:
|
||||
if not self._view:
|
||||
self._createViewFromQML()
|
||||
|
||||
return self._view
|
|
@ -3,19 +3,15 @@
|
|||
|
||||
from UM.i18n import i18nCatalog
|
||||
from UM.OutputDevice.OutputDevice import OutputDevice
|
||||
from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QTimer, pyqtSignal, QUrl
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from PyQt5.QtCore import pyqtProperty, pyqtSlot, QObject, QTimer, pyqtSignal
|
||||
from PyQt5.QtWidgets import QMessageBox
|
||||
from enum import IntEnum # For the connection state tracking.
|
||||
|
||||
from UM.Settings.ContainerRegistry import ContainerRegistry
|
||||
from UM.Logger import Logger
|
||||
from UM.Signal import signalemitter
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Application import Application
|
||||
|
||||
import os
|
||||
|
||||
i18n_catalog = i18nCatalog("cura")
|
||||
|
||||
## Printer output device adds extra interface options on top of output device.
|
||||
|
@ -63,11 +59,9 @@ class PrinterOutputDevice(QObject, OutputDevice):
|
|||
self._camera_active = False
|
||||
|
||||
self._monitor_view_qml_path = ""
|
||||
self._monitor_component = None
|
||||
self._monitor_item = None
|
||||
|
||||
self._control_view_qml_path = ""
|
||||
self._control_component = None
|
||||
self._control_item = None
|
||||
|
||||
self._qml_context = None
|
||||
|
@ -155,54 +149,31 @@ class PrinterOutputDevice(QObject, OutputDevice):
|
|||
# Note that we specifically only check if the monitor component is created.
|
||||
# It could be that it failed to actually create the qml item! If we check if the item was created, it will try to
|
||||
# create the item (and fail) every time.
|
||||
if not self._monitor_component:
|
||||
if not self._monitor_item:
|
||||
self._createMonitorViewFromQML()
|
||||
|
||||
return self._monitor_item
|
||||
|
||||
@pyqtProperty(QObject, constant=True)
|
||||
def controlItem(self):
|
||||
if not self._control_component:
|
||||
if not self._control_item:
|
||||
self._createControlViewFromQML()
|
||||
|
||||
return self._control_item
|
||||
|
||||
def _createControlViewFromQML(self):
|
||||
if not self._control_view_qml_path:
|
||||
return
|
||||
|
||||
path = QUrl.fromLocalFile(self._control_view_qml_path)
|
||||
|
||||
# Because of garbage collection we need to keep this referenced by python.
|
||||
self._control_component = QQmlComponent(Application.getInstance()._engine, path)
|
||||
|
||||
# Check if the context was already requested before (Printer output device might have multiple items in the future)
|
||||
if self._qml_context is None:
|
||||
self._qml_context = QQmlContext(Application.getInstance()._engine.rootContext())
|
||||
self._qml_context.setContextProperty("OutputDevice", self)
|
||||
|
||||
self._control_item = self._control_component.create(self._qml_context)
|
||||
if self._control_item is None:
|
||||
Logger.log("e", "QQmlComponent status %s", self._control_component.status())
|
||||
Logger.log("e", "QQmlComponent error string %s", self._control_component.errorString())
|
||||
self._control_item = Application.getInstance().createQmlComponent(self._control_view_qml_path, {
|
||||
"OutputDevice": self
|
||||
})
|
||||
|
||||
def _createMonitorViewFromQML(self):
|
||||
if not self._monitor_view_qml_path:
|
||||
return
|
||||
path = QUrl.fromLocalFile(self._monitor_view_qml_path)
|
||||
|
||||
# Because of garbage collection we need to keep this referenced by python.
|
||||
self._monitor_component = QQmlComponent(Application.getInstance()._engine, path)
|
||||
|
||||
# Check if the context was already requested before (Printer output device might have multiple items in the future)
|
||||
if self._qml_context is None:
|
||||
self._qml_context = QQmlContext(Application.getInstance()._engine.rootContext())
|
||||
self._qml_context.setContextProperty("OutputDevice", self)
|
||||
|
||||
self._monitor_item = self._monitor_component.create(self._qml_context)
|
||||
if self._monitor_item is None:
|
||||
Logger.log("e", "QQmlComponent status %s", self._monitor_component.status())
|
||||
Logger.log("e", "QQmlComponent error string %s", self._monitor_component.errorString())
|
||||
self._monitor_item = Application.getInstance().createQmlComponent(self._monitor_view_qml_path, {
|
||||
"OutputDevice": self
|
||||
})
|
||||
|
||||
@pyqtProperty(str, notify=printerTypeChanged)
|
||||
def printerType(self):
|
||||
|
|
|
@ -63,7 +63,18 @@ class ContainerManager(QObject):
|
|||
return ""
|
||||
|
||||
container = containers[0]
|
||||
new_container = self.duplicateContainerInstance(container)
|
||||
return new_container.getId()
|
||||
|
||||
## Create a duplicate of the given container instance
|
||||
#
|
||||
# This will create and add a duplicate of the container that was passed.
|
||||
#
|
||||
# \param container \type{ContainerInterface} The container to duplicate.
|
||||
#
|
||||
# \return The duplicated container, or None if duplication failed.
|
||||
def duplicateContainerInstance(self, container):
|
||||
new_container = None
|
||||
new_name = self._container_registry.uniqueName(container.getName())
|
||||
# Only InstanceContainer has a duplicate method at the moment.
|
||||
# So fall back to serialize/deserialize when no duplicate method exists.
|
||||
|
@ -74,10 +85,11 @@ class ContainerManager(QObject):
|
|||
new_container.deserialize(container.serialize())
|
||||
new_container.setName(new_name)
|
||||
|
||||
# TODO: we probably don't want to add it to the registry here!
|
||||
if new_container:
|
||||
self._container_registry.addContainer(new_container)
|
||||
|
||||
return new_container.getId()
|
||||
return new_container
|
||||
|
||||
## Change the name of a specified container to a new name.
|
||||
#
|
||||
|
|
|
@ -204,53 +204,57 @@ class CuraContainerRegistry(ContainerRegistry):
|
|||
# Note that this will fail quickly. That is, if any profile reader throws an exception, it will stop reading. It will only continue reading if the reader returned None.
|
||||
Logger.log("e", "Failed to import profile from %s: %s while using profile reader. Got exception %s", file_name,profile_reader.getPluginId(), str(e))
|
||||
return { "status": "error", "message": catalog.i18nc("@info:status Don't translate the XML tags <filename> or <message>!", "Failed to import profile from <filename>{0}</filename>: <message>{1}</message>", file_name, str(e))}
|
||||
if profile_or_list: # Success!
|
||||
|
||||
if profile_or_list:
|
||||
name_seed = os.path.splitext(os.path.basename(file_name))[0]
|
||||
new_name = self.uniqueName(name_seed)
|
||||
|
||||
# Ensure it is always a list of profiles
|
||||
if type(profile_or_list) is not list:
|
||||
profile = profile_or_list
|
||||
profile_or_list = [profile_or_list]
|
||||
|
||||
result = self._configureProfile(profile, name_seed, new_name)
|
||||
if result is not None:
|
||||
return {"status": "error", "message": catalog.i18nc("@info:status Don't translate the XML tags <filename> or <message>!", "Failed to import profile from <filename>{0}</filename>: <message>{1}</message>", file_name, result)}
|
||||
if len(profile_or_list) == 1:
|
||||
# If there is only 1 stack file it means we're loading a legacy (pre-3.1) .curaprofile.
|
||||
# In that case we find the per-extruder settings and put those in a new quality_changes container
|
||||
# so that it is compatible with the new stack setup.
|
||||
profile = profile_or_list[0]
|
||||
extruder_stack_quality_changes_container = ContainerManager.getInstance().duplicateContainerInstance(profile)
|
||||
extruder_stack_quality_changes_container.addMetaDataEntry("extruder", "fdmextruder")
|
||||
|
||||
return {"status": "ok", "message": catalog.i18nc("@info:status", "Successfully imported profile {0}", profile.getName())}
|
||||
else:
|
||||
profile_index = -1
|
||||
global_profile = None
|
||||
|
||||
for profile in profile_or_list:
|
||||
if profile_index >= 0:
|
||||
if len(machine_extruders) > profile_index:
|
||||
extruder_id = Application.getInstance().getMachineManager().getQualityDefinitionId(machine_extruders[profile_index].getBottom())
|
||||
# Ensure the extruder profiles get non-conflicting names
|
||||
# NB: these are not user-facing
|
||||
if "extruder" in profile.getMetaData():
|
||||
profile.setMetaDataEntry("extruder", extruder_id)
|
||||
else:
|
||||
profile.addMetaDataEntry("extruder", extruder_id)
|
||||
profile_id = (extruder_id + "_" + name_seed).lower().replace(" ", "_")
|
||||
elif profile_index == 0:
|
||||
# Importing a multiextrusion profile into a single extrusion machine; merge 1st extruder profile into global profile
|
||||
profile._id = self.uniqueName("temporary_profile")
|
||||
self.addContainer(profile)
|
||||
ContainerManager.getInstance().mergeContainers(global_profile.getId(), profile.getId())
|
||||
self.removeContainer(profile.getId())
|
||||
break
|
||||
else:
|
||||
# The imported composite profile has a profile for an extruder that this machine does not have. Ignore this extruder-profile
|
||||
break
|
||||
for quality_changes_setting_key in extruder_stack_quality_changes_container.getAllKeys():
|
||||
settable_per_extruder = extruder_stack_quality_changes_container.getProperty(quality_changes_setting_key, "settable_per_extruder")
|
||||
if settable_per_extruder:
|
||||
profile.removeInstance(quality_changes_setting_key, postpone_emit = True)
|
||||
else:
|
||||
global_profile = profile
|
||||
profile_id = (global_container_stack.getBottom().getId() + "_" + name_seed).lower().replace(" ", "_")
|
||||
extruder_stack_quality_changes_container.removeInstance(quality_changes_setting_key, postpone_emit = True)
|
||||
|
||||
result = self._configureProfile(profile, profile_id, new_name)
|
||||
if result is not None:
|
||||
return {"status": "error", "message": catalog.i18nc("@info:status Don't translate the XML tags <filename> or <message>!", "Failed to import profile from <filename>{0}</filename>: <message>{1}</message>", file_name, result)}
|
||||
# We add the new container to the profile list so things like extruder positions are taken care of
|
||||
# in the next code segment.
|
||||
profile_or_list.append(extruder_stack_quality_changes_container)
|
||||
|
||||
profile_index += 1
|
||||
# Import all profiles
|
||||
for profile_index, profile in enumerate(profile_or_list):
|
||||
if profile_index == 0:
|
||||
# This is assumed to be the global profile
|
||||
profile_id = (global_container_stack.getBottom().getId() + "_" + name_seed).lower().replace(" ", "_")
|
||||
|
||||
return {"status": "ok", "message": catalog.i18nc("@info:status", "Successfully imported profile {0}", profile_or_list[0].getName())}
|
||||
elif len(machine_extruders) > profile_index:
|
||||
# This is assumed to be an extruder profile
|
||||
extruder_id = Application.getInstance().getMachineManager().getQualityDefinitionId(machine_extruders[profile_index - 1].getBottom())
|
||||
if not profile.getMetaDataEntry("extruder"):
|
||||
profile.addMetaDataEntry("extruder", extruder_id)
|
||||
else:
|
||||
profile.setMetaDataEntry("extruder", extruder_id)
|
||||
profile_id = (extruder_id + "_" + name_seed).lower().replace(" ", "_")
|
||||
|
||||
result = self._configureProfile(profile, profile_id, new_name)
|
||||
if result is not None:
|
||||
return {"status": "error", "message": catalog.i18nc(
|
||||
"@info:status Don't translate the XML tags <filename> or <message>!",
|
||||
"Failed to import profile from <filename>{0}</filename>: <message>{1}</message>",
|
||||
file_name, result)}
|
||||
|
||||
return {"status": "ok", "message": catalog.i18nc("@info:status", "Successfully imported profile {0}", profile_or_list[0].getName())}
|
||||
|
||||
# If it hasn't returned by now, none of the plugins loaded the profile successfully.
|
||||
return {"status": "error", "message": catalog.i18nc("@info:status", "Profile {0} has an unknown file type or is corrupted.", file_name)}
|
||||
|
|
|
@ -356,14 +356,16 @@ class ExtruderManager(QObject):
|
|||
# \return \type{List[ContainerStack]} a list of
|
||||
def getActiveExtruderStacks(self) -> List["ExtruderStack"]:
|
||||
global_stack = Application.getInstance().getGlobalContainerStack()
|
||||
if not global_stack:
|
||||
return None
|
||||
|
||||
result = []
|
||||
machine_extruder_count = global_stack.getProperty("machine_extruder_count", "value")
|
||||
|
||||
if global_stack and global_stack.getId() in self._extruder_trains:
|
||||
if global_stack.getId() in self._extruder_trains:
|
||||
for extruder in sorted(self._extruder_trains[global_stack.getId()]):
|
||||
result.append(self._extruder_trains[global_stack.getId()][extruder])
|
||||
|
||||
machine_extruder_count = global_stack.getProperty("machine_extruder_count", "value")
|
||||
|
||||
return result[:machine_extruder_count]
|
||||
|
||||
def __globalContainerStackChanged(self) -> None:
|
||||
|
|
|
@ -8,8 +8,8 @@ from UM.i18n import i18nCatalog
|
|||
import UM.Qt.ListModel
|
||||
from UM.Application import Application
|
||||
import UM.FlameProfiler
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
from cura.Settings.ExtruderStack import ExtruderStack #To listen to changes on the extruders.
|
||||
|
||||
from cura.Settings.ExtruderStack import ExtruderStack # To listen to changes on the extruders.
|
||||
|
||||
catalog = i18nCatalog("cura")
|
||||
|
||||
|
@ -68,7 +68,6 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
self._update_extruder_timer.setSingleShot(True)
|
||||
self._update_extruder_timer.timeout.connect(self.__updateExtruders)
|
||||
|
||||
self._add_global = False
|
||||
self._simple_names = False
|
||||
|
||||
self._active_machine_extruders = [] # type: Iterable[ExtruderStack]
|
||||
|
@ -76,21 +75,10 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
|
||||
# Listen to changes
|
||||
Application.getInstance().globalContainerStackChanged.connect(self._extrudersChanged) # When the machine is swapped we must update the active machine extruders
|
||||
ExtruderManager.getInstance().extrudersChanged.connect(self._extrudersChanged) # When the extruders change we must link to the stack-changed signal of the new extruder
|
||||
Application.getInstance().getExtruderManager().extrudersChanged.connect(self._extrudersChanged) # When the extruders change we must link to the stack-changed signal of the new extruder
|
||||
Application.getInstance().getContainerRegistry().containerMetaDataChanged.connect(self._onExtruderStackContainersChanged) # When meta data from a material container changes we must update
|
||||
self._extrudersChanged() # Also calls _updateExtruders
|
||||
|
||||
def setAddGlobal(self, add):
|
||||
if add != self._add_global:
|
||||
self._add_global = add
|
||||
self._updateExtruders()
|
||||
self.addGlobalChanged.emit()
|
||||
|
||||
addGlobalChanged = pyqtSignal()
|
||||
|
||||
@pyqtProperty(bool, fset = setAddGlobal, notify = addGlobalChanged)
|
||||
def addGlobal(self):
|
||||
return self._add_global
|
||||
|
||||
addOptionalExtruderChanged = pyqtSignal()
|
||||
|
||||
def setAddOptionalExtruder(self, add_optional_extruder):
|
||||
|
@ -140,7 +128,7 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
|
||||
# Link to new extruders
|
||||
self._active_machine_extruders = []
|
||||
extruder_manager = ExtruderManager.getInstance()
|
||||
extruder_manager = Application.getInstance().getExtruderManager()
|
||||
for extruder in extruder_manager.getExtruderStacks():
|
||||
if extruder is None: #This extruder wasn't loaded yet. This happens asynchronously while this model is constructed from QML.
|
||||
continue
|
||||
|
@ -175,24 +163,10 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
global_container_stack = Application.getInstance().getGlobalContainerStack()
|
||||
if global_container_stack:
|
||||
|
||||
# TODO: remove this - CURA-4482
|
||||
if self._add_global:
|
||||
material = global_container_stack.material
|
||||
color = material.getMetaDataEntry("color_code", default = self.defaultColors[0]) if material else self.defaultColors[0]
|
||||
item = {
|
||||
"id": global_container_stack.getId(),
|
||||
"name": catalog.i18nc("@menuitem", "Global"),
|
||||
"color": color,
|
||||
"index": -1,
|
||||
"definition": ""
|
||||
}
|
||||
items.append(item)
|
||||
extruders_changed = True
|
||||
|
||||
# get machine extruder count for verification
|
||||
machine_extruder_count = global_container_stack.getProperty("machine_extruder_count", "value")
|
||||
|
||||
for extruder in ExtruderManager.getInstance().getMachineExtruders(global_container_stack.getId()):
|
||||
for extruder in Application.getInstance().getExtruderManager().getMachineExtruders(global_container_stack.getId()):
|
||||
position = extruder.getMetaDataEntry("position", default = "0") # Get the position
|
||||
try:
|
||||
position = int(position)
|
||||
|
|
|
@ -502,6 +502,7 @@ class MachineManager(QObject):
|
|||
@pyqtProperty("QVariantList", notify=activeVariantChanged)
|
||||
def activeVariantNames(self) -> List[str]:
|
||||
result = []
|
||||
|
||||
active_stacks = ExtruderManager.getInstance().getActiveGlobalAndExtruderStacks()
|
||||
if active_stacks is not None:
|
||||
for stack in active_stacks:
|
||||
|
@ -514,6 +515,7 @@ class MachineManager(QObject):
|
|||
@pyqtProperty("QVariantList", notify = activeMaterialChanged)
|
||||
def activeMaterialNames(self) -> List[str]:
|
||||
result = []
|
||||
|
||||
active_stacks = ExtruderManager.getInstance().getActiveGlobalAndExtruderStacks()
|
||||
if active_stacks is not None:
|
||||
for stack in active_stacks:
|
||||
|
@ -534,6 +536,7 @@ class MachineManager(QObject):
|
|||
@pyqtProperty("QVariantMap", notify = activeVariantChanged)
|
||||
def allActiveVariantIds(self) -> Dict[str, str]:
|
||||
result = {}
|
||||
|
||||
active_stacks = ExtruderManager.getInstance().getActiveExtruderStacks()
|
||||
if active_stacks is not None: #If we have a global stack.
|
||||
for stack in active_stacks:
|
||||
|
@ -552,10 +555,8 @@ class MachineManager(QObject):
|
|||
@pyqtProperty("QVariantMap", notify = activeMaterialChanged)
|
||||
def allActiveMaterialIds(self) -> Dict[str, str]:
|
||||
result = {}
|
||||
|
||||
active_stacks = ExtruderManager.getInstance().getActiveExtruderStacks()
|
||||
|
||||
result[self._global_container_stack.getId()] = self._global_container_stack.material.getId()
|
||||
|
||||
if active_stacks is not None: # If we have extruder stacks
|
||||
for stack in active_stacks:
|
||||
material_container = stack.material
|
||||
|
@ -734,6 +735,9 @@ class MachineManager(QObject):
|
|||
|
||||
old_material = self._active_container_stack.material
|
||||
old_quality = self._active_container_stack.quality
|
||||
old_quality_type = None
|
||||
if old_quality and old_quality.getId() != self._empty_quality_container.getId():
|
||||
old_quality_type = old_quality.getMetaDataEntry("quality_type")
|
||||
old_quality_changes = self._active_container_stack.qualityChanges
|
||||
if not old_material:
|
||||
Logger.log("w", "While trying to set the active material, no material was found to replace it.")
|
||||
|
@ -774,13 +778,28 @@ class MachineManager(QObject):
|
|||
quality_manager.getWholeMachineDefinition(global_stack.definition),
|
||||
[material_container.getMetaData()])
|
||||
|
||||
if not candidate_quality or isinstance(candidate_quality, type(self._empty_quality_changes_container)):
|
||||
if not candidate_quality or candidate_quality.getId() == self._empty_quality_changes_container:
|
||||
Logger.log("d", "Attempting to find fallback quality")
|
||||
# Fall back to a quality (which must be compatible with all other extruders)
|
||||
new_qualities = quality_manager.findAllUsableQualitiesForMachineAndExtruders(
|
||||
self._global_container_stack, ExtruderManager.getInstance().getExtruderStacks())
|
||||
if new_qualities:
|
||||
new_quality_id = new_qualities[0].getId() # Just pick the first available one
|
||||
|
||||
quality_types = sorted([q.getMetaDataEntry("quality_type") for q in new_qualities], reverse = True)
|
||||
quality_type_to_use = None
|
||||
if quality_types:
|
||||
# try to use the same quality as before, otherwise the first one in the quality_types
|
||||
quality_type_to_use = quality_types[0]
|
||||
if old_quality_type is not None and old_quality_type in quality_type_to_use:
|
||||
quality_type_to_use = old_quality_type
|
||||
|
||||
new_quality = None
|
||||
for q in new_qualities:
|
||||
if quality_type_to_use is not None and q.getMetaDataEntry("quality_type") == quality_type_to_use:
|
||||
new_quality = q
|
||||
break
|
||||
|
||||
if new_quality is not None:
|
||||
new_quality_id = new_quality.getId() # Just pick the first available one
|
||||
else:
|
||||
Logger.log("w", "No quality profile found that matches the current machine and extruders.")
|
||||
else:
|
||||
|
|
|
@ -22,6 +22,14 @@ class SettingOverrideDecorator(SceneNodeDecorator):
|
|||
## Event indicating that the user selected a different extruder.
|
||||
activeExtruderChanged = Signal()
|
||||
|
||||
## Non-printing meshes
|
||||
#
|
||||
# If these settings are True for any mesh, the mesh does not need a convex hull,
|
||||
# and is sent to the slicer regardless of whether it fits inside the build volume.
|
||||
# Note that Support Mesh is not in here because it actually generates
|
||||
# g-code in the volume of the mesh.
|
||||
_non_printing_mesh_settings = {"anti_overhang_mesh", "infill_mesh", "cutting_mesh"}
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self._stack = PerObjectContainerStack(stack_id = id(self))
|
||||
|
@ -78,6 +86,8 @@ class SettingOverrideDecorator(SceneNodeDecorator):
|
|||
Application.getInstance().getBackend().needsSlicing()
|
||||
Application.getInstance().getBackend().tickle()
|
||||
|
||||
self._node._non_printing_mesh = any(self._stack.getProperty(setting, "value") for setting in self._non_printing_mesh_settings)
|
||||
|
||||
## Makes sure that the stack upon which the container stack is placed is
|
||||
# kept up to date.
|
||||
def _updateNextStack(self):
|
||||
|
|
22
cura/Stages/CuraStage.py
Normal file
22
cura/Stages/CuraStage.py
Normal file
|
@ -0,0 +1,22 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
from PyQt5.QtCore import pyqtProperty, QUrl, QObject
|
||||
|
||||
from UM.Stage import Stage
|
||||
|
||||
class CuraStage(Stage):
|
||||
|
||||
def __init__(self, parent = None):
|
||||
super().__init__(parent)
|
||||
|
||||
@pyqtProperty(str, constant = True)
|
||||
def stageId(self):
|
||||
return self.getPluginId()
|
||||
|
||||
@pyqtProperty(QUrl, constant = True)
|
||||
def mainComponent(self):
|
||||
return self.getDisplayComponent("main")
|
||||
|
||||
@pyqtProperty(QUrl, constant = True)
|
||||
def sidebarComponent(self):
|
||||
return self.getDisplayComponent("sidebar")
|
2
cura/Stages/__init__.py
Normal file
2
cura/Stages/__init__.py
Normal file
|
@ -0,0 +1,2 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
|
@ -22,9 +22,10 @@ if Platform.isLinux(): # Needed for platform.linux_distribution, which is not av
|
|||
if Platform.isWindows() and hasattr(sys, "frozen"):
|
||||
try:
|
||||
del os.environ["PYTHONPATH"]
|
||||
except KeyError: pass
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
#WORKAROUND: GITHUB-704 GITHUB-708
|
||||
# WORKAROUND: GITHUB-704 GITHUB-708
|
||||
# It looks like setuptools creates a .pth file in
|
||||
# the default /usr/lib which causes the default site-packages
|
||||
# to be inserted into sys.path before PYTHONPATH.
|
||||
|
@ -45,6 +46,7 @@ def exceptHook(hook_type, value, traceback):
|
|||
_crash_handler = CrashHandler(hook_type, value, traceback)
|
||||
_crash_handler.show()
|
||||
|
||||
|
||||
sys.excepthook = exceptHook
|
||||
|
||||
# Workaround for a race condition on certain systems where there
|
||||
|
@ -75,7 +77,7 @@ faulthandler.enable()
|
|||
# Force an instance of CuraContainerRegistry to be created and reused later.
|
||||
cura.Settings.CuraContainerRegistry.CuraContainerRegistry.getInstance()
|
||||
|
||||
# This prestart up check is needed to determine if we should start the application at all.
|
||||
# This pre-start up check is needed to determine if we should start the application at all.
|
||||
if not cura.CuraApplication.CuraApplication.preStartUp():
|
||||
sys.exit(0)
|
||||
|
||||
|
|
|
@ -126,11 +126,7 @@ Section "Install Arduino Drivers"
|
|||
SectionEnd
|
||||
|
||||
Section "Open STL files with Cura"
|
||||
WriteRegStr HKCR .stl "" "Cura STL model file"
|
||||
DeleteRegValue HKCR .stl "Content Type"
|
||||
WriteRegStr HKCR "Cura STL model file\DefaultIcon" "" "$INSTDIR\Cura.exe,0"
|
||||
WriteRegStr HKCR "Cura STL model file\shell" "" "open"
|
||||
WriteRegStr HKCR "Cura STL model file\shell\open\command" "" '"$INSTDIR\Cura.exe" "%1"'
|
||||
${registerExtension} "$INSTDIR\Cura.exe" ".stl" "STL_File"
|
||||
SectionEnd
|
||||
|
||||
Section /o "Open OBJ files with Cura"
|
||||
|
|
|
@ -444,6 +444,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
extruder_stacks = []
|
||||
extruder_stacks_added = []
|
||||
container_stacks_added = []
|
||||
machine_extruder_count = None
|
||||
|
||||
containers_added = []
|
||||
|
||||
|
@ -631,6 +632,12 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
# The ID already exists, but nothing in the values changed, so do nothing.
|
||||
pass
|
||||
quality_and_definition_changes_instance_containers.append(instance_container)
|
||||
|
||||
if container_type == "definition_changes":
|
||||
definition_changes_extruder_count = instance_container.getProperty("machine_extruder_count", "value")
|
||||
if definition_changes_extruder_count is not None:
|
||||
machine_extruder_count = definition_changes_extruder_count
|
||||
|
||||
else:
|
||||
existing_container = self._container_registry.findInstanceContainersMetadata(id = container_id)
|
||||
if not existing_container:
|
||||
|
@ -788,8 +795,14 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
if stack.quality.getId() in ("empty", "empty_quality"):
|
||||
has_not_supported = True
|
||||
break
|
||||
|
||||
# We filter out extruder stacks that are not actually used, for example the UM3 and custom FDM printer extruder count setting.
|
||||
extruder_stacks_in_use = extruder_stacks
|
||||
if machine_extruder_count is not None:
|
||||
extruder_stacks_in_use = extruder_stacks[:machine_extruder_count]
|
||||
|
||||
available_quality = QualityManager.getInstance().findAllUsableQualitiesForMachineAndExtruders(global_stack,
|
||||
extruder_stacks)
|
||||
extruder_stacks_in_use)
|
||||
if not has_not_supported:
|
||||
has_not_supported = not available_quality
|
||||
|
||||
|
@ -797,10 +810,10 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
|
||||
if has_not_supported:
|
||||
empty_quality_container = self._container_registry.findInstanceContainers(id = "empty_quality")[0]
|
||||
for stack in [global_stack] + extruder_stacks:
|
||||
for stack in [global_stack] + extruder_stacks_in_use:
|
||||
stack.replaceContainer(_ContainerIndexes.Quality, empty_quality_container)
|
||||
empty_quality_changes_container = self._container_registry.findInstanceContainers(id = "empty_quality_changes")[0]
|
||||
for stack in [global_stack] + extruder_stacks:
|
||||
for stack in [global_stack] + extruder_stacks_in_use:
|
||||
stack.replaceContainer(_ContainerIndexes.QualityChanges, empty_quality_changes_container)
|
||||
quality_has_been_changed = True
|
||||
|
||||
|
@ -833,7 +846,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
global_stack.quality = containers[0]
|
||||
global_stack.qualityChanges = empty_quality_changes_container
|
||||
# also find the quality containers for the extruders
|
||||
for extruder_stack in extruder_stacks:
|
||||
for extruder_stack in extruder_stacks_in_use:
|
||||
search_criteria = {"id": preferred_quality_id,
|
||||
"type": "quality",
|
||||
"definition": definition_id}
|
||||
|
@ -862,8 +875,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
if len(extruder_stacks) == 1:
|
||||
extruder_stack = extruder_stacks[0]
|
||||
|
||||
search_criteria = {"type": "quality",
|
||||
"quality_type": global_stack.quality.getMetaDataEntry("quality_type")}
|
||||
search_criteria = {"type": "quality", "quality_type": global_stack.quality.getMetaDataEntry("quality_type")}
|
||||
search_criteria["definition"] = global_stack.definition.getId()
|
||||
if not parseBool(global_stack.getMetaDataEntry("has_machine_quality", "False")):
|
||||
search_criteria["definition"] = "fdmprinter"
|
||||
|
|
|
@ -1,12 +1,10 @@
|
|||
# Copyright (c) 2016 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from PyQt5.QtCore import QUrl, pyqtSignal, QObject, pyqtProperty, QCoreApplication
|
||||
from PyQt5.QtCore import pyqtSignal, QObject, pyqtProperty, QCoreApplication
|
||||
from UM.FlameProfiler import pyqtSlot
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Application import Application
|
||||
from UM.Logger import Logger
|
||||
from UM.i18n import i18nCatalog
|
||||
from UM.Settings.ContainerRegistry import ContainerRegistry
|
||||
|
||||
|
|
|
@ -59,7 +59,9 @@ class ThreeMFWorkspaceWriter(WorkspaceWriter):
|
|||
version_file = zipfile.ZipInfo("Cura/version.ini")
|
||||
version_config_parser = configparser.ConfigParser()
|
||||
version_config_parser.add_section("versions")
|
||||
version_config_parser.set("versions", "cura_version", Application.getStaticVersion())
|
||||
version_config_parser.set("versions", "cura_version", Application.getInstance().getVersion())
|
||||
version_config_parser.set("versions", "build_type", Application.getInstance().getBuildType())
|
||||
version_config_parser.set("versions", "is_debug_mode", str(Application.getInstance().getIsDebugMode()))
|
||||
|
||||
version_file_string = StringIO()
|
||||
version_config_parser.write(version_file_string)
|
||||
|
|
|
@ -8,8 +8,7 @@ from UM.Application import Application
|
|||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Version import Version
|
||||
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from PyQt5.QtCore import QUrl, pyqtSlot, QObject
|
||||
from PyQt5.QtCore import pyqtSlot, QObject
|
||||
|
||||
import os.path
|
||||
import collections
|
||||
|
|
|
@ -1,3 +1,72 @@
|
|||
[3.1.0]
|
||||
*Profile added for 0.25 mm print core
|
||||
This new print core gives extra fine line widths which gives prints extra definition and surface quality.
|
||||
|
||||
*Profile added for Breakaway material
|
||||
New material profile for Breakaway material, a new dry post processing support material, which can be used for models with flat surface area overhangs.
|
||||
|
||||
*Layer view
|
||||
The existing Layer View has been updated in order to see a live simulation of all the paths within a layer.
|
||||
|
||||
*Quick camera controls
|
||||
New buttons have been added to the interface that can quickly reposition the camera view of the buildplate.
|
||||
|
||||
*Lock model on platform
|
||||
The move tool has a new option to lock a selected model to the platform.
|
||||
|
||||
*Faster profile switching speed
|
||||
Duplicating and removing a profile could take Ultimaker Cura quite some time, it now happens instantly.
|
||||
|
||||
*Faster printer selection
|
||||
Removing a printer from the library is now instant. No more unresponsive screens.
|
||||
|
||||
*Faster processing speed
|
||||
A 5 - 10 % speed increase when calculating normals, loading models, and slicing.
|
||||
|
||||
*Feedrate visualization
|
||||
Feedrate visualization has been added to the Layer view. Using this gives the user an idea of the print speeds per model part, allowing for better control over prints.
|
||||
|
||||
*Jogging
|
||||
It allows the printhead to be moved with on-screen controls. Contributed by fieldOfView.
|
||||
|
||||
*Large model loading
|
||||
A new feature has been added which unloads the layer view when switching to solid mode, speeding Ultimaker Cura back up without losing your G-code/layer view information.
|
||||
|
||||
*Scripts folder
|
||||
A scripts folder is now available in the Ultimaker Cura configuration folder. This folder can be loaded with post processing plugins scripts, which will automatically show in Ultimaker Cura. Contributed by fieldOfView.
|
||||
|
||||
*Optimized workflow for crash reporting
|
||||
Crash reports are automatically generated and allow the user, in case of a crash, to easily send their report with a description to developers.
|
||||
|
||||
*Floating models enabled
|
||||
In previous releases, models were dropped to the build plate when support was disabled. Models now float when the setting is enabled (even if creates an impossible-to-print situation). This can be used to stack separate models on top of each other.
|
||||
|
||||
*Slicing tolerance
|
||||
A new setting that affects the intersect point to influence the dimensional accuracy for diagonal surfaces. The user can select the behaviour: ‘Inclusive’ makes gaps narrower, ‘Exclusive’ makes gaps wider, and ‘Middle’ is the fastest to process. This can be used to create better tolerances for printed screw holes. Contributed by BagelOrb.
|
||||
|
||||
*Optimized zig zag patterns
|
||||
Zig zag patterns now print more consistently. Lines now have a 5 micron tolerance in which they are printed any way, resulting in longer connected lines. Contributed by smartavionics.
|
||||
|
||||
*Aligned z-seam inner wall moves
|
||||
Inner wall travel moves are aligned with the z-seam. This reduces the number of travel moves and reduces the chance of more unwanted seams.
|
||||
|
||||
*Relative positioning of infill patterns
|
||||
Infill patterns are now positioned relative to the center of loaded models and an offset can be applied to control the infill more precisely and adjust it to preference or strength. Contributed by smartavionics.
|
||||
|
||||
*Line resolution
|
||||
Enables the user to specify the minimum allowed distance value between two points in G-code to create lower or higher resolution polygons.
|
||||
|
||||
*Custom mode changes
|
||||
If profile settings have been modified in recommended mode under custom mode, a reset icon will appear to notify the user. Click the icon to show the changes that have been made, and revert back to the default profile settings.
|
||||
|
||||
*Bugfixes
|
||||
- Fix for layer numbers being displayed incorrectly when switching between solid and layer mode
|
||||
- Fix for Ultimaker Cura engine crashes on certain models
|
||||
- Fix for Uninstalling previous versions of Cura on Windows platforms
|
||||
- Fix for displaying visible settings
|
||||
- Fix for importing legacy .ini files
|
||||
- Prevent skipping user agreement dialog by pressing escape
|
||||
|
||||
[3.0.4]
|
||||
*Bug fixes
|
||||
- Fixed OpenGL issue that prevents Cura from starting.
|
||||
|
@ -40,7 +109,7 @@ The build plate now shows graduations of 10 mm and 1 mm for easy model positioni
|
|||
Extruder tabs have become buttons and icons have been updated.
|
||||
|
||||
*Add an "Export to Cura" button in SOLIDWORKS
|
||||
SOLIDWORKS plugin can now be installed using an automatic installer.
|
||||
A macro can be added to your SOLIDWORKS installation that loads your model into Ultimaker Cura.
|
||||
|
||||
*Siemens NX macro
|
||||
When a user updates models in Siemens NX and clicks the button, the updated models replace the models opened in Ultimaker Cura.
|
||||
|
@ -639,3 +708,165 @@ Prints the outer walls with a jittering motion to give your object a diffuse fin
|
|||
|
||||
*Wire Printing
|
||||
The object is printed with a mid-air / net-like structure, following the mesh surface. The build plate will move up and down during diagonal segments. Though not visible in layer view, you can view the result in other software, such as Repetier Host or http://chilipeppr.com/tinyg.
|
||||
|
||||
|
||||
[15.06 Beta]
|
||||
|
||||
Cura 15.06 is a new release built from the ground up on a completely new
|
||||
framework called Uranium. This framework has been designed to make it easier to
|
||||
extend Cura with additional functionality as well as provide a cleaner UI.
|
||||
|
||||
[15.05.95]
|
||||
|
||||
* Fixed: Selection ghost remains visible after deleting an object
|
||||
* Fixed: Window does not show up immediately after starting application on OSX
|
||||
* Fixed: Added display of rotation angle during rotation
|
||||
* Fixed: Object changes position while rotating/scaling
|
||||
* Fixed: Loading improvements in the layer view
|
||||
* Fixed: Added application icons
|
||||
* Fixed: Improved feedback when loading models
|
||||
* Fixed: Eject device on MacOSX now provides proper feedback
|
||||
* Fixed: Make it possible to show retraction settings for UM2
|
||||
* Fixed: Opening the machine preferences page will switch to the first available machine
|
||||
* Fixed: Improved tool handle hit area size
|
||||
* Fixed: Render lines with a thickness based on screen DPI
|
||||
|
||||
[15.05.94]
|
||||
|
||||
* Added Russian translations
|
||||
* Fixed: Infill not displayed in layer view
|
||||
* Fixed: Cannot select/scale/rotate when first activating the tool and then trying to select a model.
|
||||
* Fixed: Improved font rendering on Windows
|
||||
* Fixed: Help > Show Documentation crashes Cura on Windows
|
||||
* Fixed: "There is no disk in the drive" repeating messages on Windows
|
||||
* Fixed: Retraction settings not visible for Ultimaker2
|
||||
* Fixed: Display rotation angle when rotating an object
|
||||
* Fixed: Time/Quality slider values are properly rounded
|
||||
* Fixed: Improved clarity of buttons and text
|
||||
* Fixed: No indication that anything is happening when loading a model
|
||||
* Fixed: Eject device now works on Windows
|
||||
|
||||
[15.05.93]
|
||||
|
||||
* Fixed: No shortcuts for moving up/down layers in layer view.
|
||||
* Fixed: Last view layers could not be scrolled through in layer view.
|
||||
* Fixed: Files provided on command line would not actually show up on the build
|
||||
platform.
|
||||
* Fixed: Render a ghost of the selection in Layer view to make the actual object
|
||||
position clear.
|
||||
* Fixed: Showing a menu would clear the selection.
|
||||
* Fixed: Size and scaling factor display for scale tool.
|
||||
* Fixed: Missing background for additional tool controls.
|
||||
* Fixed: Loading message times out when loading large files.
|
||||
* Fixed: Show recent files in the file menu.
|
||||
* Fixed: Windows installer will now install MSVC 2010 redistributable, to
|
||||
prevent issues with missing DLL's.
|
||||
* Fixed: Collapsed/expanded state of setting categories not stored.
|
||||
|
||||
[15.05.91]
|
||||
|
||||
* There is now a working MacOSX version. Currently it supports OSX 10.7 and
|
||||
higher.
|
||||
* Fixed: Need to deselect before selecting a different object.
|
||||
* Fixed: Object can be moved on Z axis.
|
||||
* Fixed: Error values should be considered invalid values and will not trigger a
|
||||
slice.
|
||||
* Fixed: Text fields used a locale-aware validator while the underlying code did
|
||||
not.
|
||||
* Fixed: Text fields will trigger a slice on text change, not only after focus
|
||||
change/enter press.
|
||||
* Fixed: Rotate Tool snaps to incorrect value.
|
||||
* Fixed: Object Collision would only moved objects to the right.
|
||||
* Fixed: Object Collision would move the selected object when it should not.
|
||||
* Fixed: Camera panning now works correctly instead of doing nothing.
|
||||
* Fixed: Camera would flip around center point at maximum rotation.
|
||||
* Fixed: Build platform grid blocked view from below objects.
|
||||
* Fixed: Viewport on MacOSX with high-DPI screens was only taking 1/4th of the
|
||||
window
|
||||
|
||||
[15.05.90]
|
||||
|
||||
* Fixed: Additional UI elements for tools and views not loading.
|
||||
* Fixed: Double click needed to change setting dialog page.
|
||||
* Fixed: Context menu entries (reload, center object, etc.) not working.
|
||||
* Fixed: "Open With" or passing files from command line not working.
|
||||
* Fixed: "Reload All" would not reload files.
|
||||
|
||||
In addition, a lot of work has gone into getting a usable Mac OSX version.
|
||||
|
||||
New Features
|
||||
------------
|
||||
|
||||
* Plugin based system
|
||||
The Uranium framework provides us with a plugin-based system
|
||||
that provides additional flexibility when extending Cura. Think
|
||||
of new views, tools, file formats, etc. This is probably the
|
||||
biggest new feature.
|
||||
* Improved UI
|
||||
The UI has received a complete overhaul.
|
||||
* Time-Quality Slider
|
||||
The 4 static quick print profiles have been replaced with
|
||||
a slider that should make it easier to find the right spot
|
||||
between print time and print quality.
|
||||
* More Settings
|
||||
The Advanced mode is now configurable and can show many
|
||||
additional settings that were previously not available, while at
|
||||
the same time not overwhelming new users with too many settings.
|
||||
Custom set of visible settings can be created by the user.
|
||||
* Support for high-DPI screens
|
||||
The refreshed UI has been designed with high-DPI screens in
|
||||
mind which should improve the experience of Cura on such
|
||||
devices.
|
||||
* Improved language support
|
||||
(Not yet available for the Beta release.)
|
||||
* Improved support structure generation
|
||||
The new version of the CuraEngine now features improved
|
||||
support generation algorithms and additional options for support
|
||||
structure generation.
|
||||
* Experimental Feature: Wire Printing
|
||||
Wire Printing has been added as an experimental new feature. It
|
||||
will print objects as a structure of lines. It can be enabled by
|
||||
from Advanced Mode -> Fixes -> Wire Printing.
|
||||
* Undo/Redo
|
||||
It is now possible to undo and redo most scene operations, like
|
||||
moving or rotating objects.
|
||||
|
||||
Features from earlier versions not (yet) in this release
|
||||
--------------------------------------------------------
|
||||
|
||||
* The All-at-once/One-at-a-time toggle is not available.
|
||||
We are working on an improved implementation of this mechanism
|
||||
but it will not be available for this release.
|
||||
* No dual extrusion features are available yet.
|
||||
We are working on a completely new workflow for this but this
|
||||
needs additional time.
|
||||
* “Lay Flat” has been removed.
|
||||
The existing implementation was unfortunately not salvageable.
|
||||
We will be looking into an improved implementation for this
|
||||
feature.
|
||||
* "Split Object Into Parts" has been removed.
|
||||
Due to the same reason as Lay Flat.
|
||||
* Support for AMF and DAE file formats has been removed.
|
||||
Both of these will be implemented as plugins in the future.
|
||||
* Support for directly loading a GCode file is not yet available.
|
||||
This will be implemented as a plugin in the future.
|
||||
* Support for PNG, JPG and other image formats has been removed.
|
||||
These can be supported by a plugin with an improved UI.
|
||||
* Support for loading Minecraft levels has been removed.
|
||||
This can be implemented as a plugin.
|
||||
* Windows XP support has been dropped.
|
||||
Microsoft is no longer supporting xp, so they no longer back
|
||||
port certain features that we require.
|
||||
* X-Ray view is missing.
|
||||
Will be implemented as a (you might have guessed it) plugin.
|
||||
* Fixes: Follow Mesh Surface
|
||||
Has been removed from the engine, the same result can be
|
||||
achieved using no infill or top/bottom layers.
|
||||
|
||||
Known Issues
|
||||
------------
|
||||
* Some OBJ files are rendered as black objects due to missing
|
||||
normals.
|
||||
* Disabling plugins does not work correctly yet.
|
||||
* Unicorn occasionally still requires feeding. Do not feed it
|
||||
after midnight.
|
||||
|
|
|
@ -61,7 +61,9 @@ class ProcessSlicedLayersJob(Job):
|
|||
|
||||
def run(self):
|
||||
start_time = time()
|
||||
if Application.getInstance().getController().getActiveView().getPluginId() == "SimulationView":
|
||||
view = Application.getInstance().getController().getActiveView()
|
||||
if view.getPluginId() == "SimulationView":
|
||||
view.resetLayerData()
|
||||
self._progress_message.show()
|
||||
Job.yieldThread()
|
||||
if self._abort_requested:
|
||||
|
@ -226,10 +228,6 @@ class ProcessSlicedLayersJob(Job):
|
|||
if self._progress_message:
|
||||
self._progress_message.setProgress(100)
|
||||
|
||||
view = Application.getInstance().getController().getActiveView()
|
||||
if view.getPluginId() == "SimulationView":
|
||||
view.resetLayerData()
|
||||
|
||||
if self._progress_message:
|
||||
self._progress_message.hide()
|
||||
|
||||
|
|
|
@ -45,14 +45,6 @@ class GcodeStartEndFormatter(Formatter):
|
|||
|
||||
## Job class that builds up the message of scene data to send to CuraEngine.
|
||||
class StartSliceJob(Job):
|
||||
## Meshes that are sent to the engine regardless of being outside of the
|
||||
# build volume.
|
||||
#
|
||||
# If these settings are True for any mesh, the build volume is ignored.
|
||||
# Note that Support Mesh is not in here because it actually generates
|
||||
# g-code in the volume of the mesh.
|
||||
_not_printed_mesh_settings = {"anti_overhang_mesh", "infill_mesh", "cutting_mesh"}
|
||||
|
||||
def __init__(self, slice_message):
|
||||
super().__init__()
|
||||
|
||||
|
@ -141,8 +133,7 @@ class StartSliceJob(Job):
|
|||
temp_list = []
|
||||
for node in DepthFirstIterator(self._scene.getRoot()):
|
||||
if type(node) is SceneNode and node.getMeshData() and node.getMeshData().getVertices() is not None:
|
||||
if not getattr(node, "_outside_buildarea", False)\
|
||||
or (node.callDecoration("getStack") and any(node.callDecoration("getStack").getProperty(setting, "value") for setting in self._not_printed_mesh_settings)):
|
||||
if not getattr(node, "_outside_buildarea", False) or getattr(node, "_non_printing_mesh", False):
|
||||
temp_list.append(node)
|
||||
Job.yieldThread()
|
||||
|
||||
|
@ -205,32 +196,53 @@ class StartSliceJob(Job):
|
|||
def isCancelled(self):
|
||||
return self._is_cancelled
|
||||
|
||||
def _expandGcodeTokens(self, key, value, settings):
|
||||
## Creates a dictionary of tokens to replace in g-code pieces.
|
||||
#
|
||||
# This indicates what should be replaced in the start and end g-codes.
|
||||
# \param stack The stack to get the settings from to replace the tokens
|
||||
# with.
|
||||
# \return A dictionary of replacement tokens to the values they should be
|
||||
# replaced with.
|
||||
def _buildReplacementTokens(self, stack) -> dict:
|
||||
result = {}
|
||||
for key in stack.getAllKeys():
|
||||
result[key] = stack.getProperty(key, "value")
|
||||
Job.yieldThread()
|
||||
|
||||
result["print_bed_temperature"] = result["material_bed_temperature"] #Renamed settings.
|
||||
result["print_temperature"] = result["material_print_temperature"]
|
||||
result["time"] = time.strftime("%H:%M:%S") #Some extra settings.
|
||||
result["date"] = time.strftime("%d-%m-%Y")
|
||||
result["day"] = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"][int(time.strftime("%w"))]
|
||||
|
||||
return result
|
||||
|
||||
## Replace setting tokens in a piece of g-code.
|
||||
# \param value A piece of g-code to replace tokens in.
|
||||
# \param settings A dictionary of tokens to replace and their respective
|
||||
# replacement strings.
|
||||
def _expandGcodeTokens(self, value: str, settings: dict):
|
||||
try:
|
||||
# any setting can be used as a token
|
||||
fmt = GcodeStartEndFormatter()
|
||||
return str(fmt.format(value, **settings)).encode("utf-8")
|
||||
return str(fmt.format(value, **settings))
|
||||
except:
|
||||
Logger.logException("w", "Unable to do token replacement on start/end gcode")
|
||||
return str(value).encode("utf-8")
|
||||
return str(value)
|
||||
|
||||
## Create extruder message from stack
|
||||
def _buildExtruderMessage(self, stack):
|
||||
message = self._slice_message.addRepeatedMessage("extruders")
|
||||
message.id = int(stack.getMetaDataEntry("position"))
|
||||
|
||||
material_instance_container = stack.findContainer({"type": "material"})
|
||||
settings = self._buildReplacementTokens(stack)
|
||||
|
||||
settings = {}
|
||||
for key in stack.getAllKeys():
|
||||
settings[key] = stack.getProperty(key, "value")
|
||||
Job.yieldThread()
|
||||
#Also send the material GUID. This is a setting in fdmprinter, but we have no interface for it.
|
||||
settings["material_guid"] = stack.material.getMetaDataEntry("GUID", "")
|
||||
|
||||
settings["print_bed_temperature"] = settings["material_bed_temperature"] #Renamed settings.
|
||||
settings["print_temperature"] = settings["material_print_temperature"]
|
||||
settings["time"] = time.strftime("%H:%M:%S") #Some extra settings.
|
||||
settings["date"] = time.strftime("%d-%m-%Y")
|
||||
settings["day"] = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"][int(time.strftime("%w"))]
|
||||
#Replace the setting tokens in start and end g-code.
|
||||
settings["machine_extruder_start_code"] = self._expandGcodeTokens(settings["machine_extruder_start_code"], settings)
|
||||
settings["machine_extruder_end_code"] = self._expandGcodeTokens(settings["machine_extruder_end_code"], settings)
|
||||
|
||||
for key, value in settings.items():
|
||||
# Do not send settings that are not settable_per_extruder.
|
||||
|
@ -238,13 +250,7 @@ class StartSliceJob(Job):
|
|||
continue
|
||||
setting = message.getMessage("settings").addRepeatedMessage("settings")
|
||||
setting.name = key
|
||||
if key == "material_guid" and material_instance_container:
|
||||
# Also send the material GUID. This is a setting in fdmprinter, but we have no interface for it.
|
||||
setting.value = str(material_instance_container.getMetaDataEntry("GUID", "")).encode("utf-8")
|
||||
elif key == "machine_extruder_start_code" or key == "machine_extruder_end_code":
|
||||
setting.value = self._expandGcodeTokens(key, value, settings)
|
||||
else:
|
||||
setting.value = str(stack.getProperty(key, "value")).encode("utf-8")
|
||||
setting.value = str(value).encode("utf-8")
|
||||
Job.yieldThread()
|
||||
|
||||
## Sends all global settings to the engine.
|
||||
|
@ -252,11 +258,7 @@ class StartSliceJob(Job):
|
|||
# The settings are taken from the global stack. This does not include any
|
||||
# per-extruder settings or per-object settings.
|
||||
def _buildGlobalSettingsMessage(self, stack):
|
||||
keys = stack.getAllKeys()
|
||||
settings = {}
|
||||
for key in keys:
|
||||
settings[key] = stack.getProperty(key, "value")
|
||||
Job.yieldThread()
|
||||
settings = self._buildReplacementTokens(stack)
|
||||
|
||||
start_gcode = settings["machine_start_gcode"]
|
||||
#Pre-compute material material_bed_temp_prepend and material_print_temp_prepend
|
||||
|
@ -265,20 +267,14 @@ class StartSliceJob(Job):
|
|||
print_temperature_settings = {"material_print_temperature", "material_print_temperature_layer_0", "default_material_print_temperature", "material_initial_print_temperature", "material_final_print_temperature", "material_standby_temperature"}
|
||||
settings["material_print_temp_prepend"] = all(("{" + setting + "}" not in start_gcode for setting in print_temperature_settings))
|
||||
|
||||
settings["print_bed_temperature"] = settings["material_bed_temperature"]
|
||||
settings["print_temperature"] = settings["material_print_temperature"]
|
||||
|
||||
settings["time"] = time.strftime('%H:%M:%S')
|
||||
settings["date"] = time.strftime('%d-%m-%Y')
|
||||
settings["day"] = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'][int(time.strftime('%w'))]
|
||||
#Replace the setting tokens in start and end g-code.
|
||||
settings["machine_start_gcode"] = self._expandGcodeTokens(settings["machine_start_gcode"], settings)
|
||||
settings["machine_end_gcode"] = self._expandGcodeTokens(settings["machine_end_gcode"], settings)
|
||||
|
||||
for key, value in settings.items(): #Add all submessages for each individual setting.
|
||||
setting_message = self._slice_message.getMessage("global_settings").addRepeatedMessage("settings")
|
||||
setting_message.name = key
|
||||
if key == "machine_start_gcode" or key == "machine_end_gcode": #If it's a g-code message, use special formatting.
|
||||
setting_message.value = self._expandGcodeTokens(key, value, settings)
|
||||
else:
|
||||
setting_message.value = str(value).encode("utf-8")
|
||||
setting_message.value = str(value).encode("utf-8")
|
||||
Job.yieldThread()
|
||||
|
||||
## Sends for some settings which extruder they should fallback to if not
|
||||
|
@ -348,3 +344,4 @@ class StartSliceJob(Job):
|
|||
|
||||
relations_set.add(relation.target.key)
|
||||
self._addRelations(relations_set, relation.target.relations)
|
||||
|
||||
|
|
462
plugins/GCodeReader/FlavorParser.py
Normal file
462
plugins/GCodeReader/FlavorParser.py
Normal file
|
@ -0,0 +1,462 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from UM.Application import Application
|
||||
from UM.Backend import Backend
|
||||
from UM.Job import Job
|
||||
from UM.Logger import Logger
|
||||
from UM.Math.AxisAlignedBox import AxisAlignedBox
|
||||
from UM.Math.Vector import Vector
|
||||
from UM.Message import Message
|
||||
from UM.Scene.SceneNode import SceneNode
|
||||
from UM.i18n import i18nCatalog
|
||||
from UM.Preferences import Preferences
|
||||
|
||||
catalog = i18nCatalog("cura")
|
||||
|
||||
from cura import LayerDataBuilder
|
||||
from cura import LayerDataDecorator
|
||||
from cura.LayerPolygon import LayerPolygon
|
||||
from cura.GCodeListDecorator import GCodeListDecorator
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
|
||||
import numpy
|
||||
import math
|
||||
import re
|
||||
from collections import namedtuple
|
||||
|
||||
# This parser is intented for interpret the common firmware codes among all the different flavors
|
||||
class FlavorParser:
|
||||
|
||||
def __init__(self):
|
||||
Application.getInstance().hideMessageSignal.connect(self._onHideMessage)
|
||||
self._cancelled = False
|
||||
self._message = None
|
||||
self._layer_number = 0
|
||||
self._extruder_number = 0
|
||||
self._clearValues()
|
||||
self._scene_node = None
|
||||
# X, Y, Z position, F feedrate and E extruder values are stored
|
||||
self._position = namedtuple('Position', ['x', 'y', 'z', 'f', 'e'])
|
||||
self._is_layers_in_file = False # Does the Gcode have the layers comment?
|
||||
self._extruder_offsets = {} # Offsets for multi extruders. key is index, value is [x-offset, y-offset]
|
||||
self._current_layer_thickness = 0.2 # default
|
||||
|
||||
Preferences.getInstance().addPreference("gcodereader/show_caution", True)
|
||||
|
||||
def _clearValues(self):
|
||||
self._filament_diameter = 2.85
|
||||
self._extruder_number = 0
|
||||
self._extrusion_length_offset = [0]
|
||||
self._layer_type = LayerPolygon.Inset0Type
|
||||
self._layer_number = 0
|
||||
self._previous_z = 0
|
||||
self._layer_data_builder = LayerDataBuilder.LayerDataBuilder()
|
||||
self._center_is_zero = False
|
||||
self._is_absolute_positioning = True # It can be absolute (G90) or relative (G91)
|
||||
self._is_absolute_extrusion = True # It can become absolute (M82, default) or relative (M83)
|
||||
|
||||
@staticmethod
|
||||
def _getValue(line, code):
|
||||
n = line.find(code)
|
||||
if n < 0:
|
||||
return None
|
||||
n += len(code)
|
||||
pattern = re.compile("[;\s]")
|
||||
match = pattern.search(line, n)
|
||||
m = match.start() if match is not None else -1
|
||||
try:
|
||||
if m < 0:
|
||||
return line[n:]
|
||||
return line[n:m]
|
||||
except:
|
||||
return None
|
||||
|
||||
def _getInt(self, line, code):
|
||||
value = self._getValue(line, code)
|
||||
try:
|
||||
return int(value)
|
||||
except:
|
||||
return None
|
||||
|
||||
def _getFloat(self, line, code):
|
||||
value = self._getValue(line, code)
|
||||
try:
|
||||
return float(value)
|
||||
except:
|
||||
return None
|
||||
|
||||
def _onHideMessage(self, message):
|
||||
if message == self._message:
|
||||
self._cancelled = True
|
||||
|
||||
@staticmethod
|
||||
def _getNullBoundingBox():
|
||||
return AxisAlignedBox(minimum=Vector(0, 0, 0), maximum=Vector(10, 10, 10))
|
||||
|
||||
def _createPolygon(self, layer_thickness, path, extruder_offsets):
|
||||
countvalid = 0
|
||||
for point in path:
|
||||
if point[5] > 0:
|
||||
countvalid += 1
|
||||
if countvalid >= 2:
|
||||
# we know what to do now, no need to count further
|
||||
continue
|
||||
if countvalid < 2:
|
||||
return False
|
||||
try:
|
||||
self._layer_data_builder.addLayer(self._layer_number)
|
||||
self._layer_data_builder.setLayerHeight(self._layer_number, path[0][2])
|
||||
self._layer_data_builder.setLayerThickness(self._layer_number, layer_thickness)
|
||||
this_layer = self._layer_data_builder.getLayer(self._layer_number)
|
||||
except ValueError:
|
||||
return False
|
||||
count = len(path)
|
||||
line_types = numpy.empty((count - 1, 1), numpy.int32)
|
||||
line_widths = numpy.empty((count - 1, 1), numpy.float32)
|
||||
line_thicknesses = numpy.empty((count - 1, 1), numpy.float32)
|
||||
line_feedrates = numpy.empty((count - 1, 1), numpy.float32)
|
||||
line_widths[:, 0] = 0.35 # Just a guess
|
||||
line_thicknesses[:, 0] = layer_thickness
|
||||
points = numpy.empty((count, 3), numpy.float32)
|
||||
extrusion_values = numpy.empty((count, 1), numpy.float32)
|
||||
i = 0
|
||||
for point in path:
|
||||
points[i, :] = [point[0] + extruder_offsets[0], point[2], -point[1] - extruder_offsets[1]]
|
||||
extrusion_values[i] = point[4]
|
||||
if i > 0:
|
||||
line_feedrates[i - 1] = point[3]
|
||||
line_types[i - 1] = point[5]
|
||||
if point[5] in [LayerPolygon.MoveCombingType, LayerPolygon.MoveRetractionType]:
|
||||
line_widths[i - 1] = 0.1
|
||||
line_thicknesses[i - 1] = 0.0 # Travels are set as zero thickness lines
|
||||
else:
|
||||
line_widths[i - 1] = self._calculateLineWidth(points[i], points[i-1], extrusion_values[i], extrusion_values[i-1], layer_thickness)
|
||||
i += 1
|
||||
|
||||
this_poly = LayerPolygon(self._extruder_number, line_types, points, line_widths, line_thicknesses, line_feedrates)
|
||||
this_poly.buildCache()
|
||||
|
||||
this_layer.polygons.append(this_poly)
|
||||
return True
|
||||
|
||||
def _createEmptyLayer(self, layer_number):
|
||||
self._layer_data_builder.addLayer(layer_number)
|
||||
self._layer_data_builder.setLayerHeight(layer_number, 0)
|
||||
self._layer_data_builder.setLayerThickness(layer_number, 0)
|
||||
|
||||
def _calculateLineWidth(self, current_point, previous_point, current_extrusion, previous_extrusion, layer_thickness):
|
||||
# Area of the filament
|
||||
Af = (self._filament_diameter / 2) ** 2 * numpy.pi
|
||||
# Length of the extruded filament
|
||||
de = current_extrusion - previous_extrusion
|
||||
# Volumne of the extruded filament
|
||||
dVe = de * Af
|
||||
# Length of the printed line
|
||||
dX = numpy.sqrt((current_point[0] - previous_point[0])**2 + (current_point[2] - previous_point[2])**2)
|
||||
# When the extruder recovers from a retraction, we get zero distance
|
||||
if dX == 0:
|
||||
return 0.1
|
||||
# Area of the printed line. This area is a rectangle
|
||||
Ae = dVe / dX
|
||||
# This area is a rectangle with area equal to layer_thickness * layer_width
|
||||
line_width = Ae / layer_thickness
|
||||
|
||||
# A threshold is set to avoid weird paths in the GCode
|
||||
if line_width > 1.2:
|
||||
return 0.35
|
||||
return line_width
|
||||
|
||||
def _gCode0(self, position, params, path):
|
||||
x, y, z, f, e = position
|
||||
|
||||
if self._is_absolute_positioning:
|
||||
x = params.x if params.x is not None else x
|
||||
y = params.y if params.y is not None else y
|
||||
z = params.z if params.z is not None else z
|
||||
else:
|
||||
x += params.x if params.x is not None else 0
|
||||
y += params.y if params.y is not None else 0
|
||||
z += params.z if params.z is not None else 0
|
||||
|
||||
f = params.f if params.f is not None else f
|
||||
|
||||
if params.e is not None:
|
||||
new_extrusion_value = params.e if self._is_absolute_extrusion else e[self._extruder_number] + params.e
|
||||
if new_extrusion_value > e[self._extruder_number]:
|
||||
path.append([x, y, z, f, new_extrusion_value + self._extrusion_length_offset[self._extruder_number], self._layer_type]) # extrusion
|
||||
else:
|
||||
path.append([x, y, z, f, new_extrusion_value + self._extrusion_length_offset[self._extruder_number], LayerPolygon.MoveRetractionType]) # retraction
|
||||
e[self._extruder_number] = new_extrusion_value
|
||||
|
||||
# Only when extruding we can determine the latest known "layer height" which is the difference in height between extrusions
|
||||
# Also, 1.5 is a heuristic for any priming or whatsoever, we skip those.
|
||||
if z > self._previous_z and (z - self._previous_z < 1.5):
|
||||
self._current_layer_thickness = z - self._previous_z # allow a tiny overlap
|
||||
self._previous_z = z
|
||||
else:
|
||||
path.append([x, y, z, f, e[self._extruder_number] + self._extrusion_length_offset[self._extruder_number], LayerPolygon.MoveCombingType])
|
||||
return self._position(x, y, z, f, e)
|
||||
|
||||
|
||||
# G0 and G1 should be handled exactly the same.
|
||||
_gCode1 = _gCode0
|
||||
|
||||
## Home the head.
|
||||
def _gCode28(self, position, params, path):
|
||||
return self._position(
|
||||
params.x if params.x is not None else position.x,
|
||||
params.y if params.y is not None else position.y,
|
||||
params.z if params.z is not None else position.z,
|
||||
position.f,
|
||||
position.e)
|
||||
|
||||
## Set the absolute positioning
|
||||
def _gCode90(self, position, params, path):
|
||||
self._is_absolute_positioning = True
|
||||
self._is_absolute_extrusion = True
|
||||
return position
|
||||
|
||||
## Set the relative positioning
|
||||
def _gCode91(self, position, params, path):
|
||||
self._is_absolute_positioning = False
|
||||
self._is_absolute_extrusion = False
|
||||
return position
|
||||
|
||||
## Reset the current position to the values specified.
|
||||
# For example: G92 X10 will set the X to 10 without any physical motion.
|
||||
def _gCode92(self, position, params, path):
|
||||
if params.e is not None:
|
||||
# Sometimes a G92 E0 is introduced in the middle of the GCode so we need to keep those offsets for calculate the line_width
|
||||
self._extrusion_length_offset[self._extruder_number] += position.e[self._extruder_number] - params.e
|
||||
position.e[self._extruder_number] = params.e
|
||||
return self._position(
|
||||
params.x if params.x is not None else position.x,
|
||||
params.y if params.y is not None else position.y,
|
||||
params.z if params.z is not None else position.z,
|
||||
params.f if params.f is not None else position.f,
|
||||
position.e)
|
||||
|
||||
def processGCode(self, G, line, position, path):
|
||||
func = getattr(self, "_gCode%s" % G, None)
|
||||
line = line.split(";", 1)[0] # Remove comments (if any)
|
||||
if func is not None:
|
||||
s = line.upper().split(" ")
|
||||
x, y, z, f, e = None, None, None, None, None
|
||||
for item in s[1:]:
|
||||
if len(item) <= 1:
|
||||
continue
|
||||
if item.startswith(";"):
|
||||
continue
|
||||
if item[0] == "X":
|
||||
x = float(item[1:])
|
||||
if item[0] == "Y":
|
||||
y = float(item[1:])
|
||||
if item[0] == "Z":
|
||||
z = float(item[1:])
|
||||
if item[0] == "F":
|
||||
f = float(item[1:]) / 60
|
||||
if item[0] == "E":
|
||||
e = float(item[1:])
|
||||
if self._is_absolute_positioning and ((x is not None and x < 0) or (y is not None and y < 0)):
|
||||
self._center_is_zero = True
|
||||
params = self._position(x, y, z, f, e)
|
||||
return func(position, params, path)
|
||||
return position
|
||||
|
||||
def processTCode(self, T, line, position, path):
|
||||
self._extruder_number = T
|
||||
if self._extruder_number + 1 > len(position.e):
|
||||
self._extrusion_length_offset.extend([0] * (self._extruder_number - len(position.e) + 1))
|
||||
position.e.extend([0] * (self._extruder_number - len(position.e) + 1))
|
||||
return position
|
||||
|
||||
def processMCode(self, M, line, position, path):
|
||||
pass
|
||||
|
||||
_type_keyword = ";TYPE:"
|
||||
_layer_keyword = ";LAYER:"
|
||||
|
||||
## For showing correct x, y offsets for each extruder
|
||||
def _extruderOffsets(self):
|
||||
result = {}
|
||||
for extruder in ExtruderManager.getInstance().getExtruderStacks():
|
||||
result[int(extruder.getMetaData().get("position", "0"))] = [
|
||||
extruder.getProperty("machine_nozzle_offset_x", "value"),
|
||||
extruder.getProperty("machine_nozzle_offset_y", "value")]
|
||||
return result
|
||||
|
||||
def processGCodeFile(self, file_name):
|
||||
Logger.log("d", "Preparing to load %s" % file_name)
|
||||
self._cancelled = False
|
||||
# We obtain the filament diameter from the selected printer to calculate line widths
|
||||
self._filament_diameter = Application.getInstance().getGlobalContainerStack().getProperty("material_diameter", "value")
|
||||
|
||||
scene_node = SceneNode()
|
||||
# Override getBoundingBox function of the sceneNode, as this node should return a bounding box, but there is no
|
||||
# real data to calculate it from.
|
||||
scene_node.getBoundingBox = self._getNullBoundingBox
|
||||
|
||||
gcode_list = []
|
||||
self._is_layers_in_file = False
|
||||
|
||||
Logger.log("d", "Opening file %s" % file_name)
|
||||
|
||||
self._extruder_offsets = self._extruderOffsets() # dict with index the extruder number. can be empty
|
||||
|
||||
with open(file_name, "r") as file:
|
||||
file_lines = 0
|
||||
current_line = 0
|
||||
for line in file:
|
||||
file_lines += 1
|
||||
gcode_list.append(line)
|
||||
if not self._is_layers_in_file and line[:len(self._layer_keyword)] == self._layer_keyword:
|
||||
self._is_layers_in_file = True
|
||||
file.seek(0)
|
||||
|
||||
file_step = max(math.floor(file_lines / 100), 1)
|
||||
|
||||
self._clearValues()
|
||||
|
||||
self._message = Message(catalog.i18nc("@info:status", "Parsing G-code"),
|
||||
lifetime=0,
|
||||
title = catalog.i18nc("@info:title", "G-code Details"))
|
||||
|
||||
self._message.setProgress(0)
|
||||
self._message.show()
|
||||
|
||||
Logger.log("d", "Parsing %s..." % file_name)
|
||||
|
||||
current_position = self._position(0, 0, 0, 0, [0])
|
||||
current_path = []
|
||||
min_layer_number = 0
|
||||
negative_layers = 0
|
||||
previous_layer = 0
|
||||
|
||||
for line in file:
|
||||
if self._cancelled:
|
||||
Logger.log("d", "Parsing %s cancelled" % file_name)
|
||||
return None
|
||||
current_line += 1
|
||||
|
||||
if current_line % file_step == 0:
|
||||
self._message.setProgress(math.floor(current_line / file_lines * 100))
|
||||
Job.yieldThread()
|
||||
if len(line) == 0:
|
||||
continue
|
||||
|
||||
if line.find(self._type_keyword) == 0:
|
||||
type = line[len(self._type_keyword):].strip()
|
||||
if type == "WALL-INNER":
|
||||
self._layer_type = LayerPolygon.InsetXType
|
||||
elif type == "WALL-OUTER":
|
||||
self._layer_type = LayerPolygon.Inset0Type
|
||||
elif type == "SKIN":
|
||||
self._layer_type = LayerPolygon.SkinType
|
||||
elif type == "SKIRT":
|
||||
self._layer_type = LayerPolygon.SkirtType
|
||||
elif type == "SUPPORT":
|
||||
self._layer_type = LayerPolygon.SupportType
|
||||
elif type == "FILL":
|
||||
self._layer_type = LayerPolygon.InfillType
|
||||
else:
|
||||
Logger.log("w", "Encountered a unknown type (%s) while parsing g-code.", type)
|
||||
|
||||
# When the layer change is reached, the polygon is computed so we have just one layer per layer per extruder
|
||||
if self._is_layers_in_file and line[:len(self._layer_keyword)] == self._layer_keyword:
|
||||
try:
|
||||
layer_number = int(line[len(self._layer_keyword):])
|
||||
self._createPolygon(self._current_layer_thickness, current_path, self._extruder_offsets.get(self._extruder_number, [0, 0]))
|
||||
current_path.clear()
|
||||
|
||||
# When using a raft, the raft layers are stored as layers < 0, it mimics the same behavior
|
||||
# as in ProcessSlicedLayersJob
|
||||
if layer_number < min_layer_number:
|
||||
min_layer_number = layer_number
|
||||
if layer_number < 0:
|
||||
layer_number += abs(min_layer_number)
|
||||
negative_layers += 1
|
||||
else:
|
||||
layer_number += negative_layers
|
||||
|
||||
# In case there is a gap in the layer count, empty layers are created
|
||||
for empty_layer in range(previous_layer + 1, layer_number):
|
||||
self._createEmptyLayer(empty_layer)
|
||||
|
||||
self._layer_number = layer_number
|
||||
previous_layer = layer_number
|
||||
except:
|
||||
pass
|
||||
|
||||
# This line is a comment. Ignore it (except for the layer_keyword)
|
||||
if line.startswith(";"):
|
||||
continue
|
||||
|
||||
G = self._getInt(line, "G")
|
||||
if G is not None:
|
||||
# When find a movement, the new posistion is calculated and added to the current_path, but
|
||||
# don't need to create a polygon until the end of the layer
|
||||
current_position = self.processGCode(G, line, current_position, current_path)
|
||||
continue
|
||||
|
||||
# When changing the extruder, the polygon with the stored paths is computed
|
||||
if line.startswith("T"):
|
||||
T = self._getInt(line, "T")
|
||||
if T is not None:
|
||||
self._createPolygon(self._current_layer_thickness, current_path, self._extruder_offsets.get(self._extruder_number, [0, 0]))
|
||||
current_path.clear()
|
||||
|
||||
current_position = self.processTCode(T, line, current_position, current_path)
|
||||
|
||||
if line.startswith("M"):
|
||||
M = self._getInt(line, "M")
|
||||
self.processMCode(M, line, current_position, current_path)
|
||||
|
||||
# "Flush" leftovers. Last layer paths are still stored
|
||||
if len(current_path) > 1:
|
||||
if self._createPolygon(self._current_layer_thickness, current_path, self._extruder_offsets.get(self._extruder_number, [0, 0])):
|
||||
self._layer_number += 1
|
||||
current_path.clear()
|
||||
|
||||
material_color_map = numpy.zeros((10, 4), dtype = numpy.float32)
|
||||
material_color_map[0, :] = [0.0, 0.7, 0.9, 1.0]
|
||||
material_color_map[1, :] = [0.7, 0.9, 0.0, 1.0]
|
||||
layer_mesh = self._layer_data_builder.build(material_color_map)
|
||||
decorator = LayerDataDecorator.LayerDataDecorator()
|
||||
decorator.setLayerData(layer_mesh)
|
||||
scene_node.addDecorator(decorator)
|
||||
|
||||
gcode_list_decorator = GCodeListDecorator()
|
||||
gcode_list_decorator.setGCodeList(gcode_list)
|
||||
scene_node.addDecorator(gcode_list_decorator)
|
||||
|
||||
Application.getInstance().getController().getScene().gcode_list = gcode_list
|
||||
|
||||
Logger.log("d", "Finished parsing %s" % file_name)
|
||||
self._message.hide()
|
||||
|
||||
if self._layer_number == 0:
|
||||
Logger.log("w", "File %s doesn't contain any valid layers" % file_name)
|
||||
|
||||
settings = Application.getInstance().getGlobalContainerStack()
|
||||
machine_width = settings.getProperty("machine_width", "value")
|
||||
machine_depth = settings.getProperty("machine_depth", "value")
|
||||
|
||||
if not self._center_is_zero:
|
||||
scene_node.setPosition(Vector(-machine_width / 2, 0, machine_depth / 2))
|
||||
|
||||
Logger.log("d", "Loaded %s" % file_name)
|
||||
|
||||
if Preferences.getInstance().getValue("gcodereader/show_caution"):
|
||||
caution_message = Message(catalog.i18nc(
|
||||
"@info:generic",
|
||||
"Make sure the g-code is suitable for your printer and printer configuration before sending the file to it. The g-code representation may not be accurate."),
|
||||
lifetime=0,
|
||||
title = catalog.i18nc("@info:title", "G-code Details"))
|
||||
caution_message.show()
|
||||
|
||||
# The "save/print" button's state is bound to the backend state.
|
||||
backend = Application.getInstance().getBackend()
|
||||
backend.backendStateChange.emit(Backend.BackendState.Disabled)
|
||||
|
||||
return scene_node
|
|
@ -1,471 +1,44 @@
|
|||
# Copyright (c) 2017 Aleph Objects, Inc.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from UM.Application import Application
|
||||
from UM.Backend import Backend
|
||||
from UM.Job import Job
|
||||
from UM.Logger import Logger
|
||||
from UM.Math.AxisAlignedBox import AxisAlignedBox
|
||||
from UM.Math.Vector import Vector
|
||||
from UM.FileHandler.FileReader import FileReader
|
||||
from UM.Mesh.MeshReader import MeshReader
|
||||
from UM.Message import Message
|
||||
from UM.Scene.SceneNode import SceneNode
|
||||
from UM.i18n import i18nCatalog
|
||||
from UM.Preferences import Preferences
|
||||
|
||||
catalog = i18nCatalog("cura")
|
||||
|
||||
|
||||
from cura import LayerDataBuilder
|
||||
from cura import LayerDataDecorator
|
||||
from cura.LayerPolygon import LayerPolygon
|
||||
from cura.GCodeListDecorator import GCodeListDecorator
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
|
||||
import numpy
|
||||
import math
|
||||
import re
|
||||
from collections import namedtuple
|
||||
|
||||
from . import MarlinFlavorParser, RepRapFlavorParser
|
||||
|
||||
# Class for loading and parsing G-code files
|
||||
class GCodeReader(MeshReader):
|
||||
|
||||
_flavor_default = "Marlin"
|
||||
_flavor_keyword = ";FLAVOR:"
|
||||
_flavor_readers_dict = {"RepRap" : RepRapFlavorParser.RepRapFlavorParser(),
|
||||
"Marlin" : MarlinFlavorParser.MarlinFlavorParser()}
|
||||
|
||||
def __init__(self):
|
||||
super(GCodeReader, self).__init__()
|
||||
self._supported_extensions = [".gcode", ".g"]
|
||||
Application.getInstance().hideMessageSignal.connect(self._onHideMessage)
|
||||
self._cancelled = False
|
||||
self._message = None
|
||||
self._layer_number = 0
|
||||
self._extruder_number = 0
|
||||
self._clearValues()
|
||||
self._scene_node = None
|
||||
# X, Y, Z position, F feedrate and E extruder values are stored
|
||||
self._position = namedtuple('Position', ['x', 'y', 'z', 'f', 'e'])
|
||||
self._is_layers_in_file = False # Does the Gcode have the layers comment?
|
||||
self._extruder_offsets = {} # Offsets for multi extruders. key is index, value is [x-offset, y-offset]
|
||||
self._current_layer_thickness = 0.2 # default
|
||||
self._flavor_reader = None
|
||||
|
||||
Preferences.getInstance().addPreference("gcodereader/show_caution", True)
|
||||
|
||||
def _clearValues(self):
|
||||
self._filament_diameter = 2.85
|
||||
self._extruder_number = 0
|
||||
self._extrusion_length_offset = [0]
|
||||
self._layer_type = LayerPolygon.Inset0Type
|
||||
self._layer_number = 0
|
||||
self._previous_z = 0
|
||||
self._layer_data_builder = LayerDataBuilder.LayerDataBuilder()
|
||||
self._center_is_zero = False
|
||||
self._is_absolute_positioning = True # It can be absolute (G90) or relative (G91)
|
||||
self._is_absolute_extrusion = True # It can become absolute (M82, default) or relative (M83)
|
||||
# PreRead is used to get the correct flavor. If not, Marlin is set by default
|
||||
def preRead(self, file_name, *args, **kwargs):
|
||||
with open(file_name, "r") as file:
|
||||
for line in file:
|
||||
if line[:len(self._flavor_keyword)] == self._flavor_keyword:
|
||||
try:
|
||||
self._flavor_reader = self._flavor_readers_dict[line[len(self._flavor_keyword):].rstrip()]
|
||||
return FileReader.PreReadResult.accepted
|
||||
except:
|
||||
# If there is no entry in the dictionary for this flavor, just skip and select the by-default flavor
|
||||
break
|
||||
|
||||
@staticmethod
|
||||
def _getValue(line, code):
|
||||
n = line.find(code)
|
||||
if n < 0:
|
||||
return None
|
||||
n += len(code)
|
||||
pattern = re.compile("[;\s]")
|
||||
match = pattern.search(line, n)
|
||||
m = match.start() if match is not None else -1
|
||||
try:
|
||||
if m < 0:
|
||||
return line[n:]
|
||||
return line[n:m]
|
||||
except:
|
||||
return None
|
||||
|
||||
def _getInt(self, line, code):
|
||||
value = self._getValue(line, code)
|
||||
try:
|
||||
return int(value)
|
||||
except:
|
||||
return None
|
||||
|
||||
def _getFloat(self, line, code):
|
||||
value = self._getValue(line, code)
|
||||
try:
|
||||
return float(value)
|
||||
except:
|
||||
return None
|
||||
|
||||
def _onHideMessage(self, message):
|
||||
if message == self._message:
|
||||
self._cancelled = True
|
||||
|
||||
@staticmethod
|
||||
def _getNullBoundingBox():
|
||||
return AxisAlignedBox(minimum=Vector(0, 0, 0), maximum=Vector(10, 10, 10))
|
||||
|
||||
def _createPolygon(self, layer_thickness, path, extruder_offsets):
|
||||
countvalid = 0
|
||||
for point in path:
|
||||
if point[5] > 0:
|
||||
countvalid += 1
|
||||
if countvalid >= 2:
|
||||
# we know what to do now, no need to count further
|
||||
continue
|
||||
if countvalid < 2:
|
||||
return False
|
||||
try:
|
||||
self._layer_data_builder.addLayer(self._layer_number)
|
||||
self._layer_data_builder.setLayerHeight(self._layer_number, path[0][2])
|
||||
self._layer_data_builder.setLayerThickness(self._layer_number, layer_thickness)
|
||||
this_layer = self._layer_data_builder.getLayer(self._layer_number)
|
||||
except ValueError:
|
||||
return False
|
||||
count = len(path)
|
||||
line_types = numpy.empty((count - 1, 1), numpy.int32)
|
||||
line_widths = numpy.empty((count - 1, 1), numpy.float32)
|
||||
line_thicknesses = numpy.empty((count - 1, 1), numpy.float32)
|
||||
line_feedrates = numpy.empty((count - 1, 1), numpy.float32)
|
||||
line_widths[:, 0] = 0.35 # Just a guess
|
||||
line_thicknesses[:, 0] = layer_thickness
|
||||
points = numpy.empty((count, 3), numpy.float32)
|
||||
extrusion_values = numpy.empty((count, 1), numpy.float32)
|
||||
i = 0
|
||||
for point in path:
|
||||
points[i, :] = [point[0] + extruder_offsets[0], point[2], -point[1] - extruder_offsets[1]]
|
||||
extrusion_values[i] = point[4]
|
||||
if i > 0:
|
||||
line_feedrates[i - 1] = point[3]
|
||||
line_types[i - 1] = point[5]
|
||||
if point[5] in [LayerPolygon.MoveCombingType, LayerPolygon.MoveRetractionType]:
|
||||
line_widths[i - 1] = 0.1
|
||||
line_thicknesses[i - 1] = 0.0 # Travels are set as zero thickness lines
|
||||
else:
|
||||
line_widths[i - 1] = self._calculateLineWidth(points[i], points[i-1], extrusion_values[i], extrusion_values[i-1], layer_thickness)
|
||||
i += 1
|
||||
|
||||
this_poly = LayerPolygon(self._extruder_number, line_types, points, line_widths, line_thicknesses, line_feedrates)
|
||||
this_poly.buildCache()
|
||||
|
||||
this_layer.polygons.append(this_poly)
|
||||
return True
|
||||
|
||||
def _createEmptyLayer(self, layer_number):
|
||||
self._layer_data_builder.addLayer(layer_number)
|
||||
self._layer_data_builder.setLayerHeight(layer_number, 0)
|
||||
self._layer_data_builder.setLayerThickness(layer_number, 0)
|
||||
|
||||
def _calculateLineWidth(self, current_point, previous_point, current_extrusion, previous_extrusion, layer_thickness):
|
||||
# Area of the filament
|
||||
Af = (self._filament_diameter / 2) ** 2 * numpy.pi
|
||||
# Length of the extruded filament
|
||||
de = current_extrusion - previous_extrusion
|
||||
# Volumne of the extruded filament
|
||||
dVe = de * Af
|
||||
# Length of the printed line
|
||||
dX = numpy.sqrt((current_point[0] - previous_point[0])**2 + (current_point[2] - previous_point[2])**2)
|
||||
# When the extruder recovers from a retraction, we get zero distance
|
||||
if dX == 0:
|
||||
return 0.1
|
||||
# Area of the printed line. This area is a rectangle
|
||||
Ae = dVe / dX
|
||||
# This area is a rectangle with area equal to layer_thickness * layer_width
|
||||
line_width = Ae / layer_thickness
|
||||
|
||||
# A threshold is set to avoid weird paths in the GCode
|
||||
if line_width > 1.2:
|
||||
return 0.35
|
||||
return line_width
|
||||
|
||||
def _gCode0(self, position, params, path):
|
||||
x, y, z, f, e = position
|
||||
|
||||
if self._is_absolute_positioning:
|
||||
x = params.x if params.x is not None else x
|
||||
y = params.y if params.y is not None else y
|
||||
z = params.z if params.z is not None else z
|
||||
else:
|
||||
x += params.x if params.x is not None else 0
|
||||
y += params.y if params.y is not None else 0
|
||||
z += params.z if params.z is not None else 0
|
||||
|
||||
f = params.f if params.f is not None else f
|
||||
|
||||
if params.e is not None:
|
||||
new_extrusion_value = params.e if self._is_absolute_extrusion else e[self._extruder_number] + params.e
|
||||
if new_extrusion_value > e[self._extruder_number]:
|
||||
path.append([x, y, z, f, new_extrusion_value + self._extrusion_length_offset[self._extruder_number], self._layer_type]) # extrusion
|
||||
else:
|
||||
path.append([x, y, z, f, new_extrusion_value + self._extrusion_length_offset[self._extruder_number], LayerPolygon.MoveRetractionType]) # retraction
|
||||
e[self._extruder_number] = new_extrusion_value
|
||||
|
||||
# Only when extruding we can determine the latest known "layer height" which is the difference in height between extrusions
|
||||
# Also, 1.5 is a heuristic for any priming or whatsoever, we skip those.
|
||||
if z > self._previous_z and (z - self._previous_z < 1.5):
|
||||
self._current_layer_thickness = z - self._previous_z # allow a tiny overlap
|
||||
self._previous_z = z
|
||||
else:
|
||||
path.append([x, y, z, f, e[self._extruder_number] + self._extrusion_length_offset[self._extruder_number], LayerPolygon.MoveCombingType])
|
||||
return self._position(x, y, z, f, e)
|
||||
|
||||
|
||||
# G0 and G1 should be handled exactly the same.
|
||||
_gCode1 = _gCode0
|
||||
|
||||
## Home the head.
|
||||
def _gCode28(self, position, params, path):
|
||||
return self._position(
|
||||
params.x if params.x is not None else position.x,
|
||||
params.y if params.y is not None else position.y,
|
||||
0,
|
||||
position.f,
|
||||
position.e)
|
||||
|
||||
## Set the absolute positioning
|
||||
def _gCode90(self, position, params, path):
|
||||
self._is_absolute_positioning = True
|
||||
return position
|
||||
|
||||
## Set the relative positioning
|
||||
def _gCode91(self, position, params, path):
|
||||
self._is_absolute_positioning = False
|
||||
return position
|
||||
|
||||
## Reset the current position to the values specified.
|
||||
# For example: G92 X10 will set the X to 10 without any physical motion.
|
||||
def _gCode92(self, position, params, path):
|
||||
if params.e is not None:
|
||||
# Sometimes a G92 E0 is introduced in the middle of the GCode so we need to keep those offsets for calculate the line_width
|
||||
self._extrusion_length_offset[self._extruder_number] += position.e[self._extruder_number] - params.e
|
||||
position.e[self._extruder_number] = params.e
|
||||
return self._position(
|
||||
params.x if params.x is not None else position.x,
|
||||
params.y if params.y is not None else position.y,
|
||||
params.z if params.z is not None else position.z,
|
||||
params.f if params.f is not None else position.f,
|
||||
position.e)
|
||||
|
||||
def _processGCode(self, G, line, position, path):
|
||||
func = getattr(self, "_gCode%s" % G, None)
|
||||
line = line.split(";", 1)[0] # Remove comments (if any)
|
||||
if func is not None:
|
||||
s = line.upper().split(" ")
|
||||
x, y, z, f, e = None, None, None, None, None
|
||||
for item in s[1:]:
|
||||
if len(item) <= 1:
|
||||
continue
|
||||
if item.startswith(";"):
|
||||
continue
|
||||
if item[0] == "X":
|
||||
x = float(item[1:])
|
||||
if item[0] == "Y":
|
||||
y = float(item[1:])
|
||||
if item[0] == "Z":
|
||||
z = float(item[1:])
|
||||
if item[0] == "F":
|
||||
f = float(item[1:]) / 60
|
||||
if item[0] == "E":
|
||||
e = float(item[1:])
|
||||
if self._is_absolute_positioning and ((x is not None and x < 0) or (y is not None and y < 0)):
|
||||
self._center_is_zero = True
|
||||
params = self._position(x, y, z, f, e)
|
||||
return func(position, params, path)
|
||||
return position
|
||||
|
||||
def _processTCode(self, T, line, position, path):
|
||||
self._extruder_number = T
|
||||
if self._extruder_number + 1 > len(position.e):
|
||||
self._extrusion_length_offset.extend([0] * (self._extruder_number - len(position.e) + 1))
|
||||
position.e.extend([0] * (self._extruder_number - len(position.e) + 1))
|
||||
return position
|
||||
|
||||
def _processMCode(self, M):
|
||||
if M == 82:
|
||||
# Set absolute extrusion mode
|
||||
self._is_absolute_extrusion = True
|
||||
elif M == 83:
|
||||
# Set relative extrusion mode
|
||||
self._is_absolute_extrusion = False
|
||||
|
||||
_type_keyword = ";TYPE:"
|
||||
_layer_keyword = ";LAYER:"
|
||||
|
||||
## For showing correct x, y offsets for each extruder
|
||||
def _extruderOffsets(self):
|
||||
result = {}
|
||||
for extruder in ExtruderManager.getInstance().getExtruderStacks():
|
||||
result[int(extruder.getMetaData().get("position", "0"))] = [
|
||||
extruder.getProperty("machine_nozzle_offset_x", "value"),
|
||||
extruder.getProperty("machine_nozzle_offset_y", "value")]
|
||||
return result
|
||||
# If no flavor is found in the GCode, then we use the by-default
|
||||
self._flavor_reader = self._flavor_readers_dict[self._flavor_default]
|
||||
return FileReader.PreReadResult.accepted
|
||||
|
||||
def read(self, file_name):
|
||||
Logger.log("d", "Preparing to load %s" % file_name)
|
||||
self._cancelled = False
|
||||
# We obtain the filament diameter from the selected printer to calculate line widths
|
||||
self._filament_diameter = Application.getInstance().getGlobalContainerStack().getProperty("material_diameter", "value")
|
||||
|
||||
scene_node = SceneNode()
|
||||
# Override getBoundingBox function of the sceneNode, as this node should return a bounding box, but there is no
|
||||
# real data to calculate it from.
|
||||
scene_node.getBoundingBox = self._getNullBoundingBox
|
||||
|
||||
gcode_list = []
|
||||
self._is_layers_in_file = False
|
||||
|
||||
Logger.log("d", "Opening file %s" % file_name)
|
||||
|
||||
self._extruder_offsets = self._extruderOffsets() # dict with index the extruder number. can be empty
|
||||
|
||||
last_z = 0
|
||||
with open(file_name, "r") as file:
|
||||
file_lines = 0
|
||||
current_line = 0
|
||||
for line in file:
|
||||
file_lines += 1
|
||||
gcode_list.append(line)
|
||||
if not self._is_layers_in_file and line[:len(self._layer_keyword)] == self._layer_keyword:
|
||||
self._is_layers_in_file = True
|
||||
file.seek(0)
|
||||
|
||||
file_step = max(math.floor(file_lines / 100), 1)
|
||||
|
||||
self._clearValues()
|
||||
|
||||
self._message = Message(catalog.i18nc("@info:status", "Parsing G-code"),
|
||||
lifetime=0,
|
||||
title = catalog.i18nc("@info:title", "G-code Details"))
|
||||
|
||||
self._message.setProgress(0)
|
||||
self._message.show()
|
||||
|
||||
Logger.log("d", "Parsing %s..." % file_name)
|
||||
|
||||
current_position = self._position(0, 0, 0, 0, [0])
|
||||
current_path = []
|
||||
min_layer_number = 0
|
||||
negative_layers = 0
|
||||
previous_layer = 0
|
||||
|
||||
for line in file:
|
||||
if self._cancelled:
|
||||
Logger.log("d", "Parsing %s cancelled" % file_name)
|
||||
return None
|
||||
current_line += 1
|
||||
last_z = current_position.z
|
||||
|
||||
if current_line % file_step == 0:
|
||||
self._message.setProgress(math.floor(current_line / file_lines * 100))
|
||||
Job.yieldThread()
|
||||
if len(line) == 0:
|
||||
continue
|
||||
|
||||
if line.find(self._type_keyword) == 0:
|
||||
type = line[len(self._type_keyword):].strip()
|
||||
if type == "WALL-INNER":
|
||||
self._layer_type = LayerPolygon.InsetXType
|
||||
elif type == "WALL-OUTER":
|
||||
self._layer_type = LayerPolygon.Inset0Type
|
||||
elif type == "SKIN":
|
||||
self._layer_type = LayerPolygon.SkinType
|
||||
elif type == "SKIRT":
|
||||
self._layer_type = LayerPolygon.SkirtType
|
||||
elif type == "SUPPORT":
|
||||
self._layer_type = LayerPolygon.SupportType
|
||||
elif type == "FILL":
|
||||
self._layer_type = LayerPolygon.InfillType
|
||||
else:
|
||||
Logger.log("w", "Encountered a unknown type (%s) while parsing g-code.", type)
|
||||
|
||||
# When the layer change is reached, the polygon is computed so we have just one layer per layer per extruder
|
||||
if self._is_layers_in_file and line[:len(self._layer_keyword)] == self._layer_keyword:
|
||||
try:
|
||||
layer_number = int(line[len(self._layer_keyword):])
|
||||
self._createPolygon(self._current_layer_thickness, current_path, self._extruder_offsets.get(self._extruder_number, [0, 0]))
|
||||
current_path.clear()
|
||||
|
||||
# When using a raft, the raft layers are stored as layers < 0, it mimics the same behavior
|
||||
# as in ProcessSlicedLayersJob
|
||||
if layer_number < min_layer_number:
|
||||
min_layer_number = layer_number
|
||||
if layer_number < 0:
|
||||
layer_number += abs(min_layer_number)
|
||||
negative_layers += 1
|
||||
else:
|
||||
layer_number += negative_layers
|
||||
|
||||
# In case there is a gap in the layer count, empty layers are created
|
||||
for empty_layer in range(previous_layer + 1, layer_number):
|
||||
self._createEmptyLayer(empty_layer)
|
||||
|
||||
self._layer_number = layer_number
|
||||
previous_layer = layer_number
|
||||
except:
|
||||
pass
|
||||
|
||||
# This line is a comment. Ignore it (except for the layer_keyword)
|
||||
if line.startswith(";"):
|
||||
continue
|
||||
|
||||
G = self._getInt(line, "G")
|
||||
if G is not None:
|
||||
# When find a movement, the new posistion is calculated and added to the current_path, but
|
||||
# don't need to create a polygon until the end of the layer
|
||||
current_position = self._processGCode(G, line, current_position, current_path)
|
||||
continue
|
||||
|
||||
# When changing the extruder, the polygon with the stored paths is computed
|
||||
if line.startswith("T"):
|
||||
T = self._getInt(line, "T")
|
||||
if T is not None:
|
||||
self._createPolygon(self._current_layer_thickness, current_path, self._extruder_offsets.get(self._extruder_number, [0, 0]))
|
||||
current_path.clear()
|
||||
|
||||
current_position = self._processTCode(T, line, current_position, current_path)
|
||||
|
||||
if line.startswith("M"):
|
||||
M = self._getInt(line, "M")
|
||||
self._processMCode(M)
|
||||
|
||||
# "Flush" leftovers. Last layer paths are still stored
|
||||
if len(current_path) > 1:
|
||||
if self._createPolygon(self._current_layer_thickness, current_path, self._extruder_offsets.get(self._extruder_number, [0, 0])):
|
||||
self._layer_number += 1
|
||||
current_path.clear()
|
||||
|
||||
material_color_map = numpy.zeros((10, 4), dtype = numpy.float32)
|
||||
material_color_map[0, :] = [0.0, 0.7, 0.9, 1.0]
|
||||
material_color_map[1, :] = [0.7, 0.9, 0.0, 1.0]
|
||||
layer_mesh = self._layer_data_builder.build(material_color_map)
|
||||
decorator = LayerDataDecorator.LayerDataDecorator()
|
||||
decorator.setLayerData(layer_mesh)
|
||||
scene_node.addDecorator(decorator)
|
||||
|
||||
gcode_list_decorator = GCodeListDecorator()
|
||||
gcode_list_decorator.setGCodeList(gcode_list)
|
||||
scene_node.addDecorator(gcode_list_decorator)
|
||||
|
||||
Application.getInstance().getController().getScene().gcode_list = gcode_list
|
||||
|
||||
Logger.log("d", "Finished parsing %s" % file_name)
|
||||
self._message.hide()
|
||||
|
||||
if self._layer_number == 0:
|
||||
Logger.log("w", "File %s doesn't contain any valid layers" % file_name)
|
||||
|
||||
settings = Application.getInstance().getGlobalContainerStack()
|
||||
machine_width = settings.getProperty("machine_width", "value")
|
||||
machine_depth = settings.getProperty("machine_depth", "value")
|
||||
|
||||
if not self._center_is_zero:
|
||||
scene_node.setPosition(Vector(-machine_width / 2, 0, machine_depth / 2))
|
||||
|
||||
Logger.log("d", "Loaded %s" % file_name)
|
||||
|
||||
if Preferences.getInstance().getValue("gcodereader/show_caution"):
|
||||
caution_message = Message(catalog.i18nc(
|
||||
"@info:generic",
|
||||
"Make sure the g-code is suitable for your printer and printer configuration before sending the file to it. The g-code representation may not be accurate."),
|
||||
lifetime=0,
|
||||
title = catalog.i18nc("@info:title", "G-code Details"))
|
||||
caution_message.show()
|
||||
|
||||
# The "save/print" button's state is bound to the backend state.
|
||||
backend = Application.getInstance().getBackend()
|
||||
backend.backendStateChange.emit(Backend.BackendState.Disabled)
|
||||
|
||||
return scene_node
|
||||
return self._flavor_reader.processGCodeFile(file_name)
|
||||
|
|
10
plugins/GCodeReader/MarlinFlavorParser.py
Normal file
10
plugins/GCodeReader/MarlinFlavorParser.py
Normal file
|
@ -0,0 +1,10 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from . import FlavorParser
|
||||
|
||||
# This parser is intented for interpret the Marlin/Sprinter Firmware flavor
|
||||
class MarlinFlavorParser(FlavorParser.FlavorParser):
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
32
plugins/GCodeReader/RepRapFlavorParser.py
Normal file
32
plugins/GCodeReader/RepRapFlavorParser.py
Normal file
|
@ -0,0 +1,32 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from . import FlavorParser
|
||||
|
||||
# This parser is intented for interpret the RepRap Firmware flavor
|
||||
class RepRapFlavorParser(FlavorParser.FlavorParser):
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
def processMCode(self, M, line, position, path):
|
||||
if M == 82:
|
||||
# Set absolute extrusion mode
|
||||
self._is_absolute_extrusion = True
|
||||
elif M == 83:
|
||||
# Set relative extrusion mode
|
||||
self._is_absolute_extrusion = False
|
||||
|
||||
## Set the absolute positioning
|
||||
# RepRapFlavor code G90 sets position of X, Y, Z, and E to absolute
|
||||
def _gCode90(self, position, params, path):
|
||||
self._is_absolute_positioning = True
|
||||
self._is_absolute_extrusion = True
|
||||
return position
|
||||
|
||||
## Set the relative positioning
|
||||
# RepRapFlavor code G91 sets position of X, Y, Z to relative
|
||||
# For relative E, M83 is used
|
||||
def _gCode91(self, position, params, path):
|
||||
self._is_absolute_positioning = False
|
||||
return position
|
|
@ -43,7 +43,7 @@ UM.Dialog
|
|||
TextField {
|
||||
id: peak_height
|
||||
objectName: "Peak_Height"
|
||||
validator: DoubleValidator {notation: DoubleValidator.StandardNotation; bottom: -500; top: 500;}
|
||||
validator: RegExpValidator {regExp: /^-?\d{1,3}([\,|\.]\d*)?$/}
|
||||
width: 180 * screenScaleFactor
|
||||
onTextChanged: { manager.onPeakHeightChanged(text) }
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ UM.Dialog
|
|||
TextField {
|
||||
id: base_height
|
||||
objectName: "Base_Height"
|
||||
validator: DoubleValidator {notation: DoubleValidator.StandardNotation; bottom: 0; top: 500;}
|
||||
validator: RegExpValidator {regExp: /^\d{1,3}([\,|\.]\d*)?$/}
|
||||
width: 180 * screenScaleFactor
|
||||
onTextChanged: { manager.onBaseHeightChanged(text) }
|
||||
}
|
||||
|
@ -90,7 +90,7 @@ UM.Dialog
|
|||
id: width
|
||||
objectName: "Width"
|
||||
focus: true
|
||||
validator: DoubleValidator {notation: DoubleValidator.StandardNotation; bottom: 1; top: 500;}
|
||||
validator: RegExpValidator {regExp: /^[1-9]\d{0,2}([\,|\.]\d*)?$/}
|
||||
width: 180 * screenScaleFactor
|
||||
onTextChanged: { manager.onWidthChanged(text) }
|
||||
}
|
||||
|
@ -113,7 +113,7 @@ UM.Dialog
|
|||
id: depth
|
||||
objectName: "Depth"
|
||||
focus: true
|
||||
validator: DoubleValidator {notation: DoubleValidator.StandardNotation; bottom: 1; top: 500;}
|
||||
validator: RegExpValidator {regExp: /^[1-9]\d{0,2}([\,|\.]\d*)?$/}
|
||||
width: 180 * screenScaleFactor
|
||||
onTextChanged: { manager.onDepthChanged(text) }
|
||||
}
|
||||
|
|
|
@ -4,8 +4,7 @@
|
|||
import os
|
||||
import threading
|
||||
|
||||
from PyQt5.QtCore import Qt, QUrl, pyqtSignal, QObject
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from PyQt5.QtCore import Qt, pyqtSignal, QObject
|
||||
from UM.FlameProfiler import pyqtSlot
|
||||
from UM.Application import Application
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
|
@ -81,14 +80,9 @@ class ImageReaderUI(QObject):
|
|||
def _createConfigUI(self):
|
||||
if self._ui_view is None:
|
||||
Logger.log("d", "Creating ImageReader config UI")
|
||||
path = QUrl.fromLocalFile(os.path.join(PluginRegistry.getInstance().getPluginPath("ImageReader"), "ConfigUI.qml"))
|
||||
component = QQmlComponent(Application.getInstance()._engine, path)
|
||||
self._ui_context = QQmlContext(Application.getInstance()._engine.rootContext())
|
||||
self._ui_context.setContextProperty("manager", self)
|
||||
self._ui_view = component.create(self._ui_context)
|
||||
|
||||
path = os.path.join(PluginRegistry.getInstance().getPluginPath("ImageReader"), "ConfigUI.qml")
|
||||
self._ui_view = Application.getInstance().createQmlComponent(path, {"manager": self})
|
||||
self._ui_view.setFlags(self._ui_view.flags() & ~Qt.WindowCloseButtonHint & ~Qt.WindowMinimizeButtonHint & ~Qt.WindowMaximizeButtonHint);
|
||||
|
||||
self._disable_size_callbacks = False
|
||||
|
||||
@pyqtSlot()
|
||||
|
@ -107,7 +101,7 @@ class ImageReaderUI(QObject):
|
|||
def onWidthChanged(self, value):
|
||||
if self._ui_view and not self._disable_size_callbacks:
|
||||
if len(value) > 0:
|
||||
self._width = float(value)
|
||||
self._width = float(value.replace(",", "."))
|
||||
else:
|
||||
self._width = 0
|
||||
|
||||
|
@ -120,7 +114,7 @@ class ImageReaderUI(QObject):
|
|||
def onDepthChanged(self, value):
|
||||
if self._ui_view and not self._disable_size_callbacks:
|
||||
if len(value) > 0:
|
||||
self._depth = float(value)
|
||||
self._depth = float(value.replace(",", "."))
|
||||
else:
|
||||
self._depth = 0
|
||||
|
||||
|
@ -132,14 +126,14 @@ class ImageReaderUI(QObject):
|
|||
@pyqtSlot(str)
|
||||
def onBaseHeightChanged(self, value):
|
||||
if (len(value) > 0):
|
||||
self.base_height = float(value)
|
||||
self.base_height = float(value.replace(",", "."))
|
||||
else:
|
||||
self.base_height = 0
|
||||
|
||||
@pyqtSlot(str)
|
||||
def onPeakHeightChanged(self, value):
|
||||
if (len(value) > 0):
|
||||
self.peak_height = float(value)
|
||||
self.peak_height = float(value.replace(",", "."))
|
||||
else:
|
||||
self.peak_height = 0
|
||||
|
||||
|
@ -149,7 +143,4 @@ class ImageReaderUI(QObject):
|
|||
|
||||
@pyqtSlot(int)
|
||||
def onImageColorInvertChanged(self, value):
|
||||
if (value == 1):
|
||||
self.image_color_invert = True
|
||||
else:
|
||||
self.image_color_invert = False
|
||||
self.image_color_invert = (value == 1)
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import configparser # For reading the legacy profile INI files.
|
||||
import io
|
||||
import json # For reading the Dictionary of Doom.
|
||||
import math # For mathematical operations included in the Dictionary of Doom.
|
||||
import os.path # For concatenating the path to the plugin and the relative path to the Dictionary of Doom.
|
||||
|
@ -80,8 +81,7 @@ class LegacyProfileReader(ProfileReader):
|
|||
|
||||
parser = configparser.ConfigParser(interpolation = None)
|
||||
try:
|
||||
with open(file_name) as f:
|
||||
parser.readfp(f) # Parse the INI file.
|
||||
parser.read([file_name]) # Parse the INI file.
|
||||
except Exception as e:
|
||||
Logger.log("e", "Unable to open legacy profile %s: %s", file_name, str(e))
|
||||
return None
|
||||
|
@ -138,7 +138,25 @@ class LegacyProfileReader(ProfileReader):
|
|||
|
||||
if len(profile.getAllKeys()) == 0:
|
||||
Logger.log("i", "A legacy profile was imported but everything evaluates to the defaults, creating an empty profile.")
|
||||
profile.setDirty(True)
|
||||
profile.addMetaDataEntry("type", "quality_changes")
|
||||
|
||||
|
||||
# We need to downgrade the container to version 1 (in Cura 2.1) so the upgrade system can correctly upgrade
|
||||
# it to the latest version.
|
||||
profile.addMetaDataEntry("type", "profile")
|
||||
# don't know what quality_type it is based on, so use "normal" by default
|
||||
profile.addMetaDataEntry("quality_type", "normal")
|
||||
profile.setDirty(True)
|
||||
|
||||
parser = configparser.ConfigParser(interpolation=None)
|
||||
data = profile.serialize()
|
||||
parser.read_string(data)
|
||||
parser["general"]["version"] = "1"
|
||||
if parser.has_section("values"):
|
||||
parser["settings"] = parser["values"]
|
||||
del parser["values"]
|
||||
stream = io.StringIO()
|
||||
parser.write(stream)
|
||||
data = stream.getvalue()
|
||||
profile.deserialize(data)
|
||||
|
||||
return profile
|
|
@ -188,29 +188,32 @@ class MachineSettingsAction(MachineAction):
|
|||
# In other words: only continue for the UM2 (extended), but not for the UM2+
|
||||
return
|
||||
|
||||
stacks = ExtruderManager.getInstance().getExtruderStacks()
|
||||
has_materials = self._global_container_stack.getProperty("machine_gcode_flavor", "value") != "UltiGCode"
|
||||
|
||||
material_container = self._global_container_stack.material
|
||||
|
||||
if has_materials:
|
||||
if "has_materials" in self._global_container_stack.getMetaData():
|
||||
self._global_container_stack.setMetaDataEntry("has_materials", True)
|
||||
else:
|
||||
self._global_container_stack.addMetaDataEntry("has_materials", True)
|
||||
|
||||
# Set the material container to a sane default
|
||||
if material_container == self._empty_container:
|
||||
search_criteria = { "type": "material", "definition": "fdmprinter", "id": self._global_container_stack.getMetaDataEntry("preferred_material")}
|
||||
materials = self._container_registry.findInstanceContainers(**search_criteria)
|
||||
if materials:
|
||||
self._global_container_stack.material = materials[0]
|
||||
# Set the material container for each extruder to a sane default
|
||||
for stack in stacks:
|
||||
material_container = stack.material
|
||||
if material_container == self._empty_container:
|
||||
machine_approximate_diameter = str(round(self._global_container_stack.getProperty("material_diameter", "value")))
|
||||
search_criteria = { "type": "material", "definition": "fdmprinter", "id": self._global_container_stack.getMetaDataEntry("preferred_material"), "approximate_diameter": machine_approximate_diameter}
|
||||
materials = self._container_registry.findInstanceContainers(**search_criteria)
|
||||
if materials:
|
||||
stack.material = materials[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_materials" in self._global_container_stack.getMetaData():
|
||||
self._global_container_stack.removeMetaDataEntry("has_materials")
|
||||
|
||||
self._global_container_stack.material = ContainerRegistry.getInstance().getEmptyInstanceContainer()
|
||||
for stack in stacks:
|
||||
stack.material = ContainerRegistry.getInstance().getEmptyInstanceContainer()
|
||||
|
||||
Application.getInstance().globalContainerStackChanged.emit()
|
||||
|
||||
|
|
|
@ -283,6 +283,7 @@ Cura.MachineAction
|
|||
Loader
|
||||
{
|
||||
id: materialDiameterField
|
||||
visible: Cura.MachineManager.hasMaterials
|
||||
sourceComponent: numericTextFieldWithUnit
|
||||
property string settingKey: "material_diameter"
|
||||
property string unit: catalog.i18nc("@label", "mm")
|
||||
|
@ -355,7 +356,7 @@ Cura.MachineAction
|
|||
if(currentIndex > 0)
|
||||
{
|
||||
contentItem.forceActiveFocus();
|
||||
ExtruderManager.setActiveExtruderIndex(currentIndex - 1);
|
||||
Cura.ExtruderManager.setActiveExtruderIndex(currentIndex - 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -585,11 +586,11 @@ Cura.MachineAction
|
|||
propertyProvider.setPropertyValue("value", text);
|
||||
if(_forceUpdateOnChange)
|
||||
{
|
||||
var extruderIndex = ExtruderManager.activeExtruderIndex;
|
||||
var extruderIndex = Cura.ExtruderManager.activeExtruderIndex;
|
||||
manager.forceUpdate();
|
||||
if(ExtruderManager.activeExtruderIndex != extruderIndex)
|
||||
if(Cura.ExtruderManager.activeExtruderIndex != extruderIndex)
|
||||
{
|
||||
ExtruderManager.setActiveExtruderIndex(extruderIndex)
|
||||
Cura.ExtruderManager.setActiveExtruderIndex(extruderIndex)
|
||||
}
|
||||
}
|
||||
if(_afterOnEditingFinished)
|
||||
|
|
39
plugins/MonitorStage/MonitorMainView.qml
Normal file
39
plugins/MonitorStage/MonitorMainView.qml
Normal file
|
@ -0,0 +1,39 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.1
|
||||
|
||||
import UM 1.3 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
Item
|
||||
{
|
||||
// We show a nice overlay on the 3D viewer when the current output device has no monitor view
|
||||
Rectangle
|
||||
{
|
||||
id: viewportOverlay
|
||||
|
||||
color: UM.Theme.getColor("viewport_overlay")
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
visible: monitorViewComponent.sourceComponent == null ? 1 : 0
|
||||
|
||||
MouseArea
|
||||
{
|
||||
anchors.fill: parent
|
||||
acceptedButtons: Qt.AllButtons
|
||||
onWheel: wheel.accepted = true
|
||||
}
|
||||
}
|
||||
|
||||
Loader
|
||||
{
|
||||
id: monitorViewComponent
|
||||
|
||||
property real maximumWidth: parent.width
|
||||
property real maximumHeight: parent.height
|
||||
|
||||
sourceComponent: Cura.MachineManager.printerOutputDevices.length > 0 ? Cura.MachineManager.printerOutputDevices[0].monitorItem: null
|
||||
visible: sourceComponent != null
|
||||
}
|
||||
}
|
73
plugins/MonitorStage/MonitorStage.py
Normal file
73
plugins/MonitorStage/MonitorStage.py
Normal file
|
@ -0,0 +1,73 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
import os.path
|
||||
from UM.Application import Application
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Resources import Resources
|
||||
from cura.Stages.CuraStage import CuraStage
|
||||
|
||||
|
||||
## Stage for monitoring a 3D printing while it's printing.
|
||||
class MonitorStage(CuraStage):
|
||||
|
||||
def __init__(self, parent = None):
|
||||
super().__init__(parent)
|
||||
|
||||
# Wait until QML engine is created, otherwise creating the new QML components will fail
|
||||
Application.getInstance().engineCreatedSignal.connect(self._setComponents)
|
||||
|
||||
# Update the status icon when the output device is changed
|
||||
Application.getInstance().getOutputDeviceManager().activeDeviceChanged.connect(self._setIconSource)
|
||||
|
||||
def _setComponents(self):
|
||||
self._setMainOverlay()
|
||||
self._setSidebar()
|
||||
self._setIconSource()
|
||||
|
||||
def _setMainOverlay(self):
|
||||
main_component_path = os.path.join(PluginRegistry.getInstance().getPluginPath("MonitorStage"), "MonitorMainView.qml")
|
||||
self.addDisplayComponent("main", main_component_path)
|
||||
|
||||
def _setSidebar(self):
|
||||
# TODO: currently the sidebar component for prepare and monitor stages is the same, this will change with the printer output device refactor!
|
||||
sidebar_component_path = os.path.join(Resources.getPath(Application.getInstance().ResourceTypes.QmlFiles), "Sidebar.qml")
|
||||
self.addDisplayComponent("sidebar", sidebar_component_path)
|
||||
|
||||
def _setIconSource(self):
|
||||
if Application.getInstance().getTheme() is not None:
|
||||
icon_name = self._getActiveOutputDeviceStatusIcon()
|
||||
self.setIconSource(Application.getInstance().getTheme().getIcon(icon_name))
|
||||
|
||||
## Find the correct status icon depending on the active output device state
|
||||
def _getActiveOutputDeviceStatusIcon(self):
|
||||
output_device = Application.getInstance().getOutputDeviceManager().getActiveDevice()
|
||||
|
||||
if not output_device:
|
||||
return "tab_status_unknown"
|
||||
|
||||
if hasattr(output_device, "acceptsCommands") and not output_device.acceptsCommands:
|
||||
return "tab_status_unknown"
|
||||
|
||||
if not hasattr(output_device, "printerState") or not hasattr(output_device, "jobState"):
|
||||
return "tab_status_unknown"
|
||||
|
||||
# TODO: refactor to use enum instead of hardcoded strings?
|
||||
if output_device.printerState == "maintenance":
|
||||
return "tab_status_busy"
|
||||
|
||||
if output_device.jobState in ["printing", "pre_print", "pausing", "resuming"]:
|
||||
return "tab_status_busy"
|
||||
|
||||
if output_device.jobState == "wait_cleanup":
|
||||
return "tab_status_finished"
|
||||
|
||||
if output_device.jobState in ["ready", ""]:
|
||||
return "tab_status_connected"
|
||||
|
||||
if output_device.jobState == "paused":
|
||||
return "tab_status_paused"
|
||||
|
||||
if output_device.jobState == "error":
|
||||
return "tab_status_stopped"
|
||||
|
||||
return "tab_status_unknown"
|
20
plugins/MonitorStage/__init__.py
Normal file
20
plugins/MonitorStage/__init__.py
Normal file
|
@ -0,0 +1,20 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from . import MonitorStage
|
||||
|
||||
from UM.i18n import i18nCatalog
|
||||
i18n_catalog = i18nCatalog("cura")
|
||||
|
||||
def getMetaData():
|
||||
return {
|
||||
"stage": {
|
||||
"name": i18n_catalog.i18nc("@item:inmenu", "Monitor"),
|
||||
"weight": 1
|
||||
}
|
||||
}
|
||||
|
||||
def register(app):
|
||||
return {
|
||||
"stage": MonitorStage.MonitorStage()
|
||||
}
|
8
plugins/MonitorStage/plugin.json
Normal file
8
plugins/MonitorStage/plugin.json
Normal file
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"name": "Monitor Stage",
|
||||
"author": "Ultimaker B.V.",
|
||||
"version": "1.0.0",
|
||||
"description": "Provides a monitor stage in Cura.",
|
||||
"api": 4,
|
||||
"i18n-catalog": "cura"
|
||||
}
|
|
@ -26,17 +26,92 @@ Item {
|
|||
|
||||
spacing: UM.Theme.getSize("default_margin").height
|
||||
|
||||
Row
|
||||
{
|
||||
spacing: UM.Theme.getSize("default_margin").width
|
||||
|
||||
Label
|
||||
{
|
||||
text: catalog.i18nc("@label","Mesh Type")
|
||||
font: UM.Theme.getFont("default")
|
||||
color: UM.Theme.getColor("text")
|
||||
height: UM.Theme.getSize("setting").height
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
}
|
||||
|
||||
ComboBox
|
||||
{
|
||||
id: meshTypeSelection
|
||||
style: UM.Theme.styles.combobox
|
||||
onActivated: {
|
||||
UM.ActiveTool.setProperty("MeshType", model.get(index).type)
|
||||
}
|
||||
model: ListModel
|
||||
{
|
||||
id: meshTypeModel
|
||||
Component.onCompleted:
|
||||
{
|
||||
meshTypeModel.append({
|
||||
type: "",
|
||||
text: catalog.i18nc("@label", "Normal model")
|
||||
});
|
||||
meshTypeModel.append({
|
||||
type: "support_mesh",
|
||||
text: catalog.i18nc("@label", "Print as support")
|
||||
});
|
||||
meshTypeModel.append({
|
||||
type: "anti_overhang_mesh",
|
||||
text: catalog.i18nc("@label", "Don't support overlap with other models")
|
||||
});
|
||||
meshTypeModel.append({
|
||||
type: "cutting_mesh",
|
||||
text: catalog.i18nc("@label", "Modify settings for overlap with other models")
|
||||
});
|
||||
meshTypeModel.append({
|
||||
type: "infill_mesh",
|
||||
text: catalog.i18nc("@label", "Modify settings for infill of other models")
|
||||
});
|
||||
|
||||
meshTypeSelection.updateCurrentIndex();
|
||||
}
|
||||
}
|
||||
|
||||
function updateCurrentIndex()
|
||||
{
|
||||
var mesh_type = UM.ActiveTool.properties.getValue("MeshType");
|
||||
for(var index=0; index < meshTypeSelection.model.count; index++)
|
||||
{
|
||||
if(meshTypeSelection.model.get(index).type == mesh_type)
|
||||
{
|
||||
meshTypeSelection.currentIndex = index;
|
||||
return;
|
||||
}
|
||||
}
|
||||
meshTypeSelection.currentIndex = 0;
|
||||
}
|
||||
}
|
||||
|
||||
Connections
|
||||
{
|
||||
target: UM.Selection
|
||||
onSelectionChanged: meshTypeSelection.updateCurrentIndex()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Column
|
||||
{
|
||||
// This is to ensure that the panel is first increasing in size up to 200 and then shows a scrollbar.
|
||||
// It kinda looks ugly otherwise (big panel, no content on it)
|
||||
id: currentSettings
|
||||
property int maximumHeight: 200 * screenScaleFactor
|
||||
height: Math.min(contents.count * (UM.Theme.getSize("section").height + UM.Theme.getSize("default_lining").height), maximumHeight)
|
||||
visible: ["support_mesh", "anti_overhang_mesh"].indexOf(meshTypeSelection.model.get(meshTypeSelection.currentIndex).type) == -1
|
||||
|
||||
ScrollView
|
||||
{
|
||||
height: parent.height
|
||||
width: UM.Theme.getSize("setting").width + UM.Theme.getSize("setting").height
|
||||
width: UM.Theme.getSize("setting").width
|
||||
style: UM.Theme.styles.scrollview
|
||||
|
||||
ListView
|
||||
|
@ -49,6 +124,7 @@ Item {
|
|||
id: addedSettingsModel;
|
||||
containerId: Cura.MachineManager.activeDefinitionId
|
||||
expanded: [ "*" ]
|
||||
exclude: [ "support_mesh", "anti_overhang_mesh", "cutting_mesh", "infill_mesh" ]
|
||||
|
||||
visibilityHandler: Cura.PerObjectSettingVisibilityHandler
|
||||
{
|
||||
|
@ -58,6 +134,7 @@ Item {
|
|||
|
||||
delegate: Row
|
||||
{
|
||||
spacing: - UM.Theme.getSize("default_margin").width
|
||||
Loader
|
||||
{
|
||||
id: settingLoader
|
||||
|
@ -112,7 +189,7 @@ Item {
|
|||
|
||||
Button
|
||||
{
|
||||
width: (UM.Theme.getSize("setting").height / 2) | 0
|
||||
width: Math.floor(UM.Theme.getSize("setting").height / 2)
|
||||
height: UM.Theme.getSize("setting").height
|
||||
|
||||
onClicked: addedSettingsModel.setVisible(model.key, false)
|
||||
|
@ -125,7 +202,7 @@ Item {
|
|||
{
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
width: parent.width
|
||||
height: parent.height / 2
|
||||
height: width
|
||||
sourceSize.width: width
|
||||
sourceSize.height: width
|
||||
color: control.hovered ? UM.Theme.getColor("setting_control_button_hover") : UM.Theme.getColor("setting_control_button")
|
||||
|
@ -201,9 +278,9 @@ Item {
|
|||
|
||||
Button
|
||||
{
|
||||
id: customise_settings_button;
|
||||
height: UM.Theme.getSize("setting").height;
|
||||
visible: parseInt(UM.Preferences.getValue("cura/active_mode")) == 1
|
||||
id: customiseSettingsButton;
|
||||
height: UM.Theme.getSize("setting_control").height;
|
||||
visible: currentSettings.visible
|
||||
|
||||
text: catalog.i18nc("@action:button", "Select settings");
|
||||
|
||||
|
@ -223,21 +300,12 @@ Item {
|
|||
{
|
||||
text: control.text;
|
||||
color: UM.Theme.getColor("setting_control_text");
|
||||
font: UM.Theme.getFont("default")
|
||||
anchors.centerIn: parent
|
||||
}
|
||||
}
|
||||
|
||||
onClicked: settingPickDialog.visible = true;
|
||||
|
||||
Connections
|
||||
{
|
||||
target: UM.Preferences;
|
||||
|
||||
onPreferenceChanged:
|
||||
{
|
||||
customise_settings_button.visible = parseInt(UM.Preferences.getValue("cura/active_mode"))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -325,7 +393,7 @@ Item {
|
|||
}
|
||||
visibilityHandler: UM.SettingPreferenceVisibilityHandler {}
|
||||
expanded: [ "*" ]
|
||||
exclude: [ "machine_settings", "command_line_settings" ]
|
||||
exclude: [ "machine_settings", "command_line_settings", "support_mesh", "anti_overhang_mesh", "cutting_mesh", "infill_mesh" ]
|
||||
}
|
||||
delegate:Loader
|
||||
{
|
||||
|
|
|
@ -8,6 +8,7 @@ from UM.Application import Application
|
|||
from UM.Preferences import Preferences
|
||||
from cura.Settings.SettingOverrideDecorator import SettingOverrideDecorator
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
from UM.Settings.SettingInstance import SettingInstance
|
||||
from UM.Event import Event
|
||||
|
||||
|
||||
|
@ -18,7 +19,7 @@ class PerObjectSettingsTool(Tool):
|
|||
super().__init__()
|
||||
self._model = None
|
||||
|
||||
self.setExposedProperties("SelectedObjectId", "ContainerID", "SelectedActiveExtruder")
|
||||
self.setExposedProperties("SelectedObjectId", "ContainerID", "SelectedActiveExtruder", "MeshType")
|
||||
|
||||
self._advanced_mode = False
|
||||
self._multi_extrusion = False
|
||||
|
@ -70,6 +71,39 @@ class PerObjectSettingsTool(Tool):
|
|||
selected_object.addDecorator(SettingOverrideDecorator())
|
||||
selected_object.callDecoration("setActiveExtruder", extruder_stack_id)
|
||||
|
||||
def setMeshType(self, mesh_type):
|
||||
selected_object = Selection.getSelectedObject(0)
|
||||
stack = selected_object.callDecoration("getStack") #Don't try to get the active extruder since it may be None anyway.
|
||||
if not stack:
|
||||
selected_object.addDecorator(SettingOverrideDecorator())
|
||||
stack = selected_object.callDecoration("getStack")
|
||||
|
||||
settings = stack.getTop()
|
||||
for property_key in ["infill_mesh", "cutting_mesh", "support_mesh", "anti_overhang_mesh"]:
|
||||
if property_key != mesh_type:
|
||||
if settings.getInstance(property_key):
|
||||
settings.removeInstance(property_key)
|
||||
else:
|
||||
if not (settings.getInstance(property_key) and settings.getProperty(property_key, "value")):
|
||||
definition = stack.getSettingDefinition(property_key)
|
||||
new_instance = SettingInstance(definition, settings)
|
||||
new_instance.setProperty("value", True)
|
||||
new_instance.resetState() # Ensure that the state is not seen as a user state.
|
||||
settings.addInstance(new_instance)
|
||||
|
||||
def getMeshType(self):
|
||||
selected_object = Selection.getSelectedObject(0)
|
||||
stack = selected_object.callDecoration("getStack") #Don't try to get the active extruder since it may be None anyway.
|
||||
if not stack:
|
||||
return ""
|
||||
|
||||
settings = stack.getTop()
|
||||
for property_key in ["infill_mesh", "cutting_mesh", "support_mesh", "anti_overhang_mesh"]:
|
||||
if settings.getInstance(property_key) and settings.getProperty(property_key, "value"):
|
||||
return property_key
|
||||
|
||||
return ""
|
||||
|
||||
def _onPreferenceChanged(self, preference):
|
||||
if preference == "cura/active_mode":
|
||||
self._advanced_mode = Preferences.getInstance().getValue(preference) == 1
|
||||
|
|
|
@ -11,7 +11,6 @@ from UM.Message import Message
|
|||
|
||||
from PyQt5.QtNetwork import QNetworkAccessManager, QNetworkRequest, QNetworkReply
|
||||
from PyQt5.QtCore import QUrl, QObject, Qt, pyqtProperty, pyqtSignal, pyqtSlot
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
|
||||
import json
|
||||
import os
|
||||
|
@ -39,8 +38,6 @@ class PluginBrowser(QObject, Extension):
|
|||
self._plugins_metadata = []
|
||||
self._plugins_model = None
|
||||
|
||||
self._qml_component = None
|
||||
self._qml_context = None
|
||||
self._dialog = None
|
||||
self._download_progress = 0
|
||||
|
||||
|
@ -111,17 +108,8 @@ class PluginBrowser(QObject, Extension):
|
|||
|
||||
def _createDialog(self, qml_name):
|
||||
Logger.log("d", "Creating dialog [%s]", qml_name)
|
||||
|
||||
path = QUrl.fromLocalFile(os.path.join(PluginRegistry.getInstance().getPluginPath(self.getPluginId()), qml_name))
|
||||
self._qml_component = QQmlComponent(Application.getInstance()._engine, path)
|
||||
|
||||
# We need access to engine (although technically we can't)
|
||||
self._qml_context = QQmlContext(Application.getInstance()._engine.rootContext())
|
||||
self._qml_context.setContextProperty("manager", self)
|
||||
dialog = self._qml_component.create(self._qml_context)
|
||||
if dialog is None:
|
||||
Logger.log("e", "QQmlComponent status %s", self._qml_component.status())
|
||||
Logger.log("e", "QQmlComponent errorString %s", self._qml_component.errorString())
|
||||
path = os.path.join(PluginRegistry.getInstance().getPluginPath(self.getPluginId()), qml_name)
|
||||
dialog = Application.getInstance().createQmlComponent(path, {"manager": self})
|
||||
return dialog
|
||||
|
||||
def setIsDownloading(self, is_downloading):
|
||||
|
|
18
plugins/PrepareStage/PrepareStage.py
Normal file
18
plugins/PrepareStage/PrepareStage.py
Normal file
|
@ -0,0 +1,18 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
import os.path
|
||||
from UM.Application import Application
|
||||
from UM.Resources import Resources
|
||||
from cura.Stages.CuraStage import CuraStage
|
||||
|
||||
|
||||
## Stage for preparing model (slicing).
|
||||
class PrepareStage(CuraStage):
|
||||
|
||||
def __init__(self, parent = None):
|
||||
super().__init__(parent)
|
||||
Application.getInstance().engineCreatedSignal.connect(self._engineCreated)
|
||||
|
||||
def _engineCreated(self):
|
||||
sidebar_component_path = os.path.join(Resources.getPath(Application.getInstance().ResourceTypes.QmlFiles), "Sidebar.qml")
|
||||
self.addDisplayComponent("sidebar", sidebar_component_path)
|
20
plugins/PrepareStage/__init__.py
Normal file
20
plugins/PrepareStage/__init__.py
Normal file
|
@ -0,0 +1,20 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from . import PrepareStage
|
||||
|
||||
from UM.i18n import i18nCatalog
|
||||
i18n_catalog = i18nCatalog("cura")
|
||||
|
||||
def getMetaData():
|
||||
return {
|
||||
"stage": {
|
||||
"name": i18n_catalog.i18nc("@item:inmenu", "Prepare"),
|
||||
"weight": 0
|
||||
}
|
||||
}
|
||||
|
||||
def register(app):
|
||||
return {
|
||||
"stage": PrepareStage.PrepareStage()
|
||||
}
|
8
plugins/PrepareStage/plugin.json
Normal file
8
plugins/PrepareStage/plugin.json
Normal file
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"name": "Prepare Stage",
|
||||
"author": "Ultimaker B.V.",
|
||||
"version": "1.0.0",
|
||||
"description": "Provides a prepare stage in Cura.",
|
||||
"api": 4,
|
||||
"i18n-catalog": "cura"
|
||||
}
|
|
@ -154,6 +154,7 @@ class SimulationView(View):
|
|||
def _onSceneChanged(self, node):
|
||||
self.setActivity(False)
|
||||
self.calculateMaxLayers()
|
||||
self.calculateMaxPathsOnLayer(self._current_layer_num)
|
||||
|
||||
def isBusy(self):
|
||||
return self._busy
|
||||
|
|
|
@ -39,7 +39,7 @@ class SliceInfo(Extension):
|
|||
Preferences.getInstance().addPreference("info/send_slice_info", True)
|
||||
Preferences.getInstance().addPreference("info/asked_send_slice_info", False)
|
||||
|
||||
if not Preferences.getInstance().getValue("info/asked_send_slice_info"):
|
||||
if not Preferences.getInstance().getValue("info/asked_send_slice_info") and Preferences.getInstance().getValue("info/send_slice_info"):
|
||||
self.send_slice_info_message = Message(catalog.i18nc("@info", "Cura collects anonymised slicing statistics. You can disable this in the preferences."),
|
||||
lifetime = 0,
|
||||
dismissable = False,
|
||||
|
|
|
@ -27,25 +27,33 @@ class SolidView(View):
|
|||
|
||||
self._enabled_shader = None
|
||||
self._disabled_shader = None
|
||||
self._non_printing_shader = None
|
||||
|
||||
self._extruders_model = ExtrudersModel()
|
||||
self._theme = None
|
||||
|
||||
def beginRendering(self):
|
||||
scene = self.getController().getScene()
|
||||
renderer = self.getRenderer()
|
||||
|
||||
if not self._theme:
|
||||
self._theme = Application.getInstance().getTheme()
|
||||
|
||||
if not self._enabled_shader:
|
||||
self._enabled_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "overhang.shader"))
|
||||
theme = Application.getInstance().getTheme()
|
||||
self._enabled_shader.setUniformValue("u_overhangColor", Color(*theme.getColor("model_overhang").getRgb()))
|
||||
self._enabled_shader.setUniformValue("u_overhangColor", Color(*self._theme.getColor("model_overhang").getRgb()))
|
||||
|
||||
if not self._disabled_shader:
|
||||
self._disabled_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "striped.shader"))
|
||||
theme = Application.getInstance().getTheme()
|
||||
self._disabled_shader.setUniformValue("u_diffuseColor1", Color(*theme.getColor("model_unslicable").getRgb()))
|
||||
self._disabled_shader.setUniformValue("u_diffuseColor2", Color(*theme.getColor("model_unslicable_alt").getRgb()))
|
||||
self._disabled_shader.setUniformValue("u_diffuseColor1", Color(*self._theme.getColor("model_unslicable").getRgb()))
|
||||
self._disabled_shader.setUniformValue("u_diffuseColor2", Color(*self._theme.getColor("model_unslicable_alt").getRgb()))
|
||||
self._disabled_shader.setUniformValue("u_width", 50.0)
|
||||
|
||||
if not self._non_printing_shader:
|
||||
self._non_printing_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "transparent_object.shader"))
|
||||
self._non_printing_shader.setUniformValue("u_diffuseColor", Color(*self._theme.getColor("model_non_printing").getRgb()))
|
||||
self._non_printing_shader.setUniformValue("u_opacity", 0.6)
|
||||
|
||||
global_container_stack = Application.getInstance().getGlobalContainerStack()
|
||||
if global_container_stack:
|
||||
support_extruder_nr = global_container_stack.getProperty("support_extruder_nr", "value")
|
||||
|
@ -68,11 +76,19 @@ class SolidView(View):
|
|||
uniforms = {}
|
||||
shade_factor = 1.0
|
||||
|
||||
per_mesh_stack = node.callDecoration("getStack")
|
||||
|
||||
# Get color to render this mesh in from ExtrudersModel
|
||||
extruder_index = 0
|
||||
extruder_id = node.callDecoration("getActiveExtruder")
|
||||
if extruder_id:
|
||||
extruder_index = max(0, self._extruders_model.find("id", extruder_id))
|
||||
|
||||
# Use the support extruder instead of the active extruder if this is a support_mesh
|
||||
if per_mesh_stack:
|
||||
if per_mesh_stack.getProperty("support_mesh", "value"):
|
||||
extruder_index = int(global_container_stack.getProperty("support_extruder_nr", "value"))
|
||||
|
||||
try:
|
||||
material_color = self._extruders_model.getItem(extruder_index)["color"]
|
||||
except KeyError:
|
||||
|
@ -94,19 +110,17 @@ class SolidView(View):
|
|||
except ValueError:
|
||||
pass
|
||||
|
||||
if hasattr(node, "_outside_buildarea"):
|
||||
if node._outside_buildarea:
|
||||
renderer.queueNode(node, shader = self._disabled_shader)
|
||||
if getattr(node, "_non_printing_mesh", False):
|
||||
if per_mesh_stack and (per_mesh_stack.getProperty("infill_mesh", "value") or per_mesh_stack.getProperty("cutting_mesh", "value")):
|
||||
renderer.queueNode(node, shader = self._non_printing_shader, uniforms = uniforms, transparent = True)
|
||||
else:
|
||||
renderer.queueNode(node, shader = self._enabled_shader, uniforms = uniforms)
|
||||
renderer.queueNode(node, shader = self._non_printing_shader, transparent = True)
|
||||
elif getattr(node, "_outside_buildarea", False):
|
||||
renderer.queueNode(node, shader = self._disabled_shader)
|
||||
else:
|
||||
renderer.queueNode(node, material = self._enabled_shader, uniforms = uniforms)
|
||||
renderer.queueNode(node, shader = self._enabled_shader, uniforms = uniforms)
|
||||
if node.callDecoration("isGroup") and Selection.isSelected(node):
|
||||
renderer.queueNode(scene.getRoot(), mesh = node.getBoundingBoxMesh(), mode = RenderBatch.RenderMode.LineLoop)
|
||||
|
||||
def endRendering(self):
|
||||
pass
|
||||
|
||||
#def _onPreferenceChanged(self, preference):
|
||||
#if preference == "view/show_overhang": ## Todo: This a printer only setting. Should be removed from Uranium.
|
||||
#self._enabled_material = None
|
||||
|
|
|
@ -1,17 +1,15 @@
|
|||
from cura.MachineAction import MachineAction
|
||||
import os.path
|
||||
import time
|
||||
|
||||
from PyQt5.QtCore import pyqtSignal, pyqtProperty, pyqtSlot, QObject
|
||||
|
||||
from UM.Application import Application
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Logger import Logger
|
||||
|
||||
from PyQt5.QtCore import pyqtSignal, pyqtProperty, pyqtSlot, QUrl, QObject
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
|
||||
import os.path
|
||||
|
||||
import time
|
||||
|
||||
from UM.i18n import i18nCatalog
|
||||
|
||||
from cura.MachineAction import MachineAction
|
||||
|
||||
catalog = i18nCatalog("cura")
|
||||
|
||||
class DiscoverUM3Action(MachineAction):
|
||||
|
@ -136,17 +134,14 @@ class DiscoverUM3Action(MachineAction):
|
|||
|
||||
def _createAdditionalComponentsView(self):
|
||||
Logger.log("d", "Creating additional ui components for UM3.")
|
||||
path = QUrl.fromLocalFile(os.path.join(PluginRegistry.getInstance().getPluginPath("UM3NetworkPrinting"), "UM3InfoComponents.qml"))
|
||||
self.__additional_component = QQmlComponent(Application.getInstance()._engine, path)
|
||||
|
||||
# We need access to engine (although technically we can't)
|
||||
self.__additional_components_context = QQmlContext(Application.getInstance()._engine.rootContext())
|
||||
self.__additional_components_context.setContextProperty("manager", self)
|
||||
|
||||
self.__additional_components_view = self.__additional_component.create(self.__additional_components_context)
|
||||
# Create networking dialog
|
||||
path = os.path.join(PluginRegistry.getInstance().getPluginPath("UM3NetworkPrinting"), "UM3InfoComponents.qml")
|
||||
self.__additional_components_view = Application.getInstance().createQmlComponent(path, {"manager": self})
|
||||
if not self.__additional_components_view:
|
||||
Logger.log("w", "Could not create ui components for UM3.")
|
||||
return
|
||||
|
||||
# Create extra components
|
||||
Application.getInstance().addAdditionalComponent("monitorButtons", self.__additional_components_view.findChild(QObject, "networkPrinterConnectButton"))
|
||||
Application.getInstance().addAdditionalComponent("machinesDetailPane", self.__additional_components_view.findChild(QObject, "networkPrinterConnectionInfo"))
|
||||
|
|
|
@ -8,12 +8,10 @@ import time
|
|||
|
||||
from enum import Enum
|
||||
from PyQt5.QtNetwork import QNetworkRequest, QHttpPart, QHttpMultiPart
|
||||
from PyQt5.QtCore import QUrl, QByteArray, pyqtSlot, pyqtProperty, QCoreApplication, QTimer, pyqtSignal, QObject
|
||||
from PyQt5.QtCore import QUrl, pyqtSlot, pyqtProperty, QCoreApplication, QTimer, pyqtSignal, QObject
|
||||
from PyQt5.QtGui import QDesktopServices
|
||||
from PyQt5.QtNetwork import QNetworkAccessManager, QNetworkReply
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from UM.Application import Application
|
||||
from UM.Decorators import override
|
||||
from UM.Logger import Logger
|
||||
from UM.Message import Message
|
||||
from UM.OutputDevice import OutputDeviceError
|
||||
|
@ -131,7 +129,7 @@ class NetworkClusterPrinterOutputDevice(NetworkPrinterOutputDevice.NetworkPrinte
|
|||
@pyqtProperty(QObject, notify=selectedPrinterChanged)
|
||||
def controlItem(self):
|
||||
# TODO: Probably not the nicest way to do this. This needs to be done better at some point in time.
|
||||
if not self._control_component:
|
||||
if not self._control_item:
|
||||
self._createControlViewFromQML()
|
||||
name = self._selected_printer.get("friendly_name")
|
||||
if name == self._automatic_printer.get("friendly_name") or name == "":
|
||||
|
@ -235,17 +233,8 @@ class NetworkClusterPrinterOutputDevice(NetworkPrinterOutputDevice.NetworkPrinte
|
|||
|
||||
def spawnPrintView(self):
|
||||
if self._print_view is None:
|
||||
path = QUrl.fromLocalFile(os.path.join(self._plugin_path, "PrintWindow.qml"))
|
||||
component = QQmlComponent(Application.getInstance()._engine, path)
|
||||
|
||||
self._print_context = QQmlContext(Application.getInstance()._engine.rootContext())
|
||||
self._print_context.setContextProperty("OutputDevice", self)
|
||||
self._print_view = component.create(self._print_context)
|
||||
|
||||
if component.isError():
|
||||
Logger.log("e", " Errors creating component: \n%s", "\n".join(
|
||||
[e.toString() for e in component.errors()]))
|
||||
|
||||
path = os.path.join(self._plugin_path, "PrintWindow.qml")
|
||||
self._print_view = Application.getInstance().createQmlComponent(path, {"OutputDevice", self})
|
||||
if self._print_view is not None:
|
||||
self._print_view.show()
|
||||
|
||||
|
@ -263,6 +252,8 @@ class NetworkClusterPrinterOutputDevice(NetworkPrinterOutputDevice.NetworkPrinte
|
|||
self._error_message.show()
|
||||
return
|
||||
|
||||
self.writeStarted.emit(self) # Allow postprocessing before sending data to the printer
|
||||
|
||||
if len(self._printers) > 1:
|
||||
self.spawnPrintView() # Ask user how to print it.
|
||||
elif len(self._printers) == 1:
|
||||
|
@ -707,7 +698,7 @@ class NetworkClusterPrinterOutputDevice(NetworkPrinterOutputDevice.NetworkPrinte
|
|||
if self._reply:
|
||||
self._reply.abort()
|
||||
self._stage = OutputStage.ready
|
||||
Application.getInstance().showPrintMonitor.emit(False)
|
||||
Application.getInstance().getController().setActiveStage("PrepareStage")
|
||||
|
||||
@pyqtSlot(int, result=str)
|
||||
def formatDuration(self, seconds):
|
||||
|
|
|
@ -672,7 +672,7 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
|
|||
Logger.log("d", "Attempting to perform an action without authentication for printer %s. Auth state is %s", self._key, self._authentication_state)
|
||||
return
|
||||
|
||||
Application.getInstance().showPrintMonitor.emit(True)
|
||||
Application.getInstance().getController().setActiveStage("MonitorStage")
|
||||
self._print_finished = True
|
||||
self.writeStarted.emit(self)
|
||||
self._gcode = getattr(Application.getInstance().getController().getScene(), "gcode_list")
|
||||
|
@ -767,7 +767,7 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
|
|||
if button == QMessageBox.Yes:
|
||||
self.startPrint()
|
||||
else:
|
||||
Application.getInstance().showPrintMonitor.emit(False)
|
||||
Application.getInstance().getController().setActiveStage("PrepareStage")
|
||||
# For some unknown reason Cura on OSX will hang if we do the call back code
|
||||
# immediately without first returning and leaving QML's event system.
|
||||
QTimer.singleShot(100, delayedCallback)
|
||||
|
@ -850,7 +850,7 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
|
|||
self._write_finished = True # post_reply does not always exist, so make sure we unblock writing
|
||||
if self._post_reply:
|
||||
self._finalizePostReply()
|
||||
Application.getInstance().showPrintMonitor.emit(False)
|
||||
Application.getInstance().getController().setActiveStage("PrepareStage")
|
||||
|
||||
## Attempt to start a new print.
|
||||
# This function can fail to actually start a print due to not being authenticated or another print already
|
||||
|
|
|
@ -13,6 +13,7 @@ from UM.Application import Application
|
|||
from UM.Logger import Logger
|
||||
from cura.PrinterOutputDevice import PrinterOutputDevice, ConnectionState
|
||||
from UM.Message import Message
|
||||
from UM.Qt.Duration import DurationFormat
|
||||
|
||||
from PyQt5.QtCore import QUrl, pyqtSlot, pyqtSignal, pyqtProperty
|
||||
|
||||
|
@ -52,6 +53,8 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
|
||||
self._heatup_wait_start_time = time.time()
|
||||
|
||||
self.jobStateChanged.connect(self._onJobStateChanged)
|
||||
|
||||
## Queue for commands that need to be send. Used when command is sent when a print is active.
|
||||
self._command_queue = queue.Queue()
|
||||
|
||||
|
@ -60,7 +63,7 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
|
||||
## Set when print is started in order to check running time.
|
||||
self._print_start_time = None
|
||||
self._print_start_time_100 = None
|
||||
self._print_estimated_time = None
|
||||
|
||||
## Keep track where in the provided g-code the print is
|
||||
self._gcode_position = 0
|
||||
|
@ -125,6 +128,29 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
def _homeBed(self):
|
||||
self._sendCommand("G28 Z")
|
||||
|
||||
## Updates the target bed temperature from the printer, and emit a signal if it was changed.
|
||||
#
|
||||
# /param temperature The new target temperature of the bed.
|
||||
# /return boolean, True if the temperature was changed, false if the new temperature has the same value as the already stored temperature
|
||||
def _updateTargetBedTemperature(self, temperature):
|
||||
if self._target_bed_temperature == temperature:
|
||||
return False
|
||||
self._target_bed_temperature = temperature
|
||||
self.targetBedTemperatureChanged.emit()
|
||||
return True
|
||||
|
||||
## Updates the target hotend temperature from the printer, and emit a signal if it was changed.
|
||||
#
|
||||
# /param index The index of the hotend.
|
||||
# /param temperature The new target temperature of the hotend.
|
||||
# /return boolean, True if the temperature was changed, false if the new temperature has the same value as the already stored temperature
|
||||
def _updateTargetHotendTemperature(self, index, temperature):
|
||||
if self._target_hotend_temperatures[index] == temperature:
|
||||
return False
|
||||
self._target_hotend_temperatures[index] = temperature
|
||||
self.targetHotendTemperaturesChanged.emit()
|
||||
return True
|
||||
|
||||
## A name for the device.
|
||||
@pyqtProperty(str, constant = True)
|
||||
def name(self):
|
||||
|
@ -164,7 +190,6 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
# Reset line number. If this is not done, first line is sometimes ignored
|
||||
self._gcode.insert(0, "M110")
|
||||
self._gcode_position = 0
|
||||
self._print_start_time_100 = None
|
||||
self._is_printing = True
|
||||
self._print_start_time = time.time()
|
||||
|
||||
|
@ -394,7 +419,8 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
self._listen_thread.join()
|
||||
except:
|
||||
pass
|
||||
self._serial.close()
|
||||
if self._serial is not None: # Avoid a race condition when a thread can change the value of self._serial to None
|
||||
self._serial.close()
|
||||
|
||||
self._listen_thread = threading.Thread(target = self._listen)
|
||||
self._listen_thread.daemon = True
|
||||
|
@ -446,7 +472,6 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
#
|
||||
# \param nodes A collection of scene nodes to send. This is ignored.
|
||||
# \param file_name \type{string} A suggestion for a file name to write.
|
||||
# This is ignored.
|
||||
# \param filter_by_machine Whether to filter MIME types by machine. This
|
||||
# is ignored.
|
||||
# \param kwargs Keyword arguments.
|
||||
|
@ -462,7 +487,10 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
self._error_message.show()
|
||||
return
|
||||
|
||||
Application.getInstance().showPrintMonitor.emit(True)
|
||||
self.setJobName(file_name)
|
||||
self._print_estimated_time = int(Application.getInstance().getPrintInformation().currentPrintTime.getDisplayString(DurationFormat.Format.Seconds))
|
||||
|
||||
Application.getInstance().getController().setActiveStage("MonitorStage")
|
||||
self.startPrint()
|
||||
|
||||
def _setEndstopState(self, endstop_key, value):
|
||||
|
@ -482,6 +510,7 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
## Listen thread function.
|
||||
def _listen(self):
|
||||
Logger.log("i", "Printer connection listen thread started for %s" % self._serial_port)
|
||||
container_stack = Application.getInstance().getGlobalContainerStack()
|
||||
temperature_request_timeout = time.time()
|
||||
ok_timeout = time.time()
|
||||
while self._connection_state == ConnectionState.connected:
|
||||
|
@ -511,16 +540,40 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
self._setErrorState(line[6:])
|
||||
|
||||
elif b" T:" in line or line.startswith(b"T:"): # Temperature message
|
||||
temperature_matches = re.findall(b"T(\d*): ?([\d\.]+) ?\/?([\d\.]+)?", line)
|
||||
temperature_set = False
|
||||
try:
|
||||
self._setHotendTemperature(self._temperature_requested_extruder_index, float(re.search(b"T: *([0-9\.]*)", line).group(1)))
|
||||
for match in temperature_matches:
|
||||
if match[0]:
|
||||
extruder_nr = int(match[0])
|
||||
if extruder_nr >= container_stack.getProperty("machine_extruder_count", "value"):
|
||||
continue
|
||||
if match[1]:
|
||||
self._setHotendTemperature(extruder_nr, float(match[1]))
|
||||
temperature_set = True
|
||||
if match[2]:
|
||||
self._updateTargetHotendTemperature(extruder_nr, float(match[2]))
|
||||
else:
|
||||
requested_temperatures = match
|
||||
if not temperature_set and requested_temperatures:
|
||||
if requested_temperatures[1]:
|
||||
self._setHotendTemperature(self._temperature_requested_extruder_index, float(requested_temperatures[1]))
|
||||
if requested_temperatures[2]:
|
||||
self._updateTargetHotendTemperature(self._temperature_requested_extruder_index, float(requested_temperatures[2]))
|
||||
except:
|
||||
pass
|
||||
if b"B:" in line: # Check if it's a bed temperature
|
||||
Logger.log("w", "Could not parse hotend temperatures from response: %s", line)
|
||||
# Check if there's also a bed temperature
|
||||
temperature_matches = re.findall(b"B: ?([\d\.]+) ?\/?([\d\.]+)?", line)
|
||||
if container_stack.getProperty("machine_heated_bed", "value") and len(temperature_matches) > 0:
|
||||
match = temperature_matches[0]
|
||||
try:
|
||||
self._setBedTemperature(float(re.search(b"B: *([0-9\.]*)", line).group(1)))
|
||||
except Exception as e:
|
||||
pass
|
||||
#TODO: temperature changed callback
|
||||
if match[0]:
|
||||
self._setBedTemperature(float(match[0]))
|
||||
if match[1]:
|
||||
self._updateTargetBedTemperature(float(match[1]))
|
||||
except:
|
||||
Logger.log("w", "Could not parse bed temperature from response: %s", line)
|
||||
|
||||
elif b"_min" in line or b"_max" in line:
|
||||
tag, value = line.split(b":", 1)
|
||||
self._setEndstopState(tag,(b"H" in value or b"TRIGGERED" in value))
|
||||
|
@ -559,8 +612,6 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
def _sendNextGcodeLine(self):
|
||||
if self._gcode_position >= len(self._gcode):
|
||||
return
|
||||
if self._gcode_position == 100:
|
||||
self._print_start_time_100 = time.time()
|
||||
line = self._gcode[self._gcode_position]
|
||||
|
||||
if ";" in line:
|
||||
|
@ -584,8 +635,18 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
checksum = functools.reduce(lambda x,y: x^y, map(ord, "N%d%s" % (self._gcode_position, line)))
|
||||
|
||||
self._sendCommand("N%d%s*%d" % (self._gcode_position, line, checksum))
|
||||
|
||||
progress = (self._gcode_position / len(self._gcode))
|
||||
|
||||
elapsed_time = int(time.time() - self._print_start_time)
|
||||
self.setTimeElapsed(elapsed_time)
|
||||
estimated_time = self._print_estimated_time
|
||||
if progress > .1:
|
||||
estimated_time = self._print_estimated_time * (1-progress) + elapsed_time
|
||||
self.setTimeTotal(estimated_time)
|
||||
|
||||
self._gcode_position += 1
|
||||
self.setProgress((self._gcode_position / len(self._gcode)) * 100)
|
||||
self.setProgress(progress * 100)
|
||||
self.progressChanged.emit()
|
||||
|
||||
## Set the state of the print.
|
||||
|
@ -600,6 +661,13 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
elif job_state == "abort":
|
||||
self.cancelPrint()
|
||||
|
||||
def _onJobStateChanged(self):
|
||||
# clear the job name & times when printing is done or aborted
|
||||
if self._job_state == "ready":
|
||||
self.setJobName("")
|
||||
self.setTimeElapsed(0)
|
||||
self.setTimeTotal(0)
|
||||
|
||||
## Set the progress of the print.
|
||||
# It will be normalized (based on max_progress) to range 0 - 100
|
||||
def setProgress(self, progress, max_progress = 100):
|
||||
|
@ -630,7 +698,7 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
self._is_printing = False
|
||||
self._is_paused = False
|
||||
self._updateJobState("ready")
|
||||
Application.getInstance().showPrintMonitor.emit(False)
|
||||
Application.getInstance().getController().setActiveStage("PrepareStage")
|
||||
|
||||
## Check if the process did not encounter an error yet.
|
||||
def hasError(self):
|
||||
|
|
|
@ -16,13 +16,11 @@ from cura.CuraApplication import CuraApplication
|
|||
|
||||
import threading
|
||||
import platform
|
||||
import glob
|
||||
import time
|
||||
import os.path
|
||||
import serial.tools.list_ports
|
||||
from UM.Extension import Extension
|
||||
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from PyQt5.QtCore import QUrl, QObject, pyqtSlot, pyqtProperty, pyqtSignal, Qt
|
||||
from UM.i18n import i18nCatalog
|
||||
i18n_catalog = i18nCatalog("cura")
|
||||
|
@ -99,7 +97,8 @@ class USBPrinterOutputDeviceManager(QObject, OutputDevicePlugin, Extension):
|
|||
@pyqtSlot(str)
|
||||
def updateAllFirmware(self, file_name):
|
||||
if file_name.startswith("file://"):
|
||||
file_name = QUrl(file_name).toLocalFile() # File dialogs prepend the path with file://, which we don't need / want
|
||||
file_name = QUrl(file_name).toLocalFile() # File dialogs prepend the path with file://, which we don't need / want
|
||||
|
||||
if not self._usb_output_devices:
|
||||
Message(i18n_catalog.i18nc("@info", "Unable to update firmware because there are no printers connected."), title = i18n_catalog.i18nc("@info:title", "Warning")).show()
|
||||
return
|
||||
|
|
|
@ -9,13 +9,12 @@ from UM.Logger import Logger
|
|||
|
||||
from cura.CuraApplication import CuraApplication
|
||||
|
||||
from PyQt5.QtQml import QQmlComponent, QQmlContext
|
||||
from PyQt5.QtCore import QUrl, QObject, pyqtSlot
|
||||
from PyQt5.QtCore import QObject, pyqtSlot
|
||||
|
||||
import os.path
|
||||
|
||||
class UserAgreement(QObject, Extension):
|
||||
def __init__(self, parent = None):
|
||||
def __init__(self):
|
||||
super(UserAgreement, self).__init__()
|
||||
self._user_agreement_window = None
|
||||
self._user_agreement_context = None
|
||||
|
@ -33,8 +32,8 @@ class UserAgreement(QObject, Extension):
|
|||
self._user_agreement_window.show()
|
||||
|
||||
@pyqtSlot(bool)
|
||||
def didAgree(self, userChoice):
|
||||
if userChoice:
|
||||
def didAgree(self, user_choice):
|
||||
if user_choice:
|
||||
Logger.log("i", "User agreed to the user agreement")
|
||||
Preferences.getInstance().setValue("general/accepted_user_agreement", True)
|
||||
self._user_agreement_window.hide()
|
||||
|
|
|
@ -43,7 +43,7 @@ UM.Dialog
|
|||
anchors.right: parent.right
|
||||
text: catalog.i18nc("@action:button", "I understand and agree")
|
||||
onClicked: {
|
||||
manager.didAgree(true)
|
||||
baseDialog.accepted()
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -52,13 +52,12 @@ UM.Dialog
|
|||
anchors.left: parent.left
|
||||
text: catalog.i18nc("@action:button", "I don't agree")
|
||||
onClicked: {
|
||||
manager.didAgree(false)
|
||||
baseDialog.rejected()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
onClosing: {
|
||||
manager.didAgree(false)
|
||||
}
|
||||
onAccepted: manager.didAgree(true)
|
||||
onRejected: manager.didAgree(false)
|
||||
onClosing: manager.didAgree(false)
|
||||
}
|
||||
|
|
|
@ -98,7 +98,7 @@ class Profile:
|
|||
|
||||
config.add_section("metadata")
|
||||
config.set("metadata", "quality_type", "normal") #This feature doesn't exist in 2.1 yet, so we don't know the actual quality type. For now, always base it on normal.
|
||||
config.set("metadata", "type", "quality_changes")
|
||||
config.set("metadata", "type", "quality")
|
||||
if self._weight:
|
||||
config.set("metadata", "weight", str(self._weight))
|
||||
if self._machine_variant_name:
|
||||
|
|
|
@ -203,6 +203,14 @@ class VersionUpgrade30to31(VersionUpgrade):
|
|||
def _createExtruderQualityChangesForSingleExtrusionMachine(self, filename, global_quality_changes):
|
||||
suffix = "_" + quote_plus(global_quality_changes["general"]["name"].lower())
|
||||
machine_name = os.path.os.path.basename(filename).replace(".inst.cfg", "").replace(suffix, "")
|
||||
|
||||
# Why is this here?!
|
||||
# When we load a .curaprofile file the deserialize will trigger a version upgrade, creating a dangling file.
|
||||
# This file can be recognized by it's lack of a machine name in the target filename.
|
||||
# So when we detect that situation here, we don't create the file and return.
|
||||
if machine_name == "":
|
||||
return
|
||||
|
||||
new_filename = machine_name + "_" + "fdmextruder" + suffix
|
||||
|
||||
extruder_quality_changes_parser = configparser.ConfigParser()
|
||||
|
|
|
@ -317,6 +317,17 @@
|
|||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"machine_firmware_retract":
|
||||
{
|
||||
"label": "Firmware Retraction",
|
||||
"description": "Whether to use firmware retract commands (G10/G11) instead of using the E property in G1 commands to retract the material.",
|
||||
"type": "bool",
|
||||
"default_value": false,
|
||||
"value": "machine_gcode_flavor == 'RepRap (Volumetric)' or machine_gcode_flavor == 'UltiGCode' or machine_gcode_flavor == 'BFB'",
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"machine_disallowed_areas":
|
||||
{
|
||||
"label": "Disallowed areas",
|
||||
|
@ -3367,7 +3378,6 @@
|
|||
"unit": "s",
|
||||
"type": "float",
|
||||
"default_value": 10,
|
||||
"minimum_value": "cool_min_layer_time",
|
||||
"maximum_value_warning": "600",
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": true
|
||||
|
@ -5982,6 +5992,49 @@
|
|||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"adaptive_layer_height_enabled":
|
||||
{
|
||||
"label": "Use adaptive layers",
|
||||
"description": "Adaptive layers computes the layer heights depending on the shape of the model.",
|
||||
"type": "bool",
|
||||
"default_value": false,
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"adaptive_layer_height_variation":
|
||||
{
|
||||
"label": "Adaptive layers maximum variation",
|
||||
"description": "The maximum allowed height different from the base layer height in mm.",
|
||||
"type": "float",
|
||||
"enabled": "adaptive_layer_height_enabled",
|
||||
"default_value": 0.1,
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"adaptive_layer_height_variation_step":
|
||||
{
|
||||
"label": "Adaptive layers variation step size",
|
||||
"description": "The difference in height of the next layer height compared to the previous one.",
|
||||
"type": "float",
|
||||
"enabled": "adaptive_layer_height_enabled",
|
||||
"default_value": 0.01,
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"adaptive_layer_height_threshold":
|
||||
{
|
||||
"label": "Adaptive layers threshold",
|
||||
"description": "Threshold whether to use a smaller layer or not. This number is compared to the tan of the steepest slope in a layer.",
|
||||
"type": "float",
|
||||
"enabled": "adaptive_layer_height_enabled",
|
||||
"default_value": 200.0,
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: German\n"
|
||||
"Language: de_DE\n"
|
||||
|
@ -91,7 +91,7 @@ msgstr "Datei wurde zu Doodle3D Connect gesendet"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Connect wird geöffnet ..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -141,7 +141,7 @@ msgstr "Es kann kein neuer Auftrag gestartet werden, da der Drucker beschäftigt
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Drucker nicht verfügbar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -593,7 +593,7 @@ msgstr "Anschluss über Netzwerk"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "Für Ihren {machine_name} sind neue Funktionen verfügbar! Es wird empfohlen, ein Firmware-Update für Ihren Drucker auszuführen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -604,7 +604,7 @@ msgstr "Neue Firmware für %s verfügbar"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Anleitung für die Aktualisierung"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -639,7 +639,7 @@ msgstr "Fehler beim Starten %s!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Simulationsansicht"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -649,7 +649,7 @@ msgstr "Cura zeigt die Schichten nicht akkurat an, wenn Wire Printing aktiviert
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Simulationsansicht"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -730,7 +730,7 @@ msgstr "Die aktuellen Einstellungen lassen kein Schneiden (Slicing) zu. Die folg
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Aufgrund der Pro-Modell-Einstellungen ist kein Schneiden (Slicing) möglich. Die folgenden Einstellungen sind für ein oder mehrere Modelle fehlerhaft: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -765,25 +765,25 @@ msgstr "Pro Objekteinstellungen konfigurieren"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Installieren"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Plugin-Dateien konnten nicht kopiert werden. Überprüfen Sie Ihr UGII_USER_DIR. Sie ist keinem Verzeichnis zugeordnet."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Cura Plugin wurde erfolgreich installiert."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Plugin-Dateien konnten nicht kopiert werden. Überprüfen Sie Ihr UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Plugin konnte nicht installiert werden. Umgebungsvariable UGII_USER_DIR für Siemens NX konnte nicht zugewiesen werden."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -946,7 +946,7 @@ msgstr "Sonstige"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Unbekannt"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1011,12 +1011,12 @@ msgstr "Benutzerdefiniertes Material"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Global"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Nicht überschrieben"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1065,7 +1065,7 @@ msgstr "Profil wurde nach <filename>{0}</filename> exportiert"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "Export erfolgreich ausgeführt"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1137,85 +1137,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>Ein schwerer Ausnahmefehler ist aufgetreten. Senden Sie uns diesen Absturzbericht, um das Problem zu beheben</p></b>\n <p>Verwenden Sie bitte die Schaltfläche „Bericht senden“, um den Fehlerbericht automatisch an unsere Server zu senden</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Systeminformationen"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Unbekannt"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Cura-Version:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Plattform:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Qt-Version:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>PyQt-Version:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL-Version: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL-Anbieter: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL-Renderer: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Ausnahme-Rückverfolgung"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Protokolle"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Benutzerbeschreibung"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Bericht senden"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1253,7 +1253,7 @@ msgstr "Wenn G-Code geladen wird, kann keine weitere Datei geöffnet werden. Wic
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "Das gewählte Modell war zu klein zum Laden."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1514,10 +1514,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"Um über das Netzwerk direkt auf Ihrem Drucker zu drucken, stellen Sie bitte sicher, dass der Drucker mit dem Netzwerkkabel verbunden ist oder verbinden Sie Ihren Drucker mit Ihrem WLAN-Netzwerk. Wenn Sie Cura nicht mit Ihrem Drucker verbinden, können Sie dennoch ein USB-Laufwerk für die Übertragung von G-Code-Dateien auf Ihren Drucker verwenden.\n"
|
||||
"\n"
|
||||
"Wählen Sie Ihren Drucker aus der folgenden Liste:"
|
||||
msgstr "Um über das Netzwerk direkt auf Ihrem Drucker zu drucken, stellen Sie bitte sicher, dass der Drucker mit dem Netzwerkkabel verbunden ist oder verbinden Sie Ihren Drucker mit Ihrem WLAN-Netzwerk. Wenn Sie Cura nicht mit Ihrem Drucker verbinden, können Sie dennoch ein USB-Laufwerk für die Übertragung von G-Code-Dateien auf Ihren Drucker verwenden.\n\nWählen Sie Ihren Drucker aus der folgenden Liste:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1631,7 +1628,7 @@ msgstr "%1 ist nicht für das Hosten einer Gruppe verbundener Ultimaker 3-Drucke
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Öffnet die Seite für Druckaufträge mit Ihrem Standard-Webbrowser."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1666,7 +1663,7 @@ msgstr "Verbindung zum Drucker wurde unterbrochen"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Deaktiviert"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1681,12 +1678,12 @@ msgstr "Beendet"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "Pausiert"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Wird fortgesetzt ..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1828,12 +1825,12 @@ msgstr "Linientyp"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Vorschub"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Schichtdicke"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1883,12 +1880,12 @@ msgstr "Innenwand"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "min."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "max."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2126,7 +2123,7 @@ msgstr "%1 von %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Das Laden eines Projekts entfernt alle Modelle von der Druckplatte."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2169,7 +2166,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "Dieses Plugin enthält eine Lizenz.\nSie müssen diese Lizenz akzeptieren, um das Plugin zu installieren.\nStimmen Sie den nachfolgenden Bedingungen zu?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2184,7 +2181,7 @@ msgstr "Ablehnen"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Benutzervereinbarung"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2434,9 +2431,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"Sie haben einige Profileinstellungen angepasst.\n"
|
||||
"Möchten Sie diese Einstellungen übernehmen oder verwerfen?"
|
||||
msgstr "Sie haben einige Profileinstellungen angepasst.\nMöchten Sie diese Einstellungen übernehmen oder verwerfen?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3067,7 +3062,7 @@ msgstr "Über Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "Version: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3079,9 +3074,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura wurde von Ultimaker B.V. in Zusammenarbeit mit der Community entwickelt.\n"
|
||||
"Cura verwendet mit Stolz die folgenden Open Source-Projekte:"
|
||||
msgstr "Cura wurde von Ultimaker B.V. in Zusammenarbeit mit der Community entwickelt.\nCura verwendet mit Stolz die folgenden Open Source-Projekte:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3166,7 +3159,7 @@ msgstr "Bibliothek für Polygon-Beschneidung"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Bibliothek für Python HTTP"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3186,7 +3179,7 @@ msgstr "Profil:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "Kein Profil verfügbar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3194,10 +3187,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"Einige Einstellungs-/Überschreibungswerte unterscheiden sich von den im Profil gespeicherten Werten.\n"
|
||||
"\n"
|
||||
"Klicken Sie, um den Profilmanager zu öffnen."
|
||||
msgstr "Einige Einstellungs-/Überschreibungswerte unterscheiden sich von den im Profil gespeicherten Werten.\n\nKlicken Sie, um den Profilmanager zu öffnen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3235,10 +3225,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"Einige ausgeblendete Einstellungen verwenden Werte, die von ihren normalen, berechneten Werten abweichen.\n"
|
||||
"\n"
|
||||
"Klicken Sie, um diese Einstellungen sichtbar zu machen."
|
||||
msgstr "Einige ausgeblendete Einstellungen verwenden Werte, die von ihren normalen, berechneten Werten abweichen.\n\nKlicken Sie, um diese Einstellungen sichtbar zu machen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,10 +3253,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"Diese Einstellung hat einen vom Profil abweichenden Wert.\n"
|
||||
"\n"
|
||||
"Klicken Sie, um den Wert des Profils wiederherzustellen."
|
||||
msgstr "Diese Einstellung hat einen vom Profil abweichenden Wert.\n\nKlicken Sie, um den Wert des Profils wiederherzustellen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3277,10 +3261,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"Diese Einstellung wird normalerweise berechnet; aktuell ist jedoch ein Absolutwert eingestellt.\n"
|
||||
"\n"
|
||||
"Klicken Sie, um den berechneten Wert wiederherzustellen."
|
||||
msgstr "Diese Einstellung wird normalerweise berechnet; aktuell ist jedoch ein Absolutwert eingestellt.\n\nKlicken Sie, um den berechneten Wert wiederherzustellen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3292,51 +3273,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"Druckeinrichtung deaktiviert\n"
|
||||
"G-Code-Dateien können nicht geändert werden"
|
||||
msgstr "Druckeinrichtung deaktiviert\nG-Code-Dateien können nicht geändert werden"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00 Stunden 00 Minuten"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Zeitangabe</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Kostenangabe"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1 m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1 g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Insgesamt:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3461,27 +3440,27 @@ msgstr "Heizen Sie das Bett vor Druckbeginn auf. Sie können Ihren Druck währen
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Druckersteuerung"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Tippposition"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Tippdistanz"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3526,7 +3505,7 @@ msgstr "&Beenden"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Kameraposition zurücksetzen"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3768,7 +3747,7 @@ msgstr "Alle als Modelle importieren"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3925,7 +3904,7 @@ msgstr "Schichtdicke"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Ein benutzerdefiniertes Profil ist derzeit aktiv. Wählen Sie ein voreingestelltes Qualitätsprofil aus der Registerkarte „Benutzerdefiniert“, um den Schieberegler für Qualität zu aktivieren."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3945,7 +3924,7 @@ msgstr "Schneller"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "Sie haben einige Profileinstellungen geändert. Wenn Sie diese ändern möchten, wechseln Sie in den Modus „Benutzerdefiniert“."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4037,7 +4016,7 @@ msgstr "Material"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href=‘%1‘>Kompatibilität prüfen</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4177,12 +4156,12 @@ msgstr "SolidWorks Integration"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Ermöglicht die Simulationsansicht."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Simulationsansicht"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4267,12 +4246,12 @@ msgstr "Upgrade von Version 2.7 auf 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Aktualisiert Konfigurationen von Cura 3.0 auf Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Upgrade von Version 3.0 auf 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4337,12 +4316,12 @@ msgstr "Werkzeug „Einstellungen pro Objekt“"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Unterstützt die Installation der Schaltfläche „Zu Cura exportieren“ in Siemens NX."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integration"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4407,12 +4386,12 @@ msgstr "3MF-Writer"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Den Benutzer einmalig fragen, ob er unsere Lizenz akzeptiert."
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "UserAgreement"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4454,13 +4433,13 @@ msgstr "Cura-Profil-Reader"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Um sicherzustellen, dass Ihr {machine_name} mit den neuesten Funktionen ausgestattet ist, wird empfohlen, die Firmware regelmäßig zu aktualisieren Dies kann auf dem {machine_name} (bei Anschluss an ein Netzwerk) oder über USB erfolgen."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Schichtenansicht"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Schichtenansicht"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Schichtenansicht"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Schichtenansicht"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4562,9 +4541,9 @@ msgstr "Cura-Profil-Reader"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Bietet eine Schichtenansicht."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Schichtenansicht"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Schichtenansicht"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4885,9 +4864,9 @@ msgstr "Cura-Profil-Reader"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Ermöglicht das Importieren von Profilen aus G-Code-Dateien."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Schichtenansicht"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Schichtenansicht"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-11 14:30+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: German\n"
|
||||
"Language: de_DE\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: German\n"
|
||||
"Language: de_DE\n"
|
||||
|
@ -56,9 +56,7 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Gcode-Befehle, die zu Beginn ausgeführt werden sollen – getrennt durch \n"
|
||||
"."
|
||||
msgstr "Gcode-Befehle, die zu Beginn ausgeführt werden sollen – getrennt durch \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -70,9 +68,7 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Gcode-Befehle, die Am Ende ausgeführt werden sollen – getrennt durch \n"
|
||||
"."
|
||||
msgstr "Gcode-Befehle, die Am Ende ausgeführt werden sollen – getrennt durch \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -612,27 +608,27 @@ msgstr "Die Dicke der ersten Schicht in mm. Eine dicke erste Schicht erleichtert
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Slicing-Toleranz"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Slicen von Schichten mit diagonalen Flächen. Die Bereiche einer Schicht können anhand der Position generiert werden, an der die Mitte einer Schicht die Oberfläche kreuzt (Mitte). Optional kann jede Schicht die Bereiche enthalten, die in das Volumen entlang der Höhe der Schicht (Exklusiv) fallen oder eine Schicht enthält die Bereiche, die irgendwo innerhalb der Schicht positioniert sind (Inklusiv). Exklusiv bewahrt die meisten Details, Inklusiv ermöglicht die beste Passform und Mitte erfordert die kürzeste Bearbeitungszeit."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Mitte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Exklusiv"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Inklusiv"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -807,7 +803,7 @@ msgstr "Die für das Drucken der Außenwände verwendete Extruder-Einheit. Diese
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Extruder Innenwand"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1387,7 +1383,7 @@ msgstr "Füllmuster"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Das Muster des Füllmaterials des Drucks. Die Linien- und Zickzackfüllmethode wechseln nach jeder Schicht die Richtung, um Materialkosten zu reduzieren. Die Gitter-, Dreieck- Tri-Hexagon-, Würfel-, Octahedral-, Viertelwürfel-, Quer- und konzentrischen Muster werden in jeder Schicht vollständig gedruckt. Würfel-, Viertelwürfel- und Octahedral-Füllungen wechseln mit jeder Schicht, um eine gleichmäßigere Verteilung der Stärke in allen Richtungen zu erzielen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1407,7 +1403,7 @@ msgstr "Dreiecke"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Tri-Hexagon"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1462,7 +1458,7 @@ msgstr "Füllungslinien verbinden"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Verbindet die Enden, an denen das Füllmuster auf die Innenwand trifft, mithilfe einer Linie, die der Form der Innenwand folgt. Durch Aktivierung dieser Einstellung kann die Füllung besser an den Wänden haften; auch die Auswirkungen der Füllung auf die Qualität der vertikalen Flächen werden reduziert. Die Deaktivierung dieser Einstellung reduziert den Materialverbrauch."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1477,22 +1473,22 @@ msgstr "Eine Liste von Ganzzahl-Linienrichtungen für die Verwendung. Elemente a
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "X-Versatz Füllung"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "Das Füllmuster wird um diese Distanz entlang der X-Achse versetzt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Y-Versatz Füllung"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "Das Füllmuster wird um diese Distanz entlang der Y-Achse versetzt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1807,22 +1803,22 @@ msgstr "Der Durchmesser des verwendeten Filaments wird angepasst. Stellen Sie hi
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Haftungstendenz"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Oberflächenhaftungstendenz"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Oberflächenenergie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Oberflächenenergie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3554,7 +3550,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "Der horizontale Abstand zwischen dem Skirt und der ersten Schicht des Drucks.\nEs handelt sich dabei um den Mindestabstand. Ab diesem Abstand werden mehrere Skirt-Linien in äußerer Richtung angebracht."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3614,7 +3610,7 @@ msgstr "Raft-Glättung"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Diese Einstellung steuert, wie stark die Innenkanten des Raft-Umrisses gerundet werden. Die Innenkanten werden zu einem Halbkreis mit einem Radius entsprechend des hier definierten Werts gerundet. Diese Einstellung entfernt außerdem Löcher im Raft-Umriss, die kleiner als ein solcher Kreis sind."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4089,12 +4085,12 @@ msgstr "Normalerweise versucht Cura kleine Löcher im Netz abzudecken und Teile
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Maximale Auflösung"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "Die Mindestgröße eines Linienabschnitts nach dem Slicen. Wenn Sie diesen Wert erhöhen, führt dies zu einer niedrigeren Auslösung des Mesh. Damit kann der Drucker die erforderliche Geschwindigkeit für die Verarbeitung des G-Codes beibehalten; außerdem wird die Slice-Geschwindigkeit erhöht, indem Details des Mesh entfernt werden, die ohnehin nicht verarbeitet werden können."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4129,12 +4125,12 @@ msgstr "Schaltet mit jeder Schicht das Volumen zu den entsprechenden Netzübersc
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Leere erste Schichten entfernen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Entfernen Sie die leeren Schichten unter der ersten gedruckten Schicht, sofern vorhanden. Die Deaktivierung dieser Einstellung kann zu leeren ersten Schichten führen, wenn die Einstellung der Slicing-Toleranz auf Exklusiv oder Mittel gesetzt wurde."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4664,22 +4660,22 @@ msgstr "Der durchschnittliche Abstand zwischen den willkürlich auf jedes Linien
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Ausgleich Durchflussrate max. Extrusionswirkung"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "Die maximale Distanz in mm für den Ausgleich."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Ausgleichsfaktor Durchflussrate"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "Der Multiplikationsfaktor für die Übersetzung Durchflussrate -> Distanz."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4831,9 +4827,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"Die Strecke einer Aufwärtsbewegung, die mit halber Geschwindigkeit extrudiert wird.\n"
|
||||
"Dies kann zu einer besseren Haftung an vorhergehenden Schichten führen, während gleichzeitig ein Überhitzen des Materials in diesen Schichten vermieden wird. Dies gilt nur für das Drucken mit Drahtstruktur."
|
||||
msgstr "Die Strecke einer Aufwärtsbewegung, die mit halber Geschwindigkeit extrudiert wird.\nDies kann zu einer besseren Haftung an vorhergehenden Schichten führen, während gleichzeitig ein Überhitzen des Materials in diesen Schichten vermieden wird. Dies gilt nur für das Drucken mit Drahtstruktur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Spanish\n"
|
||||
"Language: es_ES\n"
|
||||
|
@ -91,7 +91,7 @@ msgstr "Archivo enviado a Doodle3D Connect"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Abrir Connect..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -141,7 +141,7 @@ msgstr "No se puede iniciar un trabajo nuevo porque la impresora está ocupada o
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Impresora no disponible"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -593,7 +593,7 @@ msgstr "Conectar a través de la red"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "Hay nuevas funciones disponibles para {machine_name}. Se recomienda actualizar el firmware de la impresora."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -604,7 +604,7 @@ msgstr "Nuevo firmware de %s disponible"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Cómo actualizar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -639,7 +639,7 @@ msgstr "Error al iniciar %s"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Vista de simulación"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -649,7 +649,7 @@ msgstr "Cura no muestra correctamente las capas si la impresión de alambre est
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Vista de simulación"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -730,7 +730,7 @@ msgstr "Los ajustes actuales no permiten la segmentación. Los siguientes ajuste
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Los ajustes de algunos modelos no permiten la segmentación. Los siguientes ajustes contienen errores en uno o más modelos: {error_labels}."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -765,25 +765,25 @@ msgstr "Configurar ajustes por modelo"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Instalar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Se ha producido un error al copiar los archivos de complemento de Siemens NX. Compruebe la UGII_USER_DIR. No está asignada a ningún directorio."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "El complemento Siemens NX Cura se ha instalado correctamente."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Se ha producido un error al copiar los archivos de complemento de Siemens NX. Compruebe la UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Se ha producido un error al instalar el complemento de Siemens NX. No se pudo definir la variable de entorno UGII_USER_DIR de Siemens NX."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -946,7 +946,7 @@ msgstr "Otro"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Desconocido"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1011,12 +1011,12 @@ msgstr "Material personalizado"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Global"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "No reemplazado"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1065,7 +1065,7 @@ msgstr "Perfil exportado a <filename>{0}</filename>"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "Exportación correcta"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1137,85 +1137,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>Se ha producido una excepción fatal. Envíenos este informe de errores para que podamos solucionar el problema.</p></b>\n <p>Utilice el botón «Enviar informe» para publicar automáticamente un informe de errores en nuestros servidores.</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Información del sistema"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Desconocido"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versión de Cura:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Platforma:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versión de Qt:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versión de PyQt:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Versión de OpenGL: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Proveedor de OpenGL: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Representador de OpenGL: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Rastreabilidad de excepciones"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Registros"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Descripción del usuario"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Enviar informe"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1253,7 +1253,7 @@ msgstr "No se puede abrir ningún archivo si se está cargando un archivo GCode.
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "No se puede cargar el modelo seleccionado, es demasiado pequeño."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1514,10 +1514,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"Para imprimir directamente en la impresora a través de la red, asegúrese de que esta está conectada a la red utilizando un cable de red o conéctela a la red wifi. Si no conecta Cura con la impresora, también puede utilizar una unidad USB para transferir archivos GCode a la impresora.\n"
|
||||
"\n"
|
||||
"Seleccione la impresora de la siguiente lista:"
|
||||
msgstr "Para imprimir directamente en la impresora a través de la red, asegúrese de que esta está conectada a la red utilizando un cable de red o conéctela a la red wifi. Si no conecta Cura con la impresora, también puede utilizar una unidad USB para transferir archivos GCode a la impresora.\n\nSeleccione la impresora de la siguiente lista:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1631,7 +1628,7 @@ msgstr "%1 no está configurada para alojar un grupo de impresoras conectadas de
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Abre la página de trabajos de impresión en su navegador web por defecto."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1666,7 +1663,7 @@ msgstr "Se ha perdido la conexión con la impresora."
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Deshabilitado"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1681,12 +1678,12 @@ msgstr "Terminado"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "En pausa"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Reanudando"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1828,12 +1825,12 @@ msgstr "Tipo de línea"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Velocidad"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Grosor de la capa"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1883,12 +1880,12 @@ msgstr "Pared interior"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "mín."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "máx."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2126,7 +2123,7 @@ msgstr "%1 de un total de %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Si carga un proyecto, se borrarán todos los modelos de la placa de impresión."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2169,7 +2166,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "Este complemento incluye una licencia.\nDebe aceptar dicha licencia para instalar el complemento.\n¿Acepta las condiciones que aparecen a continuación?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2184,7 +2181,7 @@ msgstr "Rechazar"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Acuerdo de usuario"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2434,9 +2431,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"Ha personalizado parte de los ajustes del perfil.\n"
|
||||
"¿Desea descartar los cambios o guardarlos?"
|
||||
msgstr "Ha personalizado parte de los ajustes del perfil.\n¿Desea descartar los cambios o guardarlos?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3067,7 +3062,7 @@ msgstr "Acerca de Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "versión: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3079,9 +3074,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Ultimaker B.V. ha desarrollado Cura en cooperación con la comunidad.\n"
|
||||
"Cura se enorgullece de utilizar los siguientes proyectos de código abierto:"
|
||||
msgstr "Ultimaker B.V. ha desarrollado Cura en cooperación con la comunidad.\nCura se enorgullece de utilizar los siguientes proyectos de código abierto:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3166,7 +3159,7 @@ msgstr "Biblioteca de recorte de polígonos"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Biblioteca HTTP de Python"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3186,7 +3179,7 @@ msgstr "Perfil:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "No hay perfiles disponibles."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3194,10 +3187,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"Algunos valores de los ajustes o sobrescrituras son distintos a los valores almacenados en el perfil.\n"
|
||||
"\n"
|
||||
"Haga clic para abrir el administrador de perfiles."
|
||||
msgstr "Algunos valores de los ajustes o sobrescrituras son distintos a los valores almacenados en el perfil.\n\nHaga clic para abrir el administrador de perfiles."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3235,10 +3225,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"Algunos ajustes ocultos utilizan valores diferentes de los valores normales calculados.\n"
|
||||
"\n"
|
||||
"Haga clic para mostrar estos ajustes."
|
||||
msgstr "Algunos ajustes ocultos utilizan valores diferentes de los valores normales calculados.\n\nHaga clic para mostrar estos ajustes."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,10 +3253,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"Este ajuste tiene un valor distinto del perfil.\n"
|
||||
"\n"
|
||||
"Haga clic para restaurar el valor del perfil."
|
||||
msgstr "Este ajuste tiene un valor distinto del perfil.\n\nHaga clic para restaurar el valor del perfil."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3277,10 +3261,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"Este ajuste se calcula normalmente pero actualmente tiene un valor absoluto establecido.\n"
|
||||
"\n"
|
||||
"Haga clic para restaurar el valor calculado."
|
||||
msgstr "Este ajuste se calcula normalmente pero actualmente tiene un valor absoluto establecido.\n\nHaga clic para restaurar el valor calculado."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3292,51 +3273,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"Ajustes de impresión deshabilitados\n"
|
||||
"No se pueden modificar los archivos GCode"
|
||||
msgstr "Ajustes de impresión deshabilitados\nNo se pueden modificar los archivos GCode"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00 h 00 min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Especificación de tiempo</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Especificación de costes"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1 m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1 g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Total:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1 m/~ %2 g/~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1 m/~ %2 g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3461,27 +3440,27 @@ msgstr "Caliente la plataforma antes de imprimir. Puede continuar ajustando la i
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Control de impresoras"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Posición de desplazamiento"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Distancia de desplazamiento"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3526,7 +3505,7 @@ msgstr "&Salir"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Restablecer posición de la cámara"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3768,7 +3747,7 @@ msgstr "Importar todos como modelos"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3925,7 +3904,7 @@ msgstr "Altura de capa"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Hay un perfil personalizado activado en este momento. Para habilitar el control deslizante de calidad, seleccione un perfil de calidad predeterminado en la pestaña Personalizado."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3945,7 +3924,7 @@ msgstr "Más rápido"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "Ha modificado algunos ajustes del perfil. Si desea cambiarlos, hágalo en el modo personalizado."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4037,7 +4016,7 @@ msgstr "Material"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Comprobar compatibilidad</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4177,12 +4156,12 @@ msgstr "Integración con SolidWorks"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Abre la vista de simulación."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Vista de simulación"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4267,12 +4246,12 @@ msgstr "Actualización de la versión 2.7 a la 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Actualiza la configuración de Cura 3.0 a Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Actualización de la versión 3.0 a la 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4337,12 +4316,12 @@ msgstr "Herramienta de ajustes por modelo"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Ayuda a instalar el botón para exportar a Cura en in Siemens NX."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integration"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4407,12 +4386,12 @@ msgstr "Escritor de 3MF"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Preguntar al usuario una vez si acepta la licencia"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "UserAgreement"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4454,13 +4433,13 @@ msgstr "Lector de perfiles de Cura"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Para garantizar que su {machine_name} disponga de las prestaciones más recientes, se recomienda actualizar el firmware con regularidad. Esto se puede hacer en la {machine_name} (cuando esté conectada a la red) o vía USB."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Vista de capas"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Vista de capas"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Vista de capas"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Vista de capas"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4562,9 +4541,9 @@ msgstr "Lector de perfiles de Cura"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Proporciona la vista de capas."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Vista de capas"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Vista de capas"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4885,9 +4864,9 @@ msgstr "Lector de perfiles de Cura"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Proporciona asistencia para la importación de perfiles de archivos GCode."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Vista de capas"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Vista de capas"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-11 14:31+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Spanish\n"
|
||||
"Language: es_ES\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Spanish\n"
|
||||
"Language: es_ES\n"
|
||||
|
@ -56,9 +56,7 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Los comandos de Gcode que se ejecutarán justo al inicio - separados por \n"
|
||||
"."
|
||||
msgstr "Los comandos de Gcode que se ejecutarán justo al inicio - separados por \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -70,9 +68,7 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Los comandos de Gcode que se ejecutarán justo al final - separados por \n"
|
||||
"."
|
||||
msgstr "Los comandos de Gcode que se ejecutarán justo al final - separados por \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -612,27 +608,27 @@ msgstr "Altura de capa inicial en mm. Una capa inicial más gruesa se adhiere a
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Tolerancia de segmentación"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Cómo segmentar capas con superficies diagonales. Las áreas de una capa se pueden crear según el punto en el que el centro de esta intersecta con la superficie (Media). Las capas también pueden tener áreas comprendidas en el volumen a lo largo de la altura de la capa (Exclusiva) o una capa puede tener áreas comprendidas en cualquier lugar de la capa (Inclusiva). Las capas exclusivas tienen un mayor nivel de detalle, mientras que las inclusivas son las que mejor se ajustan y las medias las que tardan menos en procesarse."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Media"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Exclusiva"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Inclusiva"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -807,7 +803,7 @@ msgstr "El tren extrusor que se utiliza para imprimir la pared exterior. Se empl
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Extrusor de pared interior"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1387,7 +1383,7 @@ msgstr "Patrón de relleno"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Patrón del material de relleno de la impresión. El relleno de línea y zigzag cambia de dirección en capas alternas, con lo que se reduce el coste del material. Los patrones de rejilla, triángulo, trihexagonal, cúbico, de octeto, cúbico bitruncado y transversal y concéntrico se imprimen en todas las capas por completo. El relleno cúbico, cúbico bitruncado y de octeto cambian en cada capa para proporcionar una distribución de fuerza equitativa en cada dirección."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1407,7 +1403,7 @@ msgstr "Triángulos"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Trihexagonal"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1462,7 +1458,7 @@ msgstr "Conectar líneas de relleno"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Conectar los extremos donde los patrones de relleno se juntan con la pared interior usando una línea que siga la forma de esta. Habilitar este ajuste puede lograr que el relleno se adhiera mejor a las paredes y se reduzca el efecto del relleno sobre la calidad de las superficies verticales. Deshabilitar este ajuste reduce la cantidad de material utilizado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1477,22 +1473,22 @@ msgstr "Una lista de los valores enteros de las direcciones de línea. Los eleme
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Desplazamiento del relleno sobre el eje X"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "El patrón de relleno se desplaza esta distancia a lo largo del eje X."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Desplazamiento del relleno sobre el eje X"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "El patrón de relleno se desplaza esta distancia a lo largo del eje Y."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1807,22 +1803,22 @@ msgstr "Ajusta el diámetro del filamento utilizado. Este valor debe coincidir c
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Tendencia de adherencia"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Tendencia de adherencia de la superficie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Energía de la superficie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Energía de la superficie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3554,7 +3550,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "La distancia horizontal entre la falda y la primera capa de la impresión.\nSe trata de la distancia mínima. Múltiples líneas de falda se extenderán hacia el exterior a partir de esta distancia."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3614,7 +3610,7 @@ msgstr "Suavizado de la balsa"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Este ajuste controla la medida en que se redondean las esquinas interiores en el contorno de la balsa. Las esquinas hacia el interior se redondean en semicírculo con un radio equivalente al valor aquí indicado. Este ajuste también elimina los orificios del contorno de la balsa que sean más pequeños que dicho círculo."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4089,12 +4085,12 @@ msgstr "Normalmente, Cura intenta coser los pequeños agujeros de la malla y eli
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Resolución máxima"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "El tamaño mínimo de un segmento de línea tras la segmentación. Si se aumenta, la resolución de la malla será menor. Esto puede permitir a la impresora mantener la velocidad que necesita para procesar GCode y aumentará la velocidad de segmentación al eliminar detalles de la malla que, de todas formas, no puede procesar."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4129,12 +4125,12 @@ msgstr "Cambiar la malla a la que pertenecerán los volúmenes que se cruzan en
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Eliminar primeras capas vacías"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Eliminar (si las hubiera) las capas vacías por debajo de la primera capa impresa. Deshabilitar este ajuste puede hacer que aparezcan primeras capas vacías si el ajuste de tolerancia de segmentación está establecido en Exclusiva o Medio."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4664,22 +4660,22 @@ msgstr "Distancia media entre los puntos aleatorios introducidos en cada segment
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Desplazamiento de extrusión máximo del factor de compensación del caudal"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "Distancia máxima en mm que se va a compensar."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Factor de compensación del caudal"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "La multiplicación factor por caudal da como resultado la conversión de distancia."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4831,9 +4827,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"Distancia de un movimiento ascendente que se extrude a media velocidad.\n"
|
||||
"Esto puede causar una mejor adherencia a las capas anteriores, aunque no calienta demasiado el material en esas capas. Solo se aplica a la impresión de alambre."
|
||||
msgstr "Distancia de un movimiento ascendente que se extrude a media velocidad.\nEsto puede causar una mejor adherencia a las capas anteriores, aunque no calienta demasiado el material en esas capas. Solo se aplica a la impresión de alambre."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: French\n"
|
||||
"Language: fr_FR\n"
|
||||
|
@ -91,7 +91,7 @@ msgstr "Fichier envoyé vers Doodle3D Connecter"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Ouvrir Connect..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -141,7 +141,7 @@ msgstr "Impossible de démarrer une nouvelle tâche car l'imprimante est occupé
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Imprimante indisponible"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -593,7 +593,7 @@ msgstr "Connecter via le réseau"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "De nouvelles fonctionnalités sont disponibles pour votre {machine_name} ! Il est recommandé de mettre à jour le firmware sur votre imprimante."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -604,7 +604,7 @@ msgstr "Nouveau firmware %s disponible"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Comment effectuer la mise à jour"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -639,7 +639,7 @@ msgstr "Erreur lors du lancement de %s !"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Vue simulation"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -649,7 +649,7 @@ msgstr "Cura n'affiche pas les couches avec précision lorsque l'impression fila
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Vue simulation"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -730,7 +730,7 @@ msgstr "Impossible de couper avec les paramètres actuels. Les paramètres suiva
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Impossible de couper en raison de certains paramètres par modèle. Les paramètres suivants contiennent des erreurs sur un ou plusieurs modèles : {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -765,25 +765,25 @@ msgstr "Configurer les paramètres par modèle"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Installer"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Échec de la copie des fichiers plug-ins Siemens NX. Veuillez vérifier votre UGII_USER_DIR. Il n'est pas défini sur un répertoire."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "L'installation du plug-in Siemens NX Cura a réussie."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Échec de la copie des fichiers plug-ins Siemens NX. Veuillez vérifier votre UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Échec de l'installation du plug-in Siemens NX. Impossible de définir la variable d'environnement UGII_USER_DIR pour Siemens NX."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -946,7 +946,7 @@ msgstr "Autre"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Inconnu"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1011,12 +1011,12 @@ msgstr "Matériau personnalisé"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Global"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Pas écrasé"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1065,7 +1065,7 @@ msgstr "Profil exporté vers <filename>{0}</filename>"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "L'exportation a réussi"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1137,85 +1137,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>Une exception fatale s'est produite. Veuillez nous envoyer ce Rapport d'incident pour résoudre le problème</p></b>\n <p>Veuillez utiliser le bouton « Envoyer rapport » pour publier automatiquement un rapport d'erreur sur nos serveurs</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Informations système"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Inconnu"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Version Cura :</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "Plateforme :</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Version Qt :</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Version PyQt :</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL :</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Version OpenGL : {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Revendeur OpenGL : {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Moteur de rendu OpenGL : {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Retraçage de l'exception"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Journaux"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Description de l'utilisateur"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Envoyer rapport"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1253,7 +1253,7 @@ msgstr "Impossible d'ouvrir un autre fichier si le G-Code est en cours de charge
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "Le modèle sélectionné était trop petit pour être chargé."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1514,10 +1514,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"Pour imprimer directement sur votre imprimante sur le réseau, assurez-vous que votre imprimante est connectée au réseau via un câble réseau ou en connectant votre imprimante à votre réseau Wi-Fi. Si vous ne connectez pas Cura avec votre imprimante, vous pouvez utiliser une clé USB pour transférer les fichiers g-code sur votre imprimante.\n"
|
||||
"\n"
|
||||
"Sélectionnez votre imprimante dans la liste ci-dessous :"
|
||||
msgstr "Pour imprimer directement sur votre imprimante sur le réseau, assurez-vous que votre imprimante est connectée au réseau via un câble réseau ou en connectant votre imprimante à votre réseau Wi-Fi. Si vous ne connectez pas Cura avec votre imprimante, vous pouvez utiliser une clé USB pour transférer les fichiers g-code sur votre imprimante.\n\nSélectionnez votre imprimante dans la liste ci-dessous :"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1631,7 +1628,7 @@ msgstr "%1 n'est pas configurée pour héberger un groupe d'imprimantes connect
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Ouvre la page des tâches d'impression avec votre navigateur web."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1666,7 +1663,7 @@ msgstr "Connexion avec l'imprimante perdue"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Désactivé"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1681,12 +1678,12 @@ msgstr "Terminé"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "En pause"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Reprise"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1828,12 +1825,12 @@ msgstr "Type de ligne"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Taux d'alimentation"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Épaisseur de la couche"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1883,12 +1880,12 @@ msgstr "Paroi interne"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "min."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "max."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2126,7 +2123,7 @@ msgstr "%1 sur %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Le chargement d'un projet effacera tous les modèles sur le plateau."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2169,7 +2166,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "Ce plug-in contient une licence.\nVous devez approuver cette licence pour installer ce plug-in.\nAcceptez-vous les clauses ci-dessous ?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2184,7 +2181,7 @@ msgstr "Refuser"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Accord utilisateur"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2434,9 +2431,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"Vous avez personnalisé certains paramètres du profil.\n"
|
||||
"Souhaitez-vous conserver ces changements, ou les annuler ?"
|
||||
msgstr "Vous avez personnalisé certains paramètres du profil.\nSouhaitez-vous conserver ces changements, ou les annuler ?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3067,7 +3062,7 @@ msgstr "À propos de Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "version : %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3079,9 +3074,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura a été développé par Ultimaker B.V. en coopération avec la communauté Ultimaker.\n"
|
||||
"Cura est fier d'utiliser les projets open source suivants :"
|
||||
msgstr "Cura a été développé par Ultimaker B.V. en coopération avec la communauté Ultimaker.\nCura est fier d'utiliser les projets open source suivants :"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3166,7 +3159,7 @@ msgstr "Bibliothèque de découpe polygone"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Bibliothèque Python HTTP"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3186,7 +3179,7 @@ msgstr "Profil :"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "Aucun profil disponible"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3194,10 +3187,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"Certaines valeurs de paramètre / forçage sont différentes des valeurs enregistrées dans le profil. \n"
|
||||
"\n"
|
||||
"Cliquez pour ouvrir le gestionnaire de profils."
|
||||
msgstr "Certaines valeurs de paramètre / forçage sont différentes des valeurs enregistrées dans le profil. \n\nCliquez pour ouvrir le gestionnaire de profils."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3235,10 +3225,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"Certains paramètres masqués utilisent des valeurs différentes de leur valeur normalement calculée.\n"
|
||||
"\n"
|
||||
"Cliquez pour rendre ces paramètres visibles."
|
||||
msgstr "Certains paramètres masqués utilisent des valeurs différentes de leur valeur normalement calculée.\n\nCliquez pour rendre ces paramètres visibles."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,10 +3253,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"Ce paramètre possède une valeur qui est différente du profil.\n"
|
||||
"\n"
|
||||
"Cliquez pour restaurer la valeur du profil."
|
||||
msgstr "Ce paramètre possède une valeur qui est différente du profil.\n\nCliquez pour restaurer la valeur du profil."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3277,10 +3261,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"Ce paramètre est normalement calculé mais il possède actuellement une valeur absolue définie.\n"
|
||||
"\n"
|
||||
"Cliquez pour restaurer la valeur calculée."
|
||||
msgstr "Ce paramètre est normalement calculé mais il possède actuellement une valeur absolue définie.\n\nCliquez pour restaurer la valeur calculée."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3292,51 +3273,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"Configuration de l'impression désactivée\n"
|
||||
"Les fichiers G-Code ne peuvent pas être modifiés"
|
||||
msgstr "Configuration de l'impression désactivée\nLes fichiers G-Code ne peuvent pas être modifiés"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00h 00min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Spécification de temps</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Spécification de coût"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Total :"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3461,27 +3440,27 @@ msgstr "Préchauffez le plateau avant l'impression. Vous pouvez continuer à aju
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Contrôle de l'imprimante"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Position de coupe"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Distance de coupe"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3526,7 +3505,7 @@ msgstr "&Quitter"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Réinitialiser la position de la caméra"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3768,7 +3747,7 @@ msgstr "Importer tout comme modèles"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3925,7 +3904,7 @@ msgstr "Hauteur de la couche"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Un profil personnalisé est actuellement actif. Pour activer le curseur de qualité, choisissez un profil de qualité par défaut dans l'onglet Personnaliser"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3945,7 +3924,7 @@ msgstr "Accélérer"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "Vous avez modifié certains paramètres du profil. Si vous souhaitez les modifier, allez dans le mode Personnaliser."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4037,7 +4016,7 @@ msgstr "Matériau"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Vérifier la compatibilité</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4177,12 +4156,12 @@ msgstr "Intégration SolidWorks"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Fournit la Vue simulation."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Vue simulation"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4267,12 +4246,12 @@ msgstr "Mise à niveau de version, de 2.7 vers 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Met à niveau les configurations, de Cura 3.0 vers Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Mise à niveau de version, de 3.0 vers 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4337,12 +4316,12 @@ msgstr "Outil de paramètres par modèle"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Vous aide à installer un bouton « exporter vers Cura » dans Siemens NX."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integration"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4407,12 +4386,12 @@ msgstr "Générateur 3MF"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Demander à l'utilisateur une fois s'il appose son accord à notre licence"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "UserAgreement"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4454,13 +4433,13 @@ msgstr "Lecteur de profil Cura"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Pour s'assurer que votre {machine_name} est pourvue des dernières fonctionnalités, il est recommandé de mettre régulièrement à jour le firmware. Cela peut se faire sur la {machine_name} (lorsque connectée au réseau) ou via USB."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Vue en couches"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Vue en couches"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Vue en couches"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Vue en couches"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4562,9 +4541,9 @@ msgstr "Lecteur de profil Cura"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Permet la vue en couches."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Vue en couches"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Vue en couches"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4885,9 +4864,9 @@ msgstr "Lecteur de profil Cura"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Fournit la prise en charge de l'importation de profils à partir de fichiers g-code."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Vue en couches"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Vue en couches"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-11 14:31+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: French\n"
|
||||
"Language: fr_FR\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: French\n"
|
||||
"Language: fr_FR\n"
|
||||
|
@ -56,9 +56,7 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Commandes Gcode à exécuter au tout début, séparées par \n"
|
||||
"."
|
||||
msgstr "Commandes Gcode à exécuter au tout début, séparées par \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -70,9 +68,7 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Commandes Gcode à exécuter à la toute fin, séparées par \n"
|
||||
"."
|
||||
msgstr "Commandes Gcode à exécuter à la toute fin, séparées par \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -612,27 +608,27 @@ msgstr "La hauteur de la couche initiale en mm. Une couche initiale plus épaiss
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Tolérance à la découpe"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Comment découper des couches avec des surfaces diagonales. Les zones d'une couche peuvent être générées en fonction de l'endroit où le milieu de la couche croise la surface (Milieu). Alternativement, chaque couche peut posséder des zones situées à l'intérieur du volume à travers toute la hauteur de la couche (Exclusif), ou une couche peut avoir des zones situées à l'intérieur à tout endroit dans la couche (Inclusif). L'option Exclusif permet de retenir le plus de détails, Inclusif permet d'obtenir une adaptation optimale et Milieu demande le moins de temps de traitement."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Milieu"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Exclusif"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Inclusif"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -807,7 +803,7 @@ msgstr "Le train d'extrudeuse utilisé pour l'impression des parois externes. Ce
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Extrudeuse de paroi interne"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1387,7 +1383,7 @@ msgstr "Motif de remplissage"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Motif du matériau de remplissage de l'impression. La ligne et le remplissage en zigzag changent de sens à chaque alternance de couche, réduisant ainsi les coûts matériels. Les motifs en grille, en triangle, trihexagonaux, cubiques, octaédriques, quart cubiques et concentriques sont entièrement imprimés sur chaque couche. Les remplissages cubique, quart cubique et octaédrique changent à chaque couche afin d'offrir une répartition plus égale de la solidité dans chaque direction."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1407,7 +1403,7 @@ msgstr "Triangles"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Trihexagonal"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1462,7 +1458,7 @@ msgstr "Relier les lignes de remplissage"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Relie les extrémités où le motif de remplissage touche la paroi interne, à l'aide d'une ligne épousant la forme de la paroi interne. Activer ce paramètre peut faire mieux coller le remplissage aux parois, et réduit les effets du remplissage sur la qualité des surfaces verticales. Désactiver ce paramètre diminue la quantité de matière utilisée."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1477,22 +1473,22 @@ msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. L
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Remplissage Décalage X"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "Le motif de remplissage est décalé de cette distance sur l'axe X."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Remplissage Décalage Y"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "Le motif de remplissage est décalé de cette distance sur l'axe Y."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1807,22 +1803,22 @@ msgstr "Ajuste le diamètre du filament utilisé. Faites correspondre cette vale
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Tendance à l'adhérence"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Tendance à l'adhérence de la surface."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Énergie de la surface"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Énergie de la surface."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3554,7 +3550,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "La distance horizontale entre la jupe et la première couche de l’impression.\nIl s’agit de la distance minimale séparant la jupe de l’objet. Si la jupe a d’autres lignes, celles-ci s’étendront vers l’extérieur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3614,7 +3610,7 @@ msgstr "Lissage de radeau"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Ce paramètre définit combien d'angles intérieurs sont arrondis dans le contour de radeau. Les angles internes sont arrondis en un demi-cercle avec un rayon égal à la valeur indiquée ici. Ce paramètre élimine également les cavités dans le contour de radeau qui sont d'une taille inférieure à ce cercle."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4089,12 +4085,12 @@ msgstr "Normalement, Cura essaye de raccommoder les petits trous dans le maillag
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Résolution maximum"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "Taille minimum d'un segment de ligne après découpage. Si vous augmentez cette valeur, la maille aura une résolution plus faible. Cela peut permettre à l'imprimante de suivre la vitesse à laquelle elle doit traiter le G-Code et augmentera la vitesse de découpe en enlevant des détails de la maille que l'imprimante ne peut pas traiter de toute manière."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4129,12 +4125,12 @@ msgstr "Passe aux volumes d'intersection de maille qui appartiennent à chaque c
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Supprimer les premières couches vides"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Supprimer les couches vides sous la première couche imprimée si elles sont présentes. Le fait de désactiver ce paramètre peut entraîner l'apparition de premières couches vides si le paramètre Tolérance à la découpe est défini sur Exclusif ou Milieu."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4664,22 +4660,22 @@ msgstr "Distance moyenne entre les points ajoutés aléatoirement sur chaque seg
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Décalage d'extrusion max. pour compensation du débit"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "Distance de compensation maximum en mm."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Facteur de compensation du débit"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "Facteur de multiplication pour le débit -> translation de la distance."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4831,9 +4827,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"Distance d’un déplacement ascendant qui est extrudé à mi-vitesse.\n"
|
||||
"Cela peut permettre une meilleure adhérence aux couches précédentes sans surchauffer le matériau dans ces couches. Uniquement applicable à l'impression filaire."
|
||||
msgstr "Distance d’un déplacement ascendant qui est extrudé à mi-vitesse.\nCela peut permettre une meilleure adhérence aux couches précédentes sans surchauffer le matériau dans ces couches. Uniquement applicable à l'impression filaire."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Italian\n"
|
||||
"Language: it_IT\n"
|
||||
|
@ -91,7 +91,7 @@ msgstr "File inviato a Doodle3D Connect"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Apri Connect..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -141,7 +141,7 @@ msgstr "Impossibile avviare un nuovo processo di stampa perché la stampante è
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Stampante non disponibile"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -593,7 +593,7 @@ msgstr "Collega tramite rete"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "Sono disponibili nuove funzioni per la {machine_name}! Si consiglia di aggiornare il firmware sulla stampante."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -604,7 +604,7 @@ msgstr "Nuovo firmware %s disponibile"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Modalità di aggiornamento"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -639,7 +639,7 @@ msgstr "Errore durante l'avvio di %s!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Vista simulazione"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -649,7 +649,7 @@ msgstr "Cura non visualizza in modo accurato gli strati se la funzione Wire Prin
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Vista simulazione"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -730,7 +730,7 @@ msgstr "Impossibile eseguire il sezionamento con le impostazioni attuali. Le seg
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Impossibile eseguire il sezionamento a causa di alcune impostazioni per modello. Le seguenti impostazioni presentano errori su uno o più modelli: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -765,25 +765,25 @@ msgstr "Configura impostazioni per modello"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Installazione"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Impossibile copiare i file di plugin Siemens NX. Controllare UGII_USER_DIR. Non è assegnato ad alcuna directory."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Installato correttamente plugin Siemens NX Cura."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Impossibile copiare i file di plugin Siemens NX. Controllare UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Impossibile installare plugin Siemens NX. Impossibile impostare la variabile di ambiente UGII_USER_DIR per Siemens NX."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -946,7 +946,7 @@ msgstr "Altro"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Sconosciuto"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1011,12 +1011,12 @@ msgstr "Materiale personalizzato"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Globale"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Non sottoposto a override"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1065,7 +1065,7 @@ msgstr "Profilo esportato su <filename>{0}</filename>"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "Esportazione riuscita"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1137,85 +1137,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>Si è verificata un'eccezione irreversibile. Si prega di inviarci questo crash report per risolvere il problema</p></b> \n <p>Utilizzare il pulsante \"Invia report\" per inviare un report sui bug automaticamente ai nostri server</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Informazioni di sistema"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Sconosciuto"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versione Cura:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Piattaforma:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versione Qt:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versione PyQt:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Versione OpenGL: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Fornitore OpenGL: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Renderer OpenGL: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Analisi eccezione"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Registri"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Descrizione utente"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Invia report"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1253,7 +1253,7 @@ msgstr "Impossibile aprire altri file durante il caricamento del codice G. Impor
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "Il modello selezionato è troppo piccolo per il caricamento."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1514,10 +1514,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"Per stampare direttamente sulla stampante in rete, verificare che la stampante desiderata sia collegata alla rete mediante un cavo di rete o mediante collegamento alla rete WIFI. Se si collega Cura alla stampante, è comunque possibile utilizzare una chiavetta USB per trasferire i file codice G alla stampante.\n"
|
||||
"\n"
|
||||
"Selezionare la stampante dall’elenco seguente:"
|
||||
msgstr "Per stampare direttamente sulla stampante in rete, verificare che la stampante desiderata sia collegata alla rete mediante un cavo di rete o mediante collegamento alla rete WIFI. Se si collega Cura alla stampante, è comunque possibile utilizzare una chiavetta USB per trasferire i file codice G alla stampante.\n\nSelezionare la stampante dall’elenco seguente:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1631,7 +1628,7 @@ msgstr "%1 non è configurata per supportare la connessione di un gruppo di stam
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Apre la pagina processi di stampa con il browser web predefinito."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1666,7 +1663,7 @@ msgstr "Persa connessione con la stampante"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Disabilitato"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1681,12 +1678,12 @@ msgstr "Terminato"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "In pausa"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Ripresa"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1828,12 +1825,12 @@ msgstr "Tipo di linea"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Velocità"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Spessore strato"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1883,12 +1880,12 @@ msgstr "Parete interna"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "min."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "max."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2126,7 +2123,7 @@ msgstr "%1 su %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Il caricamento di un progetto annulla tutti i modelli sul piano di stampa."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2169,7 +2166,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "Questo plugin contiene una licenza.\nÈ necessario accettare questa licenza per poter installare il plugin.\nAccetti i termini sotto riportati?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2184,7 +2181,7 @@ msgstr "Non accetto"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Contratto di licenza"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2434,9 +2431,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"Sono state personalizzate alcune impostazioni del profilo.\n"
|
||||
"Mantenere o eliminare tali impostazioni?"
|
||||
msgstr "Sono state personalizzate alcune impostazioni del profilo.\nMantenere o eliminare tali impostazioni?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3067,7 +3062,7 @@ msgstr "Informazioni su Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "versione: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3079,9 +3074,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura è stato sviluppato da Ultimaker B.V. in cooperazione con la comunità.\n"
|
||||
"Cura è orgogliosa di utilizzare i seguenti progetti open source:"
|
||||
msgstr "Cura è stato sviluppato da Ultimaker B.V. in cooperazione con la comunità.\nCura è orgogliosa di utilizzare i seguenti progetti open source:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3166,7 +3159,7 @@ msgstr "Libreria ritaglio poligono"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Libreria Python HTTP"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3186,7 +3179,7 @@ msgstr "Profilo:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "Nessun profilo disponibile"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3194,10 +3187,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"Alcuni valori di impostazione/esclusione sono diversi dai valori memorizzati nel profilo.\n"
|
||||
"\n"
|
||||
"Fare clic per aprire la gestione profili."
|
||||
msgstr "Alcuni valori di impostazione/esclusione sono diversi dai valori memorizzati nel profilo.\n\nFare clic per aprire la gestione profili."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3235,10 +3225,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"Alcune impostazioni nascoste utilizzano valori diversi dal proprio valore normale calcolato.\n"
|
||||
"\n"
|
||||
"Fare clic per rendere visibili queste impostazioni."
|
||||
msgstr "Alcune impostazioni nascoste utilizzano valori diversi dal proprio valore normale calcolato.\n\nFare clic per rendere visibili queste impostazioni."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,10 +3253,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"Questa impostazione ha un valore diverso dal profilo.\n"
|
||||
"\n"
|
||||
"Fare clic per ripristinare il valore del profilo."
|
||||
msgstr "Questa impostazione ha un valore diverso dal profilo.\n\nFare clic per ripristinare il valore del profilo."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3277,10 +3261,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"Questa impostazione normalmente viene calcolata, ma attualmente ha impostato un valore assoluto.\n"
|
||||
"\n"
|
||||
"Fare clic per ripristinare il valore calcolato."
|
||||
msgstr "Questa impostazione normalmente viene calcolata, ma attualmente ha impostato un valore assoluto.\n\nFare clic per ripristinare il valore calcolato."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3292,51 +3273,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"Impostazione di stampa disabilitata\n"
|
||||
"I file codice G non possono essere modificati"
|
||||
msgstr "Impostazione di stampa disabilitata\nI file codice G non possono essere modificati"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00h 00min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Indicazione del tempo</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Indicazione di costo"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Totale:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3461,27 +3440,27 @@ msgstr "Riscalda il piano prima della stampa. È possibile continuare a regolare
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Comando stampante"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Posizione Jog"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Distanza Jog"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3526,7 +3505,7 @@ msgstr "E&sci"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Ripristina la posizione della telecamera"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3768,7 +3747,7 @@ msgstr "Importa tutto come modelli"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3925,7 +3904,7 @@ msgstr "Altezza dello strato"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Un profilo personalizzato è attualmente attivo. Per attivare il cursore qualità, selezionare un profilo di qualità predefinito nella scheda Personalizza"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3945,7 +3924,7 @@ msgstr "Più veloce"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "Sono state modificate alcune impostazioni del profilo. Per modificarle, andare alla modalità personalizzata."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4037,7 +4016,7 @@ msgstr "Materiale"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Controllo compatibilità</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4177,12 +4156,12 @@ msgstr "Integrazione SolidWorks"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Fornisce la vista di simulazione."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Vista simulazione"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4267,12 +4246,12 @@ msgstr "Aggiornamento della versione da 2.7 a 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Aggiorna le configurazioni da Cura 3.0 a Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Aggiornamento della versione da 3.0 a 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4337,12 +4316,12 @@ msgstr "Utilità impostazioni per modello"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Consente di installare un pulsante 'Esporta in Cura' in Siemens NX."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Integrazione Siemens NX"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4407,12 +4386,12 @@ msgstr "Writer 3MF"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Chiedere una volta all'utente se accetta la nostra licenza"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "Contratto di licenza"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4454,13 +4433,13 @@ msgstr "Lettore profilo Cura"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Per verificare che la vostra {machine_name} sia dotata delle funzionalità più recenti, si consiglia di aggiornare periodicamente il firmware. Questo può essere fatto sulla {machine_name} (quando connessa alla rete) o via USB."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Visualizzazione strato"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Visualizzazione strato"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Visualizzazione strato"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Visualizzazione strato"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4562,9 +4541,9 @@ msgstr "Lettore profilo Cura"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Fornisce la visualizzazione degli strati."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Visualizzazione strato"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Visualizzazione strato"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4885,9 +4864,9 @@ msgstr "Lettore profilo Cura"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Fornisce supporto per l'importazione di profili da file G-Code."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Visualizzazione strato"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Visualizzazione strato"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-11 14:31+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Italian\n"
|
||||
"Language: it_IT\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Italian\n"
|
||||
"Language: it_IT\n"
|
||||
|
@ -56,9 +56,7 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"I comandi codice G da eseguire all’avvio, separati da \n"
|
||||
"."
|
||||
msgstr "I comandi codice G da eseguire all’avvio, separati da \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -70,9 +68,7 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"I comandi codice G da eseguire alla fine, separati da \n"
|
||||
"."
|
||||
msgstr "I comandi codice G da eseguire alla fine, separati da \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -612,27 +608,27 @@ msgstr "Indica l’altezza dello strato iniziale in mm. Uno strato iniziale più
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Tolleranza di sezionamento"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Modalità di sezionamento di strati con superfici diagonali. Le aree di uno strato possono essere generate in base al punto in cui la parte intermedia dello strato interseca la superficie (intermedia). In alternativa le aree di ciascuno strato possono ricadere all'interno del volume per tutta l'altezza dello strato (Esclusiva) ovvero possono cadere in qualsiasi punto all'interno dello strato (Inclusiva). La tolleranza esclusiva mantiene il maggior numero di dettagli, la tolleranza inclusiva è la più idonea, mentre la tolleranza intermedia richiede il minor tempo di processo."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Intermedia"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Esclusiva"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Inclusiva"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -807,7 +803,7 @@ msgstr "Treno estrusore utilizzato per stampare la parete esterna. Si utilizza n
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Estrusore parete interna"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1387,7 +1383,7 @@ msgstr "Configurazione di riempimento"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Configurazione del materiale di riempimento della stampa. Il riempimento a linea e a zig zag cambia direzione su strati alternati, riducendo il costo del materiale. Le configurazioni a griglia, a triangolo, tri-esagonali, cubiche, ottagonali, a quarto di cubo, incrociate e concentriche sono stampate completamente su ogni strato. Le configurazioni cubiche, a quarto di cubo e ottagonali variano per ciascuno strato per garantire una più uniforme distribuzione della forza in ogni direzione."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1407,7 +1403,7 @@ msgstr "Triangoli"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Tri-esagonale"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1462,7 +1458,7 @@ msgstr "Collegamento delle linee di riempimento"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Collegare le estremità nel punto in cui il riempimento incontra la parete interna utilizzando una linea che segue la forma della parete interna. L'abilitazione di questa impostazione può far meglio aderire il riempimento alle pareti riducendo nel contempo gli effetti del riempimento sulla qualità delle superfici verticali. La disabilitazione di questa impostazione consente di ridurre la quantità di materiale utilizzato."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1477,22 +1473,22 @@ msgstr "Un elenco di direzioni linee intere. Gli elementi dall’elenco sono uti
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Offset X riempimento"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "Il riempimento si scosta di questa distanza lungo l'asse X."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Offset Y riempimento"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "Il riempimento si scosta di questa distanza lungo l'asse Y."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1807,22 +1803,22 @@ msgstr "Regolare il diametro del filamento utilizzato. Abbinare questo valore al
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Tendenza di adesione"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Tendenza di adesione superficiale."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Energia superficiale"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Energia superficiale."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3554,7 +3550,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "Indica la distanza orizzontale tra lo skirt ed il primo strato della stampa.\nQuesta è la distanza minima. Più linee di skirt aumenteranno tale distanza."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3614,7 +3610,7 @@ msgstr "Smoothing raft"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Questa impostazione controlla l'entità dell'arrotondamento degli angoli interni sul profilo raft. Gli angoli interni vengono arrotondati a semicerchio con un raggio pari al valore indicato. Questa impostazione elimina inoltre i fori sul profilo raft più piccoli di tale cerchio."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4089,12 +4085,12 @@ msgstr "Di norma Cura cerca di \"ricucire\" piccoli fori nella maglia e di rimuo
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Risoluzione massima"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "La dimensione minima di un segmento di linea dopo il sezionamento. Se tale dimensione aumenta, la maglia avrà una risoluzione inferiore. Questo può consentire alla stampante di mantenere la velocità per processare il g-code ed aumenterà la velocità di sezionamento eliminando i dettagli della maglia che non è comunque in grado di processare."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4129,12 +4125,12 @@ msgstr "Selezionare quali volumi di intersezione maglie appartengono a ciascuno
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Rimuovere i primi strati vuoti"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Rimuovere gli strati vuoti sotto il primo strato stampato, se presenti. La disabilitazione di questa impostazione può provocare la presenza di primi strati vuoti, se l'impostazione di Tolleranza di sezionamento è impostata su Esclusiva o Intermedia."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4664,22 +4660,22 @@ msgstr "Indica la distanza media tra i punti casuali introdotti su ciascun segme
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Offset massimo dell'estrusione di compensazione del flusso"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "La massima distanza in mm da compensare."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Fattore di compensazione del flusso"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "Il fattore di moltiplicazione per il flusso -> traslazione distanza."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4831,9 +4827,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"Indica la distanza di uno spostamento verso l'alto con estrusione a velocità dimezzata.\n"
|
||||
"Ciò può garantire una migliore adesione agli strati precedenti, senza eccessivo riscaldamento del materiale su questi strati. Applicabile solo alla funzione Wire Printing."
|
||||
msgstr "Indica la distanza di uno spostamento verso l'alto con estrusione a velocità dimezzata.\nCiò può garantire una migliore adesione agli strati precedenti, senza eccessivo riscaldamento del materiale su questi strati. Applicabile solo alla funzione Wire Printing."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-11-17 15:52+0100\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: TEAM\n"
|
||||
"Language: xx_XX\n"
|
||||
|
@ -93,7 +93,7 @@ msgstr "Doodle3D Connectにファイル送信完了"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Connectを開いています..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -145,7 +145,7 @@ msgstr "新しいプリントジョブをはじめることができません。
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "プリンターが利用できません"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -597,7 +597,7 @@ msgstr "ネットワーク上にて接続"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "{machine_name} で利用可能な新しい機能があります。プリンターのファームウェアをアップデートしてください。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -608,7 +608,7 @@ msgstr "新しい利用可能な%sファームウェアのアップデートが
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "アップデートの仕方"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -643,7 +643,7 @@ msgstr "%sを開始中にエラーが発生"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "シミュレーションビュー"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -653,7 +653,7 @@ msgstr "Curaはワイヤープリンティング設定中には正確にレイ
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "シミュレーションビュー"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -734,7 +734,7 @@ msgstr "現在の設定でスライスが完了できません。以下の設定
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "モデル別の設定があるためスライスできません。1つまたは複数のモデルで以下の設定にエラーが発生しました:{error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -769,25 +769,25 @@ msgstr "各モデル構成設定"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "インストール"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Siemens NXプラグインファイルのコピーに失敗しました。UGII_USER_DIRを確認してください。ディレクトリに割り当てられていません。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Curaプラグインを正常にインストールしました。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Siemens NXプラグインファイルのコピーに失敗しました。UGII_USER_DIRを確認してください。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Siemens NXプラグインのインストールに失敗しました。Siemens NX用の環境変数UGII_USER_DIRが設定できませんでした。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -950,7 +950,7 @@ msgstr "他"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "不明"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1015,12 +1015,12 @@ msgstr "カスタムフィラメント"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "グローバル"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "上書きできません"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1069,7 +1069,7 @@ msgstr "<filename>{0}</filename>にプロファイルを書き出しました。
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "書き出し完了"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1141,85 +1141,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>致命的な例外が発生しました。問題解決のためこのクラッシュレポートを送信してください</p></b>\n <p>「レポート送信」ボタンを使用してバグレポートが自動的にサーバーに送られるようにしてください</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "システム情報"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "不明"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Curaバージョン:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>プラットフォーム:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Qtバージョン:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>PyQtバージョン:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGLバージョン: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGLベンダー: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGLレンダラー: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "例外トレースバック"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "ログ"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "ユーザー詳細"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "レポート送信"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1257,7 +1257,7 @@ msgstr "G-codeを読み込み中は他のファイルを開くことができま
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "選択したモデルは読み込むのに小さすぎます。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1632,7 +1632,7 @@ msgstr "%1は、繋がっているUltimaker3プリンターのグループをホ
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "デフォルトのウェブブラウザで印刷ジョブページを開きます。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1667,7 +1667,7 @@ msgstr "プリンターへの接続が切断されました。"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "無効"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1682,12 +1682,12 @@ msgstr "終了"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "一時停止"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "再開"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1829,12 +1829,12 @@ msgstr "ラインタイプ"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "送り速度"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "レイヤーの厚さ"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1884,12 +1884,12 @@ msgstr "インナーウォール"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "最小"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "最大"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2129,7 +2129,7 @@ msgstr "%2のうち%1"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "プロジェクトを読み込むとビルドプレート上のすべてのモデルがクリアされます。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2172,7 +2172,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "このプラグインにはライセンスが含まれています。\nこのプラグインをインストールするにはこのライセンスに同意する必要があります。\n下の利用規約に同意しますか?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2187,7 +2187,7 @@ msgstr "拒否する"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "ユーザー用使用許諾契約"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -3071,7 +3071,7 @@ msgstr "Curaについて"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "バージョン: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3168,7 +3168,7 @@ msgstr "ポリゴンクリッピングライブラリー"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Python HTTPライブラリー"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3188,7 +3188,7 @@ msgstr "プロファイル:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "利用可能なプロファイルがありません"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3196,9 +3196,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"いくらかの設定プロファイルにある値とことなる場合無効にします。\n"
|
||||
"プロファイルマネージャーをクリックして開いてください。"
|
||||
msgstr "いくらかの設定プロファイルにある値とことなる場合無効にします。\nプロファイルマネージャーをクリックして開いてください。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3236,9 +3234,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"いくらかの非表示設定は通常の計算された値と異なる値を使用します。\n"
|
||||
"表示されるようにクリックしてください。"
|
||||
msgstr "いくらかの非表示設定は通常の計算された値と異なる値を使用します。\n表示されるようにクリックしてください。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,9 +3262,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"この設定にプロファイルと異なった値があります。\n"
|
||||
"プロファイルの値を戻すためにクリックしてください。"
|
||||
msgstr "この設定にプロファイルと異なった値があります。\nプロファイルの値を戻すためにクリックしてください。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3276,9 +3270,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"このセッティングは通常計算されます、今は絶対値に固定されています。\n"
|
||||
"計算された値に変更するためにクリックを押してください。"
|
||||
msgstr "このセッティングは通常計算されます、今は絶対値に固定されています。\n計算された値に変更するためにクリックを押してください。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3290,51 +3282,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"プリントセットアップが無効\n"
|
||||
"G-codeファイルを修正することができません。"
|
||||
msgstr "プリントセットアップが無効\nG-codeファイルを修正することができません。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00時間 00分"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>時間仕様</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "コスト仕様"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "合計:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3366,14 +3356,14 @@ msgstr "自動選択: %1"
|
|||
msgctxt "@label"
|
||||
msgid "Print Selected Model With:"
|
||||
msgid_plural "Print Selected Models With:"
|
||||
msgstr[0] ""
|
||||
msgstr[0] "選択したモデルで印刷:"
|
||||
|
||||
# can’t eneter japanese texts
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Menus/ContextMenu.qml:83
|
||||
msgctxt "@title:window"
|
||||
msgid "Multiply Selected Model"
|
||||
msgid_plural "Multiply Selected Models"
|
||||
msgstr[0] ""
|
||||
msgstr[0] "選択した複数のモデル"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Menus/ContextMenu.qml:108
|
||||
msgctxt "@label"
|
||||
|
@ -3459,27 +3449,27 @@ msgstr "プリント開始前にベッドを加熱します。加熱中もプリ
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "プリンターコントロール"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "ジョグの位置"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "ジョグの距離"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3524,7 +3514,7 @@ msgstr "&やめる"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&カメラ位置のリセット"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3586,21 +3576,21 @@ msgstr "アバウト..."
|
|||
msgctxt "@action:inmenu menubar:edit"
|
||||
msgid "Delete &Selected Model"
|
||||
msgid_plural "Delete &Selected Models"
|
||||
msgstr[0] ""
|
||||
msgstr[0] "&選択したモデルを削除"
|
||||
|
||||
# can’t enter japanese text
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:208
|
||||
msgctxt "@action:inmenu menubar:edit"
|
||||
msgid "Center Selected Model"
|
||||
msgid_plural "Center Selected Models"
|
||||
msgstr[0] ""
|
||||
msgstr[0] "選択したモデルを中央に移動"
|
||||
|
||||
# can’t edit japanese text
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:217
|
||||
msgctxt "@action:inmenu menubar:edit"
|
||||
msgid "Multiply Selected Model"
|
||||
msgid_plural "Multiply Selected Models"
|
||||
msgstr[0] ""
|
||||
msgstr[0] "選択した複数のモデル"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:226
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3766,7 +3756,7 @@ msgstr "すべてをモデルとして取り入れる"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3923,7 +3913,7 @@ msgstr "レイヤーの高さ"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "カスタムプロファイルが有効になっています。品質スライダーを有効にするには、カスタムタブでデフォルトの品質プロファイルを選択してください"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3943,7 +3933,7 @@ msgstr "早く"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "プロファイルの設定がいくつか変更されました。変更を有効にするにはカスタムモードに移動してください。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4035,7 +4025,7 @@ msgstr "フィラメント"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>互換性の確認</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4175,12 +4165,12 @@ msgstr "ソリッドワークスインタグレーション"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "シミュレーションビューを提供します。"
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "シミュレーションビュー"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4265,12 +4255,12 @@ msgstr "2.7から3.0にバージョンアップグレート"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Cura 3.0からCura 3.1のコンフィグレーションアップグレート"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "3.0から3.1にバージョンアップグレート"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4335,12 +4325,12 @@ msgstr "各モデル設定ツール"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Siemens NXの「Curaにエクスポート」ボタンをインストールできるようにします。"
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integration"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4405,12 +4395,12 @@ msgstr "3MFリーダー"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "ライセンスに同意するかどうかユーザーに1回だけ確認する"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "UserAgreement"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4452,13 +4442,13 @@ msgstr "Curaプロファイルリーダー"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "{machine_name}が最新の機能を得るために、定期的にファームウェアをアップデートすることをお勧めします。{machine_name}(ネットワーク上で接続)またはUSBにて行ってください。 "
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "レイヤービュー"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "レイヤービュー"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "レイヤービュー"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "レイヤービュー"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4560,6 +4550,6 @@ msgstr "Curaプロファイルリーダー"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "レイヤービューを供給する"
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "レイヤービュー"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "レイヤービュー"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-10-02 17:55+0900\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Brule\n"
|
||||
"Language-Team: Brule\n"
|
||||
"Language: ja_JP\n"
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.1\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-11-14 22:13+0900\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Brule\n"
|
||||
"Language-Team: Brule\n"
|
||||
"Language: ko_KR\n"
|
||||
|
@ -93,7 +93,7 @@ msgstr "Doodle3D Connect에 파일 전송"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Connect 열기..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -143,7 +143,7 @@ msgstr "프린터가 사용 중이거나 연결되어 있지 않아 새 작업
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "프린터 사용 불가"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -595,7 +595,7 @@ msgstr "네트워크를 통해 연결"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "{machine_name}의 새로운 기능을 사용할 수 있습니다! 프린터의 펌웨어를 업데이트하는 것이 좋습니다."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -606,7 +606,7 @@ msgstr "새로운 펌웨어를 사용할 수 있습니다."
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "업데이트 방법"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -641,7 +641,7 @@ msgstr "시작하는 도중 오류가 발생했습니다!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "시뮬레이션 보기"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -651,7 +651,7 @@ msgstr "와이어 인쇄가 활성화되어있을 때 Cura는 레이어를 정
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "시뮬레이션 보기"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -732,7 +732,7 @@ msgstr "현재 설정으로 슬라이스 할 수 없습니다. 다음 설정에
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "일부 모델별 설정으로 인해 슬라이스할 수 없습니다. 하나 이상의 모델에서 다음 설정에 오류가 있습니다. {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -767,25 +767,25 @@ msgstr "모델 별 설정 구성"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "설치"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX 플러그인 파일을 복사하지 못했습니다. UGII_USER_DIR을 확인하십시오. 디렉터리에 할당되지 않았습니다."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Cura 플러그인을 성공적으로 설치했습니다."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX 플러그인 파일을 복사하지 못했습니다. UGII_USER_DIR을 확인하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX 플러그인을 설치하지 못했습니다. Siemens NX의 환경 변수 UGII_USER_DIR을 설정할 수 없습니다."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -948,7 +948,7 @@ msgstr "다른"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "알 수 없음"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1013,12 +1013,12 @@ msgstr "맞춤 소재"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "전역"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "재정의되지 않음"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1067,7 +1067,7 @@ msgstr "프로파일을 ?에 내보냅니다"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "내보내기 완료"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1139,85 +1139,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>치명적인 예외가 발생했습니다. 문제를 해결할 수 있도록 이 충돌 보고서를 보내주십시오.</p></b>\n <p>\"보고서 전송\" 버튼을 사용하면 버그 보고서가 서버에 자동으로 보고됩니다.</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "시스템 정보"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "알 수 없음"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Cura 버전:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>플랫폼:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Qt 버전:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>PyQt 버전:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL 버전: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL 공급업체: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL Renderer: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "예외 역추적"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "로그"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "사용자 설명"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "보고서 전송"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1255,7 +1255,7 @@ msgstr "G 코드가 로드되어 있으면 다른 파일을 열 수 없습니다
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "선택한 모델이 너무 작아서 로드할 수 없습니다."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1516,10 +1516,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
":네트워크를 통해 프린터로 직접 인쇄하려면 네트워크 케이블을 사용하거나 프린터를 WIFI 네트워크에 연결하여 프린터가 네트워크에 연결되어 있는지 확인하십시오. Cura를 프린터에 연결하지 않은 경우에도 USB 드라이브를 사용하여 g 코드 파일을 프린터로 전송할 수 있습니다\n"
|
||||
"\n"
|
||||
"아래 목록에서 프린터를 선택하십시오"
|
||||
msgstr ":네트워크를 통해 프린터로 직접 인쇄하려면 네트워크 케이블을 사용하거나 프린터를 WIFI 네트워크에 연결하여 프린터가 네트워크에 연결되어 있는지 확인하십시오. Cura를 프린터에 연결하지 않은 경우에도 USB 드라이브를 사용하여 g 코드 파일을 프린터로 전송할 수 있습니다\n\n아래 목록에서 프린터를 선택하십시오"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1633,7 +1630,7 @@ msgstr "?은 연결된 Ultimaker 3에 연결된 프린터 그룹을 호스트하
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "인쇄 작업 페이지를 기본 웹 브라우저로 엽니다."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1668,7 +1665,7 @@ msgstr "프린터와의 연결이 끊어졌습니다"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "해제됨"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1683,12 +1680,12 @@ msgstr "끝마친"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "일시 중지됨"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "다시 시작"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1830,12 +1827,12 @@ msgstr "라인 유형"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "이송 속도"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "레이어 두께"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1885,12 +1882,12 @@ msgstr "내벽"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "최소"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "최대"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2123,12 +2120,12 @@ msgstr "표시 설정 :"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/WorkspaceSummaryDialog.qml:223
|
||||
msgctxt "@action:label"
|
||||
msgid "%1 out of %2"
|
||||
msgstr ""
|
||||
msgstr "%1/%2"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "프로젝트를 로드하면 빌드 플레이트의 모든 모델이 지워집니다."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2171,7 +2168,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "이 플러그인에는 라이선스가 포함되어 있습니다.\n이 플러그인을 설치하려면 이 라이선스를 수락해야 합니다.\n아래의 약관에 동의하시겠습니까?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2186,7 +2183,7 @@ msgstr "거절"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "사용자 계약"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2436,9 +2433,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"일부 프로필 설정을 사용자 지정했습니다.\n"
|
||||
"이러한 설정을 유지하거나 삭제 하시겠습니까?"
|
||||
msgstr "일부 프로필 설정을 사용자 지정했습니다.\n이러한 설정을 유지하거나 삭제 하시겠습니까?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3069,7 +3064,7 @@ msgstr "Cura 소개"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "버전: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3081,9 +3076,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura는 커뮤니티와 공동으로 Ultimaker B.V.에 의해 개발되었습니다\n"
|
||||
"Cura는 다음 오픈 소스 프로젝트를 자랑스럽게 사용합니다"
|
||||
msgstr "Cura는 커뮤니티와 공동으로 Ultimaker B.V.에 의해 개발되었습니다\nCura는 다음 오픈 소스 프로젝트를 자랑스럽게 사용합니다"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3168,7 +3161,7 @@ msgstr "다각형 클리핑 라이브러리"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Python HTTP 라이브러리"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3188,7 +3181,7 @@ msgstr "윤곽:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "프로필을 사용할 수 없음"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3196,10 +3189,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"일부 설정 / 대체 값은 프로파일에 저장된 값과 다릅니다.\n"
|
||||
"\n"
|
||||
"프로파일 매니저를 열려면 클릭하십시오."
|
||||
msgstr "일부 설정 / 대체 값은 프로파일에 저장된 값과 다릅니다.\n\n프로파일 매니저를 열려면 클릭하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3237,10 +3227,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"일부 숨겨진 설정은 정상 계산 값과 다른 값을 사용합니다.\n"
|
||||
"\n"
|
||||
"이 설정을 표시하려면 클릭하십시오."
|
||||
msgstr "일부 숨겨진 설정은 정상 계산 값과 다른 값을 사용합니다.\n\n이 설정을 표시하려면 클릭하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3268,10 +3255,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"이 설정에는 프로필과 다른 값이 있습니다.\n"
|
||||
"\n"
|
||||
"프로필 값을 복원하려면 클릭하십시오."
|
||||
msgstr "이 설정에는 프로필과 다른 값이 있습니다.\n\n프로필 값을 복원하려면 클릭하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3279,10 +3263,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"이 설정은 일반적으로 계산되지만 현재는 절대 값이 설정되어 있습니다.\n"
|
||||
"\n"
|
||||
"계산 된 값을 복원하려면 클릭하십시오."
|
||||
msgstr "이 설정은 일반적으로 계산되지만 현재는 절대 값이 설정되어 있습니다.\n\n계산 된 값을 복원하려면 클릭하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3294,65 +3275,59 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"인쇄 설정 사용 안 함\n"
|
||||
"G 코드 파일은 수정할 수 없습니다"
|
||||
msgstr "인쇄 설정 사용 안 함\nG 코드 파일은 수정할 수 없습니다"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00h 00min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>시간 사양</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "비용 사양"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "총계:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Recommended Print Setup</b><br/><br/>Print with the recommended settings for the selected printer, material and quality."
|
||||
msgstr ""
|
||||
"권장 인쇄 설정\n"
|
||||
"선택한 프린터, 재질 및 품질에 대한 권장 설정으로 인쇄하십시오."
|
||||
msgstr "권장 인쇄 설정\n선택한 프린터, 재질 및 품질에 대한 권장 설정으로 인쇄하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:591
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Custom Print Setup</b><br/><br/>Print with finegrained control over every last bit of the slicing process."
|
||||
msgstr ""
|
||||
"사용자 정의 인쇄 설정\n"
|
||||
"마지막 스플 라이스 프로세스의 모든 비트를 미세하게 제어하여 인쇄하십시오."
|
||||
msgstr "사용자 정의 인쇄 설정\n마지막 스플 라이스 프로세스의 모든 비트를 미세하게 제어하여 인쇄하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Menus/MaterialMenu.qml:49
|
||||
msgctxt "@title:menuitem %1 is the automatically selected material"
|
||||
|
@ -3467,27 +3442,27 @@ msgstr "인쇄하기 전에 베드를 미리 가열하십시오. 가열되는
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "프린터 제어"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "조그 위치"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "조그 거리"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3532,7 +3507,7 @@ msgstr "그만두다"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "카메라 위치 재설정(&R)"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3774,7 +3749,7 @@ msgstr "모델로 모두 가져 오기"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3931,7 +3906,7 @@ msgstr "층 높이"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "사용자 지정 프로필이 현재 활성 상태입니다. 품질 슬라이더를 실행하려면 사용자 지정 탭에서 기본 품질 프로필을 선택하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3951,7 +3926,7 @@ msgstr "빨리"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "일부 프로필 설정을 수정했습니다. 이러한 설정을 변경하려면 사용자 지정 모드로 이동하십시오."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4001,9 +3976,7 @@ msgstr "테두리 또는 raft 인쇄를 사용합니다. 이렇게하면 개체
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:934
|
||||
msgctxt "@label"
|
||||
msgid "Need help improving your prints?<br>Read the <a href='%1'>Ultimaker Troubleshooting Guides</a>"
|
||||
msgstr ""
|
||||
"인쇄물 개선에 도움이 필요하십니까?\n"
|
||||
"Ultimaker 문제 해결 가이드 읽기"
|
||||
msgstr "인쇄물 개선에 도움이 필요하십니까?\nUltimaker 문제 해결 가이드 읽기"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/ExtruderButton.qml:16
|
||||
msgctxt "@label %1 is filled in with the name of an extruder"
|
||||
|
@ -4045,7 +4018,7 @@ msgstr "자재"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>호환성 확인</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4185,12 +4158,12 @@ msgstr "SolidWorks 통합"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "시뮬레이션 보기를 제공합니다."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "시뮬레이션 보기"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4275,12 +4248,12 @@ msgstr "버전 업그레이드 2.7에서 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Cura 3.0에서 Cura 3.1로 구성을 업그레이드합니다."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "3.0에서 3.1로 버전 업그레이드"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4345,12 +4318,12 @@ msgstr "모델 별 설정 도구"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX에서 'Cura로 내보내기' 버튼을 설치할 수 있습니다."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integration"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4415,12 +4388,12 @@ msgstr "3MF 기록기"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "사용자에게 라이선스에 동의하는지 한 번 묻습니다."
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "사용자 계약"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4462,13 +4435,13 @@ msgstr "Cura 프로필 판독기"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "{machine_name}에 최신 기능이 탑재되어 있는지 확인하려면 정기적으로 펌웨어를 업데이트하는 것이 좋습니다. 이 작업은 {machine_name} (네트워크에 연결된 경우) 또는 USB를 통해 수행 할 수 있습니다."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "레이어 보기"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "레이어 보기"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "레이어 보기"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "레이어 보기"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4561,6 +4534,6 @@ msgstr "Cura 프로필 판독기"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "레이어 보기를 제공합니다."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "레이어보기"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "레이어보기"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.1\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-20 14:31+0900\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Brule\n"
|
||||
"Language-Team: Brule\n"
|
||||
"Language: ko_KR\n"
|
||||
|
@ -41,7 +41,7 @@ msgstr "인쇄에 사용되는 압출기 트레인. 이것은 다중 압출에
|
|||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_id label"
|
||||
msgid "Nozzle ID"
|
||||
msgstr ""
|
||||
msgstr "노즐 ID"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_id description"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-11-15 21:07+0900\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Brule\n"
|
||||
"Language-Team: Brule\n"
|
||||
"Language: ko_KR\n"
|
||||
|
@ -610,27 +610,27 @@ msgstr "초기 레이어의 높이 (mm)입니다. 두꺼운 초기 레이어는
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "슬라이싱 허용 오차"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "레이어를 대각선 서피스로 슬라이스하는 방법 레이어 영역은 레이어의 중앙이 서피스와 교차하는 부분(중간)을 기준으로 생성됩니다. 또는 각 레이어에 레이어의 높이 전체의 볼륨에 들어가는 영역(배타)이나 레이어 안의 어느 지점에 들어가는 영역(중복)이 있을 수 있습니다. 배타는 가장 많은 디테일을 포함하고, 중복은 베스트 피트를 만들 수 있으며, 중간은 처리 시간이 가장 짧습니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "중간"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "배타"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "중복"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -785,7 +785,7 @@ msgstr "내관"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "벽 압출기"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
|
@ -805,7 +805,7 @@ msgstr "외벽 인쇄에 사용되는 압출기 트레인. 이것은 다중 압
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "내벽 압출기"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1385,7 +1385,7 @@ msgstr "충진 패턴"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "프린트 충진 재료의 패턴입니다. 선과 갈지자형 충진이 레이어를 하나 걸러서 방향을 바꾸므로 재료비가 절감됩니다. 격자, 삼각형, 삼육각형, 입방체, 옥텟, 4분 입방체, 십자, 동심원 패턴이 레이어마다 완전히 인쇄됩니다. 입방체, 4분 입방체, 옥텟 충진이 레이어마다 변경되므로 각 방향으로 힘이 더 균등하게 분산됩니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1405,7 +1405,7 @@ msgstr "삼각형"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "삼육각형"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1460,7 +1460,7 @@ msgstr "충진 선 연결"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "내벽의 형태를 따라가는 선을 사용하여 충진 패턴과 내벽이 만나는 끝을 연결합니다. 이 설정을 사용하면 충진이 벽에 더 잘 점착되어 충진이 수직 서피스의 품질에 미치는 영향을 줄일 수 있습니다. 이 설정을 해제하면 사용되는 재료의 양이 줄어듭니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1475,22 +1475,22 @@ msgstr "사용할 정수선 방향 목록. 목록의 요소는 레이어가 진
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "충진 X 오프셋"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "충진 패턴이 X축을 따라 이 거리만큼 이동합니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "충진 Y 오프셋"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "충진 패턴이 Y축을 따라 이 거리만큼 이동합니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1805,22 +1805,22 @@ msgstr "사용 된 필라멘트의 직경을 조정합니다. 이 값을 사용
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "점착 기질"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "서피스의 점착 기질입니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "서피스 에너지"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "서피스의 에너지입니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3552,7 +3552,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "프린트의 스커트와 첫 번째 레이어 사이의 수직 거리입니다.\n이는 최소 거리입니다. 여러 개의 스커트 선이 이 거리에서 바깥쪽으로 연장됩니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3612,7 +3612,7 @@ msgstr "Raft 부드럽게하기"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "이 설정은 래프트 윤곽의 안쪽 구석의 곡률을 제어합니다. 안쪽 구석이 여기에 지정된 값과 동일한 반경으로 반원 모양으로 휘어집니다. 또한 이 설정을 사용하면 래프트 윤곽에서 그러한 원보다 작은 구멍이 제거됩니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4087,12 +4087,12 @@ msgstr "일반적으로 큐라(Cura)는 메쉬의 작은 구멍을 꿰매 붙이
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "최대 해상도"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "슬라이딩 후의 선분의 최소 크기입니다. 이 값을 높이면 메쉬의 해상도가 낮아집니다. 그러면 프린터가 G 코드를 처리하는 데 필요한 속도를 유지할 수 있으며 처리할 수 없는 메쉬의 디테일이 제거되므로 슬라이드 속도가 높아집니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4127,12 +4127,12 @@ msgstr "교차하는 메쉬로 교차하는 볼륨으로 전환하면 겹치는
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "비어 있는 첫 번째 레이어 제거"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "첫 번째로 인쇄된 레이어 바로 아래의 비어 있는 레이어를 제거합니다(있는 경우). 이 설정을 해제하면 슬라이딩 허용 오차 설정을 배타 또는 중간으로 설정할 경우 첫 번째 레이어가 비어 있게 될 수 있습니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4662,22 +4662,22 @@ msgstr "각 선분에 도입 된 임의의 점 사이의 평균 거리입니다.
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "압출 속도 보상 최대 압출 오프셋"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "최대 보상 거리입니다(단위: mm)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "압출 속도 보상 배율"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "압출 속도를 거리로 변환하는 증배율입니다."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Dutch\n"
|
||||
"Language: nl_NL\n"
|
||||
|
@ -91,7 +91,7 @@ msgstr "Het bestand is naar Doodle3D Connect verzonden"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Connect openen..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -141,7 +141,7 @@ msgstr "Er kan geen nieuwe taak worden gestart omdat de printer bezig is of niet
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Printer is niet beschikbaar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -593,7 +593,7 @@ msgstr "Verbinding Maken via Netwerk"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "Er zijn nieuwe functies beschikbaar voor uw {machine_name}! Het wordt aanbevolen de firmware van uw printer bij te werken."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -604,7 +604,7 @@ msgstr "Nieuwe firmware voor %s beschikbaar"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Instructies voor bijwerken"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -639,7 +639,7 @@ msgstr "Er is een fout opgetreden tijdens het starten van %s!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Simulatieweergave"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -649,7 +649,7 @@ msgstr "Als draadprinten is ingeschakeld, geeft Cura lagen niet nauwkeurig weer"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Simulatieweergave"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -730,7 +730,7 @@ msgstr "Met de huidige instellingen is slicing niet mogelijk. De volgende instel
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Slicing is niet mogelijk vanwege enkele instellingen per model. De volgende instellingen bevatten fouten voor een of meer modellen: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -765,25 +765,25 @@ msgstr "Instellingen per Model configureren"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Installeren"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Kan de bestanden voor de Siemens NX-invoegtoepassingen niet kopiëren. Controleer uw UGII_USER_DIR. Deze is niet ingesteld op een map."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "De Siemens NX Cura-invoegtoepassing is geïnstalleerd."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Kan de bestanden voor de Siemens NX-invoegtoepassingen niet installeren. Controleer uw UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Kan de Siemens NX-invoegtoepassing niet installeren. Het instellen van de omgevingsvariabele UGII_USER_DIR voor Siemens NX is mislukt."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -946,7 +946,7 @@ msgstr "Overig(e)"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Onbekend"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1011,12 +1011,12 @@ msgstr "Aangepast materiaal"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Algemeen"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Niet overschreven"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1065,7 +1065,7 @@ msgstr "Het profiel is geëxporteerd als <filename>{0}</filename>"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "De export is voltooid"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1137,85 +1137,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>Er is een fatale uitzondering opgetreden. Stuur ons het Crashrapport om het probleem op te lossen</p></b>\n <p>Druk op de knop \"Rapport verzenden\" om het foutenrapport automatisch naar onze servers te verzenden</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Systeeminformatie"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Onbekend"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Cura-versie:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Platform:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Qt-versie:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>PyQt-versie:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL-versie: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL-leverancier: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL-renderer: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Traceback van uitzondering"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Logboeken"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Gebruikersbeschrijving"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Rapport verzenden"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1253,7 +1253,7 @@ msgstr "Kan geen ander bestand openen als G-code wordt geladen. Het importeren v
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "Het geselecteerde model is te klein om te laden."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1514,10 +1514,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"Als u rechtstreeks via het netwerk wilt printen naar de printer, moet u ervoor zorgen dat de printer met een netwerkkabel is verbonden met het netwerk of moet u verbinding maken met de printer via het wifi-netwerk. Als u geen verbinding maakt tussen Cura en de printer, kunt u een USB-station gebruiken om g-code-bestanden naar de printer over te zetten.\n"
|
||||
"\n"
|
||||
"Selecteer uw printer in de onderstaande lijst:"
|
||||
msgstr "Als u rechtstreeks via het netwerk wilt printen naar de printer, moet u ervoor zorgen dat de printer met een netwerkkabel is verbonden met het netwerk of moet u verbinding maken met de printer via het wifi-netwerk. Als u geen verbinding maakt tussen Cura en de printer, kunt u een USB-station gebruiken om g-code-bestanden naar de printer over te zetten.\n\nSelecteer uw printer in de onderstaande lijst:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1631,7 +1628,7 @@ msgstr "%1 is niet ingesteld voor het hosten van een groep aangesloten Ultimaker
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Hiermee opent u de pagina met printtaken in uw standaard webbrowser."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1666,7 +1663,7 @@ msgstr "Verbinding met de printer is verbroken"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Uitgeschakeld"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1681,12 +1678,12 @@ msgstr "Gereed"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "Gepauzeerd"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Hervatten"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1828,12 +1825,12 @@ msgstr "Lijntype"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Doorvoersnelheid"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Laagdikte"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1883,12 +1880,12 @@ msgstr "Binnenwand"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "min."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "max."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2126,7 +2123,7 @@ msgstr "%1 van %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Als u een project laadt, worden alle modellen van het platform gewist."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2169,7 +2166,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "Deze invoegtoepassing bevat een licentie.\nU moet akkoord gaan met deze licentie om deze invoegtoepassing te mogen installeren.\nGaat u akkoord met de onderstaande voorwaarden?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2184,7 +2181,7 @@ msgstr "Nee, ik ga niet akkoord"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Gebruikersovereenkomst"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2434,9 +2431,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"U hebt enkele profielinstellingen aangepast.\n"
|
||||
"Wilt u deze instellingen behouden of verwijderen?"
|
||||
msgstr "U hebt enkele profielinstellingen aangepast.\nWilt u deze instellingen behouden of verwijderen?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3067,7 +3062,7 @@ msgstr "Over Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "versie: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3079,9 +3074,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura is ontwikkeld door Ultimaker B.V. in samenwerking met de community.\n"
|
||||
"Cura maakt met trots gebruik van de volgende opensourceprojecten:"
|
||||
msgstr "Cura is ontwikkeld door Ultimaker B.V. in samenwerking met de community.\nCura maakt met trots gebruik van de volgende opensourceprojecten:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3166,7 +3159,7 @@ msgstr "Bibliotheek met veelhoeken"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Python HTTP-bibliotheek"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3186,7 +3179,7 @@ msgstr "Profiel:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "Er is geen profiel beschikbaar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3194,10 +3187,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"Sommige waarden of aanpassingen van instellingen zijn anders dan de waarden die in het profiel zijn opgeslagen.\n"
|
||||
"\n"
|
||||
"Klik om het profielbeheer te openen."
|
||||
msgstr "Sommige waarden of aanpassingen van instellingen zijn anders dan de waarden die in het profiel zijn opgeslagen.\n\nKlik om het profielbeheer te openen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3235,10 +3225,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"Een aantal verborgen instellingen gebruiken andere waarden dan hun normale berekende waarde.\n"
|
||||
"\n"
|
||||
"Klik om deze instellingen zichtbaar te maken."
|
||||
msgstr "Een aantal verborgen instellingen gebruiken andere waarden dan hun normale berekende waarde.\n\nKlik om deze instellingen zichtbaar te maken."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,10 +3253,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"Deze instelling heeft een andere waarde dan in het profiel.\n"
|
||||
"\n"
|
||||
"Klik om de waarde van het profiel te herstellen."
|
||||
msgstr "Deze instelling heeft een andere waarde dan in het profiel.\n\nKlik om de waarde van het profiel te herstellen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3277,10 +3261,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"Deze instelling wordt normaliter berekend, maar is nu ingesteld op een absolute waarde.\n"
|
||||
"\n"
|
||||
"Klik om de berekende waarde te herstellen."
|
||||
msgstr "Deze instelling wordt normaliter berekend, maar is nu ingesteld op een absolute waarde.\n\nKlik om de berekende waarde te herstellen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3292,51 +3273,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"Instelling voor printen uitgeschakeld\n"
|
||||
"G-code-bestanden kunnen niet worden aangepast"
|
||||
msgstr "Instelling voor printen uitgeschakeld\nG-code-bestanden kunnen niet worden aangepast"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00u 00min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Tijdspecificatie</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Kostenspecificatie"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1 m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1 g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Totaal:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1 m / ~ %2 g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1 m / ~ %2 g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3461,27 +3440,27 @@ msgstr "Verwarm het bed voordat u gaat printen. U kunt doorgaan met het aanpasse
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Printerbediening"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Jog-positie"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Jog-afstand"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3526,7 +3505,7 @@ msgstr "&Afsluiten"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "Camerapositie he&rstellen"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3768,7 +3747,7 @@ msgstr "Allemaal als model importeren"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3925,7 +3904,7 @@ msgstr "Laaghoogte"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Er is momenteel een aangepast profiel actief. Als u de kwaliteitsschuifregelaar wilt gebruiken, kiest u een standaard kwaliteitsprofiel op het tabblad Aangepast"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3945,7 +3924,7 @@ msgstr "Sneller"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "U hebt enkele profielinstellingen aangepast. Ga naar de aangepaste modus als u deze wilt wijzigen."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4037,7 +4016,7 @@ msgstr "Materiaal"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Compatibiliteit controleren</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4177,12 +4156,12 @@ msgstr "SolidWorks-integratie"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Hiermee geeft u de simulatieweergave weer."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Simulatieweergave"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4267,12 +4246,12 @@ msgstr "Versie-upgrade van 2.7 naar 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Hiermee worden configuraties bijgewerkt van Cura 3.0 naar Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Versie-upgrade van 3.0 naar 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4337,12 +4316,12 @@ msgstr "Gereedschap voor Instellingen per Model"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Hiermee kunt u een knop installeren in Siemens NX om te 'exporteren naar Cura'."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integratie"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4407,12 +4386,12 @@ msgstr "3MF-schrijver"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Vraag de gebruiker één keer of deze akkoord gaat met de licentie"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "UserAgreement"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4454,13 +4433,13 @@ msgstr "Cura-profiellezer"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Om ervoor te zorgen dat uw {machine_name} van de nieuwste functies is voorzien, wordt aanbevolen om de firmware regelmatig bij te werken. U kunt dit doen op de {machine_name} (wanneer deze is verbonden met het netwerk) of via USB."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Laagweergave"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Laagweergave"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Laagweergave"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Laagweergave"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4562,9 +4541,9 @@ msgstr "Cura-profiellezer"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Biedt een laagweergave."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Laagweergave"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Laagweergave"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4904,9 +4883,9 @@ msgstr "Cura-profiellezer"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Deze optie biedt ondersteuning voor het importeren van profielen uit G-code-bestanden."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Laagweergave"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Laagweergave"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-11 14:30+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Dutch\n"
|
||||
"Language: nl_NL\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Dutch\n"
|
||||
"Language: nl_NL\n"
|
||||
|
@ -608,27 +608,27 @@ msgstr "De hoogte van de eerste laag in mm. Met een dikkere eerste laag hecht he
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Slicetolerantie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Geeft aan hoe lagen met een diagonaal oppervlak worden geslicet. De gebieden van een laag kunnen worden gegenereerd op basis van de locatie waar het midden van de laag het oppervlak snijdt (Midden). Daarnaast kan elke laag gebieden hebben die over de gehele hoogte van de laag binnen het volume vallen (Exclusief), of kan een laag gebieden hebben die overal binnen de laag vallen (Inclusief). Met Exclusief worden de meeste details behouden, met Inclusief verkrijgt u de beste pasvorm en met Midden is de verwerkingstijd het kortst."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Midden"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Exclusief"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Inclusief"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -803,7 +803,7 @@ msgstr "De extruder train die voor het printen van de buitenwand wordt gebruikt.
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Extruder binnenwand"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1383,7 +1383,7 @@ msgstr "Vulpatroon"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Het patroon van het vulmateriaal van de print. De lijn- en zigzagvulling veranderen per vullaag van richting, waardoor wordt bespaard op materiaalkosten. De raster-, driehoeks-, tri-hexagonale, kubische, achtvlaks-, afgeknotte kubus-, kruis- en concentrische patronen worden elke laag volledig geprint. Kubische, afgeknotte kubus- en achtvlaksvullingen veranderen elke laag voor een meer gelijke krachtsverdeling in elke richting."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1403,7 +1403,7 @@ msgstr "Driehoeken"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Tri-hexagonaal"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1458,7 +1458,7 @@ msgstr "Vullijnen verbinden"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Verbindt de uiteinden waar het vulpatroon bij de binnenwand komt, met een lijn die de vorm van de binnenwand volgt. Als u deze instelling inschakelt, kan de vulling beter hechten aan de wanden en wordt de invloed van de vulling op de kwaliteit van de verticale oppervlakken kleiner. Als u deze instelling uitschakelt, wordt er minder materiaal gebruikt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1473,22 +1473,22 @@ msgstr "Een lijst met gehele getallen voor lijnrichtingen die moet worden gebrui
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Vulling X-offset"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "Het vulpatroon wordt over deze afstand verplaatst over de X-as."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Vulling Y-offset"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "Het vulpatroon wordt over deze afstand verplaatst over de Y-as."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1803,22 +1803,22 @@ msgstr "Bepaalt de diameter van het gebruikte filament. Pas deze waarde aan de d
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Hechtingsgevoeligheid"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Hechtingsgevoeligheid van het oppervlak."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Oppervlakte-energie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Oppervlakte-energie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3550,7 +3550,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "De horizontale afstand tussen de skirt en de eerste laag van de print.\nDit is de minimumafstand. Als u meerdere skirtlijnen print, worden deze vanaf deze afstand naar buiten geprint."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3610,7 +3610,7 @@ msgstr "Raft effenen"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Bepaalt hoeveel binnenhoeken in de raftcontour worden afgerond. Naar binnen gebogen hoeken worden tot een halve cirkel afgerond met een straal die gelijk is aan de hier opgegeven waarde. Met deze instellingen worden ook gaten in de raftcontour verwijderd die kleiner zijn dan een dergelijke cirkel."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4085,12 +4085,12 @@ msgstr "Normaal probeert Cura kleine gaten in het raster te hechten en delen van
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Maximale resolutie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "Het minimale formaat van een lijnsegment na het slicen. Als u deze waarde verhoogt, wordt het model met een lagere resolutie geprint. Hiermee kan de printer de verwerkingssnelheid van de G-code bijhouden en wordt de slicesnelheid verhoogd doordat details van het raster worden verwijderd die niet kunnen worden verwerkt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4125,12 +4125,12 @@ msgstr "Schakel naar de rastersnijpuntvolumes die bij elke laag horen, zodat de
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Lege eerste lagen verwijderen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Hiermee worden de lege lagen onder de eerste geprinte laag verwijderd, indien aanwezig. Als u deze instelling uitschakelt, kunnen lege eerste lagen ontstaan als de Slicetolerantie is ingesteld op Exclusief of Midden."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4660,22 +4660,22 @@ msgstr "De gemiddelde afstand tussen de willekeurig geplaatste punten op elk lij
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Maximale extrusieoffset voor doorvoercompensatie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "De maximale afstand in mm die moet worden gecompenseerd."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Doorvoercompensatiefactor"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "De vermenigvuldigingsfactor voor de vertaling doorvoer -> afstand."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4827,9 +4827,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"De afstand van een opwaartse beweging waarbij de doorvoersnelheid wordt gehalveerd.\n"
|
||||
"Hierdoor ontstaat een betere hechting aan voorgaande lagen, zonder dat het materiaal in die lagen te zeer wordt verwarmd. Alleen van toepassing op Draadprinten."
|
||||
msgstr "De afstand van een opwaartse beweging waarbij de doorvoersnelheid wordt gehalveerd.\nHierdoor ontstaat een betere hechting aan voorgaande lagen, zonder dat het materiaal in die lagen te zeer wordt verwarmd. Alleen van toepassing op Draadprinten."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-10-05 17:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-22 16:19+0100\n"
|
||||
"Last-Translator: 'Jaguś' Paweł Jagusiak and Andrzej 'anraf1001' Rafalski\n"
|
||||
"Language-Team: reprapy.pl\n"
|
||||
"Language: pl_PL\n"
|
||||
|
@ -93,7 +93,7 @@ msgstr "Plik wysłany do Doodle3D Connect"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Otwórz Connect..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -143,7 +143,7 @@ msgstr "Nie można uruchomić nowego zadania, ponieważ drukarka jest zajęta lu
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Drukarka Niedostępna"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -595,7 +595,7 @@ msgstr "Połącz przez sieć"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "Nowe funkcje są dostępne dla twojej {machine_name}! Rekomendowane jest zaktualizowanie oprogramowania drukarki."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -606,7 +606,7 @@ msgstr "Nowe oprogramowanie %s jest dostępne"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Jak zaktualizować"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -641,7 +641,7 @@ msgstr "Błąd podczas rozpoczynania %s!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Widok symulacji"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -651,7 +651,7 @@ msgstr "Cura nie wyświetla dokładnie warstw kiedy drukowanie przewodowe jest w
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Widok symulacji"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -732,7 +732,7 @@ msgstr "Nie można pociąć z bieżącymi ustawieniami. Następujące ustawienia
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Nie można pokroić przez ustawienia osobne dla modelu. Następujące ustawienia mają błędy w jednym lub więcej modeli: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -767,25 +767,25 @@ msgstr "Konfiguruj ustawienia każdego modelu z osobna"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Zainstaluj"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Nie udało się skopiować plików pluginu Siemens NX. Proszę sprawdź twój UGII_USER_DIR. Nie jest ustawiony do folderu."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Udało się zainstalować plugin Cura Siemens NX."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Nie udało się skopiować plików pluginu Siemens NX. Proszę sprawdź twój UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Nie udało się zainstalować pluginu Siemens NX. Nie można ustawić zmiennej środowiskowej UGII_USER_DIR dla Siemens NX."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -948,7 +948,7 @@ msgstr "Inny"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Nieznany"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1013,12 +1013,12 @@ msgstr "Niestandardowy materiał"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Globalny"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Nie zastąpione"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1067,7 +1067,7 @@ msgstr "Wyeksportowano profil do <filename>{0}</filename>"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "Eksport udany"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1140,84 +1140,87 @@ msgid ""
|
|||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p><b>Wystąpił fatalny błąd. Proszę wyślij do nas ten Raport Błędu, abyśmy mogli naprawić błąd</p></b>\n"
|
||||
" <p>Proszę użyj przycisku \"Wyślij raport\", aby wysłać raport błędu automatycznie na nasze serwery.</p>\n"
|
||||
" "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Informacje o systemie"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Nieznany"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Wersja Cura:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Platforma:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Wersja Qt:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Wersja PyQt:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Wersja OpenGL: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Wydawca OpenGL: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL Renderer: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Śledzenie błędów"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Logi"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Opis użytkownika"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Wyślij raport"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1255,7 +1258,7 @@ msgstr "Nie można otworzyć żadnego innego pliku, jeśli ładuje się G-code.
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "Wybrany model był zbyta mały do załadowania."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1633,7 +1636,7 @@ msgstr "%1 nie została ustawiona do hostowania grupy podłączonych drukarek Ul
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Otwiera stronę zadań drukowania w twojej domyślnej przeglądarce sieciowej."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1668,7 +1671,7 @@ msgstr "Utracone połączenie z drukarką"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Wyłączona"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1683,12 +1686,12 @@ msgstr "Zakończono"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "Wstrzymana"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Wznawianie"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1830,12 +1833,12 @@ msgstr "Rodzaj linii"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Szybkość Posuwu"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Grubość warstwy"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1885,12 +1888,12 @@ msgstr "Wewnętrzna ściana"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "max"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2128,7 +2131,7 @@ msgstr "%1 poza %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Ładowanie projektu usunie wszystkie modele z platformy roboczej."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2172,6 +2175,9 @@ msgid ""
|
|||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
"Ten plugin zawiera licencje.\n"
|
||||
"Musisz zaakceptować tę licencję, aby zainstalować ten plugin.\n"
|
||||
"Akceptujesz poniższe postanowienia?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2186,7 +2192,7 @@ msgstr "Odrzuć"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Zgoda Użytkownika"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -3069,7 +3075,7 @@ msgstr "O Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "version: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3168,7 +3174,7 @@ msgstr "Biblioteka edytująca pola"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Biblioteka Python HTTP"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3188,7 +3194,7 @@ msgstr "Profil:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "Brak Dostępnego Profilu"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3301,44 +3307,44 @@ msgstr ""
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00godz. 00min."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Szacowany czas</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Szacowanie kosztów"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Razem:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3463,27 +3469,27 @@ msgstr "Przed drukowaniem podgrzej stół. W dalszym ciągu można dostosowywać
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Kontrola drukarką"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Pozycja Swobodnego Ruchu"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Dystans Swobodnego Ruchu"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3528,7 +3534,7 @@ msgstr "&Zamknij"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Zresetuj pozycję kamery"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3770,7 +3776,7 @@ msgstr "Importuj wszystkie jako modele"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Cura Ultimaker"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3927,7 +3933,7 @@ msgstr "Wysokość warstwy"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Niestandardowy profil jest obecnie aktywny. Aby włączyć pasek jakości, wybierz domyślny profil w zakładce Niestandardowe"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3947,7 +3953,7 @@ msgstr "Szybciej"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "Zmodyfikowałeś ustawienia profilu. Jeżeli chcesz je zmienić, przejdź do trybu niestandardowego."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4039,7 +4045,7 @@ msgstr "Materiał"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Sprawdź kompatybilność</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4179,12 +4185,12 @@ msgstr "Integracja z SolidWorks"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Zapewnia widok Symulacji"
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Widok Symulacji"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4269,12 +4275,12 @@ msgstr "Ulepszenie Wersji 2.7 do 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Ulepsza konfigurację z Cura 3.0 do Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Ulepszenie Wersji 3.0 do 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4339,12 +4345,12 @@ msgstr "Narzędzie Ustawień dla Każdego Modelu"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Pomaga zainstalować przycisk 'eksportuj do Cura' w Siemens NX."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Integracja z Siemens NX"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4409,12 +4415,12 @@ msgstr "3MF Writer"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Pyta użytkownika czy zgadza się z naszą licencją"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "ZgodaUżytkownika"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4456,13 +4462,13 @@ msgstr "Czytnik Profili Cura"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Aby upewnić się że twoja {machine_name} jest wyposażona w najnowsze opcje rekomendowane jest aktualizowanie oprogramowania regularnie. Może to być wykonane na {machine_name} (kiedy jest podłączona do sieci) lub przez USB."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Widok warstwy"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Widok warstwy"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Widok warstwy"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Widok warstwy"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4564,9 +4570,9 @@ msgstr "Czytnik Profili Cura"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Zapewnia widok warstw."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Widok Warstw"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Widok Warstw"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4887,9 +4893,9 @@ msgstr "Czytnik Profili Cura"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Zapewnia obsługę importowania profili z plików g-code."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Widok warstwy"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Widok warstwy"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-04 12:25+0200\n"
|
||||
"PO-Revision-Date: 2017-11-22 15:00+0100\n"
|
||||
"Last-Translator: 'Jaguś' Paweł Jagusiak and Andrzej 'anraf1001' Rafalski\n"
|
||||
"Language-Team: reprapy.pl\n"
|
||||
"Language: pl_PL\n"
|
||||
|
@ -16,7 +16,7 @@ msgstr ""
|
|||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"X-Generator: Poedit 2.0.3\n"
|
||||
"X-Generator: Poedit 2.0.4\n"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_settings label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-29 16:14+0200\n"
|
||||
"PO-Revision-Date: 2017-11-22 19:41+0100\n"
|
||||
"Last-Translator: 'Jaguś' Paweł Jagusiak and Andrzej 'anraf1001' Rafalski\n"
|
||||
"Language-Team: reprapy.pl\n"
|
||||
"Language: pl_PL\n"
|
||||
|
@ -613,27 +613,27 @@ msgstr "Wysokość początkowej warstwy w mm. Grubsza początkowa warstwa powodu
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Tolerancja Cięcia"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Jak ciąć warstwy z ukośnymi powierzchniami. Obszary warstwy mogą być generowane na podstawie miejsca gdzie środek warstwy przecina się z powierzchnią (Środek). Alternatywnie każda warstwa może mieć obszary, które wpadają do środka objętości poprzez wysokość warstwy (Wyłączne) lub warstwa ma obszary, które wpadają do środka w każdym miejscu na warstwie (Włącznie). Wyłącznie zatrzymuje najwięcej detali, Włącznie powoduje najlepsze dopasowanie, a Środek wymaga najmniej czasu do przetworzenia."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Środek"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Wyłącznie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Włącznie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -808,7 +808,7 @@ msgstr "Esktruder używany do drukowania zewn. ściany. Używane w multi-ekstruz
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Ekstruder Wewn. Linii"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1388,7 +1388,7 @@ msgstr "Wzór Wypełn."
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Wzór materiału wypełniającego wydruk. Linie i zygzaki zmieniają kierunek na przemiennych warstwach, redukując koszty materiału. Kratka, trójkąty, tri-sześciokąt, sześcienne, ośmiościenne, ćwierć sześcienny i koncentryczny wzór są drukowane w pełni na każdej warstwie. Sześcienne, ćwierć sześcienne i czworościenne wypełnienie zmienia się co każdą warstwę, aby zapewnić równy rozkład siły w każdym kierunku."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1408,7 +1408,7 @@ msgstr "Trójkąty"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Tri-Sześciokąt"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1463,7 +1463,7 @@ msgstr "Połącz Linie Wypełnienia"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Łączy końce gdzie wzór wypełnienia spotyka się z wewn. ścianą używając linii, która podąża za kształtem wewn. ściany. Włączenie tego ustawienia może spowodować lepszą przyczepność wypełnienia do ścian i zredukować efekty wypełnienia w jakości powierzchni. Wyłączenie tego ustawienia redukuje ilość potrzebnego materiału."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1478,22 +1478,22 @@ msgstr "Lista całkowitych kierunków linii do użycia. Elementy z listy są uż
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Przesunięcie Wypełn. w Osi X"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "Wypełnienie jest przesunięte o taką odległość wzdłuż osi X."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Przesunięcie Wypełn. w Osi Y"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "Wypełnienie jest przesunięte o taką odległość wzdłuż osi Y."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1808,22 +1808,22 @@ msgstr "Dostosowuje średnicę stosowanego filamentu. Dopasuj tę wartość do
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Tendencja Przyczepności"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Tendencja przyczepności powierzchni."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Energia Powierzchni"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Energia powierzchni."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3556,6 +3556,8 @@ msgid ""
|
|||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
"Pozioma odległość między obwódką a pierwszą warstwą nadruku.\n"
|
||||
"Jest to o minimalnej odległości. Z tej odległości linie będą nakładane w kierunku zewnętrznym."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3615,7 +3617,7 @@ msgstr "Wygładzanie Tratwy"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "To ustawienie kontroluje jak bardzo wewn. narożniki w zewn. krawędzi tratwy mają być zaokrąglone. Wewn. narożniki są zaokrąglane do półokręgów o promieniu równym wartości podanej tutaj. To ustawienie usuwa także otwory w zewn. krawędzi tratwy, które są mniejsze niż taki okrąg."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4090,12 +4092,12 @@ msgstr "Zwykle Cura próbuje zszywać małe dziury w siatce i usunąć części
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Maksymalna Rozdzielczość"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "Minimalny rozmiar linii segmentu po pocięciu. Jeżeli to zwiększysz, siatka będzie miała mniejszą rozdzielczość. Może to spowodować przyspieszenie prędkości przetwarzania g-code i przyspieszenie prędkości cięcia poprzez usunięcie detali siatki, których tak czy tak nie można przetworzyć."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4130,12 +4132,12 @@ msgstr "Przełącz się, to której przecinającej się siatki będą należały
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Usuń Pustą Pierwsz. Warstwę"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Usuń puste warstwy poniżej pierwszej drukowanej warstwy jeżeli takie występują. Wyłączenie tego ustawienia może powodować puste pierwsze warstwy jeżeli Tolerancja Cięcia jest ustawiona na Włącznie lub Środek."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4665,22 +4667,22 @@ msgstr "Średnia odległość między losowymi punktami wprowadzonymi w każdym
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Maks. offset ekstruzji do kompensowania przepływu"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "Maksymalna odległość w mm do skompensowania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Współczynnik kompensacji przepływu"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "Współczynnik mnożący przepływu -> tłumaczenie odległości."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-10-05 12:20-0300\n"
|
||||
"PO-Revision-Date: 2017-12-04 10:20-0300\n"
|
||||
"Last-Translator: Cláudio Sampaio <patola@makerlinux.com.br>\n"
|
||||
"Language-Team: Cláudio Sampaio <patola@makerlinux.com.br> and CoderSquirrel <jasaneschio@gmail.com>\n"
|
||||
"Language: pt_BR\n"
|
||||
|
@ -92,7 +92,7 @@ msgstr "Arquivo enviado ao Doodle3D Connect"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Abrir Connect..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -142,7 +142,7 @@ msgstr "Incapaz de iniciar novo trabalho porque a impressora está ocupada ou n
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Impressora Não Disponível"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -594,7 +594,7 @@ msgstr "Conectar pela rede"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "Novos recursos estão disponível para sua {machine_name}! Recomenda-se atualizar o firmware da impressora."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -605,7 +605,7 @@ msgstr "Novo firmware de %s disponível"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Como atualizar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -640,7 +640,7 @@ msgstr "Erro ao iniciar %s!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Visão simulada"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -650,7 +650,7 @@ msgstr "O Cura não mostra as camadas corretamente quando Impressão em Arame es
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Visão Simulada"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -731,7 +731,7 @@ msgstr "Incapaz de fatiar com os ajustes atuais. Os seguintes ajustes têm erros
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Incapaz de fatiar devido a alguns ajustes por modelo. Os seguintes ajustes têm erros em um ou mais dos modelos: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -766,25 +766,25 @@ msgstr "Configurar ajustes por Modelo"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Instalar"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Erro ao copiar arquivos de plugins Siemens NX. Por favor verifique seu UGII_USER_DIR. Ele não está configurado para um diretório."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Plugin Siemens NX do Cura instalado com sucesso."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Erro ao copiar arquivos de plugins Siemens NX. Por favor, verifique seu UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Erro ao instalar arquivos de plugins Siemens NX. Não foi possível ajustar a variável de ambiente UGII_USER_DIR para o Simenes NX."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -947,7 +947,7 @@ msgstr "Outros"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Desconhecido"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1012,12 +1012,12 @@ msgstr "Material Personalizado"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Global"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Não sobrepujado"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1066,7 +1066,7 @@ msgstr "Perfil exportado para <filename>{0}</filename>"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "Exportação concluída"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1139,84 +1139,87 @@ msgid ""
|
|||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p><b>Uma exceção fatal aocorreu. Por favor nos envie este Relatório de Erros para consertarmos o problema</p></b>\n"
|
||||
" <p>Por favor use o botão \"Enviar relatório\" para postar um relato de bug automaticamente em nossos servidores</p>\n"
|
||||
" "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Informação do Sistema"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Desconhecida"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versão do Cura:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Plataforma:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versão da Qt:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Versão da PyQt:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Versão da OpenGL: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Fornecedor da OpenGL: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Renderizador da OpenGL: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Traceback de exceção"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Registros"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Descrição do usuário"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Enviar relatório"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1254,7 +1257,7 @@ msgstr "Não é possível abrir nenhum outro arquivo se G-Code estiver sendo car
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "O modelo selecionado é pequenos demais para carregar."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1632,7 +1635,7 @@ msgstr "%1 não está configurada para hospedar um grupo de impressora Ultimaker
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Abre a página de trabalhos de impressão com seu navegador default."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1667,7 +1670,7 @@ msgstr "A conexão à impressora foi perdida"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Desabilitado"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1682,12 +1685,12 @@ msgstr "Finalizado"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "Pausado"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Continuando"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1829,12 +1832,12 @@ msgstr "Tipo de Linha"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Taxa de alimentação"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Largura de camada"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1884,12 +1887,12 @@ msgstr "Parede Interna"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "mín"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "máx"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2127,7 +2130,7 @@ msgstr "%1 de %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Carregar um projeto limpará todos os modelos da mesa de impressão."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2171,6 +2174,9 @@ msgid ""
|
|||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
"Este plugin contém uma licença.\n"
|
||||
"Você precisa aceitar esta licença para instalar este plugin.\n"
|
||||
"Você concorda com os termos abaixo?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2185,7 +2191,7 @@ msgstr "Recusar"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Termos de Acordo do Usuário"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -3068,7 +3074,7 @@ msgstr "Sobre o Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "versão: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3167,7 +3173,7 @@ msgstr "Biblioteca de recorte de polígonos"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Biblioteca de HTTP Python"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3187,7 +3193,7 @@ msgstr "Perfil:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "Nenhum Perfil Disponível"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3298,44 +3304,44 @@ msgstr ""
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00h 00min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Especificação de tempo</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Especificação de custo"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Total:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3460,27 +3466,27 @@ msgstr "Aquecer a mesa antes de imprimir. Você pode continuar ajustando sua imp
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Controle da Impressora"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Posição de Trote"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Distância de Trote"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3525,7 +3531,7 @@ msgstr "&Sair"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Recompor posições de câmera"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3767,7 +3773,7 @@ msgstr "Importar todos como modelos"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3924,7 +3930,7 @@ msgstr "Altura de Camada"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Um perfil personalizado está atualmente ativo. Para habilitar o controle deslizante de qualidade, escolha um perfil de qualidade default na aba Personalizado"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3944,7 +3950,7 @@ msgstr "Mais Rápido"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "Você modificou alguns ajustes de perfil. Se você quiser alterá-los, use o modo personalizado."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4036,7 +4042,7 @@ msgstr "Material"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Verificar compatibilidade</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4176,12 +4182,12 @@ msgstr "Integração ao SolidWorks"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Provê a Visão Simulada."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Visão Simulada"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4266,12 +4272,12 @@ msgstr "Atualização de Versão de 2.7 para 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Atualiza configurações do Cura 3.0 para o Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Atualização de Versão 3.0 para 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4336,12 +4342,12 @@ msgstr "Ferramenta de Ajustes Por Modelo"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Auxilia na instalação de um botão 'exportar para o Cura' no Siemens NX."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Integração ao Siemens NX"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4406,12 +4412,12 @@ msgstr "Gerador de 3MF"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Pergunta ao usuário uma única vez sobre concordância com a licença"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "Acordo de Usuário"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4453,13 +4459,13 @@ msgstr "Leitor de Perfis do Cura"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Para assegurar que sua {machine_name} esteja equipada com os recursos mais recentes, é recomendado atualizar o firmware regularmente. Isto pode ser feito na {machine_name} (quando conectado pela rede) ou via USB."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Visão de Camadas"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Visão de Camadas"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Visão de Camadas"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Visão de Camadas"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4561,9 +4567,9 @@ msgstr "Leitor de Perfis do Cura"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Provê a visão de Camadas."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Visão de Camadas"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Visão de Camadas"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4884,9 +4890,9 @@ msgstr "Leitor de Perfis do Cura"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Provê suporte para importar perfis de arquivos G-Code."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Visão de Camadas"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Visão de Camadas"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-10-06 08:00-0300\n"
|
||||
"PO-Revision-Date: 2017-12-04 09:00-0300\n"
|
||||
"Last-Translator: Cláudio Sampaio <patola@makerlinux.com.br>\n"
|
||||
"Language-Team: Cláudio Sampaio <patola@makerlinux.com.br> and CoderSquirrel <jasaneschio@gmail.com>\n"
|
||||
"Language: pt_BR\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-10-06 10:00-0300\n"
|
||||
"PO-Revision-Date: 2017-12-04 10:20-0300\n"
|
||||
"Last-Translator: Cláudio Sampaio <patola@makerlinux.com.br>\n"
|
||||
"Language-Team: Cláudio Sampaio <patola@makerlinux.com.br> and CoderSquirrel <jasaneschio@gmail.com>\n"
|
||||
"Language: pt_BR\n"
|
||||
|
@ -613,27 +613,27 @@ msgstr "A altura da camada inicial em mm. Uma camada inicial mais espessa faz a
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Tolerância de Fatiamento"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Como fatiar camadas com superfícies diagonais. As áreas de uma camada podem ser geradas baseadas em onde o meio da camada interseciona a superfície (Meio). Alternativamente, cada camada pode ter as áreas que se encontram dentro do volume por toda a altura da camada (Exclusivo) ou a camada pode abranger todas as áreas que tenham qualquer penetração dentro do volume (Inclusivo). Exclusivo retém mais detalhes, Inclusivo é melhor para encaixes e Meio toma menos tempo para processar."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Meio"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Exclusivo"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Inclusivo"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -808,7 +808,7 @@ msgstr "O carro extrusor usado para imprimir a parede externa. Este ajuste é us
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Extrusor da Parede Interior"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1388,7 +1388,7 @@ msgstr "Padrão de Preenchimento"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "O padrão do material de preenchimento da impressão. Preenchimento de Linhas e Ziguezague trocam direções em camadas alternadas, reduzindo custo do material. Os padrões de Grade, Triângulo, Tri-Hexágono, Cúbico, Octeto, Quarto Cúbico, Cruzado e Concêntrico são totalmente impressos em cada camada. Os preenchimentos Cúbico, Quarto Cúbico e Octeto mudam em cada camada para prover uma distribuição mais uniforme de forças em cada direção."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1408,7 +1408,7 @@ msgstr "Triângulos"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Tri-Hexágono"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1463,7 +1463,7 @@ msgstr "Conectar Linhas de Preenchimento"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Conecta as extremidades onde o padrão de preenchimento toca a parede interna usando uma linha que segue a forma da parede interna. Habilitar este ajuste pode fazer o preenchimento aderir melhor às paredes e reduzir o efeito do preenchimento na qualidade de superfícies verticais. Desabilitar este ajuda diminui a quantidade de material usado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1478,22 +1478,22 @@ msgstr "Uma lista de direções de filetes em números inteiros a usar. Elemento
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Deslocamento X do Preenchimento"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "O padrão de preenchimento é corrigido/deslocado nesta distância no eixo X."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Deslocamento do Preenchimento Y"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "O padrão de preenchimento é corrigido/deslocado nesta distância no eixo Y."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1643,7 +1643,7 @@ msgstr "Distância de Expansão do Contorno"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "expand_skins_expand_distance description"
|
||||
msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
|
||||
msgstr ""
|
||||
msgstr "A distância em que os contornos são expandidos pra dentro do preenchimento. Valores mais altos fazem o contorno aderir melhor ao padrão de preenchimento e faz as paredes de camadas vizinhas aderirem melhor ao contorno. Valores menores diminuem a quantidade de material usado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "top_skin_expand_distance label"
|
||||
|
@ -1808,22 +1808,22 @@ msgstr "Ajusta o diâmetro do filamento utilizado. Acerte este valor com o diâm
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Tendência à Aderência"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Tendência de aderência da superfície"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Energia de Superfície"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Energia de superfície."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3556,6 +3556,8 @@ msgid ""
|
|||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
"A distância horizontal entre o skirt a primeira camada da impressão.\n"
|
||||
"Esta é a distância mínima. Linhas múltiplas de skirt estenderão além desta distância."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3615,7 +3617,7 @@ msgstr "Amaciamento do Raft"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Este ajuste controla quanto os cantos internos do contorno do raft são arredondados. Esses cantos internos são convertidos em semicírculos com raio igual ao valor dado aqui. Este ajuste também remove furos no contorno do raft que forem menores que o círculo equivalente."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4090,12 +4092,12 @@ msgstr "Normalmente o Cura tenta costurar pequenos furos na malha e remover part
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Resolução Máxima"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "O tamanho mínimo de um segmento de linha após o fatiamento. Se você aumentar este valor, a malha terá uma resolução menor. Isto pode permitir que a impressora mantenha a velocidade que precisa para processar o G-Code e aumentará a velocidade de fatiamento ao remover detalhes da malha que não poderia processar de qualquer jeito."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4130,12 +4132,12 @@ msgstr "Troca quais volumes sobrepondo malhas vão pertencer a cada camada, de m
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Remover Camadas Iniciais Vazias"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Remove camadas vazias entre a primeira camada impressa se estiverem presentes. Desabilitar este ajuste pode criar camadas iniciais vazias se a Tolerância de Fatiamento estiver configurada para Exclusivo ou Meio."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4665,22 +4667,22 @@ msgstr "A distância média entre os pontos aleatórios introduzidos em cada seg
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Deslocamento de extrusão máxima da compensação de taxa de fluxo."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "A distância máxima em mm a compensar."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Fator de compensaçõ de taxa de fluxo"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "O fator de multiplicação para a tradução entre taxa de fluxo -> distância."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
|
209
resources/i18n/ru_RU/cura.po
Executable file → Normal file
209
resources/i18n/ru_RU/cura.po
Executable file → Normal file
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-23 10:40+0300\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Ruslan Popov <ruslan.popov@gmail.com>\n"
|
||||
"Language-Team: Ruslan Popov\n"
|
||||
"Language: ru_RU\n"
|
||||
|
@ -93,7 +93,7 @@ msgstr "Файл отправлен через Doodle3D Connect"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Открыть Connect..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -143,7 +143,7 @@ msgstr "Невозможно запустить новое задание, по
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Принтер недоступен"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -595,7 +595,7 @@ msgstr "Подключиться через сеть"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "Для {machine_name} доступны новые функции! Рекомендуется обновить встроенное программное обеспечение принтера."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -606,7 +606,7 @@ msgstr "Доступна новая прошивка %s"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Порядок обновления"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -641,7 +641,7 @@ msgstr "Ошибка при запуске %s!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Вид моделирования"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -651,7 +651,7 @@ msgstr "Cura не аккуратно отображает слои при исп
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Вид моделирования"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -732,7 +732,7 @@ msgstr "Не могу выполнить слайсинг на текущих н
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Не удалось выполнить слайсинг из-за настроек модели. Следующие настройки ошибочны для одной или нескольких моделей: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -767,25 +767,25 @@ msgstr "Правка параметров модели"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Установить"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Не удалось скопировать файлы плагинов Siemens NX. Проверьте переменную среды UGII_USER_DIR. Ей не назначен каталог."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Плагин Siemens NX Cura успешно установлен."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Не удалось скопировать файлы плагинов Siemens NX. Проверьте переменную среды UGII_USER_DIR."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Не удалось установить плагин Siemens NX. Не удалось установить переменную среды UGII_USER_DIR для Siemens NX."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -948,7 +948,7 @@ msgstr "Другое"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Неизвестно"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1013,12 +1013,12 @@ msgstr "Собственный материал"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Общие"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Не переопределен"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1067,7 +1067,7 @@ msgstr "Экспортирование профиля в <filename>{0}</filename
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "Экспорт успешно завершен"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1139,85 +1139,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>Произошло критическое исключение. Отправьте нам этот отчёт о сбое, чтобы мы могли устранить проблему</p></b>\n <p>Нажмите кнопку «Отправить отчёт», чтобы автоматически отправить отчёт об ошибке на наш сервер</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Информация о системе"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Неизвестно"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Версия Cura:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Платформа:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Версия Qt:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Версия PyQt:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Версия OpenGL: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Поставщик OpenGL: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>Средство визуализации OpenGL: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "Диагностика исключения"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Журналы"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Описание пользователя"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Отправить отчёт"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1255,7 +1255,7 @@ msgstr "Невозможно открыть любой другой файл, е
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "Выбранная модель слишком мала для загрузки."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1516,10 +1516,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"Для печати на вашем принтере через сеть, пожалуйста, удостоверьтесь, что ваш принтер подключен к сети с помощью кабеля или через WiFi. Если вы не подключили Cura к вашему принтеру, вы по прежнему можете использовать USB флешку для переноса G-Code файлов на ваш принтер.\n"
|
||||
"\n"
|
||||
"Укажите ваш принтер в списке ниже:"
|
||||
msgstr "Для печати на вашем принтере через сеть, пожалуйста, удостоверьтесь, что ваш принтер подключен к сети с помощью кабеля или через WiFi. Если вы не подключили Cura к вашему принтеру, вы по прежнему можете использовать USB флешку для переноса G-Code файлов на ваш принтер.\n\nУкажите ваш принтер в списке ниже:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1633,7 +1630,7 @@ msgstr "%1 не настроен для управления группой по
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Открытие страницы заданий печати в веб-браузере по умолчанию."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1668,7 +1665,7 @@ msgstr "Потеряно соединение с принтером"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Отключено"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1683,12 +1680,12 @@ msgstr "Завершено"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "Приостановлено"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Возобновляется"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1830,12 +1827,12 @@ msgstr "Тип линии"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Скорость подачи"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Толщина слоя"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1885,12 +1882,12 @@ msgstr "Внутренняя стенка"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "мин."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "макс."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2130,7 +2127,7 @@ msgstr "%1 из %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Загрузка проекта приведет к удалению всех моделей на рабочем столе."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2173,7 +2170,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "Этот плагин содержит лицензию.\nЧтобы установить этот плагин, необходимо принять условия лицензии.\nПринять приведенные ниже условия?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2188,7 +2185,7 @@ msgstr "Отклонить"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Пользовательское соглашение"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2438,9 +2435,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"Вы изменили некоторые параметры профиля.\n"
|
||||
"Желаете сохранить их или вернуть к прежним значениям?"
|
||||
msgstr "Вы изменили некоторые параметры профиля.\nЖелаете сохранить их или вернуть к прежним значениям?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3071,7 +3066,7 @@ msgstr "О Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "версия: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3083,9 +3078,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura разработана компанией Ultimaker B.V. совместно с сообществом.\n"
|
||||
"Cura использует следующие проекты с открытым исходным кодом:"
|
||||
msgstr "Cura разработана компанией Ultimaker B.V. совместно с сообществом.\nCura использует следующие проекты с открытым исходным кодом:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3170,7 +3163,7 @@ msgstr "Библиотека обрезки полигонов"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Библиотека Python HTTP"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3190,7 +3183,7 @@ msgstr "Профиль:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "отсутствуют доступные профили"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3198,10 +3191,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"Значения некоторых параметров отличаются от значений профиля.\n"
|
||||
"\n"
|
||||
"Нажмите для открытия менеджера профилей."
|
||||
msgstr "Значения некоторых параметров отличаются от значений профиля.\n\nНажмите для открытия менеджера профилей."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3239,10 +3229,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"Некоторые из скрытых параметров используют значения, отличающиеся от их вычисленных значений.\n"
|
||||
"\n"
|
||||
"Щёлкните. чтобы сделать эти параметры видимыми."
|
||||
msgstr "Некоторые из скрытых параметров используют значения, отличающиеся от их вычисленных значений.\n\nЩёлкните. чтобы сделать эти параметры видимыми."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3270,10 +3257,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"Значение этого параметра отличается от значения в профиле.\n"
|
||||
"\n"
|
||||
"Щёлкните для восстановления значения из профиля."
|
||||
msgstr "Значение этого параметра отличается от значения в профиле.\n\nЩёлкните для восстановления значения из профиля."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3281,10 +3265,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"Обычно это значение вычисляется, но в настоящий момент было установлено явно.\n"
|
||||
"\n"
|
||||
"Щёлкните для восстановления вычисленного значения."
|
||||
msgstr "Обычно это значение вычисляется, но в настоящий момент было установлено явно.\n\nЩёлкните для восстановления вычисленного значения."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3296,51 +3277,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"Настройка принтера отключена\n"
|
||||
"G-code файлы нельзя изменять"
|
||||
msgstr "Настройка принтера отключена\nG-code файлы нельзя изменять"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00 ч 00 мин"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Формат отображения времени</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Настройка расчета стоимости"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1 м"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1 г"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Итого:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1 м / ~ %2 г / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1 м / ~ %2 г"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3467,27 +3446,27 @@ msgstr "Нагрев горячего стола перед печатью. Вы
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Управление принтером"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Положение толчковой подачи"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Расстояние толчковой подачи"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3532,7 +3511,7 @@ msgstr "Выход"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Сбросить положение камеры"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3777,7 +3756,7 @@ msgstr "Импортировать всё как модели"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3934,7 +3913,7 @@ msgstr "Высота слоя"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "В настоящее время активен пользовательский профиль. Чтобы включить ползунок качества, на вкладке «Пользовательские» выберите профиль качества по умолчанию"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3954,7 +3933,7 @@ msgstr "Быстрее"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "В некоторые настройки профиля были внесены изменения. Если их необходимо изменить, перейдите в пользовательский режим."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4047,7 +4026,7 @@ msgstr "Материал"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Проверить совместимость</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4187,12 +4166,12 @@ msgstr "Интеграция с SolidWorks"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Открытие вида моделирования."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Вид моделирования"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4272,17 +4251,17 @@ msgstr "Обновляет конфигурацию Cura 2.7 до Cura 3.0."
|
|||
#: VersionUpgrade/VersionUpgrade27to30/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 2.7 to 3.0"
|
||||
msgstr ""
|
||||
msgstr "Обновление версии с 2.7 до 3.0"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Обновление конфигураций с Cura 3.0 до Cura 3.1."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "Обновление версии с 3.0 до 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4347,12 +4326,12 @@ msgstr "Инструмент для настройки каждой модели
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Позволяет установить кнопку «Экспортировать в Cura» в Siemens NX."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integration"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4417,12 +4396,12 @@ msgstr "Запись 3MF"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Запрашивает согласие пользователя с условиями лицензии"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "UserAgreement"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4464,13 +4443,13 @@ msgstr "Чтение профиля Cura"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Рекомендуется регулярно обновлять прошивку принтера {machine_name}. Это может сделано когда {machine_name} подключен к сети или к USB."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Просмотр слоёв"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Просмотр слоёв"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Просмотр слоёв"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Просмотр слоёв"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4571,9 +4550,9 @@ msgstr "Чтение профиля Cura"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Предоставляет послойный просмотр."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Просмотр слоёв"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Просмотр слоёв"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4894,9 +4873,9 @@ msgstr "Чтение профиля Cura"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "Предоставляет поддержку для импортирования профилей из GCode файлов."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Просмотр слоёв"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Просмотр слоёв"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-09 19:26+0300\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Ruslan Popov <ruslan.popov@gmail.com>\n"
|
||||
"Language-Team: Ruslan Popov\n"
|
||||
"Language: ru_RU\n"
|
||||
|
|
68
resources/i18n/ru_RU/fdmprinter.def.json.po
Executable file → Normal file
68
resources/i18n/ru_RU/fdmprinter.def.json.po
Executable file → Normal file
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-23 11:19+0300\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Ruslan Popov <ruslan.popov@gmail.com>\n"
|
||||
"Language-Team: Ruslan Popov\n"
|
||||
"Language: ru_RU\n"
|
||||
|
@ -58,9 +58,7 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Команды в G-коде, которые будут выполнены при старте печати, разделённые \n"
|
||||
"."
|
||||
msgstr "Команды в G-коде, которые будут выполнены при старте печати, разделённые \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -72,9 +70,7 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"Команды в G-коде, которые будут выполнены в конце печати, разделённые \n"
|
||||
"."
|
||||
msgstr "Команды в G-коде, которые будут выполнены в конце печати, разделённые \n."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -614,27 +610,27 @@ msgstr "Высота первого слоя в миллиметрах. Боле
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Допуск слайсинга"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Способ выполнения слайсинга слоев диагональными поверхностями. Области слоя можно создать на основе места пересечения середины слоя и поверхности (Середина). Кроме того, каждый слой может иметь области, попадающие в объем по высоте слоя (Исключение), или слой имеет области, попадающие в любое место слоя (Включение). Способ «Исключение» сохраняет больше деталей. Способ «Включение» обеспечивает наилучшую подгонку. Способ «Середина» требует минимального времени для обработки."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Середина"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Исключение"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Включение"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -809,7 +805,7 @@ msgstr "Этот экструдер используется для печати
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "Экструдер внутренней стенки"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1389,7 +1385,7 @@ msgstr "Шаблон заполнения"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Шаблон заполняющего материала печати. Линейное и зигзагообразное заполнение меняет направление на чередующихся слоях, снижая расходы на материал. Шаблоны «сетка», «треугольник», «шестигранник из треугольников», «куб», «восьмигранник», «четверть куба», «крестовое», «концентрическое» полностью печатаются в каждом слое. Шаблоны заполнения «куб», «четверть куба», «восьмигранник» меняются в каждом слое, чтобы обеспечить более равномерное распределение прочности в каждом направлении."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1409,7 +1405,7 @@ msgstr "Треугольник"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Шестигранник из треугольников"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1464,7 +1460,7 @@ msgstr "Соединять линии заполнения"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "Соединение мест пересечения шаблона заполнения и внутренних стенок с использованием линии, повторяющей контур внутренней стенки. Использование этой функции улучшает сцепление заполнения со стенками и снижает влияние заполнения на качество вертикальных поверхностей. Отключение этой функции снижает расход материала."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1479,22 +1475,22 @@ msgstr "Список направлений линии при печати сл
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Смещение заполнения по X"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "Расстояние смещения шаблона заполнения по оси X."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Смещение заполнения по Y"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "Расстояние смещения шаблона заполнения по оси Y."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1809,22 +1805,22 @@ msgstr "Укажите диаметр используемой нити."
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Тенденция к прилипанию"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Тенденция к прилипанию к поверхности."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Поверхностная энергия"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Поверхностная энергия."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3556,7 +3552,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "Горизонтальное расстояние между юбкой и первым слоем печати.\nМинимальное расстояние. Несколько линий юбки будут расширяться от этого расстояния."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3616,7 +3612,7 @@ msgstr "Сглаживание подложки"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Этот параметр регулирует величину скругления внутренних углов контура подложки. Внутренние углы скругляются до полукруга с радиусом, равным установленному здесь значению. Этот параметр также приводит к удалению отверстий в контуре подложки, которые меньше такого круга."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4091,12 +4087,12 @@ msgstr "Обычно Cura пытается закрыть небольшие о
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Максимальное разрешение"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "Минимальный размер сегмента линии после слайсинга. Увеличение значения этого параметра понизит разрешение модели. Это может позволить принтеру поддерживать скорость обработки кода G и увеличит скорость слайсинга за счет удаления деталей модели, которые он в любом случае не сможет обработать."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4131,12 +4127,12 @@ msgstr "Чередует какой из объектов, пересекающ
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Удалить первые пустые слои"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Удаление пустых слоёв под первым печатаемым слоем, если они имеются. Отключение этой функции может привести к созданию первых пустых слоев, если для параметра «Допуск слайсинга» установлено значение «Включение» или «Середина»."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4666,22 +4662,22 @@ msgstr "Среднее расстояние между случайными то
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Макс. смещение экструзии для компенсации расхода"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "Максимальное компенсируемое расстояние в миллиметрах."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Коэффициент компенсации расхода"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "Коэффициент перевода расхода в расстояние."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4833,9 +4829,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"Расстояние движения вверх, при котором выдавливание идёт на половине скорости.\n"
|
||||
"Это может улучшить прилипание к предыдущим слоям, не перегревая материал тех слоёв. Применяется только при каркасной печати."
|
||||
msgstr "Расстояние движения вверх, при котором выдавливание идёт на половине скорости.\nЭто может улучшить прилипание к предыдущим слоям, не перегревая материал тех слоёв. Применяется только при каркасной печати."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Turkish\n"
|
||||
"Language: tr_TR\n"
|
||||
|
@ -91,7 +91,7 @@ msgstr "Doodle3D Connect’e dosya gönderildi"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "Connect'i aç.."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -141,7 +141,7 @@ msgstr "Yazıcı meşgul veya bağlı olmadığı için yeni bir işlem başlat
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "Yazıcı Mevcut Değil"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -593,7 +593,7 @@ msgstr "Ağ ile Bağlan"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "{machine_name} adlı cihazınız için yeni özellikler var! Yazıcınızın fabrika yazılımını güncellemeniz önerilir."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -604,7 +604,7 @@ msgstr "Yeni %s bellenimi mevcut"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "Nasıl güncellenir"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -639,7 +639,7 @@ msgstr "%s başlatılırken hata oluştu!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "Simülasyon görünümü"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -649,7 +649,7 @@ msgstr "Tel Yazma etkinleştirildiğinde, Cura katmanları doğru olarak görün
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Simülasyon Görünümü"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -730,7 +730,7 @@ msgstr "Geçerli ayarlarla dilimlenemiyor. Şu ayarlarda hata var: {0}"
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "Modele özgü ayarlar nedeniyle dilimlenemedi. Şu ayarlar bir veya daha fazla modelde hataya yol açıyor: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -765,25 +765,25 @@ msgstr "Model Başına Ayarları Yapılandır"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "Yükle"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX eklenti dosyaları kopyalanamadı. Lütfen UGII_USER_DIR ayarınızı kontrol edin. Bir dizine ayarlı değil."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Cura eklentisi başarıyla yüklendi."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX eklenti dosyaları kopyalanamadı. Lütfen UGII_USER_DIR ayarınızı kontrol edin."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX eklentisi yüklenemedi. Siemens NX ortam değişkeni UGII_USER_DIR ayarlanamadı."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -946,7 +946,7 @@ msgstr "Diğer"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Bilinmiyor"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1011,12 +1011,12 @@ msgstr "Özel Malzeme"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "Genel"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "Geçersiz kılınmadı"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1065,7 +1065,7 @@ msgstr "Profil <filename>{0}</filename> dosyasına aktarıldı"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "Dışa aktarma başarılı"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1137,85 +1137,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>Çok ciddi bir istisna oluştu. Lütfen sorunu çözmek için bize Çökme Raporu'nu gönderin</p></b>\n <p>Sunucularımıza otomatik olarak bir hata raporu yüklemek için lütfen \"Rapor gönder\" düğmesini kullanın</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "Sistem bilgileri"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "Bilinmiyor"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Cura sürümü:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Platform:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Qt sürümü:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>PyQt sürümü:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL Sürümü: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL Satıcısı: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL Oluşturucusu: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "İstisna geri izleme"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "Günlükler"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "Kullanıcı açıklaması"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "Rapor gönder"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1253,7 +1253,7 @@ msgstr "G-code yüklenirken başka bir dosya açılamaz. {0} içe aktarma atland
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "Seçilen model yüklenemeyecek kadar küçüktü."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1514,10 +1514,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"Yazıcınıza ağ üzerinden doğrudan bağlamak için, lütfen yazıcınızın ağ kablosu kullanan bir ağa bağlı olduğundan emin olun veya yazıcınızı WiFi ağına bağlayın. Cura'ya yazıcınız ile bağlanamıyorsanız g-code dosyalarını yazıcınıza aktarmak için USB sürücüsü kullanabilirsiniz.\n"
|
||||
"\n"
|
||||
"Aşağıdaki listeden yazıcınızı seçin:"
|
||||
msgstr "Yazıcınıza ağ üzerinden doğrudan bağlamak için, lütfen yazıcınızın ağ kablosu kullanan bir ağa bağlı olduğundan emin olun veya yazıcınızı WiFi ağına bağlayın. Cura'ya yazıcınız ile bağlanamıyorsanız g-code dosyalarını yazıcınıza aktarmak için USB sürücüsü kullanabilirsiniz.\n\nAşağıdaki listeden yazıcınızı seçin:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1631,7 +1628,7 @@ msgstr "%1, bağlı Ultimaker 3 yazıcı grubunu barındırmak için ayarlı de
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "Yazdırma işlerini varsayılan web tarayıcınızda açar."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1666,7 +1663,7 @@ msgstr "Yazıcı bağlantısı koptu"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "Devre dışı"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1681,12 +1678,12 @@ msgstr "Tamamlandı"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "Duraklatıldı"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "Devam ediliyor"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1828,12 +1825,12 @@ msgstr "Çizgi Tipi"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "Besleme hızı"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "Katman kalınlığı"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1883,12 +1880,12 @@ msgstr "İç Duvar"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "min"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "maks"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2126,7 +2123,7 @@ msgstr "%1 / %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "Bir projenin yüklenmesi derleme levhasındaki tüm modelleri siler."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2169,7 +2166,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "Bu eklenti bir lisans içerir.\nBu eklentiyi yüklemek için bu lisansı kabul etmeniz gerekir.\nAşağıdaki koşulları kabul ediyor musunuz?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2184,7 +2181,7 @@ msgstr "Reddet"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "Kullanıcı Anlaşması"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2434,9 +2431,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"Bazı profil ayarlarını özelleştirdiniz.\n"
|
||||
"Bu ayarları kaydetmek veya iptal etmek ister misiniz?"
|
||||
msgstr "Bazı profil ayarlarını özelleştirdiniz.\nBu ayarları kaydetmek veya iptal etmek ister misiniz?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3067,7 +3062,7 @@ msgstr "Cura hakkında"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "sürüm: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3079,9 +3074,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura, topluluk iş birliği ile Ultimaker B.V. tarafından geliştirilmiştir.\n"
|
||||
"Cura aşağıdaki açık kaynak projelerini gururla kullanmaktadır:"
|
||||
msgstr "Cura, topluluk iş birliği ile Ultimaker B.V. tarafından geliştirilmiştir.\nCura aşağıdaki açık kaynak projelerini gururla kullanmaktadır:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3166,7 +3159,7 @@ msgstr "Poligon kırpma kitaplığı"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Python HTTP kitaplığı"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3186,7 +3179,7 @@ msgstr "Profil:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "Hiçbir Profil Yok"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3194,10 +3187,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"Bazı ayar/geçersiz kılma değerleri profilinizde saklanan değerlerden farklıdır.\n"
|
||||
"\n"
|
||||
"Profil yöneticisini açmak için tıklayın."
|
||||
msgstr "Bazı ayar/geçersiz kılma değerleri profilinizde saklanan değerlerden farklıdır.\n\nProfil yöneticisini açmak için tıklayın."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3235,10 +3225,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"Gizlenen bazı ayarlar normal hesaplanan değerden farklı değerler kullanır.\n"
|
||||
"\n"
|
||||
"Bu ayarları görmek için tıklayın."
|
||||
msgstr "Gizlenen bazı ayarlar normal hesaplanan değerden farklı değerler kullanır.\n\nBu ayarları görmek için tıklayın."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,10 +3253,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"Bu ayarın değeri profilden farklıdır.\n"
|
||||
"\n"
|
||||
"Profil değerini yenilemek için tıklayın."
|
||||
msgstr "Bu ayarın değeri profilden farklıdır.\n\nProfil değerini yenilemek için tıklayın."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3277,10 +3261,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"Bu ayar normal olarak yapılır ama şu anda mutlak değer ayarı var.\n"
|
||||
"\n"
|
||||
"Hesaplanan değeri yenilemek için tıklayın."
|
||||
msgstr "Bu ayar normal olarak yapılır ama şu anda mutlak değer ayarı var.\n\nHesaplanan değeri yenilemek için tıklayın."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3292,51 +3273,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"Yazdırma Ayarı devre dışı\n"
|
||||
"G-code dosyaları üzerinde değişiklik yapılamaz"
|
||||
msgstr "Yazdırma Ayarı devre dışı\nG-code dosyaları üzerinde değişiklik yapılamaz"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00sa 00dk"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>Zaman koşulları</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "Maliyet koşulları"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1 m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1 g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "Toplam:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1 m / ~ %2 g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1 m / ~ %2 g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3461,27 +3440,27 @@ msgstr "Yazdırma öncesinde yatağı ısıt. Isıtma sırasında yazdırma işi
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "Yazıcı kontrolü"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "Jog Konumu"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "Jog Mesafesi"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3526,7 +3505,7 @@ msgstr "&Çıkış"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "&Kamera konumunu sıfırla"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3768,7 +3747,7 @@ msgstr "Tümünü model olarak içe aktar"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3925,7 +3904,7 @@ msgstr "Katman Yüksekliği"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "Özel bir profil şu anda aktif. Kalite kaydırıcısını etkinleştirmek için Özel sekmesinde varsayılan bir kalite seçin"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3945,7 +3924,7 @@ msgstr "Daha Hızlı"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "Bazı profil ayarlarını değiştirdiniz. Bunları değişiklikleri kaydetmek istiyorsanız, özel moda gidin."
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4037,7 +4016,7 @@ msgstr "Malzeme"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>Uyumluluğu kontrol et</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4177,12 +4156,12 @@ msgstr "SolidWorks Entegrasyonu"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "Simülasyon görünümünü sunar."
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "Simülasyon Görünümü"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4267,12 +4246,12 @@ msgstr "2.7’den 3.0’a Sürüm Yükseltme"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "Yapılandırmaları Cura 3.0'dan Cura 3.1'e yükseltir."
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "3.0'dan 3.1'e Sürüm Yükseltme"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4337,12 +4316,12 @@ msgstr "Model Başına Ayarlar Aracı"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "Siemens NX'de bir \"Cura'ya dışa aktar\" düğmesi kurmanıza yardımcı olur."
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX Integration"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4407,12 +4386,12 @@ msgstr "3MF Yazıcı"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "Kullanıcıya bir kez lisansımızı kabul edip etmediğini sorun"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "UserAgreement"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4454,13 +4433,13 @@ msgstr "Cura Profil Okuyucu"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "Makinenizin {machine_name} en son özellikler ile donanımlı olmasını sağlamak için bellenimi düzenli olarak güncellenmeniz önerilir. Bu, (ağa bağlı olduğunuzda) {machine_name} üzerinde veya USB ile gerçekleştirilebilir."
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "Katman görünümü"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "Katman görünümü"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Katman Görünümü"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "Katman Görünümü"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4562,9 +4541,9 @@ msgstr "Cura Profil Okuyucu"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "Katman görünümü sağlar."
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Katman Görünümü"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "Katman Görünümü"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4885,9 +4864,9 @@ msgstr "Cura Profil Okuyucu"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "G-code dosyalarından profilleri içe aktarmak için destek sağlar."
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "Katman Görünümü"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "Katman Görünümü"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-11 14:30+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Turkish\n"
|
||||
"Language: tr_TR\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Turkish\n"
|
||||
"Language: tr_TR\n"
|
||||
|
@ -56,9 +56,7 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"\n"
|
||||
" ile ayrılan, başlangıçta yürütülecek G-code komutları."
|
||||
msgstr "\n ile ayrılan, başlangıçta yürütülecek G-code komutları."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -70,9 +68,7 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"\n"
|
||||
" ile ayrılan, bitişte yürütülecek Gcode komutları."
|
||||
msgstr "\n ile ayrılan, bitişte yürütülecek Gcode komutları."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -612,27 +608,27 @@ msgstr "İlk katmanın milimetre cinsinden yüksekliği. Kalın ilk katmanlar ya
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "Dilimleme Toleransı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "Çapraz yüzeylerle katman dilimleme yolları. Bir katmanın alanları katmanın ortasının yüzeyle kesiştiği yere (Ortalayıcı) göre oluşturulabilir. Diğer bir yol da her katmanın yüksekliği boyunca hacim içinde kalan alanları (Dışlayıcı) veya katmanın içinde herhangi bir yerde kalan alanları (Kapsayıcı) almasıdır. Dışlayıcı seçenek en çok ayrıntıyı tutar; Kapsayıcı seçenek en iyi şekilde oturur; Ortalayıcı ise en kısa sürede işlenir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Ortalayıcı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Dışlayıcı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Kapsayıcı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -807,7 +803,7 @@ msgstr "Dış Duvarı yazdırmak için kullanılan ekstruder dişli çarkı. Ço
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "İç Duvar Ekstrüderi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1387,7 +1383,7 @@ msgstr "Dolgu Şekli"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "Baskının dolgu malzemesinin şeklidir. Hat ve zikzak dolgu, farklı katmanlar üzerinde yön değiştirerek malzeme maliyetini azaltır. Izgara, üçgen, üçlü altıgen, kübik, sekizlik, çeyrek kübik, çapraz ve eşmerkezli şekiller, her katmana tam olarak basılır. Kübik, çeyrek kübik ve sekizlik dolgu, her yönde daha eşit bir kuvvet dağılımı sağlamak için her katmanda değişir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1407,7 +1403,7 @@ msgstr "Üçgenler"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "Üçlü Altıgen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1462,7 +1458,7 @@ msgstr "Dolgu Hatlarını Bağlayın"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "İç duvarın şeklini takip eden bir hattı kullanarak dolgu şeklinin iç duvarla buluştuğu noktada uçları bağlar. Bu ayarın etkinleştirilmesi, dolgunun duvarlara daha iyi yapışmasını sağlayabilir ve dolgunun dikey yüzeylerin kalitesinin etkilerini azaltabilir. Bu ayarın devre dışı bırakılması, kullanılan malzemenin miktarını azaltır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1477,22 +1473,22 @@ msgstr "Kullanılacak tam sayı hat yönü listesi. Listedeki öğeler, katmanla
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "Dolgu X Kayması"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "Dolgu şekli X ekseni boyunca bu mesafe kadar kaydırılır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "Dolgu Y Kayması"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "Dolgu şekli Y ekseni boyunca bu mesafe kadar kaydırılır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1807,22 +1803,22 @@ msgstr "Kullanılan filamanın çapını ayarlar. Bu değeri kullanılan filaman
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "Yapışma Eğilimi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "Yüzeye yapışma eğilimi."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "Yüzey Enerjisi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "Yüzey enerjisi."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3554,7 +3550,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "Baskının eteği ve ilk katmanı arasındaki yatay mesafe.\nMinimum mesafedir. Bu mesafeden çok sayıda etek hattı dışarı doğru uzanır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3614,7 +3610,7 @@ msgstr "Radye Düzeltme"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "Bu ayar, radye ana hattında yer alan iç köşelerin ne kadar yuvarlanacağını kontrol eder. İç köşeler, burada belirtilen değere eşit yarıçapa sahip yarım daire şeklinde yuvarlanır. Ayrıca bu ayar, söz konusu daireden daha küçük olan radye ana hattındaki delikleri ortadan kaldırır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4089,12 +4085,12 @@ msgstr "Normal koşullarda, Cura ağdaki küçük boşlukları diker ve büyük
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "Maksimum Çözünürlük"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "Bir çizginin dilimlemeden sonraki minimum boyutu. Bu değer artırıldıktan sonra örgünün çözünürlüğü düşer. Bu, yazıcının g-kodunu işlemek için gereken hıza yetişmesine olanak tanır ve örtünün zaten işlenemeyecek ayrıntılarını kaldırarak dilimleme hızını artırır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4129,12 +4125,12 @@ msgstr "Çakışan bileşimlerin birbirine karışması için her bir katmanda b
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "Boş İlk Katmanları Kaldır"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "Basılan ilk katmanın altındaki varsa boş katmanları kaldır. Bu ayarın devre dışı bırakılması, Dilimleme Toleransı Dışlayıcı veya Ortalayıcı olarak ayarlanmışsa, boş ilk katmanlar oluşmasına neden olabilir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4664,22 +4660,22 @@ msgstr "Her bir hat dilimine tanıtılan rastgele noktalar arasındaki ortalama
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "Akış hızı dengelemesi maksimum ekstrüzyon kayması"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "Dengelenecek, mm cinsinden maksimum mesafe."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "Akış hızı dengeleme çarpanı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "Akış hızından -> mesafeye dönüştürme için çarpan."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4831,9 +4827,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"Yarı hızda sıkıştırılmış yukarı doğru hareket mesafesi.\n"
|
||||
"Bu katmanlarda malzemeyi çok fazla ısıtmayarak önceki katmanlarda daha iyi yapışma sağlayabilir. Sadece kablo yazdırmaya uygulanır."
|
||||
msgstr "Yarı hızda sıkıştırılmış yukarı doğru hareket mesafesi.\nBu katmanlarda malzemeyi çok fazla ısıtmayarak önceki katmanlarda daha iyi yapışma sağlayabilir. Sadece kablo yazdırmaya uygulanır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0100\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: PCDotFan <pc@edu.ax>, Bothof <info@bothof.nl>\n"
|
||||
"Language: zh_CN\n"
|
||||
|
@ -93,7 +93,7 @@ msgstr "已发送至 Doodle3D Connect 的文件"
|
|||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@action:button"
|
||||
msgid "Open Connect..."
|
||||
msgstr ""
|
||||
msgstr "打开 Connect..."
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/Doodle3D-cura-plugin/Doodle3D/D3DCloudPrintOutputDevicePlugin.py:214
|
||||
msgctxt "@info:tooltip"
|
||||
|
@ -143,7 +143,7 @@ msgstr "无法启动新作业,因为打印机处于忙碌状态或未连接。
|
|||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:154
|
||||
msgctxt "@info:title"
|
||||
msgid "Printer Unavailable"
|
||||
msgstr ""
|
||||
msgstr "打印机不可用"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/USBPrinting/USBPrinterOutputDevice.py:457
|
||||
msgctxt "@info:status"
|
||||
|
@ -595,7 +595,7 @@ msgstr "通过网络连接"
|
|||
#, python-brace-format
|
||||
msgctxt "@info Don't translate {machine_name}, since it gets replaced by a printer name!"
|
||||
msgid "New features are available for your {machine_name}! It is recommended to update the firmware on your printer."
|
||||
msgstr ""
|
||||
msgstr "您的 {machine_name} 有新功能可用! 建议您更新打印机上的固件。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:65
|
||||
#, python-format
|
||||
|
@ -606,7 +606,7 @@ msgstr "新 %s 固件可用"
|
|||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:66
|
||||
msgctxt "@action:button"
|
||||
msgid "How to update"
|
||||
msgstr ""
|
||||
msgstr "如何更新"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/FirmwareUpdateChecker/FirmwareUpdateCheckerJob.py:77
|
||||
msgctxt "@info"
|
||||
|
@ -641,7 +641,7 @@ msgstr "启动 %s 时发生错误!"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/__init__.py:14
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Simulation view"
|
||||
msgstr ""
|
||||
msgstr "仿真视图"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:100
|
||||
msgctxt "@info:status"
|
||||
|
@ -651,7 +651,7 @@ msgstr "当单线打印(Wire Printing)功能开启时,Cura 将无法准确
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.py:101
|
||||
msgctxt "@info:title"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "仿真视图"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.py:26
|
||||
msgid "Modify G-Code"
|
||||
|
@ -732,7 +732,7 @@ msgstr "无法使用当前设置进行切片。以下设置存在错误:{0}"
|
|||
#, python-brace-format
|
||||
msgctxt "@info:status"
|
||||
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
|
||||
msgstr ""
|
||||
msgstr "因部分特定模型设置而无法切片。 以下设置在一个或多个模型上存在错误: {error_labels}"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:326
|
||||
msgctxt "@info:status"
|
||||
|
@ -767,25 +767,25 @@ msgstr "设置对每个模型的单独设定"
|
|||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:23
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
msgstr "安装"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:43
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR. It is not set to a directory."
|
||||
msgstr ""
|
||||
msgstr "复制 Siemens NX 插件文件失败。 请检查您的 UGII_USER_DIR。 未将其设置到目录中。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:50
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:59
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:81
|
||||
msgid "Successfully installed Siemens NX Cura plugin."
|
||||
msgstr ""
|
||||
msgstr "已成功安装 Siemens NX Cura 插件。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:65
|
||||
msgid "Failed to copy Siemens NX plugins files. Please check your UGII_USER_DIR."
|
||||
msgstr ""
|
||||
msgstr "复制 Siemens NX 插件文件失败。 请检查您的 UGII_USER_DIR。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/cura-siemensnx-plugin/Installer.py:85
|
||||
msgid "Failed to install Siemens NX plugin. Could not set environment variable UGII_USER_DIR for Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "安装 Siemens NX 插件失败。 无法为 Siemens NX 设置环境变量 UGII_USER_DIR。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.py:167
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:585
|
||||
|
@ -948,7 +948,7 @@ msgstr "其它"
|
|||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:199
|
||||
msgctxt "@label unknown material"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "未知"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/PrintInformation.py:284
|
||||
#, python-brace-format
|
||||
|
@ -1013,12 +1013,12 @@ msgstr "自定义材料"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:182
|
||||
msgctxt "@menuitem"
|
||||
msgid "Global"
|
||||
msgstr ""
|
||||
msgstr "全局"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/ExtrudersModel.py:229
|
||||
msgctxt "@menuitem"
|
||||
msgid "Not overridden"
|
||||
msgstr ""
|
||||
msgstr "未覆盖"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MachineManager.py:117
|
||||
msgctxt "@info:status"
|
||||
|
@ -1029,7 +1029,7 @@ msgstr "所选材料与所选机器或配置不兼容。"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/MaterialManager.py:24
|
||||
msgctxt "@info:title"
|
||||
msgid "Incompatible Material"
|
||||
msgstr ""
|
||||
msgstr "不兼容材料"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/MaterialManager.py:24
|
||||
msgctxt "@info:status Has a cancel button next to it."
|
||||
|
@ -1067,7 +1067,7 @@ msgstr "配置文件已导出至:<filename> {0} </filename>"
|
|||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:157
|
||||
msgctxt "@info:title"
|
||||
msgid "Export succeeded"
|
||||
msgstr ""
|
||||
msgstr "导出成功"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:183
|
||||
#: /home/ruben/Projects/Cura/cura/Settings/CuraContainerRegistry.py:205
|
||||
|
@ -1139,85 +1139,85 @@ msgid ""
|
|||
"<p><b>A fatal exception has occurred. Please send us this Crash Report to fix the problem</p></b>\n"
|
||||
" <p>Please use the \"Send report\" button to post a bug report automatically to our servers</p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
msgstr "<p><b>发生了致命错误。 请将这份错误报告发送给我们以便修复问题</p></b>\n <p>请使用“发送报告”按钮将错误报告自动发布到我们的服务器</p>\n "
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:101
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "System information"
|
||||
msgstr ""
|
||||
msgstr "系统信息"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:109
|
||||
msgctxt "@label unknown version of Cura"
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
msgstr "未知"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:111
|
||||
#, python-brace-format
|
||||
msgctxt "@label Cura version"
|
||||
msgid "<b>Cura version:</b> {version}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Cura 版本:</b> {version}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:112
|
||||
#, python-brace-format
|
||||
msgctxt "@label Platform"
|
||||
msgid "<b>Platform:</b> {platform}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>平台:</b> {platform}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:113
|
||||
#, python-brace-format
|
||||
msgctxt "@label Qt version"
|
||||
msgid "<b>Qt version:</b> {qt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>Qt 版本:</b> {qt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:114
|
||||
#, python-brace-format
|
||||
msgctxt "@label PyQt version"
|
||||
msgid "<b>PyQt version:</b> {pyqt}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>PyQt 版本:</b> {pyqt}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:115
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL"
|
||||
msgid "<b>OpenGL:</b> {opengl}<br/>"
|
||||
msgstr ""
|
||||
msgstr "<b>OpenGL:</b> {opengl}<br/>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:130
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL version"
|
||||
msgid "<li>OpenGL Version: {version}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL 版本: {version}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:131
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL vendor"
|
||||
msgid "<li>OpenGL Vendor: {vendor}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL 供应商: {vendor}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:132
|
||||
#, python-brace-format
|
||||
msgctxt "@label OpenGL renderer"
|
||||
msgid "<li>OpenGL Renderer: {renderer}</li>"
|
||||
msgstr ""
|
||||
msgstr "<li>OpenGL 渲染器: {renderer}</li>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:141
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Exception traceback"
|
||||
msgstr ""
|
||||
msgstr "异常追溯"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:208
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "Logs"
|
||||
msgstr ""
|
||||
msgstr "日志"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:231
|
||||
msgctxt "@title:groupbox"
|
||||
msgid "User description"
|
||||
msgstr ""
|
||||
msgstr "用户说明"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CrashHandler.py:246
|
||||
msgctxt "@action:button"
|
||||
msgid "Send report"
|
||||
msgstr ""
|
||||
msgstr "发送报告"
|
||||
|
||||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:256
|
||||
msgctxt "@info:progress"
|
||||
|
@ -1255,7 +1255,7 @@ msgstr "如果加载 G-code,则无法打开其他任何文件。{0} 已跳过
|
|||
#: /home/ruben/Projects/Cura/cura/CuraApplication.py:1416
|
||||
msgctxt "@info:status"
|
||||
msgid "The selected model was too small to load."
|
||||
msgstr ""
|
||||
msgstr "所选模型过小,无法加载。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsAction.qml:59
|
||||
msgctxt "@title"
|
||||
|
@ -1516,10 +1516,7 @@ msgid ""
|
|||
"To print directly to your printer over the network, please make sure your printer is connected to the network using a network cable or by connecting your printer to your WIFI network. If you don't connect Cura with your printer, you can still use a USB drive to transfer g-code files to your printer.\n"
|
||||
"\n"
|
||||
"Select your printer from the list below:"
|
||||
msgstr ""
|
||||
"要通过网络向打印机发送打印请求,请确保您的打印机已通过网线或 WIFI 连接到网络。若您不能连接 Cura 与打印机,您仍然可以使用 USB 设备将 G-code 文件传输到打印机。\n"
|
||||
"\n"
|
||||
"从以下列表中选择您的打印机:"
|
||||
msgstr "要通过网络向打印机发送打印请求,请确保您的打印机已通过网线或 WIFI 连接到网络。若您不能连接 Cura 与打印机,您仍然可以使用 USB 设备将 G-code 文件传输到打印机。\n\n从以下列表中选择您的打印机:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/DiscoverUM3Action.qml:75
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:44
|
||||
|
@ -1633,7 +1630,7 @@ msgstr "%1 未设置为运行一组连接的 Ultimaker 3 打印机"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:14
|
||||
msgctxt "@info:tooltip"
|
||||
msgid "Opens the print jobs page with your default web browser."
|
||||
msgstr ""
|
||||
msgstr "使用默认 Web 浏览器打开打印作业页面。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/OpenPanelButton.qml:15
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/ClusterControlItem.qml:131
|
||||
|
@ -1668,7 +1665,7 @@ msgstr "与打印机的连接中断"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:257
|
||||
msgctxt "@label:status"
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "已禁用"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:273
|
||||
msgctxt "@label:status"
|
||||
|
@ -1683,12 +1680,12 @@ msgstr "已完成"
|
|||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:290
|
||||
msgctxt "@label:status"
|
||||
msgid "Paused"
|
||||
msgstr ""
|
||||
msgstr "已暂停"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:292
|
||||
msgctxt "@label:status"
|
||||
msgid "Resuming"
|
||||
msgstr ""
|
||||
msgstr "恢复"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UM3NetworkPrinting/PrinterInfoBlock.qml:294
|
||||
msgctxt "@label:status"
|
||||
|
@ -1830,12 +1827,12 @@ msgstr "走线类型"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:104
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Feedrate"
|
||||
msgstr ""
|
||||
msgstr "进给速度"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:108
|
||||
msgctxt "@label:listbox"
|
||||
msgid "Layer thickness"
|
||||
msgstr ""
|
||||
msgstr "层厚度"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:148
|
||||
msgctxt "@label"
|
||||
|
@ -1885,12 +1882,12 @@ msgstr "内壁"
|
|||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:378
|
||||
msgctxt "@label"
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
msgstr "最小"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/SimulationView/SimulationView.qml:420
|
||||
msgctxt "@label"
|
||||
msgid "max"
|
||||
msgstr ""
|
||||
msgstr "最大"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
|
||||
msgctxt "@title:window"
|
||||
|
@ -2126,7 +2123,7 @@ msgstr "%1 / %2"
|
|||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:368
|
||||
msgctxt "@action:warning"
|
||||
msgid "Loading a project will clear all models on the build plate."
|
||||
msgstr ""
|
||||
msgstr "加载项目将清除打印平台上的所有模型。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:386
|
||||
msgctxt "@action:button"
|
||||
|
@ -2169,7 +2166,7 @@ msgid ""
|
|||
"This plugin contains a license.\n"
|
||||
"You need to accept this license to install this plugin.\n"
|
||||
"Do you agree with the terms below?"
|
||||
msgstr ""
|
||||
msgstr "该插件包含一个许可。\n您需要接受此许可才能安装此插件。\n是否同意下列条款?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/PluginBrowser/PluginBrowser.qml:242
|
||||
msgctxt "@action:button"
|
||||
|
@ -2184,7 +2181,7 @@ msgstr "拒绝"
|
|||
#: /home/ruben/Projects/Cura/plugins/UserAgreementPlugin/UserAgreement.qml:16
|
||||
msgctxt "@title:window"
|
||||
msgid "User Agreement"
|
||||
msgstr ""
|
||||
msgstr "用户协议"
|
||||
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UM2UpgradeSelectionMachineAction.qml:25
|
||||
#: /home/ruben/Projects/Cura/plugins/UltimakerMachineActions/UMOUpgradeSelectionMachineAction.qml:25
|
||||
|
@ -2434,9 +2431,7 @@ msgctxt "@text:window"
|
|||
msgid ""
|
||||
"You have customized some profile settings.\n"
|
||||
"Would you like to keep or discard those settings?"
|
||||
msgstr ""
|
||||
"您已自定义某些配置文件设置。\n"
|
||||
"您想保留或舍弃这些设置吗?"
|
||||
msgstr "您已自定义某些配置文件设置。\n您想保留或舍弃这些设置吗?"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/DiscardOrKeepProfileChangesDialog.qml:110
|
||||
msgctxt "@title:column"
|
||||
|
@ -3067,7 +3062,7 @@ msgstr "关于 Cura"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:43
|
||||
msgctxt "@label"
|
||||
msgid "version: %1"
|
||||
msgstr ""
|
||||
msgstr "版本: %1"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:56
|
||||
msgctxt "@label"
|
||||
|
@ -3079,9 +3074,7 @@ msgctxt "@info:credit"
|
|||
msgid ""
|
||||
"Cura is developed by Ultimaker B.V. in cooperation with the community.\n"
|
||||
"Cura proudly uses the following open source projects:"
|
||||
msgstr ""
|
||||
"Cura 由 Ultimaker B.V. 与社区合作开发。\n"
|
||||
"Cura 使用以下开源项目:"
|
||||
msgstr "Cura 由 Ultimaker B.V. 与社区合作开发。\nCura 使用以下开源项目:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:118
|
||||
msgctxt "@label"
|
||||
|
@ -3166,7 +3159,7 @@ msgstr "多边形剪辑库"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:135
|
||||
msgctxt "@Label"
|
||||
msgid "Python HTTP library"
|
||||
msgstr ""
|
||||
msgstr "Python HTTP 库"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/AboutDialog.qml:137
|
||||
msgctxt "@label"
|
||||
|
@ -3186,7 +3179,7 @@ msgstr "配置文件:"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:66
|
||||
msgctxt "@"
|
||||
msgid "No Profile Available"
|
||||
msgstr ""
|
||||
msgstr "没有配置文件可用"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:104
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3194,10 +3187,7 @@ msgid ""
|
|||
"Some setting/override values are different from the values stored in the profile.\n"
|
||||
"\n"
|
||||
"Click to open the profile manager."
|
||||
msgstr ""
|
||||
"某些设置/重写值与存储在配置文件中的值不同。\n"
|
||||
"\n"
|
||||
"点击打开配置文件管理器。"
|
||||
msgstr "某些设置/重写值与存储在配置文件中的值不同。\n\n点击打开配置文件管理器。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingView.qml:152
|
||||
msgctxt "@label:textbox"
|
||||
|
@ -3235,10 +3225,7 @@ msgid ""
|
|||
"Some hidden settings use values different from their normal calculated value.\n"
|
||||
"\n"
|
||||
"Click to make these settings visible."
|
||||
msgstr ""
|
||||
"一些隐藏设置正在使用有别于一般设置的计算值。\n"
|
||||
"\n"
|
||||
"单击以使这些设置可见。"
|
||||
msgstr "一些隐藏设置正在使用有别于一般设置的计算值。\n\n单击以使这些设置可见。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:62
|
||||
msgctxt "@label Header for list of settings."
|
||||
|
@ -3266,10 +3253,7 @@ msgid ""
|
|||
"This setting has a value that is different from the profile.\n"
|
||||
"\n"
|
||||
"Click to restore the value of the profile."
|
||||
msgstr ""
|
||||
"此设置的值与配置文件不同。\n"
|
||||
"\n"
|
||||
"单击以恢复配置文件的值。"
|
||||
msgstr "此设置的值与配置文件不同。\n\n单击以恢复配置文件的值。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Settings/SettingItem.qml:284
|
||||
msgctxt "@label"
|
||||
|
@ -3277,10 +3261,7 @@ msgid ""
|
|||
"This setting is normally calculated, but it currently has an absolute value set.\n"
|
||||
"\n"
|
||||
"Click to restore the calculated value."
|
||||
msgstr ""
|
||||
"此设置通常可被自动计算,但其当前已被绝对定义。\n"
|
||||
"\n"
|
||||
"单击以恢复自动计算的值。"
|
||||
msgstr "此设置通常可被自动计算,但其当前已被绝对定义。\n\n单击以恢复自动计算的值。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:120
|
||||
msgctxt "@label:listbox"
|
||||
|
@ -3292,51 +3273,49 @@ msgctxt "@label:listbox"
|
|||
msgid ""
|
||||
"Print Setup disabled\n"
|
||||
"G-code files cannot be modified"
|
||||
msgstr ""
|
||||
"打印设置已禁用\n"
|
||||
"G-code 文件无法被修改"
|
||||
msgstr "打印设置已禁用\nG-code 文件无法被修改"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:336
|
||||
msgctxt "@label Hours and minutes"
|
||||
msgid "00h 00min"
|
||||
msgstr ""
|
||||
msgstr "00 小时 00 分"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:354
|
||||
msgctxt "@tooltip"
|
||||
msgid "<b>Time specification</b><br/><table>"
|
||||
msgstr ""
|
||||
msgstr "<b>时间规范</b><br/><table>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:429
|
||||
msgctxt "@label"
|
||||
msgid "Cost specification"
|
||||
msgstr ""
|
||||
msgstr "成本规定"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:434
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:445
|
||||
msgctxt "@label m for meter"
|
||||
msgid "%1m"
|
||||
msgstr ""
|
||||
msgstr "%1m"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:435
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:446
|
||||
msgctxt "@label g for grams"
|
||||
msgid "%1g"
|
||||
msgstr ""
|
||||
msgstr "%1g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:444
|
||||
msgctxt "@label"
|
||||
msgid "Total:"
|
||||
msgstr ""
|
||||
msgstr "总计:"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:498
|
||||
msgctxt "@label Print estimates: m for meters, g for grams, %4 is currency and %3 is print cost"
|
||||
msgid "%1m / ~ %2g / ~ %4 %3"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g / ~ %4 %3"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:503
|
||||
msgctxt "@label Print estimates: m for meters, g for grams"
|
||||
msgid "%1m / ~ %2g"
|
||||
msgstr ""
|
||||
msgstr "%1m / ~ %2g"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Sidebar.qml:586
|
||||
msgctxt "@tooltip"
|
||||
|
@ -3459,27 +3438,27 @@ msgstr "打印前请预热热床。您可以在热床加热时继续调整相关
|
|||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:703
|
||||
msgctxt "@label"
|
||||
msgid "Printer control"
|
||||
msgstr ""
|
||||
msgstr "打印机控制"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:717
|
||||
msgctxt "@label"
|
||||
msgid "Jog Position"
|
||||
msgstr ""
|
||||
msgstr "垛齐位置"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:735
|
||||
msgctxt "@label"
|
||||
msgid "X/Y"
|
||||
msgstr ""
|
||||
msgstr "X/Y"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:842
|
||||
msgctxt "@label"
|
||||
msgid "Z"
|
||||
msgstr ""
|
||||
msgstr "Z"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:907
|
||||
msgctxt "@label"
|
||||
msgid "Jog Distance"
|
||||
msgstr ""
|
||||
msgstr "垛齐距离"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/PrintMonitor.qml:1018
|
||||
msgctxt "@label"
|
||||
|
@ -3524,7 +3503,7 @@ msgstr "退出(&Q)"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:107
|
||||
msgctxt "@action:inmenu menubar:view"
|
||||
msgid "&Reset camera position"
|
||||
msgstr ""
|
||||
msgstr "重置摄像头位置(&R)"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Actions.qml:114
|
||||
msgctxt "@action:inmenu"
|
||||
|
@ -3763,7 +3742,7 @@ msgstr "导入所有模型"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:19
|
||||
msgctxt "@title:window"
|
||||
msgid "Ultimaker Cura"
|
||||
msgstr ""
|
||||
msgstr "Ultimaker Cura"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/Cura.qml:81
|
||||
msgctxt "@title:menu menubar:toplevel"
|
||||
|
@ -3920,7 +3899,7 @@ msgstr "层高"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:323
|
||||
msgctxt "@tooltip"
|
||||
msgid "A custom profile is currently active. To enable the quality slider, choose a default quality profile in Custom tab"
|
||||
msgstr ""
|
||||
msgstr "自定义配置文件目前处于活动状态。 如要启用质量滑块,请在“自定义”选项卡中选择一个默认质量配置文件"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:340
|
||||
msgctxt "@label"
|
||||
|
@ -3940,7 +3919,7 @@ msgstr "更快"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:388
|
||||
msgctxt "@tooltip"
|
||||
msgid "You have modified some profile settings. If you want to change these go to custom mode."
|
||||
msgstr ""
|
||||
msgstr "您已修改部分配置文件设置。 如果您想对其进行更改,请转至自定义模式。"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarSimple.qml:413
|
||||
msgctxt "@label"
|
||||
|
@ -4031,7 +4010,7 @@ msgstr "材料"
|
|||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:349
|
||||
msgctxt "@label"
|
||||
msgid "<a href='%1'>Check compatibility</a>"
|
||||
msgstr ""
|
||||
msgstr "<a href='%1'>检查兼容性</a>"
|
||||
|
||||
#: /home/ruben/Projects/Cura/resources/qml/SidebarHeader.qml:369
|
||||
msgctxt "@tooltip"
|
||||
|
@ -4171,12 +4150,12 @@ msgstr "SolidWorks 集成"
|
|||
#: SimulationView/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Provides the Simulation view."
|
||||
msgstr ""
|
||||
msgstr "提供仿真视图"
|
||||
|
||||
#: SimulationView/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Simulation View"
|
||||
msgstr ""
|
||||
msgstr "仿真视图"
|
||||
|
||||
#: PostProcessingPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4261,12 +4240,12 @@ msgstr "版本自 2.7 升级到 3.0"
|
|||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
|
||||
msgstr ""
|
||||
msgstr "将配置从 Cura 3.0 版本升级至 3.1 版本。"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade30to31/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Version Upgrade 3.0 to 3.1"
|
||||
msgstr ""
|
||||
msgstr "版本自 3.0 升级到 3.1"
|
||||
|
||||
#: VersionUpgrade/VersionUpgrade26to27/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4331,12 +4310,12 @@ msgstr "单一模型设置工具"
|
|||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Helps you to install an 'export to Cura' button in Siemens NX."
|
||||
msgstr ""
|
||||
msgstr "帮助您在 Siemens NX 中安装一个“导出至 Cura”按钮。"
|
||||
|
||||
#: cura-siemensnx-plugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "Siemens NX Integration"
|
||||
msgstr ""
|
||||
msgstr "Siemens NX 集成"
|
||||
|
||||
#: 3MFReader/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4401,12 +4380,12 @@ msgstr "3MF 写入器"
|
|||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "description"
|
||||
msgid "Ask the user once if he/she agrees with our license"
|
||||
msgstr ""
|
||||
msgstr "询问用户一次是否同意我们的许可"
|
||||
|
||||
#: UserAgreementPlugin/plugin.json
|
||||
msgctxt "name"
|
||||
msgid "UserAgreement"
|
||||
msgstr ""
|
||||
msgstr "用户协议"
|
||||
|
||||
#: UltimakerMachineActions/plugin.json
|
||||
msgctxt "description"
|
||||
|
@ -4448,13 +4427,13 @@ msgstr "Cura 配置文件读取器"
|
|||
#~ msgid "To ensure that your {machine_name} is equipped with the latest features it is recommended to update the firmware regularly. This can be done on the {machine_name} (when connected to the network) or via USB."
|
||||
#~ msgstr "为确保您的 {machine_name} 具备最新功能,建议定期更新固件。 更新可在 {machine_name} 上(连接至网络时)或通过 USB 进行。"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "Layer view"
|
||||
#~ msgstr "分层视图"
|
||||
msgctxt "@item:inlistbox"
|
||||
msgid "Layer view"
|
||||
msgstr "分层视图"
|
||||
|
||||
#~ msgctxt "@info:title"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "分层视图"
|
||||
msgctxt "@info:title"
|
||||
msgid "Layer View"
|
||||
msgstr "分层视图"
|
||||
|
||||
#~ msgctxt "@menuitem"
|
||||
#~ msgid "Browse plugins"
|
||||
|
@ -4555,9 +4534,9 @@ msgstr "Cura 配置文件读取器"
|
|||
#~ msgid "Provides the Layer view."
|
||||
#~ msgstr "提供分层视图。"
|
||||
|
||||
#~ msgctxt "name"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "分层视图"
|
||||
msgctxt "name"
|
||||
msgid "Layer View"
|
||||
msgstr "分层视图"
|
||||
|
||||
#~ msgctxt "@item:inlistbox"
|
||||
#~ msgid "X-Ray"
|
||||
|
@ -4878,9 +4857,9 @@ msgstr "Cura 配置文件读取器"
|
|||
#~ msgid "Provides support for importing profiles from g-code files."
|
||||
#~ msgstr "提供了从 GCode 文件中导入配置文件的支持。"
|
||||
|
||||
#~ msgctxt "@label"
|
||||
#~ msgid "Layer View"
|
||||
#~ msgstr "分层视图"
|
||||
msgctxt "@label"
|
||||
msgid "Layer View"
|
||||
msgstr "分层视图"
|
||||
|
||||
#~ msgctxt "@info:whatsthis"
|
||||
#~ msgid "Provides the Layer view."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-08-28 11:00+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: PCDotFan <pc@edu.ax>, Bothof <info@bothof.nl>\n"
|
||||
"Language: zh_CN\n"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgstr ""
|
|||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: http://github.com/ultimaker/uranium\n"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
|
||||
"PO-Revision-Date: 2017-11-30 13:05+0100\n"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: PCDotFan <pc@edu.ax>, Bothof <info@bothof.nl>\n"
|
||||
"Language: zh_CN\n"
|
||||
|
@ -58,9 +58,7 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"在开始后执行的 G-code 命令 - 以 \n"
|
||||
" 分行"
|
||||
msgstr "在开始后执行的 G-code 命令 - 以 \n 分行"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -72,9 +70,7 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr ""
|
||||
"在结束前执行的 G-code 命令 - 以 \n"
|
||||
" 分行"
|
||||
msgstr "在结束前执行的 G-code 命令 - 以 \n 分行"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -614,27 +610,27 @@ msgstr "起始层高(以毫米为单位)。起始层越厚,与打印平台
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
msgstr ""
|
||||
msgstr "切片公差"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance description"
|
||||
msgid "How to slice layers with diagonal surfaces. The areas of a layer can be generated based on where the middle of the layer intersects the surface (Middle). Alternatively each layer can have the areas which fall inside of the volume throughout the height of the layer (Exclusive) or a layer has the areas which fall inside anywhere within the layer (Inclusive). Exclusive retains the most details, Inclusive makes for the best fit and Middle takes the least time to process."
|
||||
msgstr ""
|
||||
msgstr "如何对带有对角线表面的层进行切片。层面积可以根据层的中心与表面(中间)相交的位置生成。或者每一层的面积可以为落在整个层高度中成形体积内的面积 (Exclusive),或者为落在层中任何位置的面积 (Inclusive)。Exclusive 保留大部分细节,Inclusive 可实现最佳匹配,而 Middle 需要的处理的时间最少。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
msgstr "Middle"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
msgstr "Exclusive"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
msgstr "Inclusive"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
|
@ -809,7 +805,7 @@ msgstr "用于打印外壁的挤出机组。 用于多重挤出。"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
msgstr "内壁挤出机"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1389,7 +1385,7 @@ msgstr "填充图案"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern description"
|
||||
msgid "The pattern of the infill material of the print. The line and zig zag infill swap direction on alternate layers, reducing material cost. The grid, triangle, tri-hexagon, cubic, octet, quarter cubic, cross and concentric patterns are fully printed every layer. Cubic, quarter cubic and octet infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
msgstr ""
|
||||
msgstr "打印填充材料的图案。线条和锯齿形填充在交替层上交换方向,从而降低材料成本。网格、三角形、内六角、立方体、八角形、四面体、交叉和同心图案在每层完整打印。立方体、四面体和八角形填充随每层变化,以在各个方向提供更均衡的强度分布。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1409,7 +1405,7 @@ msgstr "三角形"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
msgstr "内六角"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
|
@ -1464,7 +1460,7 @@ msgstr "连接填充走线"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr ""
|
||||
msgstr "使用沿内壁形状的走线连接填充图案与内壁相接的各端。启用此设置会使填充更好地粘着在壁上,减少填充物效果对垂直表面质量的影响。禁用此设置可减少使用的材料量。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1479,22 +1475,22 @@ msgstr "要使用的整数走线方向列表。 列表中的元素随层的进
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
msgstr "填充 X 轴偏移量"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
msgstr "填充图案沿 X 轴偏移此距离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
msgstr "填充 Y 轴偏移量"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
msgstr "填充图案沿 Y 轴偏移此距离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
|
@ -1809,22 +1805,22 @@ msgstr "调整所用耗材的直径。 将此值与所用耗材的直径匹配
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
msgstr "附着倾向"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
msgstr "表面附着倾向。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
msgstr "表面能"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
msgstr "表面能。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
|
@ -3556,7 +3552,7 @@ msgctxt "skirt_gap description"
|
|||
msgid ""
|
||||
"The horizontal distance between the skirt and the first layer of the print.\n"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
msgstr "skirt 和打印第一层之间的水平距离。\n这是最小距离。多个 skirt 走线将从此距离向外延伸。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3616,7 +3612,7 @@ msgstr "Raft 平滑度"
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting controls how much inner corners in the raft outline are rounded. Inward corners are rounded to a semi circle with a radius equal to the value given here. This setting also removes holes in the raft outline which are smaller than such a circle."
|
||||
msgstr ""
|
||||
msgstr "该设置控制 Raft 轮廓中的内角呈圆形的程度。内向角被设置为半圆形,半径等于此处的值。此设置还会移除 raft 轮廓中小于此半圆形的孔。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -4091,12 +4087,12 @@ msgstr "一般情况下,Cura 会尝试缝合网格中的小孔,并移除有
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
msgstr ""
|
||||
msgstr "最大分辨率"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution description"
|
||||
msgid "The minimum size of a line segment after slicing. If you increase this, the mesh will have a lower resolution. This may allow the printer to keep up with the speed it has to process g-code and will increase slice speed by removing details of the mesh that it can't process anyway."
|
||||
msgstr ""
|
||||
msgstr "走线部分在切片后的最小尺寸。如果提高此值,网格的分辨率将降低。这可让打印机保持处理 g-code 所需的速度,并将通过移除无法处理的网格细节提高切片速度。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
|
@ -4131,12 +4127,12 @@ msgstr "切换为与每个层相交的网格相交体积,以便重叠的网格
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
msgstr ""
|
||||
msgstr "移除空白第一层"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers description"
|
||||
msgid "Remove empty layers beneath the first printed layer if they are present. Disabling this setting can cause empty first layers if the Slicing Tolerance setting is set to Exclusive or Middle."
|
||||
msgstr ""
|
||||
msgstr "移除第一个打印层下方的空白层(如果存在)。如果“切片公差”设置被设为“独占”或“中间”,禁用此设置可能导致空白第一层。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
|
@ -4666,22 +4662,22 @@ msgstr "在每个走线部分引入的随机点之间的平均距离。 注意
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
msgstr "流量补偿最大挤出偏移值"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
msgstr "以毫米为单位的最大补偿距离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
msgstr "流量补偿因子"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
msgstr "流量的倍增因子-> 距离转换。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
|
@ -4833,9 +4829,7 @@ msgctxt "wireframe_up_half_speed description"
|
|||
msgid ""
|
||||
"Distance of an upward move which is extruded with half speed.\n"
|
||||
"This can cause better adhesion to previous layers, while not heating the material in those layers too much. Only applies to Wire Printing."
|
||||
msgstr ""
|
||||
"以半速挤出的上行移动的距离。\n"
|
||||
"这会与之前的层产生更好的附着,而不会将这些层中的材料过度加热。 仅应用于单线打印。"
|
||||
msgstr "以半速挤出的上行移动的距离。\n这会与之前的层产生更好的附着,而不会将这些层中的材料过度加热。 仅应用于单线打印。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
|
4901
resources/i18n/zh_TW/cura.po
Normal file
4901
resources/i18n/zh_TW/cura.po
Normal file
File diff suppressed because it is too large
Load diff
210
resources/i18n/zh_TW/fdmextruder.def.json.po
Normal file
210
resources/i18n/zh_TW/fdmextruder.def.json.po
Normal file
|
@ -0,0 +1,210 @@
|
|||
# Cura JSON setting files
|
||||
# Copyright (C) 2017 Ultimaker
|
||||
# This file is distributed under the same license as the Cura package.
|
||||
# Ruben Dulek <r.dulek@ultimaker.com>, 2017.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.1\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\n"
|
||||
"PO-Revision-Date: 2017-11-22 23:36+0800\n"
|
||||
"Last-Translator: Zhang Heh Ji <dinowchang@gmail.com>\n"
|
||||
"Language-Team: TEAM\n"
|
||||
"Language: zh_TW\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 2.0.4\n"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_settings label"
|
||||
msgid "Machine"
|
||||
msgstr "機型"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_settings description"
|
||||
msgid "Machine specific settings"
|
||||
msgstr "機器詳細設定"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_nr label"
|
||||
msgid "Extruder"
|
||||
msgstr "擠出機"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_nr description"
|
||||
msgid "The extruder train used for printing. This is used in multi-extrusion."
|
||||
msgstr "用於列印的擠出機,在多擠出機情況下適用。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_id label"
|
||||
msgid "Nozzle ID"
|
||||
msgstr "噴頭 ID"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_id description"
|
||||
msgid "The nozzle ID for an extruder train, such as \"AA 0.4\" and \"BB 0.8\"."
|
||||
msgstr "擠出機組的噴頭 ID,比如 \"AA 0.4\" 和 \"BB 0.8\"。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_size label"
|
||||
msgid "Nozzle Diameter"
|
||||
msgstr "噴頭直徑"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_size description"
|
||||
msgid ""
|
||||
"The inner diameter of the nozzle. Change this setting when using a non-"
|
||||
"standard nozzle size."
|
||||
msgstr "噴頭內徑,在使用非標準噴頭尺寸時需更改此設定。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_offset_x label"
|
||||
msgid "Nozzle X Offset"
|
||||
msgstr "噴頭 X 軸偏移量"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_offset_x description"
|
||||
msgid "The x-coordinate of the offset of the nozzle."
|
||||
msgstr "噴頭 X 軸座標偏移。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_offset_y label"
|
||||
msgid "Nozzle Y Offset"
|
||||
msgstr "噴頭 Y 軸偏移量"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_nozzle_offset_y description"
|
||||
msgid "The y-coordinate of the offset of the nozzle."
|
||||
msgstr "噴頭 Y 軸座標偏移。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_code label"
|
||||
msgid "Extruder Start G-Code"
|
||||
msgstr "擠出機起始 G-code"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_code description"
|
||||
msgid "Start g-code to execute whenever turning the extruder on."
|
||||
msgstr "打開擠出機將執行此段 G-code。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_pos_abs label"
|
||||
msgid "Extruder Start Position Absolute"
|
||||
msgstr "擠出機起點絕對位置"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_pos_abs description"
|
||||
msgid ""
|
||||
"Make the extruder starting position absolute rather than relative to the "
|
||||
"last-known location of the head."
|
||||
msgstr "讓擠出機以絕對位置做為起點,而不是與前一次位置的相對位置。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_pos_x label"
|
||||
msgid "Extruder Start Position X"
|
||||
msgstr "擠出機起始位置 X 座標"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_pos_x description"
|
||||
msgid "The x-coordinate of the starting position when turning the extruder on."
|
||||
msgstr "打開擠出機時起始位置的 X 座標。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_pos_y label"
|
||||
msgid "Extruder Start Position Y"
|
||||
msgstr "擠出機起始位置 Y 座標"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_start_pos_y description"
|
||||
msgid "The y-coordinate of the starting position when turning the extruder on."
|
||||
msgstr "打開擠壓機時的起始位置 Y 座標。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_code label"
|
||||
msgid "Extruder End G-Code"
|
||||
msgstr "擠出機結束 Gcode"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_code description"
|
||||
msgid "End g-code to execute whenever turning the extruder off."
|
||||
msgstr "在關閉擠出機時,執行結束 G-code。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_pos_abs label"
|
||||
msgid "Extruder End Position Absolute"
|
||||
msgstr "擠出機終點絕對位置"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_pos_abs description"
|
||||
msgid ""
|
||||
"Make the extruder ending position absolute rather than relative to the last-"
|
||||
"known location of the head."
|
||||
msgstr "讓擠出機以絕對位置為終點,而不是與前一次位置的相對位置。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_pos_x label"
|
||||
msgid "Extruder End Position X"
|
||||
msgstr "擠出機結束位置 X 座標"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_pos_x description"
|
||||
msgid "The x-coordinate of the ending position when turning the extruder off."
|
||||
msgstr "關閉擠出機時的終止位置的 X 座標。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_pos_y label"
|
||||
msgid "Extruder End Position Y"
|
||||
msgstr "擠出機終點位置 Y 座標"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "machine_extruder_end_pos_y description"
|
||||
msgid "The y-coordinate of the ending position when turning the extruder off."
|
||||
msgstr "關閉擠出機時的終止位置的 Y 座標。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_prime_pos_z label"
|
||||
msgid "Extruder Prime Z Position"
|
||||
msgstr "擠出機初始 Z 軸位置"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_prime_pos_z description"
|
||||
msgid ""
|
||||
"The Z coordinate of the position where the nozzle primes at the start of "
|
||||
"printing."
|
||||
msgstr "列印開始時,噴頭在 Z 軸座標上的起始位置."
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "platform_adhesion label"
|
||||
msgid "Build Plate Adhesion"
|
||||
msgstr "列印平台附著"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "platform_adhesion description"
|
||||
msgid "Adhesion"
|
||||
msgstr "附著"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_prime_pos_x label"
|
||||
msgid "Extruder Prime X Position"
|
||||
msgstr "擠出機 X 軸座標"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_prime_pos_x description"
|
||||
msgid ""
|
||||
"The X coordinate of the position where the nozzle primes at the start of "
|
||||
"printing."
|
||||
msgstr "列印開始時,噴頭在 X 軸上初始位置。"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_prime_pos_y label"
|
||||
msgid "Extruder Prime Y Position"
|
||||
msgstr "擠出機 Y 軸起始位置"
|
||||
|
||||
#: fdmextruder.def.json
|
||||
msgctxt "extruder_prime_pos_y description"
|
||||
msgid ""
|
||||
"The Y coordinate of the position where the nozzle primes at the start of "
|
||||
"printing."
|
||||
msgstr "列印開始時,噴頭在 Y 軸座標上初始位置。"
|
6222
resources/i18n/zh_TW/fdmprinter.def.json.po
Normal file
6222
resources/i18n/zh_TW/fdmprinter.def.json.po
Normal file
File diff suppressed because it is too large
Load diff
|
@ -244,6 +244,16 @@ Item
|
|||
onTriggered: CuraApplication.groupSelected();
|
||||
}
|
||||
|
||||
Action
|
||||
{
|
||||
id: reloadQmlAction
|
||||
onTriggered:
|
||||
{
|
||||
CuraApplication.reloadQML()
|
||||
}
|
||||
shortcut: "Shift+F5"
|
||||
}
|
||||
|
||||
Action
|
||||
{
|
||||
id: unGroupObjectsAction
|
||||
|
|
|
@ -20,14 +20,16 @@ UM.MainWindow
|
|||
viewportRect: Qt.rect(0, 0, (base.width - sidebar.width) / base.width, 1.0)
|
||||
property bool showPrintMonitor: false
|
||||
|
||||
// This connection is here to support legacy printer output devices that use the showPrintMonitor signal on Application to switch to the monitor stage
|
||||
// It should be phased out in newer plugin versions.
|
||||
Connections
|
||||
{
|
||||
target: Printer
|
||||
onShowPrintMonitor: {
|
||||
if (show) {
|
||||
topbar.startMonitoringPrint()
|
||||
UM.Controller.setActiveStage("MonitorStage")
|
||||
} else {
|
||||
topbar.stopMonitoringPrint()
|
||||
UM.Controller.setActiveStage("PrepareStage")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -46,6 +48,7 @@ UM.MainWindow
|
|||
//
|
||||
// This has been fixed for QtQuick Controls 2 since the Shortcut item has a context property.
|
||||
Cura.Actions.parent = backgroundItem
|
||||
CuraApplication.purgeWindows()
|
||||
}
|
||||
|
||||
Item
|
||||
|
@ -115,7 +118,7 @@ UM.MainWindow
|
|||
MenuItem
|
||||
{
|
||||
id: saveWorkspaceMenu
|
||||
text: catalog.i18nc("@title:menu menubar:file","Save project")
|
||||
text: catalog.i18nc("@title:menu menubar:file","Save &Project...")
|
||||
onTriggered:
|
||||
{
|
||||
if(UM.Preferences.getValue("cura/dialog_on_project_save"))
|
||||
|
@ -330,7 +333,7 @@ UM.MainWindow
|
|||
text: catalog.i18nc("@action:button","Open File");
|
||||
iconSource: UM.Theme.getIcon("load")
|
||||
style: UM.Theme.styles.tool_button
|
||||
tooltip: '';
|
||||
tooltip: ""
|
||||
anchors
|
||||
{
|
||||
top: topbar.bottom;
|
||||
|
@ -357,62 +360,49 @@ UM.MainWindow
|
|||
Topbar
|
||||
{
|
||||
id: topbar
|
||||
anchors.left:parent.left
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.top: parent.top
|
||||
monitoringPrint: base.showPrintMonitor
|
||||
onStartMonitoringPrint: base.showPrintMonitor = true
|
||||
onStopMonitoringPrint: base.showPrintMonitor = false
|
||||
}
|
||||
|
||||
Sidebar
|
||||
{
|
||||
id: sidebar;
|
||||
|
||||
anchors
|
||||
{
|
||||
top: topbar.bottom;
|
||||
bottom: parent.bottom;
|
||||
right: parent.right;
|
||||
}
|
||||
z: 1
|
||||
width: UM.Theme.getSize("sidebar").width;
|
||||
monitoringPrint: base.showPrintMonitor
|
||||
}
|
||||
|
||||
Rectangle
|
||||
{
|
||||
id: viewportOverlay
|
||||
|
||||
color: UM.Theme.getColor("viewport_overlay")
|
||||
anchors
|
||||
{
|
||||
top: topbar.bottom
|
||||
bottom: parent.bottom
|
||||
left:parent.left
|
||||
right: sidebar.left
|
||||
}
|
||||
visible: opacity > 0
|
||||
opacity: base.showPrintMonitor ? 1 : 0
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
acceptedButtons: Qt.AllButtons
|
||||
|
||||
onWheel: wheel.accepted = true
|
||||
}
|
||||
}
|
||||
|
||||
Loader
|
||||
{
|
||||
sourceComponent: Cura.MachineManager.printerOutputDevices.length > 0 ? Cura.MachineManager.printerOutputDevices[0].monitorItem: null
|
||||
visible: base.showPrintMonitor
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.horizontalCenterOffset: - UM.Theme.getSize("sidebar").width / 2
|
||||
anchors.verticalCenterOffset: UM.Theme.getSize("sidebar_header").height / 2
|
||||
property real maximumWidth: viewportOverlay.width
|
||||
property real maximumHeight: viewportOverlay.height
|
||||
id: sidebar
|
||||
|
||||
anchors
|
||||
{
|
||||
top: topbar.bottom
|
||||
bottom: parent.bottom
|
||||
right: parent.right
|
||||
}
|
||||
|
||||
width: UM.Theme.getSize("sidebar").width
|
||||
z: 1
|
||||
|
||||
source: UM.Controller.activeStage.sidebarComponent
|
||||
}
|
||||
|
||||
Loader
|
||||
{
|
||||
id: main
|
||||
|
||||
anchors
|
||||
{
|
||||
top: topbar.bottom
|
||||
bottom: parent.bottom
|
||||
left: parent.left
|
||||
right: sidebar.left
|
||||
}
|
||||
|
||||
MouseArea
|
||||
{
|
||||
visible: UM.Controller.activeStage.mainComponent != ""
|
||||
anchors.fill: parent
|
||||
acceptedButtons: Qt.AllButtons
|
||||
onWheel: wheel.accepted = true
|
||||
}
|
||||
|
||||
source: UM.Controller.activeStage.mainComponent
|
||||
}
|
||||
|
||||
UM.MessageStack
|
||||
|
|
|
@ -12,21 +12,23 @@ Menu
|
|||
title: catalog.i18nc("@title:menu menubar:toplevel", "&View");
|
||||
id: menu
|
||||
enabled: !PrintInformation.preSliced
|
||||
|
||||
// main views
|
||||
Instantiator
|
||||
{
|
||||
model: UM.ViewModel { }
|
||||
model: UM.ViewModel{}
|
||||
MenuItem
|
||||
{
|
||||
text: model.name;
|
||||
checkable: true;
|
||||
checked: model.active;
|
||||
exclusiveGroup: group;
|
||||
onTriggered: UM.Controller.setActiveView(model.id);
|
||||
text: model.name
|
||||
checkable: true
|
||||
checked: model.active
|
||||
exclusiveGroup: group
|
||||
onTriggered: UM.Controller.setActiveView(model.id)
|
||||
}
|
||||
onObjectAdded: menu.insertItem(index, object)
|
||||
onObjectRemoved: menu.removeItem(object)
|
||||
}
|
||||
ExclusiveGroup { id: group; }
|
||||
ExclusiveGroup { id: group }
|
||||
|
||||
MenuSeparator {}
|
||||
MenuItem { action: Cura.Actions.homeCamera; }
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue