sim.portrayal.grid
Class HexaSparseGridPortrayal2D
java.lang.Object
sim.portrayal.FieldPortrayal
sim.portrayal.FieldPortrayal2D
sim.portrayal.grid.SparseGridPortrayal2D
sim.portrayal.grid.HexaSparseGridPortrayal2D
- All Implemented Interfaces:
- java.io.Serializable, Portrayal, Portrayal2D
public class HexaSparseGridPortrayal2D
- extends SparseGridPortrayal2D
Portrayal for hexagonal grids (each cell has six equally-distanced neighbors). It can draw
either continuous and descrete sparse fields.
- See Also:
- Serialized Form
Field Summary |
static double |
HEXAGONAL_RATIO
The ratio of the width of a hexagon to its height: 1 / Sin(60 degrees), otherwise known as 2 / Sqrt(3) |
Method Summary |
Int2D |
getLocation(DrawInfo2D info)
|
java.awt.geom.Point2D.Double |
getPositionInFieldPortrayal(java.lang.Object object,
DrawInfo2D info)
Returns the location of the given object were it to be drawn on the screen. |
protected void |
hitOrDraw(java.awt.Graphics2D graphics,
DrawInfo2D info,
Bag putInHere)
Instead of overriding the draw and hitObjects methods, you can optionally override
this method to provide both the draw(...) and hitObjects(...)
functionality in a single method, as it's common that these two methods have nearly
identical code. |
Methods inherited from class sim.portrayal.FieldPortrayal |
getDefaultNullPortrayal, getField, getInspector, getName, getPortrayalForAll, getPortrayalForNonNull, getPortrayalForNull, getPortrayalForObject, getPortrayalForRemainder, getStatus, isImmutableField, setImmutableField, setPortrayalForAll, setPortrayalForClass, setPortrayalForNonNull, setPortrayalForNull, setPortrayalForObject, setPortrayalForRemainder, setSelected |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
HEXAGONAL_RATIO
public static final double HEXAGONAL_RATIO
- The ratio of the width of a hexagon to its height: 1 / Sin(60 degrees), otherwise known as 2 / Sqrt(3)
HexaSparseGridPortrayal2D
public HexaSparseGridPortrayal2D()
HexaSparseGridPortrayal2D
public HexaSparseGridPortrayal2D(DrawPolicy policy)
getLocation
public Int2D getLocation(DrawInfo2D info)
- Overrides:
getLocation
in class SparseGridPortrayal2D
getPositionInFieldPortrayal
public java.awt.geom.Point2D.Double getPositionInFieldPortrayal(java.lang.Object object,
DrawInfo2D info)
- Description copied from class:
FieldPortrayal2D
- Returns the location of the given object were it to be drawn on the screen. Negative locations are acceptable.
If null is returned, then the portrayal is unable to determine the location of the object. The default implementation
returns null.
- Overrides:
getPositionInFieldPortrayal
in class SparseGridPortrayal2D
hitOrDraw
protected void hitOrDraw(java.awt.Graphics2D graphics,
DrawInfo2D info,
Bag putInHere)
- Description copied from class:
FieldPortrayal2D
- Instead of overriding the draw and hitObjects methods, you can optionally override
this method to provide both the draw(...) and hitObjects(...)
functionality in a single method, as it's common that these two methods have nearly
identical code. You should test which operation to do
based on whether or not graphics is null (if it is, you're hitting, else you're drawing).
- Overrides:
hitOrDraw
in class SparseGridPortrayal2D