このプログラムでは、

	   wall=new PolygonWall(ps,new Vector(3,-3),new Vector(-3,-2),new Vector(-3.5,3.5),new Vector(3,3),new Vector(3,0));

によって「ポリゴン(多角形)の壁」を作っている。

new PolygonWall(の後の5つの変数のうち最初のはDynamicalObjectと同様に、「所属する系ps」が指定されている。その後の4つが壁の頂点を表現していて、new Vector(3,-3)は(3,-3)という場所の頂点座標を表す(PolygonWallの頂点は3以上必要で、いくらでもよい)。

このサンプルプログラムでは四角形の内側を物体が運動しているが、物体が多角形の外を運動して、多角形(PolygonWall)が障害物であるようにもできる。

課題

  1. 頂点の場所を変えてみよう。
  2. 頂点の数を変えてみよう。
  3. 壁を2個にしてみよう。
  4. 物体を2個にしてみよう。
  5. 重力を加えてみよう。
  6. いろんな形の障害物を置いて、その中で物体が運動する感じにしてみよう。
  7. その他思いついたことはなんでもやってみて。