- corners = map(lambda l:linef.line_from_angl_dist(l, size), l1s)
- middle = ((0, 195),(520, 195))
- # TODO! can I assume anything to be perspectively disorted square?
- # TODO! take lower and middle and construct top
- lh = (gm.intersection(corners[0], middle), gm.intersection(corners[1], middle))
- grid = gm.fill(corners[0], corners[1], lh , 3)
- grid = [corners[0]] + grid + [corners[1]]
- grid.append(gm.expand(grid[-2], grid[-1], ((gm.intersection(middle, grid[-2]),
- (gm.intersection(middle, grid[-1]))))))
- grid.append(gm.expand(grid[-2], grid[-1], ((gm.intersection(middle, grid[-2]),
- (gm.intersection(middle, grid[-1]))))))
+ sgrid = map(lambda l:linef.line_from_angl_dist(l, size), l1s)
+ middle = lambda m: ((m, 0),(m, 390))
+ middle = middle(gm.intersection((sgrid[0][0], sgrid[1][1]),
+ (sgrid[0][1], sgrid[1][0]))[0])
+ lh = (gm.intersection(sgrid[0], middle), gm.intersection(sgrid[1], middle))
+ sc, grid = max(map(lambda g: (score(g, points, 400), g), generate_models(sgrid, lh)))