org.holtz.zoe
Class World

java.lang.Object
  extended by java.util.Observable
      extended by org.holtz.zoe.World

public class World
extends java.util.Observable

A Zoe universe, with all the parameters to control and replay its evolution.

Author:
Brian Holtz

Field Summary
static int AgeToDataStackLimit
           
static double AlgaeDistributionRandomness
           
static boolean AutoStart
           
static double BiggerThanMinSizeToSeeEverything
           
static double BirthEfficiency
           
static double BiteEfficiency
           
static double BiteFractionOfOwnCircumference
           
static double BrownianMotionPerTurn
           
static int BugMaxSize
           
static int BugMinSize
           
 java.util.ArrayList<Bug> bugs
           
static boolean ChildrenOfAMatingShareGenotype
           
 int cycle
           
static boolean ForgetMateAfterFirstChild
           
static int GarbageCollectionFreq
           
 int height
           
static int Height
           
static int InitialBugCount
           
static int InitialPixelsPerBug
           
static double InvisibilityThreshold
           
 java.util.ArrayList<Joule> joules
           
static double JoulesPerUnitBodyAreaPerTurn
           
static boolean LoadBugFiles
           
static double MaxBiteRange
           
static int MaxColorMutation
           
static double MaxEffortlessTurn
           
static int MaxGenesOfRandomSpecies
           
static double MaxJoule
           
static double MaxLookRange
           
static double MaxNativityDistance
           
static boolean MaxSize
           
static int MaxThoughtsPerTurn
           
static int MinMilliSecsPerTurn
           
static double MinPostPartumStrengthLevel
           
static double MoveNoise
           
static double MutantChildrenFreq
           
static double NewAlgaePerTurnPerPixel
           
static int NewbornDataStackLimit
           
static double NewJoulesPerTurnPerPixel
           
static java.util.Properties props
           
 java.util.Random random
           
 long seed
           
static int Seed
           
static int SplitInvisiblityCycles
           
 java.util.Date start
           
static double StrengthToMove
           
static boolean Trace
           
 int width
           
static int Width
           
 
Constructor Summary
World(java.awt.Dimension size)
           
 
Method Summary
 void add(Bug newBug)
           
 void add(Joule newJoule)
           
 double brownianMotion()
           
 Bug closestBug(Bug from, double maxRange)
           
 Bug closestBug(Bug from, double maxRange, double minRange)
           
 ZObject closestObject(Bug from, double maxRange)
           
 ZObject closestObject(Bug from, double maxRange, double minRange)
           
static java.awt.Color color(int key)
           
static java.awt.Color color(java.lang.String str)
           
static void initProperties()
           
 double joules()
           
 double mass()
           
 Point midpoint()
           
static java.awt.Color mutateColor(java.awt.Color color1, java.awt.Color color2)
           
static java.awt.Color mutateColor(java.awt.Color color, java.util.Random random)
           
 boolean nextBugCycle()
           
 void nextWorldCycle()
           
 int numDead()
           
 int numLive()
           
 int numSpecies()
           
 double radius()
           
 void remove(Bug bug)
           
 void remove(Joule deadJoule)
           
 void removeGoneBugs()
           
 void resize(java.awt.Dimension newSize)
           
 double strength()
           
 Genotype topSpecies()
           
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

Trace

public static boolean Trace

Seed

public static int Seed

LoadBugFiles

public static boolean LoadBugFiles

AutoStart

public static boolean AutoStart

InitialBugCount

public static int InitialBugCount

InitialPixelsPerBug

public static int InitialPixelsPerBug

MaxGenesOfRandomSpecies

public static int MaxGenesOfRandomSpecies

MaxSize

public static boolean MaxSize

Width

public static int Width

Height

public static int Height

BugMaxSize

public static int BugMaxSize

BugMinSize

public static int BugMinSize

MaxJoule

public static double MaxJoule

NewJoulesPerTurnPerPixel

public static double NewJoulesPerTurnPerPixel

NewAlgaePerTurnPerPixel

public static double NewAlgaePerTurnPerPixel

AlgaeDistributionRandomness

public static double AlgaeDistributionRandomness

JoulesPerUnitBodyAreaPerTurn

public static double JoulesPerUnitBodyAreaPerTurn

BrownianMotionPerTurn

public static double BrownianMotionPerTurn

MaxThoughtsPerTurn

public static int MaxThoughtsPerTurn

StrengthToMove

public static double StrengthToMove

MaxEffortlessTurn

public static double MaxEffortlessTurn

MaxBiteRange

public static double MaxBiteRange

MaxLookRange

public static double MaxLookRange

BiteFractionOfOwnCircumference

public static double BiteFractionOfOwnCircumference

BiteEfficiency

public static double BiteEfficiency

BirthEfficiency

public static double BirthEfficiency

MoveNoise

public static double MoveNoise

InvisibilityThreshold

public static double InvisibilityThreshold

BiggerThanMinSizeToSeeEverything

public static double BiggerThanMinSizeToSeeEverything

SplitInvisiblityCycles

public static int SplitInvisiblityCycles

MinPostPartumStrengthLevel

public static double MinPostPartumStrengthLevel

MaxNativityDistance

public static double MaxNativityDistance

MutantChildrenFreq

public static double MutantChildrenFreq

ForgetMateAfterFirstChild

public static boolean ForgetMateAfterFirstChild

ChildrenOfAMatingShareGenotype

public static boolean ChildrenOfAMatingShareGenotype

AgeToDataStackLimit

public static int AgeToDataStackLimit

NewbornDataStackLimit

public static int NewbornDataStackLimit

GarbageCollectionFreq

public static int GarbageCollectionFreq

MinMilliSecsPerTurn

public static int MinMilliSecsPerTurn

MaxColorMutation

public static int MaxColorMutation

width

public int width

height

public int height

bugs

public java.util.ArrayList<Bug> bugs

joules

public java.util.ArrayList<Joule> joules

cycle

public int cycle

start

public java.util.Date start

seed

public long seed

random

public java.util.Random random

props

public static java.util.Properties props
Constructor Detail

World

public World(java.awt.Dimension size)
Method Detail

initProperties

public static void initProperties()

brownianMotion

public double brownianMotion()

midpoint

public Point midpoint()

radius

public double radius()

add

public void add(Bug newBug)

add

public void add(Joule newJoule)

remove

public void remove(Joule deadJoule)

remove

public void remove(Bug bug)

strength

public double strength()

mass

public double mass()

joules

public double joules()

topSpecies

public Genotype topSpecies()

numLive

public int numLive()

numDead

public int numDead()

numSpecies

public int numSpecies()

closestBug

public Bug closestBug(Bug from,
                      double maxRange)

closestBug

public Bug closestBug(Bug from,
                      double maxRange,
                      double minRange)

closestObject

public ZObject closestObject(Bug from,
                             double maxRange)

closestObject

public ZObject closestObject(Bug from,
                             double maxRange,
                             double minRange)

resize

public void resize(java.awt.Dimension newSize)

nextWorldCycle

public void nextWorldCycle()

nextBugCycle

public boolean nextBugCycle()

removeGoneBugs

public void removeGoneBugs()

mutateColor

public static java.awt.Color mutateColor(java.awt.Color color,
                                         java.util.Random random)

mutateColor

public static java.awt.Color mutateColor(java.awt.Color color1,
                                         java.awt.Color color2)

color

public static java.awt.Color color(java.lang.String str)

color

public static java.awt.Color color(int key)