summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 76db360)
raw | patch | inline | side by side (parent: 76db360)
author | cilix42 <cilix42@users.sourceforge.net> | |
Tue, 8 Jul 2008 22:58:55 +0000 (22:58 +0000) | ||
committer | cilix42 <cilix42@users.sourceforge.net> | |
Tue, 8 Jul 2008 22:58:55 +0000 (22:58 +0000) |
src/live_effects/lpe-copy_rotate.cpp | patch | blob | history |
index c5c7818c07ed4a5284d6bc045ce797c3cf8e4c88..2f381d1d79f686537f3e68d56e9a456b80d125e8 100644 (file)
}
for (int i = 1; i <= num_copies; ++i) {
- Rotate rot(deg_to_rad(angle * i));
+ // I first suspected the minus sign to be a bug in 2geom but it is
+ // likely due to SVG's choice of coordinate system orientation (max)
+ Rotate rot(-deg_to_rad(angle * i));
Matrix t = Translate(-origin) * rot * Translate(origin);
output.concat(pwd2_in * t);
}
@@ -123,7 +125,8 @@ KnotHolderEntityAngle::knot_set(NR::Point const &p, NR::Point const &/*origin*/,
{
LPECopyRotate* lpe = get_effect(item);
- // FIXME: is the minus sign due to a bug in 2geom?
+ // I first suspected the minus sign to be a bug in 2geom but it is
+ // likely due to SVG's choice of coordinate system orientation (max)
lpe->angle.param_set_value(rad_to_deg(-angle_between(lpe->dir, p.to_2geom() - lpe->origin)));
if (state & GDK_SHIFT_MASK) {
lpe->dist_angle_handle = L2(lpe->B - lpe->A);
KnotHolderEntityAngle::knot_get()
{
LPECopyRotate* lpe = get_effect(item);
-
- // FIXME: is the minus sign due to a bug in 2geom?
+ // I first suspected the minus sign to be a bug in 2geom but it is
+ // likely due to SVG's choice of coordinate system orientation (max)
Point d = lpe->dir * Rotate(-deg_to_rad(lpe->angle)) * lpe->dist_angle_handle;
-
return lpe->origin + d;
}