SVG animateMotion Element
Complete SVG Reference
Definition and Usage
The SVG animateMotion element is used to move an element along a motion path.
Example 1
This example creates a text that will move along a motion path.
Copy the following code into Notepad and save
the file as "animatemotion_0.svg". Place the file in your Web directory:
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" version="1.1"
xmlns="http://www.w3.org/2000/svg">
<g transform="translate(100,100)">
<text id="TextElement" x="0" y="0"
style="font-family:Verdana;font-size:24"> It's SVG!
<animateMotion path="M 0 0 L 100 100" dur="5s" fill="freeze"/>
</text>
</g>
</svg>
|
View example
Example 2
This example creates a text that will move along a motion path. The text will
also rotate and scale.
Copy the following code into Notepad and save
the file as "animatemotion_1.svg". Place the file in your Web directory:
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" version="1.1"
xmlns="http://www.w3.org/2000/svg">
<g transform="translate(100,100)">
<text id="TextElement" x="0" y="0"
style="font-family:Verdana;font-size:24;
visibility:hidden"> It's SVG!
<set attributeName="visibility" attributeType="CSS"
to="visible" begin="1s" dur="5s" fill="freeze"/>
<animateMotion path="M 0 0 L 100 100" begin="1s"
dur="5s" fill="freeze"/>
<animateTransform attributeName="transform"
attributeType="XML" type="rotate" from="-30" to="0"
begin="1s" dur="5s" fill="freeze"/>
<animateTransform attributeName="transform"
attributeType="XML" type="scale" from="1" to="3"
additive="sum" begin="1s" dur="5s" fill="freeze"/>
</text>
</g>
</svg>
|
View example
Example 3
This example creates a text that will move along a motion path. The text will
also rotate, scale and change color. We have also added a rectangle that will
"grow" and change color in the background.
Copy the following code into Notepad and save
the file as "animatemotion_2.svg". Place the file in your Web directory:
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" version="1.1"
xmlns="http://www.w3.org/2000/svg">
<rect id="rec" x="300" y="100" width="300" height="100"
style="fill:lime">
<animate attributeName="x" attributeType="XML" begin="0s"
dur="6s" fill="freeze" from="300" to="0"/>
<animate attributeName="y" attributeType="XML" begin="0s"
dur="6s" fill="freeze" from="100" to="0"/>
<animate attributeName="width" attributeType="XML"
begin="0s" dur="6s" fill="freeze" from="300" to="800"/>
<animate attributeName="height" attributeType="XML"
begin="0s" dur="6s" fill="freeze" from="100" to="300"/>
<animateColor attributeName="fill" attributeType="CSS"
from="lime" to="red" begin="2s" dur="4s" fill="freeze"/>
</rect>
<g transform="translate(100,100)">
<text id="TextElement" x="0" y="0"
style="font-family:Verdana;font-size:24;visibility:hidden">
It's SVG!
<set attributeName="visibility" attributeType="CSS"
to="visible" begin="1s" dur="5s" fill="freeze"/>
<animateMotion path="M 0 0 L 100 100" begin="1s"
dur="5s" fill="freeze"/>
<animateColor attributeName="fill" attributeType="CSS"
from="red" to="blue" begin="1s" dur="5s" fill="freeze"/>
<animateTransform attributeName="transform"
attributeType="XML" type="rotate" from="-30" to="0"
begin="1s" dur="5s" fill="freeze"/>
<animateTransform attributeName="transform"
attributeType="XML" type="scale" from="1" to="3"
additive="sum" begin="1s" dur="5s" fill="freeze"/>
</text>
</g>
</svg>
|
View example
Complete SVG Reference
|
|
|
See why there are 20,000+ Ektron integrations worldwide.
Request an INSTANT DEMO or download a FREE TRIAL today. |
|
|
|