break elif (side.p2.x == cutpt[0].x): if (side.p1.y > side.p2.y): leftside = Segment(side.p1, side.p2) else: leftside = Segment(side.p2, side.p1) for side in cells[c + j].sides: if (side.p2.x == cutpt[1].x and side.p1.x == cutpt[1].x): rightside = Segment(side.p2, side.p1) break elif (side.p2.x == cutpt[1].x): if (side.p1.y > side.p2.y): rightside = Segment(side.p1, side.p2) else: rightside = Segment(side.p2, side.p1) if (leftside.is_parallel(xaxis)): leftpartion = 1 else: leftpartion = (leftside.p1.y - cutpt[0].y) / (leftside.p1.y - leftside.p2.y) if (rightside.is_parallel(xaxis)): rightpartion = 0 else: rightpartion = (rightside.p1.y - cutpt[1].y) / (rightside.p1.y - rightside.p2.y) if ((leftpartion == 0 and rightpartion == 0) or (leftpartion == 1 and rightpartion == 1)): leftpartion = 0.5 rightpartion = 0.5 cutline.append(leftside.midpoint) cutline.append(rightside.midpoint)