# 在这里做一个关于父线芝士的预告!这篇写完之后我会对父线进行讲解!
【切线】
(资料图片)
整了这么些轨迹,有同学可能会发现,我们不只是希望判定线的锚点能够沿曲线轨迹运动,我们还希望判定线可以沿切线方向贴合曲线运动。
但是这玩意挺复杂的()
对于一般的圆弧或者是圆,这个问题还好解决。这里提供常规解法:
你可以将整个轨迹的圆心标注出来,将圆弧的起点与终点和圆心相连,如图。
然后,我们作出它的切线。我们令B为起点,C为终点,那么我们可以得到 与 水平方向的夹角 α 与 β ,如上图。接下来我们添加一个rotate事件,使其开始值为 α ,结束值为 β,使用与运动轨迹相同的缓动,即可完成切线的制作,如下图。
(方程:400*cos(0.5*Pi*$t$+0.25*Pi)、400*sin(0.5*Pi*$t$+0.25*Pi),分别使用缓动1与2)
(下图你可以选择性阅读,可以直接跳到后文的螺旋线,这个复杂的东西会在父线的讲解中用简单的方法解决。如果你头铁,你也可以读完())
【螺旋线】
螺旋线同样是一个很常用的东西,它有两种实现方法。第一种是使用多个半圆进行拼接,第二种是直接修改参数方程。在此我会以第二种方法为主(第一种应该很好想到罢())。
当你只需要匀速螺旋时,第一种方法可以适用,但是对于整体变速的螺旋运动,半圆拼接会变得不方便。
想象一下,螺旋线可以理解为一个点沿着一个半径不断缩小的“圆”运动,如图。
那这就好办了,我们可以直接在原本的x y方程的基础上乘一个系数 (1-$t$),使得这个圆的“半径”——A(A sin(ωx+φ)+b)不断缩小。
而且,这个系数不仅可以是(1-$t$),还可以是 (1-sin($t$))、(1-$t$^2) 等系数,这可以使这个圆的半径以不同的缓动缩小。下图是上述三个系数的对比。
非常令人高兴的是,由于这些轨迹都是同一个圆的半径不断缩小产生的,这些轨迹的切线写法与普通的圆是一致的!也就是说,它的切线所使用的缓动和上文的圆一样,同样只取决于x/y侧的时间缓动,与你选用的半径缩小的参数(1-$t$、1-sin($t$)、1-$t$^2)无关。
如图,以1-sin($t$)为例。上图中1-sin($t$)的结束轨迹稍微有点渲染问题,实际上其切线角度是0°。
好了,快去试试吧!
本教程中的动图与图片均为我使用 Desmos 和 GeoGebra 制作。
当然也包括 Re:PhiEdit 。
曾瀞漪来自台湾,是香港凤凰卫视的主持人,也是山东人的媳妇。拥有多重身份的她这些年来在台湾、香港和山东都留下了春节记忆。她
大皖新闻讯截止到1月23日9时32分,安徽交控集团所辖路段路况:接交警指令,雾天管制:合徐高速:宿州南入口临时封闭。宿州入口往合肥方向的车
1月20日,省生态环境厅发布2022年1—12月63个县(市、区)地表水环境质量排名。地表水环境质量相对较好的前10位(1—10名)依次是靖江市、张家
别样年夜饭医院过年也温暖
春晚后台发来贺电!洛阳“小花木兰”给您拜年了【视频】