MASON-INTEREST-L Archives

March 2012

MASON-INTEREST-L@LISTSERV.GMU.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Randolph Latimer <[log in to unmask]>
Reply To:
MASON Multiagent Simulation Toolkit <[log in to unmask]>
Date:
Mon, 19 Mar 2012 09:53:05 -0400
Content-Type:
text/plain
Parts/Attachments:
text/plain (56 lines)
I'm starting out again with Mason and will appreciate some help with 
what I expect are fairly simple questions.

I'm transferring a Coordination Game model from Ascape to Mason.
The Ascape code is described here, if anyone's interested -
http://ascape.sourceforge.net/manual/Section3.html

In Mason, I'm using the Schoolyard model as a starter.
In Coordination Game, each agent needs a variable for its color.
I'm trying something like this (I don't think I'm implementing Mason 
SimpleColorMap correctly):

public class CoordinationPlayer implements Steppable
{
	//public static final double MAX_FORCE = 3.0;
	protected SimpleColorMap colormap = new 
SimpleColorMap(0,1,Color.black,Color.white);
	public Color color;
	public  MersenneTwisterFast random = new MersenneTwisterFast();

	public CoordinationPlayer()
	{
		if (random.nextInt(2) == 0)
			color = Color.red;// colormap.getColor(.2);
		else color = Color.yellow; //colormap.getColor(.7);
	}

	public Color getColor()
	{
	     return color;
	}

In CoordinationGameWithUI, - the color is displayed here, in this 
hybrid code from the Schoolyard model.
I'm trying to set the color with setPortryalForClass, where each class 
object has its own color.
This isn't working correctly:

	public void setupPortrayals()
	{
		CoordinationPlayers students = (CoordinationPlayers) state;

		yardgridPortrayal.setField(students.yardgrid);
I'M TRYING TO SET THE COLOR HERE:
		yardgridPortrayal.setPortrayalForClass(CoordinationPlayer.class,
                      new 
RectanglePortrayal2D(CoordinationPlayer.getColor(),true)); //new
                                                  
RectanglePortrayal2D(Color.red,true));
		yardgridPortrayal.setPortrayalForNull(new 
RectanglePortrayal2D(Color.blue,true));


Thanks for any help -
Randy Latimer

ATOM RSS1 RSS2