diff options
author | Jaime van Kessel <nallath@gmail.com> | 2020-10-20 14:41:35 +0300 |
---|---|---|
committer | Jaime van Kessel <nallath@gmail.com> | 2020-10-20 14:41:35 +0300 |
commit | e13ffb597df760977b686174cda3fd6edf09bbde (patch) | |
tree | 7cb9f4432ef12e598d8e6ddd02d72b13572d7a22 /cura | |
parent | 0f86481ac2864b98e09de110c9bf9f1927cbdc21 (diff) |
Increase resolution of prime tower shadow and use doulbe brim size
It needs to use the double brim size, as it needs to ensure that
it has enough room for it's own brim and any object brim.
The resolution of the circle is increased so that the shadow matches
more with what is actually being printed
CURA-7643
Diffstat (limited to 'cura')
-rwxr-xr-x | cura/BuildVolume.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index ad1baf928e..7c843fcdea 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -791,7 +791,9 @@ class BuildVolume(SceneNode): break if self._global_container_stack.getProperty("prime_tower_brim_enable", "value") and self._global_container_stack.getProperty("adhesion_type", "value") != "raft": brim_size = self._calculateBedAdhesionSize(used_extruders, "brim") - prime_tower_areas[extruder_id][area_index] = prime_tower_area.getMinkowskiHull(Polygon.approximatedCircle(brim_size)) + # Use 2x the brim size, since we need 1x brim size distance due to the object brim and another + # times the brim due to the brim of the prime tower + prime_tower_areas[extruder_id][area_index] = prime_tower_area.getMinkowskiHull(Polygon.approximatedCircle(2 * brim_size, num_segments = 24)) if not prime_tower_collision: result_areas[extruder_id].extend(prime_tower_areas[extruder_id]) result_areas_no_brim[extruder_id].extend(prime_tower_areas[extruder_id]) @@ -843,7 +845,7 @@ class BuildVolume(SceneNode): prime_tower_y += brim_size radius = prime_tower_size / 2 - prime_tower_area = Polygon.approximatedCircle(radius) + prime_tower_area = Polygon.approximatedCircle(radius, num_segments = 24) prime_tower_area = prime_tower_area.translate(prime_tower_x - radius, prime_tower_y - radius) prime_tower_area = prime_tower_area.getMinkowskiHull(Polygon.approximatedCircle(0)) |