我已经将this animation解开并简化为一个jsfiddle可用的here。然而,我仍然不太理解它背后的数学原理。
有人对这个动画有什么见解吗?
发布于 2012-05-01 06:31:12
考虑每一条线,当它扫过矩形区域时,实际上是(4?)关于固定原点的线。
背景似乎是根据视觉错觉而“移动”的。实际发生的情况是,扫描线之间的区域在两个字符之间切换,因为扫描线在这两个字符之间旋转。
这是二维的旋转方程:
首先,在旋转(运动)之前和之后,可视化其中一条线中的(x,y)坐标对:
因此,您可以为每条线创建一个点的集合,并根据您想要的动画的“平滑”程度,以任意大小的角度旋转它们。
发布于 2012-05-10 17:49:03
我上面的答案看着整个平面正在用给定的公式进行变换。
我试着在这里简化它-上面的公式是一个旋转的三角方程,它更简单地用一个矩阵求解。
x1是旋转变换(或运算符)执行之前的x坐标。
y1也是如此。假设x1 =0和y1 = 1。这是xy平面中向量末端的x,y坐标-当前是您的屏幕。如果你插入任何角度,你将得到新的坐标与向量的‘尾部’在相同的位置。
如果你重复多次(次数取决于你选择的角度),你将返回到0 x=0和y =1。
至于按位操作-我不知道为什么要使用它。
每一次迭代,按位操作决定是否绘制平面上的点。注意k的幂是如何改变结果的。
进一步阅读-
http://en.wikipedia.org/wiki/Linear_algebra#Linear_transformations
http://www.youtube.com/user/khanacademy/videos?query=linear+algebra
https://stackoverflow.com/questions/10373151
复制相似问题