This media is not supported in your browser
VIEW IN TELEGRAM
#Math 作者觉得非常坑。其实FT(和逆运算) 是如何完成图形简化的, mAnim:3b1b 的理念好(只是把x轴变成圆环取步长缠绕)但话太多,S大佬的交互图和公式好但图描述不到位,知乎大佬的文章最后一部分没画明白(为何3D海螺能变成1D方波肯定都懵了!), 交互式入门 只是贴了1D波形和2D图像的例子,它甚至没告诉你频谱图该怎么看,也没说圆圈和频率有何联系,我看了代码也是不原理。
绕了半天我才发现虚数其实是数学扭曲2D线条的一个工具..它的物理意义和莫名算式就是2D旋转(2*-1=180度转, ii=-1, i=90度)。 简单的说交互式入门的"xyt深螺旋"就是FT的核心了,最后 e^频率*震幅=原点 也是没啥好奇怪的(积分就是为求基震幅差,所以D/IFT 的e^ +-相反)。 然后1D信号也模拟画圈圈时的抖动来获取频谱,2D手绘反而更直接了。合着比直方图(groupBy)还简单些… 🤪 只是积分来微分去 imag real 的把人吓怕了。
符号不统一倒是问题(非常严重,明明FT是信号处理SP领域,数学界用上g或希腊epslion和震幅w,电路上虚数i=j,伪SP用Ff.. 我的智商暂不支持如此多的别名!)。
我想迭代频率k, t=0~1, e=2pi cos,sin ,v=频段动量 会比较易读。因为Xe大佬的是正逆FT 一次解决(用来简化图像),震幅l其实是不存在的
结果最后不仅从屏幕域<=>数学域 没必要(SVGxy就能基于%的),我连Vec2都没必要用于实现傅里叶变换算法了...4行写完么
绕了半天我才发现虚数其实是数学扭曲2D线条的一个工具..它的物理意义和莫名算式就是2D旋转(2*-1=180度转, ii=-1, i=90度)。 简单的说交互式入门的"xyt深螺旋"就是FT的核心了,最后 e^频率*震幅=原点 也是没啥好奇怪的(积分就是为求基震幅差,所以D/IFT 的e^ +-相反)。 然后1D信号也模拟画圈圈时的抖动来获取频谱,2D手绘反而更直接了。合着比直方图(groupBy)还简单些… 🤪 只是积分来微分去 imag real 的把人吓怕了。
符号不统一倒是问题(非常严重,明明FT是信号处理SP领域,数学界用上g或希腊epslion和震幅w,电路上虚数i=j,伪SP用Ff.. 我的智商暂不支持如此多的别名!)。
我想迭代频率k, t=0~1, e=2pi cos,sin ,v=频段动量 会比较易读。因为Xe大佬的是正逆FT 一次解决(用来简化图像),震幅l其实是不存在的
结果最后不仅从屏幕域<=>数学域 没必要(SVGxy就能基于%的),我连Vec2都没必要用于实现傅里叶变换算法了...4行写完么
duangsuse::Echo
#math 【以下内容作者即将弃坑】正弦波的叠加,也可以理解为螺旋线的叠加在xy的投影。光波就是如此 傅里叶变换(更新:是之前观察的失败。 现在发现真和复数无关了.. 迭代频率i而较f(t) 圆圈^i*t. xX+yY 就是求与震幅1的差,xY+yX 则是把另点yx转90度 同操作(即海螺状),在计算序列里是求方向平均 即震动频率,得俩数=动量。和卷积或t轴有关吗?无关 yx=频率震幅(右增直方图),负螺旋回到sin波, xX+yY 是高度、xY+yX 是速度,在时间点t 2Dsin 就是当前频区间的动量…
#learn #math #signal #algorithm Fourier Transform
傅里叶变换可以用于音乐可视化(波形->频谱图)、电音与乐器合成及图像滤波(H/L/Band-pass)、音视频压缩(jpg,mp3)。 Better explained 有个解释:”可以告诉你一杯水有什么成分“。 其实还不如用颜色纷呈->颜色分层的鸡尾酒来解释,白光也是由所有频率的可见光波构成的,“折色”棱镜(红波长最长,绿频率最耀眼)就是这FT。
颜色五彩斑斓,却是由rgb三原色或hsv色向-饱和光度 这些分量构成的,音响波动捉摸不定,却是由不同频的sin震幅构成的。音高是频率,响度是震幅,震动模式“音色”也即频谱
这是一个正逆傅里叶变换,调用两次以
d*的是虚数乘法,当应用于1D(如声音),y恒为0
虚数用于2D旋转(公式 xcos-ysin,xsin+ycos :于角r)。其实,FT 也有非虚数的形式 Int[t=0~5] f(t)cos(xpi*t)dt ,只是其反函数 有两个表达式,所以复数轴y的ii=-1=180deg是简化计算的(呃
为什么?可以把手绘路径视作点构成的折线,它是xyt深 3个轴构成的3D图像,t=0~1。举起左手食指y,拇指中指是xz轴。
有了震幅向量,以其 频率*震幅=动量 ;路径原点=不同频率(圈大小)的动量之和,咱把累积动量每内点画成圆圈,而跟踪最外点,就成了傅里叶的可视化。
圆圈大=震幅大,速度快=频率快。如果图像较毛刺,中频信号会略广,如果图像很圆,几乎只1圈在转。 频率震幅也能再”变换“—相对0,0长度=震幅、角度=相位
对人眼而言色相位比振幅重要,而声音频率即音高,常Q法就能从波形检测八度音。
@3b1b 的视角也是如此:迭代sin(t),再每点具有t%圆的角度,即其缠绕在0点为中心对称花,正负抵消无振幅,但若频率kt%(即x上竖线1Hz)正好合适,会发生“共振”-竖线正好量出sin的波峰
代码怎么写?
实数是稠密的,需取一个dt来把路径分成N=1/dt个散点,即
setInterval 里记t%的内动量之和-画旧点初[0,0],连线到新点,画距离之长的圆
过去的端点路径用[]记录:
因同时跑正反函数,律的k只要相反就能、转的cos/sin只要01位置计算对应就OK,但应期望频谱是正的。
但从0点积分震荡可以写成不必居中平移数据到0,0的版本,f(t)e^i2pi*-t k 内e平移到正轴即避免数组索引右移。考虑理论优雅和性能 仅简化代码时用。
也有数组含正负索引和虚数向量混为一谈的写法
若把xy(0,1)旋转t*DEG ,xy-t深里它就是螺旋线,当然f(t)不会一直是0,1。在1D里仅用复数的实轴x,从tx上看它积了sin(kt)与ft的振幅距离,反向时已知k和振幅l,用sin(k*-t)l 让y反着震(考虑两个sin 1*2pi x 的乘,距大积大,故需反比-在正公式)得原ft,2D复数直接兼容
为什么3b1b的视频用拟人π呢?或许是象征学术圈吧,大家都是一个半圆,让对方完整,所以才能构成圈而非沙堡啊。
为什么我要在没头脑和不高兴间二选一呢?我在工程时是严肃的,但科普时就可以很随性,自由选择语言侧重。因为科普并不是需要大师精英来完成,自然而然去做就行啦
我一定会努力追求他们的高度、遍历技术之广度,哪怕是用自己的方法,哪怕高数没有及格过;
我不想断言它们或自己属于什么层次,因为,至少每一步都很有趣啊!
https://t.me/dsuse/17587
傅里叶变换可以用于音乐可视化(波形->频谱图)、电音与乐器合成及图像滤波(H/L/Band-pass)、音视频压缩(jpg,mp3)。 Better explained 有个解释:”可以告诉你一杯水有什么成分“。 其实还不如用颜色纷呈->颜色分层的鸡尾酒来解释,白光也是由所有频率的可见光波构成的,“折色”棱镜(红波长最长,绿频率最耀眼)就是这FT。
颜色五彩斑斓,却是由rgb三原色或hsv色向-饱和光度 这些分量构成的,音响波动捉摸不定,却是由不同频的sin震幅构成的。音高是频率,响度是震幅,震动模式“音色”也即频谱
这是一个正逆傅里叶变换,调用两次以
-i+N,f ; i*t,a[i+N] (其中f是+-1内2D路径 t是路径% k=+-i是第kHz频谱):with(Math){DEG=2*PI,转=(r,f)=>f(cos(r),sin(r))}
just=k=>()=>k
律=(k,f)=>{let cx=0,yi=0,d=dt, t=f.pop?(f=just(f),d= 1):0;for(;t<=1;t+=d)
转(k*t*DEG,(X,Y)=>{let[x,y]=f(t); cx+=d*(x*X-y*Y); yi+=d*(x*Y+y*X) } )
return [cx,yi]
} d*的是虚数乘法,当应用于1D(如声音),y恒为0
虚数用于2D旋转(公式 xcos-ysin,xsin+ycos :于角r)。其实,FT 也有非虚数的形式 Int[t=0~5] f(t)cos(xpi*t)dt ,只是其反函数 有两个表达式,所以复数轴y的ii=-1=180deg是简化计算的(呃
为什么?可以把手绘路径视作点构成的折线,它是xyt深 3个轴构成的3D图像,t=0~1。举起左手食指y,拇指中指是xz轴。
转(tDEG 在xy平面只是圈,但考虑t深,ty右平面=sin, xt顶平面=cos ,它是t的螺旋,因此 2D旋转t%后正是 +-1 内点与螺旋的差,如果输入恰好是0,0宽1的正圆,路径t%点 t%DEG旋转结果— 0点转0,6点转6,... 会开始叠加而非互相抵消,给出一个震幅向量,这就是傅里叶的物理意义有了震幅向量,以其 频率*震幅=动量 ;路径原点=不同频率(圈大小)的动量之和,咱把累积动量每内点画成圆圈,而跟踪最外点,就成了傅里叶的可视化。
圆圈大=震幅大,速度快=频率快。如果图像较毛刺,中频信号会略广,如果图像很圆,几乎只1圈在转。 频率震幅也能再”变换“—相对0,0长度=震幅、角度=相位
对人眼而言色相位比振幅重要,而声音频率即音高,常Q法就能从波形检测八度音。
@3b1b 的视角也是如此:迭代sin(t),再每点具有t%圆的角度,即其缠绕在0点为中心对称花,正负抵消无振幅,但若频率kt%(即x上竖线1Hz)正好合适,会发生“共振”-竖线正好量出sin的波峰
代码怎么写?
实数是稠密的,需取一个dt来把路径分成N=1/dt个散点,即
律(k,f=t=>svg.getPointAt(t*totalLen) ) 即 ps[t*n(ps) >>0]
画布用 fillRect(x,y,1,1) 画点,stroke(arc(x,y,l, 0,DEG)) 画圆,moveTo+lineTo*N 画折线。 SVG可先内联在代码里,通过<path d="M0,0..."> 加载setInterval 里记t%的内动量之和-画旧点初[0,0],连线到新点,画距离之长的圆
过去的端点路径用[]记录:
logPoints=(a=[])=>p=>{a.push(p); a.forEach(p=>g.fillRect(...p,1,1))}
对无尽重复动画只push不好,可用环形队列 Array(1/dt),i=0, a[i=(i+1)%n(a)]=记录 ,遍历略。因同时跑正反函数,律的k只要相反就能、转的cos/sin只要01位置计算对应就OK,但应期望频谱是正的。
但从0点积分震荡可以写成不必居中平移数据到0,0的版本,f(t)e^i2pi*-t k 内e平移到正轴即避免数组索引右移。考虑理论优雅和性能 仅简化代码时用。
也有数组含正负索引和虚数向量混为一谈的写法
若把xy(0,1)旋转t*DEG ,xy-t深里它就是螺旋线,当然f(t)不会一直是0,1。在1D里仅用复数的实轴x,从tx上看它积了sin(kt)与ft的振幅距离,反向时已知k和振幅l,用sin(k*-t)l 让y反着震(考虑两个sin 1*2pi x 的乘,距大积大,故需反比-在正公式)得原ft,2D复数直接兼容
为什么3b1b的视频用拟人π呢?或许是象征学术圈吧,大家都是一个半圆,让对方完整,所以才能构成圈而非沙堡啊。
为什么我要在没头脑和不高兴间二选一呢?我在工程时是严肃的,但科普时就可以很随性,自由选择语言侧重。因为科普并不是需要大师精英来完成,自然而然去做就行啦
我一定会努力追求他们的高度、遍历技术之广度,哪怕是用自己的方法,哪怕高数没有及格过;
我不想断言它们或自己属于什么层次,因为,至少每一步都很有趣啊!
https://t.me/dsuse/17587
Desmos
Fourier Transform
Forwarded from Moe Løöòo̫óôǒőŏȯọɵơỏōõǫȍɔo̥o̪o͓o͆юȏⱺꝋꝍp
This media is not supported in your browser
VIEW IN TELEGRAM
宝马的广告外包团队集体嗑药了
Forwarded from 层叠 - The Cascading
有悲催的用户将价值约 50 万美元的 WETH (Wrapped ETH) 发送给 WETH 的合约地址企图兑换回 ETH,可惜这并没有如其期望地进行,并没有 ETH 回到这位用户的地址中。
从 ETH 转换到 WETH 可以通过发送 ETH 并调用合约的默认函数完成,但反向转换则需要调用其 withdraw 函数,而不是 transfer WETH 给合约地址。
https://old.reddit.com/r/ethereum/comments/sfz4kw/did_i_just_lose_half_a_million_dollars_by_sending/
https://news.ycombinator.com/item?id=30134500
#Ethernum #WETH #SmartContract
从 ETH 转换到 WETH 可以通过发送 ETH 并调用合约的默认函数完成,但反向转换则需要调用其 withdraw 函数,而不是 transfer WETH 给合约地址。
https://old.reddit.com/r/ethereum/comments/sfz4kw/did_i_just_lose_half_a_million_dollars_by_sending/
https://news.ycombinator.com/item?id=30134500
#Ethernum #WETH #SmartContract
Reddit
[deleted by user] : r/ethereum
3.4K votes, 2.3K comments. 1.6M subscribers in the ethereum community. Next-generation platform for decentralised applications. Dive in at…
Forwarded from Solidot
量子力学无法用实数完整描述
2022-01-30 21:57
量子物理是否必须使用复数,是一个长期的基础性问题。奥地利、西班牙和瑞士等国的科学家团队提出一种利用确定性纠缠交换验证复数必要性的贝尔不等式类型的检验方法。遵守实数形式量子物理的参与者不能获得标准量子理论中允许的界限,从而排除以实数形式描述标准量子力学的可能性。中国科技大学潘建伟团队基于自主设计研发的超导量子线路和高精度量子操控技术,在世界上首次完成了该实验。在这个理论框架下,实数形式的界限为 7.66,而实验测试结果为 8.09,超过判据 43 个标准差。实验结论 支持量子物理需要使用复数。研究报告发表在《物理学评论快报》上。
2022-01-30 21:57
量子物理是否必须使用复数,是一个长期的基础性问题。奥地利、西班牙和瑞士等国的科学家团队提出一种利用确定性纠缠交换验证复数必要性的贝尔不等式类型的检验方法。遵守实数形式量子物理的参与者不能获得标准量子理论中允许的界限,从而排除以实数形式描述标准量子力学的可能性。中国科技大学潘建伟团队基于自主设计研发的超导量子线路和高精度量子操控技术,在世界上首次完成了该实验。在这个理论框架下,实数形式的界限为 7.66,而实验测试结果为 8.09,超过判据 43 个标准差。实验结论 支持量子物理需要使用复数。研究报告发表在《物理学评论快报》上。
duangsuse::Echo
#math 感觉太失败了,但…我依然已经重写 没想到傅里叶公式如此简单,但是啊但是 感觉数学和工程理论差异蛮大的,对我们而言连续(\int)根本是不存在的,一切计算都是有精度按步长积分,Sigma(Sum) 符号看起来也很多余,我们根本搞不清为什么有两种版本的公式,在理论上有何分别。虚数就更离奇,它的vec2乘法是 xX+yY,xY-yX ,别人说复数虚数(r,i)*i 的物理意义是旋转90度,也就是生成t的螺旋,我能不能无视虚数平面,只用笛卡尔两系计算呢? (x+iy)*(cosθ+isinθ)即e^it…
This media is not supported in your browser
VIEW IN TELEGRAM
原创写出来力,但是性能上严重不如Xe(以及我半重写他的版本),以至于我必须去Vec2 化重写 🤪
差异有多大呢? Xe dt=.001 nK=400 只要半秒,我同参数要5秒…… 这个星星还是 dt=.005 nK=5 ,才能做到Xe的速度。我猜是因为V8无法很好优化eval 的代码,还以为教严格0复制会比嵌套[] 好..
应该是正逆傅里叶完频谱咋可视化没设计好,我简单
而且画画的过程中顺序和频率圆的问题也要保留序号,我就搞错了这个.. 又死了
为了拽中文和理论清晰弄得太卖力了
如果要不按数学写,大概还要改一大堆迭代区间 🤪 我还是数学一点吧
差异有多大呢? Xe dt=.001 nK=400 只要半秒,我同参数要5秒…… 这个星星还是 dt=.005 nK=5 ,才能做到Xe的速度。我猜是因为V8无法很好优化eval 的代码,还以为教严格0复制会比嵌套[] 好..
应该是正逆傅里叶完频谱咋可视化没设计好,我简单
a=Vec2(W,H).pk(.5); 和=Vec2(0)了以下,圆心正负的问题都每想过(我觉得不该有正负的 🥲
for(i=n(动量)-1;i!=1;i--){b=和.p(动量[i]) .dup.p(_5).pk(H*H/W); 连线(a,b);a=b} P(a)
而且画画的过程中顺序和频率圆的问题也要保留序号,我就搞错了这个.. 又死了
为了拽中文和理论清晰弄得太卖力了
let i,N=c.nK,谱=Array(2*N), /*内俩频*/动量,a,b,和, P=录点() 的时候我都每想过逆FT完结果怎么累积回屏幕空间,就断定有ab和这回事 🤪,so.. 实际上最后 N<3 是报错的,因为我不想用JS里不规范的 i<=N i~N区间如果要不按数学写,大概还要改一大堆迭代区间 🤪 我还是数学一点吧
duangsuse::Echo
#WIP 作者正在学习傅里叶变换 😓 感谢xecades大佬的博客。 实在不好在tg打太长的草稿。 语言有问题请大家积极报告 今天本来说还得写篇文评知乎民科的,以及提纲2月的动画礼物(草 话说xecades大佬居然真的是用 offset-path 来获取SVG折线点……天哪,我还以为不能呢,offsetLeft 好像确实变了,当时我以为不能(忘记为啥了)就找到了 SVGPath 的 TotalLen/PointAtLen (这里Xe顺带 -W/2 居中了一下,style里0点也加上了。transferSVG…
感觉自己没资格教Xe做事🤪。 其实理论正确了,程序曲折一点也OK,只要能工作就好,Xe用d3的JQ功能和CSS 做好像也OK,只是形式有点冗,数学式是没问题的,而且他还写过canvas 版本,性能比我高10倍.. 什么鬼,他只是写了正常的代码,甚至用了[]负索引,我稍微换了点私货-虚数变向量,居然会变慢?
而且把原版换成向量,没变慢多少?
Xe还是高三呢,理论对就不打扰他了,看起来我的代码也该修改😱
我这个版本用了太多元编程和eval,画个画都搞出(我不想重复xy传参..)
怎么转一圈就耗这么长时间?我直接给xy平铺在[]好了!
我不用向量改 J(i=>a[i]+b[i])好了,也不用 svgPoint()=t=> 这种鸡肋的方式混淆计算和DOM测量了 😭 看来浏览器开发不考虑计算分块不行啊
而且把原版换成向量,没变慢多少?
Xe还是高三呢,理论对就不打扰他了,看起来我的代码也该修改😱
我这个版本用了太多元编程和eval,画个画都搞出(我不想重复xy传参..)
连线=(a,b)=>画(a,2,0,DEG,'Farc', b,'Sline', a.dup.m(b).l,0,DEG,'Sarc') 这种“DSL”… 很明显,运行时较大开销,那[Vec2,] 和无法内联的复制就更不用说了。在 #GLSL 里你可以随便上vec2[] 矩阵,JS 里可不敢说0开销抽象。 😭怎么转一圈就耗这么长时间?我直接给xy平铺在[]好了!
我不用向量改 J(i=>a[i]+b[i])好了,也不用 svgPoint()=t=> 这种鸡肋的方式混淆计算和DOM测量了 😭 看来浏览器开发不考虑计算分块不行啊
duangsuse::Echo
感觉自己没资格教Xe做事🤪。 其实理论正确了,程序曲折一点也OK,只要能工作就好,Xe用d3的JQ功能和CSS 做好像也OK,只是形式有点冗,数学式是没问题的,而且他还写过canvas 版本,性能比我高10倍.. 什么鬼,他只是写了正常的代码,甚至用了[]负索引,我稍微换了点私货-虚数变向量,居然会变慢? 而且把原版换成向量,没变慢多少? Xe还是高三呢,理论对就不打扰他了,看起来我的代码也该修改😱 我这个版本用了太多元编程和eval,画个画都搞出(我不想重复xy传参..) 连线=(a,b)=>画(a…
你用什么方法解决冗余参数
Anonymous Poll
25%
参数模板 f(...a0, ...a)
25%
颗粒化 a=>b=>a+b
13%
列表处理的参数模板
0%
Function('a b','code')
38%
手写
duangsuse::Echo
原创写出来力,但是性能上严重不如Xe(以及我半重写他的版本),以至于我必须去Vec2 化重写 🤪 差异有多大呢? Xe dt=.001 nK=400 只要半秒,我同参数要5秒…… 这个星星还是 dt=.005 nK=5 ,才能做到Xe的速度。我猜是因为V8无法很好优化eval 的代码,还以为教严格0复制会比嵌套[] 好.. 应该是正逆傅里叶完频谱咋可视化没设计好,我简单 a=Vec2(W,H).pk(.5); 和=Vec2(0) for(i=n(动量)-1;i!=1;i--){b=和.p(动量[i]) …
This media is not supported in your browser
VIEW IN TELEGRAM
#js 好!有精神。 40行代码,不带Vec2 ,优雅性正在继续分析
比率问题和Path的表示我好好想了,现在的版本很正常,没有稀奇古怪的技巧了(确信)
比率问题和Path的表示我好好想了,现在的版本很正常,没有稀奇古怪的技巧了(确信)
#math 妙~虽然分辨率处理岔了,54行实现目标功能!理论优雅性有了,核心代码4+12行。过去发现区间和累积的bug都已修复
如果说还能再改进,我想正常手选以外的输入..手绘,文件,URL 啥的, 还要能输出str的,画布要能选绘制方式..
没有框架的算法是走不动的,可悲的是我就没得框架用。 JQ,Vue? 格局太小了,都得程序员手动指定吧 🙈
最痛苦的是
看着恶意行数短,但也没法再优化了,语义就是这样(反正是数学应用 app界也无人看 管他呢 🤪
此外
当然这个也不能用于手绘外的FT,WebAudio是支持快速傅里叶频谱的 😂
如果说还能再改进,我想正常手选以外的输入..手绘,文件,URL 啥的, 还要能输出str的,画布要能选绘制方式..
没有框架的算法是走不动的,可悲的是我就没得框架用。 JQ,Vue? 格局太小了,都得程序员手动指定吧 🙈
最痛苦的是
J['-'] 这种半道出家的定义,食之无用 弃之行数又多了。我是真对代码有强迫症,但可能不是对合规性—对于编译原理程序员,只要语言里合法且语义不至糊的都合规(比如 录点=(a=[])=>p=> ,eAdd=(e0=> (s,op)=> , fold=(fr,f,ac)=>(fr(x=>{ac=f(ac,x)}) ,ac) 这tm是瞎写..看着恶意行数短,但也没法再优化了,语义就是这样(反正是数学应用 app界也无人看 管他呢 🤪
此外
简画(ps)也不能积分1D输入(t-x动就可了),我是想用 echarts 支持可视化白噪声啥的,能弄个吉他合成?反正发文肯定不能只讲2D当然这个也不能用于手绘外的FT,WebAudio是支持快速傅里叶频谱的 😂
for(动量=[],i=1;i<N;i++)动量.push(v(i),v(-i))//律(-i*t,谱[i+N])
动量.sort((b,a)=> pLen(a)-pLen(b))
//^t%的全谱震幅,l降序,累积为点
a=L.map(v=>v/2),l=Math.min(...a)*4;for(i of 动量)//检讨
{a0=[...a];J(a,i,(a,b)=>(a+b*l)); 连线(a0,a);a0=a} P(a)
duangsuse::Echo
重构 https://alemangui.github.io/pizzicato/ 的代码简直是种折磨,我鸽了3,4天了(当然也是因为天气凉和频道更新。 最开始是想作为WebAudio的练手,的难度下降版,,,) 没想到在我解决人脸识别和画布几何扭曲算法后, 这个东西卡了我很长时间…… 你们不知道……🤪 我原以为声音好听=代码好看,没想到这个作者纯纯就是前端,勉强写了个player UX ,全TM是 getByID 拿{} 去传.. 真的还不比我们班同学的复制粘贴。 menu 和article的结构大量重复倒不说,…
#js #code #low 🌚 本来想到FT可视化算法里一个流程技巧,想去看看这个是不是已有了,发现人家用的是FFT — 为什么和正常人写的不一样?
非常无语的抑制住了血压升高,因为我的文还在「设计」中
真的是逗死我了,Xe 大佬的代码居然是最优雅的,因为居然有人蠢(请允许我这次用这个词)到动画状态机(st++的那种?)都 case? JSer 都没学过编程吗?!
我tm a[i/N >>0] (floor)已经很过分了,这还 >>>1 ?还x:y:x:yx... this, context(graphic) ?叠buf呢 😱
这个作者到底懂不懂编程,他是做游戏的,能做游戏居然也会写烂代码??! 这是什么鬼
非常无语的抑制住了血压升高,因为我的文还在「设计」中
真的是逗死我了,Xe 大佬的代码居然是最优雅的,因为居然有人蠢(请允许我这次用这个词)到动画状态机(st++的那种?)都 case? JSer 都没学过编程吗?!
我tm a[i/N >>0] (floor)已经很过分了,这还 >>>1 ?还x:y:x:yx... this, context(graphic) ?叠buf呢 😱
这个作者到底懂不懂编程,他是做游戏的,能做游戏居然也会写烂代码??! 这是什么鬼