Skip to content

Commit c15bcb9

Browse files
committed
too much cleanup, revert part of it
1 parent 4642da5 commit c15bcb9

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

lib/stitches/cross_stitch.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ def cross_stitch(fill, shape, starting_point, ending_point):
4545

4646
crosses_lr = []
4747
crosses_rl = []
48+
vertical = []
4849
boxes = []
4950
scaled_boxes = []
5051
center_points = []
@@ -55,15 +56,15 @@ def cross_stitch(fill, shape, starting_point, ending_point):
5556
while x <= adapted_maxx:
5657
box = translate(square, x, y)
5758
if shape.contains(box):
58-
travel_edges, boxes, scaled_boxes, center_points, crosses_lr, crosses_rl, = add_cross(
59-
box, scaled_boxes, center_points, crosses_lr, crosses_rl, boxes, travel_edges
59+
travel_edges, boxes, scaled_boxes, center_points, crosses_lr, crosses_rl, vertical = add_cross(
60+
box, scaled_boxes, center_points, crosses_lr, crosses_rl, vertical, boxes, travel_edges
6061
)
6162
elif shape.intersects(box):
6263
intersection = box.intersection(shape)
6364
intersection_area = intersection.area
6465
if intersection_area / full_square_area * 100 > fill.cross_coverage:
65-
travel_edges, boxes, scaled_boxes, center_points, crosses_lr, crosses_rl, = add_cross(
66-
box, scaled_boxes, center_points, crosses_lr, crosses_rl, boxes, travel_edges
66+
travel_edges, boxes, scaled_boxes, center_points, crosses_lr, crosses_rl, vertical = add_cross(
67+
box, scaled_boxes, center_points, crosses_lr, crosses_rl, vertical, boxes, travel_edges
6768
)
6869
x += square_size
6970
y += square_size
@@ -74,6 +75,7 @@ def cross_stitch(fill, shape, starting_point, ending_point):
7475

7576
lr = ensure_multi_line_string(line_merge(MultiLineString(crosses_lr)))
7677
rl = ensure_multi_line_string(line_merge(MultiLineString(crosses_rl)))
78+
v = ensure_multi_line_string(line_merge(MultiLineString(vertical)))
7779

7880
clamp = False
7981
outline = unary_union(boxes)
@@ -147,12 +149,13 @@ def get_line_endpoints(multilinestring):
147149
return nodes
148150

149151

150-
def add_cross(box, scaled_boxes, center_points, crosses_lr, crosses_rl, boxes, travel_edges):
152+
def add_cross(box, scaled_boxes, center_points, crosses_lr, crosses_rl, vertical, boxes, travel_edges):
151153
minx, miny, maxx, maxy = box.bounds
152154
center = box.centroid
153155
center_points.append(center)
154156
crosses_lr.append(LineString([(minx, miny), (maxx, maxy)]))
155157
crosses_rl.append(LineString([(maxx, miny), (minx, maxy)]))
158+
vertical.append(LineString([(maxx, miny), (maxx, maxy)]))
156159

157160
travel_edges.append(LineString([(minx, miny), center]))
158161
travel_edges.append(LineString([(maxx, miny), center]))
@@ -167,7 +170,7 @@ def add_cross(box, scaled_boxes, center_points, crosses_lr, crosses_rl, boxes, t
167170
# scaling the outline allows us to connect otherwise unconnected boxes
168171
box = scale(box, xfact=1.000000000000001, yfact=1.000000000000001)
169172
scaled_boxes.append(box)
170-
return travel_edges, boxes, scaled_boxes, center_points, crosses_lr, crosses_rl
173+
return travel_edges, boxes, scaled_boxes, center_points, crosses_lr, crosses_rl, vertical
171174

172175

173176
def _lines_to_stitches(
@@ -193,6 +196,7 @@ def _lines_to_stitches(
193196
result = path_to_stitches(
194197
shape, path, travel_graph, fill_stitch_graph, stitch_length, center_points, clamp
195198
)
199+
# result = path_to_stitches(shape, path, travel_graph, fill_stitch_graph, 45, 3 / sqrt(2), 3, 3, 0.1, 4, False, True, False, False, False)
196200
result = collapse_travel_edges(result)
197201
result = _apply_bean_stitch_and_repeats(result, 1, bean_stitch_repeats)
198202
return result
@@ -238,6 +242,7 @@ def path_to_stitches(shape, path, travel_graph, fill_stitch_graph, stitch_length
238242
travel_graph.remove_edges_from(fill_stitch_graph[edge[0]][edge[1]]['segment'].get('underpath_edges', []))
239243
else:
240244
stitches.extend(travel(shape, travel_graph, edge, center_points, stitch_length, clamp))
245+
# stitches.extend(travel(shape, travel_graph, edge, 3, 0.1, False, True, center_points, clamp=True))
241246

242247
return stitches
243248

0 commit comments

Comments
 (0)