一步一步学Repast 第二章(把界面显示出来)

本文介绍如何在Repast中逐步构建CarryDropSpace,展示如何使用Object2DGrid创建空间并随机分布Integer对象。CarryDropModel类用于设置DisplaySurface,通过Value2DDisplay显示moneySpace的内容,提供了模拟的基础框架。
摘要由CSDN通过智能技术生成
这一章我们来讨论下CarryDropSpace, 它主要负责界面上的工作。来看一下它的代码:

//  CarryDropSpace.java
package  demo;

import  uchicago.src.sim.space.Object2DGrid; //这是space包中最常见的类,它是以一种非连续的格子来存放object,以x轴和y轴来标识。

   


public   class  CarryDropSpace  {
private Object2DGrid moneySpace;

  
public CarryDropSpace(int xSize, int ySize){
    moneySpace 
= new Object2DGrid(xSize, ySize);

    
for(int i = 0; i < xSize; i++){
      
for(int j = 0; j < ySize; j++){
        moneySpace.putObjectAt(i,j,
new Integer(0));  //把所有的格子都放满 Integer(0) 这个对象。
      }

    }

  }


  
public void spreadMoney(int money){
    
// Randomly place money in moneySpace
    for(int i = 0; i < money; i++){

      
// Choose coordinates
      int x = (int)(Math.random()*(moneySpace.getSizeX()));
      
int y = (int)(Math.random()*(moneySpace.getSizeY()));

      
// Get the value of the object at those coordinates
      int currentValue = getMoneyAt(x, y);
      
// Replace the Integer object with another one with the new value
      moneySpace.putObjectAt(x,y,new Integer(currentValue + 1));   //随机改变
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值