⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keepaway.java

📁 MASON代表多主体邻里或网络仿真(Multi-Agent Simulator of Neighborhoods or Networks)。它是乔治梅森大学用Java开发的离散事件多主体仿真核心库
💻 JAVA
字号:
package sim.app.keepaway;import java.awt.*;import sim.engine.*;import sim.field.continuous.*;import ec.util.*;import sim.util.*;import java.io.*;public /*strictfp*/ class Keepaway extends SimState    {    /** @todo handle realocation of grids when these two are changed */    public double xMin = 0;    public double xMax = 100;    public double yMin = 0;    public double yMax = 100;        public Continuous2D fieldEnvironment;        /** Creates a Keepaway simulation with the given random number seed. */    public Keepaway(long seed)        {        this(seed, 100, 100);        }            public Keepaway(long seed, int width, int height)        {        super(new MersenneTwisterFast(seed), new Schedule(2));        xMax = width; yMax = height;        createGrids();        }    void createGrids()        {               fieldEnvironment = new Continuous2D(25, (xMax - xMin), (yMax - yMin));        }        /** Resets and starts a simulation */    public void start()        {        super.start();  // clear out the schedule        createGrids();        Bot b;        Vector2D loc = new Vector2D(0, 0);                // bot 1-1          loc.x = random.nextDouble()*xMax;        loc.y = random.nextDouble()*yMax;        b = new Bot(loc.x, loc.y, Color.red);        b.cap = 0.65;        fieldEnvironment.setObjectLocation(b, new Double2D(loc.x, loc.y));        schedule.scheduleRepeating(b);                // bot 2-1           loc.x = random.nextDouble()*xMax;        loc.y = random.nextDouble()*yMax;        b = new Bot(loc.x, loc.y, Color.blue);        b.cap = 0.5;        fieldEnvironment.setObjectLocation(b, new Double2D(loc.x, loc.y));        schedule.scheduleRepeating(b);                        // bot 2-2          loc.x = random.nextDouble()*xMax;        loc.y = random.nextDouble()*yMax;        b = new Bot(loc.x, loc.y, Color.blue);        b.cap = 0.5;        fieldEnvironment.setObjectLocation(b, new Double2D(loc.x, loc.y));        schedule.scheduleRepeating(b);                // bot 2-3          loc.x = random.nextDouble()*xMax;        loc.y = random.nextDouble()*yMax;        b = new Bot(loc.x, loc.y, Color.blue);        b.cap = 0.5;        fieldEnvironment.setObjectLocation(b, new Double2D(loc.x, loc.y));        schedule.scheduleRepeating(b);                // ball        Ball ba;        loc.x = random.nextDouble()*xMax;        loc.y = random.nextDouble()*yMax;        ba = new Ball(loc.x, loc.y);        fieldEnvironment.setObjectLocation(ba, new Double2D(loc.x, loc.y));        schedule.scheduleRepeating(ba);        }    public static void main(String[] args)        {        doLoop(Keepaway.class, args);        System.exit(0);        }            }                    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -