プログラミングの備忘録

プログラムをつくる過程を残すもの

Processing

processingの備忘録 -逆高速フーリエ変換-

こんにちは。 今回は「逆高速フーリエ変換」を processing で実装してみます。 なかなか長編になってきました、フーリエ変換シリーズです。 processingの備忘録 -離散フーリエ変換- - プログラミングの備忘録 processingの備忘録 -逆離散フーリエ変換- - プ…

processingの備忘録 -逆離散フーリエ変換-

こんにちは。 今回は「逆離散フーリエ変換」を processing でできるようにしてみようと思います。 これまでに、フーリエ変換シリーズとして何記事か書いてきました。 processingの備忘録 -離散フーリエ変換- - プログラミングの備忘録 processingの備忘録 -…

processingの備忘録 -ASCIIアート-

こんにちは。 今回は、processing で「ASCIIアート」をつくります。 目次 ASCIIアートとは 実装 画像の読み込み グレースケール化 文字列に変換 出力 まとめ 参考 ASCIIアートとは ASCIIアートは、文字で描かれた絵のことを指し、略称として「AA」とよばれる…

タッパーの自己言及式の謎を解く

こんにちは。 今回は「タッパーの自己言及式 (Tupper's self-referential formula)」を取りあげようと思います。 (記事タイトルを AI が生成してくれるようになったので、さっそく使ってみました。) 例のごとく、少し前にこんなツイートを見かけました。 Tup…

processingで粉遊び的なものをつくってみる

こんにちは。 今回は、processing で「粉遊び」的なものをつくってみます。 「粉遊び」というゲーム自体は、以前にセル・オートマトンを取り上げた際に「ラングトンのアリ」の部分で少し引き合いに出しました。 dan-ball.jp taq.hatenadiary.jp ダンボールの…

processingの備忘録 -音声-

こんにちは。 今回は「processing で音声を扱ってみよう」です。 かなり間が空きましたが、過去に画像とテキストの生成・読み込みを取り上げています。 processingの備忘録 -png、gifの生成- - プログラミングの備忘録 processingの備忘録 -txt、csvの生成- …

フーリエ変換を利用して絵を描く

こんにちは。 今回は「フーリエ変換を利用して絵を描く」ということをやってみます。 フーリエ変換の利用法としてたまに挙げられるのが、「フーリエ変換の結果から周転円をつくって絵を描かせる」というものだと思います。 例えば、 Coding Challenge #130.1…

processingの備忘録 -高速フーリエ変換-

こんにちは。 今回は「高速フーリエ変換」を processing に実装してみようと思います。 以前、離散フーリエ変換 (DFT) について記事を書きました。 taq.hatenadiary.jp この方法ではfor文が2重になっており、$N$ が大きくなってくると計算量もその2乗で多く…

processingの備忘録 -離散フーリエ変換-

こんにちは。 今回は「離散フーリエ変換」を processing でできるようにしてみようと思います。 フーリエ変換と聞いてもパッと日常生活における利用例が思いつきませんが、化学系の研究を行っている私からすると、核磁気共鳴 (NMR) 分光や赤外分光 (FT-IR)、…

processingの備忘録 -ばね-

こんにちは。 今回は、processing で「ばね」をつくってみます。 Twitterを眺めていると、こんなツイートが目に入りました。 Friendly reminder that this 17-minute #YouTube video detailing the soft body #physics used in JellyCar Worlds exists. pic.…

processingの備忘録 -ボロノイ図-

こんにちは。 今回は processing で「ボロノイ図」を描画する、という題です。 おそらく「ボロノイ図 processing」などで調べれば数多出てくるものだとは思いますが、やりたいのでやります。 目次 ボロノイ図とは プログラム 正攻法 成長法 まとめ 参考 ボロ…

processingの備忘録 -畑政義写像-

こんにちは。 今回は「畑政義写像」を描画してみます。 そもそもは二重振り子を実装しようと思っていろいろ調べていたのですが、そのときにこんなサイトを見つけました。 (その後、二重振り子は無事実装できました ( processingの備忘録 -二重振り子- )。)…

processingの備忘録 -拡散律速凝集-

こんにちは。 今回は、拡散律速凝集の様をシミュレートしてみます。 これまで分子の衝突やランジュバン方程式など、ブラウン運動についていろいろやってきました。 taq.hatenadiary.jp taq.hatenadiary.jp (今更ですけどタイトルはLJポテンシャルになってま…

processingの備忘録 -二重振り子-

こんにちは。 今回は「二重振り子」をprocessingで描画してみたいと思います。 二重振り子をprocessingでやるのはn番煎じ的なところがありますが、やりたいのでやります。 目次 二重振り子とは プログラム化する おまけ まとめ 参考 二重振り子とは 「二重振…

迷路の最短経路から雷の軌跡をモデル化する

こんにちは。 前回も書いたように、迷路を使って雷の軌跡をモデル化します。 前回の記事はこちらです。 taq.hatenadiary.jp 目次 迷路の準備 最短経路の探索→雷のモデル化 まとめ 参考 迷路の準備 まずは迷路を用意します。 前回の方法に従って、迷路を生成…

processingの備忘録 -迷路-

こんにちは。 今回は、processingで迷路を作る、という題でやっていきます。 なんで迷路?と思われるかもしれませんが、それはこんなツイートを見つけたからです。 ランダムな迷路を作って、最上部から地面までの最短距離を算出することで、落雷をモデル化で…

processingの備忘録 -AR 第2回-

こんにちは。 今回は「processingでAR」の第2回です。 前回、processingでARを扱えるようにするとともに、おまけとしてobjファイルを読み込んで表示する方法や、ARマーカーを複数使う・自作する方法を書いてみました。 taq.hatenadiary.jp 前回の最後にも書…

processingの備忘録 -AR-

こんにちは。 今回は、processingで「AR」を扱ってみます。 かなり前にですがニコニコ動画でARを使って初音ミクをなでたりしている動画を見つけて、そのころからものづくりが好きだったのでいつかまねしてみたいなと思っていました。 (いわゆる「ニコニコ技…

processingの備忘録 -ランジュバン方程式-

こんにちは。 今回は「ランジュバン方程式」をprocessingで可視化(?)してみます。 本題とは関係無い話になりますが、最近はずっと競プロとProject Eulerをやっていたのでpythonばかり書いて、1ヶ月ほどでしょうか、processingに全く触れていませんでした…

processingの備忘録 -セル・オートマトン-

こんにちは。 今回は「セル・オートマトン」について書いてみます。 セル・オートマトンとは 一次元 ウルフラムコード 二次元 ライフゲーム ラングトンのアリ 森林火災 チューリングパターン まとめ 参考 セル・オートマトンとは セル・オートマトンは、格子状の…

processingの備忘録 -マンデルブロ集合-

こんにちは。 今回は「マンデルブロ集合を描く」という題です。 マンデルブロ集合とは プログラム化する マンデルブロ集合 探索できるようにする おまけ(ジュリア集合) まとめ 参考 マンデルブロ集合とは マンデルブロ集合は、 $$ z_{n+1} = z_n^{2} + c $…

processingの備忘録 -ウラムの螺旋-

こんにちは。 今回は「ウラムの螺旋をつくってみよう」という題です。 ウラムの螺旋とは プログラム化する 螺旋状に並べる 素数の判定と描画 描画方法を変えてみる まとめ 参考 ウラムの螺旋とは ウラムの螺旋は、自然数を螺旋状に並べて素数だけに色をつけ…

processingの備忘録 -Box2D-

こんにちは。 今回は「Box2Dを触ってみる」という題でやっていきます。 Box2Dとは ライブラリのインストール プログラムをつくる 落下する箱 任意の位置に壁をつくる 多角形の追加 流体っぽく まとめ 参考 Box2Dとは 「Box2D」は古典力学的な計算をしてくれ…

processingの備忘録 -ボイド-

こんにちは。 今回は、「ボイドをつくってみよう」という題でやっていきます。 ボイドとは プログラム化する 基礎をつくる 鳥の描画と移動 鳥の追加・削除 境界条件 分離 整列 結合 その他 鳥の見た目 空間分割法について まとめ 参考 ボイドとは 「ボイド」…

processingの備忘録 -L-system-

こんにちは。 今回は「L-systemで描画してみよう」という題です。 L-systemとは L-systemの中身 プログラム化する 文字列の変形 図に変換 別バージョン 余談 まとめ 参考 L-systemとは L-systemは、リンデンマイヤーさんが提唱した、自然物の構造を表現でき…

processingの備忘録 -チューリングパターン-

こんにちは。 今回は「チューリングパターンをつくる」という題でやっていきます。 皆さんは「ゲームさんぽ」という企画をご存じでしょうか。 様々なもののプロ・専門家とともにゲームをプレイするというものなのですが、専門知識が飛び出したり、ものの見方…

processingの備忘録 -Raspberry Pi-

こんにちは。 今回は「Raspberry Piを触ってみよう」です。 実はかなり前にRaspberry Piがどんなものか触ってみたいと思って、とりあえず一番安かった「Raspberry Pi Zero」(1200円くらい)を買ってみてました。 当時はMathematicaやProcessingを少しいじっ…

processingの備忘録 -反射-

こんにちは。 今回はprocessingに物体の反射を導入する方法についてです。 軸に垂直(平行)な向きの壁での反射とそれ以外の向きの壁での反射の2種類について書いてみます。 以降の説明では、簡単のために物体を円形とします。 軸に垂直(平行)な壁での反射…

processingの備忘録 -ベクトル-

こんにちは。 今回はprocessingで「ベクトル」を扱ってみます。 processingのサンプルコードを見ていたときにまねてみたいものがあり、それがベクトルを使って書かれていたのでこれを機にやってみようと思った次第です。 今回はベクトルの基礎の部分だけをま…

processingの備忘録 -3次元グラフ-

こんにちは。 今回は、3次元でグラフを描くということをやってみます。 YouTubeにprocessing関連の動画が上がっているのか気になって調べてみたときに「The Coding Train」というチャンネルを見つけました。 その動画をさらっと見てみると自分の興味がありそ…