Hi David,

I salute your efforts to trace a safe path for your young lizards!

In file: http://cs.sru.edu/~ddailey/svg/lizard2.svg :

To be a replicant doesn't mean you can have a duplicate ID ("P1" at lines 67 
and 115) :) 

Supposing that we call "P1" "P2" at line 115, then:

The rotation in the <animateMotion> is "applied after the supplemental 
translation transformation that is computed due to the `path' attribute" as the 
spec says. Although we only read "translation" there, it's good to know that if 
you also specify scaling, the motion path is also scaled. Opera, Safari and 
Chrome all seem to apply this principle (I haven't tested ASV, and I haven't 
seen any of these animations running in FF3.6.8). I also have the impression 
that the path rotation is applied to the motion path, as well.

I really don't think that authors find this behavior to correspond to what they 
expect. I personally would find this acceptable when the <animateMotion> 
element is a descendant of the element to animate, but when the <animateMotion> 
is outside and references the element to animate through the xlink:href 
attribute, then I would expect the element's transformations not to affect the 
motion path (BTW, the spec says that xlink:href is "An IRI reference to 
the `path' element which defines the motion path."  whereas it really is a 
reference to the element to animate, right?. The motion path is specified by 
the path attribute or referenced by the mpath element).

Under these conditions it becomes quite a mission to determine the correct 
position of a shape, and in any case I don't think you want the motion path to 
be transformed. This problem was discussed in the past and the best (the only?) 
solution is to redraw the orange lizard path so that its origin is the center 
of the BBox, and right off with the intended orientation.

A simpler test to prove all this:

<path id="bus" d="M0 -10h40v20h-80v-20z" fill = "green">
  <animateMotion dur="10s" rotate="auto" repeatCount="indefinite">
    <mpath xlink:href="#Q"/>
  </animateMotion>
</path>

If you apply transformations to the bus it simply gets out of control, whether 
the <animateMotion> is a descendant or not.

Nico


--- In [email protected], "David Dailey" <ddailey@...> wrote:
>
> The example at http://cs.sru.edu/~ddailey/svg/lizard2.svg
> 
>  
> 
> Shows three lizards.
> 
>  
> 
> One is simply replicated but stationary.
> 
>  
> 
> One (the green one) crawls up the page while the "d" attribute of its path
> is animated and an animateTransform is applied.
> 
>  
> 
> So far everything works in all browsers that support animation: ASV, Opera,
> Firefox, Chrome and Safari.
> 
>  
> 
> But, then, the orange lizard is instructed to follow a path with
> animateMotion. Firefox and Safari(windows) do what I had intended for the
> lizard to do - it crawls, head first along the path
> 
>  
> 
> However, Opera, ASV and Chrome all send the lizard into places that are
> unsafe for lizards.
> 
>  
> 
> I would surmise that the initial static transform (applied to center the
> lizard on the path) is somehow being overridden by the subsequent animation.
> 
>  
> 
> This hypothesis is bolstered by the somewhat simplified case at
> 
> http://cs.sru.edu/~ddailey/svg/lizard2.3.svg
> 
>  
> 
> in which the orange lizard is simply dragged along the path rather than
> being asked to crawl.
> 
>  
> 
> The opposite sort of problem can be seen here:
> http://cs.sru.edu/~ddailey/svg/animoval8b.svg  In it,  a static object is
> asked to animate along a path, but the path itself moves. Opera, Chrome and
> Safari do what I expect them to, but FF doesn't follow the oscillation. I
> suspect this latter is an FF bug.
> 
>  
> 
> Cheers
> 
> David
> 
>  
> 
>  
> 
> 
> 
> [Non-text portions of this message have been removed]
>




------------------------------------

-----
To unsubscribe send a message to: [email protected]
-or-
visit http://groups.yahoo.com/group/svg-developers and click "edit my 
membership"
----Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/svg-developers/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/svg-developers/join
    (Yahoo! ID required)

<*> To change settings via email:
    [email protected] 
    [email protected]

<*> To unsubscribe from this group, send an email to:
    [email protected]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/

Reply via email to