linux无用文件_4个有趣(且半无用)的Linux玩具

linux无用文件

我的工具箱中不断弹出一些次要工具和应用程序。 您可能不会将它们中的任何一个称为“杀手级应用”,但该死的,它们很有趣,有时还会带您进入有趣的方向。 有些具有创造力,可以提高生产力,而另一些则可以激发创造力。 有些只是愚蠢的。

演化电子

你喜欢艺术创作吗? Evolvotron !

您喜欢无法解决的难题吗? Evolvotron !

鼠标单击和指示灯闪烁会催眠吗? Evolvotron !

是的, Evolvotron是一种用于Linux的交互式生成艺术应用程序,可强制纹理和图案的演变。 简而言之,它是Linux的熔岩灯。

事实是,Evolvotron可以完成很多很酷的事情。 尽管看起来很随意和古怪,但显然是通过计算来创建图像。 Evolvotron使您可以访问所有内容,而不仅仅是在某种意义上说它是开源软件。 它包含了隐藏的选项。

首先,使用Evolvotron看起来很简单。 您打开应用程序,然后单击。 这会将图形模式的随机渲染加载到六乘五的矩阵中。 再次单击,将根据您单击的单元格计算并形成一个新的矩阵。 您可以单击任何单元格; 有时遵循偏差的路径很有趣,有时遵循恒定的种子很有趣,还有其他情况则是随机选择任何给定的生成对象会带您到意想不到的方向。

linux无用文件_4个有趣(且半无用)的Linux玩具_第1张图片

那是入门级的Evolvotron。 在公园散步的Evolvotron。 但是 Evolvotron的艺术家(他们三人)都引入了一些数学原理。

Evolvotron的“设置”菜单具有多个选项,您可以使用这些选项来影响Evolvotron生成图稿的方式。 我没有追溯源代码中的所有数学运算,但是从艺术角度来看,您可以选择:

  • 变异参数:设置与基本图像的偏离百分比。 您可以手动设置这些值,也可以使用诸如HeatCoolShieldIrradiate等描述符。 您还可以切换自动冷却功能,该功能控制突变的持续时间。
  • 函数权重:设置正在运行的数学函数的强度。 核心集上必须至少分散有一百个函数,以及IterativeFractalDilution等。
  • 最喜欢的功能:定义(或保留未定义)您希望根映像开始的功能。

如果看到特别喜欢的图像,请右键单击它。 从那里,您可以生成图像的新版本,将其锁定在适当的位置,分析生成图像的功能,或者将其放大并将其保存为您和数学之间的合作作品。

linux无用文件_4个有趣(且半无用)的Linux玩具_第2张图片

Evolvotron是多线程的,但是即使如此,某些图像所花费的时间也可能比您期望的完全渲染时间长。 如果您要保存图像,但遇到无法保存的错误,请耐心等待,并在渲染完成后稍后再次保存。

弗雷德的ImageMagick脚本

您知道ImageMagick,无论您是否知道 。 它是Unix shell的照片编辑器。 它处理图像而没有GUI界面的负担。 如果您曾经将图片上传到在线论坛或社交网站,并调整过大小并裁剪了图片,则很有可能间接使用ImageMagick。

诚然,坐在并在照片上运行ImageMagick脚本可能不是一个下午的乐趣。 但是ImageMagick可以编写脚本,因此在整夜或白天不在工作的目录中运行随机包含所有照片的目录上的ImageMagick函数很简单,这样您就可以坐在电脑前看看有什么令人兴奋的意外艺术设法创造。

为了减少该过程的偶然性,一个名叫Fred Weinhaus的人维护了200多个ImageMagick脚本,这些脚本可以“仅用于非商业用途”使用。 定义为“商业”的内容在他的网站上并不十分清楚(如果您不打算通过使用脚本来赚钱,但是可以呢?您可以从脚本的结果产品中赚钱吗?),因此它们的真实含义-world的有用性取决于您对他的限制的解释(或怀疑时与您的电子邮件往来)。

但是,作为一种有趣的转移,这些脚本肯定符合条件。

并非所有脚本都是完美的,也不是所有脚本都能产生您期望的结果。 不过,它们很容易使用,并且是脚本,您可以将它们放到充满照片的目录中,然后在几个小时后回来查看结果。 许多脚本要花很长时间(它们很复杂!),除了启动专用进程外,我还没有找到一种非常优雅的方法来对它们进行多线程处理。

每个脚本都有其自己的-help命令,因此要获取语法,请查阅您正在运行的脚本。 这是使用vintage3脚本的示例:


$  . / vintage3 -T torn -L 23 -B 33 -M 23 . / IMG_0559.JPG texture18.jpg oldboat.jpg 

在此示例中,选项位于最前面,输入文件加上纹理文件(我使用沙子或干泥的图片来建议胶片颗粒,但是您可以尝试任何方法),然后是输出目标。

为了在一夜之间将我的桌面上的线程“多线程化”,我只是做了一些愚蠢的事情,例如在三个单独的xterms(或rxvt选项卡,如果愿意的话)中启动一个单独的命令:



   
     
     
     
     
tab1_$ . / vintage3 -Blah blah blah . / IMG_??? { 0 , 1 , 2 } .JPG texture18.jpg oldphoto- ` date + % s ` .JPG
tab2_$ . / vintage3 -Blah blah blah . / IMG_??? { 3 , 4 , 5 } .JPG texture18.jpg oldphoto- ` date + % s ` .JPG
tab3_$ . / vintage3 -Blah blah blah . / IMG_??? { 6 , 7 , 8 , 9 } .JPG texture18.jpg oldphoto- ` date + % s ` .JPG

结果很有趣,让照片处理是花费CPU周期的好方法,否则这些CPU周期会浪费掉。 这也是一种有趣的方式,可以向计算机收取基准测试费用,并了解有关照片处理的更多信息。

linux无用文件_4个有趣(且半无用)的Linux玩具_第3张图片
之前。
linux无用文件_4个有趣(且半无用)的Linux玩具_第4张图片
后。

ao

您是否曾经尝试向某人解释分形是什么? 这真的很难描述,而且我发现餐巾纸上的粗略草图很少能表现出敬畏之情,并想知道茱莉亚的一套优秀作品能激发灵感。 使用Xaos,您可以停止向朋友描述分形,而仅他们展示

Xaos是其中一个好奇的应用程序,它一开始看起来很简单,然后用一个完全隐藏的秘密世界让您惊讶。 例如,当您启动Xaos时,首先看到的是相当普通的Mandelbrot集。 当我第一次发现Xaos时,对我来说已经足够了。 我一直在寻找分形生成器,因此,找到一个对我来说确实具有分形的应用程序对我来说是值得进入Linux世界的代价。 但是,如果您四处闲逛一会儿,就会发现单击并拖动分形会使其更靠近它,并随着靠近而动态呈现形状的复杂细节。

如果这还不够的话,您会发现屏幕菜单(仅当鼠标指针悬停在Xaos窗口顶部附近时才可见)绑定了许多选项。 例如,您可以通过按j即时创建自己的Julia集,也可以从Fractal > Formulas菜单中更改要渲染的集的类型。 但这只是技术选择。 Xaos只是关于渲染分形,因此有很多选择可以改变分形的呈现方式。 从2D更改为伪3D,更改颜色,强制恒定旋转,启用自动驾驶功能使您沿着分形的路径飞行,添加运动模糊并进入VJ模式,这样您就可以操纵和控制Xao,而无需进行文本渲染以进行公共演示。

linux无用文件_4个有趣(且半无用)的Linux玩具_第5张图片
Xaos处于伪3D模式。

Xaos是穿越分形几何的有趣且富有教育意义的旅程。 试试看,尽享乐趣,轻松一点。

Netcat乐队

借助所有这些随机的艺术作品,您将花费大量时间,并且需要一些背景音乐。 幸运的是,一个叫Netcat的极客友好型乐队在GitHub上发行了一张专辑作为Linux内核模块

那么,专辑到底如何成为内核模块呢? 好吧,这张叫做《 每指令周期数》的专辑被编译成一个内核模块(特别是netcat.ko )。 将模块添加到您的环境后,其自身将显示为/dev/netcat 。 将“设备”的输出插入ffplay之类的媒体播放ffplay播放专辑。

如果听起来太不可思议了,欢迎您自己尝试一下。 这些说明很简单,但是在这里我将通过一些注释来重申它们:



   
     
     
     
     
$ git clone https: // github.com / usrbinnc / netcat-cpi-kernel-module.git
$ cd netcat * module
$ make -j4
$ su -c 'insmod ./netcat.ko'
$ ffplay - < / dev / netcat

我已经在Linux 2.6.x系列内核和3.x内核上成功编译并收听了此专辑。 乐队的GitHub页面推荐ogg123 ,但是最近一些用户报告了播放问题。 我发现ffplay解决了播放问题,但是您也可以尝试mpv ,legacy mplayer或其他。

专辑本身很漂亮。 值得一听。 但是,它将继续播放,直到卸下模块为止:


$  su -c 'rmmod ./netcat.ko' 

开源随机性

还有更多有趣的项目可供探索,所以不要让我的谦虚清单成为冒险的结束。 在开放源代码世界中,我们经常遭受到人们的关注,审查我们的产品并寻求实用且清晰的货币化途径。 但这并不是开源真正的意义所在。 开源应该是有趣和鼓舞人心的。 它使每个人都可以遵循其模糊的概念来完成任务,无论它多么“无用”或“轻浮”。

花一两个下午做些毫无意义的事情。 尝试生成艺术应用程序,编写一些代码,看看它产生了什么,播放一张怪异的专辑,或者制作一张怪异的专辑。 那里有很多“玩具”,而玩耍才是真正推动创新的因素。 制作一些东西并分享。

翻译自: https://opensource.com/life/16/6/fun-and-semi-useless-toys-linux

linux无用文件

你可能感兴趣的:(python,java,linux,编程语言,人工智能)