📄 basicmodel.java
字号:
import uchicago.src.sim.engine.SimInit;
import uchicago.src.sim.engine.SimpleModel;
import uchicago.src.sim.gui.DisplaySurface;
import uchicago.src.sim.gui.Object2DDisplay;
import uchicago.src.sim.space.Object2DTorus;
import uchicago.src.sim.util.SimUtilities;
public class basicModel extends SimpleModel {
private int X=30;
private int Y=30;
private int spaceSize=200;
private DisplaySurface dsurf;
private int agentNumber=30;
public static void main(String[] args) {
SimInit init=new SimInit();
init.loadModel(new basicModel(), null, false);
}
public void buildModel() {
agentNumber=30;
System.out.println("builModel is running");
dsurf = new DisplaySurface(this, "Police&Thief Simulation");
Object2DTorus space = new Object2DTorus(spaceSize, spaceSize);
Object2DDisplay display = new Object2DDisplay(space);
dsurf.addDisplayable(display, "Basic Space");
dsurf.display();
int lengthBuilding=81;
for (int i=4;i<(4+lengthBuilding);i++){
int widthBuilding=63;
for (int j=133;j<(133+widthBuilding);j++){
building bricket=new building(i,j,space);
space.putObjectAt(i,j,bricket);
}
}
int lengthBuilding1=70;
for (int i=87;i<(87+lengthBuilding1);i++){
int widthBuilding=63;
for (int j=133;j<(133+widthBuilding);j++){
building bricket1=new building(i,j,space);
space.putObjectAt(i,j,bricket1);
}
}
int lengthBuilding2=38;
for (int i=158;i<(158+lengthBuilding2);i++){
int widthBuilding=63;
for (int j=133;j<(133+widthBuilding);j++){
building bricket2=new building(i,j,space);
space.putObjectAt(i,j,bricket2);
}
}
int lengthBuilding3=192;
for (int i=4;i<(4+lengthBuilding3);i++){
int widthBuilding=63;
for (int j=4;j<(4+widthBuilding);j++){
building bricket2=new building(i,j,space);
space.putObjectAt(i,j,bricket2);
}
}
for (int i=0;i<agentNumber;i++) agentList.add(new anAgent(space,spaceSize));
//agentList.add(myAgent);
}
public void setup() {
super.setup();
System.out.println("setup is running");
if (dsurf != null) dsurf.dispose();
}
public String getName(){
return "Police&Thief";
}
public void step(){
SimUtilities.shuffle(agentList);
//anAgent myAgent=(anAgent) agentList.get(0);
for (int i=0;i<agentList.size();i++)
{
anAgent myAgent=(anAgent) agentList.get(i);
// if (!(myAgent instanceof building))
myAgent.step++;
myAgent.move();
}
dsurf.updateDisplay();
}
public String[] getInitParam() {
String[] params={"spaceSize","X", "Y","agentNumber"};
return params;
}
public void setSpaceSize(int spaceSize) {
this.spaceSize = spaceSize;
}
public void setagentNumber(int agentNumber) {
this.agentNumber = agentNumber;
}
public int getagentNumber() {
return agentNumber;
}
public void setX(int X){
this.X=X;
}
public int getX(){
return X;
}
public void setY(int Y){
this.Y=Y;
}
public int getY(){
return Y;
}
public int getSpaceSize() {
return spaceSize;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -