heat 2018/12/29(Sat) 17:40
ウィンドウ上をクリックするとクリックした座標に熱源を設置し,一定時間経つとそれは消滅する.熱源は複数設置することもできるというプログラムを作っています.
熱源を中心に発生した熱をヒートマップのように表示したいのですが,これを実現する関数などはありますか.
Reputeless 2018/12/31(Mon) 19:35
二次元配列の熱情報を色で持つ Image を用意し、
状態を更新するたびに、その Image をもとに DynamicTexture を更新して描画すると良いと思います。
熱 h を 0.0〜1.0 で表すとすると、ピクセルの色 c を c = HSV(240 - h * 240) で計算すると、
手軽にそれっぽい色が得られます。
heat 2019/01/01(Tue) 18:35
ありがとうございます.
うまくヒートマップを表示できました.
もう一つ質問になってしまうのですが,現在熱情報を二次元配列で管理するとき,熱源のある位置に1.0を代入し1マス離れる毎に0.1ずつ値を小さくしています.しかしこの手法では表示されるヒートマップが45度傾いた正方形になってしまいます.これを円形にする良い方法はありますか.
Reputeless 2019/01/03(Thu) 13:00
1 つのセルから熱を拡散していくのではなく、
熱源の周囲 N x N マスに対して熱源からの直線距離を計算して影響を付与すればよいと思います。
heat 2019/01/05(Sat) 01:04