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

📄 basicmodel.java

📁 一个repastJ的例子
💻 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 + -