1   import simworldobjects.*;
2   
3   /**
4   * Models a simple world with a 'maze' of walls
5   *
6   * @author Graham Ritchie
7   */
8   public class MazeWorld extends BasicSimWorld
9   {
10      /**
11      * Creates the MazeWorld
12      */
13      public MazeWorld()
14      {
15          // initialise the SimWorld size
16          super(1000,1000,1000);
17          
18          // add maze walls
19          
20          // top
21          SimWall wall1=new SimWall(500.0,0.0,50.0,0.0,800.0,10.0);
22          addObject(wall1);
23          
24          // bottom
25          SimWall wall2=new SimWall(500.0,0.0,650.0,0.0,800.0,10.0);
26          addObject(wall2);
27          
28          // right
29          SimWall wall3=new SimWall(900.0,0.0,350.0,90.0,600.0,10.0);
30          addObject(wall3);
31          
32          //left
33          SimWall wall4=new SimWall(100.0,0.0,350.0,90.0,600.0,10.0);
34          addObject(wall4);
35          
36          // inner bottom
37          SimWall wall5=new SimWall(430.0,0.0,520.0,0.0,650.0,10.0);
38          addObject(wall5);
39          
40          // inner top
41          SimWall wall6=new SimWall(500.0,0.0,150.0,0.0,500.0,10.0);
42          addObject(wall6);
43          
44          // inner left
45          SimWall wall7=new SimWall(250.0,0.0,335.0,90.0,360.0,10.0);
46          addObject(wall7);
47          
48          // small top right
49          SimWall wall8=new SimWall(750.0,0.0,200.0,90.0,110.0,10.0);
50          addObject(wall8);
51          
52          // small bottom right
53          SimWall wall9=new SimWall(750.0,0.0,470.0,90.0,110.0,10.0);
54          addObject(wall9);
55          
56          // middle
57          SimWall wall10=new SimWall(470.0,0.0,320.0,90.0,200.0,10.0);
58          addObject(wall10);
59          
60      }
61  }
62