summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2015-03-28 21:04:40 +0000
committerJabiertxof <jtx@jtx.marker.es>2015-03-28 21:04:40 +0000
commit2763fbcc2619a390e5f81c2887b1f8f312eb5e65 (patch)
tree74e3539eaa07a3a632c6ca9a42a848d5c055392f /src
parentupdate to trunk (diff)
downloadinkscape-2763fbcc2619a390e5f81c2887b1f8f312eb5e65.tar.gz
inkscape-2763fbcc2619a390e5f81c2887b1f8f312eb5e65.zip
Allow rotate copies whithout distorsion in kaleidoscope shapes
(bzr r13708.1.22)
Diffstat (limited to 'src')
-rw-r--r--src/live_effects/lpe-copy_rotate.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/live_effects/lpe-copy_rotate.cpp b/src/live_effects/lpe-copy_rotate.cpp
index 5474bfb70..2e87133b3 100644
--- a/src/live_effects/lpe-copy_rotate.cpp
+++ b/src/live_effects/lpe-copy_rotate.cpp
@@ -92,13 +92,10 @@ LPECopyRotate::doOnApply(SPLPEItem const* lpeitem)
void
LPECopyRotate::transform_multiply(Geom::Affine const& postmul, bool set)
{
- if(postmul->isRotation()){
- Geom::Point rot = (Geom::Rotate)postmul::vector();
- coord angle = rad_to_deg(atan2(rot));
- starting_angle.param_setValue(starting_angle + angle);
- starting_angle.param_update_default(starting_angle + angle);
- rotation_angle.param_setValue(rotation_angle + angle);
- rotation_angle.param_update_default(rotation_angle + angle);
+ if(kaleidoscope){
+ Geom::Coord angle = Geom::rad_to_deg(atan(-postmul[1]/postmul[0]));
+ angle += starting_angle;
+ starting_angle.param_set_value(angle);
}
// cycle through all parameters. Most parameters will not need transformation, but path and point params do.