svg 动画_svg 动画介绍(一)
今天讲svg的动画属性 animate、animateTransform、animateMotion(第一节)
SVG 动画元素
animate、animateTransform、animateMotion
animate
基础动画元素。实现单属性的动画过渡效果。
属性 | 描述 |
---|---|
attributeName | 要变化的元素属性名称。 |
from | 动画的起始值。 |
to | 指定动画的结束值。 |
dur | 常规时间值或indefinite无限。 |
repeatCount | 表示动画执行次数或indefinite无限。 |
注:同一个图形元素可以设置单个或多个动画元素
r="20" cx="50" cy="100">
attributeName="cx" from="50" to="220"
dur="3s" repeatCount="indefinite">
attributeName="fill" from="black" to="red"
dur="3s" repeatCount="indefinite">
attributeName="r" from="20" to="50"
dur="3s" repeatCount="indefinite">
从代码上可以看到在circle图形设置了三个动画属性
1、圆心坐标cx从50到220
2、圆的填充颜色从黑到红过渡
3、圆的半径从20到50
统一设置过渡时间为3s,执行次数为无限次。
svg animate动画效果是叠加的,不是replace。
animateTransform
实现transform变换动画效果的。
在这之前我们简单看一下transform的属性参数
属性 | 描述 |
---|---|
translate(x-value, y-value) | 偏移。沿x轴方向偏移x-value个单位长度,沿y轴方向偏移y-value个单位长度。 |
scale(x-value, y-value) | 缩放。x轴方向上的长度变为原来的x-value倍,y轴方向上的长度变为原来的y-value倍。 |
rotate(angle,[centerX, centerY]) | 默认以坐标系中(0,0)原点为圆心,顺时针旋转angle度。 |
skewX(angle) skewY(angle) | skewX和shewY可以使x轴和Y轴歪斜。 |
注:css中提供了一套与svg形变一致的transform属性
之后的课会讲如何用css3来实现svg动画
这是animateTransform属性参数
属性 | 描述 |
---|---|
attributeName | 要变化的元素属性名称。 |
attributeType | 支持三个固定参数,CSS/XML/auto. 用来表明attributeName属性值的列表。 |
type | 选择transform属性。 |
from | 动画的起始值。 |
to | 指定动画的结束值。 |
values | 用分号分隔的一个或多个值,可以看出是动画的多个关键值点。 |
dur | 常规时间值或indefinite无限。 |
repeatCount | 表示动画执行次数或indefinite无限。 |
r="20" cx="50" cy="30">
attributeType="XML" attributeName="transform" begin="0s" dur="2s" type="translate" values="0,0; 0,20; 200,20" repeatCount="indefinite"/>
r="20" cx="50" cy="80">
attributeType="XML" attributeName="transform" begin="0s" dur="2s" type="scale" from="1" to="1.5" repeatCount="indefinite"/>
x="120" y="150" width="100" height="50">
attributeType="XML" attributeName="transform" begin="0s" dur="2s" type="rotate" from="0 170 175" to="-180 170 175" repeatCount="indefinite"/>
x="60" y="260" width="100" height="50">
attributeType="XML" attributeName="transform" begin="0s" dur="2s" type="skewX" from="0" to="20" repeatCount="indefinite"/>
代码依次
1、圆先Y轴向下移到20再X轴向右移到200。
2、圆放大1.5倍。
3、以矩形为中心,旋转矩形。
3、矩形X轴的扭曲20。
下面我们看一个实例,来更好的了解一下。
上面的实例,用到svg的分组元素g和引用元素use
g元素(“group”的简写),用于给逻辑上相联系的图形元素分组。
use元素用于引用文档中其它位置定义的元素。你可以重用已有的元素。
transform="translate(0, 100)" id="car">
d="...">
d="...">
d="...">
xlink:href="#car" transform="translate(450,0)"/>
svg 动画部分还有很多更有意思的属性和事件,我们在之后的课程里陆续介绍给大家。
svg 动画_svg 动画介绍(一)相关推荐
- js svg语音波动动画_让动效更酷炫!4 个常见且常用的 SVG 交互动画方法
本文介绍了 4 种常见的 SVG 交互动画方法,帮你了解 SVG 交互动画的原理和简单方法. 优秀的人机交互和舒适合理的动画,一直是 UX 设计师孜孜不倦追求的目标.但 UX 设计师每天都遇到能做出效 ...
- 纯CSS实现帅气的SVG路径描边动画效果
一.应该人人皆会的基础技术 简而言之,就是让SVG的描边像是有人绘制一样的动画效果. 国外很多相关介绍的文章,来看看一些效果gif吧~ 纯CSS实现帅气的SVG路径描边动画效果 纯CSS实现帅气的SV ...
- css图像描边,纯CSS实现帅气的SVG路径描边动画效果
一.应该人人皆会的基础技术 简而言之,就是让SVG的描边像是有人绘制一样的动画效果. 国外很多相关介绍的文章,来看看一些效果gif吧~ 我至少看到了4篇外文对此技术介绍(参见文末参考文章),觉得挺有意 ...
- 超级强大的SVG SMIL animation动画详解
超级强大的SVG SMIL animation动画详解 本文摘自超级强大的SVG SMIL animation动画详解_Zoomla!逐浪CMS官网 (z01.com),网站看上去有年头了,担心哪天会 ...
- [转]超级强大的SVG SMIL animation动画详解
超级强大的SVG SMIL animation动画详解 本文花费精力惊人,具有先驱前瞻性,转载规则以及申明见文末,当心予以追究. 本文地址:http://www.zhangxinxu.com/word ...
- svg配合css3动画_如何使用CSS制作节日SVG图标动画
svg配合css3动画 正是这个季节,因此在本教程中,我将逐步创建一些CSS动画,以假日为主题的SVG图标. Iconmelon上有一些很棒的图标,该网站上有许多免费的矢量图标集,可让您尽其所能 . ...
- uniapp - 超详细实现播放 svg / svga 格式动画组件插件,用于直播间赠送礼物特效动画或项目动画特效较多的应用(新手小白保姆级教程,提供插件+详细运行示例+使用文档+注意事项+格式说明)
前言 网上关于 uniapp 播放 svg / svga 格式动画的教程很乱,基本上全是 BUG 和各种不兼容,很难复制过来自己用. 本文实现了 在 uniapp 项目中(完美兼容 H5 / App ...
- svg配合css3动画_与Sarah Drasner一起使用CSS,JS和SVG进行动画处理,并避免倦怠
svg配合css3动画 In this episode of the Versioning Show, Tim and David are joined by Sarah Drasner, a tea ...
- HTML5 SVG卡通水母动画代码
介绍 HTML5 SVG卡通水母动画代码,水母游泳动画. 下载链接 http://www.bytepan.com/wcCJwEsUfnC 图片
最新文章
- C#自定义工业控件开发
- python新手代码-Python的初学者你现在可以自己“看”到代码的运行了!
- 包银消费CTO汤向军:消费金融大数据风控架构与实践
- 衡量发动机性能的重要指标—升功率
- java http get_我是如何进入阿里巴巴的-面向春招应届生Java面试指南(九)
- java连接并操作redis_java 使用 jedis 连接 redis 并进行简单操作
- NanoPC-T3 64位裸机编程 —— 启动和运行状态切换
- python省市区三级联动_Ajax实现省市区三级级联详解
- 正则表达式去除括号的问题
- MPAndroidChart绘制图形表
- python正则表达式处理文本内容_Python处理txt文本
- oracle mysql odbc驱动程序_oracle odbc驱动下载
- Python读写excel练习_去除excel中乱码行,并添加列
- 3D画图软件测试自学,3D版的“画图”!Win10Paint3D上手体验
- 打开计算机文件反应慢怎么解决方法,电脑反应慢怎么解决
- 虚拟化、文件系统、查找文件
- MongoDB之学习【一】:初识Mongo,路远道长,绵绵不绝
- python:等间距分割pdf文件
- 戴尔710服务器网卡型号怎么查,怎么看网卡驱动有问题_怎么看网卡驱动型号
- Ubuntu下使用“Windows徽标键+R”打开终端
热门文章
- 离散数学 第二类斯特林数 小白学习笔记
- android 自定义布局 根据布局获取类,阿里高级Android面试题解析:Android自定义View—布局过程的自定义...
- debian php mysql 安装_debian 安装mysql或者php出问题
- Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
- vc6.0转vc2010编程中遇到的问题
- tf.transpose()个人理解,高纬度的变换,可以将部分维度看成黑盒(整体)
- 边框回归:BoundingBox-Regression(BBR)(转)
- 深度学习(目标检测。图像分割等)图像标注工具汇总
- 理解委托是类型安全的
- docker-compose.yml模板文件