mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-25 07:33:57 -06:00
Interpret prime tower areas per extruder
The function gives results per extruder now, so we should interpret that instead of crashing. Contributes to issue CURA-2625.
This commit is contained in:
parent
a8d36c9116
commit
edcf7320f0
1 changed files with 11 additions and 10 deletions
|
@ -420,17 +420,18 @@ class BuildVolume(SceneNode):
|
||||||
# Add prime tower location as disallowed area.
|
# Add prime tower location as disallowed area.
|
||||||
prime_tower_collision = False
|
prime_tower_collision = False
|
||||||
prime_tower_areas = self._computeDisallowedAreasPrinted(used_extruders)
|
prime_tower_areas = self._computeDisallowedAreasPrinted(used_extruders)
|
||||||
for prime_tower_area in prime_tower_areas:
|
for extruder_id in prime_tower_areas:
|
||||||
for area in result_areas:
|
for prime_tower_area in prime_tower_areas[extruder_id]:
|
||||||
if prime_tower_area.intersectsPolygon(area) is not None:
|
for area in result_areas[extruder_id]:
|
||||||
prime_tower_collision = True
|
if prime_tower_area.intersectsPolygon(area) is not None:
|
||||||
|
prime_tower_collision = True
|
||||||
|
break
|
||||||
|
if prime_tower_collision: #Already found a collision.
|
||||||
break
|
break
|
||||||
if prime_tower_collision: #Already found a collision.
|
if not prime_tower_collision:
|
||||||
break
|
result_areas[extruder_id].extend(prime_tower_areas)
|
||||||
if not prime_tower_collision:
|
else:
|
||||||
result_areas.extend(prime_tower_areas)
|
self._error_areas.extend(prime_tower_areas)
|
||||||
else:
|
|
||||||
self._error_areas.extend(prime_tower_areas)
|
|
||||||
|
|
||||||
self._has_errors = len(self._error_areas) > 0
|
self._has_errors = len(self._error_areas) > 0
|
||||||
self._disallowed_areas = result_areas
|
self._disallowed_areas = result_areas
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue