Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.eireneh.bible.control.map
Class BrownianRule  view BrownianRule download BrownianRule.java

java.lang.Object
  extended bycom.eireneh.bible.control.map.AbstractRule
      extended bycom.eireneh.bible.control.map.BrownianRule
All Implemented Interfaces:
Rule

public class BrownianRule
extends AbstractRule

BrownianRule.
Distribution Licence:
Project B is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 2 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
The License is available on the internet here, by writing to Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA, Or locally at the Licence link below.
The copyright to this program is held by it's authors.

Version:
D0.I0.T0

Field Summary
private  float heat
          The max random jiggle
private  java.util.Random rand
          The random number generator
 
Fields inherited from class com.eireneh.bible.control.map.AbstractRule
scale
 
Constructor Summary
BrownianRule(float heat)
          Basic Constructor - How much is it possible to a node to move randomly each turn.
 
Method Summary
 Position[] getDesiredPosition(Map map, int ord)
          Specify where it would like a node to be positioned in space.
 
Methods inherited from class com.eireneh.bible.control.map.AbstractRule
getScale, scale, scale, setScale
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

heat

private float heat
The max random jiggle


rand

private java.util.Random rand
The random number generator

Constructor Detail

BrownianRule

public BrownianRule(float heat)
Basic Constructor - How much is it possible to a node to move randomly each turn. a heat of 1.0 means that any node could move roughly anywhere across the board each turn, so a heat of 0.001 is probably more useful. To be precise the heat is the standard deviation in a gaussian distribution.

Method Detail

getDesiredPosition

public Position[] getDesiredPosition(Map map,
                                     int ord)
Specify where it would like a node to be positioned in space. Rules return an array of positions where the average of them specifies the real desired position. So to specify a single place simply return an array of one position. The positions are added to the results from all Rules so to specify a single position more strongly, return an array conataining that position many times.