mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-11 08:47:50 -06:00
Merge branch 'master' of github.com:Ultimaker/Cura into network_rewrite
This commit is contained in:
commit
219e285b20
112 changed files with 30880 additions and 14277 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -44,6 +44,7 @@ plugins/cura-god-mode-plugin
|
|||
plugins/cura-big-flame-graph
|
||||
plugins/cura-siemensnx-plugin
|
||||
plugins/CuraVariSlicePlugin
|
||||
plugins/CuraLiveScriptingPlugin
|
||||
|
||||
#Build stuff
|
||||
CMakeCache.txt
|
||||
|
|
|
@ -126,8 +126,6 @@ class CuraApplication(QtApplication):
|
|||
# Cura will always show the Add Machine Dialog upon start.
|
||||
stacksValidationFinished = pyqtSignal() # Emitted whenever a validation is finished
|
||||
|
||||
projectFileLoaded = pyqtSignal(str) # Emitted whenever a project file is loaded
|
||||
|
||||
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"]:
|
||||
|
@ -218,7 +216,7 @@ class CuraApplication(QtApplication):
|
|||
"CuraEngineBackend",
|
||||
"UserAgreement",
|
||||
"SolidView",
|
||||
"LayerView",
|
||||
"SimulationView",
|
||||
"STLReader",
|
||||
"SelectionTool",
|
||||
"CameraTool",
|
||||
|
@ -1386,7 +1384,7 @@ class CuraApplication(QtApplication):
|
|||
|
||||
extension = os.path.splitext(filename)[1]
|
||||
if extension.lower() in self._non_sliceable_extensions:
|
||||
self.getController().setActiveView("LayerView")
|
||||
self.getController().setActiveView("SimulationView")
|
||||
view = self.getController().getActiveView()
|
||||
view.resetLayerData()
|
||||
view.setLayer(9999999)
|
||||
|
|
|
@ -47,12 +47,12 @@ class Layer:
|
|||
|
||||
return result
|
||||
|
||||
def build(self, vertex_offset, index_offset, vertices, colors, line_dimensions, extruders, line_types, indices):
|
||||
def build(self, vertex_offset, index_offset, vertices, colors, line_dimensions, feedrates, extruders, line_types, indices):
|
||||
result_vertex_offset = vertex_offset
|
||||
result_index_offset = index_offset
|
||||
self._element_count = 0
|
||||
for polygon in self._polygons:
|
||||
polygon.build(result_vertex_offset, result_index_offset, vertices, colors, line_dimensions, extruders, line_types, indices)
|
||||
polygon.build(result_vertex_offset, result_index_offset, vertices, colors, line_dimensions, feedrates, extruders, line_types, indices)
|
||||
result_vertex_offset += polygon.lineMeshVertexCount()
|
||||
result_index_offset += polygon.lineMeshElementCount()
|
||||
self._element_count += polygon.elementCount
|
||||
|
|
|
@ -20,11 +20,11 @@ class LayerDataBuilder(MeshBuilder):
|
|||
if layer not in self._layers:
|
||||
self._layers[layer] = Layer(layer)
|
||||
|
||||
def addPolygon(self, layer, polygon_type, data, line_width):
|
||||
def addPolygon(self, layer, polygon_type, data, line_width, line_thickness, line_feedrate):
|
||||
if layer not in self._layers:
|
||||
self.addLayer(layer)
|
||||
|
||||
p = LayerPolygon(self, polygon_type, data, line_width)
|
||||
p = LayerPolygon(self, polygon_type, data, line_width, line_thickness, line_feedrate)
|
||||
self._layers[layer].polygons.append(p)
|
||||
|
||||
def getLayer(self, layer):
|
||||
|
@ -64,13 +64,14 @@ class LayerDataBuilder(MeshBuilder):
|
|||
line_dimensions = numpy.empty((vertex_count, 2), numpy.float32)
|
||||
colors = numpy.empty((vertex_count, 4), numpy.float32)
|
||||
indices = numpy.empty((index_count, 2), numpy.int32)
|
||||
feedrates = numpy.empty((vertex_count), numpy.float32)
|
||||
extruders = numpy.empty((vertex_count), numpy.float32)
|
||||
line_types = numpy.empty((vertex_count), numpy.float32)
|
||||
|
||||
vertex_offset = 0
|
||||
index_offset = 0
|
||||
for layer, data in sorted(self._layers.items()):
|
||||
( vertex_offset, index_offset ) = data.build( vertex_offset, index_offset, vertices, colors, line_dimensions, extruders, line_types, indices)
|
||||
( vertex_offset, index_offset ) = data.build( vertex_offset, index_offset, vertices, colors, line_dimensions, feedrates, extruders, line_types, indices)
|
||||
self._element_counts[layer] = data.elementCount
|
||||
|
||||
self.addVertices(vertices)
|
||||
|
@ -107,6 +108,11 @@ class LayerDataBuilder(MeshBuilder):
|
|||
"value": line_types,
|
||||
"opengl_name": "a_line_type",
|
||||
"opengl_type": "float"
|
||||
},
|
||||
"feedrates": {
|
||||
"value": feedrates,
|
||||
"opengl_name": "a_feedrate",
|
||||
"opengl_type": "float"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -28,7 +28,8 @@ class LayerPolygon:
|
|||
# \param data new_points
|
||||
# \param line_widths array with line widths
|
||||
# \param line_thicknesses: array with type as index and thickness as value
|
||||
def __init__(self, extruder, line_types, data, line_widths, line_thicknesses):
|
||||
# \param line_feedrates array with line feedrates
|
||||
def __init__(self, extruder, line_types, data, line_widths, line_thicknesses, line_feedrates):
|
||||
self._extruder = extruder
|
||||
self._types = line_types
|
||||
for i in range(len(self._types)):
|
||||
|
@ -37,6 +38,7 @@ class LayerPolygon:
|
|||
self._data = data
|
||||
self._line_widths = line_widths
|
||||
self._line_thicknesses = line_thicknesses
|
||||
self._line_feedrates = line_feedrates
|
||||
|
||||
self._vertex_begin = 0
|
||||
self._vertex_end = 0
|
||||
|
@ -84,10 +86,11 @@ class LayerPolygon:
|
|||
# \param vertices : vertex numpy array to be filled
|
||||
# \param colors : vertex numpy array to be filled
|
||||
# \param line_dimensions : vertex numpy array to be filled
|
||||
# \param feedrates : vertex numpy array to be filled
|
||||
# \param extruders : vertex numpy array to be filled
|
||||
# \param line_types : vertex numpy array to be filled
|
||||
# \param indices : index numpy array to be filled
|
||||
def build(self, vertex_offset, index_offset, vertices, colors, line_dimensions, extruders, line_types, indices):
|
||||
def build(self, vertex_offset, index_offset, vertices, colors, line_dimensions, feedrates, extruders, line_types, indices):
|
||||
if self._build_cache_line_mesh_mask is None or self._build_cache_needed_points is None:
|
||||
self.buildCache()
|
||||
|
||||
|
@ -109,10 +112,13 @@ class LayerPolygon:
|
|||
# Create an array with colors for each vertex and remove the color data for the points that has been thrown away.
|
||||
colors[self._vertex_begin:self._vertex_end, :] = numpy.tile(self._colors, (1, 2)).reshape((-1, 4))[needed_points_list.ravel()]
|
||||
|
||||
# Create an array with line widths for each vertex.
|
||||
# Create an array with line widths and thicknesses for each vertex.
|
||||
line_dimensions[self._vertex_begin:self._vertex_end, 0] = numpy.tile(self._line_widths, (1, 2)).reshape((-1, 1))[needed_points_list.ravel()][:, 0]
|
||||
line_dimensions[self._vertex_begin:self._vertex_end, 1] = numpy.tile(self._line_thicknesses, (1, 2)).reshape((-1, 1))[needed_points_list.ravel()][:, 0]
|
||||
|
||||
# Create an array with feedrates for each line
|
||||
feedrates[self._vertex_begin:self._vertex_end] = numpy.tile(self._line_feedrates, (1, 2)).reshape((-1, 1))[needed_points_list.ravel()][:, 0]
|
||||
|
||||
extruders[self._vertex_begin:self._vertex_end] = self._extruder
|
||||
|
||||
# Convert type per vertex to type per line
|
||||
|
@ -166,6 +172,14 @@ class LayerPolygon:
|
|||
@property
|
||||
def lineWidths(self):
|
||||
return self._line_widths
|
||||
|
||||
@property
|
||||
def lineThicknesses(self):
|
||||
return self._line_thicknesses
|
||||
|
||||
@property
|
||||
def lineFeedrates(self):
|
||||
return self._line_feedrates
|
||||
|
||||
@property
|
||||
def jumpMask(self):
|
||||
|
|
|
@ -67,11 +67,10 @@ class PrintInformation(QObject):
|
|||
self._base_name = ""
|
||||
self._abbr_machine = ""
|
||||
self._job_name = ""
|
||||
self._project_name = ""
|
||||
|
||||
Application.getInstance().globalContainerStackChanged.connect(self._updateJobName)
|
||||
Application.getInstance().fileLoaded.connect(self.setBaseName)
|
||||
Application.getInstance().projectFileLoaded.connect(self.setProjectName)
|
||||
Application.getInstance().workspaceLoaded.connect(self.setProjectName)
|
||||
Preferences.getInstance().preferenceChanged.connect(self._onPreferencesChanged)
|
||||
|
||||
self._active_material_container = None
|
||||
|
@ -253,11 +252,6 @@ class PrintInformation(QObject):
|
|||
self._job_name = name
|
||||
self.jobNameChanged.emit()
|
||||
|
||||
@pyqtSlot(str)
|
||||
def setProjectName(self, name):
|
||||
self._project_name = name
|
||||
self.setJobName(name)
|
||||
|
||||
jobNameChanged = pyqtSignal()
|
||||
|
||||
@pyqtProperty(str, notify = jobNameChanged)
|
||||
|
@ -265,11 +259,6 @@ class PrintInformation(QObject):
|
|||
return self._job_name
|
||||
|
||||
def _updateJobName(self):
|
||||
# if the project name is set, we use the project name as the job name, so the job name should not get updated
|
||||
# if a model file is loaded after that.
|
||||
if self._project_name != "":
|
||||
return
|
||||
|
||||
if self._base_name == "":
|
||||
self._job_name = ""
|
||||
self.jobNameChanged.emit()
|
||||
|
@ -295,7 +284,11 @@ class PrintInformation(QObject):
|
|||
return self._base_name
|
||||
|
||||
@pyqtSlot(str)
|
||||
def setBaseName(self, base_name):
|
||||
def setProjectName(self, name):
|
||||
self.setBaseName(name, is_project_file = True)
|
||||
|
||||
@pyqtSlot(str)
|
||||
def setBaseName(self, base_name, is_project_file = False):
|
||||
# Ensure that we don't use entire path but only filename
|
||||
name = os.path.basename(base_name)
|
||||
|
||||
|
@ -303,11 +296,17 @@ class PrintInformation(QObject):
|
|||
# extension. This cuts the extension off if necessary.
|
||||
name = os.path.splitext(name)[0]
|
||||
|
||||
# if this is a profile file, always update the job name
|
||||
# name is "" when I first had some meshes and afterwards I deleted them so the naming should start again
|
||||
if name == "" or (self._base_name == "" and self._base_name != name):
|
||||
is_empty = name == ""
|
||||
if is_project_file or (is_empty or (self._base_name == "" and self._base_name != name)):
|
||||
# remove ".curaproject" suffix from (imported) the file name
|
||||
if name.endswith(".curaproject"):
|
||||
name = name[:name.rfind(".curaproject")]
|
||||
self._base_name = name
|
||||
self._updateJobName()
|
||||
|
||||
|
||||
## Created an acronymn-like abbreviated machine name from the currently active machine name
|
||||
# Called each time the global stack is switched
|
||||
def _setAbbreviatedMachineName(self):
|
||||
|
|
|
@ -183,20 +183,11 @@ class QualityManager:
|
|||
|
||||
materials = []
|
||||
|
||||
# TODO: fix this
|
||||
if extruder_stacks:
|
||||
# Multi-extruder machine detected
|
||||
for stack in extruder_stacks:
|
||||
if stack.getId() == active_stack_id and machine_manager.newMaterial:
|
||||
materials.append(machine_manager.newMaterial)
|
||||
else:
|
||||
materials.append(stack.material)
|
||||
else:
|
||||
# Machine with one extruder
|
||||
if global_container_stack.getId() == active_stack_id and machine_manager.newMaterial:
|
||||
for stack in extruder_stacks:
|
||||
if stack.getId() == active_stack_id and machine_manager.newMaterial:
|
||||
materials.append(machine_manager.newMaterial)
|
||||
else:
|
||||
materials.append(global_container_stack.material)
|
||||
materials.append(stack.material)
|
||||
|
||||
quality_types = self.findAllQualityTypesForMachineAndMaterials(global_machine_definition, materials)
|
||||
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
import os
|
||||
import os.path
|
||||
import re
|
||||
import configparser
|
||||
|
||||
from typing import Optional
|
||||
|
||||
|
@ -19,6 +20,7 @@ from UM.Message import Message
|
|||
from UM.Platform import Platform
|
||||
from UM.PluginRegistry import PluginRegistry # For getting the possible profile writers to write with.
|
||||
from UM.Util import parseBool
|
||||
from UM.Resources import Resources
|
||||
|
||||
from . import ExtruderStack
|
||||
from . import GlobalStack
|
||||
|
@ -409,7 +411,7 @@ class CuraContainerRegistry(ContainerRegistry):
|
|||
extruder_stack = None
|
||||
|
||||
# if extruders are defined in the machine definition use those instead
|
||||
if machine.extruders and len(machine.extruders) > 0:
|
||||
if machine.extruders and "0" in machine.extruders:
|
||||
new_extruder_id = machine.extruders["0"].getId()
|
||||
extruder_stack = machine.extruders["0"]
|
||||
|
||||
|
@ -444,14 +446,84 @@ class CuraContainerRegistry(ContainerRegistry):
|
|||
self.addContainer(user_container)
|
||||
|
||||
variant_id = "default"
|
||||
if machine.variant.getId() != "empty_variant":
|
||||
if machine.variant.getId() not in ("empty", "empty_variant"):
|
||||
variant_id = machine.variant.getId()
|
||||
else:
|
||||
variant_id = "empty_variant"
|
||||
extruder_stack.setVariantById(variant_id)
|
||||
extruder_stack.setMaterialById("default")
|
||||
extruder_stack.setQualityById("default")
|
||||
|
||||
material_id = "default"
|
||||
if machine.material.getId() not in ("empty", "empty_material"):
|
||||
# TODO: find the ID that's suitable for this extruder
|
||||
pass
|
||||
else:
|
||||
material_id = "empty_material"
|
||||
extruder_stack.setMaterialById(material_id)
|
||||
|
||||
quality_id = "default"
|
||||
if machine.quality.getId() not in ("empty", "empty_quality"):
|
||||
# TODO: find the ID that's suitable for this extruder
|
||||
pass
|
||||
else:
|
||||
quality_id = "empty_quality"
|
||||
extruder_stack.setQualityById(quality_id)
|
||||
|
||||
if machine.qualityChanges.getId() not in ("empty", "empty_quality_changes"):
|
||||
extruder_quality_changes_container = self.findInstanceContainers(name = machine.qualityChanges.getName(), extruder = extruder_id)
|
||||
if extruder_quality_changes_container:
|
||||
extruder_quality_changes_container = extruder_quality_changes_container[0]
|
||||
quality_changes_id = extruder_quality_changes_container.getId()
|
||||
extruder_stack.setQualityChangesById(quality_changes_id)
|
||||
else:
|
||||
# Some extruder quality_changes containers can be created at runtime as files in the qualities
|
||||
# folder. Those files won't be loaded in the registry immediately. So we also need to search
|
||||
# the folder to see if the quality_changes exists.
|
||||
extruder_quality_changes_container = self._findQualityChangesContainerInCuraFolder(machine.qualityChanges.getName())
|
||||
if extruder_quality_changes_container:
|
||||
quality_changes_id = extruder_quality_changes_container.getId()
|
||||
extruder_stack.setQualityChangesById(quality_changes_id)
|
||||
|
||||
if not extruder_quality_changes_container:
|
||||
Logger.log("w", "Could not find quality_changes named [%s] for extruder [%s]",
|
||||
machine.qualityChanges.getName(), extruder_stack.getId())
|
||||
|
||||
self.addContainer(extruder_stack)
|
||||
|
||||
return extruder_stack
|
||||
|
||||
def _findQualityChangesContainerInCuraFolder(self, name):
|
||||
quality_changes_dir = Resources.getPath(CuraApplication.ResourceTypes.QualityInstanceContainer)
|
||||
|
||||
instance_container = None
|
||||
|
||||
for item in os.listdir(quality_changes_dir):
|
||||
file_path = os.path.join(quality_changes_dir, item)
|
||||
if not os.path.isfile(file_path):
|
||||
continue
|
||||
|
||||
parser = configparser.ConfigParser()
|
||||
try:
|
||||
parser.read([file_path])
|
||||
except:
|
||||
# skip, it is not a valid stack file
|
||||
continue
|
||||
|
||||
if not parser.has_option("general", "name"):
|
||||
continue
|
||||
|
||||
if parser["general"]["name"] == name:
|
||||
# load the container
|
||||
container_id = os.path.basename(file_path).replace(".inst.cfg", "")
|
||||
|
||||
instance_container = InstanceContainer(container_id)
|
||||
with open(file_path, "r") as f:
|
||||
serialized = f.read()
|
||||
instance_container.deserialize(serialized, file_path)
|
||||
self.addContainer(instance_container)
|
||||
break
|
||||
|
||||
return instance_container
|
||||
|
||||
# Fix the extruders that were upgraded to ExtruderStack instances during addContainer.
|
||||
# The stacks are now responsible for setting the next stack on deserialize. However,
|
||||
# due to problems with loading order, some stacks may not have the proper next stack
|
||||
|
|
|
@ -41,9 +41,20 @@ class CuraContainerStack(ContainerStack):
|
|||
def __init__(self, container_id: str, *args, **kwargs):
|
||||
super().__init__(container_id, *args, **kwargs)
|
||||
|
||||
self._empty_instance_container = ContainerRegistry.getInstance().getEmptyInstanceContainer()
|
||||
self._container_registry = ContainerRegistry.getInstance()
|
||||
|
||||
self._empty_instance_container = self._container_registry.getEmptyInstanceContainer()
|
||||
|
||||
self._empty_quality_changes = self._container_registry.findInstanceContainers(id = "empty_quality_changes")[0]
|
||||
self._empty_quality = self._container_registry.findInstanceContainers(id = "empty_quality")[0]
|
||||
self._empty_material = self._container_registry.findInstanceContainers(id = "empty_material")[0]
|
||||
self._empty_variant = self._container_registry.findInstanceContainers(id = "empty_variant")[0]
|
||||
|
||||
self._containers = [self._empty_instance_container for i in range(len(_ContainerIndexes.IndexTypeMap))]
|
||||
self._containers[_ContainerIndexes.QualityChanges] = self._empty_quality_changes
|
||||
self._containers[_ContainerIndexes.Quality] = self._empty_quality
|
||||
self._containers[_ContainerIndexes.Material] = self._empty_material
|
||||
self._containers[_ContainerIndexes.Variant] = self._empty_variant
|
||||
|
||||
self.containersChanged.connect(self._onContainersChanged)
|
||||
|
||||
|
@ -348,8 +359,8 @@ class CuraContainerStack(ContainerStack):
|
|||
#
|
||||
# \throws InvalidContainerStackError Raised when no definition can be found for the stack.
|
||||
@override(ContainerStack)
|
||||
def deserialize(self, contents: str) -> None:
|
||||
super().deserialize(contents)
|
||||
def deserialize(self, contents: str, file_name: Optional[str] = None) -> None:
|
||||
super().deserialize(contents, file_name)
|
||||
|
||||
new_containers = self._containers.copy()
|
||||
while len(new_containers) < len(_ContainerIndexes.IndexTypeMap):
|
||||
|
@ -456,7 +467,7 @@ class CuraContainerStack(ContainerStack):
|
|||
else:
|
||||
search_criteria["definition"] = "fdmprinter"
|
||||
|
||||
if self.material != self._empty_instance_container:
|
||||
if self.material != self._empty_material:
|
||||
search_criteria["name"] = self.material.name
|
||||
else:
|
||||
preferred_material = definition.getMetaDataEntry("preferred_material")
|
||||
|
@ -503,7 +514,7 @@ class CuraContainerStack(ContainerStack):
|
|||
else:
|
||||
search_criteria["definition"] = "fdmprinter"
|
||||
|
||||
if self.quality != self._empty_instance_container:
|
||||
if self.quality != self._empty_quality:
|
||||
search_criteria["name"] = self.quality.name
|
||||
else:
|
||||
preferred_quality = definition.getMetaDataEntry("preferred_quality")
|
||||
|
|
|
@ -92,8 +92,8 @@ class ExtruderStack(CuraContainerStack):
|
|||
return self.getNextStack()._getMachineDefinition()
|
||||
|
||||
@override(CuraContainerStack)
|
||||
def deserialize(self, contents: str) -> None:
|
||||
super().deserialize(contents)
|
||||
def deserialize(self, contents: str, file_name: Optional[str] = None) -> None:
|
||||
super().deserialize(contents, file_name)
|
||||
stacks = ContainerRegistry.getInstance().findContainerStacks(id=self.getMetaDataEntry("machine", ""))
|
||||
if stacks:
|
||||
self.setNextStack(stacks[0])
|
||||
|
|
|
@ -620,12 +620,17 @@ class MachineManager(QObject):
|
|||
@pyqtProperty(str, notify=activeQualityChanged)
|
||||
def activeQualityId(self) -> str:
|
||||
if self._active_container_stack:
|
||||
quality = self._active_container_stack.qualityChanges
|
||||
if quality and not isinstance(quality, type(self._empty_quality_changes_container)):
|
||||
return quality.getId()
|
||||
quality = self._active_container_stack.quality
|
||||
if quality:
|
||||
return quality.getId()
|
||||
if isinstance(quality, type(self._empty_quality_container)):
|
||||
return ""
|
||||
quality_changes = self._active_container_stack.qualityChanges
|
||||
if quality and quality_changes:
|
||||
if isinstance(quality_changes, type(self._empty_quality_changes_container)):
|
||||
# It's a built-in profile
|
||||
return quality.getId()
|
||||
else:
|
||||
# Custom profile
|
||||
return quality_changes.getId()
|
||||
return ""
|
||||
|
||||
@pyqtProperty(str, notify=activeQualityChanged)
|
||||
|
@ -690,9 +695,9 @@ class MachineManager(QObject):
|
|||
@pyqtProperty(str, notify = activeQualityChanged)
|
||||
def activeQualityChangesId(self) -> str:
|
||||
if self._active_container_stack:
|
||||
changes = self._active_container_stack.qualityChanges
|
||||
if changes and changes.getId() != "empty":
|
||||
return changes.getId()
|
||||
quality_changes = self._active_container_stack.qualityChanges
|
||||
if quality_changes and not isinstance(quality_changes, type(self._empty_quality_changes_container)):
|
||||
return quality_changes.getId()
|
||||
return ""
|
||||
|
||||
## Check if a container is read_only
|
||||
|
@ -864,17 +869,12 @@ class MachineManager(QObject):
|
|||
"quality_changes": stack_quality_changes
|
||||
})
|
||||
|
||||
has_user_interaction = False
|
||||
# show the keep/discard dialog after the containers have been switched. Otherwise, the default values on
|
||||
# the dialog will be the those before the switching.
|
||||
self._executeDelayedActiveContainerStackChanges()
|
||||
|
||||
if self.hasUserSettings and Preferences.getInstance().getValue("cura/active_mode") == 1:
|
||||
# Show the keep/discard user settings dialog
|
||||
has_user_interaction = Application.getInstance().discardOrKeepProfileChanges()
|
||||
|
||||
# If there is no interaction with the user (it means the dialog showing "keep" or "discard" was not shown)
|
||||
# because either there are not user changes or because the used already decided to always keep or discard,
|
||||
# then the quality instance container is replaced, in which case, the activeQualityChanged signal is emitted.
|
||||
if not has_user_interaction:
|
||||
self._executeDelayedActiveContainerStackChanges()
|
||||
Application.getInstance().discardOrKeepProfileChanges()
|
||||
|
||||
## Used to update material and variant in the active container stack with a delay.
|
||||
# This delay prevents the stack from triggering a lot of signals (eventually resulting in slicing)
|
||||
|
|
|
@ -152,7 +152,8 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
|
||||
if not definitions:
|
||||
definition_container = DefinitionContainer(container_id)
|
||||
definition_container.deserialize(archive.open(each_definition_container_file).read().decode("utf-8"))
|
||||
definition_container.deserialize(archive.open(each_definition_container_file).read().decode("utf-8"),
|
||||
file_name = each_definition_container_file)
|
||||
|
||||
else:
|
||||
definition_container = definitions[0]
|
||||
|
@ -208,7 +209,8 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
instance_container = InstanceContainer(container_id)
|
||||
|
||||
# Deserialize InstanceContainer by converting read data from bytes to string
|
||||
instance_container.deserialize(archive.open(each_instance_container_file).read().decode("utf-8"))
|
||||
instance_container.deserialize(archive.open(each_instance_container_file).read().decode("utf-8"),
|
||||
file_name = each_instance_container_file)
|
||||
instance_container_list.append(instance_container)
|
||||
|
||||
container_type = instance_container.getMetaDataEntry("type")
|
||||
|
@ -378,7 +380,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
return WorkspaceReader.PreReadResult.accepted
|
||||
|
||||
## Overrides an ExtruderStack in the given GlobalStack and returns the new ExtruderStack.
|
||||
def _overrideExtruderStack(self, global_stack, extruder_file_content):
|
||||
def _overrideExtruderStack(self, global_stack, extruder_file_content, extruder_stack_file):
|
||||
# Get extruder position first
|
||||
extruder_config = configparser.ConfigParser()
|
||||
extruder_config.read_string(extruder_file_content)
|
||||
|
@ -394,7 +396,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
return None
|
||||
|
||||
# Override the given extruder stack
|
||||
extruder_stack.deserialize(extruder_file_content)
|
||||
extruder_stack.deserialize(extruder_file_content, file_name = extruder_stack_file)
|
||||
|
||||
# return the new ExtruderStack
|
||||
return extruder_stack
|
||||
|
@ -484,7 +486,8 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
definitions = self._container_registry.findDefinitionContainers(id = container_id)
|
||||
if not definitions:
|
||||
definition_container = DefinitionContainer(container_id)
|
||||
definition_container.deserialize(archive.open(definition_container_file).read().decode("utf-8"))
|
||||
definition_container.deserialize(archive.open(definition_container_file).read().decode("utf-8"),
|
||||
file_name = definition_container_file)
|
||||
self._container_registry.addContainer(definition_container)
|
||||
Job.yieldThread()
|
||||
|
||||
|
@ -502,18 +505,21 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
|
||||
if not materials:
|
||||
material_container = xml_material_profile(container_id)
|
||||
material_container.deserialize(archive.open(material_container_file).read().decode("utf-8"))
|
||||
material_container.deserialize(archive.open(material_container_file).read().decode("utf-8"),
|
||||
file_name = material_container_file)
|
||||
containers_to_add.append(material_container)
|
||||
else:
|
||||
material_container = materials[0]
|
||||
if not material_container.isReadOnly(): # Only create new materials if they are not read only.
|
||||
if self._resolve_strategies["material"] == "override":
|
||||
material_container.deserialize(archive.open(material_container_file).read().decode("utf-8"))
|
||||
material_container.deserialize(archive.open(material_container_file).read().decode("utf-8"),
|
||||
file_name = material_container_file)
|
||||
elif self._resolve_strategies["material"] == "new":
|
||||
# Note that we *must* deserialize it with a new ID, as multiple containers will be
|
||||
# auto created & added.
|
||||
material_container = xml_material_profile(self.getNewId(container_id))
|
||||
material_container.deserialize(archive.open(material_container_file).read().decode("utf-8"))
|
||||
material_container.deserialize(archive.open(material_container_file).read().decode("utf-8"),
|
||||
file_name = material_container_file)
|
||||
containers_to_add.append(material_container)
|
||||
|
||||
material_containers.append(material_container)
|
||||
|
@ -540,7 +546,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
instance_container = InstanceContainer(container_id)
|
||||
|
||||
# Deserialize InstanceContainer by converting read data from bytes to string
|
||||
instance_container.deserialize(serialized)
|
||||
instance_container.deserialize(serialized, file_name = instance_container_file)
|
||||
container_type = instance_container.getMetaDataEntry("type")
|
||||
Job.yieldThread()
|
||||
|
||||
|
@ -562,7 +568,8 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
else:
|
||||
if self._resolve_strategies["machine"] == "override" or self._resolve_strategies["machine"] is None:
|
||||
instance_container = user_containers[0]
|
||||
instance_container.deserialize(archive.open(instance_container_file).read().decode("utf-8"))
|
||||
instance_container.deserialize(archive.open(instance_container_file).read().decode("utf-8"),
|
||||
file_name = instance_container_file)
|
||||
instance_container.setDirty(True)
|
||||
elif self._resolve_strategies["machine"] == "new":
|
||||
# The machine is going to get a spiffy new name, so ensure that the id's of user settings match.
|
||||
|
@ -595,7 +602,8 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
# selected strategy.
|
||||
if self._resolve_strategies[container_type] == "override":
|
||||
instance_container = changes_containers[0]
|
||||
instance_container.deserialize(archive.open(instance_container_file).read().decode("utf-8"))
|
||||
instance_container.deserialize(archive.open(instance_container_file).read().decode("utf-8"),
|
||||
file_name = instance_container_file)
|
||||
instance_container.setDirty(True)
|
||||
|
||||
elif self._resolve_strategies[container_type] == "new":
|
||||
|
@ -656,7 +664,8 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
# There is a machine, check if it has authentication data. If so, keep that data.
|
||||
network_authentication_id = container_stacks[0].getMetaDataEntry("network_authentication_id")
|
||||
network_authentication_key = container_stacks[0].getMetaDataEntry("network_authentication_key")
|
||||
container_stacks[0].deserialize(archive.open(global_stack_file).read().decode("utf-8"))
|
||||
container_stacks[0].deserialize(archive.open(global_stack_file).read().decode("utf-8"),
|
||||
file_name = global_stack_file)
|
||||
if network_authentication_id:
|
||||
container_stacks[0].addMetaDataEntry("network_authentication_id", network_authentication_id)
|
||||
if network_authentication_key:
|
||||
|
@ -666,7 +675,8 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
# create a new global stack
|
||||
stack = GlobalStack(global_stack_id_new)
|
||||
# Deserialize stack by converting read data from bytes to string
|
||||
stack.deserialize(archive.open(global_stack_file).read().decode("utf-8"))
|
||||
stack.deserialize(archive.open(global_stack_file).read().decode("utf-8"),
|
||||
file_name = global_stack_file)
|
||||
|
||||
# Ensure a unique ID and name
|
||||
stack._id = global_stack_id_new
|
||||
|
@ -706,7 +716,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
if self._resolve_strategies["machine"] == "override":
|
||||
if global_stack.getProperty("machine_extruder_count", "value") > 1:
|
||||
# deserialize new extruder stack over the current ones (if any)
|
||||
stack = self._overrideExtruderStack(global_stack, extruder_file_content)
|
||||
stack = self._overrideExtruderStack(global_stack, extruder_file_content, extruder_stack_file)
|
||||
if stack is None:
|
||||
continue
|
||||
|
||||
|
@ -726,7 +736,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
extruder_config.write(tmp_string_io)
|
||||
extruder_file_content = tmp_string_io.getvalue()
|
||||
|
||||
stack.deserialize(extruder_file_content)
|
||||
stack.deserialize(extruder_file_content, file_name = extruder_stack_file)
|
||||
|
||||
# Ensure a unique ID and name
|
||||
stack._id = new_id
|
||||
|
@ -746,7 +756,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
# If not extruder stacks were saved in the project file (pre 3.1) create one manually
|
||||
# We re-use the container registry's addExtruderStackForSingleExtrusionMachine method for this
|
||||
if not extruder_stacks:
|
||||
self._container_registry.addExtruderStackForSingleExtrusionMachine(global_stack, "fdmextruder")
|
||||
extruder_stacks.append(self._container_registry.addExtruderStackForSingleExtrusionMachine(global_stack, "fdmextruder"))
|
||||
|
||||
except:
|
||||
Logger.logException("w", "We failed to serialize the stack. Trying to clean up.")
|
||||
|
@ -902,7 +912,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
|
|||
base_file_name = os.path.basename(file_name)
|
||||
if base_file_name.endswith(".curaproject.3mf"):
|
||||
base_file_name = base_file_name[:base_file_name.rfind(".curaproject.3mf")]
|
||||
Application.getInstance().projectFileLoaded.emit(base_file_name)
|
||||
self.setWorkspaceName(base_file_name)
|
||||
return nodes
|
||||
|
||||
## HACK: Replaces the material container in the given stack with a newly created material container.
|
||||
|
|
|
@ -61,6 +61,8 @@ message Polygon {
|
|||
Type type = 1; // Type of move
|
||||
bytes points = 2; // The points of the polygon, or two points if only a line segment (Currently only line segments are used)
|
||||
float line_width = 3; // The width of the line being laid down
|
||||
float line_thickness = 4; // The thickness of the line being laid down
|
||||
float line_feedrate = 5; // The feedrate of the line being laid down
|
||||
}
|
||||
|
||||
message LayerOptimized {
|
||||
|
@ -82,6 +84,8 @@ message PathSegment {
|
|||
bytes points = 3; // The points defining the line segments, bytes of float[2/3] array of length N+1
|
||||
bytes line_type = 4; // Type of line segment as an unsigned char array of length 1 or N, where N is the number of line segments in this path
|
||||
bytes line_width = 5; // The widths of the line segments as bytes of a float array of length 1 or N
|
||||
bytes line_thickness = 6; // The thickness of the line segments as bytes of a float array of length 1 or N
|
||||
bytes line_feedrate = 7; // The feedrate of the line segments as bytes of a float array of length 1 or N
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -301,6 +301,26 @@ class CuraEngineBackend(QObject, Backend):
|
|||
self.backendStateChange.emit(BackendState.NotStarted)
|
||||
return
|
||||
|
||||
elif job.getResult() == StartSliceJob.StartJobResult.ObjectSettingError:
|
||||
errors = {}
|
||||
for node in DepthFirstIterator(Application.getInstance().getController().getScene().getRoot()):
|
||||
stack = node.callDecoration("getStack")
|
||||
if not stack:
|
||||
continue
|
||||
for key in stack.getErrorKeys():
|
||||
definition = self._global_container_stack.getBottom().findDefinitions(key = key)
|
||||
if not definition:
|
||||
Logger.log("e", "When checking settings for errors, unable to find definition for key {key} in per-object stack.".format(key = key))
|
||||
continue
|
||||
definition = definition[0]
|
||||
errors[key] = definition.label
|
||||
error_labels = ", ".join(errors.values())
|
||||
self._error_message = Message(catalog.i18nc("@info:status", "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}").format(error_labels = error_labels),
|
||||
title = catalog.i18nc("@info:title", "Unable to slice"))
|
||||
self._error_message.show()
|
||||
self.backendStateChange.emit(BackendState.Error)
|
||||
return
|
||||
|
||||
if job.getResult() == StartSliceJob.StartJobResult.BuildPlateError:
|
||||
if Application.getInstance().platformActivity:
|
||||
self._error_message = Message(catalog.i18nc("@info:status", "Unable to slice because the prime tower or prime position(s) are invalid."),
|
||||
|
@ -588,7 +608,7 @@ class CuraEngineBackend(QObject, Backend):
|
|||
def _onActiveViewChanged(self):
|
||||
if Application.getInstance().getController().getActiveView():
|
||||
view = Application.getInstance().getController().getActiveView()
|
||||
if view.getPluginId() == "LayerView": # If switching to layer view, we should process the layers if that hasn't been done yet.
|
||||
if view.getPluginId() == "SimulationView": # If switching to layer view, we should process the layers if that hasn't been done yet.
|
||||
self._layer_view_active = True
|
||||
# There is data and we're not slicing at the moment
|
||||
# if we are slicing, there is no need to re-calculate the data as it will be invalid in a moment.
|
||||
|
|
|
@ -61,7 +61,7 @@ class ProcessSlicedLayersJob(Job):
|
|||
|
||||
def run(self):
|
||||
start_time = time()
|
||||
if Application.getInstance().getController().getActiveView().getPluginId() == "LayerView":
|
||||
if Application.getInstance().getController().getActiveView().getPluginId() == "SimulationView":
|
||||
self._progress_message.show()
|
||||
Job.yieldThread()
|
||||
if self._abort_requested:
|
||||
|
@ -106,9 +106,16 @@ class ProcessSlicedLayersJob(Job):
|
|||
for layer in self._layers:
|
||||
abs_layer_number = layer.id + abs(min_layer_number)
|
||||
|
||||
# Workaround when the last layer doesn't have paths, this layer is skipped because this was generating
|
||||
# some glitches when rendering.
|
||||
if layer.id == len(self._layers)-1 and layer.repeatedMessageCount("path_segment") == 0:
|
||||
Logger.log("i", "No sliced data in the layer", layer.id)
|
||||
continue
|
||||
|
||||
layer_data.addLayer(abs_layer_number)
|
||||
this_layer = layer_data.getLayer(abs_layer_number)
|
||||
layer_data.setLayerHeight(abs_layer_number, layer.height)
|
||||
layer_data.setLayerThickness(abs_layer_number, layer.thickness)
|
||||
|
||||
for p in range(layer.repeatedMessageCount("path_segment")):
|
||||
polygon = layer.getRepeatedMessage("path_segment", p)
|
||||
|
@ -127,10 +134,11 @@ class ProcessSlicedLayersJob(Job):
|
|||
line_widths = numpy.fromstring(polygon.line_width, dtype="f4") # Convert bytearray to numpy array
|
||||
line_widths = line_widths.reshape((-1,1)) # We get a linear list of pairs that make up the points, so make numpy interpret them correctly.
|
||||
|
||||
# In the future, line_thicknesses should be given by CuraEngine as well.
|
||||
# Currently the infill layer thickness also translates to line width
|
||||
line_thicknesses = numpy.zeros(line_widths.shape, dtype="f4")
|
||||
line_thicknesses[:] = layer.thickness / 1000 # from micrometer to millimeter
|
||||
line_thicknesses = numpy.fromstring(polygon.line_thickness, dtype="f4") # Convert bytearray to numpy array
|
||||
line_thicknesses = line_thicknesses.reshape((-1,1)) # We get a linear list of pairs that make up the points, so make numpy interpret them correctly.
|
||||
|
||||
line_feedrates = numpy.fromstring(polygon.line_feedrate, dtype="f4") # Convert bytearray to numpy array
|
||||
line_feedrates = line_feedrates.reshape((-1,1)) # We get a linear list of pairs that make up the points, so make numpy interpret them correctly.
|
||||
|
||||
# Create a new 3D-array, copy the 2D points over and insert the right height.
|
||||
# This uses manual array creation + copy rather than numpy.insert since this is
|
||||
|
@ -145,7 +153,7 @@ class ProcessSlicedLayersJob(Job):
|
|||
new_points[:, 1] = points[:, 2]
|
||||
new_points[:, 2] = -points[:, 1]
|
||||
|
||||
this_poly = LayerPolygon.LayerPolygon(extruder, line_types, new_points, line_widths, line_thicknesses)
|
||||
this_poly = LayerPolygon.LayerPolygon(extruder, line_types, new_points, line_widths, line_thicknesses, line_feedrates)
|
||||
this_poly.buildCache()
|
||||
|
||||
this_layer.polygons.append(this_poly)
|
||||
|
@ -219,7 +227,7 @@ class ProcessSlicedLayersJob(Job):
|
|||
self._progress_message.setProgress(100)
|
||||
|
||||
view = Application.getInstance().getController().getActiveView()
|
||||
if view.getPluginId() == "LayerView":
|
||||
if view.getPluginId() == "SimulationView":
|
||||
view.resetLayerData()
|
||||
|
||||
if self._progress_message:
|
||||
|
@ -232,7 +240,7 @@ class ProcessSlicedLayersJob(Job):
|
|||
|
||||
def _onActiveViewChanged(self):
|
||||
if self.isRunning():
|
||||
if Application.getInstance().getController().getActiveView().getPluginId() == "LayerView":
|
||||
if Application.getInstance().getController().getActiveView().getPluginId() == "SimulationView":
|
||||
if not self._progress_message:
|
||||
self._progress_message = Message(catalog.i18nc("@info:status", "Processing Layers"), 0, False, 0, catalog.i18nc("@info:title", "Information"))
|
||||
if self._progress_message.getProgress() != 100:
|
||||
|
|
|
@ -26,6 +26,7 @@ class StartJobResult(IntEnum):
|
|||
NothingToSlice = 4
|
||||
MaterialIncompatible = 5
|
||||
BuildPlateError = 6
|
||||
ObjectSettingError = 7 #When an error occurs in per-object settings.
|
||||
|
||||
|
||||
## Formatter class that handles token expansion in start/end gcod
|
||||
|
@ -105,7 +106,7 @@ class StartSliceJob(Job):
|
|||
continue
|
||||
|
||||
if self._checkStackForErrors(node.callDecoration("getStack")):
|
||||
self.setResult(StartJobResult.SettingError)
|
||||
self.setResult(StartJobResult.ObjectSettingError)
|
||||
return
|
||||
|
||||
with self._scene.getSceneLock():
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright (c) 2016 Aleph Objects, Inc.
|
||||
# Copyright (c) 2017 Aleph Objects, Inc.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from UM.Application import Application
|
||||
|
@ -40,7 +40,8 @@ class GCodeReader(MeshReader):
|
|||
self._extruder_number = 0
|
||||
self._clearValues()
|
||||
self._scene_node = None
|
||||
self._position = namedtuple('Position', ['x', 'y', 'z', 'e'])
|
||||
# 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
|
||||
|
@ -48,12 +49,16 @@ class GCodeReader(MeshReader):
|
|||
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):
|
||||
|
@ -96,7 +101,7 @@ class GCodeReader(MeshReader):
|
|||
def _createPolygon(self, layer_thickness, path, extruder_offsets):
|
||||
countvalid = 0
|
||||
for point in path:
|
||||
if point[3] > 0:
|
||||
if point[5] > 0:
|
||||
countvalid += 1
|
||||
if countvalid >= 2:
|
||||
# we know what to do now, no need to count further
|
||||
|
@ -114,46 +119,84 @@ class GCodeReader(MeshReader):
|
|||
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)
|
||||
# TODO: need to calculate actual line width based on E values
|
||||
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_types[i - 1] = point[3]
|
||||
if point[3] in [LayerPolygon.MoveCombingType, LayerPolygon.MoveRetractionType]:
|
||||
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)
|
||||
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 _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, e = position
|
||||
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 position.z
|
||||
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:
|
||||
if params.e > e[self._extruder_number]:
|
||||
path.append([x, y, z, self._layer_type]) # extrusion
|
||||
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, LayerPolygon.MoveRetractionType]) # retraction
|
||||
e[self._extruder_number] = params.e
|
||||
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 + 0.05 # allow a tiny overlap
|
||||
self._current_layer_thickness = z - self._previous_z # allow a tiny overlap
|
||||
self._previous_z = z
|
||||
else:
|
||||
path.append([x, y, z, LayerPolygon.MoveCombingType])
|
||||
return self._position(x, y, z, e)
|
||||
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
|
||||
|
@ -163,18 +206,33 @@ class GCodeReader(MeshReader):
|
|||
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):
|
||||
|
@ -182,7 +240,7 @@ class GCodeReader(MeshReader):
|
|||
line = line.split(";", 1)[0] # Remove comments (if any)
|
||||
if func is not None:
|
||||
s = line.upper().split(" ")
|
||||
x, y, z, e = None, None, None, None
|
||||
x, y, z, f, e = None, None, None, None, None
|
||||
for item in s[1:]:
|
||||
if len(item) <= 1:
|
||||
continue
|
||||
|
@ -194,20 +252,31 @@ class GCodeReader(MeshReader):
|
|||
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 (x is not None and x < 0) or (y is not None and y < 0):
|
||||
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, e)
|
||||
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:"
|
||||
|
||||
|
@ -223,6 +292,8 @@ class GCodeReader(MeshReader):
|
|||
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
|
||||
|
@ -260,7 +331,7 @@ class GCodeReader(MeshReader):
|
|||
|
||||
Logger.log("d", "Parsing %s..." % file_name)
|
||||
|
||||
current_position = self._position(0, 0, 0, [0])
|
||||
current_position = self._position(0, 0, 0, 0, [0])
|
||||
current_path = []
|
||||
|
||||
for line in file:
|
||||
|
@ -293,6 +364,7 @@ class GCodeReader(MeshReader):
|
|||
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):])
|
||||
|
@ -308,17 +380,12 @@ class GCodeReader(MeshReader):
|
|||
|
||||
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)
|
||||
|
||||
# < 2 is a heuristic for a movement only, that should not be counted as a layer
|
||||
if current_position.z > last_z and abs(current_position.z - last_z) < 2:
|
||||
if self._createPolygon(self._current_layer_thickness, current_path, self._extruder_offsets.get(self._extruder_number, [0, 0])):
|
||||
current_path.clear()
|
||||
if not self._is_layers_in_file:
|
||||
self._layer_number += 1
|
||||
|
||||
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:
|
||||
|
@ -327,8 +394,12 @@ class GCodeReader(MeshReader):
|
|||
|
||||
current_position = self._processTCode(T, line, current_position, current_path)
|
||||
|
||||
# "Flush" leftovers
|
||||
if not self._is_layers_in_file and len(current_path) > 1:
|
||||
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()
|
||||
|
|
|
@ -1,113 +0,0 @@
|
|||
# Copyright (c) 2016 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
|
||||
from UM.Resources import Resources
|
||||
from UM.Scene.SceneNode import SceneNode
|
||||
from UM.Scene.ToolHandle import ToolHandle
|
||||
from UM.Application import Application
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
|
||||
from UM.View.RenderPass import RenderPass
|
||||
from UM.View.RenderBatch import RenderBatch
|
||||
from UM.View.GL.OpenGL import OpenGL
|
||||
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
|
||||
|
||||
import os.path
|
||||
|
||||
## RenderPass used to display g-code paths.
|
||||
class LayerPass(RenderPass):
|
||||
def __init__(self, width, height):
|
||||
super().__init__("layerview", width, height)
|
||||
|
||||
self._layer_shader = None
|
||||
self._tool_handle_shader = None
|
||||
self._gl = OpenGL.getInstance().getBindingsObject()
|
||||
self._scene = Application.getInstance().getController().getScene()
|
||||
self._extruder_manager = ExtruderManager.getInstance()
|
||||
|
||||
self._layer_view = None
|
||||
self._compatibility_mode = None
|
||||
|
||||
def setLayerView(self, layerview):
|
||||
self._layer_view = layerview
|
||||
self._compatibility_mode = layerview.getCompatibilityMode()
|
||||
|
||||
def render(self):
|
||||
if not self._layer_shader:
|
||||
if self._compatibility_mode:
|
||||
shader_filename = "layers.shader"
|
||||
else:
|
||||
shader_filename = "layers3d.shader"
|
||||
self._layer_shader = OpenGL.getInstance().createShaderProgram(os.path.join(PluginRegistry.getInstance().getPluginPath("LayerView"), shader_filename))
|
||||
# Use extruder 0 if the extruder manager reports extruder index -1 (for single extrusion printers)
|
||||
self._layer_shader.setUniformValue("u_active_extruder", float(max(0, self._extruder_manager.activeExtruderIndex)))
|
||||
if self._layer_view:
|
||||
self._layer_shader.setUniformValue("u_layer_view_type", self._layer_view.getLayerViewType())
|
||||
self._layer_shader.setUniformValue("u_extruder_opacity", self._layer_view.getExtruderOpacities())
|
||||
self._layer_shader.setUniformValue("u_show_travel_moves", self._layer_view.getShowTravelMoves())
|
||||
self._layer_shader.setUniformValue("u_show_helpers", self._layer_view.getShowHelpers())
|
||||
self._layer_shader.setUniformValue("u_show_skin", self._layer_view.getShowSkin())
|
||||
self._layer_shader.setUniformValue("u_show_infill", self._layer_view.getShowInfill())
|
||||
else:
|
||||
#defaults
|
||||
self._layer_shader.setUniformValue("u_layer_view_type", 1)
|
||||
self._layer_shader.setUniformValue("u_extruder_opacity", [1, 1, 1, 1])
|
||||
self._layer_shader.setUniformValue("u_show_travel_moves", 0)
|
||||
self._layer_shader.setUniformValue("u_show_helpers", 1)
|
||||
self._layer_shader.setUniformValue("u_show_skin", 1)
|
||||
self._layer_shader.setUniformValue("u_show_infill", 1)
|
||||
|
||||
if not self._tool_handle_shader:
|
||||
self._tool_handle_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "toolhandle.shader"))
|
||||
|
||||
self.bind()
|
||||
|
||||
tool_handle_batch = RenderBatch(self._tool_handle_shader, type = RenderBatch.RenderType.Overlay)
|
||||
|
||||
for node in DepthFirstIterator(self._scene.getRoot()):
|
||||
|
||||
if isinstance(node, ToolHandle):
|
||||
tool_handle_batch.addItem(node.getWorldTransformation(), mesh = node.getSolidMesh())
|
||||
|
||||
elif isinstance(node, SceneNode) and (node.getMeshData() or node.callDecoration("isBlockSlicing")) and node.isVisible():
|
||||
layer_data = node.callDecoration("getLayerData")
|
||||
if not layer_data:
|
||||
continue
|
||||
|
||||
# Render all layers below a certain number as line mesh instead of vertices.
|
||||
if self._layer_view._current_layer_num > -1 and ((not self._layer_view._only_show_top_layers) or (not self._layer_view.getCompatibilityMode())):
|
||||
start = 0
|
||||
end = 0
|
||||
element_counts = layer_data.getElementCounts()
|
||||
for layer in sorted(element_counts.keys()):
|
||||
if layer > self._layer_view._current_layer_num:
|
||||
break
|
||||
if self._layer_view._minimum_layer_num > layer:
|
||||
start += element_counts[layer]
|
||||
end += element_counts[layer]
|
||||
|
||||
# This uses glDrawRangeElements internally to only draw a certain range of lines.
|
||||
batch = RenderBatch(self._layer_shader, type = RenderBatch.RenderType.Solid, mode = RenderBatch.RenderMode.Lines, range = (start, end))
|
||||
batch.addItem(node.getWorldTransformation(), layer_data)
|
||||
batch.render(self._scene.getActiveCamera())
|
||||
|
||||
# Create a new batch that is not range-limited
|
||||
batch = RenderBatch(self._layer_shader, type = RenderBatch.RenderType.Solid)
|
||||
|
||||
if self._layer_view.getCurrentLayerMesh():
|
||||
batch.addItem(node.getWorldTransformation(), self._layer_view.getCurrentLayerMesh())
|
||||
|
||||
if self._layer_view.getCurrentLayerJumps():
|
||||
batch.addItem(node.getWorldTransformation(), self._layer_view.getCurrentLayerJumps())
|
||||
|
||||
if len(batch.items) > 0:
|
||||
batch.render(self._scene.getActiveCamera())
|
||||
|
||||
# Render toolhandles on top of the layerview
|
||||
if len(tool_handle_batch.items) > 0:
|
||||
tool_handle_batch.render(self._scene.getActiveCamera())
|
||||
|
||||
self.release()
|
|
@ -1,388 +0,0 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.4
|
||||
import QtQuick.Controls 1.2
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
Item
|
||||
{
|
||||
id: base
|
||||
width: {
|
||||
if (UM.LayerView.compatibilityMode) {
|
||||
return UM.Theme.getSize("layerview_menu_size_compatibility").width;
|
||||
} else {
|
||||
return UM.Theme.getSize("layerview_menu_size").width;
|
||||
}
|
||||
}
|
||||
height: {
|
||||
if (UM.LayerView.compatibilityMode) {
|
||||
return UM.Theme.getSize("layerview_menu_size_compatibility").height;
|
||||
} else if (UM.Preferences.getValue("layerview/layer_view_type") == 0) {
|
||||
return UM.Theme.getSize("layerview_menu_size_material_color_mode").height + UM.LayerView.extruderCount * (UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("layerview_row_spacing").height)
|
||||
} else {
|
||||
return UM.Theme.getSize("layerview_menu_size").height + UM.LayerView.extruderCount * (UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("layerview_row_spacing").height)
|
||||
}
|
||||
}
|
||||
|
||||
property var buttonTarget: {
|
||||
if(parent != null)
|
||||
{
|
||||
var force_binding = parent.y; // ensure this gets reevaluated when the panel moves
|
||||
return base.mapFromItem(parent.parent, parent.buttonTarget.x, parent.buttonTarget.y)
|
||||
}
|
||||
return Qt.point(0,0)
|
||||
}
|
||||
|
||||
visible: parent != null ? !parent.parent.monitoringPrint: true
|
||||
|
||||
UM.PointingRectangle {
|
||||
id: layerViewMenu
|
||||
anchors.right: parent.right
|
||||
anchors.top: parent.top
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
z: slider.z - 1
|
||||
color: UM.Theme.getColor("tool_panel_background")
|
||||
borderWidth: UM.Theme.getSize("default_lining").width
|
||||
borderColor: UM.Theme.getColor("lining")
|
||||
arrowSize: 0 // hide arrow until weird issue with first time rendering is fixed
|
||||
|
||||
ColumnLayout {
|
||||
id: view_settings
|
||||
|
||||
property var extruder_opacities: UM.Preferences.getValue("layerview/extruder_opacities").split("|")
|
||||
property bool show_travel_moves: UM.Preferences.getValue("layerview/show_travel_moves")
|
||||
property bool show_helpers: UM.Preferences.getValue("layerview/show_helpers")
|
||||
property bool show_skin: UM.Preferences.getValue("layerview/show_skin")
|
||||
property bool show_infill: UM.Preferences.getValue("layerview/show_infill")
|
||||
// if we are in compatibility mode, we only show the "line type"
|
||||
property bool show_legend: UM.LayerView.compatibilityMode ? 1 : UM.Preferences.getValue("layerview/layer_view_type") == 1
|
||||
property bool only_show_top_layers: UM.Preferences.getValue("view/only_show_top_layers")
|
||||
property int top_layer_count: UM.Preferences.getValue("view/top_layer_count")
|
||||
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: UM.Theme.getSize("default_margin").height
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: UM.Theme.getSize("default_margin").width
|
||||
spacing: UM.Theme.getSize("layerview_row_spacing").height
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width
|
||||
|
||||
Label
|
||||
{
|
||||
id: layerViewTypesLabel
|
||||
anchors.left: parent.left
|
||||
text: catalog.i18nc("@label","Color scheme")
|
||||
font: UM.Theme.getFont("default");
|
||||
visible: !UM.LayerView.compatibilityMode
|
||||
Layout.fillWidth: true
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
}
|
||||
|
||||
ListModel // matches LayerView.py
|
||||
{
|
||||
id: layerViewTypes
|
||||
}
|
||||
|
||||
Component.onCompleted:
|
||||
{
|
||||
layerViewTypes.append({
|
||||
text: catalog.i18nc("@label:listbox", "Material Color"),
|
||||
type_id: 0
|
||||
})
|
||||
layerViewTypes.append({
|
||||
text: catalog.i18nc("@label:listbox", "Line Type"),
|
||||
type_id: 1 // these ids match the switching in the shader
|
||||
})
|
||||
}
|
||||
|
||||
ComboBox
|
||||
{
|
||||
id: layerTypeCombobox
|
||||
anchors.left: parent.left
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
model: layerViewTypes
|
||||
visible: !UM.LayerView.compatibilityMode
|
||||
style: UM.Theme.styles.combobox
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: 10 * screenScaleFactor
|
||||
|
||||
onActivated:
|
||||
{
|
||||
UM.Preferences.setValue("layerview/layer_view_type", index);
|
||||
}
|
||||
|
||||
Component.onCompleted:
|
||||
{
|
||||
currentIndex = UM.LayerView.compatibilityMode ? 1 : UM.Preferences.getValue("layerview/layer_view_type");
|
||||
updateLegends(currentIndex);
|
||||
}
|
||||
|
||||
function updateLegends(type_id)
|
||||
{
|
||||
// update visibility of legends
|
||||
view_settings.show_legend = UM.LayerView.compatibilityMode || (type_id == 1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Label
|
||||
{
|
||||
id: compatibilityModeLabel
|
||||
anchors.left: parent.left
|
||||
text: catalog.i18nc("@label","Compatibility Mode")
|
||||
font: UM.Theme.getFont("default")
|
||||
color: UM.Theme.getColor("text")
|
||||
visible: UM.LayerView.compatibilityMode
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
}
|
||||
|
||||
Label
|
||||
{
|
||||
id: space2Label
|
||||
anchors.left: parent.left
|
||||
text: " "
|
||||
font.pointSize: 0.5
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: UM.Preferences
|
||||
onPreferenceChanged:
|
||||
{
|
||||
layerTypeCombobox.currentIndex = UM.LayerView.compatibilityMode ? 1 : UM.Preferences.getValue("layerview/layer_view_type");
|
||||
layerTypeCombobox.updateLegends(layerTypeCombobox.currentIndex);
|
||||
view_settings.extruder_opacities = UM.Preferences.getValue("layerview/extruder_opacities").split("|");
|
||||
view_settings.show_travel_moves = UM.Preferences.getValue("layerview/show_travel_moves");
|
||||
view_settings.show_helpers = UM.Preferences.getValue("layerview/show_helpers");
|
||||
view_settings.show_skin = UM.Preferences.getValue("layerview/show_skin");
|
||||
view_settings.show_infill = UM.Preferences.getValue("layerview/show_infill");
|
||||
view_settings.only_show_top_layers = UM.Preferences.getValue("view/only_show_top_layers");
|
||||
view_settings.top_layer_count = UM.Preferences.getValue("view/top_layer_count");
|
||||
}
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: Cura.ExtrudersModel{}
|
||||
CheckBox {
|
||||
id: extrudersModelCheckBox
|
||||
checked: view_settings.extruder_opacities[index] > 0.5 || view_settings.extruder_opacities[index] == undefined || view_settings.extruder_opacities[index] == ""
|
||||
onClicked: {
|
||||
view_settings.extruder_opacities[index] = checked ? 1.0 : 0.0
|
||||
UM.Preferences.setValue("layerview/extruder_opacities", view_settings.extruder_opacities.join("|"));
|
||||
}
|
||||
visible: !UM.LayerView.compatibilityMode
|
||||
enabled: index + 1 <= 4
|
||||
Rectangle {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.right: extrudersModelCheckBox.right
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width
|
||||
width: UM.Theme.getSize("layerview_legend_size").width
|
||||
height: UM.Theme.getSize("layerview_legend_size").height
|
||||
color: model.color
|
||||
radius: width / 2
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
visible: !view_settings.show_legend
|
||||
}
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
style: UM.Theme.styles.checkbox
|
||||
Label
|
||||
{
|
||||
text: model.name
|
||||
elide: Text.ElideRight
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: extrudersModelCheckBox.left;
|
||||
anchors.right: extrudersModelCheckBox.right;
|
||||
anchors.leftMargin: UM.Theme.getSize("checkbox").width + UM.Theme.getSize("default_margin").width /2
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width * 2
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: ListModel {
|
||||
id: typesLegenModel
|
||||
Component.onCompleted:
|
||||
{
|
||||
typesLegenModel.append({
|
||||
label: catalog.i18nc("@label", "Show Travels"),
|
||||
initialValue: view_settings.show_travel_moves,
|
||||
preference: "layerview/show_travel_moves",
|
||||
colorId: "layerview_move_combing"
|
||||
});
|
||||
typesLegenModel.append({
|
||||
label: catalog.i18nc("@label", "Show Helpers"),
|
||||
initialValue: view_settings.show_helpers,
|
||||
preference: "layerview/show_helpers",
|
||||
colorId: "layerview_support"
|
||||
});
|
||||
typesLegenModel.append({
|
||||
label: catalog.i18nc("@label", "Show Shell"),
|
||||
initialValue: view_settings.show_skin,
|
||||
preference: "layerview/show_skin",
|
||||
colorId: "layerview_inset_0"
|
||||
});
|
||||
typesLegenModel.append({
|
||||
label: catalog.i18nc("@label", "Show Infill"),
|
||||
initialValue: view_settings.show_infill,
|
||||
preference: "layerview/show_infill",
|
||||
colorId: "layerview_infill"
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
CheckBox {
|
||||
id: legendModelCheckBox
|
||||
checked: model.initialValue
|
||||
onClicked: {
|
||||
UM.Preferences.setValue(model.preference, checked);
|
||||
}
|
||||
Rectangle {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.right: legendModelCheckBox.right
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width
|
||||
width: UM.Theme.getSize("layerview_legend_size").width
|
||||
height: UM.Theme.getSize("layerview_legend_size").height
|
||||
color: UM.Theme.getColor(model.colorId)
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
visible: view_settings.show_legend
|
||||
}
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
style: UM.Theme.styles.checkbox
|
||||
Label
|
||||
{
|
||||
text: label
|
||||
font: UM.Theme.getFont("default")
|
||||
elide: Text.ElideRight
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: legendModelCheckBox.left;
|
||||
anchors.right: legendModelCheckBox.right;
|
||||
anchors.leftMargin: UM.Theme.getSize("checkbox").width + UM.Theme.getSize("default_margin").width /2
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width * 2
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CheckBox {
|
||||
checked: view_settings.only_show_top_layers
|
||||
onClicked: {
|
||||
UM.Preferences.setValue("view/only_show_top_layers", checked ? 1.0 : 0.0);
|
||||
}
|
||||
text: catalog.i18nc("@label", "Only Show Top Layers")
|
||||
visible: UM.LayerView.compatibilityMode
|
||||
style: UM.Theme.styles.checkbox
|
||||
}
|
||||
CheckBox {
|
||||
checked: view_settings.top_layer_count == 5
|
||||
onClicked: {
|
||||
UM.Preferences.setValue("view/top_layer_count", checked ? 5 : 1);
|
||||
}
|
||||
text: catalog.i18nc("@label", "Show 5 Detailed Layers On Top")
|
||||
visible: UM.LayerView.compatibilityMode
|
||||
style: UM.Theme.styles.checkbox
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: ListModel {
|
||||
id: typesLegenModelNoCheck
|
||||
Component.onCompleted:
|
||||
{
|
||||
typesLegenModelNoCheck.append({
|
||||
label: catalog.i18nc("@label", "Top / Bottom"),
|
||||
colorId: "layerview_skin",
|
||||
});
|
||||
typesLegenModelNoCheck.append({
|
||||
label: catalog.i18nc("@label", "Inner Wall"),
|
||||
colorId: "layerview_inset_x",
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: label
|
||||
visible: view_settings.show_legend
|
||||
id: typesLegendModelLabel
|
||||
Rectangle {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.right: typesLegendModelLabel.right
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width
|
||||
width: UM.Theme.getSize("layerview_legend_size").width
|
||||
height: UM.Theme.getSize("layerview_legend_size").height
|
||||
color: UM.Theme.getColor(model.colorId)
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
visible: view_settings.show_legend
|
||||
}
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
LayerSlider {
|
||||
id: slider
|
||||
|
||||
width: UM.Theme.getSize("slider_handle").width
|
||||
height: UM.Theme.getSize("layerview_menu_size").height
|
||||
|
||||
anchors {
|
||||
top: parent.bottom
|
||||
topMargin: UM.Theme.getSize("slider_layerview_margin").height
|
||||
right: layerViewMenu.right
|
||||
rightMargin: UM.Theme.getSize("slider_layerview_margin").width
|
||||
}
|
||||
|
||||
// custom properties
|
||||
upperValue: UM.LayerView.currentLayer
|
||||
lowerValue: UM.LayerView.minimumLayer
|
||||
maximumValue: UM.LayerView.numLayers
|
||||
handleSize: UM.Theme.getSize("slider_handle").width
|
||||
trackThickness: UM.Theme.getSize("slider_groove").width
|
||||
trackColor: UM.Theme.getColor("slider_groove")
|
||||
trackBorderColor: UM.Theme.getColor("slider_groove_border")
|
||||
upperHandleColor: UM.Theme.getColor("slider_handle")
|
||||
lowerHandleColor: UM.Theme.getColor("slider_handle")
|
||||
rangeHandleColor: UM.Theme.getColor("slider_groove_fill")
|
||||
handleLabelWidth: UM.Theme.getSize("slider_layerview_background").width
|
||||
layersVisible: UM.LayerView.layerActivity && CuraApplication.platformActivity ? true : false
|
||||
|
||||
// update values when layer data changes
|
||||
Connections {
|
||||
target: UM.LayerView
|
||||
onMaxLayersChanged: slider.setUpperValue(UM.LayerView.currentLayer)
|
||||
onMinimumLayerChanged: slider.setLowerValue(UM.LayerView.minimumLayer)
|
||||
onCurrentLayerChanged: slider.setUpperValue(UM.LayerView.currentLayer)
|
||||
}
|
||||
|
||||
// make sure the slider handlers show the correct value after switching views
|
||||
Component.onCompleted: {
|
||||
slider.setLowerValue(UM.LayerView.minimumLayer)
|
||||
slider.setUpperValue(UM.LayerView.currentLayer)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
FontMetrics {
|
||||
id: fontMetrics
|
||||
font: UM.Theme.getFont("default")
|
||||
}
|
||||
}
|
|
@ -1,151 +0,0 @@
|
|||
from PyQt5.QtCore import QObject, pyqtSignal, pyqtProperty
|
||||
from UM.FlameProfiler import pyqtSlot
|
||||
from UM.Application import Application
|
||||
|
||||
import LayerView
|
||||
|
||||
|
||||
class LayerViewProxy(QObject):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self._current_layer = 0
|
||||
self._controller = Application.getInstance().getController()
|
||||
self._controller.activeViewChanged.connect(self._onActiveViewChanged)
|
||||
self._onActiveViewChanged()
|
||||
|
||||
currentLayerChanged = pyqtSignal()
|
||||
maxLayersChanged = pyqtSignal()
|
||||
activityChanged = pyqtSignal()
|
||||
globalStackChanged = pyqtSignal()
|
||||
preferencesChanged = pyqtSignal()
|
||||
busyChanged = pyqtSignal()
|
||||
|
||||
@pyqtProperty(bool, notify=activityChanged)
|
||||
def layerActivity(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.getActivity()
|
||||
|
||||
@pyqtProperty(int, notify=maxLayersChanged)
|
||||
def numLayers(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.getMaxLayers()
|
||||
|
||||
@pyqtProperty(int, notify=currentLayerChanged)
|
||||
def currentLayer(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.getCurrentLayer()
|
||||
|
||||
@pyqtProperty(int, notify=currentLayerChanged)
|
||||
def minimumLayer(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.getMinimumLayer()
|
||||
|
||||
@pyqtProperty(bool, notify=busyChanged)
|
||||
def busy(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.isBusy()
|
||||
|
||||
return False
|
||||
|
||||
@pyqtProperty(bool, notify=preferencesChanged)
|
||||
def compatibilityMode(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.getCompatibilityMode()
|
||||
return False
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setCurrentLayer(self, layer_num):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setLayer(layer_num)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setMinimumLayer(self, layer_num):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setMinimumLayer(layer_num)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setLayerViewType(self, layer_view_type):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setLayerViewType(layer_view_type)
|
||||
|
||||
@pyqtSlot(result=int)
|
||||
def getLayerViewType(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.getLayerViewType()
|
||||
return 0
|
||||
|
||||
# Opacity 0..1
|
||||
@pyqtSlot(int, float)
|
||||
def setExtruderOpacity(self, extruder_nr, opacity):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setExtruderOpacity(extruder_nr, opacity)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowTravelMoves(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setShowTravelMoves(show)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowHelpers(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setShowHelpers(show)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowSkin(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setShowSkin(show)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowInfill(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.setShowInfill(show)
|
||||
|
||||
@pyqtProperty(int, notify=globalStackChanged)
|
||||
def extruderCount(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
return active_view.getExtruderCount()
|
||||
return 0
|
||||
|
||||
def _layerActivityChanged(self):
|
||||
self.activityChanged.emit()
|
||||
|
||||
def _onLayerChanged(self):
|
||||
self.currentLayerChanged.emit()
|
||||
self._layerActivityChanged()
|
||||
|
||||
def _onMaxLayersChanged(self):
|
||||
self.maxLayersChanged.emit()
|
||||
|
||||
def _onBusyChanged(self):
|
||||
self.busyChanged.emit()
|
||||
|
||||
def _onGlobalStackChanged(self):
|
||||
self.globalStackChanged.emit()
|
||||
|
||||
def _onPreferencesChanged(self):
|
||||
self.preferencesChanged.emit()
|
||||
|
||||
def _onActiveViewChanged(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if type(active_view) == LayerView.LayerView.LayerView:
|
||||
active_view.currentLayerNumChanged.connect(self._onLayerChanged)
|
||||
active_view.maxLayersChanged.connect(self._onMaxLayersChanged)
|
||||
active_view.busyChanged.connect(self._onBusyChanged)
|
||||
active_view.globalStackChanged.connect(self._onGlobalStackChanged)
|
||||
active_view.preferencesChanged.connect(self._onPreferencesChanged)
|
|
@ -1,25 +0,0 @@
|
|||
# Copyright (c) 2015 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from . import LayerView, LayerViewProxy
|
||||
from PyQt5.QtQml import qmlRegisterType, qmlRegisterSingletonType
|
||||
|
||||
from UM.i18n import i18nCatalog
|
||||
catalog = i18nCatalog("cura")
|
||||
|
||||
def getMetaData():
|
||||
return {
|
||||
"view": {
|
||||
"name": catalog.i18nc("@item:inlistbox", "Layer view"),
|
||||
"view_panel": "LayerView.qml",
|
||||
"weight": 2
|
||||
}
|
||||
}
|
||||
|
||||
def createLayerViewProxy(engine, script_engine):
|
||||
return LayerViewProxy.LayerViewProxy()
|
||||
|
||||
def register(app):
|
||||
layer_view = LayerView.LayerView()
|
||||
qmlRegisterSingletonType(LayerViewProxy.LayerViewProxy, "UM", 1, 0, "LayerView", layer_view.getProxy)
|
||||
return { "view": LayerView.LayerView() }
|
|
@ -1,312 +1,325 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.2
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
Item {
|
||||
id: sliderRoot
|
||||
|
||||
// handle properties
|
||||
property real handleSize: 10
|
||||
property real handleRadius: handleSize / 2
|
||||
property real minimumRangeHandleSize: handleSize / 2
|
||||
property color upperHandleColor: "black"
|
||||
property color lowerHandleColor: "black"
|
||||
property color rangeHandleColor: "black"
|
||||
property real handleLabelWidth: width
|
||||
property var activeHandle: upperHandle
|
||||
|
||||
// track properties
|
||||
property real trackThickness: 4 // width of the slider track
|
||||
property real trackRadius: trackThickness / 2
|
||||
property color trackColor: "white"
|
||||
property real trackBorderWidth: 1 // width of the slider track border
|
||||
property color trackBorderColor: "black"
|
||||
|
||||
// value properties
|
||||
property real maximumValue: 100
|
||||
property real minimumValue: 0
|
||||
property real minimumRange: 0 // minimum range allowed between min and max values
|
||||
property bool roundValues: true
|
||||
property real upperValue: maximumValue
|
||||
property real lowerValue: minimumValue
|
||||
|
||||
property bool layersVisible: true
|
||||
|
||||
function getUpperValueFromSliderHandle () {
|
||||
return upperHandle.getValue()
|
||||
}
|
||||
|
||||
function setUpperValue (value) {
|
||||
upperHandle.setValue(value)
|
||||
updateRangeHandle()
|
||||
}
|
||||
|
||||
function getLowerValueFromSliderHandle () {
|
||||
return lowerHandle.getValue()
|
||||
}
|
||||
|
||||
function setLowerValue (value) {
|
||||
lowerHandle.setValue(value)
|
||||
updateRangeHandle()
|
||||
}
|
||||
|
||||
function updateRangeHandle () {
|
||||
rangeHandle.height = lowerHandle.y - (upperHandle.y + upperHandle.height)
|
||||
}
|
||||
|
||||
// set the active handle to show only one label at a time
|
||||
function setActiveHandle (handle) {
|
||||
activeHandle = handle
|
||||
}
|
||||
|
||||
// slider track
|
||||
Rectangle {
|
||||
id: track
|
||||
|
||||
width: sliderRoot.trackThickness
|
||||
height: sliderRoot.height - sliderRoot.handleSize
|
||||
radius: sliderRoot.trackRadius
|
||||
anchors.centerIn: sliderRoot
|
||||
color: sliderRoot.trackColor
|
||||
border.width: sliderRoot.trackBorderWidth
|
||||
border.color: sliderRoot.trackBorderColor
|
||||
visible: sliderRoot.layersVisible
|
||||
}
|
||||
|
||||
// Range handle
|
||||
Item {
|
||||
id: rangeHandle
|
||||
|
||||
y: upperHandle.y + upperHandle.height
|
||||
width: sliderRoot.handleSize
|
||||
height: sliderRoot.minimumRangeHandleSize
|
||||
anchors.horizontalCenter: sliderRoot.horizontalCenter
|
||||
visible: sliderRoot.layersVisible
|
||||
|
||||
// set the new value when dragging
|
||||
function onHandleDragged () {
|
||||
|
||||
upperHandle.y = y - upperHandle.height
|
||||
lowerHandle.y = y + height
|
||||
|
||||
var upperValue = sliderRoot.getUpperValueFromSliderHandle()
|
||||
var lowerValue = sliderRoot.getLowerValueFromSliderHandle()
|
||||
|
||||
// set both values after moving the handle position
|
||||
UM.LayerView.setCurrentLayer(upperValue)
|
||||
UM.LayerView.setMinimumLayer(lowerValue)
|
||||
}
|
||||
|
||||
function setValue (value) {
|
||||
var range = sliderRoot.upperValue - sliderRoot.lowerValue
|
||||
value = Math.min(value, sliderRoot.maximumValue)
|
||||
value = Math.max(value, sliderRoot.minimumValue + range)
|
||||
|
||||
UM.LayerView.setCurrentLayer(value)
|
||||
UM.LayerView.setMinimumLayer(value - range)
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: sliderRoot.trackThickness - 2 * sliderRoot.trackBorderWidth
|
||||
height: parent.height + sliderRoot.handleSize
|
||||
anchors.centerIn: parent
|
||||
color: sliderRoot.rangeHandleColor
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
|
||||
drag {
|
||||
target: parent
|
||||
axis: Drag.YAxis
|
||||
minimumY: upperHandle.height
|
||||
maximumY: sliderRoot.height - (rangeHandle.height + lowerHandle.height)
|
||||
}
|
||||
|
||||
onPositionChanged: parent.onHandleDragged()
|
||||
onPressed: sliderRoot.setActiveHandle(rangeHandle)
|
||||
}
|
||||
|
||||
LayerSliderLabel {
|
||||
id: rangleHandleLabel
|
||||
|
||||
height: sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
x: parent.x - width - UM.Theme.getSize("default_margin").width
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
target: Qt.point(sliderRoot.width, y + height / 2)
|
||||
visible: sliderRoot.activeHandle == parent
|
||||
|
||||
// custom properties
|
||||
maximumValue: sliderRoot.maximumValue
|
||||
value: sliderRoot.upperValue
|
||||
busy: UM.LayerView.busy
|
||||
setValue: rangeHandle.setValue // connect callback functions
|
||||
}
|
||||
}
|
||||
|
||||
// Upper handle
|
||||
Rectangle {
|
||||
id: upperHandle
|
||||
|
||||
y: sliderRoot.height - (sliderRoot.minimumRangeHandleSize + 2 * sliderRoot.handleSize)
|
||||
width: sliderRoot.handleSize
|
||||
height: sliderRoot.handleSize
|
||||
anchors.horizontalCenter: sliderRoot.horizontalCenter
|
||||
radius: sliderRoot.handleRadius
|
||||
color: sliderRoot.upperHandleColor
|
||||
visible: sliderRoot.layersVisible
|
||||
|
||||
function onHandleDragged () {
|
||||
|
||||
// don't allow the lower handle to be heigher than the upper handle
|
||||
if (lowerHandle.y - (y + height) < sliderRoot.minimumRangeHandleSize) {
|
||||
lowerHandle.y = y + height + sliderRoot.minimumRangeHandleSize
|
||||
}
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
|
||||
// set the new value after moving the handle position
|
||||
UM.LayerView.setCurrentLayer(getValue())
|
||||
}
|
||||
|
||||
// get the upper value based on the slider position
|
||||
function getValue () {
|
||||
var result = y / (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize))
|
||||
result = sliderRoot.maximumValue + result * (sliderRoot.minimumValue - (sliderRoot.maximumValue - sliderRoot.minimumValue))
|
||||
result = sliderRoot.roundValues ? Math.round(result) : result
|
||||
return result
|
||||
}
|
||||
|
||||
// set the slider position based on the upper value
|
||||
function setValue (value) {
|
||||
|
||||
UM.LayerView.setCurrentLayer(value)
|
||||
|
||||
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
||||
var newUpperYPosition = Math.round(diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
||||
y = newUpperYPosition
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
}
|
||||
|
||||
// dragging
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
|
||||
drag {
|
||||
target: parent
|
||||
axis: Drag.YAxis
|
||||
minimumY: 0
|
||||
maximumY: sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)
|
||||
}
|
||||
|
||||
onPositionChanged: parent.onHandleDragged()
|
||||
onPressed: sliderRoot.setActiveHandle(upperHandle)
|
||||
}
|
||||
|
||||
LayerSliderLabel {
|
||||
id: upperHandleLabel
|
||||
|
||||
height: sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
x: parent.x - width - UM.Theme.getSize("default_margin").width
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
target: Qt.point(sliderRoot.width, y + height / 2)
|
||||
visible: sliderRoot.activeHandle == parent
|
||||
|
||||
// custom properties
|
||||
maximumValue: sliderRoot.maximumValue
|
||||
value: sliderRoot.upperValue
|
||||
busy: UM.LayerView.busy
|
||||
setValue: upperHandle.setValue // connect callback functions
|
||||
}
|
||||
}
|
||||
|
||||
// Lower handle
|
||||
Rectangle {
|
||||
id: lowerHandle
|
||||
|
||||
y: sliderRoot.height - sliderRoot.handleSize
|
||||
width: parent.handleSize
|
||||
height: parent.handleSize
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
radius: sliderRoot.handleRadius
|
||||
color: sliderRoot.lowerHandleColor
|
||||
|
||||
visible: slider.layersVisible
|
||||
|
||||
function onHandleDragged () {
|
||||
|
||||
// don't allow the upper handle to be lower than the lower handle
|
||||
if (y - (upperHandle.y + upperHandle.height) < sliderRoot.minimumRangeHandleSize) {
|
||||
upperHandle.y = y - (upperHandle.heigth + sliderRoot.minimumRangeHandleSize)
|
||||
}
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
|
||||
// set the new value after moving the handle position
|
||||
UM.LayerView.setMinimumLayer(getValue())
|
||||
}
|
||||
|
||||
// get the lower value from the current slider position
|
||||
function getValue () {
|
||||
var result = (y - (sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)) / (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize));
|
||||
result = sliderRoot.maximumValue - sliderRoot.minimumRange + result * (sliderRoot.minimumValue - (sliderRoot.maximumValue - sliderRoot.minimumRange))
|
||||
result = sliderRoot.roundValues ? Math.round(result) : result
|
||||
return result
|
||||
}
|
||||
|
||||
// set the slider position based on the lower value
|
||||
function setValue (value) {
|
||||
|
||||
UM.LayerView.setMinimumLayer(value)
|
||||
|
||||
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
||||
var newLowerYPosition = Math.round((sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize) + diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
||||
y = newLowerYPosition
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
}
|
||||
|
||||
// dragging
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
|
||||
drag {
|
||||
target: parent
|
||||
axis: Drag.YAxis
|
||||
minimumY: upperHandle.height + sliderRoot.minimumRangeHandleSize
|
||||
maximumY: sliderRoot.height - parent.height
|
||||
}
|
||||
|
||||
onPositionChanged: parent.onHandleDragged()
|
||||
onPressed: sliderRoot.setActiveHandle(lowerHandle)
|
||||
}
|
||||
|
||||
LayerSliderLabel {
|
||||
id: lowerHandleLabel
|
||||
|
||||
height: sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
x: parent.x - width - UM.Theme.getSize("default_margin").width
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
target: Qt.point(sliderRoot.width, y + height / 2)
|
||||
visible: sliderRoot.activeHandle == parent
|
||||
|
||||
// custom properties
|
||||
maximumValue: sliderRoot.maximumValue
|
||||
value: sliderRoot.lowerValue
|
||||
busy: UM.LayerView.busy
|
||||
setValue: lowerHandle.setValue // connect callback functions
|
||||
}
|
||||
}
|
||||
}
|
||||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.2
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
Item {
|
||||
id: sliderRoot
|
||||
|
||||
// handle properties
|
||||
property real handleSize: 10
|
||||
property real handleRadius: handleSize / 2
|
||||
property real minimumRangeHandleSize: handleSize / 2
|
||||
property color upperHandleColor: "black"
|
||||
property color lowerHandleColor: "black"
|
||||
property color rangeHandleColor: "black"
|
||||
property color handleActiveColor: "white"
|
||||
property real handleLabelWidth: width
|
||||
property var activeHandle: upperHandle
|
||||
|
||||
// track properties
|
||||
property real trackThickness: 4 // width of the slider track
|
||||
property real trackRadius: trackThickness / 2
|
||||
property color trackColor: "white"
|
||||
property real trackBorderWidth: 1 // width of the slider track border
|
||||
property color trackBorderColor: "black"
|
||||
|
||||
// value properties
|
||||
property real maximumValue: 100
|
||||
property real minimumValue: 0
|
||||
property real minimumRange: 0 // minimum range allowed between min and max values
|
||||
property bool roundValues: true
|
||||
property real upperValue: maximumValue
|
||||
property real lowerValue: minimumValue
|
||||
|
||||
property bool layersVisible: true
|
||||
|
||||
function getUpperValueFromSliderHandle () {
|
||||
return upperHandle.getValue()
|
||||
}
|
||||
|
||||
function setUpperValue (value) {
|
||||
upperHandle.setValue(value)
|
||||
updateRangeHandle()
|
||||
}
|
||||
|
||||
function getLowerValueFromSliderHandle () {
|
||||
return lowerHandle.getValue()
|
||||
}
|
||||
|
||||
function setLowerValue (value) {
|
||||
lowerHandle.setValue(value)
|
||||
updateRangeHandle()
|
||||
}
|
||||
|
||||
function updateRangeHandle () {
|
||||
rangeHandle.height = lowerHandle.y - (upperHandle.y + upperHandle.height)
|
||||
}
|
||||
|
||||
// set the active handle to show only one label at a time
|
||||
function setActiveHandle (handle) {
|
||||
activeHandle = handle
|
||||
}
|
||||
|
||||
// slider track
|
||||
Rectangle {
|
||||
id: track
|
||||
|
||||
width: sliderRoot.trackThickness
|
||||
height: sliderRoot.height - sliderRoot.handleSize
|
||||
radius: sliderRoot.trackRadius
|
||||
anchors.centerIn: sliderRoot
|
||||
color: sliderRoot.trackColor
|
||||
border.width: sliderRoot.trackBorderWidth
|
||||
border.color: sliderRoot.trackBorderColor
|
||||
visible: sliderRoot.layersVisible
|
||||
}
|
||||
|
||||
// Range handle
|
||||
Item {
|
||||
id: rangeHandle
|
||||
|
||||
y: upperHandle.y + upperHandle.height
|
||||
width: sliderRoot.handleSize
|
||||
height: sliderRoot.minimumRangeHandleSize
|
||||
anchors.horizontalCenter: sliderRoot.horizontalCenter
|
||||
visible: sliderRoot.layersVisible
|
||||
|
||||
// set the new value when dragging
|
||||
function onHandleDragged () {
|
||||
|
||||
upperHandle.y = y - upperHandle.height
|
||||
lowerHandle.y = y + height
|
||||
|
||||
var upperValue = sliderRoot.getUpperValueFromSliderHandle()
|
||||
var lowerValue = sliderRoot.getLowerValueFromSliderHandle()
|
||||
|
||||
// set both values after moving the handle position
|
||||
UM.SimulationView.setCurrentLayer(upperValue)
|
||||
UM.SimulationView.setMinimumLayer(lowerValue)
|
||||
}
|
||||
|
||||
function setValue (value) {
|
||||
var range = sliderRoot.upperValue - sliderRoot.lowerValue
|
||||
value = Math.min(value, sliderRoot.maximumValue)
|
||||
value = Math.max(value, sliderRoot.minimumValue + range)
|
||||
|
||||
UM.SimulationView.setCurrentLayer(value)
|
||||
UM.SimulationView.setMinimumLayer(value - range)
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
width: sliderRoot.trackThickness - 2 * sliderRoot.trackBorderWidth
|
||||
height: parent.height + sliderRoot.handleSize
|
||||
anchors.centerIn: parent
|
||||
color: sliderRoot.rangeHandleColor
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
|
||||
drag {
|
||||
target: parent
|
||||
axis: Drag.YAxis
|
||||
minimumY: upperHandle.height
|
||||
maximumY: sliderRoot.height - (rangeHandle.height + lowerHandle.height)
|
||||
}
|
||||
|
||||
onPositionChanged: parent.onHandleDragged()
|
||||
onPressed: sliderRoot.setActiveHandle(rangeHandle)
|
||||
}
|
||||
|
||||
SimulationSliderLabel {
|
||||
id: rangleHandleLabel
|
||||
|
||||
height: sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
x: parent.x - width - UM.Theme.getSize("default_margin").width
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
target: Qt.point(sliderRoot.width, y + height / 2)
|
||||
visible: sliderRoot.activeHandle == parent
|
||||
|
||||
// custom properties
|
||||
maximumValue: sliderRoot.maximumValue
|
||||
value: sliderRoot.upperValue
|
||||
busy: UM.SimulationView.busy
|
||||
setValue: rangeHandle.setValue // connect callback functions
|
||||
}
|
||||
}
|
||||
|
||||
// Upper handle
|
||||
Rectangle {
|
||||
id: upperHandle
|
||||
|
||||
y: sliderRoot.height - (sliderRoot.minimumRangeHandleSize + 2 * sliderRoot.handleSize)
|
||||
width: sliderRoot.handleSize
|
||||
height: sliderRoot.handleSize
|
||||
anchors.horizontalCenter: sliderRoot.horizontalCenter
|
||||
radius: sliderRoot.handleRadius
|
||||
color: upperHandleLabel.activeFocus ? sliderRoot.handleActiveColor : sliderRoot.upperHandleColor
|
||||
visible: sliderRoot.layersVisible
|
||||
|
||||
function onHandleDragged () {
|
||||
|
||||
// don't allow the lower handle to be heigher than the upper handle
|
||||
if (lowerHandle.y - (y + height) < sliderRoot.minimumRangeHandleSize) {
|
||||
lowerHandle.y = y + height + sliderRoot.minimumRangeHandleSize
|
||||
}
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
|
||||
// set the new value after moving the handle position
|
||||
UM.SimulationView.setCurrentLayer(getValue())
|
||||
}
|
||||
|
||||
// get the upper value based on the slider position
|
||||
function getValue () {
|
||||
var result = y / (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize))
|
||||
result = sliderRoot.maximumValue + result * (sliderRoot.minimumValue - (sliderRoot.maximumValue - sliderRoot.minimumValue))
|
||||
result = sliderRoot.roundValues ? Math.round(result) : result
|
||||
return result
|
||||
}
|
||||
|
||||
// set the slider position based on the upper value
|
||||
function setValue (value) {
|
||||
|
||||
UM.SimulationView.setCurrentLayer(value)
|
||||
|
||||
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
||||
var newUpperYPosition = Math.round(diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
||||
y = newUpperYPosition
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
}
|
||||
|
||||
Keys.onUpPressed: upperHandleLabel.setValue(upperHandleLabel.value + ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
Keys.onDownPressed: upperHandleLabel.setValue(upperHandleLabel.value - ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
|
||||
// dragging
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
|
||||
drag {
|
||||
target: parent
|
||||
axis: Drag.YAxis
|
||||
minimumY: 0
|
||||
maximumY: sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)
|
||||
}
|
||||
|
||||
onPositionChanged: parent.onHandleDragged()
|
||||
onPressed: {
|
||||
sliderRoot.setActiveHandle(upperHandle)
|
||||
upperHandleLabel.forceActiveFocus()
|
||||
}
|
||||
}
|
||||
|
||||
SimulationSliderLabel {
|
||||
id: upperHandleLabel
|
||||
|
||||
height: sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
x: parent.x - width - UM.Theme.getSize("default_margin").width
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
target: Qt.point(sliderRoot.width, y + height / 2)
|
||||
visible: sliderRoot.activeHandle == parent
|
||||
|
||||
// custom properties
|
||||
maximumValue: sliderRoot.maximumValue
|
||||
value: sliderRoot.upperValue
|
||||
busy: UM.SimulationView.busy
|
||||
setValue: upperHandle.setValue // connect callback functions
|
||||
}
|
||||
}
|
||||
|
||||
// Lower handle
|
||||
Rectangle {
|
||||
id: lowerHandle
|
||||
|
||||
y: sliderRoot.height - sliderRoot.handleSize
|
||||
width: parent.handleSize
|
||||
height: parent.handleSize
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
radius: sliderRoot.handleRadius
|
||||
color: lowerHandleLabel.activeFocus ? sliderRoot.handleActiveColor : sliderRoot.lowerHandleColor
|
||||
|
||||
visible: sliderRoot.layersVisible
|
||||
|
||||
function onHandleDragged () {
|
||||
|
||||
// don't allow the upper handle to be lower than the lower handle
|
||||
if (y - (upperHandle.y + upperHandle.height) < sliderRoot.minimumRangeHandleSize) {
|
||||
upperHandle.y = y - (upperHandle.heigth + sliderRoot.minimumRangeHandleSize)
|
||||
}
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
|
||||
// set the new value after moving the handle position
|
||||
UM.SimulationView.setMinimumLayer(getValue())
|
||||
}
|
||||
|
||||
// get the lower value from the current slider position
|
||||
function getValue () {
|
||||
var result = (y - (sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)) / (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize));
|
||||
result = sliderRoot.maximumValue - sliderRoot.minimumRange + result * (sliderRoot.minimumValue - (sliderRoot.maximumValue - sliderRoot.minimumRange))
|
||||
result = sliderRoot.roundValues ? Math.round(result) : result
|
||||
return result
|
||||
}
|
||||
|
||||
// set the slider position based on the lower value
|
||||
function setValue (value) {
|
||||
|
||||
UM.SimulationView.setMinimumLayer(value)
|
||||
|
||||
var diff = (value - sliderRoot.maximumValue) / (sliderRoot.minimumValue - sliderRoot.maximumValue)
|
||||
var newLowerYPosition = Math.round((sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize) + diff * (sliderRoot.height - (2 * sliderRoot.handleSize + sliderRoot.minimumRangeHandleSize)))
|
||||
y = newLowerYPosition
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
}
|
||||
|
||||
Keys.onUpPressed: lowerHandleLabel.setValue(lowerHandleLabel.value + ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
Keys.onDownPressed: lowerHandleLabel.setValue(lowerHandleLabel.value - ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
|
||||
// dragging
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
|
||||
drag {
|
||||
target: parent
|
||||
axis: Drag.YAxis
|
||||
minimumY: upperHandle.height + sliderRoot.minimumRangeHandleSize
|
||||
maximumY: sliderRoot.height - parent.height
|
||||
}
|
||||
|
||||
onPositionChanged: parent.onHandleDragged()
|
||||
onPressed: {
|
||||
sliderRoot.setActiveHandle(lowerHandle)
|
||||
lowerHandleLabel.forceActiveFocus()
|
||||
}
|
||||
}
|
||||
|
||||
SimulationSliderLabel {
|
||||
id: lowerHandleLabel
|
||||
|
||||
height: sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
x: parent.x - width - UM.Theme.getSize("default_margin").width
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
target: Qt.point(sliderRoot.width, y + height / 2)
|
||||
visible: sliderRoot.activeHandle == parent
|
||||
|
||||
// custom properties
|
||||
maximumValue: sliderRoot.maximumValue
|
||||
value: sliderRoot.lowerValue
|
||||
busy: UM.SimulationView.busy
|
||||
setValue: lowerHandle.setValue // connect callback functions
|
||||
}
|
||||
}
|
||||
}
|
49
plugins/SimulationView/NozzleNode.py
Normal file
49
plugins/SimulationView/NozzleNode.py
Normal file
|
@ -0,0 +1,49 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from UM.Application import Application
|
||||
from UM.Math.Color import Color
|
||||
from UM.Math.Vector import Vector
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Scene.SceneNode import SceneNode
|
||||
from UM.View.GL.OpenGL import OpenGL
|
||||
from UM.Resources import Resources
|
||||
|
||||
import os
|
||||
|
||||
class NozzleNode(SceneNode):
|
||||
def __init__(self, parent = None):
|
||||
super().__init__(parent)
|
||||
|
||||
self._shader = None
|
||||
self.setCalculateBoundingBox(False)
|
||||
self._createNozzleMesh()
|
||||
|
||||
def _createNozzleMesh(self):
|
||||
mesh_file = "resources/nozzle.stl"
|
||||
try:
|
||||
path = os.path.join(PluginRegistry.getInstance().getPluginPath("SimulationView"), mesh_file)
|
||||
except FileNotFoundError:
|
||||
path = ""
|
||||
|
||||
reader = Application.getInstance().getMeshFileHandler().getReaderForFile(path)
|
||||
node = reader.read(path)
|
||||
|
||||
if node.getMeshData():
|
||||
self.setMeshData(node.getMeshData())
|
||||
|
||||
def render(self, renderer):
|
||||
# Avoid to render if it is not visible
|
||||
if not self.isVisible():
|
||||
return False
|
||||
|
||||
if not self._shader:
|
||||
# We now misuse the platform shader, as it actually supports textures
|
||||
self._shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "color.shader"))
|
||||
self._shader.setUniformValue("u_color", Color(*Application.getInstance().getTheme().getColor("layerview_nozzle").getRgb()))
|
||||
# Set the opacity to 0, so that the template is in full control.
|
||||
self._shader.setUniformValue("u_opacity", 0)
|
||||
|
||||
if self.getMeshData():
|
||||
renderer.queueNode(self, shader = self._shader, transparent = True)
|
||||
return True
|
161
plugins/SimulationView/PathSlider.qml
Normal file
161
plugins/SimulationView/PathSlider.qml
Normal file
|
@ -0,0 +1,161 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.2
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
Item {
|
||||
id: sliderRoot
|
||||
|
||||
// handle properties
|
||||
property real handleSize: 10
|
||||
property real handleRadius: handleSize / 2
|
||||
property color handleColor: "black"
|
||||
property color handleActiveColor: "white"
|
||||
property color rangeColor: "black"
|
||||
property real handleLabelWidth: width
|
||||
|
||||
// track properties
|
||||
property real trackThickness: 4 // width of the slider track
|
||||
property real trackRadius: trackThickness / 2
|
||||
property color trackColor: "white"
|
||||
property real trackBorderWidth: 1 // width of the slider track border
|
||||
property color trackBorderColor: "black"
|
||||
|
||||
// value properties
|
||||
property real maximumValue: 100
|
||||
property bool roundValues: true
|
||||
property real handleValue: maximumValue
|
||||
|
||||
property bool pathsVisible: true
|
||||
|
||||
function getHandleValueFromSliderHandle () {
|
||||
return handle.getValue()
|
||||
}
|
||||
|
||||
function setHandleValue (value) {
|
||||
handle.setValue(value)
|
||||
updateRangeHandle()
|
||||
}
|
||||
|
||||
function updateRangeHandle () {
|
||||
rangeHandle.width = handle.x - sliderRoot.handleSize
|
||||
}
|
||||
|
||||
// slider track
|
||||
Rectangle {
|
||||
id: track
|
||||
|
||||
width: sliderRoot.width - sliderRoot.handleSize
|
||||
height: sliderRoot.trackThickness
|
||||
radius: sliderRoot.trackRadius
|
||||
anchors.centerIn: sliderRoot
|
||||
color: sliderRoot.trackColor
|
||||
border.width: sliderRoot.trackBorderWidth
|
||||
border.color: sliderRoot.trackBorderColor
|
||||
visible: sliderRoot.pathsVisible
|
||||
}
|
||||
|
||||
// Progress indicator
|
||||
Item {
|
||||
id: rangeHandle
|
||||
|
||||
x: handle.width
|
||||
height: sliderRoot.handleSize
|
||||
width: handle.x - sliderRoot.handleSize
|
||||
anchors.verticalCenter: sliderRoot.verticalCenter
|
||||
visible: sliderRoot.pathsVisible
|
||||
|
||||
Rectangle {
|
||||
height: sliderRoot.trackThickness - 2 * sliderRoot.trackBorderWidth
|
||||
width: parent.width + sliderRoot.handleSize
|
||||
anchors.centerIn: parent
|
||||
color: sliderRoot.rangeColor
|
||||
}
|
||||
}
|
||||
|
||||
// Handle
|
||||
Rectangle {
|
||||
id: handle
|
||||
|
||||
x: sliderRoot.handleSize
|
||||
width: sliderRoot.handleSize
|
||||
height: sliderRoot.handleSize
|
||||
anchors.verticalCenter: sliderRoot.verticalCenter
|
||||
radius: sliderRoot.handleRadius
|
||||
color: handleLabel.activeFocus ? sliderRoot.handleActiveColor : sliderRoot.handleColor
|
||||
visible: sliderRoot.pathsVisible
|
||||
|
||||
function onHandleDragged () {
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
|
||||
// set the new value after moving the handle position
|
||||
UM.SimulationView.setCurrentPath(getValue())
|
||||
}
|
||||
|
||||
// get the value based on the slider position
|
||||
function getValue () {
|
||||
var result = x / (sliderRoot.width - sliderRoot.handleSize)
|
||||
result = result * sliderRoot.maximumValue
|
||||
result = sliderRoot.roundValues ? Math.round(result) : result
|
||||
return result
|
||||
}
|
||||
|
||||
// set the slider position based on the value
|
||||
function setValue (value) {
|
||||
|
||||
UM.SimulationView.setCurrentPath(value)
|
||||
|
||||
var diff = value / sliderRoot.maximumValue
|
||||
var newXPosition = Math.round(diff * (sliderRoot.width - sliderRoot.handleSize))
|
||||
x = newXPosition
|
||||
|
||||
// update the range handle
|
||||
sliderRoot.updateRangeHandle()
|
||||
}
|
||||
|
||||
Keys.onRightPressed: handleLabel.setValue(handleLabel.value + ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
Keys.onLeftPressed: handleLabel.setValue(handleLabel.value - ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
|
||||
// dragging
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
|
||||
drag {
|
||||
target: parent
|
||||
axis: Drag.XAxis
|
||||
minimumX: 0
|
||||
maximumX: sliderRoot.width - sliderRoot.handleSize
|
||||
}
|
||||
onPressed: {
|
||||
handleLabel.forceActiveFocus()
|
||||
}
|
||||
|
||||
onPositionChanged: parent.onHandleDragged()
|
||||
}
|
||||
|
||||
SimulationSliderLabel {
|
||||
id: handleLabel
|
||||
|
||||
height: sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
y: parent.y + sliderRoot.handleSize + UM.Theme.getSize("default_margin").height
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
target: Qt.point(x + width / 2, sliderRoot.height)
|
||||
visible: false
|
||||
startFrom: 0
|
||||
|
||||
// custom properties
|
||||
maximumValue: sliderRoot.maximumValue
|
||||
value: sliderRoot.handleValue
|
||||
busy: UM.SimulationView.busy
|
||||
setValue: handle.setValue // connect callback functions
|
||||
}
|
||||
}
|
||||
}
|
190
plugins/SimulationView/SimulationPass.py
Normal file
190
plugins/SimulationView/SimulationPass.py
Normal file
|
@ -0,0 +1,190 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from UM.Math.Color import Color
|
||||
from UM.Math.Vector import Vector
|
||||
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
|
||||
from UM.Resources import Resources
|
||||
from UM.Scene.SceneNode import SceneNode
|
||||
from UM.Scene.ToolHandle import ToolHandle
|
||||
from UM.Application import Application
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
|
||||
from UM.View.RenderPass import RenderPass
|
||||
from UM.View.RenderBatch import RenderBatch
|
||||
from UM.View.GL.OpenGL import OpenGL
|
||||
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
|
||||
|
||||
import os.path
|
||||
|
||||
## RenderPass used to display g-code paths.
|
||||
from .NozzleNode import NozzleNode
|
||||
|
||||
|
||||
class SimulationPass(RenderPass):
|
||||
def __init__(self, width, height):
|
||||
super().__init__("simulationview", width, height)
|
||||
|
||||
self._layer_shader = None
|
||||
self._layer_shadow_shader = None
|
||||
self._current_shader = None # This shader will be the shadow or the normal depending if the user wants to see the paths or the layers
|
||||
self._tool_handle_shader = None
|
||||
self._nozzle_shader = None
|
||||
self._old_current_layer = 0
|
||||
self._old_current_path = 0
|
||||
self._switching_layers = True # It tracks when the user is moving the layers' slider
|
||||
self._gl = OpenGL.getInstance().getBindingsObject()
|
||||
self._scene = Application.getInstance().getController().getScene()
|
||||
self._extruder_manager = ExtruderManager.getInstance()
|
||||
|
||||
self._layer_view = None
|
||||
self._compatibility_mode = None
|
||||
|
||||
def setSimulationView(self, layerview):
|
||||
self._layer_view = layerview
|
||||
self._compatibility_mode = layerview.getCompatibilityMode()
|
||||
|
||||
def render(self):
|
||||
if not self._layer_shader:
|
||||
if self._compatibility_mode:
|
||||
shader_filename = "layers.shader"
|
||||
shadow_shader_filename = "layers_shadow.shader"
|
||||
else:
|
||||
shader_filename = "layers3d.shader"
|
||||
shadow_shader_filename = "layers3d_shadow.shader"
|
||||
self._layer_shader = OpenGL.getInstance().createShaderProgram(os.path.join(PluginRegistry.getInstance().getPluginPath("SimulationView"), shader_filename))
|
||||
self._layer_shadow_shader = OpenGL.getInstance().createShaderProgram(os.path.join(PluginRegistry.getInstance().getPluginPath("SimulationView"), shadow_shader_filename))
|
||||
self._current_shader = self._layer_shader
|
||||
# Use extruder 0 if the extruder manager reports extruder index -1 (for single extrusion printers)
|
||||
self._layer_shader.setUniformValue("u_active_extruder", float(max(0, self._extruder_manager.activeExtruderIndex)))
|
||||
if self._layer_view:
|
||||
self._layer_shader.setUniformValue("u_max_feedrate", self._layer_view.getMaxFeedrate())
|
||||
self._layer_shader.setUniformValue("u_min_feedrate", self._layer_view.getMinFeedrate())
|
||||
self._layer_shader.setUniformValue("u_max_thickness", self._layer_view.getMaxThickness())
|
||||
self._layer_shader.setUniformValue("u_min_thickness", self._layer_view.getMinThickness())
|
||||
self._layer_shader.setUniformValue("u_layer_view_type", self._layer_view.getSimulationViewType())
|
||||
self._layer_shader.setUniformValue("u_extruder_opacity", self._layer_view.getExtruderOpacities())
|
||||
self._layer_shader.setUniformValue("u_show_travel_moves", self._layer_view.getShowTravelMoves())
|
||||
self._layer_shader.setUniformValue("u_show_helpers", self._layer_view.getShowHelpers())
|
||||
self._layer_shader.setUniformValue("u_show_skin", self._layer_view.getShowSkin())
|
||||
self._layer_shader.setUniformValue("u_show_infill", self._layer_view.getShowInfill())
|
||||
else:
|
||||
#defaults
|
||||
self._layer_shader.setUniformValue("u_max_feedrate", 1)
|
||||
self._layer_shader.setUniformValue("u_min_feedrate", 0)
|
||||
self._layer_shader.setUniformValue("u_max_thickness", 1)
|
||||
self._layer_shader.setUniformValue("u_min_thickness", 0)
|
||||
self._layer_shader.setUniformValue("u_layer_view_type", 1)
|
||||
self._layer_shader.setUniformValue("u_extruder_opacity", [1, 1, 1, 1])
|
||||
self._layer_shader.setUniformValue("u_show_travel_moves", 0)
|
||||
self._layer_shader.setUniformValue("u_show_helpers", 1)
|
||||
self._layer_shader.setUniformValue("u_show_skin", 1)
|
||||
self._layer_shader.setUniformValue("u_show_infill", 1)
|
||||
|
||||
if not self._tool_handle_shader:
|
||||
self._tool_handle_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "toolhandle.shader"))
|
||||
|
||||
if not self._nozzle_shader:
|
||||
self._nozzle_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "color.shader"))
|
||||
self._nozzle_shader.setUniformValue("u_color", Color(*Application.getInstance().getTheme().getColor("layerview_nozzle").getRgb()))
|
||||
|
||||
self.bind()
|
||||
|
||||
tool_handle_batch = RenderBatch(self._tool_handle_shader, type = RenderBatch.RenderType.Overlay)
|
||||
head_position = None # Indicates the current position of the print head
|
||||
nozzle_node = None
|
||||
|
||||
for node in DepthFirstIterator(self._scene.getRoot()):
|
||||
|
||||
if isinstance(node, ToolHandle):
|
||||
tool_handle_batch.addItem(node.getWorldTransformation(), mesh = node.getSolidMesh())
|
||||
|
||||
elif isinstance(node, NozzleNode):
|
||||
nozzle_node = node
|
||||
nozzle_node.setVisible(False)
|
||||
|
||||
elif isinstance(node, SceneNode) and (node.getMeshData() or node.callDecoration("isBlockSlicing")) and node.isVisible():
|
||||
layer_data = node.callDecoration("getLayerData")
|
||||
if not layer_data:
|
||||
continue
|
||||
|
||||
# Render all layers below a certain number as line mesh instead of vertices.
|
||||
if self._layer_view._current_layer_num > -1 and ((not self._layer_view._only_show_top_layers) or (not self._layer_view.getCompatibilityMode())):
|
||||
start = 0
|
||||
end = 0
|
||||
element_counts = layer_data.getElementCounts()
|
||||
for layer in sorted(element_counts.keys()):
|
||||
# In the current layer, we show just the indicated paths
|
||||
if layer == self._layer_view._current_layer_num:
|
||||
# We look for the position of the head, searching the point of the current path
|
||||
index = self._layer_view._current_path_num
|
||||
offset = 0
|
||||
for polygon in layer_data.getLayer(layer).polygons:
|
||||
# The size indicates all values in the two-dimension array, and the second dimension is
|
||||
# always size 3 because we have 3D points.
|
||||
if index >= polygon.data.size // 3 - offset:
|
||||
index -= polygon.data.size // 3 - offset
|
||||
offset = 1 # This is to avoid the first point when there is more than one polygon, since has the same value as the last point in the previous polygon
|
||||
continue
|
||||
# The head position is calculated and translated
|
||||
head_position = Vector(polygon.data[index+offset][0], polygon.data[index+offset][1], polygon.data[index+offset][2]) + node.getWorldPosition()
|
||||
break
|
||||
break
|
||||
if self._layer_view._minimum_layer_num > layer:
|
||||
start += element_counts[layer]
|
||||
end += element_counts[layer]
|
||||
|
||||
# Calculate the range of paths in the last layer
|
||||
current_layer_start = end
|
||||
current_layer_end = end + self._layer_view._current_path_num * 2 # Because each point is used twice
|
||||
|
||||
# This uses glDrawRangeElements internally to only draw a certain range of lines.
|
||||
# All the layers but the current selected layer are rendered first
|
||||
if self._old_current_path != self._layer_view._current_path_num:
|
||||
self._current_shader = self._layer_shadow_shader
|
||||
self._switching_layers = False
|
||||
if not self._layer_view.isSimulationRunning() and self._old_current_layer != self._layer_view._current_layer_num:
|
||||
self._current_shader = self._layer_shader
|
||||
self._switching_layers = True
|
||||
|
||||
layers_batch = RenderBatch(self._current_shader, type = RenderBatch.RenderType.Solid, mode = RenderBatch.RenderMode.Lines, range = (start, end))
|
||||
layers_batch.addItem(node.getWorldTransformation(), layer_data)
|
||||
layers_batch.render(self._scene.getActiveCamera())
|
||||
|
||||
# Current selected layer is rendered
|
||||
current_layer_batch = RenderBatch(self._layer_shader, type = RenderBatch.RenderType.Solid, mode = RenderBatch.RenderMode.Lines, range = (current_layer_start, current_layer_end))
|
||||
current_layer_batch.addItem(node.getWorldTransformation(), layer_data)
|
||||
current_layer_batch.render(self._scene.getActiveCamera())
|
||||
|
||||
self._old_current_layer = self._layer_view._current_layer_num
|
||||
self._old_current_path = self._layer_view._current_path_num
|
||||
|
||||
# Create a new batch that is not range-limited
|
||||
batch = RenderBatch(self._layer_shader, type = RenderBatch.RenderType.Solid)
|
||||
|
||||
if self._layer_view.getCurrentLayerMesh():
|
||||
batch.addItem(node.getWorldTransformation(), self._layer_view.getCurrentLayerMesh())
|
||||
|
||||
if self._layer_view.getCurrentLayerJumps():
|
||||
batch.addItem(node.getWorldTransformation(), self._layer_view.getCurrentLayerJumps())
|
||||
|
||||
if len(batch.items) > 0:
|
||||
batch.render(self._scene.getActiveCamera())
|
||||
|
||||
# The nozzle is drawn when once we know the correct position of the head,
|
||||
# but the user is not using the layer slider, and the compatibility mode is not enabled
|
||||
if not self._switching_layers and not self._compatibility_mode and self._layer_view.getActivity() and nozzle_node is not None:
|
||||
if head_position is not None:
|
||||
nozzle_node.setVisible(True)
|
||||
nozzle_node.setPosition(head_position)
|
||||
nozzle_batch = RenderBatch(self._nozzle_shader, type = RenderBatch.RenderType.Transparent)
|
||||
nozzle_batch.addItem(nozzle_node.getWorldTransformation(), mesh = nozzle_node.getMeshData())
|
||||
nozzle_batch.render(self._scene.getActiveCamera())
|
||||
|
||||
# Render toolhandles on top of the layerview
|
||||
if len(tool_handle_batch.items) > 0:
|
||||
tool_handle_batch.render(self._scene.getActiveCamera())
|
||||
|
||||
self.release()
|
|
@ -1,103 +1,104 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.2
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
UM.PointingRectangle {
|
||||
id: sliderLabelRoot
|
||||
|
||||
// custom properties
|
||||
property real maximumValue: 100
|
||||
property real value: 0
|
||||
property var setValue // Function
|
||||
property bool busy: false
|
||||
|
||||
target: Qt.point(parent.width, y + height / 2)
|
||||
arrowSize: UM.Theme.getSize("default_arrow").width
|
||||
height: parent.height
|
||||
width: valueLabel.width + UM.Theme.getSize("default_margin").width
|
||||
visible: false
|
||||
|
||||
// make sure the text field is focussed when pressing the parent handle
|
||||
// needed to connect the key bindings when switching active handle
|
||||
onVisibleChanged: if (visible) valueLabel.forceActiveFocus()
|
||||
|
||||
color: UM.Theme.getColor("tool_panel_background")
|
||||
borderColor: UM.Theme.getColor("lining")
|
||||
borderWidth: UM.Theme.getSize("default_lining").width
|
||||
|
||||
Behavior on height {
|
||||
NumberAnimation {
|
||||
duration: 50
|
||||
}
|
||||
}
|
||||
|
||||
// catch all mouse events so they're not handled by underlying 3D scene
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: valueLabel
|
||||
|
||||
anchors {
|
||||
left: parent.left
|
||||
leftMargin: Math.floor(UM.Theme.getSize("default_margin").width / 2)
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
width: 40 * screenScaleFactor
|
||||
text: sliderLabelRoot.value + 1 // the current handle value, add 1 because layers is an array
|
||||
horizontalAlignment: TextInput.AlignRight
|
||||
|
||||
// key bindings, work when label is currenctly focused (active handle in LayerSlider)
|
||||
Keys.onUpPressed: sliderLabelRoot.setValue(sliderLabelRoot.value + ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
Keys.onDownPressed: sliderLabelRoot.setValue(sliderLabelRoot.value - ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
|
||||
style: TextFieldStyle {
|
||||
textColor: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
background: Item { }
|
||||
}
|
||||
|
||||
onEditingFinished: {
|
||||
|
||||
// Ensure that the cursor is at the first position. On some systems the text isn't fully visible
|
||||
// Seems to have to do something with different dpi densities that QML doesn't quite handle.
|
||||
// Another option would be to increase the size even further, but that gives pretty ugly results.
|
||||
cursorPosition = 0
|
||||
|
||||
if (valueLabel.text != "") {
|
||||
// -1 because we need to convert back to an array structure
|
||||
sliderLabelRoot.setValue(parseInt(valueLabel.text) - 1)
|
||||
}
|
||||
}
|
||||
|
||||
validator: IntValidator {
|
||||
bottom: 1
|
||||
top: sliderLabelRoot.maximumValue + 1 // +1 because actual layers is an array
|
||||
}
|
||||
}
|
||||
|
||||
BusyIndicator {
|
||||
id: busyIndicator
|
||||
|
||||
anchors {
|
||||
left: parent.right
|
||||
leftMargin: Math.floor(UM.Theme.getSize("default_margin").width / 2)
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
width: sliderLabelRoot.height
|
||||
height: width
|
||||
|
||||
visible: sliderLabelRoot.busy
|
||||
running: sliderLabelRoot.busy
|
||||
}
|
||||
}
|
||||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.2
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
UM.PointingRectangle {
|
||||
id: sliderLabelRoot
|
||||
|
||||
// custom properties
|
||||
property real maximumValue: 100
|
||||
property real value: 0
|
||||
property var setValue // Function
|
||||
property bool busy: false
|
||||
property int startFrom: 1
|
||||
|
||||
target: Qt.point(parent.width, y + height / 2)
|
||||
arrowSize: UM.Theme.getSize("default_arrow").width
|
||||
height: parent.height
|
||||
width: valueLabel.width + UM.Theme.getSize("default_margin").width
|
||||
visible: false
|
||||
|
||||
// make sure the text field is focussed when pressing the parent handle
|
||||
// needed to connect the key bindings when switching active handle
|
||||
onVisibleChanged: if (visible) valueLabel.forceActiveFocus()
|
||||
|
||||
color: UM.Theme.getColor("tool_panel_background")
|
||||
borderColor: UM.Theme.getColor("lining")
|
||||
borderWidth: UM.Theme.getSize("default_lining").width
|
||||
|
||||
Behavior on height {
|
||||
NumberAnimation {
|
||||
duration: 50
|
||||
}
|
||||
}
|
||||
|
||||
// catch all mouse events so they're not handled by underlying 3D scene
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
TextField {
|
||||
id: valueLabel
|
||||
|
||||
anchors {
|
||||
left: parent.left
|
||||
leftMargin: Math.floor(UM.Theme.getSize("default_margin").width / 2)
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
width: 40 * screenScaleFactor
|
||||
text: sliderLabelRoot.value + startFrom // the current handle value, add 1 because layers is an array
|
||||
horizontalAlignment: TextInput.AlignRight
|
||||
|
||||
// key bindings, work when label is currenctly focused (active handle in LayerSlider)
|
||||
Keys.onUpPressed: sliderLabelRoot.setValue(sliderLabelRoot.value + ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
Keys.onDownPressed: sliderLabelRoot.setValue(sliderLabelRoot.value - ((event.modifiers & Qt.ShiftModifier) ? 10 : 1))
|
||||
|
||||
style: TextFieldStyle {
|
||||
textColor: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
background: Item { }
|
||||
}
|
||||
|
||||
onEditingFinished: {
|
||||
|
||||
// Ensure that the cursor is at the first position. On some systems the text isn't fully visible
|
||||
// Seems to have to do something with different dpi densities that QML doesn't quite handle.
|
||||
// Another option would be to increase the size even further, but that gives pretty ugly results.
|
||||
cursorPosition = 0
|
||||
|
||||
if (valueLabel.text != "") {
|
||||
// -startFrom because we need to convert back to an array structure
|
||||
sliderLabelRoot.setValue(parseInt(valueLabel.text) - startFrom)
|
||||
}
|
||||
}
|
||||
|
||||
validator: IntValidator {
|
||||
bottom:startFrom
|
||||
top: sliderLabelRoot.maximumValue + startFrom // +startFrom because maybe we want to start in a different value rather than 0
|
||||
}
|
||||
}
|
||||
|
||||
BusyIndicator {
|
||||
id: busyIndicator
|
||||
|
||||
anchors {
|
||||
left: parent.right
|
||||
leftMargin: Math.floor(UM.Theme.getSize("default_margin").width / 2)
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
width: sliderLabelRoot.height
|
||||
height: width
|
||||
|
||||
visible: sliderLabelRoot.busy
|
||||
running: sliderLabelRoot.busy
|
||||
}
|
||||
}
|
216
plugins/LayerView/LayerView.py → plugins/SimulationView/SimulationView.py
Executable file → Normal file
216
plugins/LayerView/LayerView.py → plugins/SimulationView/SimulationView.py
Executable file → Normal file
|
@ -1,46 +1,46 @@
|
|||
# Copyright (c) 2015 Ultimaker B.V.
|
||||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import sys
|
||||
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.View.View import View
|
||||
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
|
||||
from UM.Resources import Resources
|
||||
from UM.Event import Event, KeyEvent
|
||||
from UM.Signal import Signal
|
||||
from UM.Scene.Selection import Selection
|
||||
from UM.Math.Color import Color
|
||||
from UM.Mesh.MeshBuilder import MeshBuilder
|
||||
from UM.Job import Job
|
||||
from UM.Preferences import Preferences
|
||||
from UM.Logger import Logger
|
||||
from UM.View.GL.OpenGL import OpenGL
|
||||
from UM.Message import Message
|
||||
from UM.Application import Application
|
||||
from UM.View.GL.OpenGLContext import OpenGLContext
|
||||
|
||||
from cura.ConvexHullNode import ConvexHullNode
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
|
||||
from PyQt5.QtCore import Qt
|
||||
from PyQt5.QtWidgets import QApplication
|
||||
|
||||
from . import LayerViewProxy
|
||||
|
||||
from UM.Application import Application
|
||||
from UM.Event import Event, KeyEvent
|
||||
from UM.Job import Job
|
||||
from UM.Logger import Logger
|
||||
from UM.Math.Color import Color
|
||||
from UM.Mesh.MeshBuilder import MeshBuilder
|
||||
from UM.Message import Message
|
||||
from UM.PluginRegistry import PluginRegistry
|
||||
from UM.Preferences import Preferences
|
||||
from UM.Resources import Resources
|
||||
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
|
||||
from UM.Scene.Selection import Selection
|
||||
from UM.Signal import Signal
|
||||
from UM.View.GL.OpenGL import OpenGL
|
||||
from UM.View.GL.OpenGLContext import OpenGLContext
|
||||
from UM.View.View import View
|
||||
from UM.i18n import i18nCatalog
|
||||
catalog = i18nCatalog("cura")
|
||||
from cura.ConvexHullNode import ConvexHullNode
|
||||
|
||||
from . import LayerPass
|
||||
from .NozzleNode import NozzleNode
|
||||
from .SimulationPass import SimulationPass
|
||||
from .SimulationViewProxy import SimulationViewProxy
|
||||
|
||||
catalog = i18nCatalog("cura")
|
||||
|
||||
import numpy
|
||||
import os.path
|
||||
|
||||
## View used to display g-code paths.
|
||||
class LayerView(View):
|
||||
# Must match LayerView.qml
|
||||
class SimulationView(View):
|
||||
# Must match SimulationView.qml
|
||||
LAYER_VIEW_TYPE_MATERIAL_TYPE = 0
|
||||
LAYER_VIEW_TYPE_LINE_TYPE = 1
|
||||
LAYER_VIEW_TYPE_FEEDRATE = 2
|
||||
LAYER_VIEW_TYPE_THICKNESS = 3
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
@ -54,22 +54,29 @@ class LayerView(View):
|
|||
self._activity = False
|
||||
self._old_max_layers = 0
|
||||
|
||||
self._max_paths = 0
|
||||
self._current_path_num = 0
|
||||
self._minimum_path_num = 0
|
||||
self.currentLayerNumChanged.connect(self._onCurrentLayerNumChanged)
|
||||
|
||||
self._busy = False
|
||||
self._simulation_running = False
|
||||
|
||||
self._ghost_shader = None
|
||||
self._layer_pass = None
|
||||
self._composite_pass = None
|
||||
self._old_layer_bindings = None
|
||||
self._layerview_composite_shader = None
|
||||
self._simulationview_composite_shader = None
|
||||
self._old_composite_shader = None
|
||||
|
||||
self._global_container_stack = None
|
||||
self._proxy = LayerViewProxy.LayerViewProxy()
|
||||
self._proxy = SimulationViewProxy()
|
||||
self._controller.getScene().getRoot().childrenChanged.connect(self._onSceneChanged)
|
||||
|
||||
self._resetSettings()
|
||||
self._legend_items = None
|
||||
self._show_travel_moves = False
|
||||
self._nozzle_node = None
|
||||
|
||||
Preferences.getInstance().addPreference("view/top_layer_count", 5)
|
||||
Preferences.getInstance().addPreference("view/only_show_top_layers", False)
|
||||
|
@ -91,7 +98,7 @@ class LayerView(View):
|
|||
self._compatibility_mode = True # for safety
|
||||
|
||||
self._wireprint_warning_message = Message(catalog.i18nc("@info:status", "Cura does not accurately display layers when Wire Printing is enabled"),
|
||||
title = catalog.i18nc("@info:title", "Layer View"))
|
||||
title = catalog.i18nc("@info:title", "Simulation View"))
|
||||
|
||||
def _resetSettings(self):
|
||||
self._layer_view_type = 0 # 0 is material color, 1 is color by linetype, 2 is speed
|
||||
|
@ -101,17 +108,24 @@ class LayerView(View):
|
|||
self._show_helpers = 1
|
||||
self._show_skin = 1
|
||||
self._show_infill = 1
|
||||
self.resetLayerData()
|
||||
|
||||
def getActivity(self):
|
||||
return self._activity
|
||||
|
||||
def getLayerPass(self):
|
||||
def setActivity(self, activity):
|
||||
if self._activity == activity:
|
||||
return
|
||||
self._activity = activity
|
||||
self.activityChanged.emit()
|
||||
|
||||
def getSimulationPass(self):
|
||||
if not self._layer_pass:
|
||||
# Currently the RenderPass constructor requires a size > 0
|
||||
# This should be fixed in RenderPass's constructor.
|
||||
self._layer_pass = LayerPass.LayerPass(1, 1)
|
||||
self._layer_pass = SimulationPass(1, 1)
|
||||
self._compatibility_mode = OpenGLContext.isLegacyOpenGL() or bool(Preferences.getInstance().getValue("view/force_layer_view_compatibility_mode"))
|
||||
self._layer_pass.setLayerView(self)
|
||||
self._layer_pass.setSimulationView(self)
|
||||
return self._layer_pass
|
||||
|
||||
def getCurrentLayer(self):
|
||||
|
@ -120,13 +134,26 @@ class LayerView(View):
|
|||
def getMinimumLayer(self):
|
||||
return self._minimum_layer_num
|
||||
|
||||
def _onSceneChanged(self, node):
|
||||
self.calculateMaxLayers()
|
||||
|
||||
def getMaxLayers(self):
|
||||
return self._max_layers
|
||||
|
||||
busyChanged = Signal()
|
||||
def getCurrentPath(self):
|
||||
return self._current_path_num
|
||||
|
||||
def getMinimumPath(self):
|
||||
return self._minimum_path_num
|
||||
|
||||
def getMaxPaths(self):
|
||||
return self._max_paths
|
||||
|
||||
def getNozzleNode(self):
|
||||
if not self._nozzle_node:
|
||||
self._nozzle_node = NozzleNode()
|
||||
return self._nozzle_node
|
||||
|
||||
def _onSceneChanged(self, node):
|
||||
self.setActivity(False)
|
||||
self.calculateMaxLayers()
|
||||
|
||||
def isBusy(self):
|
||||
return self._busy
|
||||
|
@ -136,9 +163,19 @@ class LayerView(View):
|
|||
self._busy = busy
|
||||
self.busyChanged.emit()
|
||||
|
||||
def isSimulationRunning(self):
|
||||
return self._simulation_running
|
||||
|
||||
def setSimulationRunning(self, running):
|
||||
self._simulation_running = running
|
||||
|
||||
def resetLayerData(self):
|
||||
self._current_layer_mesh = None
|
||||
self._current_layer_jumps = None
|
||||
self._max_feedrate = sys.float_info.min
|
||||
self._min_feedrate = sys.float_info.max
|
||||
self._max_thickness = sys.float_info.min
|
||||
self._min_thickness = sys.float_info.max
|
||||
|
||||
def beginRendering(self):
|
||||
scene = self.getController().getScene()
|
||||
|
@ -186,15 +223,43 @@ class LayerView(View):
|
|||
|
||||
self.currentLayerNumChanged.emit()
|
||||
|
||||
def setPath(self, value):
|
||||
if self._current_path_num != value:
|
||||
self._current_path_num = value
|
||||
if self._current_path_num < 0:
|
||||
self._current_path_num = 0
|
||||
if self._current_path_num > self._max_paths:
|
||||
self._current_path_num = self._max_paths
|
||||
if self._current_path_num < self._minimum_path_num:
|
||||
self._minimum_path_num = self._current_path_num
|
||||
|
||||
self._startUpdateTopLayers()
|
||||
|
||||
self.currentPathNumChanged.emit()
|
||||
|
||||
def setMinimumPath(self, value):
|
||||
if self._minimum_path_num != value:
|
||||
self._minimum_path_num = value
|
||||
if self._minimum_path_num < 0:
|
||||
self._minimum_path_num = 0
|
||||
if self._minimum_path_num > self._max_layers:
|
||||
self._minimum_path_num = self._max_layers
|
||||
if self._minimum_path_num > self._current_path_num:
|
||||
self._current_path_num = self._minimum_path_num
|
||||
|
||||
self._startUpdateTopLayers()
|
||||
|
||||
self.currentPathNumChanged.emit()
|
||||
|
||||
## Set the layer view type
|
||||
#
|
||||
# \param layer_view_type integer as in LayerView.qml and this class
|
||||
def setLayerViewType(self, layer_view_type):
|
||||
# \param layer_view_type integer as in SimulationView.qml and this class
|
||||
def setSimulationViewType(self, layer_view_type):
|
||||
self._layer_view_type = layer_view_type
|
||||
self.currentLayerNumChanged.emit()
|
||||
|
||||
## Return the layer view type, integer as in LayerView.qml and this class
|
||||
def getLayerViewType(self):
|
||||
## Return the layer view type, integer as in SimulationView.qml and this class
|
||||
def getSimulationViewType(self):
|
||||
return self._layer_view_type
|
||||
|
||||
## Set the extruder opacity
|
||||
|
@ -243,9 +308,20 @@ class LayerView(View):
|
|||
def getExtruderCount(self):
|
||||
return self._extruder_count
|
||||
|
||||
def getMinFeedrate(self):
|
||||
return self._min_feedrate
|
||||
|
||||
def getMaxFeedrate(self):
|
||||
return self._max_feedrate
|
||||
|
||||
def getMinThickness(self):
|
||||
return self._min_thickness
|
||||
|
||||
def getMaxThickness(self):
|
||||
return self._max_thickness
|
||||
|
||||
def calculateMaxLayers(self):
|
||||
scene = self.getController().getScene()
|
||||
self._activity = True
|
||||
|
||||
self._old_max_layers = self._max_layers
|
||||
## Recalculate num max layers
|
||||
|
@ -255,9 +331,16 @@ class LayerView(View):
|
|||
if not layer_data:
|
||||
continue
|
||||
|
||||
self.setActivity(True)
|
||||
min_layer_number = sys.maxsize
|
||||
max_layer_number = -sys.maxsize
|
||||
for layer_id in layer_data.getLayers():
|
||||
# Store the max and min feedrates and thicknesses for display purposes
|
||||
for p in layer_data.getLayer(layer_id).polygons:
|
||||
self._max_feedrate = max(float(p.lineFeedrates.max()), self._max_feedrate)
|
||||
self._min_feedrate = min(float(p.lineFeedrates.min()), self._min_feedrate)
|
||||
self._max_thickness = max(float(p.lineThicknesses.max()), self._max_thickness)
|
||||
self._min_thickness = min(float(p.lineThicknesses.min()), self._min_thickness)
|
||||
if max_layer_number < layer_id:
|
||||
max_layer_number = layer_id
|
||||
if min_layer_number > layer_id:
|
||||
|
@ -281,10 +364,32 @@ class LayerView(View):
|
|||
self.maxLayersChanged.emit()
|
||||
self._startUpdateTopLayers()
|
||||
|
||||
def calculateMaxPathsOnLayer(self, layer_num):
|
||||
# Update the currentPath
|
||||
scene = self.getController().getScene()
|
||||
for node in DepthFirstIterator(scene.getRoot()):
|
||||
layer_data = node.callDecoration("getLayerData")
|
||||
if not layer_data:
|
||||
continue
|
||||
|
||||
layer = layer_data.getLayer(layer_num)
|
||||
if layer is None:
|
||||
return
|
||||
new_max_paths = layer.lineMeshElementCount()
|
||||
if new_max_paths > 0 and new_max_paths != self._max_paths:
|
||||
self._max_paths = new_max_paths
|
||||
self.maxPathsChanged.emit()
|
||||
|
||||
self.setPath(int(new_max_paths))
|
||||
|
||||
maxLayersChanged = Signal()
|
||||
maxPathsChanged = Signal()
|
||||
currentLayerNumChanged = Signal()
|
||||
currentPathNumChanged = Signal()
|
||||
globalStackChanged = Signal()
|
||||
preferencesChanged = Signal()
|
||||
busyChanged = Signal()
|
||||
activityChanged = Signal()
|
||||
|
||||
## Hackish way to ensure the proxy is already created, which ensures that the layerview.qml is already created
|
||||
# as this caused some issues.
|
||||
|
@ -308,26 +413,31 @@ class LayerView(View):
|
|||
return True
|
||||
|
||||
if event.type == Event.ViewActivateEvent:
|
||||
# Make sure the LayerPass is created
|
||||
layer_pass = self.getLayerPass()
|
||||
# Make sure the SimulationPass is created
|
||||
layer_pass = self.getSimulationPass()
|
||||
self.getRenderer().addRenderPass(layer_pass)
|
||||
|
||||
# Make sure the NozzleNode is add to the root
|
||||
nozzle = self.getNozzleNode()
|
||||
nozzle.setParent(self.getController().getScene().getRoot())
|
||||
nozzle.setVisible(False)
|
||||
|
||||
Application.getInstance().globalContainerStackChanged.connect(self._onGlobalStackChanged)
|
||||
self._onGlobalStackChanged()
|
||||
|
||||
if not self._layerview_composite_shader:
|
||||
self._layerview_composite_shader = OpenGL.getInstance().createShaderProgram(os.path.join(PluginRegistry.getInstance().getPluginPath("LayerView"), "layerview_composite.shader"))
|
||||
if not self._simulationview_composite_shader:
|
||||
self._simulationview_composite_shader = OpenGL.getInstance().createShaderProgram(os.path.join(PluginRegistry.getInstance().getPluginPath("SimulationView"), "simulationview_composite.shader"))
|
||||
theme = Application.getInstance().getTheme()
|
||||
self._layerview_composite_shader.setUniformValue("u_background_color", Color(*theme.getColor("viewport_background").getRgb()))
|
||||
self._layerview_composite_shader.setUniformValue("u_outline_color", Color(*theme.getColor("model_selection_outline").getRgb()))
|
||||
self._simulationview_composite_shader.setUniformValue("u_background_color", Color(*theme.getColor("viewport_background").getRgb()))
|
||||
self._simulationview_composite_shader.setUniformValue("u_outline_color", Color(*theme.getColor("model_selection_outline").getRgb()))
|
||||
|
||||
if not self._composite_pass:
|
||||
self._composite_pass = self.getRenderer().getRenderPass("composite")
|
||||
|
||||
self._old_layer_bindings = self._composite_pass.getLayerBindings()[:] # make a copy so we can restore to it later
|
||||
self._composite_pass.getLayerBindings().append("layerview")
|
||||
self._composite_pass.getLayerBindings().append("simulationview")
|
||||
self._old_composite_shader = self._composite_pass.getCompositeShader()
|
||||
self._composite_pass.setCompositeShader(self._layerview_composite_shader)
|
||||
self._composite_pass.setCompositeShader(self._simulationview_composite_shader)
|
||||
|
||||
elif event.type == Event.ViewDeactivateEvent:
|
||||
self._wireprint_warning_message.hide()
|
||||
|
@ -335,6 +445,7 @@ class LayerView(View):
|
|||
if self._global_container_stack:
|
||||
self._global_container_stack.propertyChanged.disconnect(self._onPropertyChanged)
|
||||
|
||||
self._nozzle_node.setParent(None)
|
||||
self.getRenderer().removeRenderPass(self._layer_pass)
|
||||
self._composite_pass.setLayerBindings(self._old_layer_bindings)
|
||||
self._composite_pass.setCompositeShader(self._old_composite_shader)
|
||||
|
@ -364,6 +475,9 @@ class LayerView(View):
|
|||
else:
|
||||
self._wireprint_warning_message.hide()
|
||||
|
||||
def _onCurrentLayerNumChanged(self):
|
||||
self.calculateMaxPathsOnLayer(self._current_layer_num)
|
||||
|
||||
def _startUpdateTopLayers(self):
|
||||
if not self._compatibility_mode:
|
||||
return
|
||||
|
@ -397,7 +511,7 @@ class LayerView(View):
|
|||
self._compatibility_mode = OpenGLContext.isLegacyOpenGL() or bool(
|
||||
Preferences.getInstance().getValue("view/force_layer_view_compatibility_mode"))
|
||||
|
||||
self.setLayerViewType(int(float(Preferences.getInstance().getValue("layerview/layer_view_type"))));
|
||||
self.setSimulationViewType(int(float(Preferences.getInstance().getValue("layerview/layer_view_type"))));
|
||||
|
||||
for extruder_nr, extruder_opacity in enumerate(Preferences.getInstance().getValue("layerview/extruder_opacities").split("|")):
|
||||
try:
|
675
plugins/SimulationView/SimulationView.qml
Normal file
675
plugins/SimulationView/SimulationView.qml
Normal file
|
@ -0,0 +1,675 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.4
|
||||
import QtQuick.Controls 1.2
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.0 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
Item
|
||||
{
|
||||
id: base
|
||||
width: {
|
||||
if (UM.SimulationView.compatibilityMode) {
|
||||
return UM.Theme.getSize("layerview_menu_size_compatibility").width;
|
||||
} else {
|
||||
return UM.Theme.getSize("layerview_menu_size").width;
|
||||
}
|
||||
}
|
||||
height: {
|
||||
if (viewSettings.collapsed) {
|
||||
if (UM.SimulationView.compatibilityMode) {
|
||||
return UM.Theme.getSize("layerview_menu_size_compatibility_collapsed").height;
|
||||
}
|
||||
return UM.Theme.getSize("layerview_menu_size_collapsed").height;
|
||||
} else if (UM.SimulationView.compatibilityMode) {
|
||||
return UM.Theme.getSize("layerview_menu_size_compatibility").height;
|
||||
} else if (UM.Preferences.getValue("layerview/layer_view_type") == 0) {
|
||||
return UM.Theme.getSize("layerview_menu_size_material_color_mode").height + UM.SimulationView.extruderCount * (UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("layerview_row_spacing").height)
|
||||
} else {
|
||||
return UM.Theme.getSize("layerview_menu_size").height + UM.SimulationView.extruderCount * (UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("layerview_row_spacing").height)
|
||||
}
|
||||
}
|
||||
Behavior on height { NumberAnimation { duration: 100 } }
|
||||
|
||||
property var buttonTarget: {
|
||||
if(parent != null)
|
||||
{
|
||||
var force_binding = parent.y; // ensure this gets reevaluated when the panel moves
|
||||
return base.mapFromItem(parent.parent, parent.buttonTarget.x, parent.buttonTarget.y)
|
||||
}
|
||||
return Qt.point(0,0)
|
||||
}
|
||||
|
||||
visible: parent != null ? !parent.parent.monitoringPrint: true
|
||||
|
||||
Rectangle {
|
||||
id: layerViewMenu
|
||||
anchors.right: parent.right
|
||||
anchors.top: parent.top
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
clip: true
|
||||
z: layerSlider.z - 1
|
||||
color: UM.Theme.getColor("tool_panel_background")
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
|
||||
Button {
|
||||
id: collapseButton
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: Math.floor(UM.Theme.getSize("default_margin").height + (UM.Theme.getSize("layerview_row").height - UM.Theme.getSize("default_margin").height) / 2)
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width
|
||||
|
||||
width: UM.Theme.getSize("standard_arrow").width
|
||||
height: UM.Theme.getSize("standard_arrow").height
|
||||
|
||||
onClicked: viewSettings.collapsed = !viewSettings.collapsed
|
||||
|
||||
style: ButtonStyle
|
||||
{
|
||||
background: UM.RecolorImage
|
||||
{
|
||||
width: control.width
|
||||
height: control.height
|
||||
sourceSize.width: width
|
||||
sourceSize.height: width
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
source: viewSettings.collapsed ? UM.Theme.getIcon("arrow_left") : UM.Theme.getIcon("arrow_bottom")
|
||||
}
|
||||
label: Label{ }
|
||||
}
|
||||
}
|
||||
|
||||
ColumnLayout {
|
||||
id: viewSettings
|
||||
|
||||
property bool collapsed: false
|
||||
property var extruder_opacities: UM.Preferences.getValue("layerview/extruder_opacities").split("|")
|
||||
property bool show_travel_moves: UM.Preferences.getValue("layerview/show_travel_moves")
|
||||
property bool show_helpers: UM.Preferences.getValue("layerview/show_helpers")
|
||||
property bool show_skin: UM.Preferences.getValue("layerview/show_skin")
|
||||
property bool show_infill: UM.Preferences.getValue("layerview/show_infill")
|
||||
// if we are in compatibility mode, we only show the "line type"
|
||||
property bool show_legend: UM.SimulationView.compatibilityMode ? true : UM.Preferences.getValue("layerview/layer_view_type") == 1
|
||||
property bool show_gradient: UM.SimulationView.compatibilityMode ? false : UM.Preferences.getValue("layerview/layer_view_type") == 2 || UM.Preferences.getValue("layerview/layer_view_type") == 3
|
||||
property bool only_show_top_layers: UM.Preferences.getValue("view/only_show_top_layers")
|
||||
property int top_layer_count: UM.Preferences.getValue("view/top_layer_count")
|
||||
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: UM.Theme.getSize("default_margin").height
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: UM.Theme.getSize("default_margin").width
|
||||
anchors.right: parent.right
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width
|
||||
spacing: UM.Theme.getSize("layerview_row_spacing").height
|
||||
|
||||
Label
|
||||
{
|
||||
id: layerViewTypesLabel
|
||||
anchors.left: parent.left
|
||||
text: catalog.i18nc("@label","Color scheme")
|
||||
font: UM.Theme.getFont("default");
|
||||
visible: !UM.SimulationView.compatibilityMode
|
||||
Layout.fillWidth: true
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
}
|
||||
|
||||
ListModel // matches SimulationView.py
|
||||
{
|
||||
id: layerViewTypes
|
||||
}
|
||||
|
||||
Component.onCompleted:
|
||||
{
|
||||
layerViewTypes.append({
|
||||
text: catalog.i18nc("@label:listbox", "Material Color"),
|
||||
type_id: 0
|
||||
})
|
||||
layerViewTypes.append({
|
||||
text: catalog.i18nc("@label:listbox", "Line Type"),
|
||||
type_id: 1
|
||||
})
|
||||
layerViewTypes.append({
|
||||
text: catalog.i18nc("@label:listbox", "Feedrate"),
|
||||
type_id: 2
|
||||
})
|
||||
// TODO DON'T DELETE!!!! This part must be enabled when adaptive layer height feature is available
|
||||
// layerViewTypes.append({
|
||||
// text: catalog.i18nc("@label:listbox", "Layer thickness"),
|
||||
// type_id: 3 // these ids match the switching in the shader
|
||||
// })
|
||||
}
|
||||
|
||||
ComboBox
|
||||
{
|
||||
id: layerTypeCombobox
|
||||
anchors.left: parent.left
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
model: layerViewTypes
|
||||
visible: !UM.SimulationView.compatibilityMode
|
||||
style: UM.Theme.styles.combobox
|
||||
anchors.right: parent.right
|
||||
|
||||
onActivated:
|
||||
{
|
||||
UM.Preferences.setValue("layerview/layer_view_type", index);
|
||||
}
|
||||
|
||||
Component.onCompleted:
|
||||
{
|
||||
currentIndex = UM.SimulationView.compatibilityMode ? 1 : UM.Preferences.getValue("layerview/layer_view_type");
|
||||
updateLegends(currentIndex);
|
||||
}
|
||||
|
||||
function updateLegends(type_id)
|
||||
{
|
||||
// update visibility of legends
|
||||
viewSettings.show_legend = UM.SimulationView.compatibilityMode || (type_id == 1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Label
|
||||
{
|
||||
id: compatibilityModeLabel
|
||||
anchors.left: parent.left
|
||||
text: catalog.i18nc("@label","Compatibility Mode")
|
||||
font: UM.Theme.getFont("default")
|
||||
color: UM.Theme.getColor("text")
|
||||
visible: UM.SimulationView.compatibilityMode
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
}
|
||||
|
||||
Item
|
||||
{
|
||||
height: Math.floor(UM.Theme.getSize("default_margin").width / 2)
|
||||
width: width
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: UM.Preferences
|
||||
onPreferenceChanged:
|
||||
{
|
||||
layerTypeCombobox.currentIndex = UM.SimulationView.compatibilityMode ? 1 : UM.Preferences.getValue("layerview/layer_view_type");
|
||||
layerTypeCombobox.updateLegends(layerTypeCombobox.currentIndex);
|
||||
playButton.pauseSimulation();
|
||||
viewSettings.extruder_opacities = UM.Preferences.getValue("layerview/extruder_opacities").split("|");
|
||||
viewSettings.show_travel_moves = UM.Preferences.getValue("layerview/show_travel_moves");
|
||||
viewSettings.show_helpers = UM.Preferences.getValue("layerview/show_helpers");
|
||||
viewSettings.show_skin = UM.Preferences.getValue("layerview/show_skin");
|
||||
viewSettings.show_infill = UM.Preferences.getValue("layerview/show_infill");
|
||||
viewSettings.only_show_top_layers = UM.Preferences.getValue("view/only_show_top_layers");
|
||||
viewSettings.top_layer_count = UM.Preferences.getValue("view/top_layer_count");
|
||||
}
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: Cura.ExtrudersModel{}
|
||||
CheckBox {
|
||||
id: extrudersModelCheckBox
|
||||
checked: viewSettings.extruder_opacities[index] > 0.5 || viewSettings.extruder_opacities[index] == undefined || viewSettings.extruder_opacities[index] == ""
|
||||
onClicked: {
|
||||
viewSettings.extruder_opacities[index] = checked ? 1.0 : 0.0
|
||||
UM.Preferences.setValue("layerview/extruder_opacities", viewSettings.extruder_opacities.join("|"));
|
||||
}
|
||||
visible: !UM.SimulationView.compatibilityMode
|
||||
enabled: index + 1 <= 4
|
||||
Rectangle {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.right: extrudersModelCheckBox.right
|
||||
width: UM.Theme.getSize("layerview_legend_size").width
|
||||
height: UM.Theme.getSize("layerview_legend_size").height
|
||||
color: model.color
|
||||
radius: width / 2
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
visible: !viewSettings.show_legend & !viewSettings.show_gradient
|
||||
}
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
style: UM.Theme.styles.checkbox
|
||||
Label
|
||||
{
|
||||
text: model.name
|
||||
elide: Text.ElideRight
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: extrudersModelCheckBox.left;
|
||||
anchors.right: extrudersModelCheckBox.right;
|
||||
anchors.leftMargin: UM.Theme.getSize("checkbox").width + UM.Theme.getSize("default_margin").width /2
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width * 2
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: ListModel {
|
||||
id: typesLegendModel
|
||||
Component.onCompleted:
|
||||
{
|
||||
typesLegendModel.append({
|
||||
label: catalog.i18nc("@label", "Show Travels"),
|
||||
initialValue: viewSettings.show_travel_moves,
|
||||
preference: "layerview/show_travel_moves",
|
||||
colorId: "layerview_move_combing"
|
||||
});
|
||||
typesLegendModel.append({
|
||||
label: catalog.i18nc("@label", "Show Helpers"),
|
||||
initialValue: viewSettings.show_helpers,
|
||||
preference: "layerview/show_helpers",
|
||||
colorId: "layerview_support"
|
||||
});
|
||||
typesLegendModel.append({
|
||||
label: catalog.i18nc("@label", "Show Shell"),
|
||||
initialValue: viewSettings.show_skin,
|
||||
preference: "layerview/show_skin",
|
||||
colorId: "layerview_inset_0"
|
||||
});
|
||||
typesLegendModel.append({
|
||||
label: catalog.i18nc("@label", "Show Infill"),
|
||||
initialValue: viewSettings.show_infill,
|
||||
preference: "layerview/show_infill",
|
||||
colorId: "layerview_infill"
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
CheckBox {
|
||||
id: legendModelCheckBox
|
||||
checked: model.initialValue
|
||||
onClicked: {
|
||||
UM.Preferences.setValue(model.preference, checked);
|
||||
}
|
||||
Rectangle {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.right: legendModelCheckBox.right
|
||||
width: UM.Theme.getSize("layerview_legend_size").width
|
||||
height: UM.Theme.getSize("layerview_legend_size").height
|
||||
color: UM.Theme.getColor(model.colorId)
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
visible: viewSettings.show_legend
|
||||
}
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
style: UM.Theme.styles.checkbox
|
||||
Label
|
||||
{
|
||||
text: label
|
||||
font: UM.Theme.getFont("default")
|
||||
elide: Text.ElideRight
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.left: legendModelCheckBox.left;
|
||||
anchors.right: legendModelCheckBox.right;
|
||||
anchors.leftMargin: UM.Theme.getSize("checkbox").width + UM.Theme.getSize("default_margin").width /2
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width * 2
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
CheckBox {
|
||||
checked: viewSettings.only_show_top_layers
|
||||
onClicked: {
|
||||
UM.Preferences.setValue("view/only_show_top_layers", checked ? 1.0 : 0.0);
|
||||
}
|
||||
text: catalog.i18nc("@label", "Only Show Top Layers")
|
||||
visible: UM.SimulationView.compatibilityMode
|
||||
style: UM.Theme.styles.checkbox
|
||||
}
|
||||
CheckBox {
|
||||
checked: viewSettings.top_layer_count == 5
|
||||
onClicked: {
|
||||
UM.Preferences.setValue("view/top_layer_count", checked ? 5 : 1);
|
||||
}
|
||||
text: catalog.i18nc("@label", "Show 5 Detailed Layers On Top")
|
||||
visible: UM.SimulationView.compatibilityMode
|
||||
style: UM.Theme.styles.checkbox
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: ListModel {
|
||||
id: typesLegendModelNoCheck
|
||||
Component.onCompleted:
|
||||
{
|
||||
typesLegendModelNoCheck.append({
|
||||
label: catalog.i18nc("@label", "Top / Bottom"),
|
||||
colorId: "layerview_skin",
|
||||
});
|
||||
typesLegendModelNoCheck.append({
|
||||
label: catalog.i18nc("@label", "Inner Wall"),
|
||||
colorId: "layerview_inset_x",
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: label
|
||||
visible: viewSettings.show_legend
|
||||
id: typesLegendModelLabel
|
||||
Rectangle {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.right: typesLegendModelLabel.right
|
||||
width: UM.Theme.getSize("layerview_legend_size").width
|
||||
height: UM.Theme.getSize("layerview_legend_size").height
|
||||
color: UM.Theme.getColor(model.colorId)
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
visible: viewSettings.show_legend
|
||||
}
|
||||
Layout.fillWidth: true
|
||||
Layout.preferredHeight: UM.Theme.getSize("layerview_row").height + UM.Theme.getSize("default_lining").height
|
||||
Layout.preferredWidth: UM.Theme.getSize("layerview_row").width
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
}
|
||||
}
|
||||
|
||||
// Text for the minimum, maximum and units for the feedrates and layer thickness
|
||||
Item {
|
||||
id: gradientLegend
|
||||
visible: viewSettings.show_gradient
|
||||
width: parent.width
|
||||
height: UM.Theme.getSize("layerview_row").height
|
||||
anchors {
|
||||
topMargin: UM.Theme.getSize("slider_layerview_margin").height
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
|
||||
Label {
|
||||
text: minText()
|
||||
anchors.left: parent.left
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
|
||||
function minText() {
|
||||
if (UM.SimulationView.layerActivity && CuraApplication.platformActivity) {
|
||||
// Feedrate selected
|
||||
if (UM.Preferences.getValue("layerview/layer_view_type") == 2) {
|
||||
return parseFloat(UM.SimulationView.getMinFeedrate()).toFixed(2)
|
||||
}
|
||||
// Layer thickness selected
|
||||
if (UM.Preferences.getValue("layerview/layer_view_type") == 3) {
|
||||
return parseFloat(UM.SimulationView.getMinThickness()).toFixed(2)
|
||||
}
|
||||
}
|
||||
return catalog.i18nc("@label","min")
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: unitsText()
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
|
||||
function unitsText() {
|
||||
if (UM.SimulationView.layerActivity && CuraApplication.platformActivity) {
|
||||
// Feedrate selected
|
||||
if (UM.Preferences.getValue("layerview/layer_view_type") == 2) {
|
||||
return "mm/s"
|
||||
}
|
||||
// Layer thickness selected
|
||||
if (UM.Preferences.getValue("layerview/layer_view_type") == 3) {
|
||||
return "mm"
|
||||
}
|
||||
}
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
text: maxText()
|
||||
anchors.right: parent.right
|
||||
color: UM.Theme.getColor("setting_control_text")
|
||||
font: UM.Theme.getFont("default")
|
||||
|
||||
function maxText() {
|
||||
if (UM.SimulationView.layerActivity && CuraApplication.platformActivity) {
|
||||
// Feedrate selected
|
||||
if (UM.Preferences.getValue("layerview/layer_view_type") == 2) {
|
||||
return parseFloat(UM.SimulationView.getMaxFeedrate()).toFixed(2)
|
||||
}
|
||||
// Layer thickness selected
|
||||
if (UM.Preferences.getValue("layerview/layer_view_type") == 3) {
|
||||
return parseFloat(UM.SimulationView.getMaxThickness()).toFixed(2)
|
||||
}
|
||||
}
|
||||
return catalog.i18nc("@label","max")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Gradient colors for feedrate and thickness
|
||||
Rectangle { // In QML 5.9 can be changed by LinearGradient
|
||||
// Invert values because then the bar is rotated 90 degrees
|
||||
id: gradient
|
||||
visible: viewSettings.show_gradient
|
||||
anchors.left: parent.right
|
||||
height: parent.width
|
||||
width: UM.Theme.getSize("layerview_row").height * 1.5
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color: UM.Theme.getColor("lining")
|
||||
transform: Rotation {origin.x: 0; origin.y: 0; angle: 90}
|
||||
gradient: Gradient {
|
||||
GradientStop {
|
||||
position: 0.000
|
||||
color: Qt.rgba(1, 0, 0, 1)
|
||||
}
|
||||
GradientStop {
|
||||
position: 0.25
|
||||
color: Qt.rgba(0.75, 0.5, 0.25, 1)
|
||||
}
|
||||
GradientStop {
|
||||
position: 0.5
|
||||
color: Qt.rgba(0.5, 1, 0.5, 1)
|
||||
}
|
||||
GradientStop {
|
||||
position: 0.75
|
||||
color: Qt.rgba(0.25, 0.5, 0.75, 1)
|
||||
}
|
||||
GradientStop {
|
||||
position: 1.0
|
||||
color: Qt.rgba(0, 0, 1, 1)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
id: slidersBox
|
||||
|
||||
width: parent.width
|
||||
visible: UM.SimulationView.layerActivity && CuraApplication.platformActivity
|
||||
|
||||
anchors {
|
||||
top: parent.bottom
|
||||
topMargin: UM.Theme.getSize("slider_layerview_margin").height
|
||||
left: parent.left
|
||||
}
|
||||
|
||||
PathSlider {
|
||||
id: pathSlider
|
||||
|
||||
height: UM.Theme.getSize("slider_handle").width
|
||||
anchors.right: playButton.left
|
||||
anchors.rightMargin: UM.Theme.getSize("default_margin").width
|
||||
anchors.left: parent.left
|
||||
visible: !UM.SimulationView.compatibilityMode
|
||||
|
||||
// custom properties
|
||||
handleValue: UM.SimulationView.currentPath
|
||||
maximumValue: UM.SimulationView.numPaths
|
||||
handleSize: UM.Theme.getSize("slider_handle").width
|
||||
trackThickness: UM.Theme.getSize("slider_groove").width
|
||||
trackColor: UM.Theme.getColor("slider_groove")
|
||||
trackBorderColor: UM.Theme.getColor("slider_groove_border")
|
||||
handleColor: UM.Theme.getColor("slider_handle")
|
||||
handleActiveColor: UM.Theme.getColor("slider_handle_active")
|
||||
rangeColor: UM.Theme.getColor("slider_groove_fill")
|
||||
|
||||
// update values when layer data changes
|
||||
Connections {
|
||||
target: UM.SimulationView
|
||||
onMaxPathsChanged: pathSlider.setHandleValue(UM.SimulationView.currentPath)
|
||||
onCurrentPathChanged: pathSlider.setHandleValue(UM.SimulationView.currentPath)
|
||||
}
|
||||
|
||||
// make sure the slider handlers show the correct value after switching views
|
||||
Component.onCompleted: {
|
||||
pathSlider.setHandleValue(UM.SimulationView.currentPath)
|
||||
}
|
||||
}
|
||||
|
||||
LayerSlider {
|
||||
id: layerSlider
|
||||
|
||||
width: UM.Theme.getSize("slider_handle").width
|
||||
height: UM.Theme.getSize("layerview_menu_size").height
|
||||
|
||||
anchors {
|
||||
top: !UM.SimulationView.compatibilityMode ? playButton.bottom : parent.top
|
||||
topMargin: !UM.SimulationView.compatibilityMode ? UM.Theme.getSize("default_margin").height : 0
|
||||
right: parent.right
|
||||
rightMargin: UM.Theme.getSize("slider_layerview_margin").width
|
||||
}
|
||||
|
||||
// custom properties
|
||||
upperValue: UM.SimulationView.currentLayer
|
||||
lowerValue: UM.SimulationView.minimumLayer
|
||||
maximumValue: UM.SimulationView.numLayers
|
||||
handleSize: UM.Theme.getSize("slider_handle").width
|
||||
trackThickness: UM.Theme.getSize("slider_groove").width
|
||||
trackColor: UM.Theme.getColor("slider_groove")
|
||||
trackBorderColor: UM.Theme.getColor("slider_groove_border")
|
||||
upperHandleColor: UM.Theme.getColor("slider_handle")
|
||||
lowerHandleColor: UM.Theme.getColor("slider_handle")
|
||||
rangeHandleColor: UM.Theme.getColor("slider_groove_fill")
|
||||
handleActiveColor: UM.Theme.getColor("slider_handle_active")
|
||||
handleLabelWidth: UM.Theme.getSize("slider_layerview_background").width
|
||||
|
||||
// update values when layer data changes
|
||||
Connections {
|
||||
target: UM.SimulationView
|
||||
onMaxLayersChanged: layerSlider.setUpperValue(UM.SimulationView.currentLayer)
|
||||
onMinimumLayerChanged: layerSlider.setLowerValue(UM.SimulationView.minimumLayer)
|
||||
onCurrentLayerChanged: layerSlider.setUpperValue(UM.SimulationView.currentLayer)
|
||||
}
|
||||
|
||||
// make sure the slider handlers show the correct value after switching views
|
||||
Component.onCompleted: {
|
||||
layerSlider.setLowerValue(UM.SimulationView.minimumLayer)
|
||||
layerSlider.setUpperValue(UM.SimulationView.currentLayer)
|
||||
}
|
||||
}
|
||||
|
||||
// Play simulation button
|
||||
Button {
|
||||
id: playButton
|
||||
implicitWidth: Math.floor(UM.Theme.getSize("button").width * 0.75)
|
||||
implicitHeight: Math.floor(UM.Theme.getSize("button").height * 0.75)
|
||||
iconSource: "./resources/simulation_resume.svg"
|
||||
style: UM.Theme.styles.tool_button
|
||||
visible: !UM.SimulationView.compatibilityMode
|
||||
anchors {
|
||||
horizontalCenter: layerSlider.horizontalCenter
|
||||
verticalCenter: pathSlider.verticalCenter
|
||||
}
|
||||
|
||||
property var status: 0 // indicates if it's stopped (0) or playing (1)
|
||||
|
||||
onClicked: {
|
||||
switch(status) {
|
||||
case 0: {
|
||||
resumeSimulation()
|
||||
break
|
||||
}
|
||||
case 1: {
|
||||
pauseSimulation()
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function pauseSimulation() {
|
||||
UM.SimulationView.setSimulationRunning(false)
|
||||
iconSource = "./resources/simulation_resume.svg"
|
||||
simulationTimer.stop()
|
||||
status = 0
|
||||
}
|
||||
|
||||
function resumeSimulation() {
|
||||
UM.SimulationView.setSimulationRunning(true)
|
||||
iconSource = "./resources/simulation_pause.svg"
|
||||
simulationTimer.start()
|
||||
}
|
||||
}
|
||||
|
||||
Timer
|
||||
{
|
||||
id: simulationTimer
|
||||
interval: 100
|
||||
running: false
|
||||
repeat: true
|
||||
onTriggered: {
|
||||
var currentPath = UM.SimulationView.currentPath
|
||||
var numPaths = UM.SimulationView.numPaths
|
||||
var currentLayer = UM.SimulationView.currentLayer
|
||||
var numLayers = UM.SimulationView.numLayers
|
||||
// When the user plays the simulation, if the path slider is at the end of this layer, we start
|
||||
// the simulation at the beginning of the current layer.
|
||||
if (playButton.status == 0)
|
||||
{
|
||||
if (currentPath >= numPaths)
|
||||
{
|
||||
UM.SimulationView.setCurrentPath(0)
|
||||
}
|
||||
else
|
||||
{
|
||||
UM.SimulationView.setCurrentPath(currentPath+1)
|
||||
}
|
||||
}
|
||||
// If the simulation is already playing and we reach the end of a layer, then it automatically
|
||||
// starts at the beginning of the next layer.
|
||||
else
|
||||
{
|
||||
if (currentPath >= numPaths)
|
||||
{
|
||||
// At the end of the model, the simulation stops
|
||||
if (currentLayer >= numLayers)
|
||||
{
|
||||
playButton.pauseSimulation()
|
||||
}
|
||||
else
|
||||
{
|
||||
UM.SimulationView.setCurrentLayer(currentLayer+1)
|
||||
UM.SimulationView.setCurrentPath(0)
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
UM.SimulationView.setCurrentPath(currentPath+1)
|
||||
}
|
||||
}
|
||||
playButton.status = 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
FontMetrics {
|
||||
id: fontMetrics
|
||||
font: UM.Theme.getFont("default")
|
||||
}
|
||||
}
|
259
plugins/SimulationView/SimulationViewProxy.py
Normal file
259
plugins/SimulationView/SimulationViewProxy.py
Normal file
|
@ -0,0 +1,259 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from PyQt5.QtCore import QObject, pyqtSignal, pyqtProperty
|
||||
from UM.FlameProfiler import pyqtSlot
|
||||
from UM.Application import Application
|
||||
|
||||
import SimulationView
|
||||
|
||||
|
||||
class SimulationViewProxy(QObject):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self._current_layer = 0
|
||||
self._controller = Application.getInstance().getController()
|
||||
self._controller.activeViewChanged.connect(self._onActiveViewChanged)
|
||||
self._onActiveViewChanged()
|
||||
self.is_simulationView_selected = False
|
||||
|
||||
currentLayerChanged = pyqtSignal()
|
||||
currentPathChanged = pyqtSignal()
|
||||
maxLayersChanged = pyqtSignal()
|
||||
maxPathsChanged = pyqtSignal()
|
||||
activityChanged = pyqtSignal()
|
||||
globalStackChanged = pyqtSignal()
|
||||
preferencesChanged = pyqtSignal()
|
||||
busyChanged = pyqtSignal()
|
||||
|
||||
@pyqtProperty(bool, notify=activityChanged)
|
||||
def layerActivity(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getActivity()
|
||||
return False
|
||||
|
||||
@pyqtProperty(int, notify=maxLayersChanged)
|
||||
def numLayers(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMaxLayers()
|
||||
return 0
|
||||
|
||||
@pyqtProperty(int, notify=currentLayerChanged)
|
||||
def currentLayer(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getCurrentLayer()
|
||||
return 0
|
||||
|
||||
@pyqtProperty(int, notify=currentLayerChanged)
|
||||
def minimumLayer(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMinimumLayer()
|
||||
return 0
|
||||
|
||||
@pyqtProperty(int, notify=maxPathsChanged)
|
||||
def numPaths(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMaxPaths()
|
||||
return 0
|
||||
|
||||
@pyqtProperty(int, notify=currentPathChanged)
|
||||
def currentPath(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getCurrentPath()
|
||||
return 0
|
||||
|
||||
@pyqtProperty(int, notify=currentPathChanged)
|
||||
def minimumPath(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMinimumPath()
|
||||
return 0
|
||||
|
||||
@pyqtProperty(bool, notify=busyChanged)
|
||||
def busy(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.isBusy()
|
||||
return False
|
||||
|
||||
@pyqtProperty(bool, notify=preferencesChanged)
|
||||
def compatibilityMode(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getCompatibilityMode()
|
||||
return False
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setCurrentLayer(self, layer_num):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setLayer(layer_num)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setMinimumLayer(self, layer_num):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setMinimumLayer(layer_num)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setCurrentPath(self, path_num):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setPath(path_num)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setMinimumPath(self, path_num):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setMinimumPath(path_num)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setSimulationViewType(self, layer_view_type):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setSimulationViewisinstance(layer_view_type)
|
||||
|
||||
@pyqtSlot(result=int)
|
||||
def getSimulationViewType(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getSimulationViewType()
|
||||
return 0
|
||||
|
||||
@pyqtSlot(bool)
|
||||
def setSimulationRunning(self, running):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setSimulationRunning(running)
|
||||
|
||||
@pyqtSlot(result=bool)
|
||||
def getSimulationRunning(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.isSimulationRunning()
|
||||
return False
|
||||
|
||||
@pyqtSlot(result=float)
|
||||
def getMinFeedrate(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMinFeedrate()
|
||||
return 0
|
||||
|
||||
@pyqtSlot(result=float)
|
||||
def getMaxFeedrate(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMaxFeedrate()
|
||||
return 0
|
||||
|
||||
@pyqtSlot(result=float)
|
||||
def getMinThickness(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMinThickness()
|
||||
return 0
|
||||
|
||||
@pyqtSlot(result=float)
|
||||
def getMaxThickness(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getMaxThickness()
|
||||
return 0
|
||||
|
||||
# Opacity 0..1
|
||||
@pyqtSlot(int, float)
|
||||
def setExtruderOpacity(self, extruder_nr, opacity):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setExtruderOpacity(extruder_nr, opacity)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowTravelMoves(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setShowTravelMoves(show)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowHelpers(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setShowHelpers(show)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowSkin(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setShowSkin(show)
|
||||
|
||||
@pyqtSlot(int)
|
||||
def setShowInfill(self, show):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
active_view.setShowInfill(show)
|
||||
|
||||
@pyqtProperty(int, notify=globalStackChanged)
|
||||
def extruderCount(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
return active_view.getExtruderCount()
|
||||
return 0
|
||||
|
||||
def _layerActivityChanged(self):
|
||||
self.activityChanged.emit()
|
||||
|
||||
def _onLayerChanged(self):
|
||||
self.currentLayerChanged.emit()
|
||||
self._layerActivityChanged()
|
||||
|
||||
def _onPathChanged(self):
|
||||
self.currentPathChanged.emit()
|
||||
self._layerActivityChanged()
|
||||
|
||||
def _onMaxLayersChanged(self):
|
||||
self.maxLayersChanged.emit()
|
||||
|
||||
def _onMaxPathsChanged(self):
|
||||
self.maxPathsChanged.emit()
|
||||
|
||||
def _onBusyChanged(self):
|
||||
self.busyChanged.emit()
|
||||
|
||||
def _onActivityChanged(self):
|
||||
self.activityChanged.emit()
|
||||
|
||||
def _onGlobalStackChanged(self):
|
||||
self.globalStackChanged.emit()
|
||||
|
||||
def _onPreferencesChanged(self):
|
||||
self.preferencesChanged.emit()
|
||||
|
||||
def _onActiveViewChanged(self):
|
||||
active_view = self._controller.getActiveView()
|
||||
if isinstance(active_view, SimulationView.SimulationView.SimulationView):
|
||||
# remove other connection if once the SimulationView was created.
|
||||
if self.is_simulationView_selected:
|
||||
active_view.currentLayerNumChanged.disconnect(self._onLayerChanged)
|
||||
active_view.currentPathNumChanged.disconnect(self._onPathChanged)
|
||||
active_view.maxLayersChanged.disconnect(self._onMaxLayersChanged)
|
||||
active_view.maxPathsChanged.disconnect(self._onMaxPathsChanged)
|
||||
active_view.busyChanged.disconnect(self._onBusyChanged)
|
||||
active_view.activityChanged.disconnect(self._onActivityChanged)
|
||||
active_view.globalStackChanged.disconnect(self._onGlobalStackChanged)
|
||||
active_view.preferencesChanged.disconnect(self._onPreferencesChanged)
|
||||
|
||||
self.is_simulationView_selected = True
|
||||
active_view.currentLayerNumChanged.connect(self._onLayerChanged)
|
||||
active_view.currentPathNumChanged.connect(self._onPathChanged)
|
||||
active_view.maxLayersChanged.connect(self._onMaxLayersChanged)
|
||||
active_view.maxPathsChanged.connect(self._onMaxPathsChanged)
|
||||
active_view.busyChanged.connect(self._onBusyChanged)
|
||||
active_view.activityChanged.connect(self._onActivityChanged)
|
||||
active_view.globalStackChanged.connect(self._onGlobalStackChanged)
|
||||
active_view.preferencesChanged.connect(self._onPreferencesChanged)
|
26
plugins/SimulationView/__init__.py
Normal file
26
plugins/SimulationView/__init__.py
Normal file
|
@ -0,0 +1,26 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from PyQt5.QtQml import qmlRegisterSingletonType
|
||||
|
||||
from UM.i18n import i18nCatalog
|
||||
from . import SimulationViewProxy, SimulationView
|
||||
|
||||
catalog = i18nCatalog("cura")
|
||||
|
||||
def getMetaData():
|
||||
return {
|
||||
"view": {
|
||||
"name": catalog.i18nc("@item:inlistbox", "Layer view"),
|
||||
"view_panel": "SimulationView.qml",
|
||||
"weight": 2
|
||||
}
|
||||
}
|
||||
|
||||
def createSimulationViewProxy(engine, script_engine):
|
||||
return SimulationViewProxy.SimulatorViewProxy()
|
||||
|
||||
def register(app):
|
||||
simulation_view = SimulationView.SimulationView()
|
||||
qmlRegisterSingletonType(SimulationViewProxy.SimulationViewProxy, "UM", 1, 0, "SimulationView", simulation_view.getProxy)
|
||||
return { "view": SimulationView.SimulationView()}
|
0
plugins/LayerView/layers.shader → plugins/SimulationView/layers.shader
Executable file → Normal file
0
plugins/LayerView/layers.shader → plugins/SimulationView/layers.shader
Executable file → Normal file
29
plugins/LayerView/layers3d.shader → plugins/SimulationView/layers3d.shader
Executable file → Normal file
29
plugins/LayerView/layers3d.shader → plugins/SimulationView/layers3d.shader
Executable file → Normal file
|
@ -6,6 +6,10 @@ vertex41core =
|
|||
uniform highp mat4 u_modelMatrix;
|
||||
uniform highp mat4 u_viewProjectionMatrix;
|
||||
uniform lowp float u_active_extruder;
|
||||
uniform lowp float u_max_feedrate;
|
||||
uniform lowp float u_min_feedrate;
|
||||
uniform lowp float u_max_thickness;
|
||||
uniform lowp float u_min_thickness;
|
||||
uniform lowp int u_layer_view_type;
|
||||
uniform lowp vec4 u_extruder_opacity; // currently only for max 4 extruders, others always visible
|
||||
|
||||
|
@ -18,6 +22,8 @@ vertex41core =
|
|||
in highp vec2 a_line_dim; // line width and thickness
|
||||
in highp float a_extruder;
|
||||
in highp float a_line_type;
|
||||
in highp float a_feedrate;
|
||||
in highp float a_thickness;
|
||||
|
||||
out lowp vec4 v_color;
|
||||
|
||||
|
@ -32,6 +38,15 @@ vertex41core =
|
|||
out highp vec3 f_vertex;
|
||||
out highp vec3 f_normal;
|
||||
|
||||
vec4 gradientColor(float abs_value, float min_value, float max_value)
|
||||
{
|
||||
float value = (abs_value - min_value)/(max_value - min_value);
|
||||
float red = value;
|
||||
float green = 1-abs(1-2*value);
|
||||
float blue = 1-value;
|
||||
return vec4(red, green, blue, 1.0);
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 v1_vertex = a_vertex;
|
||||
|
@ -48,6 +63,12 @@ vertex41core =
|
|||
case 1: // "Line type"
|
||||
v_color = a_color;
|
||||
break;
|
||||
case 2: // "Feedrate"
|
||||
v_color = gradientColor(a_feedrate, u_min_feedrate, u_max_feedrate);
|
||||
break;
|
||||
case 3: // "Layer thickness"
|
||||
v_color = gradientColor(a_line_dim.y, u_min_thickness, u_max_thickness);
|
||||
break;
|
||||
}
|
||||
|
||||
v_vertex = world_space_vert.xyz;
|
||||
|
@ -247,6 +268,12 @@ u_show_helpers = 1
|
|||
u_show_skin = 1
|
||||
u_show_infill = 1
|
||||
|
||||
u_min_feedrate = 0
|
||||
u_max_feedrate = 1
|
||||
|
||||
u_min_thickness = 0
|
||||
u_max_thickness = 1
|
||||
|
||||
[bindings]
|
||||
u_modelViewProjectionMatrix = model_view_projection_matrix
|
||||
u_modelMatrix = model_matrix
|
||||
|
@ -262,3 +289,5 @@ a_line_dim = line_dim
|
|||
a_extruder = extruder
|
||||
a_material_color = material_color
|
||||
a_line_type = line_type
|
||||
a_feedrate = feedrate
|
||||
a_thickness = thickness
|
256
plugins/SimulationView/layers3d_shadow.shader
Normal file
256
plugins/SimulationView/layers3d_shadow.shader
Normal file
|
@ -0,0 +1,256 @@
|
|||
[shaders]
|
||||
vertex41core =
|
||||
#version 410
|
||||
uniform highp mat4 u_modelViewProjectionMatrix;
|
||||
|
||||
uniform highp mat4 u_modelMatrix;
|
||||
uniform highp mat4 u_viewProjectionMatrix;
|
||||
uniform lowp float u_active_extruder;
|
||||
uniform lowp vec4 u_extruder_opacity; // currently only for max 4 extruders, others always visible
|
||||
|
||||
uniform highp mat4 u_normalMatrix;
|
||||
|
||||
in highp vec4 a_vertex;
|
||||
in lowp vec4 a_color;
|
||||
in lowp vec4 a_grayColor;
|
||||
in lowp vec4 a_material_color;
|
||||
in highp vec4 a_normal;
|
||||
in highp vec2 a_line_dim; // line width and thickness
|
||||
in highp float a_extruder;
|
||||
in highp float a_line_type;
|
||||
|
||||
out lowp vec4 v_color;
|
||||
|
||||
out highp vec3 v_vertex;
|
||||
out highp vec3 v_normal;
|
||||
out lowp vec2 v_line_dim;
|
||||
out highp int v_extruder;
|
||||
out highp vec4 v_extruder_opacity;
|
||||
out float v_line_type;
|
||||
|
||||
out lowp vec4 f_color;
|
||||
out highp vec3 f_vertex;
|
||||
out highp vec3 f_normal;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 v1_vertex = a_vertex;
|
||||
v1_vertex.y -= a_line_dim.y / 2; // half layer down
|
||||
|
||||
vec4 world_space_vert = u_modelMatrix * v1_vertex;
|
||||
gl_Position = world_space_vert;
|
||||
// shade the color depending on the extruder index stored in the alpha component of the color
|
||||
|
||||
v_color = vec4(0.4, 0.4, 0.4, 0.9); // default color for not current layer
|
||||
v_vertex = world_space_vert.xyz;
|
||||
v_normal = (u_normalMatrix * normalize(a_normal)).xyz;
|
||||
v_line_dim = a_line_dim;
|
||||
v_extruder = int(a_extruder);
|
||||
v_line_type = a_line_type;
|
||||
v_extruder_opacity = u_extruder_opacity;
|
||||
|
||||
// for testing without geometry shader
|
||||
f_color = v_color;
|
||||
f_vertex = v_vertex;
|
||||
f_normal = v_normal;
|
||||
}
|
||||
|
||||
geometry41core =
|
||||
#version 410
|
||||
|
||||
uniform highp mat4 u_viewProjectionMatrix;
|
||||
uniform int u_show_travel_moves;
|
||||
uniform int u_show_helpers;
|
||||
uniform int u_show_skin;
|
||||
uniform int u_show_infill;
|
||||
|
||||
layout(lines) in;
|
||||
layout(triangle_strip, max_vertices = 26) out;
|
||||
|
||||
in vec4 v_color[];
|
||||
in vec3 v_vertex[];
|
||||
in vec3 v_normal[];
|
||||
in vec2 v_line_dim[];
|
||||
in int v_extruder[];
|
||||
in vec4 v_extruder_opacity[];
|
||||
in float v_line_type[];
|
||||
|
||||
out vec4 f_color;
|
||||
out vec3 f_normal;
|
||||
out vec3 f_vertex;
|
||||
|
||||
// Set the set of variables and EmitVertex
|
||||
void myEmitVertex(vec3 vertex, vec4 color, vec3 normal, vec4 pos) {
|
||||
f_vertex = vertex;
|
||||
f_color = color;
|
||||
f_normal = normal;
|
||||
gl_Position = pos;
|
||||
EmitVertex();
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 g_vertex_delta;
|
||||
vec3 g_vertex_normal_horz; // horizontal and vertical in respect to layers
|
||||
vec4 g_vertex_offset_horz; // vec4 to match gl_in[x].gl_Position
|
||||
vec3 g_vertex_normal_vert;
|
||||
vec4 g_vertex_offset_vert;
|
||||
vec3 g_vertex_normal_horz_head;
|
||||
vec4 g_vertex_offset_horz_head;
|
||||
|
||||
float size_x;
|
||||
float size_y;
|
||||
|
||||
if ((v_extruder_opacity[0][v_extruder[0]] == 0.0) && (v_line_type[0] != 8) && (v_line_type[0] != 9)) {
|
||||
return;
|
||||
}
|
||||
// See LayerPolygon; 8 is MoveCombingType, 9 is RetractionType
|
||||
if ((u_show_travel_moves == 0) && ((v_line_type[0] == 8) || (v_line_type[0] == 9))) {
|
||||
return;
|
||||
}
|
||||
if ((u_show_helpers == 0) && ((v_line_type[0] == 4) || (v_line_type[0] == 5) || (v_line_type[0] == 7) || (v_line_type[0] == 10))) {
|
||||
return;
|
||||
}
|
||||
if ((u_show_skin == 0) && ((v_line_type[0] == 1) || (v_line_type[0] == 2) || (v_line_type[0] == 3))) {
|
||||
return;
|
||||
}
|
||||
if ((u_show_infill == 0) && (v_line_type[0] == 6)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ((v_line_type[0] == 8) || (v_line_type[0] == 9)) {
|
||||
// fixed size for movements
|
||||
size_x = 0.05;
|
||||
} else {
|
||||
size_x = v_line_dim[1].x / 2 + 0.01; // radius, and make it nicely overlapping
|
||||
}
|
||||
size_y = v_line_dim[1].y / 2 + 0.01;
|
||||
|
||||
g_vertex_delta = gl_in[1].gl_Position - gl_in[0].gl_Position;
|
||||
g_vertex_normal_horz_head = normalize(vec3(-g_vertex_delta.x, -g_vertex_delta.y, -g_vertex_delta.z));
|
||||
g_vertex_offset_horz_head = vec4(g_vertex_normal_horz_head * size_x, 0.0);
|
||||
|
||||
g_vertex_normal_horz = normalize(vec3(g_vertex_delta.z, g_vertex_delta.y, -g_vertex_delta.x));
|
||||
|
||||
g_vertex_offset_horz = vec4(g_vertex_normal_horz * size_x, 0.0); //size * g_vertex_normal_horz;
|
||||
g_vertex_normal_vert = vec3(0.0, 1.0, 0.0);
|
||||
g_vertex_offset_vert = vec4(g_vertex_normal_vert * size_y, 0.0);
|
||||
|
||||
if ((v_line_type[0] == 8) || (v_line_type[0] == 9)) {
|
||||
// Travels: flat plane with pointy ends
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz_head + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_horz + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz_head + g_vertex_offset_vert));
|
||||
|
||||
EndPrimitive();
|
||||
} else {
|
||||
// All normal lines are rendered as 3d tubes.
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz));
|
||||
|
||||
EndPrimitive();
|
||||
|
||||
// left side
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz_head, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz_head));
|
||||
myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_horz));
|
||||
|
||||
EndPrimitive();
|
||||
|
||||
myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz_head, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz_head));
|
||||
myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz));
|
||||
|
||||
EndPrimitive();
|
||||
|
||||
// right side
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_horz_head, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz_head));
|
||||
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz));
|
||||
|
||||
EndPrimitive();
|
||||
|
||||
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz));
|
||||
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_vert, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_vert));
|
||||
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_horz_head, u_viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz_head));
|
||||
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_horz, u_viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz));
|
||||
|
||||
EndPrimitive();
|
||||
}
|
||||
}
|
||||
|
||||
fragment41core =
|
||||
#version 410
|
||||
in lowp vec4 f_color;
|
||||
in lowp vec3 f_normal;
|
||||
in lowp vec3 f_vertex;
|
||||
|
||||
out vec4 frag_color;
|
||||
|
||||
uniform mediump vec4 u_ambientColor;
|
||||
uniform highp vec3 u_lightPosition;
|
||||
|
||||
void main()
|
||||
{
|
||||
mediump vec4 finalColor = vec4(0.0);
|
||||
float alpha = f_color.a;
|
||||
|
||||
finalColor.rgb += f_color.rgb * 0.3;
|
||||
|
||||
highp vec3 normal = normalize(f_normal);
|
||||
highp vec3 light_dir = normalize(u_lightPosition - f_vertex);
|
||||
|
||||
// Diffuse Component
|
||||
highp float NdotL = clamp(dot(normal, light_dir), 0.0, 1.0);
|
||||
finalColor += (NdotL * f_color);
|
||||
finalColor.a = alpha; // Do not change alpha in any way
|
||||
|
||||
frag_color = finalColor;
|
||||
}
|
||||
|
||||
|
||||
[defaults]
|
||||
u_active_extruder = 0.0
|
||||
u_extruder_opacity = [1.0, 1.0, 1.0, 1.0]
|
||||
|
||||
u_specularColor = [0.4, 0.4, 0.4, 1.0]
|
||||
u_ambientColor = [0.3, 0.3, 0.3, 0.0]
|
||||
u_diffuseColor = [1.0, 0.79, 0.14, 1.0]
|
||||
u_shininess = 20.0
|
||||
|
||||
u_show_travel_moves = 0
|
||||
u_show_helpers = 1
|
||||
u_show_skin = 1
|
||||
u_show_infill = 1
|
||||
|
||||
[bindings]
|
||||
u_modelViewProjectionMatrix = model_view_projection_matrix
|
||||
u_modelMatrix = model_matrix
|
||||
u_viewProjectionMatrix = view_projection_matrix
|
||||
u_normalMatrix = normal_matrix
|
||||
u_lightPosition = light_0_position
|
||||
|
||||
[attributes]
|
||||
a_vertex = vertex
|
||||
a_color = color
|
||||
a_grayColor = vec4(0.87, 0.12, 0.45, 1.0)
|
||||
a_normal = normal
|
||||
a_line_dim = line_dim
|
||||
a_extruder = extruder
|
||||
a_material_color = material_color
|
||||
a_line_type = line_type
|
156
plugins/SimulationView/layers_shadow.shader
Normal file
156
plugins/SimulationView/layers_shadow.shader
Normal file
|
@ -0,0 +1,156 @@
|
|||
[shaders]
|
||||
vertex =
|
||||
uniform highp mat4 u_modelViewProjectionMatrix;
|
||||
uniform lowp float u_active_extruder;
|
||||
uniform lowp float u_shade_factor;
|
||||
uniform highp int u_layer_view_type;
|
||||
|
||||
attribute highp float a_extruder;
|
||||
attribute highp float a_line_type;
|
||||
attribute highp vec4 a_vertex;
|
||||
attribute lowp vec4 a_color;
|
||||
attribute lowp vec4 a_material_color;
|
||||
|
||||
varying lowp vec4 v_color;
|
||||
varying float v_line_type;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_Position = u_modelViewProjectionMatrix * a_vertex;
|
||||
// shade the color depending on the extruder index
|
||||
v_color = vec4(0.4, 0.4, 0.4, 0.9); // default color for not current layer;
|
||||
// 8 and 9 are travel moves
|
||||
// if ((a_line_type != 8.0) && (a_line_type != 9.0)) {
|
||||
// v_color = (a_extruder == u_active_extruder) ? v_color : vec4(u_shade_factor * v_color.rgb, v_color.a);
|
||||
// }
|
||||
|
||||
v_line_type = a_line_type;
|
||||
}
|
||||
|
||||
fragment =
|
||||
varying lowp vec4 v_color;
|
||||
varying float v_line_type;
|
||||
|
||||
uniform int u_show_travel_moves;
|
||||
uniform int u_show_helpers;
|
||||
uniform int u_show_skin;
|
||||
uniform int u_show_infill;
|
||||
|
||||
void main()
|
||||
{
|
||||
if ((u_show_travel_moves == 0) && (v_line_type >= 7.5) && (v_line_type <= 9.5)) { // actually, 8 and 9
|
||||
// discard movements
|
||||
discard;
|
||||
}
|
||||
// support: 4, 5, 7, 10
|
||||
if ((u_show_helpers == 0) && (
|
||||
((v_line_type >= 3.5) && (v_line_type <= 4.5)) ||
|
||||
((v_line_type >= 6.5) && (v_line_type <= 7.5)) ||
|
||||
((v_line_type >= 9.5) && (v_line_type <= 10.5)) ||
|
||||
((v_line_type >= 4.5) && (v_line_type <= 5.5))
|
||||
)) {
|
||||
discard;
|
||||
}
|
||||
// skin: 1, 2, 3
|
||||
if ((u_show_skin == 0) && (
|
||||
(v_line_type >= 0.5) && (v_line_type <= 3.5)
|
||||
)) {
|
||||
discard;
|
||||
}
|
||||
// infill:
|
||||
if ((u_show_infill == 0) && (v_line_type >= 5.5) && (v_line_type <= 6.5)) {
|
||||
// discard movements
|
||||
discard;
|
||||
}
|
||||
|
||||
gl_FragColor = v_color;
|
||||
}
|
||||
|
||||
vertex41core =
|
||||
#version 410
|
||||
uniform highp mat4 u_modelViewProjectionMatrix;
|
||||
uniform lowp float u_active_extruder;
|
||||
uniform lowp float u_shade_factor;
|
||||
uniform highp int u_layer_view_type;
|
||||
|
||||
in highp float a_extruder;
|
||||
in highp float a_line_type;
|
||||
in highp vec4 a_vertex;
|
||||
in lowp vec4 a_color;
|
||||
in lowp vec4 a_material_color;
|
||||
|
||||
out lowp vec4 v_color;
|
||||
out float v_line_type;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_Position = u_modelViewProjectionMatrix * a_vertex;
|
||||
v_color = vec4(0.4, 0.4, 0.4, 0.9); // default color for not current layer
|
||||
// if ((a_line_type != 8) && (a_line_type != 9)) {
|
||||
// v_color = (a_extruder == u_active_extruder) ? v_color : vec4(u_shade_factor * v_color.rgb, v_color.a);
|
||||
// }
|
||||
|
||||
v_line_type = a_line_type;
|
||||
}
|
||||
|
||||
fragment41core =
|
||||
#version 410
|
||||
in lowp vec4 v_color;
|
||||
in float v_line_type;
|
||||
out vec4 frag_color;
|
||||
|
||||
uniform int u_show_travel_moves;
|
||||
uniform int u_show_helpers;
|
||||
uniform int u_show_skin;
|
||||
uniform int u_show_infill;
|
||||
|
||||
void main()
|
||||
{
|
||||
if ((u_show_travel_moves == 0) && (v_line_type >= 7.5) && (v_line_type <= 9.5)) { // actually, 8 and 9
|
||||
// discard movements
|
||||
discard;
|
||||
}
|
||||
// helpers: 4, 5, 7, 10
|
||||
if ((u_show_helpers == 0) && (
|
||||
((v_line_type >= 3.5) && (v_line_type <= 4.5)) ||
|
||||
((v_line_type >= 6.5) && (v_line_type <= 7.5)) ||
|
||||
((v_line_type >= 9.5) && (v_line_type <= 10.5)) ||
|
||||
((v_line_type >= 4.5) && (v_line_type <= 5.5))
|
||||
)) {
|
||||
discard;
|
||||
}
|
||||
// skin: 1, 2, 3
|
||||
if ((u_show_skin == 0) && (
|
||||
(v_line_type >= 0.5) && (v_line_type <= 3.5)
|
||||
)) {
|
||||
discard;
|
||||
}
|
||||
// infill:
|
||||
if ((u_show_infill == 0) && (v_line_type >= 5.5) && (v_line_type <= 6.5)) {
|
||||
// discard movements
|
||||
discard;
|
||||
}
|
||||
|
||||
frag_color = v_color;
|
||||
}
|
||||
|
||||
[defaults]
|
||||
u_active_extruder = 0.0
|
||||
u_shade_factor = 0.60
|
||||
u_layer_view_type = 0
|
||||
u_extruder_opacity = [1.0, 1.0, 1.0, 1.0]
|
||||
|
||||
u_show_travel_moves = 0
|
||||
u_show_helpers = 1
|
||||
u_show_skin = 1
|
||||
u_show_infill = 1
|
||||
|
||||
[bindings]
|
||||
u_modelViewProjectionMatrix = model_view_projection_matrix
|
||||
|
||||
[attributes]
|
||||
a_vertex = vertex
|
||||
a_color = color
|
||||
a_extruder = extruder
|
||||
a_line_type = line_type
|
||||
a_material_color = material_color
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"name": "Layer View",
|
||||
"name": "Simulation View",
|
||||
"author": "Ultimaker B.V.",
|
||||
"version": "1.0.0",
|
||||
"description": "Provides the Layer view.",
|
||||
"description": "Provides the Simulation view.",
|
||||
"api": 4,
|
||||
"i18n-catalog": "cura"
|
||||
}
|
BIN
plugins/SimulationView/resources/nozzle.stl
Normal file
BIN
plugins/SimulationView/resources/nozzle.stl
Normal file
Binary file not shown.
79
plugins/SimulationView/resources/simulation_pause.svg
Normal file
79
plugins/SimulationView/resources/simulation_pause.svg
Normal file
|
@ -0,0 +1,79 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
viewBox="0 0 30 30"
|
||||
version="1.1"
|
||||
id="svg4620"
|
||||
sodipodi:docname="simulation_pause.svg"
|
||||
inkscape:version="0.92.2 (5c3e80d, 2017-08-06)">
|
||||
<metadata
|
||||
id="metadata4626">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs4624" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1137"
|
||||
id="namedview4622"
|
||||
showgrid="false"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:zoom="22.250293"
|
||||
inkscape:cx="8.1879003"
|
||||
inkscape:cy="12.643765"
|
||||
inkscape:window-x="2872"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg4620">
|
||||
<sodipodi:guide
|
||||
position="15,15"
|
||||
orientation="1,0"
|
||||
id="guide4628"
|
||||
inkscape:locked="false"
|
||||
inkscape:label=""
|
||||
inkscape:color="rgb(0,0,255)" />
|
||||
<sodipodi:guide
|
||||
position="15,15"
|
||||
orientation="0,1"
|
||||
id="guide4630"
|
||||
inkscape:locked="false"
|
||||
inkscape:label=""
|
||||
inkscape:color="rgb(0,0,255)" />
|
||||
</sodipodi:namedview>
|
||||
<rect
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect5192"
|
||||
width="2"
|
||||
height="20"
|
||||
x="19"
|
||||
y="5" />
|
||||
<rect
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect5192-5"
|
||||
width="2"
|
||||
height="20"
|
||||
x="9"
|
||||
y="5" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.3 KiB |
82
plugins/SimulationView/resources/simulation_resume.svg
Normal file
82
plugins/SimulationView/resources/simulation_resume.svg
Normal file
|
@ -0,0 +1,82 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
viewBox="0 0 30 30"
|
||||
version="1.1"
|
||||
id="svg3765"
|
||||
sodipodi:docname="simulation_resume.svg"
|
||||
inkscape:version="0.92.2 (5c3e80d, 2017-08-06)">
|
||||
<metadata
|
||||
id="metadata3771">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs3769" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1137"
|
||||
id="namedview3767"
|
||||
showgrid="false"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:zoom="23.327047"
|
||||
inkscape:cx="10.788646"
|
||||
inkscape:cy="14.67951"
|
||||
inkscape:window-x="2872"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg3765">
|
||||
<sodipodi:guide
|
||||
position="15,15"
|
||||
orientation="0,1"
|
||||
id="guide4592"
|
||||
inkscape:locked="false"
|
||||
inkscape:label=""
|
||||
inkscape:color="rgb(0,0,255)" />
|
||||
<sodipodi:guide
|
||||
position="15,15"
|
||||
orientation="1,0"
|
||||
id="guide4594"
|
||||
inkscape:locked="false"
|
||||
inkscape:label=""
|
||||
inkscape:color="rgb(0,0,255)" />
|
||||
</sodipodi:namedview>
|
||||
<path
|
||||
sodipodi:type="star"
|
||||
id="path3783"
|
||||
sodipodi:sides="3"
|
||||
sodipodi:cx="12.732001"
|
||||
sodipodi:cy="14.695877"
|
||||
sodipodi:r1="13.891838"
|
||||
sodipodi:r2="6.945919"
|
||||
sodipodi:arg1="0"
|
||||
sodipodi:arg2="1.0471976"
|
||||
inkscape:flatsided="true"
|
||||
inkscape:rounded="0"
|
||||
inkscape:randomized="0"
|
||||
d="m 26.623839,14.695877 -20.8377567,12.030685 0,-24.0613696 z"
|
||||
inkscape:transform-center-x="-2.9211205"
|
||||
style="fill:none;stroke:#000000;stroke-width:2.32790732;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
transform="matrix(0.84110413,0,0,0.87756418,1.775541,2.1034247)" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.5 KiB |
|
@ -3,9 +3,14 @@
|
|||
|
||||
import configparser #To parse preference files.
|
||||
import io #To serialise the preference files afterwards.
|
||||
import os
|
||||
from urllib.parse import quote_plus
|
||||
|
||||
from UM.Resources import Resources
|
||||
from UM.VersionUpgrade import VersionUpgrade #We're inheriting from this.
|
||||
|
||||
from cura.CuraApplication import CuraApplication
|
||||
|
||||
|
||||
# a list of all legacy "Not Supported" quality profiles
|
||||
_OLD_NOT_SUPPORTED_PROFILES = [
|
||||
|
@ -45,6 +50,15 @@ _OLD_NOT_SUPPORTED_PROFILES = [
|
|||
]
|
||||
|
||||
|
||||
# Some containers have their specific empty containers, those need to be set correctly.
|
||||
_EMPTY_CONTAINER_DICT = {
|
||||
"1": "empty_quality_changes",
|
||||
"2": "empty_quality",
|
||||
"3": "empty_material",
|
||||
"4": "empty_variant",
|
||||
}
|
||||
|
||||
|
||||
class VersionUpgrade30to31(VersionUpgrade):
|
||||
## Gets the version number from a CFG file in Uranium's 3.0 format.
|
||||
#
|
||||
|
@ -97,6 +111,17 @@ class VersionUpgrade30to31(VersionUpgrade):
|
|||
if not parser.has_section(each_section):
|
||||
parser.add_section(each_section)
|
||||
|
||||
# Copy global quality changes to extruder quality changes for single extrusion machines
|
||||
if parser["metadata"]["type"] == "quality_changes":
|
||||
all_quality_changes = self._getSingleExtrusionMachineQualityChanges(parser)
|
||||
# Note that DO NOT!!! use the quality_changes returned from _getSingleExtrusionMachineQualityChanges().
|
||||
# Those are loaded from the hard drive which are original files that haven't been upgraded yet.
|
||||
# NOTE 2: The number can be 0 or 1 depends on whether you are loading it from the qualities folder or
|
||||
# from a project file. When you load from a project file, the custom profile may not be in cura
|
||||
# yet, so you will get 0.
|
||||
if len(all_quality_changes) <= 1 and not parser.has_option("metadata", "extruder"):
|
||||
self._createExtruderQualityChangesForSingleExtrusionMachine(filename, parser)
|
||||
|
||||
# Update version numbers
|
||||
parser["general"]["version"] = "2"
|
||||
parser["metadata"]["setting_version"] = "4"
|
||||
|
@ -126,6 +151,11 @@ class VersionUpgrade30to31(VersionUpgrade):
|
|||
if quality_profile_id in _OLD_NOT_SUPPORTED_PROFILES:
|
||||
parser["containers"]["2"] = "empty_quality"
|
||||
|
||||
# fix empty containers
|
||||
for key, specific_empty_container in _EMPTY_CONTAINER_DICT.items():
|
||||
if parser.has_option("containers", key) and parser["containers"][key] == "empty":
|
||||
parser["containers"][key] = specific_empty_container
|
||||
|
||||
# Update version numbers
|
||||
if "general" not in parser:
|
||||
parser["general"] = {}
|
||||
|
@ -139,3 +169,59 @@ class VersionUpgrade30to31(VersionUpgrade):
|
|||
output = io.StringIO()
|
||||
parser.write(output)
|
||||
return [filename], [output.getvalue()]
|
||||
|
||||
def _getSingleExtrusionMachineQualityChanges(self, quality_changes_container):
|
||||
quality_changes_dir = Resources.getPath(CuraApplication.ResourceTypes.QualityInstanceContainer)
|
||||
quality_changes_containers = []
|
||||
|
||||
for item in os.listdir(quality_changes_dir):
|
||||
file_path = os.path.join(quality_changes_dir, item)
|
||||
if not os.path.isfile(file_path):
|
||||
continue
|
||||
|
||||
parser = configparser.ConfigParser()
|
||||
try:
|
||||
parser.read([file_path])
|
||||
except:
|
||||
# skip, it is not a valid stack file
|
||||
continue
|
||||
|
||||
if not parser.has_option("metadata", "type"):
|
||||
continue
|
||||
if "quality_changes" != parser["metadata"]["type"]:
|
||||
continue
|
||||
|
||||
if not parser.has_option("general", "name"):
|
||||
continue
|
||||
if quality_changes_container["general"]["name"] != parser["general"]["name"]:
|
||||
continue
|
||||
|
||||
quality_changes_containers.append(parser)
|
||||
|
||||
return quality_changes_containers
|
||||
|
||||
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, "")
|
||||
new_filename = machine_name + "_" + "fdmextruder" + suffix
|
||||
|
||||
extruder_quality_changes_parser = configparser.ConfigParser()
|
||||
extruder_quality_changes_parser.add_section("general")
|
||||
extruder_quality_changes_parser["general"]["version"] = str(2)
|
||||
extruder_quality_changes_parser["general"]["name"] = global_quality_changes["general"]["name"]
|
||||
extruder_quality_changes_parser["general"]["definition"] = global_quality_changes["general"]["definition"]
|
||||
|
||||
extruder_quality_changes_parser.add_section("metadata")
|
||||
extruder_quality_changes_parser["metadata"]["quality_type"] = global_quality_changes["metadata"]["quality_type"]
|
||||
extruder_quality_changes_parser["metadata"]["type"] = global_quality_changes["metadata"]["type"]
|
||||
extruder_quality_changes_parser["metadata"]["setting_version"] = str(4)
|
||||
extruder_quality_changes_parser["metadata"]["extruder"] = "fdmextruder"
|
||||
|
||||
extruder_quality_changes_output = io.StringIO()
|
||||
extruder_quality_changes_parser.write(extruder_quality_changes_output)
|
||||
extruder_quality_changes_filename = quote_plus(new_filename) + ".inst.cfg"
|
||||
|
||||
quality_changes_dir = Resources.getPath(CuraApplication.ResourceTypes.QualityInstanceContainer)
|
||||
|
||||
with open(os.path.join(quality_changes_dir, extruder_quality_changes_filename), "w") as f:
|
||||
f.write(extruder_quality_changes_output.getvalue())
|
||||
|
|
|
@ -422,11 +422,11 @@ class XmlMaterialProfile(InstanceContainer):
|
|||
return version * 1000000 + setting_version
|
||||
|
||||
## Overridden from InstanceContainer
|
||||
def deserialize(self, serialized):
|
||||
def deserialize(self, serialized, file_name = None):
|
||||
containers_to_add = []
|
||||
# update the serialized data first
|
||||
from UM.Settings.Interfaces import ContainerInterface
|
||||
serialized = ContainerInterface.deserialize(self, serialized)
|
||||
serialized = ContainerInterface.deserialize(self, serialized, file_name)
|
||||
|
||||
try:
|
||||
data = ET.fromstring(serialized)
|
||||
|
|
|
@ -47,21 +47,24 @@
|
|||
"material_bed_temp_wait": { "default_value": false },
|
||||
"prime_tower_enable": { "default_value": true },
|
||||
"prime_tower_wall_thickness": { "resolve": 0.7 },
|
||||
"prime_tower_position_x": { "value": "50" },
|
||||
"prime_tower_position_y": { "value": "150" },
|
||||
"prime_tower_size": { "value": 24.0 },
|
||||
"prime_tower_position_x": { "value": 125 },
|
||||
"prime_tower_position_y": { "value": 70 },
|
||||
"prime_blob_enable": { "default_value": false },
|
||||
"machine_max_feedrate_z": { "default_value": 20 },
|
||||
"machine_disallowed_areas": { "default_value": [
|
||||
[[215, 135], [-215, 135], [-215, 75], [215, 75]]
|
||||
]},
|
||||
"machine_start_gcode": {
|
||||
"default_value": "\nM92 E159 ;2288 for V5 extruder\n\nM104 S120 T1\nM104 S120 T2\nM104 S120 T3\n\nG21\nG90\nM42 S255 P13 ;chamber lights\nM42 S255 P12 ;fume extraction\nM204 S300 ;default acceleration\nM205 X10 ;default jerk\n\nM117 Homing Y ......\nG28 Y\nM117 Homing X ......\nG28 X\nM117 Homing Z ......\nG28 Z F100\nG1 Z10 F600\nG1 X70 Y20 F9000;go to wipe point\n\nM190 S{material_bed_temperature_layer_0}\n\nM117 Heating for 50 sec.\nG4 S20\nM117 Heating for 30 sec.\nG4 S20\nM117 Heating for 10 sec.\nM300 S1200 P1000\nG4 S9\n\nM117 purging nozzle....\nT0\nG92 E0;set E\nG1 E10 F100\nG92 E0\nG1 E-1 F600\n\nM117 wiping nozzle....\nG1 X1 Y24 F3000\nG1 X70 F9000\nG1 Z10 F900\n\nM104 S21 T1\nM104 S21 T2\nM104 S21 T3\n\nM117 Printing .....\n"
|
||||
"default_value": "\nM92 E159 ;2288 for V5 extruder\n\nM140 S{material_bed_temperature_layer_0}\nM104 S120 T1\nM104 S120 T2\nM104 S120 T3\n\nG21\nG90\nM42 S255 P13 ;chamber lights\nM42 S255 P12 ;fume extraction\nM204 S300 ;default acceleration\nM205 X10 ;default jerk\n\nM117 Homing Y ......\nG28 Y\nM117 Homing X ......\nG28 X\nM117 Homing Z ......\nG28 Z F100\nG1 Z10 F600\nG1 X70 Y20 F9000;go to wipe point\n\nM190 S{material_bed_temperature_layer_0}\n\nM117 Heating for 50 sec.\nG4 S20\nM117 Heating for 30 sec.\nG4 S20\nM117 Heating for 10 sec.\nM300 S1200 P1000\nG4 S9\n\nM117 purging nozzle....\nT0\nG92 E0;set E\nG1 E10 F100\nG92 E0\nG1 E-1 F600\n\nM117 wiping nozzle....\nG1 X1 Y24 F3000\nG1 X70 F9000\nG1 Z10 F900\n\nM104 S21 T1\nM104 S21 T2\nM104 S21 T3\n\nM117 Printing .....\n"
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default_value": "; -- END GCODE --\nM117 cooling down....\nM106 S255\nM140 S5\nM104 S5 T0\nM104 S5 T1\nM104 S5 T2\nM104 S5 T3\n\nG91\nG1 Z1 F900\nG90\n\nG1 X20.0 Y260.0 F6000\nG4 S7\nM84\nG4 S90\nM107\nM42 P12 S0\nM42 P13 S0\nM84\nT0\nM117 Finished.\n; -- end of GCODE --"
|
||||
},
|
||||
"layer_height": { "maximum_value": "(0.8 * min(extruderValues('machine_nozzle_size')))" },
|
||||
"layer_height_0": { "maximum_value": "(0.8 * min(extruderValues('machine_nozzle_size')))" },
|
||||
"retraction_extra_prime_amount": { "minimum_value_warning": "-2.0" },
|
||||
"optimize_wall_printing_order": { "default_value": true },
|
||||
"machine_nozzle_heat_up_speed": {"default_value": 20},
|
||||
"machine_nozzle_cool_down_speed": {"default_value": 20},
|
||||
"machine_min_cool_heat_time_window": {"default_value": 5}
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
"author": "Dagoma",
|
||||
"manufacturer": "Dagoma",
|
||||
"file_formats": "text/x-gcode",
|
||||
"icon": "icon_ultimaker2.png",
|
||||
"icon": "icon_discoeasy200.png",
|
||||
"platform": "discoeasy200.stl",
|
||||
"platform_offset": [ 105, -59, 280]
|
||||
},
|
||||
|
@ -30,24 +30,23 @@
|
|||
},
|
||||
"machine_head_with_fans_polygon": {
|
||||
"default_value": [
|
||||
[16, 37],
|
||||
[16, -65],
|
||||
[-16, -65],
|
||||
[16, 37]
|
||||
[17, 70],
|
||||
[17, -40],
|
||||
[-17, -40],
|
||||
[17, 70]
|
||||
]
|
||||
},
|
||||
"gantry_height": {
|
||||
"default_value": 55
|
||||
},
|
||||
"machine_gcode_flavor": {
|
||||
"default_value": "RepRap"
|
||||
"default_value": 10
|
||||
},
|
||||
"machine_start_gcode": {
|
||||
"default_value": ";Gcode by Cura\nG90 ;absolute positioning\nM106 S250 ;fan on for the palpeur\nG28 X Y\nG1 X50\nM109 S180\nG28\nM104 S{print_temperature}\n;Activation palpeur\n;bloc palpeur\nG29 ;Auto level\nM107 ;start with the fan off\nG1 X100 Y20 F3000\nG1 Z0.5\nM109 S{print_temperature}\nM140 S{material_bed_temperature}\nM82 ;set extruder to absolute mode\nG92 E0 ;zero the extruded length\nG1 F200 E10 ;extrude 10mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 Z3\nG1 F3000\n"
|
||||
"default_value": ";Gcode by Cura\nG90 ;absolute positioning\nM106 S250 ;fan on for the palpeur\nG28 X Y\nG1 X50\nM109 S180\nG28\nM104 S{material_print_temperature_layer_0}\n;Activation palpeur\n;bloc palpeur\nG29 ;Auto level\nM107 ;start with the fan off\nG1 X100 Y20 F3000\nG1 Z0.5\nM109 S{material_print_temperature_layer_0}\nM82 ;set extruder to absolute mode\nG92 E0 ;zero the extruded length\nG1 F200 E10 ;extrude 10mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 Z3\nG1 F6000"
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default_value": "\nM104 S0\nM106 S255 ;start fan full power\nM140 S0 ;heated bed heater off (if you have it)\n;Home machine\nG91 ;relative positioning\nG1 E-1 F{retraction_speed} ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG1 Z+3 F3000 ;move Z up a bit and retract filament even more\nG90\nG28 X Y\n;Ventilation forcee\nM107 ;stop fan\n;Shut down motor\nM84 ;shut down motors\n"
|
||||
"default_value": "M104 S0\nM106 S255 ;start fan full power\nM140 S0 ;heated bed heater off (if you have it)\n;Home machine\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG1 Z+3 F3000 ;move Z up a bit and retract filament even more\nG90\nG28 X Y\n;Ventilation forcee\nM107 ;stop fan\n;Shut down motor\nM84 ;shut down motors"
|
||||
},
|
||||
"material_diameter": {
|
||||
"default_value": 1.75
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1218,7 +1218,17 @@
|
|||
},
|
||||
"default_value": "everywhere",
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
"settable_per_mesh": true,
|
||||
"children": {
|
||||
"filter_out_tiny_gaps": {
|
||||
"label": "Filter Out Tiny Gaps",
|
||||
"description": "Filter out tiny gaps to reduce blobs on outside of model.",
|
||||
"type": "bool",
|
||||
"default_value": true,
|
||||
"limit_to_extruder": "wall_0_extruder_nr",
|
||||
"settable_per_mesh": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"fill_outline_gaps": {
|
||||
"label": "Print Thin Walls",
|
||||
|
@ -4945,6 +4955,18 @@
|
|||
"default_value": false,
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
"meshfix_maximum_resolution":
|
||||
{
|
||||
"label": "Maximum Resolution",
|
||||
"description": "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.",
|
||||
"type": "float",
|
||||
"unit": "mm",
|
||||
"default_value": 0.01,
|
||||
"minimum_value": "0.001",
|
||||
"minimum_value_warning": "0.005",
|
||||
"maximum_value_warning": "0.1",
|
||||
"settable_per_mesh": true
|
||||
},
|
||||
"multiple_mesh_overlap":
|
||||
{
|
||||
"label": "Merged Meshes Overlap",
|
||||
|
@ -5577,6 +5599,36 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"flow_rate_max_extrusion_offset":
|
||||
{
|
||||
"label": "Flow rate compensation max extrusion offset",
|
||||
"description": "The maximum distance in mm to compensate.",
|
||||
"unit": "mm",
|
||||
"type": "float",
|
||||
"minimum_value": "0",
|
||||
"maximum_value_warning": "10",
|
||||
"default_value": 0,
|
||||
"value": "0",
|
||||
"enabled": true,
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"flow_rate_extrusion_offset_factor":
|
||||
{
|
||||
"label": "Flow rate compensation factor",
|
||||
"description": "The multiplication factor for the flow rate -> distance translation.",
|
||||
"unit": "%",
|
||||
"type": "float",
|
||||
"minimum_value": "0",
|
||||
"maximum_value_warning": "100",
|
||||
"default_value": 100,
|
||||
"value": "100",
|
||||
"enabled": true,
|
||||
"settable_per_mesh": false,
|
||||
"settable_per_extruder": false,
|
||||
"settable_per_meshgroup": false
|
||||
},
|
||||
"wireframe_enabled":
|
||||
{
|
||||
"label": "Wire Printing",
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "cartesio_extruder_0",
|
||||
"version": 2,
|
||||
"name": "Extruder 0",
|
||||
"name": "Extruder 1",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "cartesio",
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "cartesio_extruder_1",
|
||||
"version": 2,
|
||||
"name": "Extruder 1",
|
||||
"name": "Extruder 2",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "cartesio",
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "cartesio_extruder_2",
|
||||
"version": 2,
|
||||
"name": "Extruder 2",
|
||||
"name": "Extruder 3",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "cartesio",
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"id": "cartesio_extruder_3",
|
||||
"version": 2,
|
||||
"name": "Extruder 3",
|
||||
"name": "Extruder 4",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "cartesio",
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: German\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: German\n"
|
||||
|
@ -56,7 +56,9 @@ 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"
|
||||
|
@ -68,7 +70,9 @@ 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"
|
||||
|
@ -605,6 +609,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "Die Dicke der ersten Schicht in mm. Eine dicke erste Schicht erleichtert die Haftung am Druckbett."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -755,6 +784,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Gehäuse"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Extruder für Wand"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "Die für das Drucken der Wände verwendete Extruder-Einheit. Diese wird für die Mehrfach-Extrusion benutzt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -767,8 +806,8 @@ 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 Walls Extruder"
|
||||
msgstr "Extruder Innenwände"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1200,6 +1239,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Der äußerste Teil des oberen/unteren Musters wird durch eine Anzahl von konzentrischen Linien ersetzt. Die Verwendung von ein oder zwei Linien verbessert Dächer, die auf Füllmaterial beginnen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Glätten aktivieren"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Gehen Sie ein weiteres Mal über die Oberfläche, jedoch ohne Extrusionsmaterial. Damit wird der Kunststoff auf der Oberfläche weiter geschmolzen, was zu einer glatteren Oberfläche führt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Nur oberste Schicht glätten"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Führen Sie das Glätten nur für die allerletzte Schicht des Meshs aus. Dies spart Zeit, wenn die unteren Schichten keine glatte Oberflächenausführung erfordern."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Glättungsmuster"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Das Muster, das für die Glättung der Oberflächen verwendet wird."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Konzentrisch"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zickzack"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Glättungslinienabstand"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Der Abstand zwischen den Glättungslinien."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Glättungsfluss"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Die Materialmenge relativ zu einer normalen Außenhautlinie, um während des Glättens zu extrudieren. Indem die Düse gefüllt bleibt, können einige Spalten in der oberen Schicht gefüllt werden, allerdings führt zu viel davon zu einer übermäßigen Extrudierung und Markierungen seitlich der Oberfläche."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Glättungseinsatz"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Eine Distanz, die von den Kanten des Modells einzuhalten ist. Die Glättung des gesamten Weges zur Kante des Mesh führt möglicherweise zu einer gezackten Kante Ihres Drucks."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Glättungsgeschwindigkeit"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Die Geschwindigkeit, mit der über die Oberfläche gegangen wird."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Beschleunigung Glättung"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Die Beschleunigung, mit der das Glätten erfolgt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Ruckfunktion glätten"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Die maximale unmittelbare Geschwindigkeitsänderung während des Glättens."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1247,8 +1386,8 @@ 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, cubic, octet, quarter cubic 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 "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- Würfel-, Viertelwürfel-, Octahedral- 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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1265,6 +1404,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Dreiecke"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1317,8 +1461,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "Verbindet die Enden, an denen das Füllmuster auf die Innenwand trifft, mithilfe von Linien, die der Form der Innenwand folgen. 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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1330,6 +1474,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Eine Liste von Ganzzahl-Linienrichtungen für die Verwendung. Elemente aus der Liste werden während des Aufbaus der Schichten sequentiell verwendet und wenn das Listenende erreicht wird, beginnt die Liste von vorne. Die Listenobjekte werden durch Kommas getrennt und die gesamte Liste ist in eckige Klammern gesetzt. Standardmäßig ist eine leere Liste vorhanden, was bedeutet, dass herkömmliche Standardwinkel (45- und 135-Grad für die Linien- und Zickzack-Muster und 45-Grad für alle anderen Muster) verwendet werden."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1640,6 +1804,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Der Durchmesser des verwendeten Filaments wird angepasst. Stellen Sie hier den Durchmesser des verwendeten Filaments ein."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2830,36 +3014,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Die Zickzack-Elemente werden verbunden. Dies erhöht die Stärke der Zickzack-Stützstruktur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Stützstruktur in Blöcke aufteilen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Überspringen Sie einige Stützstruktur-Verbindungen, um das Brechen der Stützstruktur zu erleichtern. Diese Einstellung ist für die Zickzack-Stützstruktur-Füllung vorgesehen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Blockgröße für Stützstruktur"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Überspringen Sie eine Verbindung zwischen den Stützstrukturlinien nach jedem N-Millimeter, um das Brechen der Stützstruktur zu erleichtern."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Anzahl der Stützstruktur-Blocklinien"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Überspringen Sie eine in jeder N-Verbindungslinie, um das Wegbrechen der Stützstruktur zu erleichtern."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3399,8 +3553,8 @@ msgstr "Skirt-Abstand"
|
|||
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 "Der horizontale Abstand zwischen dem Skirt und der ersten Schicht des Drucks.\nEs handelt sich dabei um den Mindestabstand. Ab diesem Abstand werden Skirt-Linien in äußerer Richtung angebracht."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3442,26 +3596,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Brim nur an der Außenseite des Modells drucken. Damit reduziert sich die Anzahl der Brims, die Sie später entfernen müssen, während die Druckbetthaftung nicht signifikant eingeschränkt wird."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Z-Versatz der ersten Schicht"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "Der Extruder wird um diesen Wert von der normalen Höhe der ersten Schicht versetzt. Das kann positiv (erhöht) oder negativ (abgesenkt) erfolgen. Einige Filamenttypen haften besser am Druckbett, wenn der Extruder leicht erhöht ist."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Z-Versatz Kegelschichten"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Bei Nicht-Null wird der Z-Versatz auf 0 über den zahlreichen Schichten reduziert. Ein Wert von 0 bedeutet, dass der Z-Versatz über alle Schichten des Drucks hinweg konstant bleibt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3479,8 +3613,8 @@ msgstr "Raft-Glättung"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "Diese Einstellung definiert, 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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3952,6 +4086,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Normalerweise versucht Cura kleine Löcher im Netz abzudecken und Teile von Schichten, die große Löcher aufweisen, zu entfernen. Die Aktivierung dieser Option erhält jene Teile, die nicht abgedeckt werden können. Diese Option sollte nur als letzter Ausweg verwendet werden, wenn es ansonsten nicht möglich ist, einen korrekten G-Code zu berechnen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3982,6 +4126,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Schaltet mit jeder Schicht das Volumen zu den entsprechenden Netzüberschneidungen, sodass die überlappenden Netze miteinander verwebt werden. Durch Abschalten dieser Funktion erhält eines der Netze das gesamte Volumen der Überlappung, während es von den anderen Netzen entfernt wird."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4187,6 +4341,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Optimieren Sie die Reihenfolge, in der die Wände gedruckt werden, um die Anzahl der Einzüge und die zurückgelegten Distanzen zu reduzieren. Dieser Schritt bringt für die meisten Teile Vorteile, allerdings werden einige möglicherweise länger benötigen. Vergleichen Sie deshalb bitte die Schätzung der Druckzeiten mit und ohne Optimierung."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Stützstruktur in Blöcke aufteilen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Überspringen Sie einige Stützstruktur-Verbindungen, um das Brechen der Stützstruktur zu erleichtern. Diese Einstellung ist für die Zickzack-Stützstruktur-Füllung vorgesehen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Blockgröße für Stützstruktur"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Überspringen Sie eine Verbindung zwischen den Stützstrukturlinien nach jedem N-Millimeter, um das Brechen der Stützstruktur zu erleichtern."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Anzahl der Stützstruktur-Blocklinien"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Überspringen Sie eine in jeder N-Verbindungslinie, um das Wegbrechen der Stützstruktur zu erleichtern."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4477,6 +4661,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Der durchschnittliche Abstand zwischen den willkürlich auf jedes Liniensegment aufgebrachten Punkten. Beachten Sie, dass die Originalpunkte des Polygons verworfen werden, sodass eine hohe Glättung in einer Reduzierung der Auflösung resultiert. Dieser Wert muss größer sein als die Hälfte der Dicke der ungleichmäßigen Außenhaut."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4627,7 +4831,9 @@ 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.\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."
|
||||
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."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
@ -4734,106 +4940,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Der Abstand zwischen der Düse und den horizontalen Abwärtslinien. Bei einem größeren Abstand haben die diagonalen Abwärtslinien einen weniger spitzen Winkel, was wiederum weniger Aufwärtsverbindungen zur nächsten Schicht zur Folge hat. Dies gilt nur für das Drucken mit Drahtstruktur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Glätten aktivieren"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Gehen Sie ein weiteres Mal über die Oberfläche, jedoch ohne Extrusionsmaterial. Damit wird der Kunststoff auf der Oberfläche weiter geschmolzen, was zu einer glatteren Oberfläche führt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Nur oberste Schicht glätten"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Führen Sie das Glätten nur für die allerletzte Schicht des Meshs aus. Dies spart Zeit, wenn die unteren Schichten keine glatte Oberflächenausführung erfordern."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Glättungsmuster"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Das Muster, das für die Glättung der Oberflächen verwendet wird."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Konzentrisch"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zickzack"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Glättungslinienabstand"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Der Abstand zwischen den Glättungslinien."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Glättungsfluss"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Die Materialmenge relativ zu einer normalen Außenhautlinie, um während des Glättens zu extrudieren. Indem die Düse gefüllt bleibt, können einige Spalten in der oberen Schicht gefüllt werden, allerdings führt zu viel davon zu einer übermäßigen Extrudierung und Markierungen seitlich der Oberfläche."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Glättungseinsatz"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Eine Distanz, die von den Kanten des Modells einzuhalten ist. Die Glättung des gesamten Weges zur Kante des Mesh führt möglicherweise zu einer gezackten Kante Ihres Drucks."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Glättungsgeschwindigkeit"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Die Geschwindigkeit, mit der über die Oberfläche gegangen wird."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Beschleunigung Glättung"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Die Beschleunigung, mit der das Glätten erfolgt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Ruckfunktion glätten"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Die maximale unmittelbare Geschwindigkeitsänderung während des Glättens."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4894,13 +5000,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Transformationsmatrix, die beim Laden aus der Datei auf das Modell angewandt wird."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Extruder für Wand"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Extruder Innenwände"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "Die für das Drucken der Wände verwendete Extruder-Einheit. Diese wird für die Mehrfach-Extrusion benutzt."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "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- Würfel-, Viertelwürfel-, Octahedral- 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."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "Verbindet die Enden, an denen das Füllmuster auf die Innenwand trifft, mithilfe von Linien, die der Form der Innenwand folgen. 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."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Der horizontale Abstand zwischen dem Skirt und der ersten Schicht des Drucks.\n"
|
||||
#~ "Es handelt sich dabei um den Mindestabstand. Ab diesem Abstand werden Skirt-Linien in äußerer Richtung angebracht."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Z-Versatz der ersten Schicht"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "Der Extruder wird um diesen Wert von der normalen Höhe der ersten Schicht versetzt. Das kann positiv (erhöht) oder negativ (abgesenkt) erfolgen. Einige Filamenttypen haften besser am Druckbett, wenn der Extruder leicht erhöht ist."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Z-Versatz Kegelschichten"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Bei Nicht-Null wird der Z-Versatz auf 0 über den zahlreichen Schichten reduziert. Ein Wert von 0 bedeutet, dass der Z-Versatz über alle Schichten des Drucks hinweg konstant bleibt."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "Diese Einstellung definiert, 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."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5116,4 +5254,4 @@ msgstr "Transformationsmatrix, die beim Laden aus der Datei auf das Modell angew
|
|||
|
||||
#~ msgctxt "multiple_mesh_overlap label"
|
||||
#~ msgid "Dual Extrusion Overlap"
|
||||
#~ msgstr "Überlappung duale Extrusion"
|
||||
#~ msgstr "Überlappung duale Extrusion"
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Spanish\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Spanish\n"
|
||||
|
@ -56,7 +56,9 @@ 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"
|
||||
|
@ -68,7 +70,9 @@ 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"
|
||||
|
@ -605,6 +609,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "Altura de capa inicial en mm. Una capa inicial más gruesa se adhiere a la placa de impresión con mayor facilidad."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -755,6 +784,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Perímetro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Extrusor de pared"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "El tren extrusor que se utiliza para imprimir paredes. Se emplea en la extrusión múltiple."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -767,8 +806,8 @@ 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 Walls Extruder"
|
||||
msgstr "Extrusor de paredes interiores"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1200,6 +1239,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Reemplaza la parte más externa del patrón superior/inferior con un número de líneas concéntricas. Mediante el uso de una o dos líneas mejora los techos que comienzan en el material de relleno."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Habilitar alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Pasar por la superficie superior una vez más, pero sin extruir material, para derretir la parte externa del plástico y crear una superficie más lisa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Planchar solo la capa superior"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Planchar únicamente la última capa de la malla. De este modo se ahorra tiempo si las capas inferiores no requieren un acabado superficial suave."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Patrón de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "El patrón que se usará para el alisado de las superficies superiores."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concéntrico"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zigzag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Espaciado de líneas del alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Distancia entre las líneas del alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Flujo de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Cantidad de material (relativa a la línea del forro normal) que se extruye durante el alisado. Dejar la tobera llena permite rellenar algunas grietas de la superficie, pero llenarla demasiado puede provocar la sobrextrusión y afectar a la superficie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Inserción de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Distancia que debe guardarse desde el borde del modelo. Si se alisa hasta el borde de la malla, puede quedar un borde irregular."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Velocidad de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Velocidad a la que pasa por encima de la superficie superior."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Aceleración del alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "La aceleración a la que se produce el alisado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Impulso de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Cambio en la velocidad instantánea máxima durante el alisado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1247,8 +1386,8 @@ 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, cubic, octet, quarter cubic 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 "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, cúbico, de octeto, cúbico bitruncado 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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1265,6 +1404,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Triángulos"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1317,8 +1461,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
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 reduce el efecto del relleno sobre la calidad de las superficies verticales. Deshabilitar este ajuste reduce la cantidad de material utilizado."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1330,6 +1474,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Una lista de los valores enteros de las direcciones de línea. Los elementos de esta lista se utilizan de forma secuencial a medida que las capas se utilizan y, cuando se alcanza el final, la lista vuelve a comenzar desde el principio. Los elementos de la lista están separados por comas y toda la lista aparece entre corchetes. El valor predeterminado es una lista vacía que utiliza los ángulos predeterminados típicos (45 y 135 grados para las líneas y los patrones en zigzag y 45 grados para el resto de patrones)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1640,6 +1804,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Ajusta el diámetro del filamento utilizado. Este valor debe coincidir con el diámetro del filamento utilizado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2830,36 +3014,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Conectar los zigzags. Esto aumentará la resistencia de la estructura del soporte de zigzag."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Descomponer el soporte en pedazos"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Omitir algunas conexiones de línea de soporte para que la estructura de soporte sea más fácil de descomponer. Este ajuste es aplicable al patrón de relleno del soporte en zigzag."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Tamaño de los pedazos de soporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Omitir una conexión entre líneas de soporte una vez cada N milímetros a fin de lograr que la estructura de soporte resulte más fácil de descomponer."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Recuento de líneas de pedazos del soporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Omitir una de cada N líneas de conexión para que la estructura de soporte se descomponga fácilmente."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3399,8 +3553,8 @@ msgstr "Distancia de falda"
|
|||
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 "La distancia horizontal entre la falda y la primera capa de la impresión.\nEsta es la distancia mínima; múltiples líneas de falda se extenderán hacia el exterior a partir de esta distancia."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3442,26 +3596,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Imprimir solo el borde en el exterior del modelo. Esto reduce el número de bordes que deberá retirar después sin que la adherencia a la plataforma se vea muy afectada."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Desplazamiento Z de la capa inicial"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "El extrusor se desplaza de la altura normal de la primera capa con este valor, el cual puede ser positivo (elevado) o negativo (bajo). Algunas clases de filamentos se adhieren mejor a la placa de impresión si se levanta ligeramente el extrusor."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Desplazamiento Z de capas en disminución"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Si no es cero, el desplazamiento Z se reduce a cero en las capas. Un valor de cero implica que el desplazamiento Z se mantiene constante en todas las capas de impresión."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3479,8 +3613,8 @@ msgstr "Suavizado de la balsa"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3952,6 +4086,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Normalmente, Cura intenta coser los pequeños agujeros de la malla y eliminar las partes de una capa con grandes agujeros. Al habilitar esta opción se mantienen aquellas partes que no puedan coserse. Esta opción se debe utilizar como una opción de último recurso cuando todo lo demás falla para producir un GCode adecuado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3982,6 +4126,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Cambiar la malla a la que pertenecerán los volúmenes que se cruzan en cada capa, de forma que las mallas superpuestas se entrelacen. Desactivar esta opción dará lugar a que una de las mallas reciba todo el volumen de la superposición y que este se elimine de las demás mallas."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4187,6 +4341,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Optimizar el orden en el que se imprimen las paredes a fin de reducir el número de retracciones y la distancia recorrida. La mayoría de los componentes se beneficiarán si este ajuste está habilitado pero, en algunos casos, se puede tardar más, por lo que deben compararse las previsiones de tiempo de impresión con y sin optimización."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Descomponer el soporte en pedazos"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Omitir algunas conexiones de línea de soporte para que la estructura de soporte sea más fácil de descomponer. Este ajuste es aplicable al patrón de relleno del soporte en zigzag."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Tamaño de los pedazos de soporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Omitir una conexión entre líneas de soporte una vez cada N milímetros a fin de lograr que la estructura de soporte resulte más fácil de descomponer."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Recuento de líneas de pedazos del soporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Omitir una de cada N líneas de conexión para que la estructura de soporte se descomponga fácilmente."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4477,6 +4661,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Distancia media entre los puntos aleatorios introducidos en cada segmento de línea. Tenga en cuenta que los puntos originales del polígono se descartan, así que un suavizado alto produce una reducción de la resolución. Este valor debe ser mayor que la mitad del grosor del forro difuso."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4627,7 +4831,9 @@ 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.\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."
|
||||
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."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
@ -4734,106 +4940,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Distancia entre la tobera y líneas descendentes en horizontal. Cuanto mayor sea la holgura, menos pronunciado será el ángulo de las líneas descendentes en diagonal, lo que a su vez se traduce en menos conexiones ascendentes con la siguiente capa. Solo se aplica a la impresión de alambre."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Habilitar alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Pasar por la superficie superior una vez más, pero sin extruir material, para derretir la parte externa del plástico y crear una superficie más lisa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Planchar solo la capa superior"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Planchar únicamente la última capa de la malla. De este modo se ahorra tiempo si las capas inferiores no requieren un acabado superficial suave."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Patrón de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "El patrón que se usará para el alisado de las superficies superiores."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concéntrico"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zigzag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Espaciado de líneas del alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Distancia entre las líneas del alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Flujo de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Cantidad de material (relativa a la línea del forro normal) que se extruye durante el alisado. Dejar la tobera llena permite rellenar algunas grietas de la superficie, pero llenarla demasiado puede provocar la sobrextrusión y afectar a la superficie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Inserción de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Distancia que debe guardarse desde el borde del modelo. Si se alisa hasta el borde de la malla, puede quedar un borde irregular."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Velocidad de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Velocidad a la que pasa por encima de la superficie superior."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Aceleración del alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "La aceleración a la que se produce el alisado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Impulso de alisado"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Cambio en la velocidad instantánea máxima durante el alisado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4894,13 +5000,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Matriz de transformación que se aplicará al modelo cuando se cargue desde el archivo."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Extrusor de pared"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Extrusor de paredes interiores"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "El tren extrusor que se utiliza para imprimir paredes. Se emplea en la extrusión múltiple."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "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, cúbico, de octeto, cúbico bitruncado 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."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ 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 reduce el efecto del relleno sobre la calidad de las superficies verticales. Deshabilitar este ajuste reduce la cantidad de material utilizado."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "La distancia horizontal entre la falda y la primera capa de la impresión.\n"
|
||||
#~ "Esta es la distancia mínima; múltiples líneas de falda se extenderán hacia el exterior a partir de esta distancia."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Desplazamiento Z de la capa inicial"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "El extrusor se desplaza de la altura normal de la primera capa con este valor, el cual puede ser positivo (elevado) o negativo (bajo). Algunas clases de filamentos se adhieren mejor a la placa de impresión si se levanta ligeramente el extrusor."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Desplazamiento Z de capas en disminución"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Si no es cero, el desplazamiento Z se reduce a cero en las capas. Un valor de cero implica que el desplazamiento Z se mantiene constante en todas las capas de impresión."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "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."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5116,4 +5254,4 @@ msgstr "Matriz de transformación que se aplicará al modelo cuando se cargue de
|
|||
|
||||
#~ msgctxt "multiple_mesh_overlap label"
|
||||
#~ msgid "Dual Extrusion Overlap"
|
||||
#~ msgstr "Superposición de extrusión doble"
|
||||
#~ msgstr "Superposición de extrusión doble"
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"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: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"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: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
|
@ -651,6 +651,38 @@ msgid ""
|
|||
"adhesion to the build plate easier."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -809,6 +841,18 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid ""
|
||||
"The extruder train used for printing the walls. This is used in multi-"
|
||||
"extrusion."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -823,7 +867,7 @@ msgstr ""
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
|
@ -1339,6 +1383,117 @@ msgid ""
|
|||
"material."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid ""
|
||||
"Go over the top surface one additional time, but without extruding material. "
|
||||
"This is meant to melt the plastic on top further, creating a smoother "
|
||||
"surface."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid ""
|
||||
"Only perform ironing on the very last layer of the mesh. This saves time if "
|
||||
"the lower layers don't need a smooth surface finish."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid ""
|
||||
"The amount of material, relative to a normal skin line, to extrude during "
|
||||
"ironing. Keeping the nozzle filled helps filling some of the crevices of the "
|
||||
"top surface, but too much results in overextrusion and blips on the side of "
|
||||
"the surface."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid ""
|
||||
"A distance to keep from the edges of the model. Ironing all the way to the "
|
||||
"edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1392,9 +1547,10 @@ 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, cubic, octet, quarter cubic 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."
|
||||
"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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
|
@ -1412,6 +1568,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1465,9 +1626,9 @@ msgstr ""
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid ""
|
||||
"Connect the ends where the infill pattern meets the inner wall using a lines "
|
||||
"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 reduces the effects on infill on "
|
||||
"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 ""
|
||||
|
@ -1488,6 +1649,26 @@ msgid ""
|
|||
"lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1875,6 +2056,26 @@ msgid ""
|
|||
"diameter of the used filament."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -3253,42 +3454,6 @@ msgid ""
|
|||
"structure."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid ""
|
||||
"Skip some support line connections to make the support structure easier to "
|
||||
"break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid ""
|
||||
"Leave out a connection between support lines once every N millimeter to make "
|
||||
"the support structure easier to break away."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid ""
|
||||
"Skip one in every N connection lines to make the support structure easier to "
|
||||
"break away."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3913,7 +4078,7 @@ msgstr ""
|
|||
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 is the minimum distance. Multiple skirt lines will extend outwards from "
|
||||
"this distance."
|
||||
msgstr ""
|
||||
|
||||
|
@ -3969,32 +4134,6 @@ msgid ""
|
|||
"that much."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid ""
|
||||
"The extruder is offset from the normal height of the first layer by this "
|
||||
"amount. It can be positive (raised) or negative (lowered). Some filament "
|
||||
"types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid ""
|
||||
"When non-zero, the Z offset is reduced to 0 over that many layers. A value "
|
||||
"of 0 means that the Z offset remains constant for all the layers in the "
|
||||
"print."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -4016,10 +4155,10 @@ msgstr ""
|
|||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid ""
|
||||
"This setting control 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."
|
||||
"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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
|
@ -4560,6 +4699,20 @@ msgid ""
|
|||
"everything else fails to produce proper GCode."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -4598,6 +4751,19 @@ msgid ""
|
|||
"is removed from the other meshes."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4852,6 +5018,42 @@ msgid ""
|
|||
"time estimates with and without optimization."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid ""
|
||||
"Skip some support line connections to make the support structure easier to "
|
||||
"break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid ""
|
||||
"Leave out a connection between support lines once every N millimeter to make "
|
||||
"the support structure easier to break away."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid ""
|
||||
"Skip one in every N connection lines to make the support structure easier to "
|
||||
"break away."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -5210,6 +5412,26 @@ msgid ""
|
|||
"higher than half the Fuzzy Skin Thickness."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -5523,117 +5745,6 @@ msgid ""
|
|||
"applies to Wire Printing."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid ""
|
||||
"Go over the top surface one additional time, but without extruding material. "
|
||||
"This is meant to melt the plastic on top further, creating a smoother "
|
||||
"surface."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid ""
|
||||
"Only perform ironing on the very last layer of the mesh. This saves time if "
|
||||
"the lower layers don't need a smooth surface finish."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid ""
|
||||
"The amount of material, relative to a normal skin line, to extrude during "
|
||||
"ironing. Keeping the nozzle filled helps filling some of the crevices of the "
|
||||
"top surface, but too much results in overextrusion and blips on the side of "
|
||||
"the surface."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid ""
|
||||
"A distance to keep from the edges of the model. Ironing all the way to the "
|
||||
"edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Finnish\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Finnish\n"
|
||||
|
@ -56,7 +56,9 @@ msgctxt "machine_start_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very start - separated by \n"
|
||||
"."
|
||||
msgstr "GCode-komennot, jotka suoritetaan aivan alussa – eroteltuina merkillä \n."
|
||||
msgstr ""
|
||||
"GCode-komennot, jotka suoritetaan aivan alussa – eroteltuina merkillä \n"
|
||||
"."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "machine_end_gcode label"
|
||||
|
@ -68,7 +70,9 @@ msgctxt "machine_end_gcode description"
|
|||
msgid ""
|
||||
"Gcode commands to be executed at the very end - separated by \n"
|
||||
"."
|
||||
msgstr "GCode-komennot, jotka suoritetaan aivan lopussa – eroteltuina merkillä \n."
|
||||
msgstr ""
|
||||
"GCode-komennot, jotka suoritetaan aivan lopussa – eroteltuina merkillä \n"
|
||||
"."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_guid label"
|
||||
|
@ -605,6 +609,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "Alkukerroksen korkeus milleinä. Paksumpi alkukerros helpottaa alustaan kiinnittymistä."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -755,6 +784,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Kuori"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Seinämien suulake"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "Seinämien tulostukseen käytettävä suulakeryhmä. Tätä käytetään monipursotuksessa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -767,8 +806,8 @@ msgstr "Ulkoseinämän tulostukseen käytettävä suulakeryhmä. Tätä käytet
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "Sisäseinämien suulake"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1200,6 +1239,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Korvaa ylä-/alakuvion uloimman osan samankeskisillä linjoilla. Yhden tai kahden linjan käyttäminen parantaa kattoja, jotka alkavat täyttömateriaalin keskeltä."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Ota silitys käyttöön"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Yläpinnan läpikäynti yhden ylimääräisen kerran ilman materiaalin pursotusta. Tämän tarkoitus on sulattaa yläosan muovia enemmän, jolloin saadaan sileämpi pinta."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Silitä vain korkein kerros"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Suorita silitys vain verkon viimeisessä kerroksessa. Tämä säästää aikaa, jos alemmat kerrokset eivät edellytä sileää pintaviimeistelyä."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Silityskuvio"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Yläpintojen silitykseen käytettävä kuvio."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Samankeskinen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Siksak"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Silityksen linjajako"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Silityslinjojen välinen etäisyys."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Silitysvirtaus"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Silityksen aikana pursotettavan materiaalin määrä suhteessa normaaliin pintakalvon linjaan. Suuttimen pitäminen täytettynä auttaa joidenkin yläpinnan halkeamien täyttämisessä, mutta liiallinen määrä johtaa ylipursotukseen ja täpliin pinnan sivulla."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Silitysliitos"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Etäisyys mallin reunoihin. Silitys verkon reunoihin saakka voi johtaa rosoiseen reunaan tulosteessa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Silitysnopeus"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Yläpinnan ylikulkuun käytettävä nopeus."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Silityksen kiihtyvyys"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Kiihtyvyys, jolla silitys suoritetaan."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Silityksen nykäisy"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Silityksen aikainen nopeuden hetkellinen maksimimuutos."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1247,8 +1386,8 @@ msgstr "Täyttökuvio"
|
|||
|
||||
#: 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, cubic, octet, quarter cubic 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 "Tulostettava täyttömateriaalin kuvio. Linja- ja siksak-täytöt vaihtavat suuntaa kerrosten välillä, mikä vähentää materiaalikustannuksia. Ristikko-, kolmio-, kuutio-, oktetti-, neljänneskuutio- ja samankeskinen-kuviot tulostetaan kokonaisuudessaan kuhunkin kerrokseen. Kuutio-, neljänneskuutio- ja oktettitäytöt muuttuvat kerroksittain, jotta vahvuus jakautuu tasaisemmin kussakin suunnassa."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1265,6 +1404,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Kolmiot"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1317,8 +1461,8 @@ msgstr "Yhdistä täyttölinjat"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "Yhdistä päät, joissa täyttökuvio kohtaa sisäseinämän käyttämällä linjoja, jotka seuraavat sisäseinämän muotoa. Tämän asetuksen ottaminen käyttöön voi saada täytön tarttumaan seinämiin paremmin ja vähentää täytön vaikutusta pystypintojen laatuun. Tämän asetuksen poistaminen käytöstä vähentää käytettävän materiaalin määrää."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1330,6 +1474,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Luettelo käytettävistä linjojen kokonaislukusuunnista. Tämän luettelon elementtejä käytetään järjestyksessä kerrosten edetessä, ja kun luettelon loppu saavutetaan, aloitetaan taas alusta. Luettelon kohteet on erotettu pilkuilla, ja koko luettelo on hakasulkeiden sisällä. Oletusarvo on tyhjä luettelo, jolloin käytetään perinteisiä oletuskulmia (45 ja 135 astetta linja- ja siksak-kuvioille ja 45 astetta muille kuvioille)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1640,6 +1804,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Säätää käytetyn tulostuslangan halkaisijaa. Määritä tämä arvo vastaamaan käytetyn tulostuslangan halkaisijaa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2830,36 +3014,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Yhdistä siksakit. Tämä lisää siksak-tukirakenteen lujuutta."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Riko tuki lohkoihin"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Ohita jotkin tukilinjojen yhdistämiset, jotta tukirakenne on helpompi rikkoa. Tämä asetus soveltuu siksak-tukitäyttökuvioon."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Tukilohkon koko"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Jätä tukilinjojen välinen yhdistäminen pois joka N. millimetri, jotta tukirakenne on helpompi rikkoa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Tukilohkolinjaluku"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Ohita joka N. yhdistämislinja, jotta tukirakenne on helpompi rikkoa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3399,8 +3553,8 @@ msgstr "Helman etäisyys"
|
|||
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 "Vaakasuora etäisyys helman ja tulosteen ensimmäisen kerroksen välillä.\nTämä on minimietäisyys; useampia helmalinjoja käytettäessä ne ulottuvat tämän etäisyyden ulkopuolelle."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3442,26 +3596,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Tulostaa reunuksen vain mallin ulkopuolelle. Tämä vähentää myöhemmin poistettavan reunuksen määrää, mutta se ei juurikaan vähennä pöydän tarttuvuutta."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Alkukerroksen Z-siirtymä"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "Suulaketta siirretään ensimmäisen kerroksen normaalista korkeudesta tällä määrällä. Se voi olla positiivinen (nostettu) tai negatiivinen (laskettu). Jotkin tulostuslankatyypit tarttuvat alustaan paremmin, jos suulaketta nostetaan hieman."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Z-siirtymän kapenevat kerrokset"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Kun tämä ei ole nolla, Z-siirtymä pienenee nollaan niin monen kerroksen matkalla. Kun arvo on 0, Z-siirtymä pysyy vakiona kaikille tulostuksen kerroksille."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3479,8 +3613,8 @@ msgstr "Pohjaristikon tasoitus"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "Tällä asetuksella säädetään, kuinka paljon pohjaristikon ulkolinjan sisäkulmia pyöristetään. Sisäpuoliset kulmat pyöristetään puoliympyräksi, jonka säde on yhtä suuri kuin tässä annettu arvo. Asetuksella myös poistetaan pohjaristikon ulkolinjan reiät, jotka ovat pienempiä kuin tällainen ympyrä."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3952,6 +4086,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Normaalisti Cura yrittää silmukoida umpeen pieniä reikiä verkosta ja poistaa kerroksesta osat, joissa on isoja reikiä. Tämän vaihtoehdon käyttöönotto pitää ne osat, joita ei voida silmukoida. Tätä tulisi pitää viimeisenä vaihtoehtona, kun millään muulla ei saada aikaan kunnollista GCodea."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3982,6 +4126,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Määrittää, mitkä verkon leikkaustilavuudet kuuluvat jokaiseen kerrokseen, jotta limittäiset verkot yhdistetään. Jos tämä asetus poistetaan käytöstä, yksi verkoista saa kaiken tilavuuden limityksessä, ja verkko poistetaan muista verkoista."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4187,6 +4341,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Optimoi seinämien tulostusjärjestys takaisinvetojen ja kuljetun etäisyyden vähentämiseksi. Useimmat osat hyötyvät tämän asetuksen käytöstä, mutta joissakin saattaa kestää kauemmin, joten vertaa tulostusajan arvioita optimointia käytettäessä ja ilman sitä."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Riko tuki lohkoihin"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Ohita jotkin tukilinjojen yhdistämiset, jotta tukirakenne on helpompi rikkoa. Tämä asetus soveltuu siksak-tukitäyttökuvioon."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Tukilohkon koko"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Jätä tukilinjojen välinen yhdistäminen pois joka N. millimetri, jotta tukirakenne on helpompi rikkoa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Tukilohkolinjaluku"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Ohita joka N. yhdistämislinja, jotta tukirakenne on helpompi rikkoa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4477,6 +4661,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Keskimääräinen etäisyys kunkin linjasegmentin satunnaisten pisteiden välillä. Huomaa, että alkuperäiset monikulmion pisteet poistetaan käytöstä, joten korkea sileysarvo alentaa resoluutiota. Tämän arvon täytyy olla suurempi kuin puolet karhean pintakalvon paksuudesta."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4627,7 +4831,9 @@ 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 "Puolella nopeudella pursotetun nousuliikkeen etäisyys.\nSe voi parantaa tarttuvuutta edellisiin kerroksiin kuumentamatta materiaalia liikaa kyseisissä kerroksissa. Koskee vain rautalankamallin tulostusta."
|
||||
msgstr ""
|
||||
"Puolella nopeudella pursotetun nousuliikkeen etäisyys.\n"
|
||||
"Se voi parantaa tarttuvuutta edellisiin kerroksiin kuumentamatta materiaalia liikaa kyseisissä kerroksissa. Koskee vain rautalankamallin tulostusta."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
@ -4734,106 +4940,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Suuttimen ja vaakasuoraan laskevien linjojen välinen etäisyys. Suurempi väli aiheuttaa vähemmän jyrkän kulman diagonaalisesti laskeviin linjoihin, mikä puolestaan johtaa harvempiin yläliitoksiin seuraavan kerroksen kanssa. Koskee vain rautalankamallin tulostusta."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Ota silitys käyttöön"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Yläpinnan läpikäynti yhden ylimääräisen kerran ilman materiaalin pursotusta. Tämän tarkoitus on sulattaa yläosan muovia enemmän, jolloin saadaan sileämpi pinta."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Silitä vain korkein kerros"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Suorita silitys vain verkon viimeisessä kerroksessa. Tämä säästää aikaa, jos alemmat kerrokset eivät edellytä sileää pintaviimeistelyä."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Silityskuvio"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Yläpintojen silitykseen käytettävä kuvio."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Samankeskinen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Siksak"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Silityksen linjajako"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Silityslinjojen välinen etäisyys."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Silitysvirtaus"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Silityksen aikana pursotettavan materiaalin määrä suhteessa normaaliin pintakalvon linjaan. Suuttimen pitäminen täytettynä auttaa joidenkin yläpinnan halkeamien täyttämisessä, mutta liiallinen määrä johtaa ylipursotukseen ja täpliin pinnan sivulla."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Silitysliitos"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Etäisyys mallin reunoihin. Silitys verkon reunoihin saakka voi johtaa rosoiseen reunaan tulosteessa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Silitysnopeus"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Yläpinnan ylikulkuun käytettävä nopeus."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Silityksen kiihtyvyys"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Kiihtyvyys, jolla silitys suoritetaan."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Silityksen nykäisy"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Silityksen aikainen nopeuden hetkellinen maksimimuutos."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4894,13 +5000,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Mallissa käytettävä muunnosmatriisi, kun malli ladataan tiedostosta."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Seinämien suulake"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Sisäseinämien suulake"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "Seinämien tulostukseen käytettävä suulakeryhmä. Tätä käytetään monipursotuksessa."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "Tulostettava täyttömateriaalin kuvio. Linja- ja siksak-täytöt vaihtavat suuntaa kerrosten välillä, mikä vähentää materiaalikustannuksia. Ristikko-, kolmio-, kuutio-, oktetti-, neljänneskuutio- ja samankeskinen-kuviot tulostetaan kokonaisuudessaan kuhunkin kerrokseen. Kuutio-, neljänneskuutio- ja oktettitäytöt muuttuvat kerroksittain, jotta vahvuus jakautuu tasaisemmin kussakin suunnassa."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "Yhdistä päät, joissa täyttökuvio kohtaa sisäseinämän käyttämällä linjoja, jotka seuraavat sisäseinämän muotoa. Tämän asetuksen ottaminen käyttöön voi saada täytön tarttumaan seinämiin paremmin ja vähentää täytön vaikutusta pystypintojen laatuun. Tämän asetuksen poistaminen käytöstä vähentää käytettävän materiaalin määrää."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Vaakasuora etäisyys helman ja tulosteen ensimmäisen kerroksen välillä.\n"
|
||||
#~ "Tämä on minimietäisyys; useampia helmalinjoja käytettäessä ne ulottuvat tämän etäisyyden ulkopuolelle."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Alkukerroksen Z-siirtymä"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "Suulaketta siirretään ensimmäisen kerroksen normaalista korkeudesta tällä määrällä. Se voi olla positiivinen (nostettu) tai negatiivinen (laskettu). Jotkin tulostuslankatyypit tarttuvat alustaan paremmin, jos suulaketta nostetaan hieman."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Z-siirtymän kapenevat kerrokset"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Kun tämä ei ole nolla, Z-siirtymä pienenee nollaan niin monen kerroksen matkalla. Kun arvo on 0, Z-siirtymä pysyy vakiona kaikille tulostuksen kerroksille."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "Tällä asetuksella säädetään, kuinka paljon pohjaristikon ulkolinjan sisäkulmia pyöristetään. Sisäpuoliset kulmat pyöristetään puoliympyräksi, jonka säde on yhtä suuri kuin tässä annettu arvo. Asetuksella myös poistetaan pohjaristikon ulkolinjan reiät, jotka ovat pienempiä kuin tällainen ympyrä."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5116,4 +5254,4 @@ msgstr "Mallissa käytettävä muunnosmatriisi, kun malli ladataan tiedostosta."
|
|||
|
||||
#~ msgctxt "multiple_mesh_overlap label"
|
||||
#~ msgid "Dual Extrusion Overlap"
|
||||
#~ msgstr "Kaksoispursotuksen limitys"
|
||||
#~ msgstr "Kaksoispursotuksen limitys"
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: French\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: French\n"
|
||||
|
@ -56,7 +56,9 @@ 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"
|
||||
|
@ -68,7 +70,9 @@ 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"
|
||||
|
@ -605,6 +609,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "La hauteur de la couche initiale en mm. Une couche initiale plus épaisse adhère plus facilement au plateau."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -755,6 +784,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Coque"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Extrudeuse de paroi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "Le train d'extrudeuse utilisé pour l'impression des parois. Cela est utilisé en multi-extrusion."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -767,8 +806,8 @@ msgstr "Le train d'extrudeuse utilisé pour l'impression des parois externes. Ce
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "Extrudeuse de parois internes"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1200,6 +1239,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Remplace la partie la plus externe du motif du dessus/dessous par un certain nombre de lignes concentriques. Le fait d'utiliser une ou deux lignes améliore les plafonds qui commencent sur du matériau de remplissage."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Activer l'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Aller au-dessus de la surface supérieure une fois supplémentaire, mais sans extruder de matériau. Cela signifie de faire fondre le plastique en haut un peu plus, pour créer une surface lisse."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "N'étirer que la couche supérieure"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "N'exécute un étirage que sur l'ultime couche du maillage. Ceci économise du temps si les couches inférieures ne nécessitent pas de fini lisse de surface."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Motif d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Le motif à utiliser pour étirer les surfaces supérieures."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concentrique"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zig Zag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Interligne de l'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "La distance entre les lignes d'étirage."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Flux d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "La quantité de matériau, relative à une ligne de couche extérieure normale, à extruder pendant l'étirage. Le fait de garder la buse pleine aide à remplir certaines des crevasses de la surface supérieure ; mais si la quantité est trop importante, cela entraînera une surextrusion et l'apparition de coupures sur le côté de la surface."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Insert d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Distance à garder à partir des bords du modèle. Étirer jusqu'au bord de la maille peut entraîner l'apparition d'un bord denté sur votre impression."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Vitesse d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "La vitesse à laquelle passer sur la surface supérieure."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Accélération d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "L'accélération selon laquelle l'étirage est effectué."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Saccade d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Le changement instantané maximal de vitesse lors de l'étirage."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1247,8 +1386,8 @@ 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, cubic, octet, quarter cubic 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 "Le 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, octaédriques, quart cubiques et concentriques sont entièrement imprimés sur chaque couche. Le remplissage cubique, quart cubique et octaédrique change à chaque couche afin d'offrir une répartition plus égale de la solidité dans chaque direction."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1265,6 +1404,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Triangles"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1317,8 +1461,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "Relie les extrémités où le motif de remplissage touche la paroi interne, à l'aide de lignes é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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1330,6 +1474,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles traditionnels par défaut seront utilisés (45 et 135 degrés pour les motifs en lignes et en zig zag et 45 degrés pour tout autre motif)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1640,6 +1804,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Ajuste le diamètre du filament utilisé. Faites correspondre cette valeur au diamètre du filament utilisé."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2830,36 +3014,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Relie les zigzags. Cela augmente la solidité des supports en zigzag."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Démantèlement du support en morceaux"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Ignorer certaines connexions de ligne du support pour rendre la structure de support plus facile à casser. Ce paramètre s'applique au motif de remplissage du support en zigzag."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Taille de morceaux du support"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Ignorer une connexion entre lignes du support tous les N millimètres, pour rendre la structure de support plus facile à casser."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Comptage des lignes de morceaux du support"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Ignorer une ligne de connexion sur N pour rendre la structure de support plus facile à casser."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3399,8 +3553,8 @@ msgstr "Distance de la jupe"
|
|||
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 "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."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3442,26 +3596,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Imprimer uniquement la bordure sur l'extérieur du modèle. Cela réduit la quantité de bordure que vous devez retirer par la suite, sans toutefois véritablement réduire l'adhérence au plateau."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Décalage en Z de la couche initiale"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "L'extrudeuse est décalée de cette valeur à partir de la hauteur normale de la première couche. Elle peut être positive (relevée) ou négative (abaissée). Certains types de filament adhèrent mieux au plateau si l'extrudeuse est légèrement relevée."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Couches biseautées de décalage en Z"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Si non nul, le décalage en Z est ramené à 0 sur un grand nombre de couches. Une valeur égale à 0 signifie que le décalage en Z reste constant pour toutes les couches de l'impression."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3479,8 +3613,8 @@ msgstr "Lissage de radeau"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3952,6 +4086,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Normalement, Cura essaye de raccommoder les petits trous dans le maillage et supprime les parties des couches contenant de gros trous. Activer cette option pousse Cura à garder les parties qui ne peuvent être raccommodées. Cette option doit être utilisée en dernier recours quand tout le reste échoue à produire un GCode correct."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3982,6 +4126,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Passe aux volumes d'intersection de maille qui appartiennent à chaque couche, de manière à ce que les mailles qui se chevauchent soient entrelacées. Si vous désactivez ce paramètre, l'une des mailles obtiendra tout le volume dans le chevauchement tandis qu'il est retiré des autres mailles."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4187,6 +4341,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Optimiser l'ordre dans lequel des parois sont imprimées de manière à réduire le nombre de retraits et les distances parcourues. La plupart des pièces bénéficieront de cette possibilité, mais certaines peuvent en fait prendre plus de temps à l'impression ; veuillez dès lors comparer les estimations de durée d'impression avec et sans optimisation."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Démantèlement du support en morceaux"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Ignorer certaines connexions de ligne du support pour rendre la structure de support plus facile à casser. Ce paramètre s'applique au motif de remplissage du support en zigzag."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Taille de morceaux du support"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Ignorer une connexion entre lignes du support tous les N millimètres, pour rendre la structure de support plus facile à casser."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Comptage des lignes de morceaux du support"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Ignorer une ligne de connexion sur N pour rendre la structure de support plus facile à casser."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4477,6 +4661,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Distance moyenne entre les points ajoutés aléatoirement sur chaque segment de ligne. Il faut noter que les points originaux du polygone ne sont plus pris en compte donc un fort lissage conduira à une diminution de la résolution. Cette valeur doit être supérieure à la moitié de l'épaisseur de la couche floue."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4627,7 +4831,9 @@ 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.\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."
|
||||
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."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
@ -4734,106 +4940,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Distance entre la buse et les lignes descendantes horizontalement. Un espacement plus important génère des lignes diagonalement descendantes avec un angle moins abrupt, qui génère alors des connexions moins ascendantes avec la couche suivante. Uniquement applicable à l'impression filaire."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Activer l'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Aller au-dessus de la surface supérieure une fois supplémentaire, mais sans extruder de matériau. Cela signifie de faire fondre le plastique en haut un peu plus, pour créer une surface lisse."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "N'étirer que la couche supérieure"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "N'exécute un étirage que sur l'ultime couche du maillage. Ceci économise du temps si les couches inférieures ne nécessitent pas de fini lisse de surface."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Motif d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Le motif à utiliser pour étirer les surfaces supérieures."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concentrique"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zig Zag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Interligne de l'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "La distance entre les lignes d'étirage."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Flux d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "La quantité de matériau, relative à une ligne de couche extérieure normale, à extruder pendant l'étirage. Le fait de garder la buse pleine aide à remplir certaines des crevasses de la surface supérieure ; mais si la quantité est trop importante, cela entraînera une surextrusion et l'apparition de coupures sur le côté de la surface."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Insert d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Distance à garder à partir des bords du modèle. Étirer jusqu'au bord de la maille peut entraîner l'apparition d'un bord denté sur votre impression."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Vitesse d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "La vitesse à laquelle passer sur la surface supérieure."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Accélération d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "L'accélération selon laquelle l'étirage est effectué."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Saccade d'étirage"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Le changement instantané maximal de vitesse lors de l'étirage."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4894,13 +5000,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Matrice de transformation à appliquer au modèle lors de son chargement depuis le fichier."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Extrudeuse de paroi"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Extrudeuse de parois internes"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "Le train d'extrudeuse utilisé pour l'impression des parois. Cela est utilisé en multi-extrusion."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "Le 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, octaédriques, quart cubiques et concentriques sont entièrement imprimés sur chaque couche. Le remplissage cubique, quart cubique et octaédrique change à chaque couche afin d'offrir une répartition plus égale de la solidité dans chaque direction."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "Relie les extrémités où le motif de remplissage touche la paroi interne, à l'aide de lignes é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."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "La distance horizontale entre la jupe et la première couche de l’impression.\n"
|
||||
#~ "Il 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."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Décalage en Z de la couche initiale"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "L'extrudeuse est décalée de cette valeur à partir de la hauteur normale de la première couche. Elle peut être positive (relevée) ou négative (abaissée). Certains types de filament adhèrent mieux au plateau si l'extrudeuse est légèrement relevée."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Couches biseautées de décalage en Z"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Si non nul, le décalage en Z est ramené à 0 sur un grand nombre de couches. Une valeur égale à 0 signifie que le décalage en Z reste constant pour toutes les couches de l'impression."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "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."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5116,4 +5254,4 @@ msgstr "Matrice de transformation à appliquer au modèle lors de son chargement
|
|||
|
||||
#~ msgctxt "multiple_mesh_overlap label"
|
||||
#~ msgid "Dual Extrusion Overlap"
|
||||
#~ msgstr "Chevauchement de double extrusion"
|
||||
#~ msgstr "Chevauchement de double extrusion"
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Italian\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Italian\n"
|
||||
|
@ -56,7 +56,9 @@ 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"
|
||||
|
@ -68,7 +70,9 @@ 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"
|
||||
|
@ -605,6 +609,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "Indica l’altezza dello strato iniziale in mm. Uno strato iniziale più spesso facilita l’adesione al piano di stampa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -755,6 +784,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Guscio"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Estrusore pareti"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "Treno estrusore utilizzato per stampare le pareti. Si utilizza nell'estrusione multipla."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -767,8 +806,8 @@ msgstr "Treno estrusore utilizzato per stampare la parete esterna. Si utilizza n
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "Estrusore parete interna"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1200,6 +1239,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Sostituisce la parte più esterna della configurazione degli strati superiori/inferiori con una serie di linee concentriche. L’utilizzo di una o due linee migliora le parti superiori (tetti) che iniziano sul materiale di riempimento."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Abilita stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Ulteriore passaggio sopra la superficie superiore, senza estrusione di materiale. Ha lo scopo di fondere ulteriormente la plastica alla sommità, creando una superficie più uniforme."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Stiramento del solo strato più elevato"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Effettua lo stiramento solo dell'ultimissimo strato della maglia. È possibile quindi risparmiare tempo se gli strati inferiori non richiedono una finitura con superficie liscia."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Configurazione di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Configurazione utilizzata per la stiratura della superficie superiore."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concentrica"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zig Zag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Spaziatura delle linee di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Distanza tra le linee di stiratura."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Flusso di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Quantità di materiale, relativo ad una normale linea del rivestimento, da estrudere durante la stiratura. Mantenere l'ugello pieno aiuta a riempire alcune delle fessure presenti sulla superficie superiore, ma una quantità eccessiva comporta un'estrusione eccessiva con conseguente puntinatura sui lati della superficie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Inserto di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Distanza da mantenere dai bordi del modello. La stiratura fino in fondo sino al bordo del reticolo può causare la formazione di un bordo frastagliato nella stampa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Velocità di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Velocità alla quale passare sopra la superficie superiore"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Accelerazione di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "L’accelerazione con cui viene effettuata la stiratura."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Jerk stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Indica la variazione della velocità istantanea massima durante la stiratura."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1247,8 +1386,8 @@ 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, cubic, octet, quarter cubic 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 "Configurazione del materiale di riempimento della stampa. Il riempimento a linea e zig zag su strati alternati riduce il costo del materiale. Le configurazioni a griglia, triangolo, a cubo, ottagonale, a quarto di cubo e concentrica comportano la stampa completa in ogni strato. Il riempimento a cubi, a quarto di cubo e a ottagonale cambia a ogni strato per consentire una distribuzione più uniforme della resistenza in ogni direzione."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1265,6 +1404,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Triangoli"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1317,8 +1461,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "Collega le estremità in cui la configurazione del riempimento incontra la parete interna utilizzando linee che seguono il profilo della parete interna stessa. Consentendo tale configurazione è possibile fare in modo che il riempimento aderisca meglio alle pareti riducendo gli effetti dello stesso sulla qualità delle superfici verticali. Disabilitando questa configurazione si riduce la quantità di materiale utilizzato."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1330,6 +1474,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Un elenco di direzioni linee intere. Gli elementi dall’elenco sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine dell’elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco predefinito è vuoto, vale a dire che utilizza i valori angolari predefiniti (45 e 135 gradi per le linee e la configurazione zig zag e 45 gradi per tutte le altre configurazioni)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1640,6 +1804,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Regolare il diametro del filamento utilizzato. Abbinare questo valore al diametro del filamento utilizzato."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2830,36 +3014,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Collega i ZigZag. Questo aumenta la forza della struttura di supporto a zig zag."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Rottura del supporto in pezzi di grandi dimensioni"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Salto di alcuni collegamenti per rendere la struttura del supporto più facile da rompere. Questa impostazione è applicabile alla configurazione a zig-zag del riempimento del supporto."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Dimensioni frammento supporto"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Lasciare un collegamento tra le linee del supporto ogni N millimetri per facilitare la rottura del supporto stesso."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Conteggio linee di rottura supporto"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Salto di una ogni N linee di collegamento per rendere la struttura del supporto più facile da rompere."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3399,8 +3553,8 @@ msgstr "Distanza dello skirt"
|
|||
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 "Indica la distanza orizzontale tra lo skirt ed il primo strato della stampa.\nQuesta è la distanza minima, più linee di skirt aumenteranno tale distanza."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3442,26 +3596,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Stampa il brim solo sull’esterno del modello. Questo riduce la quantità del brim che si deve rimuovere in seguito, mentre non riduce particolarmente l’adesione al piano."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Scostamento Z strato iniziale"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "L'estrusore viene posizionato ad una distanza dall'altezza normale del primo strato pari al valore indicato. Questo scostamento può essere positivo (più in alto) o negativo (più in basso). Alcuni tipi di filamento aderiscono meglio al piano di stampa se l'estrusore viene leggermente sollevato."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Scostamento Z strati di rastremazione"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Se diverso da zero, lo scostamento Z viene ridotto a 0 entro il numero di strati indicato. Un valore di 0 indica che lo scostamento Z rimane costante per tutti gli strati di stampa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3479,8 +3613,8 @@ msgstr "Smoothing raft"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3952,6 +4086,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Di norma Cura cerca di \"ricucire\" piccoli fori nella maglia e di rimuovere le parti di uno strato che presentano grossi fori. Abilitando questa opzione, Cura mantiene quelle parti che non possono essere 'ricucite'. Questa opzione deve essere utilizzata come ultima risorsa quando non sia stato possibile produrre un corretto GCode in nessun altro modo."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3982,6 +4126,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Selezionare quali volumi di intersezione maglie appartengono a ciascuno strato, in modo che le maglie sovrapposte diventino interconnesse. Disattivando questa funzione una delle maglie ottiene tutto il volume della sovrapposizione, che viene rimosso dalle altre maglie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4187,6 +4341,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Ottimizza l'ordine in cui vengono stampate le pareti in modo da ridurre le retrazioni e la distanza percorsa. L'abilitazione di questa funzione porta vantaggi per la maggior parte dei pezzi, ma alcuni potrebbero richiedere un maggior tempo di esecuzione, per cui si consiglia di confrontare i tempi di stampa stimati con e senza ottimizzazione."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Rottura del supporto in pezzi di grandi dimensioni"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Salto di alcuni collegamenti per rendere la struttura del supporto più facile da rompere. Questa impostazione è applicabile alla configurazione a zig-zag del riempimento del supporto."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Dimensioni frammento supporto"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Lasciare un collegamento tra le linee del supporto ogni N millimetri per facilitare la rottura del supporto stesso."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Conteggio linee di rottura supporto"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Salto di una ogni N linee di collegamento per rendere la struttura del supporto più facile da rompere."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4477,6 +4661,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Indica la distanza media tra i punti casuali introdotti su ciascun segmento di linea. Si noti che i punti originali del poligono vengono scartati, perciò un elevato livello di regolarità si traduce in una riduzione della risoluzione. Questo valore deve essere superiore alla metà dello spessore del rivestimento incoerente (fuzzy)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4627,7 +4831,9 @@ 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.\nCiò 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.\n"
|
||||
"Ciò 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"
|
||||
|
@ -4734,106 +4940,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Indica la distanza tra l'ugello e le linee diagonali verso il basso. Un maggior gioco risulta in linee diagonali verso il basso con un minor angolo di inclinazione, cosa che a sua volta si traduce in meno collegamenti verso l'alto con lo strato successivo. Applicabile solo alla funzione Wire Printing."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Abilita stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Ulteriore passaggio sopra la superficie superiore, senza estrusione di materiale. Ha lo scopo di fondere ulteriormente la plastica alla sommità, creando una superficie più uniforme."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Stiramento del solo strato più elevato"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Effettua lo stiramento solo dell'ultimissimo strato della maglia. È possibile quindi risparmiare tempo se gli strati inferiori non richiedono una finitura con superficie liscia."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Configurazione di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Configurazione utilizzata per la stiratura della superficie superiore."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concentrica"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zig Zag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Spaziatura delle linee di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Distanza tra le linee di stiratura."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Flusso di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Quantità di materiale, relativo ad una normale linea del rivestimento, da estrudere durante la stiratura. Mantenere l'ugello pieno aiuta a riempire alcune delle fessure presenti sulla superficie superiore, ma una quantità eccessiva comporta un'estrusione eccessiva con conseguente puntinatura sui lati della superficie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Inserto di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Distanza da mantenere dai bordi del modello. La stiratura fino in fondo sino al bordo del reticolo può causare la formazione di un bordo frastagliato nella stampa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Velocità di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Velocità alla quale passare sopra la superficie superiore"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Accelerazione di stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "L’accelerazione con cui viene effettuata la stiratura."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Jerk stiratura"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Indica la variazione della velocità istantanea massima durante la stiratura."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4894,13 +5000,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Matrice di rotazione da applicare al modello quando caricato dal file."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Estrusore pareti"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Estrusore parete interna"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "Treno estrusore utilizzato per stampare le pareti. Si utilizza nell'estrusione multipla."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "Configurazione del materiale di riempimento della stampa. Il riempimento a linea e zig zag su strati alternati riduce il costo del materiale. Le configurazioni a griglia, triangolo, a cubo, ottagonale, a quarto di cubo e concentrica comportano la stampa completa in ogni strato. Il riempimento a cubi, a quarto di cubo e a ottagonale cambia a ogni strato per consentire una distribuzione più uniforme della resistenza in ogni direzione."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "Collega le estremità in cui la configurazione del riempimento incontra la parete interna utilizzando linee che seguono il profilo della parete interna stessa. Consentendo tale configurazione è possibile fare in modo che il riempimento aderisca meglio alle pareti riducendo gli effetti dello stesso sulla qualità delle superfici verticali. Disabilitando questa configurazione si riduce la quantità di materiale utilizzato."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Indica la distanza orizzontale tra lo skirt ed il primo strato della stampa.\n"
|
||||
#~ "Questa è la distanza minima, più linee di skirt aumenteranno tale distanza."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Scostamento Z strato iniziale"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "L'estrusore viene posizionato ad una distanza dall'altezza normale del primo strato pari al valore indicato. Questo scostamento può essere positivo (più in alto) o negativo (più in basso). Alcuni tipi di filamento aderiscono meglio al piano di stampa se l'estrusore viene leggermente sollevato."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Scostamento Z strati di rastremazione"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Se diverso da zero, lo scostamento Z viene ridotto a 0 entro il numero di strati indicato. Un valore di 0 indica che lo scostamento Z rimane costante per tutti gli strati di stampa."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "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."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5116,4 +5254,4 @@ msgstr "Matrice di rotazione da applicare al modello quando caricato dal file."
|
|||
|
||||
#~ msgctxt "multiple_mesh_overlap label"
|
||||
#~ msgid "Dual Extrusion Overlap"
|
||||
#~ msgstr "Sovrapposizione doppia estrusione"
|
||||
#~ msgstr "Sovrapposizione doppia estrusione"
|
||||
|
|
4565
resources/i18n/ja_JP/cura.po
Normal file
4565
resources/i18n/ja_JP/cura.po
Normal file
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Brule\n"
|
||||
"Language-Team: Brule\n"
|
||||
|
@ -195,4 +195,4 @@ 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座標。"
|
||||
msgstr "印刷開始時にノズルがポジションを確認するY座標。"
|
||||
|
|
File diff suppressed because it is too large
Load diff
4566
resources/i18n/ko_KR/cura.po
Normal file
4566
resources/i18n/ko_KR/cura.po
Normal file
File diff suppressed because it is too large
Load diff
|
@ -5,9 +5,9 @@
|
|||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"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"
|
||||
"POT-Creation-Date: 2017-11-21 16:58+0000\n"
|
||||
"PO-Revision-Date: 2017-09-20 14:31+0900\n"
|
||||
"Last-Translator: Brule\n"
|
||||
"Language-Team: Brule\n"
|
||||
|
@ -196,4 +196,4 @@ 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 좌표입니다. "
|
||||
msgstr "인쇄가 시작될 때 노즐이 끝내는 위치의 Y 좌표입니다. "
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Dutch\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Dutch\n"
|
||||
|
@ -605,6 +605,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "De hoogte van de eerste laag in mm. Met een dikkere eerste laag hecht het object beter aan het platform."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -755,6 +780,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Shell"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Wandextruder"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "De extruder train die voor het printen van de wanden wordt gebruikt. Deze wordt gebruikt in meervoudige doorvoer."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -767,8 +802,8 @@ msgstr "De extruder train die voor het printen van de buitenwand wordt gebruikt.
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "Extruder binnenwand"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1200,6 +1235,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Vervang het buitenste gedeelte van het patroon boven-/onderkant door een aantal concentrische lijnen. Het gebruik van 1 of 2 lijnen verbetert daken die op vulmateriaal beginnen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Strijken inschakelen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Ga nog een extra keer over de bovenlaag, echter zonder materiaal door te voeren. Hierdoor wordt de kunststof aan de bovenkant verder gesmolten, waardoor een gladder oppervlak wordt verkregen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Alleen hoogste laag strijken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Strijk alleen de allerlaatste laag van het voorwerp. Dit bespaart tijd als de daaronder gelegen lagen geen glad oppervlak vereisen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Strijkpatroon"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Het patroon dat wordt gebruikt voor het strijken van oppervlakken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concentrisch"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zigzag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Tussenruimte strijklijnen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "De afstand tussen de strijklijnen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Strijkdoorvoer"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "De hoeveelheid materiaal, in verhouding tot een normale skinlijn, die tijdens het strijken moet worden doorgevoerd. Als de nozzle gevuld blijft, kunnen scheuren in de bovenlaag worden gevuld. Te hoge doorvoer leidt echter tot uitstulpingen aan de zijkant van het oppervlak."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Uitsparing strijken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "De afstand die moet worden aangehouden tot de randen van het model. Strijken tot de rand van het raster kan leiden tot een gerafelde rand van de print."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Strijksnelheid"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "De snelheid waarmee over de bovenste laag wordt bewogen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Strijkacceleratie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "De acceleratie tijdens het strijken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Schok strijken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "De maximale onmiddellijke snelheidsverandering tijdens het strijken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1247,8 +1382,8 @@ 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, cubic, octet, quarter cubic 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 "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-, kubische, achtvlaks-, afgeknotte kubus- en concentrische patronen worden elke laag volledig geprint. Kubische, afgeknotte kubus- en achtvlaksvullingen veranderen elke laag voor een meer gelijke krachtsverdeling in elke richting."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1265,6 +1400,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Driehoeken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1317,8 +1457,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1330,6 +1470,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Een lijst met gehele getallen voor lijnrichtingen die moet worden gebruikt. Elementen uit de lijst worden tijdens het printen van de lagen opeenvolgend gebruikt. Wanneer het einde van de lijst bereikt is, wordt deze weer van voren af aan gestart. De lijstitems zijn gescheiden door komma's en de hele lijst is binnen vierkante haken geplaatst. Standaard wordt een lege lijst gebruikt, wat inhoudt dat de traditionele standaardhoeken (45 en 135 graden voor het lijn- en zigzagpatroon en 45 voor alle andere patronen) worden gebruikt."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1640,6 +1800,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Bepaalt de diameter van het gebruikte filament. Pas deze waarde aan de diameter van het gebruikte filament aan."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2830,36 +3010,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Verbind de zigzaglijnen. Hiermee versterkt u de zigzag-supportstructuur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Supportstructuur in Stukken Breken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Sla enkele verbindingen tussen lijnen van de supportstructuur over zodat deze gemakkelijker kan worden weggebroken. Deze instelling is van toepassing op het zigzag-vulpatroon van de supportstructuur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Grootte Supportstuk"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Sla elke N millimeter een verbinding tussen de lijnen van de supportstructuur over, zodat deze gemakkelijker kan worden weggebroken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Aantal Lijnen Supportstuk"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Sla elke N verbindingslijnen één lijn over zodat de supportstructuur gemakkelijker kan worden weggebroken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3399,8 +3549,8 @@ msgstr "Skirtafstand"
|
|||
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 "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."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3442,26 +3592,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Print de brim alleen aan de buitenkant van het model. Hiermee verkleint u de hoeveelheid brim die u achteraf moet verwijderen, zonder dat dit de hechting aan het printbed te zeer vermindert."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Z-offset Eerste Laag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "De extruder wordt in deze mate gecorrigeerd ten opzichte van de normale hoogte van de eerste laag. Dit kan plus (verhoogd) of min (verlaagd) zijn. Sommige soorten filament hechten beter op het platform als de extruder iets hoger staat."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Z-offset Aflopende Lagen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Wanneer de waarde niet is ingesteld op 0, dan wordt de Z-offset over zoveel lagen verkleind tot 0. Wanneer de waarde op 0 is ingesteld, blijft de Z-offset voor alle lagen in de print gelijk."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3479,8 +3609,8 @@ msgstr "Raft effenen"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "Deze instelling 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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3952,6 +4082,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Normaal probeert Cura kleine gaten in het raster te hechten en delen van een laag met grote gaten te verwijderen. Als u deze optie inschakelt, behoudt u deze delen die niet kunnen worden gehecht. Deze optie kan als laatste redmiddel worden gebruikt als er geen andere manier meer is om correcte G-code te genereren."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3982,6 +4122,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Schakel naar de rastersnijpuntvolumes die bij elke laag horen, zodat de overlappende rasters worden verweven. Als u deze instelling uitschakelt, krijgt een van de rasters al het volume in de overlap, terwijl dit uit de andere rasters wordt verwijderd."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4187,6 +4337,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Optimaliseer de volgorde waarin wanden worden geprint om het aantal intrekbewegingen en de afgelegde afstand te verkleinen. Deze instelling is gunstig voor de meeste onderdelen. Bij sommige onderdelen duurt het printen echter langer. Controleer daarom de verwachte printtijd met en zonder optimalisatie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Supportstructuur in Stukken Breken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Sla enkele verbindingen tussen lijnen van de supportstructuur over zodat deze gemakkelijker kan worden weggebroken. Deze instelling is van toepassing op het zigzag-vulpatroon van de supportstructuur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Grootte Supportstuk"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Sla elke N millimeter een verbinding tussen de lijnen van de supportstructuur over, zodat deze gemakkelijker kan worden weggebroken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Aantal Lijnen Supportstuk"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Sla elke N verbindingslijnen één lijn over zodat de supportstructuur gemakkelijker kan worden weggebroken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4477,6 +4657,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "De gemiddelde afstand tussen de willekeurig geplaatste punten op elk lijnsegment. Houd er rekening mee dat de originele punten van de polygoon worden verwijderd. Een hoge effenheid leidt dus tot een verlaging van de resolutie. Deze waarde moet hoger zijn dan de helft van de Dikte rafelig oppervlak."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4627,7 +4827,9 @@ 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.\nHierdoor 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.\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."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_top_jump label"
|
||||
|
@ -4734,106 +4936,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "De afstand tussen de nozzle en horizontaal neergaande lijnen. Een grotere tussenruimte zorgt voor diagonaal neerwaarts gaande lijnen met een minder steile hoek. Hierdoor ontstaan minder opwaartse verbindingen met de volgende laag. Alleen van toepassing op Draadprinten."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Strijken inschakelen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Ga nog een extra keer over de bovenlaag, echter zonder materiaal door te voeren. Hierdoor wordt de kunststof aan de bovenkant verder gesmolten, waardoor een gladder oppervlak wordt verkregen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Alleen hoogste laag strijken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Strijk alleen de allerlaatste laag van het voorwerp. Dit bespaart tijd als de daaronder gelegen lagen geen glad oppervlak vereisen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Strijkpatroon"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Het patroon dat wordt gebruikt voor het strijken van oppervlakken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concentrisch"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zigzag"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Tussenruimte strijklijnen"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "De afstand tussen de strijklijnen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Strijkdoorvoer"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "De hoeveelheid materiaal, in verhouding tot een normale skinlijn, die tijdens het strijken moet worden doorgevoerd. Als de nozzle gevuld blijft, kunnen scheuren in de bovenlaag worden gevuld. Te hoge doorvoer leidt echter tot uitstulpingen aan de zijkant van het oppervlak."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Uitsparing strijken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "De afstand die moet worden aangehouden tot de randen van het model. Strijken tot de rand van het raster kan leiden tot een gerafelde rand van de print."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Strijksnelheid"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "De snelheid waarmee over de bovenste laag wordt bewogen."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Strijkacceleratie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "De acceleratie tijdens het strijken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Schok strijken"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "De maximale onmiddellijke snelheidsverandering tijdens het strijken."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4894,13 +4996,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Omzettingsmatrix die moet worden toegepast op het model wanneer dit wordt geladen vanuit een bestand."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Wandextruder"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Extruder binnenwand"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "De extruder train die voor het printen van de wanden wordt gebruikt. Deze wordt gebruikt in meervoudige doorvoer."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "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-, kubische, achtvlaks-, afgeknotte kubus- en concentrische patronen worden elke laag volledig geprint. Kubische, afgeknotte kubus- en achtvlaksvullingen veranderen elke laag voor een meer gelijke krachtsverdeling in elke richting."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ 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."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "De horizontale afstand tussen de skirt en de eerste laag van de print.\n"
|
||||
#~ "Dit is de minimumafstand; als u meerdere skirtlijnen print, worden deze vanaf deze afstand naar buiten geprint."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Z-offset Eerste Laag"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "De extruder wordt in deze mate gecorrigeerd ten opzichte van de normale hoogte van de eerste laag. Dit kan plus (verhoogd) of min (verlaagd) zijn. Sommige soorten filament hechten beter op het platform als de extruder iets hoger staat."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Z-offset Aflopende Lagen"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Wanneer de waarde niet is ingesteld op 0, dan wordt de Z-offset over zoveel lagen verkleind tot 0. Wanneer de waarde op 0 is ingesteld, blijft de Z-offset voor alle lagen in de print gelijk."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "Deze instelling 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."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5116,4 +5250,4 @@ msgstr "Omzettingsmatrix die moet worden toegepast op het model wanneer dit word
|
|||
|
||||
#~ msgctxt "multiple_mesh_overlap label"
|
||||
#~ msgid "Dual Extrusion Overlap"
|
||||
#~ msgstr "Overlap Dubbele Doorvoer"
|
||||
#~ msgstr "Overlap Dubbele Doorvoer"
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: 'Jaguś' Paweł Jagusiak and Andrzej 'anraf1001' Rafalski\n"
|
||||
"Language-Team: reprapy.pl\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: 'Jaguś' Paweł Jagusiak and Andrzej 'anraf1001' Rafalski\n"
|
||||
"Language-Team: reprapy.pl\n"
|
||||
|
@ -610,6 +610,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "Wysokość początkowej warstwy w mm. Grubsza początkowa warstwa powoduje lepszą przyczepność do stołu."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -760,6 +785,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Powłoka"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Ekstruder Ściany"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "Ekstruder używany do drukowania ścian. Używane w multi-esktruzji."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -772,8 +807,8 @@ msgstr "Esktruder używany do drukowania zewn. ściany. Używane w multi-ekstruz
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "Esktruder Wewn. Ściany"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1205,6 +1240,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Zastępuje najbardziej zewnętrzną część wzoru górnego/dolnego za pomocą kilku koncentrycznych linii. Korzystanie z jednej lub dwóch linii poprawia dachy, które zaczynają się na wypełnieniu."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Włącz Prasowanie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Przejedź nad górną powierzchnią dodatkowy raz, ale bez ekstrudowania materiału. Topi to plastyk na górze, co powoduje gładszą powierzchnię."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Prasuj Tylko Najwyższą Warstwę"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Przeprowadzaj prasowanie tylko na najwyższej warstwie siatki. Oszczędza to czas jeżeli niższe warstwy nie muszą mieć gładkie wykończenia powierzchni."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Wzór Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Wzór używany dla górnych powierzchni prasowania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Koncentryczny"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zygzak"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Przerwy Linii Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Odległość pomiędzy liniami prasowania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Przepływ Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Ilość materiału, w odniesieniu do normalnej linii skóry, do ekstrudowania podczas prasowania. Pozostawianie dyszy napełnionej pomaga w wypełnianiu nierówności górnej powierzchni, ale zbyt duża ilość materiału może powodować nadekstruzję po stronie powierzchni."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Margines Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Odległość utrzymywana od krawędzi modelu. Prasowanie do końca krawędzi siatki może powodować zadarte krawędzie na wydruku."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Prędkość Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Prędkość, z jaką drukarka przejeżdża nad górnymi powierzchniami."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Przyspieszenie Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Przyspieszenie, z jakim przeprowadzane jest prasowanie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Zryw Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Maksymalna nagła zmiana prędkości podczas przeprowadzania prasowania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1252,8 +1387,8 @@ 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, cubic, octet, quarter cubic 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 "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, 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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1270,6 +1405,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Trójkąty"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1322,8 +1462,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "Łączy końce gdzie wypełnienie spotyka się z wewn. ścianą za pomocą linii, które podążają za kształtem wewn. ściany. Włączenie tej opcji może spowodować lepsze łączenie się wypełnienia ze ścianą i redukuje efekty związane z jakością na pionowych ścianach. Wyłączenie tej opcji redukuje ilość użytego materiału."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1335,6 +1475,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Lista całkowitych kierunków linii do użycia. Elementy z listy są używane kolejno w miarę postępu warstw, a kiedy kończy się lista, zaczyna się od początku. Elementy listy są oddzielone przecinkami, a cała lista znajduje się w nawiasach kwadratowych. Domyślnie lista jest pusta, co oznacza tradycyjne domyślne kąty (45 i 135 stopni dla linii i wzorów zygzakowych i 45 stopni dla wszystkich pozostałych wzorów)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1645,6 +1805,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Dostosowuje średnicę stosowanego filamentu. Dopasuj tę wartość do średnicy stosowanego filamentu."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2835,36 +3015,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Połącz Zygzaki. To zwiększa wytrzymałość zygzakowatej podpory."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Podziel Podpory na Kawałki"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Pomijaj niektóre połączenia linii podpory, aby struktura podpory była łatwiejsza do odłamania. To ustawienie dotyczy wypełn. podpory Zygzak."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Wielkość Kawałka Podpory"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Pomiń połączenie pomiędzy liniami podpory co N milimetrów, aby struktura podpory była łatwiejsza do odłamania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Liczba Linii Kawałka Podpory"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Pomijaj jedną z każdych N linii, aby struktura podpory była łatwiejsza do odłamania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3404,10 +3554,8 @@ msgstr "Odległ. Obwódki"
|
|||
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."
|
||||
"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"
|
||||
|
@ -3449,26 +3597,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Drukuj obrys tylko na zewnątrz modelu. Zmniejsza to liczbę obrysu, który trzeba usunąć po wydruku, podczas gdy nie zmniejsza znacząco przyczepności do stołu."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Przesunięcie w Osi Z Warstwy Początk."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "Ekstruder jest przesuwany z normalnej wysokości pierwszej warstwy o tą wartość. Może być dodatnia (uniesienie) lub ujemna (obniżenie). Niektóre typy filamentu przyklejają się lepiej do stołu jeżeli ekstruder jest lekko uniesiony."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Warstwy Zbieżne Przesunięcia Z"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Kiedy niezerowe, przesunięcie w osi Z jest redukowane do zera w trakcie drukowania takiej ilości warstw. Wartość 0 oznacza, że przesunięcie pozostaje stałe dla wszystkich warstw wydruku."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3486,8 +3614,8 @@ msgstr "Wygładzanie Tratwy"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "To ustawienie kontroluje jak bardzo wewn. narożniki zewn. linii tratwy są zaokrąglone. Wewn. narożniki są zaokrąglone do pół-okręgów o promieniu równym wartości podanej w tym miejscu. To ustawienie usuwa też otwory w zewn. linii tratwy, które są mniejsze niż taki okrąg."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3959,6 +4087,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Zwykle Cura próbuje zszywać małe dziury w siatce i usunąć części warstwy z dużymi otworami. Włączenie tej opcji powoduje zostawienie tych części, których nie można zszywać. Ta opcja powinna być używana jako ostatnia deska ratunku, gdy wszystko inne nie dostarczy właściwego G-code."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3989,6 +4127,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Przełącz się, to której przecinającej się siatki będą należały z każdą warstwą, tak że nakładające się siatki przeplatają się. Wyłączenie tej opcji spowoduje, że jedna siatka uzyska całą objętość podczas nakładania się, kiedy jest usunięta z pozostałych siatek."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4194,6 +4342,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Optymalizuj kolejność, według której drukowane są ściany, aby zredukować ilość retrakcji i długości ruchu jałowego. Większość części powinno na tym zyskać, ale niektóre mogą drukować się dłużej, dlatego prosimy o porównaniu czasu drukowania z i bez włączonej opcji."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Podziel Podpory na Kawałki"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Pomijaj niektóre połączenia linii podpory, aby struktura podpory była łatwiejsza do odłamania. To ustawienie dotyczy wypełn. podpory Zygzak."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Wielkość Kawałka Podpory"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Pomiń połączenie pomiędzy liniami podpory co N milimetrów, aby struktura podpory była łatwiejsza do odłamania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Liczba Linii Kawałka Podpory"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Pomijaj jedną z każdych N linii, aby struktura podpory była łatwiejsza do odłamania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4484,6 +4662,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Średnia odległość między losowymi punktami wprowadzonymi w każdym segmencie linii. Zwróć uwagę, że oryginalne punkty wielokąta są odrzucane, a zatem duża gładkość powoduje zmniejszenie rozdzielczości. Wartość ta musi być większa niż połowa Grubości Nierównej Skóry."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4743,106 +4941,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Odległość między dyszą a liniami skierowanymi w dół. Większe prześwity powodują ukośne linie skierowanie w dół o mniej stromym kącie, co z kolei skutkuje mniejszymi połączeniami z następną warstwą. Dotyczy tylko Drukowania Drutu."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Włącz Prasowanie"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Przejedź nad górną powierzchnią dodatkowy raz, ale bez ekstrudowania materiału. Topi to plastyk na górze, co powoduje gładszą powierzchnię."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Prasuj Tylko Najwyższą Warstwę"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Przeprowadzaj prasowanie tylko na najwyższej warstwie siatki. Oszczędza to czas jeżeli niższe warstwy nie muszą mieć gładkie wykończenia powierzchni."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Wzór Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Wzór używany dla górnych powierzchni prasowania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Koncentryczny"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zygzak"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Przerwy Linii Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Odległość pomiędzy liniami prasowania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Przepływ Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Ilość materiału, w odniesieniu do normalnej linii skóry, do ekstrudowania podczas prasowania. Pozostawianie dyszy napełnionej pomaga w wypełnianiu nierówności górnej powierzchni, ale zbyt duża ilość materiału może powodować nadekstruzję po stronie powierzchni."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Margines Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Odległość utrzymywana od krawędzi modelu. Prasowanie do końca krawędzi siatki może powodować zadarte krawędzie na wydruku."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Prędkość Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Prędkość, z jaką drukarka przejeżdża nad górnymi powierzchniami."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Przyspieszenie Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Przyspieszenie, z jakim przeprowadzane jest prasowanie."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Zryw Prasowania"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Maksymalna nagła zmiana prędkości podczas przeprowadzania prasowania."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4903,13 +5001,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Forma przesunięcia, która ma być zastosowana do modelu podczas ładowania z pliku."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Ekstruder Ściany"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Esktruder Wewn. Ściany"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "Ekstruder używany do drukowania ścian. Używane w multi-esktruzji."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "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, 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."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "Łączy końce gdzie wypełnienie spotyka się z wewn. ścianą za pomocą linii, które podążają za kształtem wewn. ściany. Włączenie tej opcji może spowodować lepsze łączenie się wypełnienia ze ścianą i redukuje efekty związane z jakością na pionowych ścianach. Wyłączenie tej opcji redukuje ilość użytego materiału."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "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."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Przesunięcie w Osi Z Warstwy Początk."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "Ekstruder jest przesuwany z normalnej wysokości pierwszej warstwy o tą wartość. Może być dodatnia (uniesienie) lub ujemna (obniżenie). Niektóre typy filamentu przyklejają się lepiej do stołu jeżeli ekstruder jest lekko uniesiony."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Warstwy Zbieżne Przesunięcia Z"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Kiedy niezerowe, przesunięcie w osi Z jest redukowane do zera w trakcie drukowania takiej ilości warstw. Wartość 0 oznacza, że przesunięcie pozostaje stałe dla wszystkich warstw wydruku."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "To ustawienie kontroluje jak bardzo wewn. narożniki zewn. linii tratwy są zaokrąglone. Wewn. narożniki są zaokrąglone do pół-okręgów o promieniu równym wartości podanej w tym miejscu. To ustawienie usuwa też otwory w zewn. linii tratwy, które są mniejsze niż taki okrąg."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5021,4 +5151,4 @@ msgstr "Forma przesunięcia, która ma być zastosowana do modelu podczas ładow
|
|||
|
||||
#~ msgctxt "wall_thickness description"
|
||||
#~ msgid "The thickness of the outside walls in the horizontal direction. This value divided by the wall line width defines the number of walls."
|
||||
#~ msgstr "Grubość ścian zewnętrznych w kierunku poziomym. Ta wartość podzielona przez szerokość linii ściany określa liczbę ścian."
|
||||
#~ msgstr "Grubość ścian zewnętrznych w kierunku poziomym. Ta wartość podzielona przez szerokość linii ściany określa liczbę ścian."
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"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"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"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"
|
||||
|
@ -610,6 +610,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "A altura da camada inicial em mm. Uma camada inicial mais espessa faz a aderência à mesa de impressão ser maior."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -760,6 +785,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Perímetro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Extrusor das Paredes"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "O carro extrusor usado para imprimir paredes. Este ajuste é usado em multi-extrusão."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -772,8 +807,8 @@ msgstr "O carro extrusor usado para imprimir a parede externa. Este ajuste é us
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "Extrusor das Paredes Internas"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1205,6 +1240,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Substitui a parte externa do padrão superior/inferir com um número de linhas concêntricas. Usar uma ou duas linhas melhora tetos e topos que começam a ser construídos em cima de padrões de preenchimento."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Habilitar Passar a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Passar sobre a superfície superior depois de impressa, mas sem extrudar material. A idéia é derreter o plástico do topo ainda mais, criando uma superfície mais lisa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Passar a Ferro Somente Camada Mais Alta"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Somente executar a passagem a ferro na última camada da malha. Isto economiza tempo se as camadas abaixo não precisarem de um acabamento de superfície amaciado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Padrão de Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "O padrão a usar quando se passa a ferro as superfícies superiores."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concêntrico"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Ziguezague"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Espaçamento de Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "A distância entre as trajetórias de passagem a ferro."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Fluxo de Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "A quantidade de material, relativa ao filete normal de extrusão, para extrudar durante a passagem a ferro. Manter o bico com algum material ajuda a preencher algumas das lacunas e fendas da superfície superior, mas material demais resulta em superextrusão e verrugas nas laterais da superfície."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Penetração da Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "A distância a manter das arestas do modelo. Passar a ferro as arestas da malha podem resultar em um aspecto entalhado da sua peça."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Velocidade de Passar o Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "A velocidade com a qual o ajuste de passar ferro é aplicado sobre a superfície superior."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Aceleração de Passar a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "A aceleração com que o recurso de passar a ferro é feito."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Jerk de Passar a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "A máxima mudança de velocidade instantânea em uma direção com que o recurso de passar a ferro é feito."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1252,7 +1387,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, cubic, octet, quarter cubic 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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
|
@ -1270,6 +1405,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Triângulos"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1322,8 +1462,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "Conecta as extremidades onde o padrão de preenchimento se encontra com a parede interna usando linhas que seguem a forma dessa parede. Habilitar este ajuste pode fazer o preenchimento aderir melhor às paredes e reduz os efeitos do preenchimento na qualidade das superfícies verticais. Desabilitar este ajuste reduz a quantidade de material usado."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1335,6 +1475,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Uma lista de direções de filetes em números inteiros a usar. Elementos da lista são usados sequencialmente de acordo com o progresso das camadas e quando o fim da lista é alcançado, ela volta ao começo. Os itens da lista são separados por vírgula e a lista inteira é contida em colchetes. O default é uma lista vazia que implica em usar os ângulos default tradicionais (45 e 135 graus para os padrões linha e ziguezague e 45 graus para todos os outros padrões)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1645,6 +1805,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Ajusta o diâmetro do filamento utilizado. Acerte este valor com o diâmetro real do filamento."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2835,36 +3015,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Conecta os ziguezagues. Isto aumentará a força da estrutura de suporte em ziguezague."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Quebrar Suportes em Pedaços"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Evitar algumas conexões de linha de suporte para fazer a estrutura de suporte mais fácil de ser removida. Este ajuste é aplicável ao padrão de preenchimento de suporte de ziguezague."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Tamanho do Pedaço de Suporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Evita uma conexão entre linhas de suporte uma vez a cada N milímetros para fazer a estrutura de suporte mais fácil de ser removida."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Contagem de Linhas de Pedaço de Suporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Evitar uma em cada N linhas de conexão para fazer a estrutura de suporte mais fácil de ser removida."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3404,10 +3554,8 @@ msgstr "Distância do Skirt"
|
|||
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."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
"A distância horizontal entre o skirt e a primeira camada da impressão.\n"
|
||||
"Esta é a distância mínima; múltiplas linhas de skirt se estenderão pra fora a partir desta distância."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3449,26 +3597,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Imprimir o Brim somente no lado de fora do modelo. Isto reduz a quantidade de brim a ser removida no final, e não reduz tanto a aderência à mesa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Deslocamento em Z da Camada Inicial"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "O extrusor é deslocado da altura normal da primeira camada por esta distância. Pode ser positiva (elevada) ou negativa (abaixada). Alguns tipos de filamento aderem à camada de impressão melhor se o extrusor for elevado ligeiramente."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Camadas de Amenização do Deslocamento Z"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Quando não for zero, o deslocamento em Z é reduzido a zero depois deste número de camadas. O valor zero significa que o deslocamento em Z permanece constante para todas as camadas da impressão."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3486,8 +3614,8 @@ msgstr "Amaciamento do Raft"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "Este ajuste controla quantos cantos interiores no contorno do raft são arredondados. Cantos no sentido interior são arredondados para um semicírculo com raio igual ao valor dado aqui. Este ajuste também remove buracos que sejam menores que tal círculo no contorno do raft."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3959,6 +4087,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Normalmente o Cura tenta costurar pequenos furos na malha e remover partes de uma camada com grandes furos. Habilitar esta opção mantém aquelas partes que não podem ser costuradas. Este opção deve ser usada somente como uma última alternativa quando tudo o mais falha em produzir G-Code apropriado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3989,6 +4127,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Troca quais volumes sobrepondo malhas vão pertencer a cada camada, de modo que as malhas sobrepostas se tornem entrelaçadas. Desligar esta opção vai fazer com que uma das malhas obtenha todo o volume da sobreposiçào, removendo este volume das outras malhas."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4194,6 +4342,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Otimiza a ordem em que paredes são impressas de modo a reduzir o número de retrações e a distância percorrida. A maioria das peças se beneficiarão deste ajuste habilitado mas algumas podem acabar levando mais tempo, portanto por favor compare as estimativas de tempo de impressão com e sem otimização."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Quebrar Suportes em Pedaços"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Evitar algumas conexões de linha de suporte para fazer a estrutura de suporte mais fácil de ser removida. Este ajuste é aplicável ao padrão de preenchimento de suporte de ziguezague."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Tamanho do Pedaço de Suporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Evita uma conexão entre linhas de suporte uma vez a cada N milímetros para fazer a estrutura de suporte mais fácil de ser removida."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Contagem de Linhas de Pedaço de Suporte"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Evitar uma em cada N linhas de conexão para fazer a estrutura de suporte mais fácil de ser removida."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4484,6 +4662,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "A distância média entre os pontos aleatórios introduzidos em cada segmento de linha. Note que os pontos originais do polígono são descartados, portanto umo alto alisamento resulta em redução da resolução. Este valor deve ser maior que a metade da Espessura do Contorno Felpudo."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4743,106 +4941,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Distância entre o bico e os filetes descendentes horizontais. Espaços livres maiores resultarão em filetes descendentes diagonais com ângulo menos acentuado, o que por sua vez resulta em menos conexões ascendentes à próxima camada. Somente se aplica à Impressão em Arame."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Habilitar Passar a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Passar sobre a superfície superior depois de impressa, mas sem extrudar material. A idéia é derreter o plástico do topo ainda mais, criando uma superfície mais lisa."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Passar a Ferro Somente Camada Mais Alta"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Somente executar a passagem a ferro na última camada da malha. Isto economiza tempo se as camadas abaixo não precisarem de um acabamento de superfície amaciado."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Padrão de Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "O padrão a usar quando se passa a ferro as superfícies superiores."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Concêntrico"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Ziguezague"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Espaçamento de Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "A distância entre as trajetórias de passagem a ferro."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Fluxo de Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "A quantidade de material, relativa ao filete normal de extrusão, para extrudar durante a passagem a ferro. Manter o bico com algum material ajuda a preencher algumas das lacunas e fendas da superfície superior, mas material demais resulta em superextrusão e verrugas nas laterais da superfície."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Penetração da Passagem a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "A distância a manter das arestas do modelo. Passar a ferro as arestas da malha podem resultar em um aspecto entalhado da sua peça."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Velocidade de Passar o Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "A velocidade com a qual o ajuste de passar ferro é aplicado sobre a superfície superior."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Aceleração de Passar a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "A aceleração com que o recurso de passar a ferro é feito."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Jerk de Passar a Ferro"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "A máxima mudança de velocidade instantânea em uma direção com que o recurso de passar a ferro é feito."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4903,13 +5001,41 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Matriz de transformação a ser aplicada ao modelo após o carregamento do arquivo."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Extrusor das Paredes"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Extrusor das Paredes Internas"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "O carro extrusor usado para imprimir paredes. Este ajuste é usado em multi-extrusão."
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "Conecta as extremidades onde o padrão de preenchimento se encontra com a parede interna usando linhas que seguem a forma dessa parede. Habilitar este ajuste pode fazer o preenchimento aderir melhor às paredes e reduz os efeitos do preenchimento na qualidade das superfícies verticais. Desabilitar este ajuste reduz a quantidade de material usado."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "A distância horizontal entre o skirt e a primeira camada da impressão.\n"
|
||||
#~ "Esta é a distância mínima; múltiplas linhas de skirt se estenderão pra fora a partir desta distância."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Deslocamento em Z da Camada Inicial"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "O extrusor é deslocado da altura normal da primeira camada por esta distância. Pode ser positiva (elevada) ou negativa (abaixada). Alguns tipos de filamento aderem à camada de impressão melhor se o extrusor for elevado ligeiramente."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Camadas de Amenização do Deslocamento Z"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Quando não for zero, o deslocamento em Z é reduzido a zero depois deste número de camadas. O valor zero significa que o deslocamento em Z permanece constante para todas as camadas da impressão."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "Este ajuste controla quantos cantos interiores no contorno do raft são arredondados. Cantos no sentido interior são arredondados para um semicírculo com raio igual ao valor dado aqui. Este ajuste também remove buracos que sejam menores que tal círculo no contorno do raft."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Ruslan Popov <ruslan.popov@gmail.com>\n"
|
||||
"Language-Team: Ruslan Popov\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Ruslan Popov <ruslan.popov@gmail.com>\n"
|
||||
"Language-Team: Ruslan Popov\n"
|
||||
|
@ -611,6 +611,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "Высота первого слоя в миллиметрах. Более толстый слой упрощает прилипание пластика к столу."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -761,6 +786,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Ограждение"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Экструдер стенок"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "Этот экструдер используется для печати стенок. Используется при наличии нескольких экструдеров."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -773,8 +808,8 @@ msgstr "Этот экструдер используется для печати
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "Печать внутренних стенок"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1206,6 +1241,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Заменяет внешнюю часть шаблона крышки/дна рядом концентрических линий. Использование одной или двух линий улучшает мосты, которые печатаются поверх материала заполнения."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Разрешить разглаживание"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Проходить по верхней оболочке ещё раз, но без выдавливания материала. Это приводит к плавлению пластика, что создаёт более гладкую поверхность."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Самый высокий слой разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Выполняет разглаживание только на самом последнем слое модели. Экономит время, когда нижние слои не требуют сглаживания поверхности."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Шаблон разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Шаблон, который будет использоваться для разглаживания верхней оболочки."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Концентрический"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Зигзаг"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Расстояние между линиями разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Расстояние между линиями разглаживания."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Поток разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Объём материала, относительно от обычной линии, который будет выдавлен в процессе разглаживания. Наличие в сопле наличие материала помогает заполнять щели на верхней оболочке, но слишком большое значение приводит к излишнему выдавливанию материала и ухудшает качество оболочки."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Границы разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Расстояние от краёв модели. Разглаживание от края до края может выразится в загибании краёв при печати."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Скорость разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Скорость, на которой голова проходит над верхней оболочкой."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Ускорение разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Ускорение, с которым производится разглаживание."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Рывок разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Изменение максимальной мгновенной скорости, с которой выполняется разглаживание."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1253,8 +1388,8 @@ 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, cubic, octet, quarter cubic 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 "Шаблон заполнения при печати. Заполнение линиями или зиг-загом меняет направление на соседних слоях, уменьшая стоимость материала. Сетчатый, треугольный, кубический, восьмигранный и концентрический шаблоны полностью печатаются на каждом слое. Кубическое, четверть кубическое и восьмигранное заполнение меняется на каждом слое для получения более равного распределения по каждому направлению."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1271,6 +1406,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Треугольник"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1323,8 +1463,8 @@ msgstr "Соединять линии заполнения"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "Соединять концы линий заполнения где они соприкасаются со внутренней стенкой, используя линии, которые продолжают форму внутренней стенки. Активация этого параметра поможет крепче связывать заполнение со стенками и уменьшить влияние на качество заполнения вертикальных поверхностей. Отключение этого параметра уменьшает объём используемого материала."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1336,6 +1476,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Список направлений линии при печати слоёв. Элементы списка используются последовательно по мере печати слоёв и когда конец списка будет достигнут, он начнётся сначала. Элементы списка отделяются запятыми и сам список заключён в квадратные скобки. По умолчанию, он пустой, что означает использование стандартных углов (45 и 135 градусов для линий из зигзага и 45 градусов для всех остальных шаблонов)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1646,6 +1806,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Укажите диаметр используемой нити."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2836,36 +3016,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Соединяет зигзаги. Это увеличивает прочность такой поддержки."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Разбить поддержки на части"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Пропускать некоторые соединения в поддержках для облегчения их последующего удаления. Этот параметр влияет на зиг-заг шаблон заполнения."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Размер части поддержек"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Пропускать соединение между линиями поддержки каждые N миллиметров для облегчения последующего удаления поддержек."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Количество частей линий поддержки"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Пропускать одну линию на каждые N соединительных линий, облегчая последующее удаление поддержек."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3405,10 +3555,8 @@ msgstr "Дистанция до юбки"
|
|||
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."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
"Расстояние по горизонтали между юбкой и первым слоем печатаемого объекта.\n"
|
||||
"Это минимальное расстояние, следующие линии юбки будут печататься наружу."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3450,26 +3598,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Печатать кайму только на внешней стороне модели. Это сокращает объём каймы, которую вам потребуется удалить в дальнейшем, и не снижает качество прилипания к столу."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "Смещение первого Z слоя"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "Экструдер смещается от стола на указанное значение при печати первого слоя. Значение может быть положительным (выше) или отрицательным (ниже). Некоторые типы материала связываются со столом лучше, когда экструдер чуть приподнят над столом."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Компенсация Z смещения"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Если не ноль, то Z смещение уменьшается до 0 на указанном слое. Значение 0 указывает, что Z смещение остаётся постоянным на всех слоях печати."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3487,8 +3615,8 @@ msgstr "Сглаживание подложки"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "Данный параметр управляет тем, сколько внутренних углов в контуре будет сглажено. Внутренние углы сглаживаются полукругами с радиусом равным указанному значению. Данный параметр также убирает отверстия в контуре подложки, которые меньше получающегося круга."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3960,6 +4088,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Обычно Cura пытается закрыть небольшие отверстия в объекте и убрать части слоя с большими отверстиями. Включение этого параметра сохраняет те части, что не могут быть сшиты. Этот параметр должен использоваться как последний вариант, когда уже ничего не помогает получить нормальный GCode."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3990,6 +4128,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Чередует какой из объектов, пересекающихся в объёме, будет участвовать в печати каждого слоя таким образом, что пересекающиеся объекты становятся вплетёнными друг в друга. Выключение этого параметра приведёт к тому, что один из объектов займёт весь объём пересечения, в то время как данный объём будет исключён из других объектов."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4195,6 +4343,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Оптимизирует порядок, в котором печатаются стенки для уменьшения количества откатов и перемещений. Большинство моделей будут распечатываться быстрее, но не все. Сравнивайте печать с оптимизацией и без."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Разбить поддержки на части"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Пропускать некоторые соединения в поддержках для облегчения их последующего удаления. Этот параметр влияет на зиг-заг шаблон заполнения."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Размер части поддержек"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Пропускать соединение между линиями поддержки каждые N миллиметров для облегчения последующего удаления поддержек."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Количество частей линий поддержки"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Пропускать одну линию на каждые N соединительных линий, облегчая последующее удаление поддержек."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4485,6 +4663,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Среднее расстояние между случайными точками, который вносятся в каждый сегмент линии. Следует отметить, что оригинальные точки полигона отбрасываются, таким образом, сильное сглаживание приводит к уменьшению разрешения. Это значение должно быть больше половины толщины шершавой оболочки."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4744,106 +4942,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Зазор между соплом и горизонтально нисходящими линиями. Большее значение уменьшает угол нисхождения, что приводит уменьшению восходящих соединений на следующем слое. Применяется только при каркасной печати."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Разрешить разглаживание"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Проходить по верхней оболочке ещё раз, но без выдавливания материала. Это приводит к плавлению пластика, что создаёт более гладкую поверхность."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Самый высокий слой разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Выполняет разглаживание только на самом последнем слое модели. Экономит время, когда нижние слои не требуют сглаживания поверхности."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Шаблон разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Шаблон, который будет использоваться для разглаживания верхней оболочки."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Концентрический"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Зигзаг"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Расстояние между линиями разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Расстояние между линиями разглаживания."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Поток разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Объём материала, относительно от обычной линии, который будет выдавлен в процессе разглаживания. Наличие в сопле наличие материала помогает заполнять щели на верхней оболочке, но слишком большое значение приводит к излишнему выдавливанию материала и ухудшает качество оболочки."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Границы разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Расстояние от краёв модели. Разглаживание от края до края может выразится в загибании краёв при печати."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Скорость разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Скорость, на которой голова проходит над верхней оболочкой."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Ускорение разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Ускорение, с которым производится разглаживание."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Рывок разглаживания"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Изменение максимальной мгновенной скорости, с которой выполняется разглаживание."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4904,13 +5002,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Матрица преобразования, применяемая к модели при её загрузки из файла."
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Экструдер стенок"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "Печать внутренних стенок"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "Этот экструдер используется для печати стенок. Используется при наличии нескольких экструдеров."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "Шаблон заполнения при печати. Заполнение линиями или зиг-загом меняет направление на соседних слоях, уменьшая стоимость материала. Сетчатый, треугольный, кубический, восьмигранный и концентрический шаблоны полностью печатаются на каждом слое. Кубическое, четверть кубическое и восьмигранное заполнение меняется на каждом слое для получения более равного распределения по каждому направлению."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "Соединять концы линий заполнения где они соприкасаются со внутренней стенкой, используя линии, которые продолжают форму внутренней стенки. Активация этого параметра поможет крепче связывать заполнение со стенками и уменьшить влияние на качество заполнения вертикальных поверхностей. Отключение этого параметра уменьшает объём используемого материала."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Расстояние по горизонтали между юбкой и первым слоем печатаемого объекта.\n"
|
||||
#~ "Это минимальное расстояние, следующие линии юбки будут печататься наружу."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "Смещение первого Z слоя"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "Экструдер смещается от стола на указанное значение при печати первого слоя. Значение может быть положительным (выше) или отрицательным (ниже). Некоторые типы материала связываются со столом лучше, когда экструдер чуть приподнят над столом."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Компенсация Z смещения"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Если не ноль, то Z смещение уменьшается до 0 на указанном слое. Значение 0 указывает, что Z смещение остаётся постоянным на всех слоях печати."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "Данный параметр управляет тем, сколько внутренних углов в контуре будет сглажено. Внутренние углы сглаживаются полукругами с радиусом равным указанному значению. Данный параметр также убирает отверстия в контуре подложки, которые меньше получающегося круга."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Turkish\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: Turkish\n"
|
||||
|
@ -56,7 +56,9 @@ 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"
|
||||
|
@ -68,7 +70,9 @@ 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"
|
||||
|
@ -605,6 +609,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "İlk katmanın milimetre cinsinden yüksekliği. Kalın ilk katmanlar yapı levhasına yapışmayı kolaylaştırır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -755,6 +784,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "Kovan"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "Duvar Ekstruderi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "Duvarları yazdırmak için kullanılan ekstruder dişli çarkı. Çoklu ekstrüzyon işlemi için kullanılır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -767,8 +806,8 @@ 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 Walls Extruder"
|
||||
msgstr "İç Duvar Ekstruderi"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1200,6 +1239,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "Üst/alt şeklin en dıştaki parçasını eş merkezli hatlar ile değiştirir. Bir veya iki hat kullanmak, dolgu malzemesinde başlayan tavanları geliştirir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Ütülemeyi Etkinleştir"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Malzeme ekstrude edilmeden önce üst yüzey üzerinden bir kere daha geçilir. Bu işlem en üstte bulunan plastiği eriterek daha pürüzsüz bir yüzey elde etmek için kullanılır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Sadece En Yüksek Katmanı Ütüle"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Ütüleme işlemini bileşimin sadece en son katmanı üzerinde gerçekleştirin. Bu, alt katmanlarda pürüzsüz bir yüzey tesviyesine gerek olmadığı durumlarda zaman kazandırır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Ütüleme Modeli"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Üst yüzeyleri ütülemek için kullanılacak model."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Eş merkezli"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zikzak"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Ütüleme Hattı Boşluğu"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Ütüleme hatları arasında bulunan mesafe."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Ütüleme Akışı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Ütüleme sırasında normal yüzey hattına göre ekstrude edilecek malzeme miktarı. Nozülü dolu tutmak üst yüzeyde oluşan çatlakların bir kısmının doldurulmasını sağlar fakat nozülün fazla dolu olması aşırı ekstrüzyona ve yüzey yanlarında noktalar oluşmasına neden olur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Ütüleme İlave Mesafesi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Modelin kenarlarından bırakılması gereken mesafe. Ağın kenarlarına kadar ütülemek baskınızın kenarlarının pürüzlü olmasına neden olabilir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Ütüleme Hızı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Üst yüzeyi geçmek için gereken süre."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Ütüleme İvmesi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Ütülemenin gerçekleştiği ivme."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Ütüleme İvmesi Değişimi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Ütüleme sırasında oluşan maksimum anlık hız değişimi."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1247,8 +1386,8 @@ 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, cubic, octet, quarter cubic 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 "Yazdırma dolgu malzemesinin şeklidir. Hat ve zikzak dolgu, farklı katmanlar üzerinde yön değiştirerek malzeme maliyetini azaltır. Izgara, üçgen, kübik, sekizlik, çeyrek kübik ve eş merkezli şekiller, her katmanda tam olarak yazdırı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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1265,6 +1404,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "Üçgenler"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1317,8 +1461,8 @@ 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 lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "İç duvarın şeklini takip eden bir hattı kullanarak, dolgu şeklinin iç duvarla buluştuğu noktada uçları bağlayın. Bu ayarın etkinleştirilmesi, dolgunun duvarlara daha iyi yapışmasını sağlayabilir ve dolgunun dikey yüzeylerin kalitesi üzerindeki etkilerini azaltır. Bu ayarın devre dışı bırakılması, kullanılan malzemenin miktarını azaltır."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1330,6 +1474,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "Kullanılacak tam sayı hat yönü listesi. Listedeki öğeler, katmanlar ilerledikçe sıralı olarak kullanılır. Listenin sonuna ulaşıldığında baştan başlanır. Liste öğeleri virgülle ayrılır ve tüm liste köşeli parantez içine alınır. Varsayılan ayar boş listedir ve geleneksel varsayılan açılar kullanılır (çizgiler ve zikzak şekiller için 45 ve 135 derece; diğer tüm şekiller için 45 derece)."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1640,6 +1804,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "Kullanılan filamanın çapını ayarlar. Bu değeri kullanılan filaman çapı ile eşitleyin."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2830,36 +3014,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "Zikzakları Bağla Zik zak destek yapısının sağlamlığını artırır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Parçalarda Döküm Desteği"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Destek yapısının daha kolay kırılması için bazı destek hattı bağlantılarını atlayın. Bu ayar, Zikzak destek dolgusu şekli için geçerlidir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Destek Parçasının Boyutu"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Destek yapısının daha kolay kırılması için her N milimetresinde bir destek hatları arasında bağlantı atlayın."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Destek Parçası Hattı Sayısı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Destek yapısının daha kolay kırılması için her N bağlantı hattında bir zikzak atlayın."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3399,8 +3553,8 @@ msgstr "Etek Mesafesi"
|
|||
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 "Etek ve baskının ilk katmanı arasındaki yatay mesafe.\nBu minimum mesafedir ve çoklu etek hatları bu mesafeden dışa doğru genişleyecektir."
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3442,26 +3596,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "Sadece modelin dış kısmındaki kenarı yazdırır. Yatak yapışmasını büyük oranda azaltmasa da daha sonra kaldırmanız gereken kenar sayısını azaltır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "İlk Katman Z Ofseti"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "Ekstrüder, birinci katmanın normal yüksekliğinden bu miktarda mesafe bırakılır. Negatif (yükseltilmiş) veya pozitif (alçaltılmış) olabilir. Ekstrüderin hafifçe yükseltilmesi durumunda, bazı filaman türleri yapı levhasına daha iyi yapışır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Z Ofseti Konik Katmanları"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "Sıfır olmadığında, Z ofseti birçok katman üzerinde 0’a düşürülür. 0 değeri, Z ofsetinin yazdırmada yer alan tüm katmanlarda sabit kalması anlamına gelir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3479,8 +3613,8 @@ msgstr "Radye Düzeltme"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "Bu ayar, radye ana hattında yer alan iç köşelerin ne kadar yuvarlandığı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."
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3952,6 +4086,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "Normal koşullarda, Cura ağdaki küçük boşlukları diker ve büyük boşluklu katman parçalarını ortadan kaldırır. Bu seçeneği etkinleştirmek, dikilemeyen parçaları muhafaza eder. Bu seçenek, hiçbir işlemin uygun bir GCode oluşturamaması durumunda başvurulacak son seçenek olarak kullanılmalıdır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3982,6 +4126,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "Çakışan bileşimlerin birbirine karışması için her bir katmanda bileşim kesişimi hacimlerine göre değişiklik yapın. Bu ayarın kapatılması, bir bileşimin diğer bileşimlerden ayrılarak çakışmadaki tüm hacmi almasına neden olur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4187,6 +4341,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "Geri çekmelerin sayısını ve kat edilen mesafeyi azaltmak için duvarların yazdırıldığı sırayı optimize edin. Çoğu parça, bunun etkinleştirilmesinden yararlanır, ancak bazılarının yararlanması için gerçekte daha uzun bir süre gerekebilir. Bu yüzden, yazdırma süresi tahminlerini optimizasyonlu ve optimizasyonsuz olarak karşılaştırın."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "Parçalarda Döküm Desteği"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "Destek yapısının daha kolay kırılması için bazı destek hattı bağlantılarını atlayın. Bu ayar, Zikzak destek dolgusu şekli için geçerlidir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "Destek Parçasının Boyutu"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "Destek yapısının daha kolay kırılması için her N milimetresinde bir destek hatları arasında bağlantı atlayın."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "Destek Parçası Hattı Sayısı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "Destek yapısının daha kolay kırılması için her N bağlantı hattında bir zikzak atlayın."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4477,6 +4661,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "Her bir hat dilimine tanıtılan rastgele noktalar arasındaki ortalama mesafe. Poligonların asıl noktalarının çıkarıldığını dikkate alın; bunun sonucunda yüksek pürüzsüzlük sonuçları çözünürlük azalmasıyla sonuçlanabilir. Bu değer, Belirsiz Dış Katman Kalınlığından yüksek olmalıdır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4627,7 +4831,9 @@ 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.\nBu 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.\n"
|
||||
"Bu 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"
|
||||
|
@ -4734,106 +4940,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "Nozül ve aşağı yöndeki hatlar arasındaki mesafe. Daha büyük açıklık, dik açısı daha küçük çapraz şekilde aşağı yöndeki hatların oluşmasına neden olur, dolayısıyla bu durum bir sonraki katman ile yukarı yönde daha az bağlantıya yol açar. Sadece kablo yazdırmaya uygulanır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "Ütülemeyi Etkinleştir"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "Malzeme ekstrude edilmeden önce üst yüzey üzerinden bir kere daha geçilir. Bu işlem en üstte bulunan plastiği eriterek daha pürüzsüz bir yüzey elde etmek için kullanılır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "Sadece En Yüksek Katmanı Ütüle"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "Ütüleme işlemini bileşimin sadece en son katmanı üzerinde gerçekleştirin. Bu, alt katmanlarda pürüzsüz bir yüzey tesviyesine gerek olmadığı durumlarda zaman kazandırır."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "Ütüleme Modeli"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "Üst yüzeyleri ütülemek için kullanılacak model."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "Eş merkezli"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "Zikzak"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "Ütüleme Hattı Boşluğu"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "Ütüleme hatları arasında bulunan mesafe."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "Ütüleme Akışı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "Ütüleme sırasında normal yüzey hattına göre ekstrude edilecek malzeme miktarı. Nozülü dolu tutmak üst yüzeyde oluşan çatlakların bir kısmının doldurulmasını sağlar fakat nozülün fazla dolu olması aşırı ekstrüzyona ve yüzey yanlarında noktalar oluşmasına neden olur."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "Ütüleme İlave Mesafesi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "Modelin kenarlarından bırakılması gereken mesafe. Ağın kenarlarına kadar ütülemek baskınızın kenarlarının pürüzlü olmasına neden olabilir."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "Ütüleme Hızı"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "Üst yüzeyi geçmek için gereken süre."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "Ütüleme İvmesi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "Ütülemenin gerçekleştiği ivme."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "Ütüleme İvmesi Değişimi"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "Ütüleme sırasında oluşan maksimum anlık hız değişimi."
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4894,13 +5000,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "Modeli dosyadan indirirken modele uygulanacak olan dönüşüm matrisi"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "Duvar Ekstruderi"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "İç Duvar Ekstruderi"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "Duvarları yazdırmak için kullanılan ekstruder dişli çarkı. Çoklu ekstrüzyon işlemi için kullanılır."
|
||||
#~ 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, cubic, octet, quarter cubic 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 "Yazdırma dolgu malzemesinin şeklidir. Hat ve zikzak dolgu, farklı katmanlar üzerinde yön değiştirerek malzeme maliyetini azaltır. Izgara, üçgen, kübik, sekizlik, çeyrek kübik ve eş merkezli şekiller, her katmanda tam olarak yazdırı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."
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "İç duvarın şeklini takip eden bir hattı kullanarak, dolgu şeklinin iç duvarla buluştuğu noktada uçları bağlayın. Bu ayarın etkinleştirilmesi, dolgunun duvarlara daha iyi yapışmasını sağlayabilir ve dolgunun dikey yüzeylerin kalitesi üzerindeki etkilerini azaltır. Bu ayarın devre dışı bırakılması, kullanılan malzemenin miktarını azaltır."
|
||||
|
||||
#~ 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 ""
|
||||
#~ "Etek ve baskının ilk katmanı arasındaki yatay mesafe.\n"
|
||||
#~ "Bu minimum mesafedir ve çoklu etek hatları bu mesafeden dışa doğru genişleyecektir."
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "İlk Katman Z Ofseti"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "Ekstrüder, birinci katmanın normal yüksekliğinden bu miktarda mesafe bırakılır. Negatif (yükseltilmiş) veya pozitif (alçaltılmış) olabilir. Ekstrüderin hafifçe yükseltilmesi durumunda, bazı filaman türleri yapı levhasına daha iyi yapışır."
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Z Ofseti Konik Katmanları"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "Sıfır olmadığında, Z ofseti birçok katman üzerinde 0’a düşürülür. 0 değeri, Z ofsetinin yazdırmada yer alan tüm katmanlarda sabit kalması anlamına gelir."
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "Bu ayar, radye ana hattında yer alan iç köşelerin ne kadar yuvarlandığı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."
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -5116,4 +5254,4 @@ msgstr "Modeli dosyadan indirirken modele uygulanacak olan dönüşüm matrisi"
|
|||
|
||||
#~ msgctxt "multiple_mesh_overlap label"
|
||||
#~ msgid "Dual Extrusion Overlap"
|
||||
#~ msgstr "İkili Ekstrüzyon Çakışması"
|
||||
#~ msgstr "İkili Ekstrüzyon Çakışması"
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: PCDotFan <pc@edu.ax>, Bothof <info@bothof.nl>\n"
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Cura 3.0\n"
|
||||
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
|
||||
"POT-Creation-Date: 2017-08-02 16:53+0000\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"
|
||||
"Last-Translator: Bothof <info@bothof.nl>\n"
|
||||
"Language-Team: PCDotFan <pc@edu.ax>, Bothof <info@bothof.nl>\n"
|
||||
|
@ -58,7 +58,9 @@ 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"
|
||||
|
@ -70,7 +72,9 @@ 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"
|
||||
|
@ -607,6 +611,31 @@ msgctxt "layer_height_0 description"
|
|||
msgid "The height of the initial layer in mm. A thicker initial layer makes adhesion to the build plate easier."
|
||||
msgstr "起始层高(以毫米为单位)。起始层越厚,与打印平台的粘着越轻松。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance label"
|
||||
msgid "Slicing Tolerance"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option middle"
|
||||
msgid "Middle"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option exclusive"
|
||||
msgid "Exclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "slicing_tolerance option inclusive"
|
||||
msgid "Inclusive"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "line_width label"
|
||||
msgid "Line Width"
|
||||
|
@ -757,6 +786,16 @@ msgctxt "shell description"
|
|||
msgid "Shell"
|
||||
msgstr "外壳"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr label"
|
||||
msgid "Wall Extruder"
|
||||
msgstr "壁挤出机"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_extruder_nr description"
|
||||
msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
msgstr "用于打印壁的挤出机组。 用于多重挤出。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_0_extruder_nr label"
|
||||
msgid "Outer Wall Extruder"
|
||||
|
@ -769,8 +808,8 @@ msgstr "用于打印外壁的挤出机组。 用于多重挤出。"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr label"
|
||||
msgid "Inner Walls Extruder"
|
||||
msgstr "内壁挤出机"
|
||||
msgid "Inner Wall Extruder"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wall_x_extruder_nr description"
|
||||
|
@ -1202,6 +1241,106 @@ msgctxt "skin_outline_count description"
|
|||
msgid "Replaces the outermost part of the top/bottom pattern with a number of concentric lines. Using one or two lines improves roofs that start on infill material."
|
||||
msgstr "用多个同心线代替顶部/底部图案的最外面部分。 使用一条或两条线改善从填充材料开始的顶板。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "启用熨平"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "再一次经过顶部表面,但不挤出材料。 这是为了进一步融化顶部的塑料,打造更平滑的表面。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "仅熨平最高层"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "仅在网格的最后一层执行熨平。 如果较低的层不需要平滑的表面效果,这将节省时间。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "熨平图案"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "用于熨平顶部表面的图案。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "同心"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "锯齿形"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "熨平走线间距"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "熨平走线之间的距离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "熨平流量"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "熨平期间相对于正常皮肤走线的挤出材料量。 保持喷嘴填充状态有助于填充顶层表面的一些缝隙,但如填充过多则会导致表面上过度挤出和光点。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "熨平嵌入"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "与模型边缘保持的距离。 一直熨平至网格的边缘可能导致打印品出现锯齿状边缘。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "熨平速度"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "通过顶部表面的速度。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "熨平加速度"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "执行熨平的加速度。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "熨平抖动速度"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "执行熨平时的最大瞬时速度变化。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill label"
|
||||
msgid "Infill"
|
||||
|
@ -1249,8 +1388,8 @@ 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, cubic, octet, quarter cubic 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 "打印填充材料的图案。 线条和锯齿形填充在交替层上交换方向,从而降低材料成本。 网格、三角形、立方体、八角形、四面体和同心图案在每层完整打印。 立方体、四面体和八角形填充随每层变化,以在各个方向提供更均衡的强度分布。"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option grid"
|
||||
|
@ -1267,6 +1406,11 @@ msgctxt "infill_pattern option triangles"
|
|||
msgid "Triangles"
|
||||
msgstr "三角形"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option trihexagon"
|
||||
msgid "Tri-Hexagon"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_pattern option cubic"
|
||||
msgid "Cubic"
|
||||
|
@ -1319,8 +1463,8 @@ msgstr "连接填充走线"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "zig_zaggify_infill description"
|
||||
msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
msgstr "使用沿内壁形状的走线连接填充图案与内壁相接的各端。 启用此设置会使填充更好地粘着在壁上,减少填充物效果对垂直表面质量的影响。 禁用此设置可减少使用的材料量。"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_angles label"
|
||||
|
@ -1332,6 +1476,26 @@ msgctxt "infill_angles description"
|
|||
msgid "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns)."
|
||||
msgstr "要使用的整数走线方向列表。 列表中的元素随层的进度依次使用,当达到列表末尾时,它将从头开始。 列表项以逗号分隔,整个列表包含在方括号中。 默认是一个空列表,即意味着使用传统的默认角度(线条和锯齿形图案为 45 和 135 度,其他所有图案为 45 度)。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x label"
|
||||
msgid "Infill X Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_x description"
|
||||
msgid "The infill pattern is offset this distance along the X axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y label"
|
||||
msgid "Infill Y Offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "infill_offset_y description"
|
||||
msgid "The infill pattern is offset this distance along the Y axis."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "sub_div_rad_add label"
|
||||
msgid "Cubic Subdivision Shell"
|
||||
|
@ -1642,6 +1806,26 @@ msgctxt "material_diameter description"
|
|||
msgid "Adjusts the diameter of the filament used. Match this value with the diameter of the used filament."
|
||||
msgstr "调整所用耗材的直径。 将此值与所用耗材的直径匹配。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency label"
|
||||
msgid "Adhesion Tendency"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_adhesion_tendency description"
|
||||
msgid "Surface adhesion tendency."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy label"
|
||||
msgid "Surface Energy"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_surface_energy description"
|
||||
msgid "Surface energy."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "material_flow label"
|
||||
msgid "Flow"
|
||||
|
@ -2832,36 +3016,6 @@ msgctxt "support_connect_zigzags description"
|
|||
msgid "Connect the ZigZags. This will increase the strength of the zig zag support structure."
|
||||
msgstr "连接锯齿形。 这将增加锯齿形支撑结构的强度。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "将支撑结构分拆成块状"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "跳过部分支撑线连接,让支撑结构更容易脱离。 此设置适用于锯齿形支撑结构填充图案。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "支撑块大小"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "每隔 N 毫米在支撑线之间略去一个连接,让支撑结构更容易脱离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "支撑块走线数"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "每隔 N 个连接线跳过一个连接,让支撑结构更容易脱离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_infill_rate label"
|
||||
msgid "Support Density"
|
||||
|
@ -3401,8 +3555,8 @@ msgstr "Skirt 距离"
|
|||
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 "skirt 和打印第一层之间的水平距离。\n这是最小距离,多个 skirt 走线将从此距离向外延伸。"
|
||||
"This is the minimum distance. Multiple skirt lines will extend outwards from this distance."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "skirt_brim_minimal_length label"
|
||||
|
@ -3444,26 +3598,6 @@ msgctxt "brim_outside_only description"
|
|||
msgid "Only print the brim on the outside of the model. This reduces the amount of brim you need to remove afterwards, while it doesn't reduce the bed adhesion that much."
|
||||
msgstr "仅在模型外部打印 brim。 这会减少您之后需要移除的 brim 量,而不会过度影响热床附着。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 label"
|
||||
msgid "Initial Layer Z Offset"
|
||||
msgstr "起始层 Z 偏移量"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_layer_0 description"
|
||||
msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
msgstr "此值为挤出机与第一层正常高度之间的偏移量。 该值可以为正(升起),也可以为负(降下)。 如果挤出机略微升起,部分耗材类型会与打印平台实现更好的粘着。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers label"
|
||||
msgid "Z Offset Taper Layers"
|
||||
msgstr "Z 偏移锥形层"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "z_offset_taper_layers description"
|
||||
msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
msgstr "当非零时,Z 偏移在多个层中逐步降至零。 值为 0 则表示,在打印品的各个层中 Z 偏移量保持不变。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_margin label"
|
||||
msgid "Raft Extra Margin"
|
||||
|
@ -3481,8 +3615,8 @@ msgstr "Raft 平滑度"
|
|||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_smoothing description"
|
||||
msgid "This setting control 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 "该设置控制 Raft 轮廓中的内角呈圆形的程度。 内向角被设置为半圆形,半径等于此处的值。 此设置还会移除 raft 轮廓中小于此半圆形的孔。"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "raft_airgap label"
|
||||
|
@ -3954,6 +4088,16 @@ msgctxt "meshfix_keep_open_polygons description"
|
|||
msgid "Normally Cura tries to stitch up small holes in the mesh and remove parts of a layer with big holes. Enabling this option keeps those parts which cannot be stitched. This option should be used as a last resort option when everything else fails to produce proper GCode."
|
||||
msgstr "一般情况下,Cura 会尝试缝合网格中的小孔,并移除有大孔的部分层。 启用此选项将保留那些无法缝合的部分。 当其他所有方法都无法产生正确的 GCode 时,该选项应该被用作最后手段。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "meshfix_maximum_resolution label"
|
||||
msgid "Maximum Resolution"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "multiple_mesh_overlap label"
|
||||
msgid "Merged Meshes Overlap"
|
||||
|
@ -3984,6 +4128,16 @@ msgctxt "alternate_carve_order description"
|
|||
msgid "Switch to which mesh intersecting volumes will belong with every layer, so that the overlapping meshes become interwoven. Turning this setting off will cause one of the meshes to obtain all of the volume in the overlap, while it is removed from the other meshes."
|
||||
msgstr "切换为与每个层相交的网格相交体积,以便重叠的网格交织在一起。 关闭此设置将使其中一个网格获得重叠中的所有体积,同时将其从其他网格中移除。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "remove_empty_first_layers label"
|
||||
msgid "Remove Empty First Layers"
|
||||
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 ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "blackmagic label"
|
||||
msgid "Special Modes"
|
||||
|
@ -4189,6 +4343,36 @@ msgctxt "optimize_wall_printing_order description"
|
|||
msgid "Optimize the order in which walls are printed so as to reduce the number of retractions and the distance travelled. Most parts will benefit from this being enabled but some may actually take longer so please compare the print time estimates with and without optimization."
|
||||
msgstr "优化打印各个壁的顺序,以减少回抽次数和空驶距离。 启用此设置将对大部分零件有益,但有的则会耗费更长时间,因此请将优化和不优化的打印时间估计值进行对比。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags label"
|
||||
msgid "Break Up Support In Chunks"
|
||||
msgstr "将支撑结构分拆成块状"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_some_zags description"
|
||||
msgid "Skip some support line connections to make the support structure easier to break away. This setting is applicable to the Zig Zag support infill pattern."
|
||||
msgstr "跳过部分支撑线连接,让支撑结构更容易脱离。 此设置适用于锯齿形支撑结构填充图案。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm label"
|
||||
msgid "Support Chunk Size"
|
||||
msgstr "支撑块大小"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_skip_zag_per_mm description"
|
||||
msgid "Leave out a connection between support lines once every N millimeter to make the support structure easier to break away."
|
||||
msgstr "每隔 N 毫米在支撑线之间略去一个连接,让支撑结构更容易脱离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count label"
|
||||
msgid "Support Chunk Line Count"
|
||||
msgstr "支撑块走线数"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "support_zag_skip_count description"
|
||||
msgid "Skip one in every N connection lines to make the support structure easier to break away."
|
||||
msgstr "每隔 N 个连接线跳过一个连接,让支撑结构更容易脱离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "draft_shield_enabled label"
|
||||
msgid "Enable Draft Shield"
|
||||
|
@ -4479,6 +4663,26 @@ msgctxt "magic_fuzzy_skin_point_dist description"
|
|||
msgid "The average distance between the random points introduced on each line segment. Note that the original points of the polygon are discarded, so a high smoothness results in a reduction of the resolution. This value must be higher than half the Fuzzy Skin Thickness."
|
||||
msgstr "在每个走线部分引入的随机点之间的平均距离。 注意,多边形的原始点被舍弃,因此高平滑度导致分辨率降低。 该值必须大于模糊皮肤厚度的一半。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset label"
|
||||
msgid "Flow rate compensation max extrusion offset"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_max_extrusion_offset description"
|
||||
msgid "The maximum distance in mm to compensate."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor label"
|
||||
msgid "Flow rate compensation factor"
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "flow_rate_extrusion_offset_factor description"
|
||||
msgid "The multiplication factor for the flow rate -> distance translation."
|
||||
msgstr ""
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "wireframe_enabled label"
|
||||
msgid "Wire Printing"
|
||||
|
@ -4629,7 +4833,9 @@ 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"
|
||||
|
@ -4736,106 +4942,6 @@ msgctxt "wireframe_nozzle_clearance description"
|
|||
msgid "Distance between the nozzle and horizontally downward lines. Larger clearance results in diagonally downward lines with a less steep angle, which in turn results in less upward connections with the next layer. Only applies to Wire Printing."
|
||||
msgstr "喷嘴和水平下行线之间的距离。 较大的间隙会让斜下行线角度较平缓,进而使第二层的上行连接较少。 仅应用于单线打印。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled label"
|
||||
msgid "Enable Ironing"
|
||||
msgstr "启用熨平"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_enabled description"
|
||||
msgid "Go over the top surface one additional time, but without extruding material. This is meant to melt the plastic on top further, creating a smoother surface."
|
||||
msgstr "再一次经过顶部表面,但不挤出材料。 这是为了进一步融化顶部的塑料,打造更平滑的表面。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer label"
|
||||
msgid "Iron Only Highest Layer"
|
||||
msgstr "仅熨平最高层"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_only_highest_layer description"
|
||||
msgid "Only perform ironing on the very last layer of the mesh. This saves time if the lower layers don't need a smooth surface finish."
|
||||
msgstr "仅在网格的最后一层执行熨平。 如果较低的层不需要平滑的表面效果,这将节省时间。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern label"
|
||||
msgid "Ironing Pattern"
|
||||
msgstr "熨平图案"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern description"
|
||||
msgid "The pattern to use for ironing top surfaces."
|
||||
msgstr "用于熨平顶部表面的图案。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option concentric"
|
||||
msgid "Concentric"
|
||||
msgstr "同心"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_pattern option zigzag"
|
||||
msgid "Zig Zag"
|
||||
msgstr "锯齿形"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing label"
|
||||
msgid "Ironing Line Spacing"
|
||||
msgstr "熨平走线间距"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_line_spacing description"
|
||||
msgid "The distance between the lines of ironing."
|
||||
msgstr "熨平走线之间的距离。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow label"
|
||||
msgid "Ironing Flow"
|
||||
msgstr "熨平流量"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_flow description"
|
||||
msgid "The amount of material, relative to a normal skin line, to extrude during ironing. Keeping the nozzle filled helps filling some of the crevices of the top surface, but too much results in overextrusion and blips on the side of the surface."
|
||||
msgstr "熨平期间相对于正常皮肤走线的挤出材料量。 保持喷嘴填充状态有助于填充顶层表面的一些缝隙,但如填充过多则会导致表面上过度挤出和光点。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset label"
|
||||
msgid "Ironing Inset"
|
||||
msgstr "熨平嵌入"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "ironing_inset description"
|
||||
msgid "A distance to keep from the edges of the model. Ironing all the way to the edge of the mesh may result in a jagged edge on your print."
|
||||
msgstr "与模型边缘保持的距离。 一直熨平至网格的边缘可能导致打印品出现锯齿状边缘。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing label"
|
||||
msgid "Ironing Speed"
|
||||
msgstr "熨平速度"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "speed_ironing description"
|
||||
msgid "The speed at which to pass over the top surface."
|
||||
msgstr "通过顶部表面的速度。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing label"
|
||||
msgid "Ironing Acceleration"
|
||||
msgstr "熨平加速度"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "acceleration_ironing description"
|
||||
msgid "The acceleration with which ironing is performed."
|
||||
msgstr "执行熨平的加速度。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing label"
|
||||
msgid "Ironing Jerk"
|
||||
msgstr "熨平抖动速度"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "jerk_ironing description"
|
||||
msgid "The maximum instantaneous velocity change while performing ironing."
|
||||
msgstr "执行熨平时的最大瞬时速度变化。"
|
||||
|
||||
#: fdmprinter.def.json
|
||||
msgctxt "command_line_settings label"
|
||||
msgid "Command Line Settings"
|
||||
|
@ -4896,13 +5002,45 @@ msgctxt "mesh_rotation_matrix description"
|
|||
msgid "Transformation matrix to be applied to the model when loading it from file."
|
||||
msgstr "在将模型从文件中载入时应用在模型上的转换矩阵。"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr label"
|
||||
#~ msgid "Wall Extruder"
|
||||
#~ msgstr "壁挤出机"
|
||||
#~ msgctxt "wall_x_extruder_nr label"
|
||||
#~ msgid "Inner Walls Extruder"
|
||||
#~ msgstr "内壁挤出机"
|
||||
|
||||
#~ msgctxt "wall_extruder_nr description"
|
||||
#~ msgid "The extruder train used for printing the walls. This is used in multi-extrusion."
|
||||
#~ msgstr "用于打印壁的挤出机组。 用于多重挤出。"
|
||||
#~ 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, cubic, octet, quarter cubic 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 "打印填充材料的图案。 线条和锯齿形填充在交替层上交换方向,从而降低材料成本。 网格、三角形、立方体、八角形、四面体和同心图案在每层完整打印。 立方体、四面体和八角形填充随每层变化,以在各个方向提供更均衡的强度分布。"
|
||||
|
||||
#~ msgctxt "zig_zaggify_infill description"
|
||||
#~ msgid "Connect the ends where the infill pattern meets the inner wall using a lines which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduces the effects on infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used."
|
||||
#~ msgstr "使用沿内壁形状的走线连接填充图案与内壁相接的各端。 启用此设置会使填充更好地粘着在壁上,减少填充物效果对垂直表面质量的影响。 禁用此设置可减少使用的材料量。"
|
||||
|
||||
#~ 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 ""
|
||||
#~ "skirt 和打印第一层之间的水平距离。\n"
|
||||
#~ "这是最小距离,多个 skirt 走线将从此距离向外延伸。"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 label"
|
||||
#~ msgid "Initial Layer Z Offset"
|
||||
#~ msgstr "起始层 Z 偏移量"
|
||||
|
||||
#~ msgctxt "z_offset_layer_0 description"
|
||||
#~ msgid "The extruder is offset from the normal height of the first layer by this amount. It can be positive (raised) or negative (lowered). Some filament types adhere to the build plate better if the extruder is raised slightly."
|
||||
#~ msgstr "此值为挤出机与第一层正常高度之间的偏移量。 该值可以为正(升起),也可以为负(降下)。 如果挤出机略微升起,部分耗材类型会与打印平台实现更好的粘着。"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers label"
|
||||
#~ msgid "Z Offset Taper Layers"
|
||||
#~ msgstr "Z 偏移锥形层"
|
||||
|
||||
#~ msgctxt "z_offset_taper_layers description"
|
||||
#~ msgid "When non-zero, the Z offset is reduced to 0 over that many layers. A value of 0 means that the Z offset remains constant for all the layers in the print."
|
||||
#~ msgstr "当非零时,Z 偏移在多个层中逐步降至零。 值为 0 则表示,在打印品的各个层中 Z 偏移量保持不变。"
|
||||
|
||||
#~ msgctxt "raft_smoothing description"
|
||||
#~ msgid "This setting control 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 "该设置控制 Raft 轮廓中的内角呈圆形的程度。 内向角被设置为半圆形,半径等于此处的值。 此设置还会移除 raft 轮廓中小于此半圆形的孔。"
|
||||
|
||||
#~ 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, cubic, tetrahedral and concentric patterns are fully printed every layer. Cubic and tetrahedral infill change with every layer to provide a more equal distribution of strength over each direction."
|
||||
|
@ -4998,4 +5136,4 @@ msgstr "在将模型从文件中载入时应用在模型上的转换矩阵。"
|
|||
|
||||
#~ msgctxt "machine_gcode_flavor option RepRap (Volumatric)"
|
||||
#~ msgid "RepRap (Volumetric)"
|
||||
#~ msgstr "RepRap (Volumetric)"
|
||||
#~ msgstr "RepRap (Volumetric)"
|
||||
|
|
|
@ -159,7 +159,7 @@ UM.PreferencesPage
|
|||
append({ text: "Nederlands", code: "nl_NL" })
|
||||
append({ text: "Polski", code: "pl_PL" })
|
||||
append({ text: "Português do Brasil", code: "pt_BR" })
|
||||
append({ text: "Русский", code: "ru_RU" })
|
||||
//Russian is disabled for being incomplete: append({ text: "Русский", code: "ru_RU" })
|
||||
append({ text: "Türkçe", code: "tr_TR" })
|
||||
append({ text: "简体中文", code: "zh_CN" })
|
||||
|
||||
|
|
|
@ -45,6 +45,14 @@ Item {
|
|||
}
|
||||
}
|
||||
|
||||
function sliceOrStopSlicing() {
|
||||
if ([1, 5].indexOf(UM.Backend.state) != -1) {
|
||||
backend.forceSlice();
|
||||
} else {
|
||||
backend.stopSlicing();
|
||||
}
|
||||
}
|
||||
|
||||
Label {
|
||||
id: statusLabel
|
||||
width: parent.width - 2 * UM.Theme.getSize("sidebar_margin").width
|
||||
|
@ -86,6 +94,10 @@ Item {
|
|||
if (saveToButton.enabled) {
|
||||
saveToButton.clicked();
|
||||
}
|
||||
// prepare button
|
||||
if (prepareButton.enabled) {
|
||||
sliceOrStopSlicing();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -145,7 +157,7 @@ Item {
|
|||
Button {
|
||||
id: prepareButton
|
||||
|
||||
tooltip: UM.OutputDeviceManager.activeDeviceDescription;
|
||||
tooltip: catalog.i18nc("@info:tooltip","Slice");
|
||||
// 1 = not started, 2 = Processing
|
||||
enabled: (base.backendState == 1 || base.backendState == 2) && base.activity == true
|
||||
visible: {
|
||||
|
@ -162,11 +174,7 @@ Item {
|
|||
text: [1, 5].indexOf(UM.Backend.state) != -1 ? catalog.i18nc("@label:Printjob", "Prepare") : catalog.i18nc("@label:Printjob", "Cancel")
|
||||
onClicked:
|
||||
{
|
||||
if ([1, 5].indexOf(UM.Backend.state) != -1) {
|
||||
backend.forceSlice();
|
||||
} else {
|
||||
backend.stopSlicing();
|
||||
}
|
||||
sliceOrStopSlicing();
|
||||
}
|
||||
|
||||
style: ButtonStyle {
|
||||
|
|
|
@ -343,7 +343,6 @@ Rectangle
|
|||
|
||||
onEntered:
|
||||
{
|
||||
|
||||
if(base.printDuration.valid && !base.printDuration.isTotalDurationZero)
|
||||
{
|
||||
// All the time information for the different features is achieved
|
||||
|
@ -356,20 +355,10 @@ Rectangle
|
|||
{
|
||||
if(!print_time[feature].isTotalDurationZero)
|
||||
{
|
||||
var feature_name = "";
|
||||
|
||||
if (feature.length <= 11)
|
||||
{
|
||||
feature_name = feature
|
||||
}
|
||||
else{
|
||||
feature_name = feature.substring(0, 8) + "..."
|
||||
}
|
||||
|
||||
|
||||
content += "<tr><td>" + feature_name + ":" +
|
||||
" </td><td>" + print_time[feature].getDisplayString(UM.DurationFormat.Short) +
|
||||
" </td><td>" + Math.round(100 * parseInt(print_time[feature].getDisplayString(UM.DurationFormat.Seconds)) / total_seconds) + "%" +
|
||||
content += "<tr><td colspan='2'>" + feature + "</td></tr>" +
|
||||
"<tr>" +
|
||||
"<td width='60%'>" + print_time[feature].getDisplayString(UM.DurationFormat.Short) + "</td>" +
|
||||
"<td width='40%'> " + Math.round(100 * parseInt(print_time[feature].getDisplayString(UM.DurationFormat.Seconds)) / total_seconds) + "%" +
|
||||
"</td></tr>";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -346,7 +346,7 @@ Column
|
|||
Label {
|
||||
id: materialInfoLabel
|
||||
wrapMode: Text.WordWrap
|
||||
text: catalog.i18nc("@label", "<a href='%1'>Check material compatibility</a>")
|
||||
text: catalog.i18nc("@label", "<a href='%1'>Check compatibility</a>")
|
||||
font: UM.Theme.getFont("default")
|
||||
color: UM.Theme.getColor("text")
|
||||
linkColor: UM.Theme.getColor("text_link")
|
||||
|
|
|
@ -220,6 +220,83 @@ Rectangle
|
|||
menu: PrinterMenu { }
|
||||
}
|
||||
|
||||
//View orientation Item
|
||||
Row
|
||||
{
|
||||
id: viewOrientationControl
|
||||
height: 30
|
||||
|
||||
spacing: 2
|
||||
|
||||
visible: !base.monitoringPrint
|
||||
|
||||
anchors {
|
||||
verticalCenter: base.verticalCenter
|
||||
right: viewModeButton.right
|
||||
rightMargin: UM.Theme.getSize("default_margin").width + viewModeButton.width
|
||||
}
|
||||
|
||||
// #1 3d view
|
||||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("view_3d")
|
||||
style: UM.Theme.styles.orientation_button
|
||||
anchors.verticalCenter: viewOrientationControl.verticalCenter
|
||||
onClicked:{
|
||||
UM.Controller.rotateView("3d", 0);
|
||||
}
|
||||
visible: base.width > 1100
|
||||
}
|
||||
|
||||
// #2 Front view
|
||||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("view_front")
|
||||
style: UM.Theme.styles.orientation_button
|
||||
anchors.verticalCenter: viewOrientationControl.verticalCenter
|
||||
onClicked:{
|
||||
UM.Controller.rotateView("home", 0);
|
||||
}
|
||||
visible: base.width > 1130
|
||||
}
|
||||
|
||||
// #3 Top view
|
||||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("view_top")
|
||||
style: UM.Theme.styles.orientation_button
|
||||
anchors.verticalCenter: viewOrientationControl.verticalCenter
|
||||
onClicked:{
|
||||
UM.Controller.rotateView("y", 90);
|
||||
}
|
||||
visible: base.width > 1160
|
||||
}
|
||||
|
||||
// #4 Left view
|
||||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("view_left")
|
||||
style: UM.Theme.styles.orientation_button
|
||||
anchors.verticalCenter: viewOrientationControl.verticalCenter
|
||||
onClicked:{
|
||||
UM.Controller.rotateView("x", 90);
|
||||
}
|
||||
visible: base.width > 1190
|
||||
}
|
||||
|
||||
// #5 Left view
|
||||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("view_right")
|
||||
style: UM.Theme.styles.orientation_button
|
||||
anchors.verticalCenter: viewOrientationControl.verticalCenter
|
||||
onClicked:{
|
||||
UM.Controller.rotateView("x", -90);
|
||||
}
|
||||
visible: base.width > 1210
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox
|
||||
{
|
||||
id: viewModeButton
|
||||
|
|
|
@ -31,7 +31,7 @@ switch_extruder_retraction_amount = 2
|
|||
switch_extruder_retraction_speeds = =retraction_speed
|
||||
switch_extruder_prime_speed = =retraction_prime_speed
|
||||
|
||||
speed_print = 50
|
||||
speed_print = 20
|
||||
speed_infill = =speed_print
|
||||
speed_layer_0 = =round(speed_print / 5 * 4)
|
||||
speed_wall = =round(speed_print / 2)
|
||||
|
|
|
@ -31,7 +31,7 @@ switch_extruder_retraction_amount = 2
|
|||
switch_extruder_retraction_speeds = =retraction_speed
|
||||
switch_extruder_prime_speed = =retraction_prime_speed
|
||||
|
||||
speed_print = 50
|
||||
speed_print = 20
|
||||
speed_infill = =speed_print
|
||||
speed_layer_0 = =round(speed_print / 5 * 4)
|
||||
speed_wall = =round(speed_print / 2)
|
||||
|
|
|
@ -31,7 +31,7 @@ switch_extruder_retraction_amount = 2
|
|||
switch_extruder_retraction_speeds = =retraction_speed
|
||||
switch_extruder_prime_speed = =retraction_prime_speed
|
||||
|
||||
speed_print = 50
|
||||
speed_print = 20
|
||||
speed_infill = =speed_print
|
||||
speed_layer_0 = =round(speed_print / 5 * 4)
|
||||
speed_wall = =round(speed_print / 2)
|
||||
|
|
|
@ -31,7 +31,7 @@ switch_extruder_retraction_amount = 2
|
|||
switch_extruder_retraction_speeds = =retraction_speed
|
||||
switch_extruder_prime_speed = =retraction_prime_speed
|
||||
|
||||
speed_print = 50
|
||||
speed_print = 20
|
||||
speed_infill = =speed_print
|
||||
speed_layer_0 = =round(speed_print / 5 * 4)
|
||||
speed_wall = =round(speed_print / 2)
|
||||
|
|
|
@ -31,7 +31,7 @@ switch_extruder_retraction_amount = 2
|
|||
switch_extruder_retraction_speeds = =retraction_speed
|
||||
switch_extruder_prime_speed = =retraction_prime_speed
|
||||
|
||||
speed_print = 30
|
||||
speed_print = 15
|
||||
speed_infill = =speed_print
|
||||
speed_layer_0 = =round(speed_print / 5 * 4)
|
||||
speed_wall = =round(speed_print / 2)
|
||||
|
|
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