System.out.println("renderWagon: tp = " + s + ", p = " + p);
    private void renderWagon(Graphics g, TrainPath s, int n, int type, boolean	    engine) {	final Point p = new Point();	byte direction = s.getDirectionAtDistance(p, (int) ((n + 0.5) *		    WAGON_LENGTH * TrackTile.DELTAS_PER_TILE /		    TileRenderer.TILE_SIZE.width));	System.out.println("renderWagon: tp = " + s + ", p = " + p);        Image image;        if (engine) {            image = trainImages.getOverheadEngineImage(type,		    CompassPoints.eightBitToThreeBit(direction));        } else {            image = trainImages.getOverheadWagonImage(type,		    CompassPoints.eightBitToThreeBit(direction));        }	p.x = (p.x * TileRenderer.TILE_SIZE.width / TrackTile.DELTAS_PER_TILE);	p.y = (p.y * TileRenderer.TILE_SIZE.height / TrackTile.DELTAS_PER_TILE);        g.drawImage(image, p.x - TileRenderer.TILE_SIZE.width / 2, p.y - TileRenderer.TILE_SIZE.height / 2, null);    }