Map
Class Vessel

java.lang.Object
  extended by PamView.PamSymbol
      extended by Map.Vessel
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, javax.swing.Icon

public class Vessel
extends PamSymbol
implements java.io.Serializable, java.lang.Cloneable

See Also:
Serialized Form

Field Summary
(package private)  Coordinate3d centreOfRotation
           
(package private)  double dimA
           
(package private)  double dimB
           
(package private)  double dimC
           
(package private)  double dimD
           
(package private)  Coordinate3d gpsReceiverPosition
           
(package private)  double pixelsPerMetre
           
(package private)  int predictionArrow
           
private  GpsData shipGps
           
(package private)  double shipIconLength
           
private  LatLong shipLocation
           
 Coordinate3d[] shipOutline
           
 Coordinate3d[] shipPolygon
           
 LatLong[] shipPolygonLatLog
           
(package private)  Coordinate3d shipPosition
           
 java.awt.Color vesselColor
           
(package private)  double vesselLength
           
(package private)  double vesselLengthWidthRatio
           
(package private) static int vesselPolySize
           
(package private)  double vesselWidth
           
 
Fields inherited from class PamView.PamSymbol
ICON_HORIZONTAL_CENTRE, ICON_HORIZONTAL_FILL, ICON_HORIZONTAL_LEFT, ICON_HORIZONTAL_RIGHT, ICON_STYLE_LINE, ICON_STYLE_SYMBOL, ICON_VERTICAL_BOTTOM, ICON_VERTICAL_FILL, ICON_VERTICAL_MIDDLE, ICON_VERTICAL_TOP, serialVersionUID, SYMBOL_CIRCLE, SYMBOL_CROSS, SYMBOL_CROSS2, SYMBOL_CUSTOMPOLYGON, SYMBOL_DIAMOND, SYMBOL_DOUBLETRIANGLEL, SYMBOL_DOUBLETRIANGLER, SYMBOL_HEXAGRAM, SYMBOL_LINESEGMENT, SYMBOL_LINESTART, SYMBOL_NONE, SYMBOL_PENTAGRAM, SYMBOL_POINT, SYMBOL_REGIONSTART, SYMBOL_SQUARE, SYMBOL_STAR, SYMBOL_TRIANGLED, SYMBOL_TRIANGLEL, SYMBOL_TRIANGLER, SYMBOL_TRIANGLEU
 
Constructor Summary
Vessel(java.awt.Color vesselColor)
           
 
Method Summary
 Coordinate3d drawShip(java.awt.Graphics2D g2d, MapRectProjector rectProj)
          Draw the ship
 java.awt.Rectangle drawShip(java.awt.Graphics g, java.awt.Point xy, double pixelsPerMetre, double heading)
           
 java.awt.Color getShipColor()
           
 GpsData getShipGps(boolean predict)
           
 LatLong getShipLLD()
           
private  java.awt.Polygon getShipPolygon(java.awt.Point centre, double pixelsPerMetre, double heading)
           
 Coordinate3d getShipPosition()
           
 double[] getXPoints()
           
 double[] getYPoints()
           
 void paintIcon(java.awt.Component c, java.awt.Graphics g, int x, int y)
           
 void setPixelsPerMetre(double pixelsPerMetre)
           
 void setPredictionArrow(int predictionArrow)
           
 void setShipColor(java.awt.Color shipColor)
           
 void setShipGps(GpsData shipGps)
           
 void setShipOutline()
           
 void setVesselDimension(double dimA, double dimB, double dimC, double dimD)
           
 
Methods inherited from class PamView.PamSymbol
clone, draw, draw, draw, drawArrow, drawArrow, getDrawnPolygon, getFillColor, getHeight, getIconHeight, getIconHorizontalAlignment, getIconStyle, getIconVerticalAlignment, getIconWidth, getLineColor, getLineThickness, getSymbol, getTextCode, getTextCode, getWidth, interpretTextCode, isFill, isSolidShape, makeKeyItem, setFill, setFillColor, setHeight, setIconHorizontalAlignment, setIconStyle, setIconVerticalAlignment, setLineColor, setLineThickness, setSymbol, setWidth, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

vesselLength

double vesselLength

vesselWidth

double vesselWidth

dimA

double dimA

dimB

double dimB

dimC

double dimC

dimD

double dimD

predictionArrow

int predictionArrow

vesselLengthWidthRatio

double vesselLengthWidthRatio

vesselColor

public java.awt.Color vesselColor

shipOutline

public Coordinate3d[] shipOutline

shipPolygon

public Coordinate3d[] shipPolygon

shipPolygonLatLog

public LatLong[] shipPolygonLatLog

vesselPolySize

static int vesselPolySize

shipGps

private GpsData shipGps

centreOfRotation

Coordinate3d centreOfRotation

gpsReceiverPosition

Coordinate3d gpsReceiverPosition

shipLocation

private LatLong shipLocation

shipPosition

Coordinate3d shipPosition

shipIconLength

double shipIconLength

pixelsPerMetre

double pixelsPerMetre
Constructor Detail

Vessel

public Vessel(java.awt.Color vesselColor)
Method Detail

setPixelsPerMetre

public void setPixelsPerMetre(double pixelsPerMetre)

setVesselDimension

public void setVesselDimension(double dimA,
                               double dimB,
                               double dimC,
                               double dimD)

setPredictionArrow

public void setPredictionArrow(int predictionArrow)

getShipColor

public java.awt.Color getShipColor()

setShipColor

public void setShipColor(java.awt.Color shipColor)

setShipOutline

public void setShipOutline()

drawShip

public Coordinate3d drawShip(java.awt.Graphics2D g2d,
                             MapRectProjector rectProj)
Draw the ship

Parameters:
g2d - Graphics context
rectProj - graphics projector
Returns:
3D plot coordinate.

drawShip

public java.awt.Rectangle drawShip(java.awt.Graphics g,
                                   java.awt.Point xy,
                                   double pixelsPerMetre,
                                   double heading)

getShipPolygon

private java.awt.Polygon getShipPolygon(java.awt.Point centre,
                                        double pixelsPerMetre,
                                        double heading)

getShipGps

public GpsData getShipGps(boolean predict)

setShipGps

public void setShipGps(GpsData shipGps)

getShipLLD

public LatLong getShipLLD()

getShipPosition

public Coordinate3d getShipPosition()

paintIcon

public void paintIcon(java.awt.Component c,
                      java.awt.Graphics g,
                      int x,
                      int y)
Specified by:
paintIcon in interface javax.swing.Icon
Overrides:
paintIcon in class PamSymbol

getXPoints

public double[] getXPoints()
Overrides:
getXPoints in class PamSymbol

getYPoints

public double[] getYPoints()
Overrides:
getYPoints in class PamSymbol