前端程序员必须掌握之三角函数在前端动画中的应用

本文介绍了三角函数在前端动画中的应用,包括图像变换、缓动效果和角度控制。通过实例展示了如何使用sin和cos函数创建平滑的动画效果,强调了三角函数在模拟物理行为和图像绘制中的重要性。同时,文中还提供了Codepen上的相关DEMO和案例分析,帮助开发者更好地理解和运用三角函数。
摘要由CSDN通过智能技术生成

此文章为转载文章,原文链接:https://juejin.im/post/5d99b706e51d4577f9285c33,由于无法直接转载,就以这样的形式转载了,是个人觉得这篇文章真的很好,很实用,很前端,只在为大家分享好东西,见谅了

开发过程中经常有意无意地刻意避开数学相关的知识,你也知道解数学题非常枯燥无趣。平时写动画也尽量使用 css3 来实现,timer-function 随意选用,最多也就调一下 cubic-bezier,找到看着舒服的就行。但是怎样让动画更顺滑,写出更贴近自然的动画,说实话以前我没怎么考虑过。

每次当动效设计师提出,能不能这样那样的时候,我会理所当然地予以否决。所以有很长一段时间,我非常羡慕那些能用 canvas 绘制很酷炫的动画的程序员。

sad man in sine

 

 

先这样吧,又不是不会动。

今天来分享一下三角函数相关的内容,如果刚学前端的时候有人教我这些,我会很开心。

三角函数

三角函数已经是老生常谈了(街舞圈称之为 Old School),它伴随我们从初中到大学,太多的公式定理,光是应付考试就花了不少时间。先简单回顾一下,确保你还记得基础知识。

勾股定理

最开始学三角函数的时候就是从背勾三股四弦五开始,勾股定理描述的是对于直角三角形,直角两条边的平方和等于斜边的平方。

 

a^2 + b^2 = h^2

 

 

常用三角函数

印象中教科书里面只保留了 sin, cos, tan,其他可以通过变换得到。

sinθ = a / h
cosθ = b / h
tanθ = a / b
复制代码

极坐标系和单位圆

在笛卡尔直角坐标系中,任一点 (x, y) 都可以转化成极坐标表示 (r, θ),其中

r = Math.sqrt(x^2 + y^2)
θ = Math.atan2(y, x)
复制代码

单位圆的定义是半径为单位长度的圆,圆上任意一点的横坐标就是对应角度的余弦值,任意点的纵坐标就是对应角度的正弦值。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
作为前端程序员,以下是一些你需要掌握的关键知识: 1. HTML(超文本标记语言):了解 HTML 的基本结构、标签和属性,能够创建语义化的网页内容。 2. CSS(层叠样式表):掌握 CSS 的选择器、盒模型、布局、样式属性等,能够实现网页的样式和布局。 3. JavaScript:作为前端开发的核心语言,你需要熟悉 JavaScript 的语法、数据类型、函数、DOM 操作等,能够实现交互效果和动态内容。 4. 前端框架和库:掌握至少一个主流的前端框架(如React、Vue或Angular)以及相关的库,能够利用它们来构建复杂的用户界面和应用。 5. 响应式设计:了解响应式设计的原理和技术,能够创建适应不同设备和屏幕尺寸的网页。 6. 浏览器开发工具:熟练使用浏览器的开发工具(如Chrome DevTools)进行调试、性能优化和页面分析。 7. 版本控制系统:掌握使用版本控制系统(如Git)管理代码,进行分支管理和团队协作。 8. 前端构建工具:了解常用的前端构建工具(如Webpack、Gulp或Parcel),能够优化和打包前端资源。 9. HTTP 和网络基础知识:了解 HTTP 协议的基本原理、状态码、请求和响应,以及网络安全相关的知识。 10. 跨浏览器兼容性:了解不同浏览器之间的差异,编写兼容性良好的代码,确保网页在各种浏览器正确显示和运行。 除了上述知识外,了解设计原则、UI/UX、性能优化、移动端开发和测试等领域的知识也会对你的前端开发能力有所帮助。不断学习和保持对新技术的关注也是成为一名优秀前端程序员的关键。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值