複雑系コンサルティング
前方180度だけ扇形の探索をしたいのですがプログラムがうまく動きません。
このコードを完全に読み解くことは出来ませんでしたが、仕様通りのコードを描くことは出来ました。
前回360°付近の話をしましたが場合分けをする必要はありませんでした。
Agt_Init{my.X = rnd()*50 my.Y = rnd() *50 my.Direction = rnd() *360}//初期配置 Agt_Step{ //変数宣言 dim agtset_ as agtset dim agt_ as agt dim direction_ as double //変数初期化 clearagtset(my._agtset_) //円形 MakeOneAgtSetAroundOwn(agtset_, 5, universe.field.subject, False) //扇形 for each agt_ in agtset_ //自身の向く角度とagtとの角度を求める -180°<=180°を取る模様 direction_ = my.Direction - GetDirection(my.X, my.Y, agt_.X, agt_.Y, universe.field) /*=-180~180*/ if -90 <= direction_ and direction_ <= 90 then //左右を判別するなら-90<0,0<90とすればいいかと addagt(my._agtset_, agt_) end if next agt_ }
参考にコード書き直してみます!遅い時間にわざわざコードまでありがとうございました。
このコードを完全に読み解くことは出来ませんでしたが、仕様通りのコードを描くことは出来ました。
前回360°付近の話をしましたが場合分けをする必要はありませんでした。
Agt_Init{my.X = rnd()*50 my.Y = rnd() *50 my.Direction = rnd() *360}//初期配置 Agt_Step{ //変数宣言 dim agtset_ as agtset dim agt_ as agt dim direction_ as double //変数初期化 clearagtset(my._agtset_) //円形 MakeOneAgtSetAroundOwn(agtset_, 5, universe.field.subject, False) //扇形 for each agt_ in agtset_ //自身の向く角度とagtとの角度を求める -180°<=180°を取る模様 direction_ = my.Direction - GetDirection(my.X, my.Y, agt_.X, agt_.Y, universe.field) /*=-180~180*/ if -90 <= direction_ and direction_ <= 90 then //左右を判別するなら-90<0,0<90とすればいいかと addagt(my._agtset_, agt_) end if next agt_ }