首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JavaScript时间轮盘:js元素圆形布局制作时间轮盘动画

    前言 前段时间看抖音,有人用时间轮盘作为动态的桌面壁纸,感觉很好玩,于是突发奇想,可以用JS来实现这个功能。 来来来,先看看成果 ?...有了这些基础知识,我们就可以正式开始用代码实现元素圆形布局了。 JS如何实现元素圆形布局了??? 圆心角∠BOM是多少度?上面的图形,就是一个圆平均分成了8分,所以每份角度是: 360°/8。...这个差距恰好是每个元素宽高的一半,所以我们进一步处理,同时,对js做一下简单的封装,供后续使用 ?...有了圆形布局,一切就很简单了。下面我们吧日期填充到元素上面即可,同时注意每个圆的半径,不然其重合。...下面用到了moment.js,没有了解过的,可以先了解一波《moment.js日期时间管理的常用方法详细教程》 年份轮盘 先收集今年后10年的年份数据,并把数字转换成大写。

    4K30

    JS 实现弹性碰撞物理效果,并搞了一个炫酷的小球碰撞特效

    add(vector) { // 两个向量相加,就是这样 return new Vector(this.x + vector.x, this.y + vector.y); } } 然后,就是使用 js...完善碰撞的效果 我们现在需要完善这个碰撞的效果。变色,表示我们已经能检测到两个球是否碰到了,但没有视觉效果。 碰撞的效果看起来很简单,一瞬间的事,但实现起来并不简单。...以及《动能守恒定理》 那么它们的碰撞后的速度变化呢? 维基百科:弹性碰撞 里给出了上面这个可视化的图,帮助我们理解速度交互和向量的关系。...重复计算的问题 很显然,我们在里面的 for(){} 循环判断碰撞时,同一个碰撞事件会被计算两次,所以我们需要为每个球再创建一个 ID、一个碰撞数组,把有碰撞的球都放进去,更新计算时跳过它。...这样,我们就基本完成碰撞的检测和碰撞的效果了 ~ 我们来实验一下效果吧!

    72540

    碰撞以及如何检测碰撞详解

    本节的学习目标 如何设置两个物理之间碰撞,有如何让两个物体不能进行碰撞 怎么能检测到两个物体进行了接触(注意是接触不是碰撞) ---- 解析 让学习成为一种习惯 首先确定一个问题: 是要用A去碰撞B...还是B 去碰撞A? 我用A去碰撞B 来讲解这个问题 能够实现物理碰撞的前提条件是什么?...) 表示节点的物体身体允许被那些分类的物理身体碰撞 0b101 A 要去碰撞B, 如果要产生碰撞效果应该怎么设置呢?...open var nodeA: SCNNode { get } // 主动碰撞的物体 这里指的是上面例子的球体 open var nodeB: SCNNode { get } // 碰撞点的世界坐标...open var contactPoint: SCNVector3 { get } // 碰撞点的法线 open var contactNormal: SCNVector3 { get } // 碰撞的力度

    1.6K10
    领券