From 6956333f8a04514755512d45d1bbf4ce13337f19 Mon Sep 17 00:00:00 2001 From: John Bintz Date: Sun, 30 Jul 2006 00:14:42 +0000 Subject: Fix bug where deleting a node broke the symmetry of neighboring smooth nodes and failed to convert those nodes to cusp nodes (bzr r1513) --- src/nodepath.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/nodepath.cpp b/src/nodepath.cpp index 3019b492e..84c990bff 100644 --- a/src/nodepath.cpp +++ b/src/nodepath.cpp @@ -1975,6 +1975,12 @@ void sp_node_delete_preserve(GList *nodes_to_delete) gint ret; ret = sp_bezier_fit_cubic (bez, adata, data.size(), error); + //if these nodes are smooth or symmetrical, the endpoints will be thrown out of sync. + //make sure these nodes are changed to cusp nodes so that, once the endpoints are moved, + //the resulting nodes behave as expected. + sp_nodepath_convert_node_type(sample_cursor, Inkscape::NodePath::NODE_CUSP); + sp_nodepath_convert_node_type(sample_end, Inkscape::NodePath::NODE_CUSP); + //adjust endpoints sample_cursor->n.pos = bez[1]; sample_end->p.pos = bez[2]; -- cgit v1.2.3