ややプログラム紀行

博士2年のプログラムに関する日記

4分木空間分割

さて、座標から空間を求めることが出来て、安心安心と言いたいところですが、

今までの話はあくまでオブジェクトが点だったときのお話

これから大きさのあるものに応用していかなければ実用出来ません・・・

てなわけで

④大きさへの対応

大きさがあるということは即ち、今までの方法だと空間を跨いでしまう可能性があるということです

例えば、親空間、子空間、孫空間があった場合、

今までは点だったので、一番レベルの低い空間、つまり孫空間に配属されることは決まっていました

しかし、大きさがある場合、子空間や親空間に配属される可能性もあるわけです

なので、そこを考慮していくことになります

先に大まかなやり方を言うと、

最初に、そのオブジェクトがどの空間レベルかを調べ、

次に、そのレベルのどこの位置になるかを考えます

僕は、これを一回でできないかな~・・・と思っているんですが

めんどくさそうっすね

では、空間レベルを調べる方法から・・・

とりあえず、ここでは空間レベルを調べるだけでいいんです

そのために、2回に分けたわけですから

考え方としては、座標軸に対して並行な長方形というのは

最小(左上)と最大(右下)の点が決まれば、決定される訳です

なので、左上と右下に注目すれば良いー・・・ってことです

(ここからは説明とか無いです。僕が思ったことです。説明がみたい人はマルペケつくろーへ・・・)

排他的論理和っていうのは要するに2つの数字を引き算して、その答えの絶対値っていうようなもんですね

ここをしっかり抑えてないとダメな気がします

つまり本当は引き算ですむなら引き算にしたいですけれど、マイナスになることもあるから・・・ってことですね

このおかげで、空間レベルが感覚的に、掴める、操作が出来ると思います