From c93dc21127b07300b1e660c7b2782e542aefdcbc Mon Sep 17 00:00:00 2001 From: Diederik van Lierop Date: Wed, 21 Nov 2007 19:23:55 +0000 Subject: Also consider path nodes for snapping (bzr r4122) --- src/seltrans.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src/seltrans.cpp') diff --git a/src/seltrans.cpp b/src/seltrans.cpp index 512d2c0ca..785cf7d60 100644 --- a/src/seltrans.cpp +++ b/src/seltrans.cpp @@ -259,18 +259,17 @@ void Inkscape::SelTrans::grab(NR::Point const &p, gdouble x, gdouble y, bool sho _point = p; - // The selector tool should snap the bbox and the special snappoints, but not path nodes + // The selector tool should snap the bbox, special snappoints, and path nodes // (The special points are the handles, center, rotation axis, font baseline, ends of spiral, etc.) // First, determine the bounding box for snapping ... _bbox = selection->bounds(_snap_bbox_type); _approximate_bbox = selection->bounds(SPItem::APPROXIMATE_BBOX); // Used for correctly scaling the strokewidth - - // Next, get all special points for snapping + // Next, get all points to consider for snapping SnapManager const &m = _desktop->namedview->snap_manager; - _snap_points = selection->getSnapPoints(m.getIncludeItemCenter()); // Excludes path nodes - std::vector snap_points_hull = selection->getSnapPointsConvexHull(); // Includes path nodes + _snap_points = selection->getSnapPoints(m.getIncludeItemCenter()); + std::vector snap_points_hull = selection->getSnapPointsConvexHull(); if (_snap_points.size() > 100) { /* Snapping a huge number of nodes will take way too long, so limit the number of snappable nodes An average user would rarely ever try to snap such a large number of nodes anyway, because -- cgit v1.2.3