ねこでじ(Nekodigi)

Nekodigi’s diary

学習中の気づきをまとめています。応援よろしくお願いします

【数学】迎えが到着する前に出発したときの、時間短縮量を求める。

成果物 この式は自力で導き出したものです。一応先生などに確認してもらっています。 早まる時間が始点と終点の距離に依らず同じというところがこの問題の面白い点です。 グラフにするといいという指摘をいただいたのですが、ひとまず、買ったGANの本を進め…

【タイピング】typing.comのアバターが最大レベルに達する。

成果物 先生は寿司打で5000円もの黒字を出しているのに自分は1000円しか黒字にならなかったので、普段からほぼ英語しか打っていない私は英語入力を極めることにしました。そこで、英語タイピング界再王手と思われるtyping.comで練習することにしました。プロ…

【Processing】スパイク状のメンガーのスポンジを作る。

成果物 トゲトゲバージョン www.youtube.com 単純に各面に一つずつ再帰的に載せていくとこのようになります。 フルバージョン www.youtube.com 各面に、フラクタルになるように何度も載せていくとこうなります。立方体の時は正八面体に、正四面体の時は立方…

【Processing】逆シェルピンスキーのギャスケット

成果物 スパイク状のメンガーのスポンジを作るために、逆シェルピンスキーのギャスケットが必要なのではと思ったので、作ってみました。 仕組み 外接円の半径がrの三角形にn列配置したいときは、普通白い位置に置くようになるのですが、それをr*3/2/n*2/3だ…

【Processing】正四面体の面上の基底ベクトル

成果物 www.youtube.com 正四面体で逆メンガーのスポンジを作ろうとしたのはいいのですが、面上に複数の正四面体を綺麗に配置しなければならないことが分かったので、面上に配置するための基底ベクトルを求めてみました。 仕組み 基底ベクトルは、頂点座標三…

【Processing】重力で引きあっているのにぶつからない三つの物体(三体問題)

成果物 www.youtube.com 8の字を書いて動いているのが特徴です。ありえないほど綺麗な軌道をしているので、本当に動くのか気になって実装してみました。今回は、定数を入力して見ただけに過ぎないので、時間があれば論文を読んで詳しい仕組みについて知りた…

【Processing】三点を通る円を求める

成果物 www.youtube.com 三点を入力すると、それを通る円の方程式を求めてくれます。そして、その方程式から、円の中心と半径を求め、Processingに表示しています。 仕組み コード Circle passing through 4 pointsという名前で追加しています。 github.com

【Processing】ばねのように元の形に戻ろうとする木を作る

成果物 www.youtube.com 形状記憶するばねのコードを作ったので、木のフラクタルに適応してみました。 仕組み 形状記憶するばね nekodigi.hatenablog.com 木のフラクタル nekodigi.hatenablog.com 形状記憶するばねはNodeとそれをつなぐSpringがあれば使うこ…

【Processing】形状記憶するばねを作る

成果物 www.youtube.com 動画では滑らかに動いていますが、速度の減衰などを変えるとばねのような動きをすることもできます。 仕組み 相対的(親ノード基準の座標)な初期位置をはじめに記録しておき、変形したときに、最初の位置関係に少しずつ移動していく…

【Processing】コロナウイルスの感染者を国の大きさで表す

成果物 www.youtube.com 今回は、コロナウイルスの感染者数を国の大きさで表してみました。中央に集まるグラフと組み合わせて大きいものが真ん中に行くようにしました。 仕組み 国の画像 https://github.com/djaiss/mapsicon コロナウイルスデータ https://g…

【Processing】中央に集まるグラフを作る

成果物 www.youtube.com 今回は、中央に大きいものが集まるグラフを作ってみました。ただ少し欠陥があり、時間が経つと混ざってしまうので、今後改良していきたいです。 仕組み 丸に真ん中に集まる向きの力と、ぶつからないように回避する力を加えています。…

【Processing】画像を極座標とイージングを使って変形させる

成果物 www.youtube.com 今回は、顔をゆがませるような円形の変形で極座標の考え方が使えそうだと思ったので、早速やってみました。 仕組み まず、直交座標を、極座標に変換します。今回は、そのr成分をEaseOutCubic使って加工してみました。ただ、画像を変…

【工作】爪楊枝で二つの正四面体が合体した形のTensegrityを作る

成果物 www.youtube.com 仕組み 今回は、こーじさんの動画を参考にして作りました。こーじさんは正四面体と似た形で作ってましたが、思い切って正四面体で作ってみたらもっと綺麗に作れるのでは、ということで作ってみました。 www.youtube.com

【数学友達にプログラミングを教える】#1-Processing入門編

目標 左の二つのコードをもとに、右のカラフルなSin波のグラフを作る。できれば、アレンジしてグラフなど表示してみる。 目標 教えたこと 目標の手掛かり 教えたこと Processingが描画系に特化していることや、記述がコンパクトにできることを教える。 Proce…

【Processing】カルマン渦をシュミレーションする。

成果物 濃度表示 www.youtube.com 粒子を使った速度場の視覚化 www.youtube.com 今回は、Cのプログラムを参考にしてカルマン渦のシュミレーションを行ってみました。前回作ったシュミレーションはゲーム用の目的で考案されたアルゴリズムで、直感的なアプロ…

【Processing】パーリンノイズを多角形状に配置し、干渉させてみる

成果物 www.youtube.com 今回は、見やすくするため、数値を割ったあまりを表示しています。特に、三角形の場合は、計算コストもある程度抑えられ、違和感を感じずにダイナミックに変化するノイズを作り出してくれます。また、いくつもの対称性があるのでその…

【Processing】回転を加えるアトラクタを作ってみる。

成果物 www.youtube.com 今回は、物体を引き寄せるアトラクタに回転加える動作を加えてみました。なかなかきれいな見た目に仕上がったかと思いますが。多少違和感があるので今後改良したいです。 仕組み アトラクタは、点に近づけるような力を加えますが。近…

【Processing】シンプルなBox Softbody

成果物 www.youtube.com 前回は円のSoftbodyを作ったのですが、今回は、箱型のSoftbodyを作ってみました。さすがに箱では地味なので、画像を変形させてみました。 仕組み 基本的にはばねを弾ませているような感じです。フックの法則に従って縮んだ分に比例し…

【イラスト】猫を書いてみた#3

成果物 今回は、Wikipediaの猫を参考に、猫を書いてみました。目が怖いのが残念ですが、前回のぐちゃぐちゃな色使いからはだいぶましになってきました。デフォルメ猫を書く時はあまり表に出ないのですが、リアル猫を書こうとすると、どうしても恐ろしい見た…

【レビュー】メンブレンを使っていた人が、Majestouch Convertible2 赤軸を使ってみた感想。

きっかけ 今までずっと付属のメンブレンキーボードを使っていたのですが、誤動作が増えてきたので買い替えることにしてみました。フェザータッチTopreのキーボードにしようかと思っていましたが、価格が高いことや、Bluetoothがついていないことから、Topre…

【Processing】円を集団発生させ、膨張させることで、さまざまな平面の埋め尽くし方ができるようにする。

成果物 www.youtube.com 以前、画像を平面を埋め尽くす円で表しているアートをみて、狙い通りの埋め尽くし方を実現するにはどうすればいいのかと思ったので、私なりに方法を考えてみました。 仕組み 普通平面を円で埋め尽くすには、毎フレーム円を追加し、ほ…

【Processing】球面の画像をAzimuthal Equidistant Projection(正距方位図法)で投影する

成果物 ワイヤーフレーム www.youtube.com 画像 www.youtube.com 仕組み こちらの式を使って座標を変換していきます。 画像を投影するときは、画面上の位置から逆変換して画像上の位置を求め、Bicubic補間で補完します。 nekodigi.hatenablog.com こちらのサ…

【Processing】球面の画像をMollweide Projection(モルワイデ図法)で投影する

成果物 ワイヤーフレーム www.youtube.com ちょっとレトロな雰囲気の地図でよく見かけるあの形です。某飲料シリーズのロゴでも使われていた気がします。 画像 www.youtube.com 前回のサンソン図法と少し似ていますが、端がとがっていないのが特徴です。 仕組…

【Processing】球面の画像をSinusoidal Projection(サンソン図法)で投影する。

成果物 ワイヤーフレーム版 www.youtube.com 画像版 www.youtube.com 仕組み 以下の式を使って座標変換を行います。 画像を投影するときは、画面上の位置から逆変換して画像上の位置を求め、Bicubic補間で補完します。 nekodigi.hatenablog.com こちらのサイ…

【Processing×Blender】Tesseractを3Dプリントする

成果物 ダウンロード www.thingiverse.com 仕組み まず、前回の記事をもとにTesseractを作成します。 nekodigi.hatenablog.com そして、前回の始点と終点を指定したカプセルを使って、辺を置き換えます。 nekodigi.hatenablog.com カプセルの頂点と面データ…

【Processing】始点と終点を指定したカプセルを表示する。

成果物 www.youtube.com BlenderのWireframeを使ってTesseractを表示しようと思ったのですが、変な交差が起きてしまったりして使えませんでした。それなら、カプセルで辺を置き換えようということで今回作ってみることにしました。 仕組み カプセル 球の上側…

【AviUtil Script】市松模様のアニメーションを作る

成果物 www.youtube.com 市松模様の大きさをSin関数で変えていくことで、波打つような表現にしています。AviUtilのScriptはLuaで作られていて、オブジェクト指向出ないので、かなり大変でした。個人的にはOpenSCADを使っている感じに近いと感じました。 仕組…

【Processing】着地地点から発射角度を求める(異なる高さ)

成果物 www.youtube.com 実は異なる高さになると、式変形でいくつか三角関数の公式を使うようになり、難易度がぐっと上がります。高専で楽しい楽しいワークたちが配られたのでしばらくそちらに専念します。数学多めで本当に助かります。 仕組み こちらの数式…

【Processing】着地地点から発射角度を求める(同じ高さ)

成果物 www.youtube.com 着地地点から発射角度を求めることが出来るのかなと思って調べたところ見つかったので作ってみました。導く過程は長いですが、本体は1行で記述できます。異なる高さに対応させると、どんな高さでも対応できるので、次回やっていこう…

【Processing】Lloyds Algorithmを使って、平面と球面上で、泡が広がっていくようなアニメーションを作る。

成果物 平面 www.youtube.com Lloyds algorithmは、繰り返していくと、均一に広がっていくアルゴリズムでVoronoi Iteration / Relaxationともいわれます。重心を求めることができればよいので、簡単に球面にも拡張できます。 球面 www.youtube.com 仕組み ボ…