summaryrefslogtreecommitdiffstats
path: root/src/display
diff options
context:
space:
mode:
authorDiederik van Lierop <mail@diedenrezi.nl>2007-11-03 14:48:50 +0000
committerdvlierop2 <dvlierop2@users.sourceforge.net>2007-11-03 14:48:50 +0000
commit84504bd815a6ef3c5b7b5958ce46429cbab56a66 (patch)
treed74ae924d96f98b07658dcb67d46b64c486d1beb /src/display
parentAdded an icons file with a cleaned up current icon set (prefix "ink_" in thei... (diff)
downloadinkscape-84504bd815a6ef3c5b7b5958ce46429cbab56a66.tar.gz
inkscape-84504bd815a6ef3c5b7b5958ce46429cbab56a66.zip
Groundwork to snap to intersections, e.g. intersections of gridlines with guidelines, and of objects with other objects. The snappers used to return only SnappedPoints, but now also SnappedLines and SnappedInfiniteLines can be returned. SnappedPaths will be implemented later.
(bzr r4016)
Diffstat (limited to 'src/display')
-rw-r--r--src/display/canvas-axonomgrid.cpp7
-rw-r--r--src/display/canvas-axonomgrid.h3
-rw-r--r--src/display/canvas-grid.cpp5
-rw-r--r--src/display/canvas-grid.h2
4 files changed, 15 insertions, 2 deletions
diff --git a/src/display/canvas-axonomgrid.cpp b/src/display/canvas-axonomgrid.cpp
index c00e2ea8f..66c9cc1fa 100644
--- a/src/display/canvas-axonomgrid.cpp
+++ b/src/display/canvas-axonomgrid.cpp
@@ -650,6 +650,13 @@ CanvasAxonomGridSnapper::_getSnapLines(NR::Point const &p) const
return s;
}
+void CanvasAxonomGridSnapper::_addSnappedLine(SnappedConstraints &sc, NR::Point const snapped_point, NR::Coord const snapped_distance, NR::Point const normal_to_line, NR::Point const point_on_line) const
+{
+ SnappedInfiniteLine dummy = SnappedInfiniteLine(snapped_point, snapped_distance, normal_to_line, point_on_line);
+ sc.grid_lines.push_back(dummy);
+}
+
+
}; // namespace Inkscape
diff --git a/src/display/canvas-axonomgrid.h b/src/display/canvas-axonomgrid.h
index 157982416..68c011d30 100644
--- a/src/display/canvas-axonomgrid.h
+++ b/src/display/canvas-axonomgrid.h
@@ -92,7 +92,8 @@ public:
private:
LineList _getSnapLines(NR::Point const &p) const;
-
+ void _addSnappedLine(SnappedConstraints &sc, NR::Point const snapped_point, NR::Coord const snapped_distance, NR::Point const normal_to_line, const NR::Point point_on_line) const;
+
CanvasAxonomGrid *grid;
};
diff --git a/src/display/canvas-grid.cpp b/src/display/canvas-grid.cpp
index e9eabad10..d3cbf9153 100644
--- a/src/display/canvas-grid.cpp
+++ b/src/display/canvas-grid.cpp
@@ -850,6 +850,11 @@ CanvasXYGridSnapper::_getSnapLines(NR::Point const &p) const
return s;
}
+void CanvasXYGridSnapper::_addSnappedLine(SnappedConstraints &sc, NR::Point const snapped_point, NR::Coord const snapped_distance, NR::Point const normal_to_line, NR::Point const point_on_line) const
+{
+ SnappedInfiniteLine dummy = SnappedInfiniteLine(snapped_point, snapped_distance, normal_to_line, point_on_line);
+ sc.grid_lines.push_back(dummy);
+}
diff --git a/src/display/canvas-grid.h b/src/display/canvas-grid.h
index 40e37c44f..ec5e52c90 100644
--- a/src/display/canvas-grid.h
+++ b/src/display/canvas-grid.h
@@ -162,7 +162,7 @@ public:
private:
LineList _getSnapLines(NR::Point const &p) const;
-
+ void _addSnappedLine(SnappedConstraints &sc, NR::Point const snapped_point, NR::Coord const snapped_distance, NR::Point const normal_to_line, const NR::Point point_on_line) const;
CanvasXYGrid *grid;
};