projects
/
synfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Security fix: mod_ffmpeg target used popen to run ffmpeg, change it to use pipe,...
[synfig.git]
/
synfig-studio
/
trunk
/
src
/
synfigapp
/
actions
/
valuedescset.cpp
diff --git
a/synfig-studio/trunk/src/synfigapp/actions/valuedescset.cpp
b/synfig-studio/trunk/src/synfigapp/actions/valuedescset.cpp
index
3e2e3dd
..
ccbd1ae
100644
(file)
--- a/
synfig-studio/trunk/src/synfigapp/actions/valuedescset.cpp
+++ b/
synfig-studio/trunk/src/synfigapp/actions/valuedescset.cpp
@@
-334,9
+334,14
@@
Action::ValueDescSet::prepare()
{
case ValueBase::TYPE_VECTOR:
{
{
case ValueBase::TYPE_VECTOR:
{
+ Angle old_angle = (*(ValueNode_RadialComposite::Handle::cast_dynamic(
+ value_desc.get_value_node())->get_link_vfunc(1)))(time).get(Angle());
Vector vect(value.get(Vector()));
components[0]=vect.mag();
Vector vect(value.get(Vector()));
components[0]=vect.mag();
- components[1]=Angle(Angle::tan(vect[1],vect[0]));
+ Angle change = Angle(Angle::tan(vect[1],vect[0])) - old_angle;
+ while (change < Angle::deg(-180)) change += Angle::deg(360);
+ while (change > Angle::deg(180)) change -= Angle::deg(360);
+ components[1]=old_angle + change;
n_components=2;
}
break;
n_components=2;
}
break;
@@
-348,7
+353,7
@@
Action::ValueDescSet::prepare()
n_components=4;
break;
default:
n_components=4;
break;
default:
- throw Error(
"Bad type for radial composite (%s)"
,ValueBase::type_name(value.get_type()).c_str());
+ throw Error(
_("Bad type for radial composite (%s)")
,ValueBase::type_name(value.get_type()).c_str());
break;
}
for(int i=0;i<n_components;i++)
break;
}
for(int i=0;i<n_components;i++)