From 655897fef19705a88fc7c98628c5f6d87b314ef5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Sun, 4 Dec 2016 17:55:55 +0100 Subject: [PATCH] rendermap: improve intermediate shadows --- src/c3nav/mapdata/models/level.py | 6 +++++- src/c3nav/mapdata/render/renderer.py | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/c3nav/mapdata/models/level.py b/src/c3nav/mapdata/models/level.py index 4224ce8d..41a307c9 100644 --- a/src/c3nav/mapdata/models/level.py +++ b/src/c3nav/mapdata/models/level.py @@ -171,4 +171,8 @@ class LevelGeometries(): return self.get_levelconnectors() def intermediate_shadows(self, to_level=None): - return self.buildings.difference(self.get_levelconnectors(to_level)) + shadows = self.buildings.buffer(0.3, join_style=JOIN_STYLE.mitre) + shadows = shadows.difference(self.get_levelconnectors(to_level).buffer(0.5, join_style=JOIN_STYLE.mitre)) + if to_level is not None: + shadows = shadows.intersection(to_level.geometries.accessible) + return shadows diff --git a/src/c3nav/mapdata/render/renderer.py b/src/c3nav/mapdata/render/renderer.py index dec3ff15..ca29a6e6 100644 --- a/src/c3nav/mapdata/render/renderer.py +++ b/src/c3nav/mapdata/render/renderer.py @@ -194,8 +194,8 @@ class LevelRenderer(): contents = self.add_svg_content(svg) for level in higher: contents.append(self.polygon_svg(level.geometries.intermediate_shadows(to_level=self.level), - stroke_color='#9E9E9E', - stroke_width=0.1)) + fill_color='#000000', + fill_opacity=0.05)) for level in higher: self.add_svg_image(svg, 'file://'+get_render_path('level-%s.base.png' % level.name))