07/02/21 23:22:03 CcuCUJeo
javaはわからんが、
if ((rand.nextInt()>>>1)%2==0) { // 縦分割
は、何やってるん?
ゼロ補充して右シフトすると010010 => 00100
で、さらにその値を2で割ってあまりを0と比べる・・・・?
普通に、(rand.nextInt()%2==0じゃ駄目なのかい?
あと、split_coord_y = (rand.nextInt()>>>(rect_ly+MINIMUM_RECT_SIZE))%(rect_hy-MINIMUM_RECT_SIZE);
も何をやりたいのかわからない。
split_coord_yに乱数をかなりシフト演算させてどうしたいの?
さらに、それをまた不思議な計算値であまり出したり・・・・???
もしかして、もしかすると
C++のコードの
split_coord_y = g_random_int_range(rect_parent->ly + MINIMUM_RECT_SIZE, rect_parent->hy - MINIMUM_RECT_SIZE);
の意味を読み間違えてない?