summaryrefslogtreecommitdiffstats
path: root/src/selection-chemistry.cpp
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2010-04-03 17:07:50 +0000
committerKrzysztof KosiƄski <tweenk.pl@gmail.com>2010-04-03 17:07:50 +0000
commit02da648c4667a300a9727ee44c11a4349bb2bb98 (patch)
tree16ef336cc6e8a15cf645f77d7c441a045e63671b /src/selection-chemistry.cpp
parentA few small fixes/clarifications for Gaussian blur. (diff)
parentFix grid extension (diff)
downloadinkscape-02da648c4667a300a9727ee44c11a4349bb2bb98.tar.gz
inkscape-02da648c4667a300a9727ee44c11a4349bb2bb98.zip
Change desktop coordinate system to match SVG (LP #170049)
Fixed bugs: - https://launchpad.net/bugs/170049 (bzr r9288)
Diffstat (limited to 'src/selection-chemistry.cpp')
-rw-r--r--src/selection-chemistry.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp
index 730467ee5..452a4ff9d 100644
--- a/src/selection-chemistry.cpp
+++ b/src/selection-chemistry.cpp
@@ -2273,9 +2273,8 @@ void sp_selection_to_marker(SPDesktop *desktop, bool apply)
}
// calculate the transform to be applied to objects to move them to 0,0
- Geom::Point move_p = Geom::Point(0, sp_document_height(doc)) - *c;
- move_p[Geom::Y] = -move_p[Geom::Y];
- Geom::Matrix move = Geom::Matrix(Geom::Translate(move_p));
+ Geom::Point move_p = -*c;
+ Geom::Matrix move = Geom::Translate(move_p);
GSList *items = g_slist_copy((GSList *) selection->itemList());
@@ -2396,8 +2395,7 @@ sp_selection_tile(SPDesktop *desktop, bool apply)
}
// calculate the transform to be applied to objects to move them to 0,0
- Geom::Point move_p = Geom::Point(0, sp_document_height(doc)) - (r->min() + Geom::Point(0, r->dimensions()[Geom::Y]));
- move_p[Geom::Y] = -move_p[Geom::Y];
+ Geom::Point move_p = -(r->min() + Geom::Point(0, r->dimensions()[Geom::Y]));
Geom::Matrix move = Geom::Matrix(Geom::Translate(move_p));
GSList *items = g_slist_copy((GSList *) selection->itemList());
@@ -2748,12 +2746,12 @@ sp_selection_create_bitmap_copy(SPDesktop *desktop)
Geom::Matrix t;
double shift_x = bbox.x0;
- double shift_y = bbox.y1;
+ double shift_y = bbox.y0;
if (res == PX_PER_IN) { // for default 90 dpi, snap it to pixel grid
shift_x = round(shift_x);
- shift_y = -round(-shift_y); // this gets correct rounding despite coordinate inversion, remove the negations when the inversion is gone
+ shift_y = round(shift_y);
}
- t = Geom::Scale(1, -1) * Geom::Translate(shift_x, shift_y) * eek.inverse();
+ t = Geom::Translate(shift_x, shift_y) * eek.inverse();
// Do the export
sp_export_png_file(document, filepath,