diff --git a/node-graph/nodes/path-bool/src/lib.rs b/node-graph/nodes/path-bool/src/lib.rs index dadad9b8..da94d9f6 100644 --- a/node-graph/nodes/path-bool/src/lib.rs +++ b/node-graph/nodes/path-bool/src/lib.rs @@ -152,8 +152,10 @@ fn boolean_operation_on_vector_table(vector: &Table, boolean_operation: }; let contours = top.contours(|winding| winding.is_inside(boolean_operation)); + // 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). + // TODO: Report this upstream to Linesweeper and remove this `.reverse()` workaround once fixed. for subpath in from_bez_paths(contours.contours().map(|c| &c.path)) { - row.element_mut().append_subpath(subpath, false); + row.element_mut().append_subpath(subpath.reverse(), false); } table.push(row);