duangsuse::Echo
711 subscribers
4.23K photos
127 videos
583 files
6.44K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
200 members, thank you! 🎉
🥳
duangsuse::Echo pinned «喜欢本频道的内容吗?»
简直太赞了…… (blend系官方示例)
2D 动画可以 3D 做的思路很好玩呢
还有 Node editor,来图形化编辑处理过程管道 好看
感觉 #Blender 设计越来越用心了,脚本一直以来也很方便 🤔
现在为 VFX / Video Editing / 2D Animation 有专门的分类支持,很方便
就是视频剪辑相当不完善,不过渲染速度快
This media is not supported in your browser
VIEW IN TELEGRAM
ffmpeg -i tik0004-0208.avi tik4-208.mp4
Forwarded from dnaugsuz
🤔 这样啊,那么我再举个栗子

def zip_with_next(xs: iter):
a = next(xs)
while True:
try: b = next(xs)
except StopIteration: break
yield (a, b); a = b

def generate_chain(initial_base, get_item, next_base):
base = initial_base
while True:
try:
yield get_item(base)
base = next_base(base)
except Exception: break

links = ("a", ("b", "c"))
flat_links = generate_chain(links, lambda t: t[0], lambda t: t[1])

list(flat_links) == ['a', 'b', 'c']

那么只需 list(zip_with_next(flat_links)) == [('a', 'b'), ('b', 'c')]
可以拿到上一项引用?(对于 1,2 项只需 zip_with_next([initial] + ) 即可指定初始项目)
#Python https://nasy.moe/Hana/Python/python-001/
Python 里 '(' 也可以开启一个布局
Python 里 \ 可以对换行进行转义
#Blender 有意思,布料弹簧
下面有个 plane,是靠位置变换动画来做到 刺激上面的布料 的
🤔 以前不懂事的时候连 callback 都无法理解,现在想想 callback 就是组合出 Task 的一种方式
Java 的 anonymous subclass instance 可以 capture 到 effective final 的 局部变量,从而能够把必须的一些信息(如当前用户什么的)给密封到 Task 的结束部分里;整个 Task 则是由库代码和用户代码共同构成的。

这个操作必须依赖闭包才能完整实现,否则许多情况下 callback 就没法实用了。
不用 Task 设置 then 操作的话,强行依赖返回值会必要求值时阻塞,影响线程里其他任务的工作
所以可以用 await/async,自动把嵌套回调利用可暂停执行的函数,“转化”为 callback 的形式,依然可以保留原有的串行风格