Re: [svg2] radialGradient @fr constraints

Jasper van de Gronde:

>If you take the absolute value before interpolating, then you get the 
>weird situation that a cone (for example) first gets "thinner" and then 
>thicker again as you change the radius of one end from positive to negative.

For animation?
For this interpolation applies for the given values, not the corrected once.
Once you get a value from the animation effect function, this can be
corrected if required for the presentation, but not before. 
This is the same as for clipping opacity or color values.
This means especially values="5;-5" results in an interpolation function
f(t) = -5*t + 5*(t-1), t from 0 to 1.
This does not depend on the attribute or property you animate. 


>It also makes perfect sense if you represent a circle by x^2+y^2=r^2, or 
>using a parametric representation.

Is there really a difference between positive and negative r in a real
number space?

In the example you give, the main difference seems to be, that the
center of the circle is changed, but the radius is always not negative.

>The images were drawn by solving 
>(x-cx(t))^2+(y-cy(t))^2-r(t)^2
= 0?

Or do you mean 
r(t) := (x-cx(t)) 
=>
(x-cx(t))^2-r(t)^2=0

Still you can interpolate with values="5;0;5" for r and
values="-5;5" for cx to get the same effect.


And if it is allowed to set fx,fy outside the circle, fr positive or negative,
one still needs to define the effect for spreadMethod as already mentioned.
Because this is already problematic, if the point is on the
circle, do you have any idea about a meaningful behaviour
of spreadMethod, if fx,fy is outside and not corrected?
spreadMethod seems to be only simple, if there is not selfintersection
of the gradient.


Olaf

Received on Thursday, 30 August 2012 10:45:21 UTC