鼠标按下,获取器材内部鼠标按下的位置(不动点)。
鼠标移动,旋转器材,使得旋转之后,不动点仍然在鼠标下方。
实现方式:记住上一次的旋转角度,计算出旋转了多少度(可以用全局坐标系),然后加上去。
鼠标按下,获取器材内部鼠标按下的位置(不动点)。
鼠标移动,旋转器材,使得旋转之后,不动点仍然在鼠标下方。
实现方式:记住上一次的旋转角度,计算出旋转了多少度(可以用全局坐标系),然后加上去。
光经过一个物体(可以是小孔,也可以是任意),成的像是物的傅里叶变换。
所以想要显示夫琅禾费衍射的效果,就是求物的傅里叶变换。
二维傅里叶变换的复杂度是n*n*n*n
一个256*256的图像,傅里叶变换需要计算256*256*256*256=4294967296次,4亿次。
计算机CPU计算需要“秒”的量级。
做动效经常会用到缓动,市面上的缓动库也有好多,不同的语言,引擎都有自己的缓动库,比如比较出名的Tweenlite。
网上也有好多讲缓动的文章。但是大多数是讲怎么应用的,很少有讲缓动函数是怎么实现的。
我们基于canvas做互动课件开发,本质上更接近游戏开发,而非前端(指DOM)开发。由于当前设备的分辨率种类太多,而且用户可以任意改变浏览器窗口尺寸,所以我们必须要做自适应。为了显示不变形,我们一定是进行等比缩放。
之前我们已经讨论过用循环双向链表来记录元件端点之间的连接关系,在进行计算求解之前,我们还要做一些处理,把连接到一起的端点看做是一个点,如果元件的电阻是0的话,元件的两个端点也要看做是一个点,最后还要找到所有的连通子图,每一个连通子图单独进行计算。