From 6539841f3eea971339c70ad0ccb297ecd574fd98 Mon Sep 17 00:00:00 2001 From: Erwan MATHIEU Date: Thu, 9 Nov 2023 14:23:46 +0100 Subject: [PATCH 1/8] Fix possibly wrong disallowed area display CURA-11293 --- cura/BuildVolume.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index 2bfa654d4f..feb8bdc5bf 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -489,20 +489,21 @@ class BuildVolume(SceneNode): if not self._disallowed_areas: return None + bounding_box = Polygon(numpy.array([[min_w, min_d], [min_w, max_d], [max_w, max_d], [max_w, min_d]], numpy.float32)) + mb = MeshBuilder() color = self._disallowed_area_color for polygon in self._disallowed_areas: - points = polygon.getPoints() - if len(points) == 0: + intersection = polygon.intersectionConvexHulls(bounding_box) + + points = intersection.getPoints()[::-1] + if len(points) < 3: continue - first = Vector(self._clamp(points[0][0], min_w, max_w), disallowed_area_height, - self._clamp(points[0][1], min_d, max_d)) - previous_point = Vector(self._clamp(points[0][0], min_w, max_w), disallowed_area_height, - self._clamp(points[0][1], min_d, max_d)) - for point in points: - new_point = Vector(self._clamp(point[0], min_w, max_w), disallowed_area_height, - self._clamp(point[1], min_d, max_d)) + first = Vector(points[0][0], disallowed_area_height, points[0][1]) + previous_point = Vector(points[1][0], disallowed_area_height, points[1][1]) + for point in points[2:]: + new_point = Vector(point[0], disallowed_area_height, point[1]) mb.addFace(first, previous_point, new_point, color=color) previous_point = new_point From b8e8f2ac0e6ed00306b0e5f5cc6678085022e890 Mon Sep 17 00:00:00 2001 From: Erwan MATHIEU Date: Thu, 9 Nov 2023 16:19:35 +0100 Subject: [PATCH 2/8] Code readability improvement CURA-11293 --- cura/BuildVolume.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index feb8bdc5bf..b52ba095fc 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -495,8 +495,7 @@ class BuildVolume(SceneNode): color = self._disallowed_area_color for polygon in self._disallowed_areas: intersection = polygon.intersectionConvexHulls(bounding_box) - - points = intersection.getPoints()[::-1] + points = numpy.fliplr(intersection.getPoints()) if len(points) < 3: continue From 4982680dfce39bb189c0a3a4b1c7bb41480123a0 Mon Sep 17 00:00:00 2001 From: Erwan MATHIEU Date: Thu, 9 Nov 2023 16:22:52 +0100 Subject: [PATCH 3/8] Use intersection instead of convex hull intersection CURA-11293 --- cura/BuildVolume.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index b52ba095fc..7b10ba3ffc 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -494,7 +494,7 @@ class BuildVolume(SceneNode): mb = MeshBuilder() color = self._disallowed_area_color for polygon in self._disallowed_areas: - intersection = polygon.intersectionConvexHulls(bounding_box) + intersection = polygon.intersection(bounding_box) points = numpy.fliplr(intersection.getPoints()) if len(points) < 3: continue From 2be72ca22b23a157a071323443e9e686adccc572 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Fri, 10 Nov 2023 18:00:00 +0100 Subject: [PATCH 4/8] Revert "Use intersection instead of convex hull intersection" This reverts commit 4982680dfce39bb189c0a3a4b1c7bb41480123a0. --- cura/BuildVolume.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index 7b10ba3ffc..b52ba095fc 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -494,7 +494,7 @@ class BuildVolume(SceneNode): mb = MeshBuilder() color = self._disallowed_area_color for polygon in self._disallowed_areas: - intersection = polygon.intersection(bounding_box) + intersection = polygon.intersectionConvexHulls(bounding_box) points = numpy.fliplr(intersection.getPoints()) if len(points) < 3: continue From c9730a2089aafd5a7381cdf0dad5a0dfa9fed3c7 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Fri, 10 Nov 2023 18:41:45 +0100 Subject: [PATCH 5/8] Revert "Revert "Increase print volume for method printers"" This reverts commit 70f77dde2924855e792de74b7e51a84ef94e68c7. # Conflicts: # resources/definitions/ultimaker_method_base.def.json # resources/definitions/ultimaker_methodx.def.json # resources/definitions/ultimaker_methodxl.def.json --- .../ultimaker_method_base.def.json | 3 - .../definitions/ultimaker_methodx.def.json | 96 ++++++++++++++++++- .../definitions/ultimaker_methodxl.def.json | 90 ++++++++++++++++- 3 files changed, 183 insertions(+), 6 deletions(-) diff --git a/resources/definitions/ultimaker_method_base.def.json b/resources/definitions/ultimaker_method_base.def.json index 017caa9204..9c8c336946 100644 --- a/resources/definitions/ultimaker_method_base.def.json +++ b/resources/definitions/ultimaker_method_base.def.json @@ -320,19 +320,16 @@ "layer_start_y": { "value": "sum(extruderValues('machine_extruder_start_pos_y')) / len(extruderValues('machine_extruder_start_pos_y'))" }, "machine_acceleration": { "default_value": 3000 }, "machine_center_is_zero": { "value": true }, - "machine_depth": { "default_value": 190 }, "machine_end_gcode": { "default_value": "" }, "machine_extruder_count": { "default_value": 2 }, "machine_gcode_flavor": { "default_value": "Griffin" }, "machine_heated_bed": { "default_value": false }, "machine_heated_build_volume": { "default_value": true }, - "machine_height": { "default_value": 196 }, "machine_min_cool_heat_time_window": { "value": 15 }, "machine_name": { "default_value": "UltiMaker Method" }, "machine_nozzle_cool_down_speed": { "value": 0.8 }, "machine_nozzle_heat_up_speed": { "value": 3.5 }, "machine_start_gcode": { "default_value": "" }, - "machine_width": { "default_value": 150 }, "material_bed_temperature": { "enabled": "machine_heated_bed" }, "material_bed_temperature_layer_0": { "enabled": "machine_heated_bed" }, "material_final_print_temperature": { "value": "material_print_temperature-10" }, diff --git a/resources/definitions/ultimaker_methodx.def.json b/resources/definitions/ultimaker_methodx.def.json index 8d8e4bd4bd..17466130fa 100644 --- a/resources/definitions/ultimaker_methodx.def.json +++ b/resources/definitions/ultimaker_methodx.def.json @@ -69,7 +69,7 @@ "platform_offset": [ 0, 0, - 0 + 16 ], "platform_texture": "MakerbotMethod.png", "preferred_material": "ultimaker_absr_175", @@ -83,6 +83,100 @@ }, "overrides": { + "machine_depth": { + "default_value": 236.48 + }, + "machine_disallowed_areas": { + "default_value": [ + [ + [ + -141.65, + -118.11 + ], + [ + 141.65, + -118.11 + ], + [ + 141.65, + -95 + ], + [ + -141.65, + -95 + ] + ], + [ + [ + -141.65, + 118.37 + ], + [ + 141.65, + 118.37 + ], + [ + 141.65, + 95 + ], + [ + -141.65, + 95 + ] + ], + [ + [ + -141.65, + -118.11 + ], + [ + -75, + -118.11 + ], + [ + -75, + 118.37 + ], + [ + -141.65, + 118.37 + ] + ], + [ + [ + 75, + -118.11 + ], + [ + 141.65, + -118.11 + ], + [ + 141.65, + 118.37 + ], + [ + 75, + 118.37 + ] + ] + ] + }, + "machine_height": { + "default_value": 196 + }, + "machine_name": { + "default_value": "Makerbot Method X" + }, + "machine_width": { + "default_value": 283.3 + }, + "prime_tower_position_x": { + "value": "(150 / 2 + resolveOrValue('prime_tower_size') / 2) if resolveOrValue('machine_shape') == 'elliptic' else (150 - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_x'))), 1)) - (150 / 2 if resolveOrValue('machine_center_is_zero') else 0)" + }, + "prime_tower_position_y": { + "value": "190 - prime_tower_size - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_y'))), 1) - (190 / 2 if resolveOrValue('machine_center_is_zero') else 0)" + }, "machine_name": { "default_value": "UltiMaker Method X" } } } \ No newline at end of file diff --git a/resources/definitions/ultimaker_methodxl.def.json b/resources/definitions/ultimaker_methodxl.def.json index 837432f029..c7f13f7071 100644 --- a/resources/definitions/ultimaker_methodxl.def.json +++ b/resources/definitions/ultimaker_methodxl.def.json @@ -32,12 +32,98 @@ }, "overrides": { - "machine_depth": { "default_value": 305 }, + "machine_depth": { + "default_value": 320 + }, + "machine_disallowed_areas": { + "default_value": [ + [ + [ + -204, + -160 + ], + [ + 204, + -160 + ], + [ + 204, + -152.5 + ], + [ + -204, + -152.5 + ] + ], + [ + [ + -204, + 160 + ], + [ + 204, + 160 + ], + [ + 204, + 152.5 + ], + [ + -204, + 152.5 + ] + ], + [ + [ + -205, + -160 + ], + [ + -152.5, + -160 + ], + [ + -152.5, + 160 + ], + [ + -205, + 160 + ] + ], + [ + [ + 152.5, + -160 + ], + [ + 205, + -160 + ], + [ + 205, + 160 + ], + [ + 152.5, + 160 + ] + ] + ] + }, "machine_heated_bed": { "default_value": true }, "machine_height": { "default_value": 317 }, "machine_name": { "default_value": "UltiMaker Method XL" }, - "machine_width": { "default_value": 305 }, + "machine_width": { + "default_value": 410 + }, "material_shrinkage_percentage_z": { "resolve": "sum(extruderValues(\"material_shrinkage_percentage_z\")) / len(extruderValues(\"material_shrinkage_percentage_z\"))" }, + "prime_tower_position_x": { + "value": "(305 - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_x'))), 1)) - (305 / 2)" + }, + "prime_tower_position_y": { + "value": "305 - prime_tower_size - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_y'))), 1) - (305 / 2)" + }, "speed_travel": { "value": 500 } } } \ No newline at end of file From 2569c4c3d1a337c4ecfad35ec287750316d0d012 Mon Sep 17 00:00:00 2001 From: "c.lamboo" Date: Fri, 10 Nov 2023 18:42:10 +0100 Subject: [PATCH 6/8] Use flip up/down to reverse list CURA-11293 --- cura/BuildVolume.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index b52ba095fc..e501b33896 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -495,7 +495,7 @@ class BuildVolume(SceneNode): color = self._disallowed_area_color for polygon in self._disallowed_areas: intersection = polygon.intersectionConvexHulls(bounding_box) - points = numpy.fliplr(intersection.getPoints()) + points = numpy.flipud(intersection.getPoints()) if len(points) < 3: continue From 0196334c812e7f7735494360ea2e446363ca453c Mon Sep 17 00:00:00 2001 From: casperlamboo Date: Fri, 10 Nov 2023 17:43:23 +0000 Subject: [PATCH 7/8] Applied printer-linter format --- .../definitions/ultimaker_methodx.def.json | 130 +++++------------- .../definitions/ultimaker_methodxl.def.json | 99 +++---------- 2 files changed, 57 insertions(+), 172 deletions(-) diff --git a/resources/definitions/ultimaker_methodx.def.json b/resources/definitions/ultimaker_methodx.def.json index 17466130fa..0bdc8cdb9c 100644 --- a/resources/definitions/ultimaker_methodx.def.json +++ b/resources/definitions/ultimaker_methodx.def.json @@ -69,7 +69,7 @@ "platform_offset": [ 0, 0, - 16 + 16 ], "platform_texture": "MakerbotMethod.png", "preferred_material": "ultimaker_absr_175", @@ -83,100 +83,40 @@ }, "overrides": { - "machine_depth": { - "default_value": 236.48 - }, - "machine_disallowed_areas": { - "default_value": [ - [ - [ - -141.65, - -118.11 - ], - [ - 141.65, - -118.11 - ], - [ - 141.65, - -95 - ], - [ - -141.65, - -95 + "machine_depth": { "default_value": 236.48 }, + "machine_disallowed_areas": + { + "default_value": [ + [ + [-141.65, -118.11], + [141.65, -118.11], + [141.65, -95], + [-141.65, -95] + ], + [ + [-141.65, 118.37], + [141.65, 118.37], + [141.65, 95], + [-141.65, 95] + ], + [ + [-141.65, -118.11], + [-75, -118.11], + [-75, 118.37], + [-141.65, 118.37] + ], + [ + [75, -118.11], + [141.65, -118.11], + [141.65, 118.37], + [75, 118.37] + ] ] - ], - [ - [ - -141.65, - 118.37 - ], - [ - 141.65, - 118.37 - ], - [ - 141.65, - 95 - ], - [ - -141.65, - 95 - ] - ], - [ - [ - -141.65, - -118.11 - ], - [ - -75, - -118.11 - ], - [ - -75, - 118.37 - ], - [ - -141.65, - 118.37 - ] - ], - [ - [ - 75, - -118.11 - ], - [ - 141.65, - -118.11 - ], - [ - 141.65, - 118.37 - ], - [ - 75, - 118.37 - ] - ] - ] - }, - "machine_height": { - "default_value": 196 - }, - "machine_name": { - "default_value": "Makerbot Method X" - }, - "machine_width": { - "default_value": 283.3 - }, - "prime_tower_position_x": { - "value": "(150 / 2 + resolveOrValue('prime_tower_size') / 2) if resolveOrValue('machine_shape') == 'elliptic' else (150 - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_x'))), 1)) - (150 / 2 if resolveOrValue('machine_center_is_zero') else 0)" - }, - "prime_tower_position_y": { - "value": "190 - prime_tower_size - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_y'))), 1) - (190 / 2 if resolveOrValue('machine_center_is_zero') else 0)" - }, - "machine_name": { "default_value": "UltiMaker Method X" } + }, + "machine_height": { "default_value": 196 }, + "machine_name": { "default_value": "UltiMaker Method X" }, + "machine_width": { "default_value": 283.3 }, + "prime_tower_position_x": { "value": "(150 / 2 + resolveOrValue('prime_tower_size') / 2) if resolveOrValue('machine_shape') == 'elliptic' else (150 - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_x'))), 1)) - (150 / 2 if resolveOrValue('machine_center_is_zero') else 0)" }, + "prime_tower_position_y": { "value": "190 - prime_tower_size - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_y'))), 1) - (190 / 2 if resolveOrValue('machine_center_is_zero') else 0)" } } } \ No newline at end of file diff --git a/resources/definitions/ultimaker_methodxl.def.json b/resources/definitions/ultimaker_methodxl.def.json index c7f13f7071..c03eae2ae3 100644 --- a/resources/definitions/ultimaker_methodxl.def.json +++ b/resources/definitions/ultimaker_methodxl.def.json @@ -32,98 +32,43 @@ }, "overrides": { - "machine_depth": { - "default_value": 320 - }, - "machine_disallowed_areas": { + "machine_depth": { "default_value": 320 }, + "machine_disallowed_areas": + { "default_value": [ [ - [ - -204, - -160 - ], - [ - 204, - -160 - ], - [ - 204, - -152.5 - ], - [ - -204, - -152.5 - ] + [-204, -160], + [204, -160], + [204, -152.5], + [-204, -152.5] ], [ - [ - -204, - 160 - ], - [ - 204, - 160 - ], - [ - 204, - 152.5 - ], - [ - -204, - 152.5 - ] + [-204, 160], + [204, 160], + [204, 152.5], + [-204, 152.5] ], [ - [ - -205, - -160 - ], - [ - -152.5, - -160 - ], - [ - -152.5, - 160 - ], - [ - -205, - 160 - ] + [-205, -160], + [-152.5, -160], + [-152.5, 160], + [-205, 160] ], [ - [ - 152.5, - -160 - ], - [ - 205, - -160 - ], - [ - 205, - 160 - ], - [ - 152.5, - 160 - ] + [152.5, -160], + [205, -160], + [205, 160], + [152.5, 160] ] ] }, "machine_heated_bed": { "default_value": true }, "machine_height": { "default_value": 317 }, "machine_name": { "default_value": "UltiMaker Method XL" }, - "machine_width": { - "default_value": 410 - }, + "machine_width": { "default_value": 410 }, "material_shrinkage_percentage_z": { "resolve": "sum(extruderValues(\"material_shrinkage_percentage_z\")) / len(extruderValues(\"material_shrinkage_percentage_z\"))" }, - "prime_tower_position_x": { - "value": "(305 - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_x'))), 1)) - (305 / 2)" - }, - "prime_tower_position_y": { - "value": "305 - prime_tower_size - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_y'))), 1) - (305 / 2)" - }, + "prime_tower_position_x": { "value": "(305 - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_x'))), 1)) - (305 / 2)" }, + "prime_tower_position_y": { "value": "305 - prime_tower_size - (resolveOrValue('prime_tower_base_size') if (resolveOrValue('adhesion_type') == 'raft' or resolveOrValue('prime_tower_brim_enable')) else 0) - max(max(extruderValues('travel_avoid_distance')) + max(extruderValues('support_offset')) + (extruderValue(skirt_brim_extruder_nr, 'skirt_brim_line_width') * extruderValue(skirt_brim_extruder_nr, 'skirt_line_count') * extruderValue(skirt_brim_extruder_nr, 'initial_layer_line_width_factor') / 100 + extruderValue(skirt_brim_extruder_nr, 'skirt_gap') if resolveOrValue('adhesion_type') == 'skirt' else 0) + (resolveOrValue('draft_shield_dist') if resolveOrValue('draft_shield_enabled') else 0), max(map(abs, extruderValues('machine_nozzle_offset_y'))), 1) - (305 / 2)" }, "speed_travel": { "value": 500 } } } \ No newline at end of file From ecbf89df1cf270083b2e4a35aa5b5d5b08d7bdce Mon Sep 17 00:00:00 2001 From: Casper Lamboo Date: Fri, 10 Nov 2023 14:29:16 +0100 Subject: [PATCH 8/8] Add `enable_i18n` install option to packaging This should fix translations --- .github/workflows/conan-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conan-package.yml b/.github/workflows/conan-package.yml index 34652de39b..4b5c0f914a 100644 --- a/.github/workflows/conan-package.yml +++ b/.github/workflows/conan-package.yml @@ -119,7 +119,7 @@ jobs: conan config install https://github.com/Ultimaker/conan-config.git -a "-b runner/${{ runner.os }}/${{ runner.arch }}" - name: Create the Packages - run: conan create . ${{ needs.conan-recipe-version.outputs.recipe_id_full }} --build=missing --update -o ${{ needs.conan-recipe-version.outputs.project_name }}:devtools=True -c tools.build:skip_test=True + run: conan create . ${{ needs.conan-recipe-version.outputs.recipe_id_full }} --build=missing --update -o ${{ needs.conan-recipe-version.outputs.project_name }}:devtools=True -o ${{ needs.conan-recipe-version.outputs.project_name }}:enable_i18n=True -c tools.build:skip_test=True - name: Create the latest alias if: always()