Skip to content

Commit cfb8c8b

Browse files
committed
Fix 'Boolean Operation' node outputs having the reversed winding direction
1 parent 42f4c13 commit cfb8c8b

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

  • node-graph/nodes/path-bool/src

node-graph/nodes/path-bool/src/lib.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,8 +152,10 @@ fn boolean_operation_on_vector_table(vector: &Table<Vector>, boolean_operation:
152152
};
153153
let contours = top.contours(|winding| winding.is_inside(boolean_operation));
154154

155+
// TODO: Linesweeper emits contours in the opposite winding direction from the rest of Kurbo's and Graphite's vector graphics system (clockwise in screen coordinates).
156+
// TODO: Report this upstream to Linesweeper and remove this `.reverse()` workaround once fixed.
155157
for subpath in from_bez_paths(contours.contours().map(|c| &c.path)) {
156-
row.element_mut().append_subpath(subpath, false);
158+
row.element_mut().append_subpath(subpath.reverse(), false);
157159
}
158160

159161
table.push(row);

0 commit comments

Comments
 (0)