美文网首页
最酷炫的动画函数(matrix)详细全解

最酷炫的动画函数(matrix)详细全解

作者: 林立镇 | 来源:发表于2018-12-14 16:58 被阅读0次

css3 matrix()矩阵

参数
matrix()有六个参数:matrix(a,b,c,d,e,f);

这六个参数组成的矩阵与原坐标矩阵相乘计算坐标;


image.png

计算

获取当前元素的所有像素点坐标并计算

x' = ax+cy+e

y' = bx+dy+f

简单例子

偏移

坐标公式应该为:x' = x + 偏移量; y‘ = y + 偏移量

套用上面的公式那么应该:a = 1; b = 0;c = 0;d = 1; e = x偏移量;f = y偏移量

matrix(1, 0, 0, 1, x偏移量, y偏移量)

缩放

x' = xx缩放倍数 ; y’ = yy缩放倍数

a = x缩放倍数 ; b = 0; c = 0; d = y缩放倍数 ; e = 0; f = 0

matrix(x缩放倍数, 0, 0, y缩放倍数, 0, 0);

如:缩小一半, matirx(0.5,0,0,0.5,0,0);

倾斜

x' = ax + cy ; y' = bx +dy

a = cosθ; b = sinθ; c = sinθ; d = cosθ; e = 0; f = 0;

matrix(cosθ, sinθ, sinθ, cosθ, 0, 0);

如:要水平倾斜30度,只需计算出cos30°和sin30°的值,作为参数a和c的值 matrix(0.866,0,0.5,1,0,0);

垂直倾斜同理;

旋转

只需:水平倾斜角度 = -垂直倾斜角度

如:要顺时针旋转30度, matrix(0.866,0.5,-0.5,0.866,0,0);

上面的都可以用CSS3 transform提供的translate() rotate() scale() 方法实现,但有些效果不能实现。(如:镜像)
  水平镜像:(y坐标不变,x坐标变负)

所以:a=-1; b=0; c=0; d=1; e=0; f=0;简化得:
  x' = -x;
  y' = y

扭曲

各像素新坐标需要为

x1=x+tan(ax)y,y1=tan(ay)x+y,

因此等价于matrix(1,tan(ay),tan(ax),1,0,0);。例如skew(45deg);等价于matrix(1, 0, 1, 1, 0, 0);(tan(45)=1)

image.png

参考:
css3 matrix()矩阵
CSS3 matrix - matrix3d介绍

相关文章

  • 最酷炫的动画函数(matrix)详细全解

    css3 matrix()矩阵 参数matrix()有六个参数:matrix(a,b,c,d,e,f); 这六个参...

  • 函数全解

    1.函数是什么? 子程序(routine):一个或多个语句组成,完成特定任务,相对独立。分为【函数】、【过程】、【...

  • 函数全解

    函数的环境 函数是什么 函数的返回值有什么确定 影响因素调用时输入的参数 params定义时的环境 env 上面的...

  • React native 动画详解

    参考文档 :动画概述、动画API、动画缓动函数、interactionmanager 文档其实已经比较详细了,这里...

  • 第九天

    css动画函数matrix(n,n,n,n,n,n) 定义 2D 转换,使用六个值的矩阵。translate(x,...

  • 过渡动画

    css动画函数matrix(n,n,n,n,n,n) 定义 2D 转换,使用六个值的矩阵。translate(x,...

  • CSS动画

    Get Started • 动画的原理• 浏览器渲染原理• CSS动画优化• transform全解• trans...

  • Android 动画详解

      android中酷炫的效果,都离不开动画的支持。这里我们详细介绍一下android中动画的分类。android...

  • 拼了呀!这个全动画炫酷PPT可太强了!

    本次是关于一个全动画炫酷PPT的设计制作。 看下视频教程如下: 点击观看PPT全动画教程视频版[https://w...

  • javascript函数全解

    0.0 概述 本文总结了js中函数相关的大部分用法,对函数用法不是特别清晰的同学可以了解一下。 1.0 简介 同其...

网友评论

      本文标题:最酷炫的动画函数(matrix)详细全解

      本文链接:https://www.haomeiwen.com/subject/opmghqtx.html