From 11b202b01393aeb01519f9dfc876527789406a71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Thu, 16 Nov 2017 14:17:54 +0100 Subject: [PATCH] obstacles can not be on holes --- src/c3nav/mapdata/render/data.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/c3nav/mapdata/render/data.py b/src/c3nav/mapdata/render/data.py index d14982fe..4b39478b 100644 --- a/src/c3nav/mapdata/render/data.py +++ b/src/c3nav/mapdata/render/data.py @@ -466,10 +466,14 @@ class LevelGeometries: colors.setdefault(area.get_color(), {}).setdefault(access_restriction, []).append(area.geometry) for obstacle in space.obstacles.all(): - obstacles.setdefault(int(obstacle.height*1000), []).append(obstacle.geometry) + obstacles.setdefault(int(obstacle.height*1000), []).append( + obstacle.geometry.intersection(space.walkable_geom) + ) for lineobstacle in space.lineobstacles.all(): - obstacles.setdefault(int(lineobstacle.height*1000), []).append(lineobstacle.buffered_geometry) + obstacles.setdefault(int(lineobstacle.height*1000), []).append( + lineobstacle.buffered_geometry.intersection(space.walkable_geom) + ) heightareas.setdefault(int((space.height or level.default_height)*1000), []).append(space.geometry) colors.pop(None, None)