|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.kolls.railworld.RailSegment
net.kolls.railworld.segment.FourWay
public class FourWay
Track crossing itself without switching capabilities.
| Field Summary | |
|---|---|
static int |
POINT_BEGINA
Starting segment of the first track |
static int |
POINT_BEGINB
Starting segment of the second track |
static int |
POINT_ENDA
Ending segment of the first track |
static int |
POINT_ENDB
Ending segment of the second track |
| Fields inherited from class net.kolls.railworld.RailSegment |
|---|
dests, ec, MOUSE_NEAR, pts, RAIL_BED_WIDTH, RAIL_WIDTH, trains |
| Constructor Summary | |
|---|---|
FourWay(RailSegment ba,
RailSegment ena,
RailSegment bb,
RailSegment enb,
java.awt.geom.Point2D pos)
Create a four way crossing |
|
| Method Summary | |
|---|---|
boolean |
canErase()
Can this segment be erased? In some cases, other segments must be erased first. |
SegmentEditPoint |
createSEP(int ptIdx,
RailSegment anchor)
Given a point index in the pts array and possibly a railsegment to attach, return a segmenteditpoint if such attachment is possible. |
RailSegment |
dest(RailSegment source)
Each rail segment must at the very least tell us where it comes from and where it goes, currently. |
void |
draw(int z,
java.awt.Graphics2D gc)
Draw the segment. |
javax.swing.JPanel |
editPanel()
You are guaranteed that the variable RailSegment.ec will be set prior to this call. |
java.awt.geom.Point2D |
getPoint(RailSegment s,
double pos)
|
boolean |
isDynamic()
Dynamic segments receive additional events while the game is running; non-dynamic segments are only asked to draw z levels 1 and 2 at draw static time. |
Distance |
length()
all segments have a length can be 0 for signals, etc. |
java.lang.String |
mouseOver(java.awt.geom.Point2D pos)
Whenever a user mouses over the canvas, all dynamic segments receive this event. |
void |
recomp()
Called when changes are made; recompute or update any associated values. |
boolean |
singleton()
Singleton segments may only have one train in them at a time. |
| Methods inherited from class net.kolls.railworld.RailSegment |
|---|
carHidden, click, destNZ, enter, getDest, getDests, getPoint, getPoints, nearEditPoint, pixelStep, setDest, setPoint, step, trains, update, update |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final int POINT_BEGINA
public static final int POINT_ENDA
public static final int POINT_BEGINB
public static final int POINT_ENDB
| Constructor Detail |
|---|
public FourWay(RailSegment ba,
RailSegment ena,
RailSegment bb,
RailSegment enb,
java.awt.geom.Point2D pos)
ba - Beginning segment of track Aena - Ending segment of track Abb - Beginning segment of track Benb - Ending segment of track Bpos - Location on map| Method Detail |
|---|
public void recomp()
RailSegment
recomp in class RailSegmentpublic Distance length()
RailSegment
length in class RailSegmentDistance of the segment.
public java.awt.geom.Point2D getPoint(RailSegment s,
double pos)
getPoint in class RailSegments - The segment of originpos - Percentage (0-1) along the segment
Point2D indicating the actual point that location representspublic boolean canErase()
RailSegment
canErase in class RailSegmentpublic java.lang.String mouseOver(java.awt.geom.Point2D pos)
RailSegment
mouseOver in class RailSegmentpos - The mouse position
RailSegment.isDynamic()public RailSegment dest(RailSegment source)
RailSegment
dest in class RailSegmentsource - The rail segment of origin
null if there is none.
public void draw(int z,
java.awt.Graphics2D gc)
RailSegment
draw in class RailSegmentz - The currently z-layer to drawgc - A Graphics2D graphics context.RailSegment.isDynamic()public boolean isDynamic()
RailSegment
isDynamic in class RailSegmentdraw events
and click events.RailSegment.draw(int, Graphics2D),
RailSegment.click(Point2D, RailCanvas)public boolean singleton()
RailSegment
singleton in class RailSegmentpublic javax.swing.JPanel editPanel()
RailSegmentRailSegment.ec will be set prior to this call.
So if you need to refresh the canvas or make any changes to it, you can use
that variable.
editPanel in class RailSegmentJPanel to display in the sidebar to edit this segment's properties. Please keep width at 200 pixels top.
public SegmentEditPoint createSEP(int ptIdx,
RailSegment anchor)
RailSegment
createSEP in class RailSegmentptIdx - The index into the pts array.anchor - The segment that desires to attach. (Note: do not attach the segment
automatically; it will be called through the anchor method in the edit point).
null.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||