draw correct altitude-based shadows

This commit is contained in:
Laura Klünder 2017-10-19 11:36:53 +02:00
parent 5948c09f92
commit 0e10eeabb8

View file

@ -206,10 +206,17 @@ class SVGImage:
return
if altitude is not None or elevation is not None:
elevation = float(1 if elevation is None else elevation)
if elevation:
shadow = self.get_shadow(geometry, elevation)
self.g.append(shadow)
if elevation is not None:
elevation = float(1 if elevation is None else elevation)
if elevation:
shadow = self.get_shadow(geometry, elevation)
self.g.append(shadow)
else:
for other_altitude, other_geom in self.altitudes.items():
shadow_clip = self.register_geometry(other_geom, as_clip_path=True)
shadow = self.get_shadow(geometry, altitude-other_altitude)
shadow.set('clip-path', 'url(#'+shadow_clip+')')
self.g.append(shadow)
self.clip_altitudes(geometry, altitude)