From 338d82fc19f32e5565a7af2905d6fc2858d67a25 Mon Sep 17 00:00:00 2001 From: ansate Date: Fri, 22 Jul 2011 21:55:29 +0000 Subject: [PATCH] bug fixes --- blockr.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/blockr.py b/blockr.py index 8250b69..fa13fc7 100644 --- a/blockr.py +++ b/blockr.py @@ -224,8 +224,8 @@ def score_block(polygon): #nbhds[place_id] = hole #changed = True continue - elif hole.intersects(polygons[place_id]['shape']): - polygons[place_id]['shape'] = polygons[place_id]['shape'].union(hole) + elif hole.intersects(polygons[place_id]): + polygons[place_id] = polygons[place_id].union(hole) changed = True if changed: break @@ -244,7 +244,11 @@ def score_block(polygon): if type(polygon) is Polygon: polygon = Polygon(polygon.exterior.coords) else: - polygon = MultiPolygon([Polygon(p.exterior.coords)for p in polygon.geoms]) + bits = [] + for p in polygon.geoms: + if type(p) is Polygon: + bits.append(Polygon(p.exterior.coords)) + polygon = MultiPolygon(bits) polygons[place_id] = polygon.buffer(0) print >>sys.stderr, "Writing output."