GNU/Linux >> Linux の 問題 >  >> Linux

4つの楽しい(そして半役に立たない)Linuxのおもちゃ

私のツールキットにポップアップし続けるいくつかのマイナーなツールとアプリケーションがあります。それらのどれも「キラーアプリ」とは呼ばないかもしれませんが、それを気に留めてください。それらは遊ぶのが楽しく、時には興味深い方向にあなたを連れて行きます。創造的で生産性を高めるものもあれば、創造性を刺激するものもあります。いくつかは単なるばかげています。

Evolvotron

あなたはジェネレーティブアートが好きですか? Evolvotron!

あなたは解決できないパズルが好きですか? Evolvotron!

マウスのクリックとライトの点滅はあなたに催眠術をかけますか? Evolvotron!

はい、Evolvotronはインタラクティブなジェネレーティブアート テクスチャとパターンの進化を強制するLinux用のアプリケーション。簡単に言えば、Linuxの溶岩ランプです。

事実は、Evolvotronで多くのクールなことができるということです。ランダムで奇抜なように見えるかもしれませんが、それは明らかに計算によって画像を作成しています。 Evolvotronは、オープンソースソフトウェアであるという意味だけでなく、すべてにアクセスできるようにします。隠されたオプションが満載です。

Evolvotronの使用は、最初は簡単に見えます。アプリケーションを開いてクリックします。これにより、グラフィックパターンのランダムレンダリングが6行5列のマトリックスに読み込まれます。もう一度クリックすると、クリックしたセルに基づいて新しいマトリックスが計算され、形成されます。任意のセルをクリックできます。逸脱の経路をたどるのが楽しい場合もあれば、一定のシードをたどるのが楽しい場合もあります。また、特定のスポーンをランダムに選択すると、予期しない方向に進む場合もあります。

これがイントロレベルのEvolvotronです。ウォークインザパークエボルボトロン。しかし、プロ Evolvotronアーティスト(3人全員)は少し数学を持ち込みます。

設定 Evolvotronのメニューには、Evolvotronがアートワークを生成する方法に影響を与えるために使用できるいくつかのオプションがあります。ソースコードのすべての計算をさかのぼったわけではありませんが、芸術的な観点から、オプションは次のとおりです。

  • ミューテーションパラメータ: ベース画像からの偏差のパーセンテージを設定します。これらの値は手動で設定することも、 Heatなどの記述子を使用することもできます。 、かっこいいシールド照射 、 等々。 自動冷却を切り替えることもできます 突然変異が持続する時間を制御する機能。
  • 関数の重み付け: プレイ中の数学関数の強度を設定します。 コア全体に少なくとも100の機能が分散している必要があります セットに加えて、反復フラクタル希釈 、など。
  • お気に入りの機能: ルートイメージを開始する関数を定義します(または未定義のままにします)。

特に気に入った画像が表示されたら、右クリックします。そこから、画像の新しいバージョンを生成したり、画像を所定の位置に固定したり、画像を生成した関数を分析したり、画像を拡大して、あなたと数学のコラボレーションアートとして保存したりできます。

Evolvotronはマルチスレッドですが、それでも、一部の画像は完全にレンダリングされると予想されるよりも時間がかかる場合があります。画像を保存しようとして、まだ保存できないというエラーが発生した場合は、しばらくお待ちください。レンダリングが完了したら、後でもう一度保存してください。

FredのImageMagickスクリプト

知っているかどうかにかかわらず、ImageMagickを知っています それかどうか。これはUnixシェルのフォトエディタです。 GUIインターフェースの負担なしに画像を処理します。オンラインフォーラムやソーシャルネットワークサイトに画像をアップロードし、画像のサイズを変更してトリミングしたことがある場合は、ImageMagickを間接的に使用している可能性があります。

確かに、写真に対してImageMagickスクリプトを座って実行することは、おそらく午後の価値のある楽しみではありません。しかし、ImageMagickはスクリプト化できるので、写真でいっぱいのディレクトリでランダムなImageMagick関数を一晩または外出中に実行して、コンピューターの前に座って、あなたがどんなエキサイティングな偶然の芸術をしたかを見ることができます。なんとか作成できました。

そのプロセスを少し偶然にしないために、Fred Weinhausという名前の男は、「非営利目的でのみ」使用できる200を超えるImageMagickスクリプトを維持しています。彼のサイトでは、「商用」と定義されるものはそれほど明確ではありません(スクリプトを使用してお金を稼ぐつもりはないが、そうする場合はどうなりますか?結果の製品からお金を稼ぐことができますか スクリプトの?)、したがって、それらの実際の有用性は、彼の制限の解釈(または疑わしい場合は彼との電子メールのやり取り)に依存します。

ただし、楽しい転換として、スクリプトは間違いなく適格です。

すべてのスクリプトが完璧であるとは限りません。また、すべてが期待どおりの結果をもたらすわけではありません。ただし、これらは使いやすく、スクリプトであるため、写真でいっぱいのディレクトリに置いて、数時間後に戻って結果をふるいにかけることができます。多くのスクリプトは非常に長い時間がかかり(複雑です!)、専用のプロセスを起動する以外に、スクリプトをマルチスレッド化するための非常に優雅な方法を見つけられませんでした。

各スクリプトには独自の-helpがあります コマンドなので、構文については、実行しているスクリプトを参照してください。 vintage3を使用した例を次に示します。 スクリプト:

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

この例では、オプションが前面に配置され、入力ファイルとテクスチャファイル(砂または乾燥した泥の写真を使用してフィルムグレインを提案していますが、何でも試すことができます)の後に出力ターゲットが続きます。

デスクトップ上でディレクトリ上で一晩それを「マルチスレッド化」するには、3つの別々のxterm(または必要に応じて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

GNU Parallelを使用することもできます(ただし、構文はBashコマンドを組み合わせたものよりも少し高度です)。

結果は楽しいものであり、写真を処理させることは、そうでなければ無駄になるCPUサイクルを費やすための優れた方法です。これは、ベンチマークや写真操作の詳細についてコンピューターに課税するための楽しい方法でもあります。

前:

<中央>

後:

<中央>

Xaos

フラクタルとは何かを誰かに説明しようとしたことがありますか?説明するのは本当に難しいです、そして私はナプキンのラフスケッチが畏敬の念を捕らえることはめったにないことを発見しました、そして良いジュリア集合がインスピレーションを与えるのだろうかと思います。 Xaosを使用すると、友達にフラクタルを説明するのをやめて、表示することができます。 それら。

Xaosは、最初は非常に単純に見え、その後、オプションの隠された秘密の世界全体であなたを驚かせる、それらの好奇心旺盛なアプリケーションの1つです。たとえば、Xaosを起動すると、最初に表示されるのは、かなり一般的なマンデルブロ集合です。 Xaosを最初に発見したとき、それで十分でした。私は何年もの間フラクタルジェネレーターを探していたので、実際にフラクタルをレンダリングするアプリケーションを見つけることは、私にとってLinuxの世界への入場料に見合う価値がありました。ただし、少しの間、フラクタルをクリックしてドラッグすると、フラクタルに近づき、近づくにつれて形状の複雑な詳細が動的にレンダリングされることがわかります。

それだけでは不十分な場合は、画面上のメニュー(Xaosウィンドウの上部近くにマウスカーソルを置いたときにのみ表示されます)といくつかのホットキーの両方にバインドされた無数のオプションがあります。たとえば、jを押すと、オンザフライで独自のジュリア集合を作成できます。 、またはフラクタルからレンダリングするセットのタイプを変更します> メニュー。しかし、それは単なる技術的なオプションです。 Xaosはフラクタルのレンダリングがすべてであるため、フラクタルの表示方法を変更するためのオプションがたくさんあります。 2Dから疑似3Dに変更し、色を変更し、一定の回転を強制し、オートパイロットがフラクタルのパスに沿って飛行できるようにし、モーションブラーを追加し、VJモードに入ると、公開プレゼンテーション用のテキストレンダリングなしでXaosを操作および制御できます。

<中央>

Xaosは、フラクタル幾何学を通じた楽しくて教育的な旅です。楽しんで試してみて、少し賢く立ち去ってください。

バンドのNetcat

あなたがあなたの時間を費やすであろうこのすべてのランダム化された芸術で、あなたは少しの背景音楽が欲しいでしょう。幸いなことに、Netcatと呼ばれるオタク向けのバンドがアルバムをLinuxカーネルモジュールとしてリリースしました。 GitHubで。

では、アルバムはどの程度正確にカーネルモジュールになることができますか?ええと、 Cycles Per Instructionと呼ばれるアルバム 、カーネルモジュール(具体的には、netcat.ko)にコンパイルされます )。モジュールが環境に追加されると、/dev/netcatとして表示されます。 。その「デバイス」の出力をffplayのようなメディアプレーヤーにパイプする アルバムを再生します。

素晴らしくて真実ではないように聞こえる場合は、自分で試してみてください。手順は簡単ですが、ここでいくつかのメモを付けて繰り返します:

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

Linux2.6.xシリーズカーネルと3.xカーネルの両方でこのアルバムを正常にコンパイルして聴きました。バンドのGitHubページでは、ogg123を推奨しています 、しかし最近、一部のユーザーが再生の問題を報告しています。 ffplayを見つけました 再生の問題を解決しますが、mpvを試すこともできます 、レガシーmplayer 、またはその他。

アルバム自体は美しいです。聞く価値は十分にあります。ただし、モジュールを削除するまで再生は継続されます:

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

オープンソースのランダム性

探索する楽しいプロジェクトは他にもたくさんあるので、私の控えめなリストを冒険の終わりにしないでください。オープンソースの世界では、私たちが作ったものを調べ、精査し、収益化に向けた実用的で明確な道を模索する人々に苦しむことがよくあります。しかし、それはオープンソースではありません についてです、本当に;オープンソースは楽しくて刺激的なものになるはずです。どんなに「役に立たない」または「軽薄」であっても、誰もが漠然とした概念に従って完成することができます。

午後か2日を取り、無意味なことをしてください。ジェネレーティブアートアプリケーションを試してみて、コードを記述してそれが何を生成するかを確認したり、オタクなアルバムを再生したり、オタクなアルバムを作成したりしてください。そこにはたくさんの「おもちゃ」があり、遊ぶことは本当に革新を推進するものです。いくつかのものを作って共有してください。


この記事は2016年6月に最初に公開され、新しい情報で更新されました。


Linux
  1. Linuxに関する10の面白くて楽しい事実

  2. Linuxコマンド:jobs、bg、およびfg

  3. Linux – SysfsとDevtmpfs?

  1. 私のお気に入りの5つのLinuxコンテナイメージ

  2. Linux – Unix / linux Osesの標準および/または共通ディレクトリ?

  3. Linux ファイルとディレクトリの削除

  1. Linuxを学ぶための10の記事

  2. Linuxでの面白くて面白いコマンドトップ5(楽しいターミナル)

  3. Cowsay:Linux ターミナルで楽しむ