diff --git a/cura/API/Backups.py b/cura/API/Backups.py index ba416bd870..a2423bd798 100644 --- a/cura/API/Backups.py +++ b/cura/API/Backups.py @@ -3,30 +3,26 @@ from cura.Backups.BackupsManager import BackupsManager +## The back-ups API provides a version-proof bridge between Cura's +# BackupManager and plug-ins that hook into it. +# +# Usage: +# ``from cura.API import CuraAPI +# api = CuraAPI() +# api.backups.createBackup() +# api.backups.restoreBackup(my_zip_file, {"cura_release": "3.1"})`` class Backups: - """ - The backups API provides a version-proof bridge between Cura's BackupManager and plugins that hook into it. - - Usage: - from cura.API import CuraAPI - api = CuraAPI() - api.backups.createBackup() - api.backups.restoreBackup(my_zip_file, {"cura_release": "3.1"}) - """ - manager = BackupsManager() # Re-used instance of the backups manager. + ## Create a new back-up using the BackupsManager. + # \return Tuple containing a ZIP file with the back-up data and a dict + # with metadata about the back-up. def createBackup(self) -> (bytes, dict): - """ - Create a new backup using the BackupsManager. - :return: Tuple containing a ZIP file with the backup data and a dict with meta data about the backup. - """ return self.manager.createBackup() + ## Restore a back-up using the BackupsManager. + # \param zip_file A ZIP file containing the actual back-up data. + # \param meta_data Some metadata needed for restoring a back-up, like the + # Cura version number. def restoreBackup(self, zip_file: bytes, meta_data: dict) -> None: - """ - Restore a backup using the BackupManager. - :param zip_file: A ZIP file containing the actual backup data. - :param meta_data: Some meta data needed for restoring a backup, like the Cura version number. - """ return self.manager.restoreBackup(zip_file, meta_data) diff --git a/cura/API/__init__.py b/cura/API/__init__.py index 7dd5d8f79e..13f6722336 100644 --- a/cura/API/__init__.py +++ b/cura/API/__init__.py @@ -3,14 +3,13 @@ from UM.PluginRegistry import PluginRegistry from cura.API.Backups import Backups - +## The official Cura API that plug-ins can use to interact with Cura. +# +# Python does not technically prevent talking to other classes as well, but +# this API provides a version-safe interface with proper deprecation warnings +# etc. Usage of any other methods than the ones provided in this API can cause +# plug-ins to be unstable. class CuraAPI: - """ - The official Cura API that plugins can use to interact with Cura. - Python does not technically prevent talking to other classes as well, - but this API provides a version-safe interface with proper deprecation warnings etc. - Usage of any other methods than the ones provided in this API can cause plugins to be unstable. - """ # For now we use the same API version to be consistent. VERSION = PluginRegistry.APIVersion diff --git a/cura/Arranging/Arrange.py b/cura/Arranging/Arrange.py index 21ed45dbf1..ee5db3f1fb 100644 --- a/cura/Arranging/Arrange.py +++ b/cura/Arranging/Arrange.py @@ -1,10 +1,12 @@ # Copyright (c) 2018 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. +from typing import List from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator from UM.Logger import Logger from UM.Math.Polygon import Polygon from UM.Math.Vector import Vector +from UM.Scene.SceneNode import SceneNode from cura.Arranging.ShapeArray import ShapeArray from cura.Scene import ZOffsetDecorator @@ -85,8 +87,7 @@ class Arrange: # \param node # \param offset_shape_arr ShapeArray with offset, for placing the shape # \param hull_shape_arr ShapeArray without offset, used to find location - def findNodePlacement(self, node, offset_shape_arr, hull_shape_arr, step = 1): - new_node = copy.deepcopy(node) + def findNodePlacement(self, node: SceneNode, offset_shape_arr: ShapeArray, hull_shape_arr: ShapeArray, step = 1): best_spot = self.bestSpot( hull_shape_arr, start_prio = self._last_priority, step = step) x, y = best_spot.x, best_spot.y @@ -95,21 +96,21 @@ class Arrange: self._last_priority = best_spot.priority # Ensure that the object is above the build platform - new_node.removeDecorator(ZOffsetDecorator.ZOffsetDecorator) - if new_node.getBoundingBox(): - center_y = new_node.getWorldPosition().y - new_node.getBoundingBox().bottom + node.removeDecorator(ZOffsetDecorator.ZOffsetDecorator) + if node.getBoundingBox(): + center_y = node.getWorldPosition().y - node.getBoundingBox().bottom else: center_y = 0 if x is not None: # We could find a place - new_node.setPosition(Vector(x, center_y, y)) + node.setPosition(Vector(x, center_y, y)) found_spot = True self.place(x, y, offset_shape_arr) # place the object in arranger else: Logger.log("d", "Could not find spot!"), found_spot = False - new_node.setPosition(Vector(200, center_y, 100)) - return new_node, found_spot + node.setPosition(Vector(200, center_y, 100)) + return found_spot ## Fill priority, center is best. Lower value is better # This is a strategy for the arranger. diff --git a/cura/Backups/Backup.py b/cura/Backups/Backup.py index 6c1f02dc01..f935aa6af5 100644 --- a/cura/Backups/Backup.py +++ b/cura/Backups/Backup.py @@ -17,12 +17,11 @@ from UM.Resources import Resources from cura.CuraApplication import CuraApplication +## The back-up class holds all data about a back-up. +# +# It is also responsible for reading and writing the zip file to the user data +# folder. class Backup: - """ - The backup class holds all data about a backup. - It is also responsible for reading and writing the zip file to the user data folder. - """ - # These files should be ignored when making a backup. IGNORED_FILES = [r"cura\.log", r"plugins\.json", r"cache", r"__pycache__", r"\.qmlc", r"\.pyc"] @@ -33,10 +32,8 @@ class Backup: self.zip_file = zip_file # type: Optional[bytes] self.meta_data = meta_data # type: Optional[dict] + ## Create a back-up from the current user config folder. def makeFromCurrent(self) -> None: - """ - Create a backup from the current user config folder. - """ cura_release = CuraApplication.getInstance().getVersion() version_data_dir = Resources.getDataStoragePath() @@ -77,12 +74,10 @@ class Backup: "plugin_count": str(plugin_count) } + ## Make a full archive from the given root path with the given name. + # \param root_path The root directory to archive recursively. + # \return The archive as bytes. def _makeArchive(self, buffer: "io.BytesIO", root_path: str) -> Optional[ZipFile]: - """ - Make a full archive from the given root path with the given name. - :param root_path: The root directory to archive recursively. - :return: The archive as bytes. - """ ignore_string = re.compile("|".join(self.IGNORED_FILES)) try: archive = ZipFile(buffer, "w", ZIP_DEFLATED) @@ -101,15 +96,13 @@ class Backup: "Could not create archive from user data directory: {}".format(error))) return None + ## Show a UI message. def _showMessage(self, message: str) -> None: - """Show a UI message""" Message(message, title=self.catalog.i18nc("@info:title", "Backup"), lifetime=30).show() + ## Restore this back-up. + # \return Whether we had success or not. def restore(self) -> bool: - """ - Restore this backups - :return: A boolean whether we had success or not. - """ if not self.zip_file or not self.meta_data or not self.meta_data.get("cura_release", None): # We can restore without the minimum required information. Logger.log("w", "Tried to restore a Cura backup without having proper data or meta data.") @@ -142,14 +135,12 @@ class Backup: return extracted + ## Extract the whole archive to the given target path. + # \param archive The archive as ZipFile. + # \param target_path The target path. + # \return Whether we had success or not. @staticmethod def _extractArchive(archive: "ZipFile", target_path: str) -> bool: - """ - Extract the whole archive to the given target path. - :param archive: The archive as ZipFile. - :param target_path: The target path. - :return: A boolean whether we had success or not. - """ Logger.log("d", "Removing current data in location: %s", target_path) Resources.factoryReset() Logger.log("d", "Extracting backup to location: %s", target_path) diff --git a/cura/Backups/BackupsManager.py b/cura/Backups/BackupsManager.py index fa75ddb587..850b0a2edc 100644 --- a/cura/Backups/BackupsManager.py +++ b/cura/Backups/BackupsManager.py @@ -7,19 +7,18 @@ from cura.Backups.Backup import Backup from cura.CuraApplication import CuraApplication +## The BackupsManager is responsible for managing the creating and restoring of +# back-ups. +# +# Back-ups themselves are represented in a different class. class BackupsManager: - """ - The BackupsManager is responsible for managing the creating and restoring of backups. - Backups themselves are represented in a different class. - """ def __init__(self): self._application = CuraApplication.getInstance() + ## Get a back-up of the current configuration. + # \return A tuple containing a ZipFile (the actual back-up) and a dict + # containing some metadata (like version). def createBackup(self) -> (Optional[bytes], Optional[dict]): - """ - Get a backup of the current configuration. - :return: A Tuple containing a ZipFile (the actual backup) and a dict containing some meta data (like version). - """ self._disableAutoSave() backup = Backup() backup.makeFromCurrent() @@ -27,12 +26,11 @@ class BackupsManager: # We don't return a Backup here because we want plugins only to interact with our API and not full objects. return backup.zip_file, backup.meta_data + ## Restore a back-up from a given ZipFile. + # \param zip_file A bytes object containing the actual back-up. + # \param meta_data A dict containing some metadata that is needed to + # restore the back-up correctly. def restoreBackup(self, zip_file: bytes, meta_data: dict) -> None: - """ - Restore a backup from a given ZipFile. - :param zip_file: A bytes object containing the actual backup. - :param meta_data: A dict containing some meta data that is needed to restore the backup correctly. - """ if not meta_data.get("cura_release", None): # If there is no "cura_release" specified in the meta data, we don't execute a backup restore. Logger.log("w", "Tried to restore a backup without specifying a Cura version number.") @@ -47,10 +45,11 @@ class BackupsManager: # We don't want to store the data at this point as that would override the just-restored backup. self._application.windowClosed(save_data=False) + ## Here we try to disable the auto-save plug-in as it might interfere with + # restoring a back-up. def _disableAutoSave(self): - """Here we try to disable the auto-save plugin as it might interfere with restoring a backup.""" self._application.setSaveDataEnabled(False) + ## Re-enable auto-save after we're done. def _enableAutoSave(self): - """Re-enable auto-save after we're done.""" self._application.setSaveDataEnabled(True) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index e34d0a07ab..9db53c0836 100755 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -225,6 +225,8 @@ class CuraApplication(QtApplication): from cura.Settings.CuraContainerRegistry import CuraContainerRegistry self._container_registry_class = CuraContainerRegistry + from cura.CuraPackageManager import CuraPackageManager + self._package_manager_class = CuraPackageManager # Adds command line options to the command line parser. This should be called after the application is created and # before the pre-start. @@ -511,7 +513,6 @@ class CuraApplication(QtApplication): preferences.addPreference("cura/asked_dialog_on_project_save", False) preferences.addPreference("cura/choice_on_profile_override", "always_ask") preferences.addPreference("cura/choice_on_open_project", "always_ask") - preferences.addPreference("cura/not_arrange_objects_on_load", False) preferences.addPreference("cura/use_multi_build_plate", False) preferences.addPreference("cura/currency", "€") @@ -1601,9 +1602,7 @@ class CuraApplication(QtApplication): self._currently_loading_files.remove(filename) self.fileLoaded.emit(filename) - arrange_objects_on_load = ( - not self.getPreferences().getValue("cura/use_multi_build_plate") or - not self.getPreferences().getValue("cura/not_arrange_objects_on_load")) + arrange_objects_on_load = not self.getPreferences().getValue("cura/use_multi_build_plate") target_build_plate = self.getMultiBuildPlateModel().activeBuildPlate if arrange_objects_on_load else -1 root = self.getController().getScene().getRoot() @@ -1676,7 +1675,7 @@ class CuraApplication(QtApplication): return # Step is for skipping tests to make it a lot faster. it also makes the outcome somewhat rougher - node, _ = arranger.findNodePlacement(node, offset_shape_arr, hull_shape_arr, step = 10) + arranger.findNodePlacement(node, offset_shape_arr, hull_shape_arr, step = 10) # This node is deep copied from some other node which already has a BuildPlateDecorator, but the deepcopy # of BuildPlateDecorator produces one that's associated with build plate -1. So, here we need to check if diff --git a/cura/CuraPackageManager.py b/cura/CuraPackageManager.py index 49f095941a..f65633ed66 100644 --- a/cura/CuraPackageManager.py +++ b/cura/CuraPackageManager.py @@ -7,8 +7,11 @@ from UM.Resources import Resources #To find storage paths for some resource type class CuraPackageManager(PackageManager): - def __init__(self, parent = None): - super().__init__(parent) + def __init__(self, application, parent = None): + super().__init__(application, parent) + def initialize(self): self._installation_dirs_dict["materials"] = Resources.getStoragePath(CuraApplication.ResourceTypes.MaterialInstanceContainer) self._installation_dirs_dict["qualities"] = Resources.getStoragePath(CuraApplication.ResourceTypes.QualityInstanceContainer) + + super().initialize() diff --git a/cura/MultiplyObjectsJob.py b/cura/MultiplyObjectsJob.py index 57db7734e7..3cbf795952 100644 --- a/cura/MultiplyObjectsJob.py +++ b/cura/MultiplyObjectsJob.py @@ -64,10 +64,11 @@ class MultiplyObjectsJob(Job): arranger.resetLastPriority() for i in range(self._count): # We do place the nodes one by one, as we want to yield in between. + new_node = copy.deepcopy(node) + solution_found = False if not node_too_big: - new_node, solution_found = arranger.findNodePlacement(current_node, offset_shape_arr, hull_shape_arr) - else: - new_node = copy.deepcopy(node) + solution_found = arranger.findNodePlacement(new_node, offset_shape_arr, hull_shape_arr) + if node_too_big or not solution_found: found_solution_for_all = False new_location = new_node.getPosition() diff --git a/cura/PlatformPhysics.py b/cura/PlatformPhysics.py index 6b539a4574..8ddcdbfb2f 100755 --- a/cura/PlatformPhysics.py +++ b/cura/PlatformPhysics.py @@ -8,6 +8,7 @@ from UM.Scene.SceneNode import SceneNode from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator from UM.Math.Vector import Vector from UM.Scene.Selection import Selection +from UM.Scene.SceneNodeSettings import SceneNodeSettings from cura.Scene.ConvexHullDecorator import ConvexHullDecorator @@ -80,6 +81,10 @@ class PlatformPhysics: # only push away objects if this node is a printing mesh if not node.callDecoration("isNonPrintingMesh") and Application.getInstance().getPreferences().getValue("physics/automatic_push_free"): + # Do not move locked nodes + if node.getSetting(SceneNodeSettings.LockPosition): + continue + # Check for collisions between convex hulls for other_node in BreadthFirstIterator(root): # Ignore root, ourselves and anything that is not a normal SceneNode. diff --git a/cura/Settings/ContainerManager.py b/cura/Settings/ContainerManager.py index 35550d5cdc..238f4dfc32 100644 --- a/cura/Settings/ContainerManager.py +++ b/cura/Settings/ContainerManager.py @@ -42,6 +42,7 @@ class ContainerManager(QObject): self._container_registry = self._application.getContainerRegistry() self._machine_manager = self._application.getMachineManager() self._material_manager = self._application.getMaterialManager() + self._quality_manager = self._application.getQualityManager() self._container_name_filters = {} @pyqtSlot(str, str, result=str) @@ -312,11 +313,19 @@ class ContainerManager(QObject): self._machine_manager.blurSettings.emit() - global_stack = self._machine_manager.activeMachine + current_quality_changes_name = global_stack.qualityChanges.getName() + current_quality_type = global_stack.quality.getMetaDataEntry("quality_type") extruder_stacks = list(global_stack.extruders.values()) for stack in [global_stack] + extruder_stacks: # Find the quality_changes container for this stack and merge the contents of the top container into it. quality_changes = stack.qualityChanges + + if quality_changes.getId() == "empty_quality_changes": + quality_changes = self._quality_manager._createQualityChanges(current_quality_type, current_quality_changes_name, + global_stack, stack) + self._container_registry.addContainer(quality_changes) + stack.qualityChanges = quality_changes + if not quality_changes or self._container_registry.isReadOnly(quality_changes.getId()): Logger.log("e", "Could not update quality of a nonexistant or read only quality profile in stack %s", stack.getId()) continue diff --git a/cura/Settings/ExtruderManager.py b/cura/Settings/ExtruderManager.py index 051e467a41..84294240f5 100755 --- a/cura/Settings/ExtruderManager.py +++ b/cura/Settings/ExtruderManager.py @@ -467,10 +467,6 @@ class ExtruderManager(QObject): if global_stack.definitionChanges.hasProperty(key, "value"): global_stack.definitionChanges.removeInstance(key, postpone_emit = True) - # Update material diameter for extruders - for position in extruder_positions_to_update: - self.updateMaterialForDiameter(position, global_stack = global_stack) - ## Get all extruder values for a certain setting. # # This is exposed to SettingFunction so it can be used in value functions. @@ -562,96 +558,6 @@ class ExtruderManager(QObject): def getInstanceExtruderValues(self, key): return ExtruderManager.getExtruderValues(key) - ## Updates the material container to a material that matches the material diameter set for the printer - def updateMaterialForDiameter(self, extruder_position: int, global_stack = None): - if not global_stack: - global_stack = self._application.getGlobalContainerStack() - if not global_stack: - return - - if not global_stack.getMetaDataEntry("has_materials", False): - return - - extruder_stack = global_stack.extruders[str(extruder_position)] - - material_diameter = extruder_stack.material.getProperty("material_diameter", "value") - if not material_diameter: - # in case of "empty" material - material_diameter = 0 - - material_approximate_diameter = str(round(material_diameter)) - material_diameter = extruder_stack.definitionChanges.getProperty("material_diameter", "value") - setting_provider = extruder_stack - if not material_diameter: - if extruder_stack.definition.hasProperty("material_diameter", "value"): - material_diameter = extruder_stack.definition.getProperty("material_diameter", "value") - else: - material_diameter = global_stack.definition.getProperty("material_diameter", "value") - setting_provider = global_stack - - if isinstance(material_diameter, SettingFunction): - material_diameter = material_diameter(setting_provider) - - machine_approximate_diameter = str(round(material_diameter)) - - if material_approximate_diameter != machine_approximate_diameter: - Logger.log("i", "The the currently active material(s) do not match the diameter set for the printer. Finding alternatives.") - - if global_stack.getMetaDataEntry("has_machine_materials", False): - materials_definition = global_stack.definition.getId() - has_material_variants = global_stack.getMetaDataEntry("has_variants", False) - else: - materials_definition = "fdmprinter" - has_material_variants = False - - old_material = extruder_stack.material - search_criteria = { - "type": "material", - "approximate_diameter": machine_approximate_diameter, - "material": old_material.getMetaDataEntry("material", "value"), - "brand": old_material.getMetaDataEntry("brand", "value"), - "supplier": old_material.getMetaDataEntry("supplier", "value"), - "color_name": old_material.getMetaDataEntry("color_name", "value"), - "definition": materials_definition - } - if has_material_variants: - search_criteria["variant"] = extruder_stack.variant.getId() - - container_registry = self._application.getContainerRegistry() - empty_material = container_registry.findInstanceContainers(id = "empty_material")[0] - - if old_material == empty_material: - search_criteria.pop("material", None) - search_criteria.pop("supplier", None) - search_criteria.pop("brand", None) - search_criteria.pop("definition", None) - search_criteria["id"] = extruder_stack.getMetaDataEntry("preferred_material") - - materials = container_registry.findInstanceContainers(**search_criteria) - if not materials: - # Same material with new diameter is not found, search for generic version of the same material type - search_criteria.pop("supplier", None) - search_criteria.pop("brand", None) - search_criteria["color_name"] = "Generic" - materials = container_registry.findInstanceContainers(**search_criteria) - if not materials: - # Generic material with new diameter is not found, search for preferred material - search_criteria.pop("color_name", None) - search_criteria.pop("material", None) - search_criteria["id"] = extruder_stack.getMetaDataEntry("preferred_material") - materials = container_registry.findInstanceContainers(**search_criteria) - if not materials: - # Preferred material with new diameter is not found, search for any material - search_criteria.pop("id", None) - materials = container_registry.findInstanceContainers(**search_criteria) - if not materials: - # Just use empty material as a final fallback - materials = [empty_material] - - Logger.log("i", "Selecting new material: %s", materials[0].getId()) - - extruder_stack.material = materials[0] - ## Get the value for a setting from a specific extruder. # # This is exposed to SettingFunction to use in value functions. diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index 8f521f559a..f5b04bd23a 100755 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -307,6 +307,11 @@ class MachineManager(QObject): for position, extruder in global_stack.extruders.items(): material_dict[position] = extruder.material.getMetaDataEntry("base_file") self._current_root_material_id = material_dict + + # Update materials to make sure that the diameters match with the machine's + for position in global_stack.extruders: + self.updateMaterialWithVariant(position) + global_quality = global_stack.quality quality_type = global_quality.getMetaDataEntry("quality_type") global_quality_changes = global_stack.qualityChanges @@ -1235,7 +1240,7 @@ class MachineManager(QObject): current_quality_type, quality_type) self._setQualityGroup(candidate_quality_groups[quality_type], empty_quality_changes = True) - def _updateMaterialWithVariant(self, position: Optional[str]) -> None: + def updateMaterialWithVariant(self, position: Optional[str]) -> None: if self._global_container_stack is None: return if position is None: @@ -1323,7 +1328,7 @@ class MachineManager(QObject): self._setMaterial(position, material_container_node) else: self._global_container_stack.extruders[position].material = self._empty_material_container - self._updateMaterialWithVariant(position) + self.updateMaterialWithVariant(position) if configuration.buildplateConfiguration is not None: global_variant_container_node = self._variant_manager.getBuildplateVariantNode(self._global_container_stack.definition.getId(), configuration.buildplateConfiguration) @@ -1369,7 +1374,7 @@ class MachineManager(QObject): self.blurSettings.emit() with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue): self._setGlobalVariant(container_node) - self._updateMaterialWithVariant(None) # Update all materials + self.updateMaterialWithVariant(None) # Update all materials self._updateQualityWithMaterial() @pyqtSlot(str, str) @@ -1410,7 +1415,7 @@ class MachineManager(QObject): self.blurSettings.emit() with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue): self._setVariantNode(position, container_node) - self._updateMaterialWithVariant(position) + self.updateMaterialWithVariant(position) self._updateQualityWithMaterial() # See if we need to show the Discard or Keep changes screen @@ -1476,5 +1481,5 @@ class MachineManager(QObject): if self._global_container_stack is None: return with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue): - self._updateMaterialWithVariant(None) + self.updateMaterialWithVariant(None) self._updateQualityWithMaterial() diff --git a/cura/Settings/SettingOverrideDecorator.py b/cura/Settings/SettingOverrideDecorator.py index a662027d8f..27ae1d69f0 100644 --- a/cura/Settings/SettingOverrideDecorator.py +++ b/cura/Settings/SettingOverrideDecorator.py @@ -63,7 +63,7 @@ class SettingOverrideDecorator(SceneNodeDecorator): instance_container = copy.deepcopy(self._stack.getContainer(0), memo) # A unique name must be added, or replaceContainer will not replace it - instance_container.setMetaDataEntry("id", self._generateUniqueName) + instance_container.setMetaDataEntry("id", self._generateUniqueName()) ## Set the copied instance as the first (and only) instance container of the stack. deep_copy._stack.replaceContainer(0, instance_container) diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index 90241c6e72..ecccfc77ac 100755 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -13,6 +13,7 @@ from UM.Workspace.WorkspaceReader import WorkspaceReader from UM.Application import Application from UM.Logger import Logger +from UM.Message import Message from UM.i18n import i18nCatalog from UM.Signal import postponeSignals, CompressTechnique from UM.Settings.ContainerFormatError import ContainerFormatError @@ -470,6 +471,20 @@ class ThreeMFWorkspaceReader(WorkspaceReader): Logger.log("w", "File %s is not a valid workspace.", file_name) return WorkspaceReader.PreReadResult.failed + # Check if the machine definition exists. If not, indicate failure because we do not import definition files. + def_results = self._container_registry.findDefinitionContainersMetadata(id = machine_definition_id) + if not def_results: + message = Message(i18n_catalog.i18nc("@info:status Don't translate the XML tags or !", + "Project file {0} contains an unknown machine type" + " {1}. Cannot import the machine." + " Models will be imported instead.", file_name, machine_definition_id), + title = i18n_catalog.i18nc("@info:title", "Open Project File")) + message.show() + + Logger.log("i", "Could unknown machine definition %s in project file %s, cannot import it.", + self._machine_info.definition_id, file_name) + return WorkspaceReader.PreReadResult.failed + # In case we use preRead() to check if a file is a valid project file, we don't want to show a dialog. if not show_dialog: return WorkspaceReader.PreReadResult.accepted diff --git a/plugins/ChangeLogPlugin/ChangeLog.py b/plugins/ChangeLogPlugin/ChangeLog.py index e93d5c4395..723c83a021 100644 --- a/plugins/ChangeLogPlugin/ChangeLog.py +++ b/plugins/ChangeLogPlugin/ChangeLog.py @@ -55,7 +55,7 @@ class ChangeLog(Extension, QObject,): def loadChangeLogs(self): self._change_logs = collections.OrderedDict() - with open(os.path.join(PluginRegistry.getInstance().getPluginPath(self.getPluginId()), "ChangeLog.txt"), "r",-1, "utf-8") as f: + with open(os.path.join(PluginRegistry.getInstance().getPluginPath(self.getPluginId()), "ChangeLog.txt"), "r", encoding = "utf-8") as f: open_version = None open_header = "" # Initialise to an empty header in case there is no "*" in the first line of the changelog for line in f: diff --git a/plugins/CuraEngineBackend/CuraEngineBackend.py b/plugins/CuraEngineBackend/CuraEngineBackend.py index d298ff1aca..3e66edc203 100755 --- a/plugins/CuraEngineBackend/CuraEngineBackend.py +++ b/plugins/CuraEngineBackend/CuraEngineBackend.py @@ -379,6 +379,14 @@ class CuraEngineBackend(QObject, Backend): else: self.backendStateChange.emit(BackendState.NotStarted) + if job.getResult() == StartSliceJob.StartJobResult.ObjectsWithDisabledExtruder: + self._error_message = Message(catalog.i18nc("@info:status", "Unable to slice because there are objects associated with disabled Extruder %s." % job.getMessage()), + title = catalog.i18nc("@info:title", "Unable to slice")) + self._error_message.show() + self.backendStateChange.emit(BackendState.Error) + self.backendError.emit(job) + return + if job.getResult() == StartSliceJob.StartJobResult.NothingToSlice: if Application.getInstance().platformActivity: self._error_message = Message(catalog.i18nc("@info:status", "Nothing to slice because none of the models fit the build volume. Please scale or rotate models to fit."), diff --git a/plugins/CuraEngineBackend/StartSliceJob.py b/plugins/CuraEngineBackend/StartSliceJob.py index 467351dd4b..b704ca0d2f 100644 --- a/plugins/CuraEngineBackend/StartSliceJob.py +++ b/plugins/CuraEngineBackend/StartSliceJob.py @@ -32,6 +32,7 @@ class StartJobResult(IntEnum): MaterialIncompatible = 5 BuildPlateError = 6 ObjectSettingError = 7 #When an error occurs in per-object settings. + ObjectsWithDisabledExtruder = 8 ## Formatter class that handles token expansion in start/end gcod @@ -213,16 +214,27 @@ class StartSliceJob(Job): extruders_enabled = {position: stack.isEnabled for position, stack in Application.getInstance().getGlobalContainerStack().extruders.items()} filtered_object_groups = [] + has_model_with_disabled_extruders = False + associated_siabled_extruders = set() for group in object_groups: stack = Application.getInstance().getGlobalContainerStack() skip_group = False for node in group: - if not extruders_enabled[node.callDecoration("getActiveExtruderPosition")]: + extruder_position = node.callDecoration("getActiveExtruderPosition") + if not extruders_enabled[extruder_position]: skip_group = True + has_model_with_disabled_extruders = True + associated_siabled_extruders.add(extruder_position) break if not skip_group: filtered_object_groups.append(group) + if has_model_with_disabled_extruders: + self.setResult(StartJobResult.ObjectsWithDisabledExtruder) + associated_siabled_extruders = [str(c) for c in sorted([int(p) + 1 for p in associated_siabled_extruders])] + self.setMessage(", ".join(associated_siabled_extruders)) + return + # There are cases when there is nothing to slice. This can happen due to one at a time slicing not being # able to find a possible sequence or because there are no objects on the build plate (or they are outside # the build volume) diff --git a/plugins/GCodeProfileReader/GCodeProfileReader.py b/plugins/GCodeProfileReader/GCodeProfileReader.py index 4b50a600ba..9fbae7b473 100644 --- a/plugins/GCodeProfileReader/GCodeProfileReader.py +++ b/plugins/GCodeProfileReader/GCodeProfileReader.py @@ -57,7 +57,7 @@ class GCodeProfileReader(ProfileReader): # TODO: Consider moving settings to the start? serialized = "" # Will be filled with the serialized profile. try: - with open(file_name, "r") as f: + with open(file_name, "r", encoding = "utf-8") as f: for line in f: if line.startswith(prefix): # Remove the prefix and the newline from the line and add it to the rest. diff --git a/plugins/LegacyProfileReader/LegacyProfileReader.py b/plugins/LegacyProfileReader/LegacyProfileReader.py index 3c2b9bfa76..40a843e6c4 100644 --- a/plugins/LegacyProfileReader/LegacyProfileReader.py +++ b/plugins/LegacyProfileReader/LegacyProfileReader.py @@ -100,7 +100,7 @@ class LegacyProfileReader(ProfileReader): return None try: - with open(os.path.join(PluginRegistry.getInstance().getPluginPath("LegacyProfileReader"), "DictionaryOfDoom.json"), "r", -1, "utf-8") as f: + with open(os.path.join(PluginRegistry.getInstance().getPluginPath("LegacyProfileReader"), "DictionaryOfDoom.json"), "r", encoding = "utf-8") as f: dict_of_doom = json.load(f) # Parse the Dictionary of Doom. except IOError as e: Logger.log("e", "Could not open DictionaryOfDoom.json for reading: %s", str(e)) diff --git a/plugins/MachineSettingsAction/MachineSettingsAction.py b/plugins/MachineSettingsAction/MachineSettingsAction.py index 7d5b317475..4c459e69cf 100755 --- a/plugins/MachineSettingsAction/MachineSettingsAction.py +++ b/plugins/MachineSettingsAction/MachineSettingsAction.py @@ -158,4 +158,4 @@ class MachineSettingsAction(MachineAction): @pyqtSlot(int) def updateMaterialForDiameter(self, extruder_position: int): # Updates the material container to a material that matches the material diameter set for the printer - self._application.getExtruderManager().updateMaterialForDiameter(extruder_position) + self._application.getMachineManager().updateMaterialWithVariant(str(extruder_position)) diff --git a/plugins/SimulationView/SimulationSliderLabel.qml b/plugins/SimulationView/SimulationSliderLabel.qml index 6f7749df63..8615a382da 100644 --- a/plugins/SimulationView/SimulationSliderLabel.qml +++ b/plugins/SimulationView/SimulationSliderLabel.qml @@ -53,7 +53,7 @@ UM.PointingRectangle { verticalCenter: parent.verticalCenter } - width: 40 * screenScaleFactor + width: maximumValue.toString().length * 12 * screenScaleFactor text: sliderLabelRoot.value + startFrom // the current handle value, add 1 because layers is an array horizontalAlignment: TextInput.AlignRight @@ -77,11 +77,12 @@ UM.PointingRectangle { if (valueLabel.text != "") { // -startFrom because we need to convert back to an array structure sliderLabelRoot.setValue(parseInt(valueLabel.text) - startFrom) + } } validator: IntValidator { - bottom:startFrom + bottom: startFrom top: sliderLabelRoot.maximumValue + startFrom // +startFrom because maybe we want to start in a different value rather than 0 } } diff --git a/plugins/Toolbox/src/Toolbox.py b/plugins/Toolbox/src/Toolbox.py index c29c673c8a..2f26e21d65 100644 --- a/plugins/Toolbox/src/Toolbox.py +++ b/plugins/Toolbox/src/Toolbox.py @@ -262,12 +262,14 @@ class Toolbox(QObject, Extension): # list of old plugins old_plugin_ids = self._plugin_registry.getInstalledPlugins() installed_package_ids = self._package_manager.getAllInstalledPackageIDs() + scheduled_to_remove_package_ids = self._package_manager.getToRemovePackageIDs() self._old_plugin_ids = [] self._old_plugin_metadata = [] for plugin_id in old_plugin_ids: - if plugin_id not in installed_package_ids: + # Neither the installed packages nor the packages that are scheduled to remove are old plugins + if plugin_id not in installed_package_ids and plugin_id not in scheduled_to_remove_package_ids: Logger.log('i', 'Found a plugin that was installed with the old plugin browser: %s', plugin_id) old_metadata = self._plugin_registry.getMetaData(plugin_id) diff --git a/plugins/USBPrinting/avr_isp/intelHex.py b/plugins/USBPrinting/avr_isp/intelHex.py index a51c798d8e..671f1788f7 100644 --- a/plugins/USBPrinting/avr_isp/intelHex.py +++ b/plugins/USBPrinting/avr_isp/intelHex.py @@ -13,7 +13,7 @@ def readHex(filename): """ data = [] extra_addr = 0 - f = io.open(filename, "r") + f = io.open(filename, "r", encoding = "utf-8") for line in f: line = line.strip() if len(line) < 1: diff --git a/plugins/VersionUpgrade/VersionUpgrade22to24/VersionUpgrade.py b/plugins/VersionUpgrade/VersionUpgrade22to24/VersionUpgrade.py index 7505911049..730a62e591 100644 --- a/plugins/VersionUpgrade/VersionUpgrade22to24/VersionUpgrade.py +++ b/plugins/VersionUpgrade/VersionUpgrade22to24/VersionUpgrade.py @@ -94,7 +94,7 @@ class VersionUpgrade22to24(VersionUpgrade): if variant_path.endswith("_variant.inst.cfg"): variant_path = variant_path[:-len("_variant.inst.cfg")] + "_settings.inst.cfg" - with open(os.path.join(machine_instances_dir, os.path.basename(variant_path)), "w") as fp: + with open(os.path.join(machine_instances_dir, os.path.basename(variant_path)), "w", encoding = "utf-8") as fp: variant_config.write(fp) return config_name @@ -105,9 +105,9 @@ class VersionUpgrade22to24(VersionUpgrade): result = [] for entry in os.scandir(variants_dir): - if entry.name.endswith('.inst.cfg') and entry.is_file(): + if entry.name.endswith(".inst.cfg") and entry.is_file(): config = configparser.ConfigParser(interpolation = None) - with open(entry.path, "r") as fhandle: + with open(entry.path, "r", encoding = "utf-8") as fhandle: config.read_file(fhandle) if config.has_section("general") and config.has_option("general", "name"): result.append( { "path": entry.path, "name": config.get("general", "name") } ) diff --git a/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py b/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py index e1c14be2e1..54b561c847 100644 --- a/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py +++ b/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py @@ -249,11 +249,11 @@ class VersionUpgrade25to26(VersionUpgrade): definition_changes_dir = Resources.getPath(CuraApplication.ResourceTypes.DefinitionChangesContainer) user_settings_dir = Resources.getPath(CuraApplication.ResourceTypes.UserInstanceContainer) - with open(os.path.join(definition_changes_dir, definition_changes_filename), "w") as f: + with open(os.path.join(definition_changes_dir, definition_changes_filename), "w", encoding = "utf-8") as f: f.write(definition_changes_output.getvalue()) - with open(os.path.join(user_settings_dir, user_settings_filename), "w") as f: + with open(os.path.join(user_settings_dir, user_settings_filename), "w", encoding = "utf-8") as f: f.write(user_settings_output.getvalue()) - with open(os.path.join(extruder_stack_dir, extruder_filename), "w") as f: + with open(os.path.join(extruder_stack_dir, extruder_filename), "w", encoding = "utf-8") as f: f.write(extruder_output.getvalue()) ## Creates a definition changes container which doesn't contain anything for the Custom FDM Printers. diff --git a/plugins/XmlMaterialProfile/XmlMaterialProfile.py b/plugins/XmlMaterialProfile/XmlMaterialProfile.py index 4985c2fd87..9d456c833d 100644 --- a/plugins/XmlMaterialProfile/XmlMaterialProfile.py +++ b/plugins/XmlMaterialProfile/XmlMaterialProfile.py @@ -1018,7 +1018,7 @@ class XmlMaterialProfile(InstanceContainer): @classmethod def getProductIdMap(cls) -> Dict[str, List[str]]: product_to_id_file = os.path.join(os.path.dirname(sys.modules[cls.__module__].__file__), "product_to_id.json") - with open(product_to_id_file) as f: + with open(product_to_id_file, encoding = "utf-8") as f: product_to_id_map = json.load(f) product_to_id_map = {key: [value] for key, value in product_to_id_map.items()} return product_to_id_map diff --git a/resources/qml/Preferences/GeneralPage.qml b/resources/qml/Preferences/GeneralPage.qml index 7841c7d506..5e3c4f700b 100644 --- a/resources/qml/Preferences/GeneralPage.qml +++ b/resources/qml/Preferences/GeneralPage.qml @@ -170,7 +170,7 @@ UM.PreferencesPage append({ text: "日本語", code: "ja_JP" }) append({ text: "한국어", code: "ko_KR" }) append({ text: "Nederlands", code: "nl_NL" }) - append({ text: "Polski", code: "pl_PL" }) + //Polish is disabled for being incomplete: append({ text: "Polski", code: "pl_PL" }) append({ text: "Português do Brasil", code: "pt_BR" }) append({ text: "Português", code: "pt_PT" }) append({ text: "Русский", code: "ru_RU" }) @@ -741,21 +741,6 @@ UM.PreferencesPage } } - UM.TooltipArea - { - width: childrenRect.width - height: childrenRect.height - text: catalog.i18nc("@info:tooltip", "Should newly loaded models be arranged on the build plate? Used in conjunction with multi build plate (EXPERIMENTAL)") - - CheckBox - { - id: arrangeOnLoadCheckbox - text: catalog.i18nc("@option:check", "Do not arrange objects on load") - checked: boolCheck(UM.Preferences.getValue("cura/not_arrange_objects_on_load")) - onCheckedChanged: UM.Preferences.setValue("cura/not_arrange_objects_on_load", checked) - } - } - Connections { target: UM.Preferences diff --git a/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg b/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg index b46e2473af..52a20ac306 100644 --- a/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg +++ b/resources/quality/abax_pri3/apri3_pla_fast.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 80 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 80) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_pri3/apri3_pla_high.inst.cfg b/resources/quality/abax_pri3/apri3_pla_high.inst.cfg index a12d8d1b72..2effe4cfc2 100644 --- a/resources/quality/abax_pri3/apri3_pla_high.inst.cfg +++ b/resources/quality/abax_pri3/apri3_pla_high.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg b/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg index 3cea7931aa..8cab45135c 100644 --- a/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg +++ b/resources/quality/abax_pri3/apri3_pla_normal.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_pri5/apri5_pla_fast.inst.cfg b/resources/quality/abax_pri5/apri5_pla_fast.inst.cfg index ba1de97b89..0d71942031 100644 --- a/resources/quality/abax_pri5/apri5_pla_fast.inst.cfg +++ b/resources/quality/abax_pri5/apri5_pla_fast.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 80 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 80) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_pri5/apri5_pla_high.inst.cfg b/resources/quality/abax_pri5/apri5_pla_high.inst.cfg index d1ea040f93..184c23a331 100644 --- a/resources/quality/abax_pri5/apri5_pla_high.inst.cfg +++ b/resources/quality/abax_pri5/apri5_pla_high.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_pri5/apri5_pla_normal.inst.cfg b/resources/quality/abax_pri5/apri5_pla_normal.inst.cfg index c2bb8d343b..c36b4894b8 100644 --- a/resources/quality/abax_pri5/apri5_pla_normal.inst.cfg +++ b/resources/quality/abax_pri5/apri5_pla_normal.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_titan/atitan_pla_fast.inst.cfg b/resources/quality/abax_titan/atitan_pla_fast.inst.cfg index ec54c373c9..58c41fc68f 100644 --- a/resources/quality/abax_titan/atitan_pla_fast.inst.cfg +++ b/resources/quality/abax_titan/atitan_pla_fast.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 80 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 80) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_titan/atitan_pla_high.inst.cfg b/resources/quality/abax_titan/atitan_pla_high.inst.cfg index f8d016f6d0..3f1336d9e5 100644 --- a/resources/quality/abax_titan/atitan_pla_high.inst.cfg +++ b/resources/quality/abax_titan/atitan_pla_high.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/abax_titan/atitan_pla_normal.inst.cfg b/resources/quality/abax_titan/atitan_pla_normal.inst.cfg index b25a0ff47e..23a3b06fd3 100644 --- a/resources/quality/abax_titan/atitan_pla_normal.inst.cfg +++ b/resources/quality/abax_titan/atitan_pla_normal.inst.cfg @@ -17,6 +17,6 @@ top_bottom_thickness = 0.8 infill_sparse_density = 20 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/anycubic_i3_mega/anycubic_i3_mega_draft.inst.cfg b/resources/quality/anycubic_i3_mega/anycubic_i3_mega_draft.inst.cfg index ae18246f3f..633133a8d4 100644 --- a/resources/quality/anycubic_i3_mega/anycubic_i3_mega_draft.inst.cfg +++ b/resources/quality/anycubic_i3_mega/anycubic_i3_mega_draft.inst.cfg @@ -41,13 +41,13 @@ retraction_speed = 40 skirt_brim_speed = 40 skirt_gap = 5 skirt_line_count = 3 -speed_infill = 60 +speed_infill = =speed_print speed_print = 60 speed_support = 60 -speed_topbottom = 30 +speed_topbottom = =math.ceil(speed_print * 30 / 60) speed_travel = 100 -speed_wall = 60 -speed_wall_x = 60 +speed_wall = =speed_print +speed_wall_x = =speed_print support_angle = 60 support_enable = True support_interface_enable = True diff --git a/resources/quality/anycubic_i3_mega/anycubic_i3_mega_high.inst.cfg b/resources/quality/anycubic_i3_mega/anycubic_i3_mega_high.inst.cfg index bbaa9c63b1..9954be2fac 100644 --- a/resources/quality/anycubic_i3_mega/anycubic_i3_mega_high.inst.cfg +++ b/resources/quality/anycubic_i3_mega/anycubic_i3_mega_high.inst.cfg @@ -41,13 +41,13 @@ retraction_speed = 40 skirt_brim_speed = 40 skirt_gap = 5 skirt_line_count = 3 -speed_infill = 50 +speed_infill = =speed_print speed_print = 50 speed_support = 30 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) speed_travel = 50 -speed_wall = 50 -speed_wall_x = 50 +speed_wall = =speed_print +speed_wall_x = =speed_print support_angle = 60 support_enable = True support_interface_enable = True diff --git a/resources/quality/anycubic_i3_mega/anycubic_i3_mega_normal.inst.cfg b/resources/quality/anycubic_i3_mega/anycubic_i3_mega_normal.inst.cfg index d319b09952..8faececc66 100644 --- a/resources/quality/anycubic_i3_mega/anycubic_i3_mega_normal.inst.cfg +++ b/resources/quality/anycubic_i3_mega/anycubic_i3_mega_normal.inst.cfg @@ -41,13 +41,13 @@ retraction_speed = 40 skirt_brim_speed = 40 skirt_gap = 5 skirt_line_count = 3 -speed_infill = 50 +speed_infill = =speed_print speed_print = 50 speed_support = 30 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) speed_travel = 100 -speed_wall = 50 -speed_wall_x = 50 +speed_wall = =speed_print +speed_wall_x = =speed_print support_angle = 60 support_enable = True support_interface_enable = True diff --git a/resources/quality/coarse.inst.cfg b/resources/quality/coarse.inst.cfg index ffbd57263b..478d8bc30c 100644 --- a/resources/quality/coarse.inst.cfg +++ b/resources/quality/coarse.inst.cfg @@ -1,6 +1,6 @@ [general] version = 4 -name = Coarse Quality +name = Coarse definition = fdmprinter [metadata] diff --git a/resources/quality/deltacomb/deltacomb_nylon_fast.inst.cfg b/resources/quality/deltacomb/deltacomb_nylon_fast.inst.cfg index e5718fdc95..c224414b23 100644 --- a/resources/quality/deltacomb/deltacomb_nylon_fast.inst.cfg +++ b/resources/quality/deltacomb/deltacomb_nylon_fast.inst.cfg @@ -43,11 +43,11 @@ skirt_brim_minimal_length = 75 skirt_gap = 1.5 skirt_line_count = 5 speed_infill = =speed_print -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 40 +speed_topbottom = =math.ceil(speed_print * 40 / 50) speed_travel = 200 -speed_wall_0 = 40 +speed_wall_0 = =math.ceil(speed_print * 40 / 50) speed_wall_x = =speed_print support_angle = 70 support_type = buildplate diff --git a/resources/quality/deltacomb/deltacomb_nylon_high.inst.cfg b/resources/quality/deltacomb/deltacomb_nylon_high.inst.cfg index 2b29b49c68..bfbc1d0129 100644 --- a/resources/quality/deltacomb/deltacomb_nylon_high.inst.cfg +++ b/resources/quality/deltacomb/deltacomb_nylon_high.inst.cfg @@ -43,11 +43,11 @@ skirt_brim_minimal_length = 75 skirt_gap = 1.5 skirt_line_count = 5 speed_infill = =speed_print -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 40 +speed_topbottom = =math.ceil(speed_print * 40 / 50) speed_travel = 200 -speed_wall_0 = 40 +speed_wall_0 = =math.ceil(speed_print * 40 / 50) speed_wall_x = =speed_print support_angle = 70 support_type = buildplate diff --git a/resources/quality/deltacomb/deltacomb_nylon_normal.inst.cfg b/resources/quality/deltacomb/deltacomb_nylon_normal.inst.cfg index 9853831b12..9636906707 100644 --- a/resources/quality/deltacomb/deltacomb_nylon_normal.inst.cfg +++ b/resources/quality/deltacomb/deltacomb_nylon_normal.inst.cfg @@ -43,11 +43,11 @@ skirt_brim_minimal_length = 75 skirt_gap = 1.5 skirt_line_count = 5 speed_infill = =speed_print -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 40 +speed_topbottom = =math.ceil(speed_print * 40 / 50) speed_travel = 200 -speed_wall_0 = 40 +speed_wall_0 = =math.ceil(speed_print * 40 / 50) speed_wall_x = =speed_print support_angle = 70 support_type = buildplate diff --git a/resources/quality/draft.inst.cfg b/resources/quality/draft.inst.cfg index 2e0e97e812..cf32886039 100644 --- a/resources/quality/draft.inst.cfg +++ b/resources/quality/draft.inst.cfg @@ -1,6 +1,6 @@ [general] version = 4 -name = Draft Quality +name = Draft definition = fdmprinter [metadata] diff --git a/resources/quality/extra_coarse.inst.cfg b/resources/quality/extra_coarse.inst.cfg index 98aeecbc79..271dfb8a63 100644 --- a/resources/quality/extra_coarse.inst.cfg +++ b/resources/quality/extra_coarse.inst.cfg @@ -1,6 +1,6 @@ [general] version = 4 -name = Extra Coarse Quality +name = Extra Coarse definition = fdmprinter [metadata] diff --git a/resources/quality/fabtotum/fabtotum_nylon_fast.inst.cfg b/resources/quality/fabtotum/fabtotum_nylon_fast.inst.cfg index 88985a7918..010ce182e6 100644 --- a/resources/quality/fabtotum/fabtotum_nylon_fast.inst.cfg +++ b/resources/quality/fabtotum/fabtotum_nylon_fast.inst.cfg @@ -43,11 +43,11 @@ skirt_brim_minimal_length = 75 skirt_gap = 1.5 skirt_line_count = 5 speed_infill = =speed_print -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 30) speed_print = 30 -speed_topbottom = 40 +speed_topbottom = =math.ceil(speed_print * 40 / 30) speed_travel = 200 -speed_wall_0 = 40 +speed_wall_0 = =math.ceil(speed_print * 40 / 30) speed_wall_x = =speed_print support_angle = 70 support_type = buildplate diff --git a/resources/quality/fabtotum/fabtotum_nylon_high.inst.cfg b/resources/quality/fabtotum/fabtotum_nylon_high.inst.cfg index cef9b6023a..2b7e7d7c24 100644 --- a/resources/quality/fabtotum/fabtotum_nylon_high.inst.cfg +++ b/resources/quality/fabtotum/fabtotum_nylon_high.inst.cfg @@ -43,11 +43,11 @@ skirt_brim_minimal_length = 75 skirt_gap = 1.5 skirt_line_count = 5 speed_infill = =speed_print -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 30) speed_print = 30 -speed_topbottom = 40 +speed_topbottom = =math.ceil(speed_print * 40 / 30) speed_travel = 200 -speed_wall_0 = 40 +speed_wall_0 = =math.ceil(speed_print * 40 / 30) speed_wall_x = =speed_print support_angle = 70 support_type = buildplate diff --git a/resources/quality/fabtotum/fabtotum_nylon_normal.inst.cfg b/resources/quality/fabtotum/fabtotum_nylon_normal.inst.cfg index 63b2baf019..4a34c7e369 100644 --- a/resources/quality/fabtotum/fabtotum_nylon_normal.inst.cfg +++ b/resources/quality/fabtotum/fabtotum_nylon_normal.inst.cfg @@ -43,11 +43,11 @@ skirt_brim_minimal_length = 75 skirt_gap = 1.5 skirt_line_count = 5 speed_infill = =speed_print -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 30) speed_print = 30 -speed_topbottom = 40 +speed_topbottom = =math.ceil(speed_print * 40 / 30) speed_travel = 200 -speed_wall_0 = 40 +speed_wall_0 = =math.ceil(speed_print * 40 / 30) speed_wall_x = =speed_print support_angle = 70 support_type = buildplate diff --git a/resources/quality/fast.inst.cfg b/resources/quality/fast.inst.cfg index a725947eba..8227b2fe63 100644 --- a/resources/quality/fast.inst.cfg +++ b/resources/quality/fast.inst.cfg @@ -1,6 +1,6 @@ [general] version = 4 -name = Low Quality +name = Normal definition = fdmprinter [metadata] @@ -14,8 +14,8 @@ global_quality = True infill_sparse_density = 10 layer_height = 0.15 cool_min_layer_time = 3 -speed_wall_0 = 40 -speed_wall_x = 80 -speed_infill = 100 +speed_wall_0 = =math.ceil(speed_print * 40 / 60) +speed_wall_x = =math.ceil(speed_print * 80 / 60) +speed_infill = =math.ceil(speed_print * 100 / 60) wall_thickness = 1 -speed_topbottom = 30 +speed_topbottom = =math.ceil(speed_print * 30 / 60) diff --git a/resources/quality/high.inst.cfg b/resources/quality/high.inst.cfg index 673ce56f04..ca621a2b9d 100644 --- a/resources/quality/high.inst.cfg +++ b/resources/quality/high.inst.cfg @@ -12,5 +12,5 @@ global_quality = True [values] layer_height = 0.06 -speed_topbottom = 15 -speed_infill = 80 +speed_topbottom = =math.ceil(speed_print * 15 / 60) +speed_infill = =math.ceil(speed_print * 80 / 60) diff --git a/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse.inst.cfg b/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse.inst.cfg index 25b6f1155a..4d12c193c0 100644 --- a/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse.inst.cfg @@ -43,13 +43,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 25 skirt_line_count = 2 -speed_layer_0 = 14 +speed_layer_0 = =math.ceil(speed_print * 14 / 40) speed_print = 40 speed_slowdown_layers = 1 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 40) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 40) +speed_wall_x = =math.ceil(speed_print * 35 / 40) top_thickness = =top_bottom_thickness wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse_2-fans.inst.cfg b/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse_2-fans.inst.cfg index 2d975b1240..f59bee301a 100644 --- a/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse_2-fans.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_petg_0.4_coarse_2-fans.inst.cfg @@ -43,13 +43,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 25 skirt_line_count = 2 -speed_layer_0 = 14 +speed_layer_0 = =math.ceil(speed_print * 14 / 40) speed_print = 40 speed_slowdown_layers = 1 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 40) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 40) +speed_wall_x = =math.ceil(speed_print * 35 / 40) top_thickness = =top_bottom_thickness wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_petg_0.4_medium.inst.cfg b/resources/quality/imade3d_jellybox/generic_petg_0.4_medium.inst.cfg index c510473c3d..f2abdd22a4 100644 --- a/resources/quality/imade3d_jellybox/generic_petg_0.4_medium.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_petg_0.4_medium.inst.cfg @@ -43,13 +43,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 25 skirt_line_count = 2 -speed_layer_0 = 14 +speed_layer_0 = =math.ceil(speed_print * 14 / 40) speed_print = 40 speed_slowdown_layers = 1 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 40) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 40) +speed_wall_x = =math.ceil(speed_print * 35 / 40) top_thickness = =top_bottom_thickness wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_petg_0.4_medium_2-fans.inst.cfg b/resources/quality/imade3d_jellybox/generic_petg_0.4_medium_2-fans.inst.cfg index 682f850c83..c592252f54 100644 --- a/resources/quality/imade3d_jellybox/generic_petg_0.4_medium_2-fans.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_petg_0.4_medium_2-fans.inst.cfg @@ -43,13 +43,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 25 skirt_line_count = 2 -speed_layer_0 = 14 +speed_layer_0 = =math.ceil(speed_print * 14 / 40) speed_print = 40 speed_slowdown_layers = 1 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 40) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 40) +speed_wall_x = =math.ceil(speed_print * 35 / 40) top_thickness = =top_bottom_thickness wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse.inst.cfg index 264878f9d9..98f9a8cf1b 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse.inst.cfg @@ -41,13 +41,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse_2-fans.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse_2-fans.inst.cfg index 8427144478..fd26acc671 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse_2-fans.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_coarse_2-fans.inst.cfg @@ -41,13 +41,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_fine.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_fine.inst.cfg index 335e62c698..d233e1cd4a 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_fine.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_fine.inst.cfg @@ -42,13 +42,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_fine_2-fans.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_fine_2-fans.inst.cfg index bb4f9f0570..4fd76f6b8d 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_fine_2-fans.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_fine_2-fans.inst.cfg @@ -42,13 +42,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_medium.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_medium.inst.cfg index 8bb391bdaa..1fa7db1c7a 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_medium.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_medium.inst.cfg @@ -41,13 +41,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_medium_2-fans.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_medium_2-fans.inst.cfg index 9e4d8efddc..402d4dda1d 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_medium_2-fans.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_medium_2-fans.inst.cfg @@ -41,13 +41,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine.inst.cfg index aac761463d..de4302e853 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine.inst.cfg @@ -43,13 +43,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine_2-fans.inst.cfg b/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine_2-fans.inst.cfg index 8df712f8ee..28425681fd 100644 --- a/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine_2-fans.inst.cfg +++ b/resources/quality/imade3d_jellybox/generic_pla_0.4_ultrafine_2-fans.inst.cfg @@ -43,13 +43,13 @@ skin_no_small_gaps_heuristic = False skirt_brim_minimal_length = 100 skirt_brim_speed = 20 skirt_line_count = 3 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_slowdown_layers = 1 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 45) speed_travel = 120 speed_travel_layer_0 = 60 -speed_wall = 25 -speed_wall_x = 35 +speed_wall = =math.ceil(speed_print * 25 / 45) +speed_wall_x = =math.ceil(speed_print * 35 / 45) top_thickness = 0.8 wall_thickness = 0.8 diff --git a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_draft.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_draft.inst.cfg index 38a5208905..c9f38786f8 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_draft.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_draft.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.35 layer_height_0 = 0.3 speed_print = 70 -speed_infill = 60 -speed_layer_0 = 20 -speed_wall_0 = 30 -speed_wall_x = 50 -speed_topbottom = 30 +speed_infill = =math.ceil(speed_print * 60 / 70) +speed_layer_0 = =math.ceil(speed_print * 20 / 70) +speed_wall_0 = =math.ceil(speed_print * 30 / 70) +speed_wall_x = =math.ceil(speed_print * 50 / 70) +speed_topbottom = =math.ceil(speed_print * 30 / 70) speed_travel = 120 material_print_temperature = 246 diff --git a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_extra_fine.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_extra_fine.inst.cfg index 9438ecbfa7..a402bb0990 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_extra_fine.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_extra_fine.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.06 layer_height_0 = 0.3 speed_print = 40 -speed_infill = 50 -speed_layer_0 = 15 -speed_wall_0 = 20 -speed_wall_x = 40 -speed_topbottom = 20 +speed_infill = =math.ceil(speed_print * 50 / 40) +speed_layer_0 = =math.ceil(speed_print * 15 / 40) +speed_wall_0 = =math.ceil(speed_print * 20 / 40) +speed_wall_x = =speed_print +speed_topbottom = =math.ceil(speed_print * 20 / 40) speed_travel = 120 material_print_temperature = 246 diff --git a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_fine.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_fine.inst.cfg index 16d3367472..0aa0c8ace0 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_fine.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_fine.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.1 layer_height_0 = 0.3 speed_print = 50 -speed_infill = 60 -speed_layer_0 = 20 -speed_wall_0 = 25 -speed_wall_x = 45 -speed_topbottom = 30 +speed_infill = =math.ceil(speed_print * 60 / 50) +speed_layer_0 = =math.ceil(speed_print * 20 / 50) +speed_wall_0 = =math.ceil(speed_print * 25 / 50) +speed_wall_x = =math.ceil(speed_print * 45 / 50) +speed_topbottom = =math.ceil(speed_print * 30 / 50) speed_travel = 120 material_print_temperature = 246 diff --git a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_low.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_low.inst.cfg index d0b15cf47b..8c3d118315 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_low.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_low.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.2 layer_height_0 = 0.3 speed_print = 70 -speed_infill = 60 -speed_layer_0 = 20 -speed_wall_0 = 30 -speed_wall_x = 50 -speed_topbottom = 30 +speed_infill = =math.ceil(speed_print * 60 / 70) +speed_layer_0 = =math.ceil(speed_print * 20 / 70) +speed_wall_0 = =math.ceil(speed_print * 30 / 70) +speed_wall_x = =math.ceil(speed_print * 50 / 70) +speed_topbottom = =math.ceil(speed_print * 30 / 70) speed_travel = 120 material_print_temperature = 246 diff --git a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_normal.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_normal.inst.cfg index 2d32a0cc87..a889f34610 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_beta_abs_normal.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_beta_abs_normal.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.15 layer_height_0 = 0.3 speed_print = 60 -speed_infill = 50 -speed_layer_0 = 15 -speed_wall_0 = 20 -speed_wall_x = 40 -speed_topbottom = 20 +speed_infill = =math.ceil(speed_print * 50 / 60) +speed_layer_0 = =math.ceil(speed_print * 15 / 60) +speed_wall_0 = =math.ceil(speed_print * 20 / 60) +speed_wall_x = =math.ceil(speed_print * 40 / 60) +speed_topbottom = =math.ceil(speed_print * 20 / 60) speed_travel = 120 material_print_temperature = 246 diff --git a/resources/quality/kemiq_q2/kemiq_q2_gama_pla_extra_fine.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_gama_pla_extra_fine.inst.cfg index 8c0d1cf9ca..78a59d00c2 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_gama_pla_extra_fine.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_gama_pla_extra_fine.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.06 adhesion_type = skirt speed_print = 40 -speed_infill = 50 -speed_layer_0 = 15 -speed_wall_0 = 20 -speed_wall_x = 40 -speed_topbottom = 20 +speed_infill = =math.ceil(speed_print * 50 / 40) +speed_layer_0 = =math.ceil(speed_print * 15 / 40) +speed_wall_0 = =math.ceil(speed_print * 20 / 40) +speed_wall_x = =speed_print +speed_topbottom = =math.ceil(speed_print * 20 / 40) speed_travel = 120 material_print_temperature = 214 diff --git a/resources/quality/kemiq_q2/kemiq_q2_gama_pla_fine.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_gama_pla_fine.inst.cfg index b1e576f162..5ce23ce0d3 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_gama_pla_fine.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_gama_pla_fine.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.1 adhesion_type = skirt speed_print = 50 -speed_infill = 60 -speed_layer_0 = 20 -speed_wall_0 = 25 -speed_wall_x = 45 -speed_topbottom = 30 +speed_infill = =math.ceil(speed_print * 60 / 50) +speed_layer_0 = =math.ceil(speed_print * 20 / 50) +speed_wall_0 = =math.ceil(speed_print * 25 / 50) +speed_wall_x = =math.ceil(speed_print * 45 / 50) +speed_topbottom = =math.ceil(speed_print * 30 / 50) speed_travel = 120 material_print_temperature = 214 diff --git a/resources/quality/kemiq_q2/kemiq_q2_gama_pla_normal.inst.cfg b/resources/quality/kemiq_q2/kemiq_q2_gama_pla_normal.inst.cfg index da6d2d89ae..75b7407449 100644 --- a/resources/quality/kemiq_q2/kemiq_q2_gama_pla_normal.inst.cfg +++ b/resources/quality/kemiq_q2/kemiq_q2_gama_pla_normal.inst.cfg @@ -15,11 +15,11 @@ layer_height = 0.15 adhesion_type = skirt speed_print = 60 -speed_infill = 50 -speed_layer_0 = 15 -speed_wall_0 = 20 -speed_wall_x = 40 -speed_topbottom = 20 +speed_infill = =math.ceil(speed_print * 50 / 60) +speed_layer_0 = =math.ceil(speed_print * 15 / 60) +speed_wall_0 = =math.ceil(speed_print * 20 / 60) +speed_wall_x = =math.ceil(speed_print * 40 / 60) +speed_topbottom = =math.ceil(speed_print * 20 / 60) speed_travel = 120 material_print_temperature = 214 diff --git a/resources/quality/malyan_m200/malyan_m200_global_Draft_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_Draft_Quality.inst.cfg index 91153f57f7..257f5a9e81 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_Draft_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_Draft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/malyan_m200/malyan_m200_global_Fast_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_Fast_Quality.inst.cfg index 6b29fc3649..c7d789e4cf 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_Fast_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_Fast_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/malyan_m200/malyan_m200_global_High_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_High_Quality.inst.cfg index c32814152f..f474170e69 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_High_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_High_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/malyan_m200/malyan_m200_global_Normal_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_Normal_Quality.inst.cfg index eb29cfa8a5..b887c3a1f9 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_Normal_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_Normal_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/malyan_m200/malyan_m200_global_SuperDraft_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_SuperDraft_Quality.inst.cfg index 47bd154d90..0182bb2ad9 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_SuperDraft_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_SuperDraft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/malyan_m200/malyan_m200_global_ThickerDraft_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_ThickerDraft_Quality.inst.cfg index c7b6a0b44d..22fa4e8ada 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_ThickerDraft_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_ThickerDraft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/malyan_m200/malyan_m200_global_Ultra_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_Ultra_Quality.inst.cfg index f3917e23f7..31edd74bfe 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_Ultra_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_Ultra_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/malyan_m200/malyan_m200_global_VeryDraft_Quality.inst.cfg b/resources/quality/malyan_m200/malyan_m200_global_VeryDraft_Quality.inst.cfg index 281374a7f1..f6d3119ada 100644 --- a/resources/quality/malyan_m200/malyan_m200_global_VeryDraft_Quality.inst.cfg +++ b/resources/quality/malyan_m200/malyan_m200_global_VeryDraft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Draft_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Draft_Quality.inst.cfg index 002784bf21..ca03cca9a6 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Draft_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Draft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Fast_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Fast_Quality.inst.cfg index 31965ff4ef..32cf802c6f 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Fast_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Fast_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_High_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_High_Quality.inst.cfg index a828a3466f..4913e1c415 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_High_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_High_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Normal_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Normal_Quality.inst.cfg index 560a98eedd..1d14d2d9cf 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Normal_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Normal_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_SuperDraft_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_SuperDraft_Quality.inst.cfg index 32aab452b9..9b6fc58109 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_SuperDraft_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_SuperDraft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_ThickerDraft_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_ThickerDraft_Quality.inst.cfg index d591899d58..c8494b4600 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_ThickerDraft_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_ThickerDraft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Ultra_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Ultra_Quality.inst.cfg index 2d1cb39569..25d453a7a1 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Ultra_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_Ultra_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_VeryDraft_Quality.inst.cfg b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_VeryDraft_Quality.inst.cfg index 41e6553b52..8e583a463d 100644 --- a/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_VeryDraft_Quality.inst.cfg +++ b/resources/quality/monoprice_select_mini_v2/monoprice_select_mini_v2_global_VeryDraft_Quality.inst.cfg @@ -18,6 +18,6 @@ top_bottom_thickness = 0.72 infill_sparse_density = 22 speed_print = 50 speed_layer_0 = =round(speed_print * 30 / 50) -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) cool_min_layer_time = 5 cool_min_speed = 10 diff --git a/resources/quality/tevo_blackwidow/tevo_blackwidow_draft.inst.cfg b/resources/quality/tevo_blackwidow/tevo_blackwidow_draft.inst.cfg index 29de7591bf..b85fc8c95c 100644 --- a/resources/quality/tevo_blackwidow/tevo_blackwidow_draft.inst.cfg +++ b/resources/quality/tevo_blackwidow/tevo_blackwidow_draft.inst.cfg @@ -14,13 +14,13 @@ brim_width = 4.0 infill_pattern = zigzag layer_height = 0.3 material_diameter = 1.75 -speed_infill = 50 +speed_infill = =speed_print speed_print = 50 speed_support = 30 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) speed_travel = 100 -speed_wall = 50 -speed_wall_x = 50 +speed_wall = =speed_print +speed_wall_x = =speed_print support_angle = 60 support_enable = True support_interface_enable = True diff --git a/resources/quality/tevo_blackwidow/tevo_blackwidow_high.inst.cfg b/resources/quality/tevo_blackwidow/tevo_blackwidow_high.inst.cfg index e495d2d74b..9b52da8c0b 100644 --- a/resources/quality/tevo_blackwidow/tevo_blackwidow_high.inst.cfg +++ b/resources/quality/tevo_blackwidow/tevo_blackwidow_high.inst.cfg @@ -14,13 +14,13 @@ brim_width = 4.0 infill_pattern = zigzag layer_height = 0.1 material_diameter = 1.75 -speed_infill = 50 +speed_infill = =speed_print speed_print = 50 speed_support = 30 -speed_topbottom = 15 +speed_topbottom = =math.ceil(speed_print * 15 / 50) speed_travel = 100 -speed_wall = 50 -speed_wall_x = 50 +speed_wall = =speed_print +speed_wall_x = =speed_print support_angle = 60 support_enable = True support_interface_enable = True diff --git a/resources/quality/tevo_blackwidow/tevo_blackwidow_normal.inst.cfg b/resources/quality/tevo_blackwidow/tevo_blackwidow_normal.inst.cfg index 4df87784ef..a171463fde 100644 --- a/resources/quality/tevo_blackwidow/tevo_blackwidow_normal.inst.cfg +++ b/resources/quality/tevo_blackwidow/tevo_blackwidow_normal.inst.cfg @@ -14,13 +14,13 @@ brim_width = 4.0 infill_pattern = zigzag layer_height = 0.2 material_diameter = 1.75 -speed_infill = 60 +speed_infill = =math.ceil(speed_print * 60 / 50) speed_print = 50 speed_support = 30 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) speed_travel = 100 -speed_wall = 50 -speed_wall_x = 50 +speed_wall = =speed_print +speed_wall_x = =speed_print support_angle = 60 support_enable = True support_interface_enable = True diff --git a/resources/quality/ultimaker2/um2_draft.inst.cfg b/resources/quality/ultimaker2/um2_draft.inst.cfg index faf2b68208..27c40da15f 100644 --- a/resources/quality/ultimaker2/um2_draft.inst.cfg +++ b/resources/quality/ultimaker2/um2_draft.inst.cfg @@ -1,6 +1,6 @@ [general] version = 4 -name = Draft Quality +name = Draft definition = ultimaker2 [metadata] diff --git a/resources/quality/ultimaker2/um2_fast.inst.cfg b/resources/quality/ultimaker2/um2_fast.inst.cfg index 99ddb540cc..236a6f73cd 100644 --- a/resources/quality/ultimaker2/um2_fast.inst.cfg +++ b/resources/quality/ultimaker2/um2_fast.inst.cfg @@ -1,6 +1,6 @@ [general] version = 4 -name = Low Quality +name = Normal definition = ultimaker2 [metadata] @@ -14,8 +14,8 @@ global_quality = True infill_sparse_density = 10 layer_height = 0.15 cool_min_layer_time = 3 -speed_wall_0 = 40 -speed_wall_x = 80 -speed_infill = 100 +speed_wall_0 = =math.ceil(speed_print * 40 / 60) +speed_wall_x = =math.ceil(speed_print * 80 / 60) +speed_infill = =math.ceil(speed_print * 100 / 60) wall_thickness = 1 -speed_topbottom = 30 +speed_topbottom = =math.ceil(speed_print * 30 / 60) diff --git a/resources/quality/ultimaker2/um2_high.inst.cfg b/resources/quality/ultimaker2/um2_high.inst.cfg index f54700bf70..74e1f2f528 100644 --- a/resources/quality/ultimaker2/um2_high.inst.cfg +++ b/resources/quality/ultimaker2/um2_high.inst.cfg @@ -12,5 +12,5 @@ global_quality = True [values] layer_height = 0.06 -speed_topbottom = 15 -speed_infill = 80 +speed_topbottom = =math.ceil(speed_print * 15 / 60) +speed_infill = =math.ceil(speed_print * 80 / 60) diff --git a/resources/quality/ultimaker2_plus/pla_0.4_fast.inst.cfg b/resources/quality/ultimaker2_plus/pla_0.4_fast.inst.cfg index b50de37b47..02396f6820 100644 --- a/resources/quality/ultimaker2_plus/pla_0.4_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/pla_0.4_fast.inst.cfg @@ -18,8 +18,8 @@ infill_sparse_density = 18 layer_height = 0.15 speed_layer_0 = =round(speed_print * 30 / 60) speed_print = 60 -speed_topbottom = 30 +speed_topbottom = =math.ceil(speed_print * 30 / 60) speed_travel = 150 -speed_wall = 50 +speed_wall = =math.ceil(speed_print * 50 / 60) top_bottom_thickness = 0.75 wall_thickness = 0.7 diff --git a/resources/quality/ultimaker2_plus/pla_0.4_high.inst.cfg b/resources/quality/ultimaker2_plus/pla_0.4_high.inst.cfg index 9481e3427a..62816d0ab0 100644 --- a/resources/quality/ultimaker2_plus/pla_0.4_high.inst.cfg +++ b/resources/quality/ultimaker2_plus/pla_0.4_high.inst.cfg @@ -18,6 +18,6 @@ infill_sparse_density = 22 layer_height = 0.06 speed_layer_0 = =round(speed_print * 30 / 50) speed_print = 50 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) top_bottom_thickness = 0.72 wall_thickness = 1.05 diff --git a/resources/quality/ultimaker2_plus/pla_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/pla_0.4_normal.inst.cfg index 875db4959f..51aa06dc14 100644 --- a/resources/quality/ultimaker2_plus/pla_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/pla_0.4_normal.inst.cfg @@ -18,6 +18,6 @@ infill_sparse_density = 20 layer_height = 0.1 speed_layer_0 = =round(speed_print * 30 / 50) speed_print = 50 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 50) top_bottom_thickness = 0.8 wall_thickness = 1.05 diff --git a/resources/quality/ultimaker2_plus/pla_0.6_normal.inst.cfg b/resources/quality/ultimaker2_plus/pla_0.6_normal.inst.cfg index b07b4931ca..f6384421b2 100644 --- a/resources/quality/ultimaker2_plus/pla_0.6_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/pla_0.6_normal.inst.cfg @@ -18,8 +18,8 @@ infill_sparse_density = 20 layer_height = 0.15 speed_layer_0 = =round(speed_print * 30 / 55) speed_print = 55 -speed_topbottom = 20 -speed_wall = 40 -speed_wall_0 = 25 +speed_topbottom = =math.ceil(speed_print * 20 / 55) +speed_wall = =math.ceil(speed_print * 40 / 55) +speed_wall_0 = =math.ceil(speed_print * 25 / 55) top_bottom_thickness = 1.2 wall_thickness = 1.59 diff --git a/resources/quality/ultimaker2_plus/pla_0.8_normal.inst.cfg b/resources/quality/ultimaker2_plus/pla_0.8_normal.inst.cfg index 0e76e53316..314ef8ec68 100644 --- a/resources/quality/ultimaker2_plus/pla_0.8_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/pla_0.8_normal.inst.cfg @@ -18,6 +18,6 @@ infill_sparse_density = 20 layer_height = 0.2 speed_layer_0 = =round(speed_print * 30 / 40) speed_print = 40 -speed_wall_0 = 25 +speed_wall_0 = =math.ceil(speed_print * 25 / 40) top_bottom_thickness = 1.2 wall_thickness = 2.1 diff --git a/resources/quality/ultimaker2_plus/um2p_abs_0.4_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_abs_0.4_fast.inst.cfg index ded9319b3e..4d7f6eb535 100644 --- a/resources/quality/ultimaker2_plus/um2p_abs_0.4_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_abs_0.4_fast.inst.cfg @@ -20,8 +20,11 @@ infill_sparse_density = 18 layer_height = 0.15 speed_layer_0 = =round(speed_print * 30 / 55) speed_print = 55 -speed_topbottom = 30 +speed_topbottom = =math.ceil(speed_print * 30 / 55) speed_travel = 150 -speed_wall = 40 +speed_wall = =math.ceil(speed_print * 40 / 55) top_bottom_thickness = 0.75 wall_thickness = 0.7 +speed_wall_0 = =math.ceil(speed_print * 40 / 55) +speed_wall_x = =math.ceil(speed_print * 80 / 55) +speed_infill = =math.ceil(speed_print * 100 / 55) diff --git a/resources/quality/ultimaker2_plus/um2p_abs_0.4_high.inst.cfg b/resources/quality/ultimaker2_plus/um2p_abs_0.4_high.inst.cfg index c94333555c..155d890d78 100644 --- a/resources/quality/ultimaker2_plus/um2p_abs_0.4_high.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_abs_0.4_high.inst.cfg @@ -20,6 +20,8 @@ infill_sparse_density = 22 layer_height = 0.06 speed_layer_0 = =round(speed_print * 30 / 45) speed_print = 45 -speed_wall = 30 +speed_wall = =math.ceil(speed_print * 30 / 45) top_bottom_thickness = 0.72 wall_thickness = 1.05 +speed_topbottom = =math.ceil(speed_print * 15 / 45) +speed_infill = =math.ceil(speed_print * 80 / 45) diff --git a/resources/quality/ultimaker2_plus/um2p_abs_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_abs_0.4_normal.inst.cfg index 6adb9c9caf..da79e75346 100644 --- a/resources/quality/ultimaker2_plus/um2p_abs_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_abs_0.4_normal.inst.cfg @@ -20,6 +20,6 @@ infill_sparse_density = 20 layer_height = 0.1 speed_layer_0 = =round(speed_print * 30 / 45) speed_print = 45 -speed_wall = 30 +speed_wall = =math.ceil(speed_print * 30 / 45) top_bottom_thickness = 0.8 wall_thickness = 1.05 diff --git a/resources/quality/ultimaker2_plus/um2p_abs_0.6_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_abs_0.6_normal.inst.cfg index 332608a2f9..0cb3118bfc 100644 --- a/resources/quality/ultimaker2_plus/um2p_abs_0.6_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_abs_0.6_normal.inst.cfg @@ -18,7 +18,7 @@ cool_min_layer_time_fan_speed_max = 20 cool_min_speed = 20 infill_sparse_density = 20 layer_height = 0.15 -speed_infill = 55 +speed_infill = =math.ceil(speed_print * 55 / 40) speed_layer_0 = =round(speed_print * 30 / 40) speed_print = 40 top_bottom_thickness = 1.2 diff --git a/resources/quality/ultimaker2_plus/um2p_cpe_0.4_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpe_0.4_fast.inst.cfg index b9ec279e07..2c3eebc1de 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpe_0.4_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpe_0.4_fast.inst.cfg @@ -21,6 +21,10 @@ layer_height = 0.15 speed_layer_0 = =round(speed_print * 30 / 45) speed_print = 45 speed_travel = 150 -speed_wall = 40 +speed_wall = =math.ceil(speed_print * 40 / 45) top_bottom_thickness = 0.75 wall_thickness = 0.7 +speed_wall_0 = =math.ceil(speed_print * 40 / 45) +speed_topbottom = =math.ceil(speed_print * 30 / 45) +speed_wall_x = =math.ceil(speed_print * 80 / 45) +speed_infill = =math.ceil(speed_print * 100 / 45) diff --git a/resources/quality/ultimaker2_plus/um2p_cpe_0.4_high.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpe_0.4_high.inst.cfg index e929d9f545..8facfa298c 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpe_0.4_high.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpe_0.4_high.inst.cfg @@ -20,6 +20,8 @@ infill_sparse_density = 22 layer_height = 0.06 speed_layer_0 = =round(speed_print * 30 / 45) speed_print = 45 -speed_wall = 30 +speed_wall = =math.ceil(speed_print * 30 / 45) top_bottom_thickness = 0.72 wall_thickness = 1.05 +speed_topbottom = =math.ceil(speed_print * 15 / 45) +speed_infill = =math.ceil(speed_print * 80 / 45) diff --git a/resources/quality/ultimaker2_plus/um2p_cpe_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpe_0.4_normal.inst.cfg index 7637f6440a..e7d78d68c3 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpe_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpe_0.4_normal.inst.cfg @@ -20,6 +20,6 @@ infill_sparse_density = 20 layer_height = 0.1 speed_layer_0 = =round(speed_print * 30 / 45) speed_print = 45 -speed_wall = 30 +speed_wall = =math.ceil(speed_print * 30 / 45) top_bottom_thickness = 0.8 wall_thickness = 1.05 diff --git a/resources/quality/ultimaker2_plus/um2p_cpep_0.4_draft.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpep_0.4_draft.inst.cfg index fe975128a0..0e366a78fb 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpep_0.4_draft.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpep_0.4_draft.inst.cfg @@ -29,11 +29,11 @@ raft_interface_line_spacing = 1 raft_interface_line_width = 0.8 raft_margin = 15 raft_surface_line_width = 0.38 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 -speed_topbottom = 20 -speed_wall_0 = 20 -speed_wall_x = 25 +speed_topbottom = =math.ceil(speed_print * 20 / 25) +speed_wall_0 = =math.ceil(speed_print * 20 / 25) +speed_wall_x = =speed_print support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_cpep_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpep_0.4_normal.inst.cfg index e7bb7b3449..4e97629fb2 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpep_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpep_0.4_normal.inst.cfg @@ -29,11 +29,11 @@ raft_interface_line_spacing = 1 raft_interface_line_width = 0.8 raft_margin = 15 raft_surface_line_width = 0.38 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 35) speed_print = 35 -speed_topbottom = 20 -speed_wall_0 = 20 -speed_wall_x = 30 +speed_topbottom = =math.ceil(speed_print * 20 / 35) +speed_wall_0 = =math.ceil(speed_print * 20 / 35) +speed_wall_x = =math.ceil(speed_print * 30 / 35) support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_cpep_0.6_draft.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpep_0.6_draft.inst.cfg index 9751bef5fe..7002367337 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpep_0.6_draft.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpep_0.6_draft.inst.cfg @@ -32,10 +32,10 @@ raft_surface_line_width = 0.57 raft_surface_thickness = 0.2 speed_layer_0 = =round(speed_print * 30 / 50) speed_print = 25 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 25) speed_travel = 150 -speed_wall_0 = 20 -speed_wall_x = 25 +speed_wall_0 = =math.ceil(speed_print * 20 / 25) +speed_wall_x = =speed_print support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_cpep_0.6_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpep_0.6_normal.inst.cfg index 203d122de5..b79829e3e3 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpep_0.6_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpep_0.6_normal.inst.cfg @@ -30,12 +30,12 @@ raft_interface_line_width = 1.2 raft_margin = 15 raft_surface_line_width = 0.57 raft_surface_thickness = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 35) speed_print = 35 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 35) speed_travel = 150 -speed_wall_0 = 30 -speed_wall_x = 35 +speed_wall_0 = =math.ceil(speed_print * 30 / 35) +speed_wall_x = =speed_print support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_cpep_0.8_draft.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpep_0.8_draft.inst.cfg index b80949a627..32b79e62cc 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpep_0.8_draft.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpep_0.8_draft.inst.cfg @@ -30,9 +30,9 @@ raft_surface_line_width = 0.7 raft_surface_thickness = 0.2 speed_layer_0 = =round(speed_print * 30 / 25) speed_print = 25 -speed_topbottom = 20 -speed_wall_0 = 20 -speed_wall_x = 25 +speed_topbottom = =math.ceil(speed_print * 20 / 25) +speed_wall_0 = =math.ceil(speed_print * 20 / 25) +speed_wall_x = =speed_print support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_cpep_0.8_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_cpep_0.8_normal.inst.cfg index 4f96db3c3b..5ec9db4a02 100644 --- a/resources/quality/ultimaker2_plus/um2p_cpep_0.8_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_cpep_0.8_normal.inst.cfg @@ -30,9 +30,9 @@ raft_surface_line_width = 0.7 raft_surface_thickness = 0.2 speed_layer_0 = =round(speed_print * 30 / 30) speed_print = 30 -speed_topbottom = 20 -speed_wall_0 = 20 -speed_wall_x = 30 +speed_topbottom = =math.ceil(speed_print * 20 / 30) +speed_wall_0 = =math.ceil(speed_print * 20 / 30) +speed_wall_x = =speed_print support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.25_high.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.25_high.inst.cfg index d31c23a5c0..b4622b1cdc 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.25_high.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.25_high.inst.cfg @@ -28,13 +28,13 @@ raft_interface_line_width = 0.5 raft_margin = 15 raft_surface_line_width = 0.2 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 40) speed_print = 40 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 40) speed_travel = 150 -speed_wall_0 = 20 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 20 / 40) +speed_wall_x = =speed_print support_enable = True support_infill_rate = 20 support_pattern = lines @@ -42,3 +42,4 @@ support_xy_distance = 0.6 support_z_distance = =layer_height * 2 top_bottom_thickness = 1.2 wall_thickness = 1 +speed_infill = =math.ceil(speed_print * 80 / 40) diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.25_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.25_normal.inst.cfg index 0f9fd57197..6f1eae09c6 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.25_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.25_normal.inst.cfg @@ -28,13 +28,13 @@ raft_interface_line_width = 0.5 raft_margin = 15 raft_surface_line_width = 0.2 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 40) speed_print = 40 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 40) speed_travel = 150 -speed_wall_0 = 20 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 20 / 40) +speed_wall_x = =speed_print support_enable = True support_infill_rate = 20 support_pattern = lines diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.4_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.4_fast.inst.cfg index 0d8371760f..36fe6170af 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.4_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.4_fast.inst.cfg @@ -28,11 +28,11 @@ raft_interface_line_width = 0.8 raft_margin = 15 raft_surface_line_width = 0.5 raft_surface_thickness = 0.15 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 45) speed_print = 45 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 45) speed_travel = 150 -speed_wall = 40 +speed_wall = =math.ceil(speed_print * 40 / 45) support_angle = 45 support_enable = True support_infill_rate = 25 @@ -41,3 +41,6 @@ support_xy_distance = 0.6 support_z_distance = =layer_height * 2 top_bottom_thickness = 0.75 wall_thickness = 1.06 +speed_wall_0 = =math.ceil(speed_print * 40 / 45) +speed_wall_x = =math.ceil(speed_print * 80 / 45) +speed_infill = =math.ceil(speed_print * 100 / 45) diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.4_normal.inst.cfg index 3ac77b3642..7c9c13ad9d 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.4_normal.inst.cfg @@ -28,10 +28,10 @@ raft_interface_line_width = 0.8 raft_margin = 15 raft_surface_line_width = 0.5 raft_surface_thickness = 0.15 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 45) speed_print = 45 speed_travel = 150 -speed_wall = 40 +speed_wall = =math.ceil(speed_print * 40 / 45) support_angle = 45 support_enable = True support_infill_rate = 25 diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.6_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.6_fast.inst.cfg index d6332e5688..527a78a6c9 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.6_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.6_fast.inst.cfg @@ -29,13 +29,13 @@ raft_margin = 15 raft_surface_line_width = 0.6 raft_surface_thickness = 0.15 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 55) speed_print = 55 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 55) speed_travel = 150 -speed_wall_0 = 15 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 15 / 55) +speed_wall_x = =math.ceil(speed_print * 40 / 55) support_angle = 45 support_bottom_distance = 0.55 support_enable = True @@ -46,3 +46,4 @@ support_xy_distance = 0.7 support_z_distance = =layer_height * 2 top_bottom_thickness = 1.2 wall_thickness = 1.2 +speed_infill = =math.ceil(speed_print * 100 / 55) diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.6_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.6_normal.inst.cfg index 22250e1147..adaf07c272 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.6_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.6_normal.inst.cfg @@ -29,13 +29,13 @@ raft_margin = 15 raft_surface_line_width = 0.6 raft_surface_thickness = 0.15 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 55) speed_print = 55 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 55) speed_travel = 150 -speed_wall_0 = 15 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 15 / 55) +speed_wall_x = =math.ceil(speed_print * 40 / 55) support_angle = 45 support_enable = True support_infill_rate = 25 diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.8_draft.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.8_draft.inst.cfg index 0ba3a33812..cd292e6a2b 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.8_draft.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.8_draft.inst.cfg @@ -28,13 +28,13 @@ raft_margin = 15 raft_surface_line_width = 0.7 raft_surface_thickness = 0.2 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 55) speed_print = 55 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 55) speed_travel = 150 -speed_wall_0 = 15 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 15 / 55) +speed_wall_x = =math.ceil(speed_print * 40 / 55) support_angle = 45 support_bottom_distance = 0.65 support_enable = True diff --git a/resources/quality/ultimaker2_plus/um2p_nylon_0.8_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_nylon_0.8_normal.inst.cfg index 5e0d64ec12..a93243dca5 100644 --- a/resources/quality/ultimaker2_plus/um2p_nylon_0.8_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_nylon_0.8_normal.inst.cfg @@ -31,10 +31,10 @@ retraction_hop_enabled = 0.2 speed_layer_0 = =round(speed_print * 30 / 55) speed_print = 55 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 55) speed_travel = 150 -speed_wall_0 = 15 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 15 / 55) +speed_wall_x = =math.ceil(speed_print * 40 / 55) support_angle = 45 support_bottom_distance = 0.65 support_enable = True diff --git a/resources/quality/ultimaker2_plus/um2p_pc_0.25_high.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pc_0.25_high.inst.cfg index d7cafd20a5..4a18f2ac65 100644 --- a/resources/quality/ultimaker2_plus/um2p_pc_0.25_high.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pc_0.25_high.inst.cfg @@ -36,3 +36,5 @@ support_infill_rate = 20 support_pattern = lines support_z_distance = 0.19 wall_thickness = 0.88 +speed_topbottom = =math.ceil(speed_print * 15 / 30) +speed_infill = =math.ceil(speed_print * 80 / 30) diff --git a/resources/quality/ultimaker2_plus/um2p_pc_0.4_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pc_0.4_fast.inst.cfg index aaf4812786..5cf189f8da 100644 --- a/resources/quality/ultimaker2_plus/um2p_pc_0.4_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pc_0.4_fast.inst.cfg @@ -29,11 +29,13 @@ raft_interface_line_width = 0.8 raft_margin = 15 speed_layer_0 = =round(speed_print * 30 / 45) speed_print = 45 -speed_wall_0 = 20 -speed_wall_x = 30 +speed_wall_0 = =math.ceil(speed_print * 20 / 45) +speed_wall_x = =math.ceil(speed_print * 30 / 45) support_angle = 45 support_enable = True support_infill_rate = 20 support_pattern = lines support_z_distance = 0.19 wall_thickness = 1.2 +speed_topbottom = =math.ceil(speed_print * 30 / 45) +speed_infill = =math.ceil(speed_print * 100 / 45) diff --git a/resources/quality/ultimaker2_plus/um2p_pc_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pc_0.4_normal.inst.cfg index a54ce9d946..32b0c37636 100644 --- a/resources/quality/ultimaker2_plus/um2p_pc_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pc_0.4_normal.inst.cfg @@ -29,8 +29,8 @@ raft_interface_line_width = 0.8 raft_margin = 15 speed_layer_0 = =round(speed_print * 30 / 45) speed_print = 45 -speed_wall_0 = 20 -speed_wall_x = 30 +speed_wall_0 = =math.ceil(speed_print * 20 / 45) +speed_wall_x = =math.ceil(speed_print * 30 / 45) support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_pc_0.6_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pc_0.6_fast.inst.cfg index 2d50f96661..09b60aadff 100644 --- a/resources/quality/ultimaker2_plus/um2p_pc_0.6_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pc_0.6_fast.inst.cfg @@ -29,12 +29,12 @@ raft_interface_line_width = 1.2 raft_margin = 15 raft_surface_line_width = 0.6 raft_surface_thickness = 0.15 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 45) speed_print = 45 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 45) speed_travel = 150 -speed_wall_0 = 30 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 30 / 45) +speed_wall_x = =math.ceil(speed_print * 40 / 45) support_angle = 45 support_enable = True support_infill_rate = 20 @@ -43,3 +43,4 @@ support_pattern = lines support_z_distance = 0.21 top_bottom_thickness = 0.75 wall_thickness = 1.06 +speed_infill = =math.ceil(speed_print * 100 / 45) diff --git a/resources/quality/ultimaker2_plus/um2p_pc_0.6_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pc_0.6_normal.inst.cfg index a19483c39a..b4b556a720 100644 --- a/resources/quality/ultimaker2_plus/um2p_pc_0.6_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pc_0.6_normal.inst.cfg @@ -29,12 +29,12 @@ raft_interface_line_width = 1.2 raft_margin = 15 raft_surface_line_width = 0.6 raft_surface_thickness = 0.15 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 45) speed_print = 45 -speed_topbottom = 20 +speed_topbottom = =math.ceil(speed_print * 20 / 45) speed_travel = 150 -speed_wall_0 = 30 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 30 / 45) +speed_wall_x = =math.ceil(speed_print * 40 / 45) support_angle = 45 support_enable = True support_infill_rate = 20 diff --git a/resources/quality/ultimaker2_plus/um2p_pp_0.4_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pp_0.4_fast.inst.cfg index 16c4a47340..4a12fe0883 100644 --- a/resources/quality/ultimaker2_plus/um2p_pp_0.4_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pp_0.4_fast.inst.cfg @@ -50,7 +50,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.5 retraction_prime_speed = 15 skin_overlap = 10 -speed_layer_0 = 25 +speed_layer_0 = =speed_print speed_prime_tower = =speed_topbottom speed_print = 25 speed_support_interface = =speed_topbottom @@ -69,3 +69,5 @@ travel_avoid_distance = 3 wall_0_inset = 0 wall_line_width_x = =round(line_width * 0.38 / 0.38, 2) wall_thickness = 0.76 +speed_wall_x = =math.ceil(speed_print * 80 / 25) +speed_infill = =math.ceil(speed_print * 100 / 25) diff --git a/resources/quality/ultimaker2_plus/um2p_pp_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pp_0.4_normal.inst.cfg index d318275700..8ceed3cd94 100644 --- a/resources/quality/ultimaker2_plus/um2p_pp_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pp_0.4_normal.inst.cfg @@ -49,7 +49,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.5 retraction_prime_speed = 15 skin_overlap = 10 -speed_layer_0 = 25 +speed_layer_0 = =speed_print speed_prime_tower = =speed_topbottom speed_print = 25 speed_support_interface = =speed_topbottom diff --git a/resources/quality/ultimaker2_plus/um2p_pp_0.6_draft.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pp_0.6_draft.inst.cfg index dd150d903a..d22984afa1 100644 --- a/resources/quality/ultimaker2_plus/um2p_pp_0.6_draft.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pp_0.6_draft.inst.cfg @@ -50,7 +50,7 @@ retraction_hop_only_when_collides = True retraction_prime_speed = 15 skin_overlap = 10 skirt_brim_line_width = 0.6 -speed_layer_0 = 25 +speed_layer_0 = =speed_print speed_prime_tower = =speed_topbottom speed_print = 25 speed_support_interface = =speed_topbottom diff --git a/resources/quality/ultimaker2_plus/um2p_pp_0.6_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pp_0.6_fast.inst.cfg index 8cb602b7eb..a8dd425d3d 100644 --- a/resources/quality/ultimaker2_plus/um2p_pp_0.6_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pp_0.6_fast.inst.cfg @@ -50,7 +50,7 @@ retraction_hop_only_when_collides = True retraction_prime_speed = 15 skin_overlap = 10 skirt_brim_line_width = 0.6 -speed_layer_0 = 25 +speed_layer_0 = =speed_print speed_prime_tower = =speed_topbottom speed_print = 25 speed_support_interface = =speed_topbottom @@ -70,3 +70,5 @@ travel_avoid_distance = 3 wall_0_inset = 0 wall_line_width_x = =round(line_width * 0.57 / 0.57, 2) wall_thickness = 1.14 +speed_wall_x = =math.ceil(speed_print * 80 / 25) +speed_infill = =math.ceil(speed_print * 100 / 25) diff --git a/resources/quality/ultimaker2_plus/um2p_pp_0.8_draft.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pp_0.8_draft.inst.cfg index 3e38caa1ec..aa7f5c27ee 100644 --- a/resources/quality/ultimaker2_plus/um2p_pp_0.8_draft.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pp_0.8_draft.inst.cfg @@ -50,7 +50,7 @@ retraction_hop_only_when_collides = True retraction_prime_speed = 15 skin_overlap = 10 skirt_brim_line_width = 0.8 -speed_layer_0 = 25 +speed_layer_0 = =speed_print speed_prime_tower = =speed_topbottom speed_print = 25 speed_support_interface = =speed_topbottom diff --git a/resources/quality/ultimaker2_plus/um2p_pp_0.8_verydraft.inst.cfg b/resources/quality/ultimaker2_plus/um2p_pp_0.8_verydraft.inst.cfg index 39408477af..177e86c60d 100644 --- a/resources/quality/ultimaker2_plus/um2p_pp_0.8_verydraft.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_pp_0.8_verydraft.inst.cfg @@ -50,7 +50,7 @@ retraction_hop_only_when_collides = True retraction_prime_speed = 15 skin_overlap = 10 skirt_brim_line_width = 0.8 -speed_layer_0 = 25 +speed_layer_0 = =speed_print speed_prime_tower = =speed_topbottom speed_print = 25 speed_support_interface = =speed_topbottom diff --git a/resources/quality/ultimaker2_plus/um2p_tpu_0.25_high.inst.cfg b/resources/quality/ultimaker2_plus/um2p_tpu_0.25_high.inst.cfg index 3e5f8f8180..559a636445 100644 --- a/resources/quality/ultimaker2_plus/um2p_tpu_0.25_high.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_tpu_0.25_high.inst.cfg @@ -27,13 +27,13 @@ raft_interface_line_spacing = 1 raft_interface_line_width = 0.2 raft_surface_line_width = 0.2 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 40) speed_print = 40 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 40) speed_travel = 150 -speed_wall_0 = 15 -speed_wall_x = 38 +speed_wall_0 = =math.ceil(speed_print * 15 / 40) +speed_wall_x = =math.ceil(speed_print * 38 / 40) support_angle = 45 support_enable = True support_infill_rate = 25 @@ -41,3 +41,4 @@ support_xy_distance = 0.6 support_z_distance = =layer_height * 2 top_bottom_thickness = 1.2 wall_thickness = 0.88 +speed_infill = =math.ceil(speed_print * 80 / 40) diff --git a/resources/quality/ultimaker2_plus/um2p_tpu_0.4_normal.inst.cfg b/resources/quality/ultimaker2_plus/um2p_tpu_0.4_normal.inst.cfg index 84065dbfdf..3a2825685e 100644 --- a/resources/quality/ultimaker2_plus/um2p_tpu_0.4_normal.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_tpu_0.4_normal.inst.cfg @@ -24,13 +24,13 @@ raft_base_line_width = 0.8 raft_interface_line_spacing = 1 raft_margin = 12 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 40) speed_print = 40 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 40) speed_travel = 150 -speed_wall_0 = 20 -speed_wall_x = 35 +speed_wall_0 = =math.ceil(speed_print * 20 / 40) +speed_wall_x = =math.ceil(speed_print * 35 / 40) support_angle = 45 support_enable = True support_infill_rate = 25 diff --git a/resources/quality/ultimaker2_plus/um2p_tpu_0.6_fast.inst.cfg b/resources/quality/ultimaker2_plus/um2p_tpu_0.6_fast.inst.cfg index ec424a6f40..87a429134f 100644 --- a/resources/quality/ultimaker2_plus/um2p_tpu_0.6_fast.inst.cfg +++ b/resources/quality/ultimaker2_plus/um2p_tpu_0.6_fast.inst.cfg @@ -29,13 +29,13 @@ raft_interface_line_width = 0.57 raft_margin = 15 raft_surface_line_width = 0.5 retraction_hop_enabled = 0.2 -speed_layer_0 = 30 +speed_layer_0 = =math.ceil(speed_print * 30 / 45) speed_print = 45 speed_support = 40 -speed_topbottom = 35 +speed_topbottom = =math.ceil(speed_print * 35 / 45) speed_travel = 150 -speed_wall_0 = 15 -speed_wall_x = 40 +speed_wall_0 = =math.ceil(speed_print * 15 / 45) +speed_wall_x = =math.ceil(speed_print * 40 / 45) support_angle = 45 support_enable = True support_infill_rate = 25 @@ -43,3 +43,4 @@ support_xy_distance = 0.7 support_z_distance = =layer_height * 2 top_bottom_thickness = 1.2 wall_thickness = 1.14 +speed_infill = =math.ceil(speed_print * 100 / 45) diff --git a/resources/quality/ultimaker3/um3_aa0.25_CPE_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_CPE_Normal_Quality.inst.cfg index fabe67cc27..0292bfa6d1 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_CPE_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_CPE_Normal_Quality.inst.cfg @@ -16,7 +16,7 @@ prime_tower_purge_volume = 1 prime_tower_size = 12 prime_tower_wall_thickness = 0.9 retraction_extrusion_window = 0.5 -speed_infill = 40 +speed_infill = =math.ceil(speed_print * 40 / 55) speed_topbottom = =math.ceil(speed_print * 30 / 55) top_bottom_thickness = 0.8 wall_thickness = 0.92 diff --git a/resources/quality/ultimaker3/um3_aa0.25_PC_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_PC_Normal_Quality.inst.cfg index 8444d0faef..608bc837c7 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_PC_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_PC_Normal_Quality.inst.cfg @@ -38,9 +38,9 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_travel = 250 speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall_0 = =math.ceil(speed_wall * 25 / 40) diff --git a/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg index 14345dc626..b4c557216e 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_PLA_Normal_Quality.inst.cfg @@ -24,11 +24,11 @@ material_initial_print_temperature = =max(-273.15, material_print_temperature - material_print_temperature = 190 retraction_hop = 0.2 skin_overlap = 5 -speed_layer_0 = 30 +speed_layer_0 = =speed_print speed_print = 30 speed_travel_layer_0 = 120 -speed_wall = 25 -speed_wall_0 = 20 +speed_wall = =math.ceil(speed_print * 25 / 30) +speed_wall_0 = =math.ceil(speed_print * 20 / 30) top_bottom_thickness = 0.72 travel_avoid_distance = 0.4 wall_0_inset = 0.015 diff --git a/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg index dd8a906e4c..fefbf55b97 100644 --- a/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.25_PP_Normal_Quality.inst.cfg @@ -42,7 +42,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 13 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_travel = 300 speed_travel_layer_0 = 50 diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg index f7748e3903..d03f8f24c1 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_Draft_Print.inst.cfg @@ -20,7 +20,7 @@ material_final_print_temperature = =material_print_temperature - 10 prime_tower_enable = False skin_overlap = 20 speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 35 / 60) speed_wall = =math.ceil(speed_print * 45 / 60) speed_wall_0 = =math.ceil(speed_wall * 35 / 45) diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg index 50fb12eaa4..ca82990b13 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_Fast_Print.inst.cfg @@ -21,7 +21,7 @@ material_final_print_temperature = =material_print_temperature - 10 material_standby_temperature = 100 prime_tower_enable = False speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 30 / 60) speed_wall = =math.ceil(speed_print * 40 / 60) speed_wall_0 = =math.ceil(speed_wall * 30 / 40) diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg index 6215afc9df..35cd06e589 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_High_Quality.inst.cfg @@ -21,6 +21,6 @@ material_initial_print_temperature = =material_print_temperature - 5 material_final_print_temperature = =material_print_temperature - 10 prime_tower_enable = False speed_print = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_topbottom = =math.ceil(speed_print * 30 / 50) speed_wall = =math.ceil(speed_print * 30 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg index a7683fb249..fdeafbc86b 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_ABS_Normal_Quality.inst.cfg @@ -19,6 +19,6 @@ material_final_print_temperature = =material_print_temperature - 10 material_standby_temperature = 100 prime_tower_enable = False speed_print = 55 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 55) speed_topbottom = =math.ceil(speed_print * 30 / 55) speed_wall = =math.ceil(speed_print * 30 / 55) diff --git a/resources/quality/ultimaker3/um3_aa0.4_BAM_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_BAM_Draft_Print.inst.cfg index f9a2bd88a4..d9a241742b 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_BAM_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_BAM_Draft_Print.inst.cfg @@ -20,7 +20,7 @@ material_print_temperature = =default_material_print_temperature + 5 # prime_tower_enable: see CURA-4248 prime_tower_enable = =min(extruderValues('material_surface_energy')) < 100 skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) speed_topbottom = =math.ceil(speed_print * 35 / 70) speed_wall = =math.ceil(speed_print * 50 / 70) speed_wall_0 = =math.ceil(speed_wall * 35 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.4_BAM_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_BAM_Fast_Print.inst.cfg index d181e7e4c9..5d7d6bde25 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_BAM_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_BAM_Fast_Print.inst.cfg @@ -19,7 +19,7 @@ machine_nozzle_heat_up_speed = 1.6 # prime_tower_enable: see CURA-4248 prime_tower_enable = =min(extruderValues('material_surface_energy')) < 100 speed_print = 80 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 80) speed_topbottom = =math.ceil(speed_print * 30 / 80) speed_wall = =math.ceil(speed_print * 40 / 80) speed_wall_0 = =math.ceil(speed_wall * 30 / 40) diff --git a/resources/quality/ultimaker3/um3_aa0.4_BAM_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_BAM_Normal_Quality.inst.cfg index 4a8bde54b3..d85bb0cbf6 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_BAM_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_BAM_Normal_Quality.inst.cfg @@ -20,7 +20,7 @@ machine_nozzle_heat_up_speed = 1.6 material_print_temperature = =default_material_print_temperature - 10 prime_tower_enable = =min(extruderValues('material_surface_energy')) < 100 skin_overlap = 10 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) support_interface_enable = True support_interface_density = =min(extruderValues('material_surface_energy')) support_interface_pattern = ='lines' if support_interface_density < 100 else 'concentric' diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg index 8f071b18d7..9a1dd89f9c 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Draft_Print.inst.cfg @@ -38,7 +38,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_print = 50 speed_topbottom = =math.ceil(speed_print * 40 / 50) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg index fc6eee65bc..e3c0e9d69a 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Fast_Print.inst.cfg @@ -38,7 +38,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_topbottom = =math.ceil(speed_print * 35 / 45) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg index 3559ed5e67..e3c7dd7941 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_High_Quality.inst.cfg @@ -40,7 +40,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 40) speed_print = 40 speed_topbottom = =math.ceil(speed_print * 30 / 35) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg index 02a807c7b8..1496ac3c05 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPEP_Normal_Quality.inst.cfg @@ -39,7 +39,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 40) speed_print = 40 speed_topbottom = =math.ceil(speed_print * 30 / 35) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg index 7a54e34f6d..686073542f 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_Draft_Print.inst.cfg @@ -19,7 +19,7 @@ material_standby_temperature = 100 prime_tower_purge_volume = 1 skin_overlap = 20 speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 35 / 60) speed_wall = =math.ceil(speed_print * 45 / 60) speed_wall_0 = =math.ceil(speed_wall * 35 / 45) diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg index 94476b33d1..d35ada198c 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_Fast_Print.inst.cfg @@ -19,7 +19,7 @@ material_final_print_temperature = =material_print_temperature - 10 material_standby_temperature = 100 prime_tower_purge_volume = 1 speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 30 / 60) speed_wall = =math.ceil(speed_print * 40 / 60) speed_wall_0 = =math.ceil(speed_wall * 30 / 40) diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg index d8899f1bca..f33425f7c6 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_High_Quality.inst.cfg @@ -21,6 +21,6 @@ material_final_print_temperature = =material_print_temperature - 10 material_standby_temperature = 100 prime_tower_purge_volume = 1 speed_print = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_topbottom = =math.ceil(speed_print * 30 / 50) speed_wall = =math.ceil(speed_print * 30 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg index 4f144ca92e..650e5a4bef 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_CPE_Normal_Quality.inst.cfg @@ -19,6 +19,6 @@ material_final_print_temperature = =material_print_temperature - 10 material_standby_temperature = 100 prime_tower_purge_volume = 1 speed_print = 55 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 55) speed_topbottom = =math.ceil(speed_print * 30 / 55) speed_wall = =math.ceil(speed_print * 30 / 55) diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg index 91600ed6fa..ab5f60feb5 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Draft_Print.inst.cfg @@ -29,7 +29,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg index 7db3683333..64508a15ea 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Fast_Print.inst.cfg @@ -29,7 +29,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg index fd9ffb53b4..85ac422729 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_High_Quality.inst.cfg @@ -28,7 +28,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg index c8ed69342d..4f6ebbe993 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_Nylon_Normal_Quality.inst.cfg @@ -28,7 +28,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg index 2f05384abd..dc72708d9f 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_Draft_Print.inst.cfg @@ -48,7 +48,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg index ef6f5978ad..0a5990d00d 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_Fast_Print.inst.cfg @@ -47,7 +47,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg index cbba3ffddb..51596c0af1 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_High_Quality.inst.cfg @@ -48,7 +48,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg index ac78470b03..42055f214d 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PC_Normal_Quality.inst.cfg @@ -45,7 +45,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_travel = 250 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PLA_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PLA_Draft_Print.inst.cfg index 735dac3b76..cb44ec8664 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PLA_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PLA_Draft_Print.inst.cfg @@ -21,7 +21,7 @@ material_print_temperature = =default_material_print_temperature + 5 material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) speed_topbottom = =math.ceil(speed_print * 40 / 70) speed_wall = =math.ceil(speed_print * 55 / 70) speed_wall_0 = =math.ceil(speed_wall * 45 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.4_PLA_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PLA_Fast_Print.inst.cfg index b69fa30a8b..c22c6b3a11 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PLA_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PLA_Fast_Print.inst.cfg @@ -20,7 +20,7 @@ machine_nozzle_heat_up_speed = 1.6 material_standby_temperature = 100 prime_tower_enable = False speed_print = 80 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 80) speed_topbottom = =math.ceil(speed_print * 30 / 80) speed_wall = =math.ceil(speed_print * 40 / 80) speed_wall_0 = =math.ceil(speed_wall * 30 / 40) diff --git a/resources/quality/ultimaker3/um3_aa0.4_PLA_High_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PLA_High_Quality.inst.cfg index 325d22fe5a..6af3bb1e70 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PLA_High_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PLA_High_Quality.inst.cfg @@ -23,7 +23,7 @@ material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 10 speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 30 / 60) speed_wall = =math.ceil(speed_print * 30 / 60) top_bottom_thickness = 1 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PLA_Normal_Quality.inst.cfg index 910f3cec4b..f0be5bf4ea 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PLA_Normal_Quality.inst.cfg @@ -21,6 +21,6 @@ machine_nozzle_heat_up_speed = 1.6 material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 10 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) top_bottom_thickness = 1 wall_thickness = 1 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg index 4ea3552891..4870a547c6 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Draft_Print.inst.cfg @@ -49,7 +49,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 18 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) speed_travel = 300 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg index bfb0085db4..77d5651cd9 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Fast_Print.inst.cfg @@ -48,7 +48,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 18 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) speed_travel = 300 diff --git a/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg index f3b30b853b..019bf8abda 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_PP_Normal_Quality.inst.cfg @@ -47,7 +47,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 18 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) speed_travel = 300 diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPLA_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPLA_Draft_Print.inst.cfg index 850fbd247b..fbe9e70219 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPLA_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPLA_Draft_Print.inst.cfg @@ -27,7 +27,7 @@ prime_tower_enable = False roofing_layer_count = 2 skin_outline_count = 0 skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_print = 50 speed_roofing = =math.ceil(speed_wall * 20 / 24) speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPLA_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPLA_Fast_Print.inst.cfg index f61e356a8f..2575a01cdb 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPLA_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPLA_Fast_Print.inst.cfg @@ -21,7 +21,7 @@ machine_nozzle_heat_up_speed = 1.6 material_print_temperature = =default_material_print_temperature -10 material_standby_temperature = 100 prime_tower_enable = False -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_topbottom = =math.ceil(speed_print * 35 / 45) speed_wall = =math.ceil(speed_print * 40 / 45) diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPLA_Normal_Quality.inst.cfg index 0779260c76..5347df099f 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPLA_Normal_Quality.inst.cfg @@ -23,7 +23,7 @@ material_print_temperature = =default_material_print_temperature - 15 material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 10 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_topbottom = =math.ceil(speed_print * 35 / 45) speed_wall = =math.ceil(speed_print * 40 / 45) diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg index 59c650ef0e..51e6c98306 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Draft_Print.inst.cfg @@ -48,7 +48,7 @@ retraction_min_travel = =line_width * 2 retraction_prime_speed = 15 skin_overlap = 5 speed_equalize_flow_enabled = True -speed_layer_0 = 18 +speed_layer_0 = =math.ceil(speed_print * 18 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) speed_travel = 300 diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg index f0a889c12e..1e3cb508d7 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Fast_Print.inst.cfg @@ -49,7 +49,7 @@ retraction_min_travel = =line_width * 2 retraction_prime_speed = 15 skin_overlap = 5 speed_equalize_flow_enabled = True -speed_layer_0 = 18 +speed_layer_0 = =math.ceil(speed_print * 18 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) speed_travel = 300 diff --git a/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg b/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg index 1b6ac261cf..2f113beb47 100644 --- a/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.4_TPU_Normal_Quality.inst.cfg @@ -46,7 +46,7 @@ retraction_min_travel = =line_width * 2 retraction_prime_speed = 15 skin_overlap = 5 speed_equalize_flow_enabled = True -speed_layer_0 = 18 +speed_layer_0 = =math.ceil(speed_print * 18 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) speed_travel = 300 diff --git a/resources/quality/ultimaker3/um3_aa0.8_CPEP_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_CPEP_Fast_Print.inst.cfg index 961e127a57..ed6e35f700 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_CPEP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_CPEP_Fast_Print.inst.cfg @@ -26,7 +26,7 @@ retraction_combing = off retraction_hop = 0.1 retraction_hop_enabled = False skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 15 speed_topbottom = =math.ceil(speed_print * 35 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.8_CPEP_Superdraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_CPEP_Superdraft_Print.inst.cfg index b112bf8f4f..6ce17b25f2 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_CPEP_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_CPEP_Superdraft_Print.inst.cfg @@ -27,7 +27,7 @@ retraction_combing = off retraction_hop = 0.1 retraction_hop_enabled = False skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 8 speed_topbottom = =math.ceil(speed_print * 35 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.8_CPEP_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_CPEP_Verydraft_Print.inst.cfg index c51ee3a90f..c4b0655e3d 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_CPEP_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_CPEP_Verydraft_Print.inst.cfg @@ -27,7 +27,7 @@ retraction_combing = off retraction_hop = 0.1 retraction_hop_enabled = False skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 10 speed_topbottom = =math.ceil(speed_print * 35 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.8_PC_Fast_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PC_Fast_Print.inst.cfg index fba7e2c824..c6258781e0 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PC_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PC_Fast_Print.inst.cfg @@ -22,7 +22,7 @@ material_standby_temperature = 100 raft_airgap = 0.5 raft_margin = 15 skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 15 speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.8_PC_Superdraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PC_Superdraft_Print.inst.cfg index 5838a48fb7..6e272a3c9f 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PC_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PC_Superdraft_Print.inst.cfg @@ -22,7 +22,7 @@ material_standby_temperature = 100 raft_airgap = 0.5 raft_margin = 15 skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 8 speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/ultimaker3/um3_aa0.8_PC_Verydraft_Print.inst.cfg b/resources/quality/ultimaker3/um3_aa0.8_PC_Verydraft_Print.inst.cfg index 83a331e801..61ab7e29ea 100644 --- a/resources/quality/ultimaker3/um3_aa0.8_PC_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker3/um3_aa0.8_PC_Verydraft_Print.inst.cfg @@ -23,7 +23,7 @@ material_standby_temperature = 100 raft_airgap = 0.5 raft_margin = 15 skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 10 speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.25_CPE_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.25_CPE_Normal_Quality.inst.cfg index a69053b8ab..f8305eda7c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.25_CPE_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.25_CPE_Normal_Quality.inst.cfg @@ -15,7 +15,7 @@ variant = AA 0.25 prime_tower_size = 12 prime_tower_wall_thickness = 0.9 retraction_extrusion_window = 0.5 -speed_infill = 40 +speed_infill = =math.ceil(speed_print * 40 / 55) speed_topbottom = =math.ceil(speed_print * 30 / 55) top_bottom_thickness = 0.8 wall_thickness = 0.92 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.25_PC_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.25_PC_Normal_Quality.inst.cfg index c188f37d96..bd5e8d08ff 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.25_PC_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.25_PC_Normal_Quality.inst.cfg @@ -38,9 +38,9 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall_0 = =math.ceil(speed_wall * 25 / 40) support_bottom_distance = =support_z_distance diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.25_PLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.25_PLA_Normal_Quality.inst.cfg index f964bba440..6d7c46772c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.25_PLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.25_PLA_Normal_Quality.inst.cfg @@ -24,11 +24,11 @@ material_initial_print_temperature = =max(-273.15, material_print_temperature - material_print_temperature = 190 retraction_hop = 0.2 skin_overlap = 5 -speed_layer_0 = 30 +speed_layer_0 = =speed_print speed_print = 30 speed_travel_layer_0 = 120 -speed_wall = 25 -speed_wall_0 = 20 +speed_wall = =math.ceil(speed_print * 25 / 30) +speed_wall_0 = =math.ceil(speed_print * 20 / 30) top_bottom_thickness = 0.72 travel_avoid_distance = 0.4 wall_0_inset = 0.015 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.25_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.25_PP_Normal_Quality.inst.cfg index 72c16ebc1d..d4b4691be4 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.25_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.25_PP_Normal_Quality.inst.cfg @@ -42,7 +42,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 13 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_travel_layer_0 = 50 speed_wall = =math.ceil(speed_print * 25 / 25) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Draft_Print.inst.cfg index b2c44dab01..2cf03fe4c9 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Draft_Print.inst.cfg @@ -20,7 +20,7 @@ material_final_print_temperature = =material_print_temperature - 20 prime_tower_enable = False skin_overlap = 20 speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 35 / 60) speed_wall = =math.ceil(speed_print * 45 / 60) speed_wall_0 = =math.ceil(speed_wall * 35 / 45) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Fast_Print.inst.cfg index 0470956c6d..9b819ad56a 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Fast_Print.inst.cfg @@ -20,7 +20,7 @@ material_initial_print_temperature = =material_print_temperature - 15 material_final_print_temperature = =material_print_temperature - 20 prime_tower_enable = False speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 30 / 60) speed_wall = =math.ceil(speed_print * 40 / 60) speed_wall_0 = =math.ceil(speed_wall * 30 / 40) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_High_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_High_Quality.inst.cfg index 497071e01a..3fce280901 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_High_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_High_Quality.inst.cfg @@ -20,7 +20,7 @@ material_initial_print_temperature = =material_print_temperature - 15 material_final_print_temperature = =material_print_temperature - 20 prime_tower_enable = False speed_print = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_topbottom = =math.ceil(speed_print * 30 / 50) speed_wall = =math.ceil(speed_print * 30 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Normal_Quality.inst.cfg index f080adb06f..3e1836b3b6 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_ABS_Normal_Quality.inst.cfg @@ -19,7 +19,7 @@ material_initial_print_temperature = =material_print_temperature - 15 material_final_print_temperature = =material_print_temperature - 20 prime_tower_enable = False speed_print = 55 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 55) speed_topbottom = =math.ceil(speed_print * 30 / 55) speed_wall = =math.ceil(speed_print * 30 / 55) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Draft_Print.inst.cfg index b4652d23dd..f33b562820 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Draft_Print.inst.cfg @@ -20,7 +20,7 @@ material_print_temperature = =default_material_print_temperature + 5 # prime_tower_enable: see CURA-4248 prime_tower_enable = =min(extruderValues('material_surface_energy')) < 100 skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) speed_topbottom = =math.ceil(speed_print * 35 / 70) speed_wall = =math.ceil(speed_print * 50 / 70) speed_wall_0 = =math.ceil(speed_wall * 35 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Fast_Print.inst.cfg index bebc993ca3..6ed4df3844 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Fast_Print.inst.cfg @@ -19,7 +19,7 @@ machine_nozzle_heat_up_speed = 1.6 # prime_tower_enable: see CURA-4248 prime_tower_enable = =min(extruderValues('material_surface_energy')) < 100 speed_print = 80 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 80) speed_topbottom = =math.ceil(speed_print * 30 / 80) speed_wall = =math.ceil(speed_print * 40 / 80) speed_wall_0 = =math.ceil(speed_wall * 30 / 40) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Normal_Quality.inst.cfg index 40f0c2ab70..764094b897 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_BAM_Normal_Quality.inst.cfg @@ -21,7 +21,7 @@ material_print_temperature = =default_material_print_temperature - 10 # prime_tower_enable: see CURA-4248 prime_tower_enable = =min(extruderValues('material_surface_energy')) < 100 skin_overlap = 10 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) support_interface_enable = True support_interface_density = =min(extruderValues('material_surface_energy')) support_interface_pattern = ='lines' if support_interface_density < 100 else 'concentric' diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Draft_Print.inst.cfg index bb5cad456f..aa34425a46 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Draft_Print.inst.cfg @@ -35,7 +35,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_print = 50 speed_topbottom = =math.ceil(speed_print * 40 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Fast_Print.inst.cfg index ef3e8d7f4e..5ae2a219ef 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Fast_Print.inst.cfg @@ -35,7 +35,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_topbottom = =math.ceil(speed_print * 35 / 45) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_High_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_High_Quality.inst.cfg index 823a6e0fdf..77b2201627 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_High_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_High_Quality.inst.cfg @@ -37,7 +37,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 40) speed_print = 40 speed_topbottom = =math.ceil(speed_print * 30 / 35) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Normal_Quality.inst.cfg index 05c960e443..3963e53991 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPEP_Normal_Quality.inst.cfg @@ -37,7 +37,7 @@ retraction_hop = 0.2 retraction_hop_enabled = False retraction_hop_only_when_collides = True skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 40) speed_print = 40 speed_topbottom = =math.ceil(speed_print * 30 / 35) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Draft_Print.inst.cfg index 744b49b03b..3f0ff31ce1 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Draft_Print.inst.cfg @@ -17,7 +17,7 @@ material_initial_print_temperature = =material_print_temperature - 5 material_final_print_temperature = =material_print_temperature - 10 skin_overlap = 20 speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 35 / 60) speed_wall = =math.ceil(speed_print * 45 / 60) speed_wall_0 = =math.ceil(speed_wall * 35 / 45) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Fast_Print.inst.cfg index 58757c6dd1..7b4155c1e2 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Fast_Print.inst.cfg @@ -17,7 +17,7 @@ material_print_temperature = =default_material_print_temperature + 5 material_initial_print_temperature = =material_print_temperature - 5 material_final_print_temperature = =material_print_temperature - 10 speed_print = 60 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 60) speed_topbottom = =math.ceil(speed_print * 30 / 60) speed_wall = =math.ceil(speed_print * 40 / 60) speed_wall_0 = =math.ceil(speed_wall * 30 / 40) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_High_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_High_Quality.inst.cfg index 010ad9114a..01cf298308 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_High_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_High_Quality.inst.cfg @@ -19,7 +19,7 @@ material_print_temperature = =default_material_print_temperature - 5 material_initial_print_temperature = =material_print_temperature - 5 material_final_print_temperature = =material_print_temperature - 10 speed_print = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_topbottom = =math.ceil(speed_print * 30 / 50) speed_wall = =math.ceil(speed_print * 30 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Normal_Quality.inst.cfg index 386350212d..bfec569199 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_CPE_Normal_Quality.inst.cfg @@ -17,7 +17,7 @@ machine_nozzle_heat_up_speed = 1.5 material_initial_print_temperature = =material_print_temperature - 5 material_final_print_temperature = =material_print_temperature - 10 speed_print = 55 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 55) speed_topbottom = =math.ceil(speed_print * 30 / 55) speed_wall = =math.ceil(speed_print * 30 / 55) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Draft_Print.inst.cfg index ac23b19285..42c1e4c195 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Draft_Print.inst.cfg @@ -29,7 +29,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Fast_Print.inst.cfg index 977ba5c309..76a1773bf4 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Fast_Print.inst.cfg @@ -29,7 +29,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_High_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_High_Quality.inst.cfg index 7e4ebed906..3d83a83d4e 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_High_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_High_Quality.inst.cfg @@ -28,7 +28,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Normal_Quality.inst.cfg index 941561499b..5ec5bed4c5 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_Nylon_Normal_Quality.inst.cfg @@ -28,7 +28,7 @@ raft_jerk = =jerk_layer_0 raft_margin = 10 raft_surface_thickness = =round(machine_nozzle_size * 0.2 / 0.4, 2) skin_overlap = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) switch_extruder_prime_speed = 30 switch_extruder_retraction_amount = 30 switch_extruder_retraction_speeds = 40 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Draft_Print.inst.cfg index 04db39fc54..14562c3763 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Draft_Print.inst.cfg @@ -47,9 +47,9 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall_0 = =math.ceil(speed_wall * 25 / 40) support_bottom_distance = =support_z_distance diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Fast_Print.inst.cfg index 65fd293954..e331f446f7 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Fast_Print.inst.cfg @@ -46,9 +46,9 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall_0 = =math.ceil(speed_wall * 25 / 40) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_High_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_High_Quality.inst.cfg index d75b918479..afbb374fe2 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_High_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_High_Quality.inst.cfg @@ -47,9 +47,9 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall_0 = =math.ceil(speed_wall * 25 / 40) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Normal_Quality.inst.cfg index ccffa0bc7c..969d7fc29c 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PC_Normal_Quality.inst.cfg @@ -45,9 +45,9 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 15 skin_overlap = 30 -speed_layer_0 = 25 +speed_layer_0 = =math.ceil(speed_print * 25 / 50) speed_print = 50 -speed_topbottom = 25 +speed_topbottom = =math.ceil(speed_print * 25 / 50) speed_wall = =math.ceil(speed_print * 40 / 50) speed_wall_0 = =math.ceil(speed_wall * 25 / 40) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Draft_Print.inst.cfg index 8ea92a86d7..909af71245 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Draft_Print.inst.cfg @@ -20,7 +20,7 @@ material_print_temperature = =default_material_print_temperature + 5 material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) speed_topbottom = =math.ceil(speed_print * 40 / 70) speed_wall = =math.ceil(speed_print * 55 / 70) speed_wall_0 = =math.ceil(speed_wall * 45 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Fast_Print.inst.cfg index 35a6c51ea4..fea7a76971 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Fast_Print.inst.cfg @@ -19,7 +19,7 @@ machine_nozzle_heat_up_speed = 1.6 material_standby_temperature = 100 prime_tower_enable = False speed_print = 70 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) speed_topbottom = =math.ceil(speed_print * 35 / 70) speed_wall = =math.ceil(speed_print * 45 / 70) speed_wall_0 = =math.ceil(speed_wall * 35 / 70) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_High_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_High_Quality.inst.cfg index d739d132a9..d9ef5052e5 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_High_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_High_Quality.inst.cfg @@ -22,7 +22,7 @@ material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 10 speed_print = 50 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_topbottom = =math.ceil(speed_print * 35 / 50) speed_wall = =math.ceil(speed_print * 35 / 50) top_bottom_thickness = 1 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Normal_Quality.inst.cfg index 7c86049fe1..a2eb547b08 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PLA_Normal_Quality.inst.cfg @@ -20,7 +20,7 @@ machine_nozzle_heat_up_speed = 1.6 material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 10 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 70) top_bottom_thickness = 1 wall_thickness = 1 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Draft_Print.inst.cfg index e53cd8f7a8..fb806d2a8e 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Draft_Print.inst.cfg @@ -47,7 +47,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 18 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) speed_travel_layer_0 = 50 diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Fast_Print.inst.cfg index e9d08feaff..30fe9772ef 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Fast_Print.inst.cfg @@ -47,7 +47,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 18 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Normal_Quality.inst.cfg index 58d9e1639a..7be40498f5 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_PP_Normal_Quality.inst.cfg @@ -47,7 +47,7 @@ retraction_hop_only_when_collides = True retraction_min_travel = 0.8 retraction_prime_speed = 18 speed_equalize_flow_enabled = True -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Draft_Print.inst.cfg index 8adebb167e..d13e6a8b68 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Draft_Print.inst.cfg @@ -27,7 +27,7 @@ prime_tower_enable = False roofing_layer_count = 2 skin_outline_count = 0 skin_overlap = 20 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 50) speed_print = 50 speed_roofing = =math.ceil(speed_wall * 20 / 24) speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Fast_Print.inst.cfg index 780ad37ab4..b41f7851cf 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Fast_Print.inst.cfg @@ -21,7 +21,7 @@ machine_nozzle_heat_up_speed = 1.6 material_print_temperature = =default_material_print_temperature -10 material_standby_temperature = 100 prime_tower_enable = False -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_topbottom = =math.ceil(speed_print * 35 / 45) speed_wall = =math.ceil(speed_print * 40 / 45) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_High_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_High_Quality.inst.cfg index 3bcb7142e9..1c3f1470a2 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_High_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_High_Quality.inst.cfg @@ -22,7 +22,7 @@ material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 10 speed_print = 45 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_topbottom = =math.ceil(speed_print * 35 / 45) speed_wall = =math.ceil(speed_print * 40 / 45) speed_wall_0 = =math.ceil(speed_wall * 35 / 45) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Normal_Quality.inst.cfg index b1e7eee3bb..81a952d743 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPLA_Normal_Quality.inst.cfg @@ -23,7 +23,7 @@ material_print_temperature = =default_material_print_temperature - 15 material_standby_temperature = 100 prime_tower_enable = False skin_overlap = 10 -speed_layer_0 = 20 +speed_layer_0 = =math.ceil(speed_print * 20 / 45) speed_print = 45 speed_topbottom = =math.ceil(speed_print * 35 / 45) speed_wall = =math.ceil(speed_print * 40 / 45) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Draft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Draft_Print.inst.cfg index 56249427bf..5009b8395f 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Draft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Draft_Print.inst.cfg @@ -46,7 +46,7 @@ retraction_min_travel = =line_width * 2 retraction_prime_speed = 15 skin_overlap = 5 speed_equalize_flow_enabled = True -speed_layer_0 = 18 +speed_layer_0 = =math.ceil(speed_print * 18 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Fast_Print.inst.cfg index e362ffd25d..64475d822e 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Fast_Print.inst.cfg @@ -46,7 +46,7 @@ retraction_min_travel = =line_width * 2 retraction_prime_speed = 15 skin_overlap = 5 speed_equalize_flow_enabled = True -speed_layer_0 = 18 +speed_layer_0 = =math.ceil(speed_print * 18 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Normal_Quality.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Normal_Quality.inst.cfg index 8ffe0afae6..ac6a62ae5a 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Normal_Quality.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.4_TPU_Normal_Quality.inst.cfg @@ -45,7 +45,7 @@ retraction_min_travel = =line_width * 2 retraction_prime_speed = 15 skin_overlap = 5 speed_equalize_flow_enabled = True -speed_layer_0 = 18 +speed_layer_0 = =math.ceil(speed_print * 18 / 25) speed_print = 25 speed_topbottom = =math.ceil(speed_print * 25 / 25) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Fast_Print.inst.cfg index 4599155da4..3c1b47bfdb 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Fast_Print.inst.cfg @@ -26,7 +26,7 @@ retraction_combing = off retraction_hop = 0.1 retraction_hop_enabled = False skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 15 speed_topbottom = =math.ceil(speed_print * 35 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Superdraft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Superdraft_Print.inst.cfg index 36654edf61..00ef557151 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Superdraft_Print.inst.cfg @@ -26,7 +26,7 @@ retraction_combing = off retraction_hop = 0.1 retraction_hop_enabled = False skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 8 speed_topbottom = =math.ceil(speed_print * 35 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Verydraft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Verydraft_Print.inst.cfg index 0588f2bf34..86535d5d77 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_CPEP_Verydraft_Print.inst.cfg @@ -26,7 +26,7 @@ retraction_combing = off retraction_hop = 0.1 retraction_hop_enabled = False skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 10 speed_topbottom = =math.ceil(speed_print * 35 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Fast_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Fast_Print.inst.cfg index fddb41d4b5..2e90b0215f 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Fast_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Fast_Print.inst.cfg @@ -22,7 +22,7 @@ material_standby_temperature = 100 raft_airgap = 0.5 raft_margin = 15 skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 15 speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Superdraft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Superdraft_Print.inst.cfg index 9f364651c4..cf1dcfe540 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Superdraft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Superdraft_Print.inst.cfg @@ -21,7 +21,7 @@ material_standby_temperature = 100 raft_airgap = 0.5 raft_margin = 15 skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 8 speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Verydraft_Print.inst.cfg b/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Verydraft_Print.inst.cfg index d3ee0ed88c..7c77bf1d53 100644 --- a/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Verydraft_Print.inst.cfg +++ b/resources/quality/ultimaker_s5/um_s5_aa0.8_PC_Verydraft_Print.inst.cfg @@ -22,7 +22,7 @@ material_standby_temperature = 100 raft_airgap = 0.5 raft_margin = 15 skin_overlap = 0 -speed_layer_0 = 15 +speed_layer_0 = =math.ceil(speed_print * 15 / 50) speed_print = 50 speed_slowdown_layers = 10 speed_topbottom = =math.ceil(speed_print * 25 / 50) diff --git a/resources/quality/zyyx/zyyx_agile_pro_flex_fast.inst.cfg b/resources/quality/zyyx/zyyx_agile_pro_flex_fast.inst.cfg index fe1e98747d..cc538076d2 100644 --- a/resources/quality/zyyx/zyyx_agile_pro_flex_fast.inst.cfg +++ b/resources/quality/zyyx/zyyx_agile_pro_flex_fast.inst.cfg @@ -20,8 +20,8 @@ material_print_temperature_layer_0 = 235 retraction_amount = 1.0 retraction_speed = 15 speed_print = 20 -speed_wall = 20 -speed_wall_x = 20 +speed_wall = =speed_print +speed_wall_x = =speed_print adhesion_type = brim material_flow = 105 raft_airgap = 0.2 diff --git a/resources/quality/zyyx/zyyx_agile_pro_flex_fine.inst.cfg b/resources/quality/zyyx/zyyx_agile_pro_flex_fine.inst.cfg index e0b43cfd95..1791305b92 100644 --- a/resources/quality/zyyx/zyyx_agile_pro_flex_fine.inst.cfg +++ b/resources/quality/zyyx/zyyx_agile_pro_flex_fine.inst.cfg @@ -20,8 +20,8 @@ material_print_temperature_layer_0 = 235 retraction_amount = 0.2 retraction_speed = 15 speed_print = 15 -speed_wall = 15 -speed_wall_x = 15 +speed_wall = =speed_print +speed_wall_x = =speed_print adhesion_type = brim material_flow = 105 raft_airgap = 0.1 diff --git a/resources/quality/zyyx/zyyx_agile_pro_flex_normal.inst.cfg b/resources/quality/zyyx/zyyx_agile_pro_flex_normal.inst.cfg index 959f65469a..70020f5fde 100644 --- a/resources/quality/zyyx/zyyx_agile_pro_flex_normal.inst.cfg +++ b/resources/quality/zyyx/zyyx_agile_pro_flex_normal.inst.cfg @@ -20,8 +20,8 @@ material_print_temperature_layer_0 = 235 retraction_amount = 1.0 retraction_speed = 15 speed_print = 20 -speed_wall = 15 -speed_wall_x = 20 +speed_wall = =math.ceil(speed_print * 15 / 20) +speed_wall_x = =speed_print adhesion_type = brim material_flow = 105 raft_airgap = 0.2 diff --git a/resources/quality/zyyx/zyyx_agile_pro_pla_fast.inst.cfg b/resources/quality/zyyx/zyyx_agile_pro_pla_fast.inst.cfg index 14b9d50351..0f36b6cb67 100644 --- a/resources/quality/zyyx/zyyx_agile_pro_pla_fast.inst.cfg +++ b/resources/quality/zyyx/zyyx_agile_pro_pla_fast.inst.cfg @@ -20,8 +20,8 @@ material_print_temperature_layer_0 = 225 retraction_amount = 1.5 retraction_speed = 20 speed_print = 40 -speed_wall = 40 -speed_wall_x = 40 +speed_wall = =speed_print +speed_wall_x = =speed_print adhesion_type = brim material_flow = 95 raft_airgap = 0.15 diff --git a/resources/quality/zyyx/zyyx_agile_pro_pla_fine.inst.cfg b/resources/quality/zyyx/zyyx_agile_pro_pla_fine.inst.cfg index 25f3aa45de..80ad562b2a 100644 --- a/resources/quality/zyyx/zyyx_agile_pro_pla_fine.inst.cfg +++ b/resources/quality/zyyx/zyyx_agile_pro_pla_fine.inst.cfg @@ -20,8 +20,8 @@ material_print_temperature_layer_0 = 225 retraction_amount = 0.4 retraction_speed = 20 speed_print = 35 -speed_wall = 18 -speed_wall_x = 25 +speed_wall = =math.ceil(speed_print * 18 / 35) +speed_wall_x = =math.ceil(speed_print * 25 / 35) adhesion_type = brim material_flow = 95 raft_airgap = 0.08 diff --git a/resources/quality/zyyx/zyyx_agile_pro_pla_normal.inst.cfg b/resources/quality/zyyx/zyyx_agile_pro_pla_normal.inst.cfg index 3760781e54..e3b933bc1c 100644 --- a/resources/quality/zyyx/zyyx_agile_pro_pla_normal.inst.cfg +++ b/resources/quality/zyyx/zyyx_agile_pro_pla_normal.inst.cfg @@ -20,8 +20,8 @@ material_print_temperature_layer_0 = 225 retraction_amount = 1.2 retraction_speed = 20 speed_print = 50 -speed_wall = 22 -speed_wall_x = 33 +speed_wall = =math.ceil(speed_print * 22 / 50) +speed_wall_x = =math.ceil(speed_print * 33 / 50) adhesion_type = brim material_flow = 95 raft_airgap = 0.15 diff --git a/tests/TestProfileRequirements.py b/tests/TestProfileRequirements.py index edeec909f2..f75ca9da8d 100644 --- a/tests/TestProfileRequirements.py +++ b/tests/TestProfileRequirements.py @@ -19,7 +19,7 @@ import pytest def test_ultimaker3extended_variants(um3_file, um3e_file): directory = os.path.join(os.path.dirname(__file__), "..", "resources", "variants") #TODO: Hardcoded path relative to this test file. um3 = configparser.ConfigParser() - um3.read_file(open(os.path.join(directory, um3_file))) + um3.read_file(open(os.path.join(directory, um3_file), encoding = "utf-8")) um3e = configparser.ConfigParser() - um3e.read_file(open(os.path.join(directory, um3e_file))) + um3e.read_file(open(os.path.join(directory, um3e_file), encoding = "utf-8")) assert um3["values"] == um3e["values"]