From dda804ce69be0b67e7962a7eb39e6bfdc5155a7b Mon Sep 17 00:00:00 2001 From: Florian Festi Date: Wed, 27 Mar 2024 16:22:17 +0100 Subject: [PATCH] CanStorage: Make sure the cans can get out Limit the barrier height for very flat chute angles. Thanks to Sniplow for pointing this out. Resolves: #650 --- boxes/generators/can_storage.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/boxes/generators/can_storage.py b/boxes/generators/can_storage.py index 1c32e1717..1c19aa1ac 100644 --- a/boxes/generators/can_storage.py +++ b/boxes/generators/can_storage.py @@ -315,7 +315,9 @@ def render(self): self.top_chute_depth = (self.depth - 1.1 * self.canDiameter) / math.cos(math.radians(self.chuteAngle)) self.bottom_chute_height = max((self.depth - 1.1 * self.canDiameter) * math.sin(math.radians(self.chuteAngle)), 0.1 * self.canDiameter) self.bottom_chute_depth = self.depth / math.cos(math.radians(self.chuteAngle)) - self.barrier_height = 0.25 * self.canDiameter + self.barrier_height = min( + 0.25 * self.canDiameter, + self.bottom_chute_height + self.top_chute_height - self.thickness) if (self.top_chute_depth + self.bottom_chute_height - self.thickness) < (self.barrier_height + self.canDiameter * 0.1): self.bottom_chute_height = self.barrier_height + self.canDiameter * 0.1 + self.thickness - self.top_chute_depth