Class Vessel
- Namespace
- NominalSystems.Maritime
- Assembly
- NominalSystems.Maritime.dll
This class defines a vessel that can represent the state of a particular object at sea based on the AIS information.
public class Vessel : GroundObject
- Inheritance
-
Vessel
- Inherited Members
Constructors
Vessel()
Default constructor for the vessel
public Vessel()
Fields
MMSI
[-] The unique identifier for the ship which is the ID of the vessel from AIS.
public int MMSI
Field Value
Name
[-] The publically known vessel name
public string Name
Field Value
Out_PositionReportMsg
[-] The message information about the current position of the vessel from the AIS system.
public PositionReportMessage Out_PositionReportMsg
Field Value
RecentUpdate
[-] The most recent data update time from the metadata
public DateTime RecentUpdate
Field Value
Speed
[m/s] The velocity of the vessel relative to its heading in the direction of the heading.
public double Speed
Field Value
Properties
Heading
[deg] The degree of heading angle that is clockwise from true north relative to the surface of the Earth.
public double Heading { get; set; }
Property Value
Latitude
[deg] The latitude location of the ship in degrees
public override double Latitude { get; set; }
Property Value
Longitude
[deg] The longitude location of the ship in degrees
public override double Longitude { get; set; }
Property Value
Methods
CalculatePCPF(GeodeticElements)
[m] Calculates the PCPF coordinates from a particular LLA set of coordinates. This can be overriden for some more advanced calculations, such as a WGS one.
protected override Vector3 CalculatePCPF(GeodeticElements lla)
Parameters
lla
GeodeticElements[deg] The LLA value
Returns
- Vector3
[m] The PCPF position
OnBegin(double)
Called when the 'Component' is beginning
protected override void OnBegin(double time)
Parameters
time
doublecurrent time (seconds)
OnUpdate(double, double)
Called when the 'Component' should update
protected override void OnUpdate(double time, double step)
Parameters
SetLocation(double, double, double, string)
Updates the location of the ground body relative to the planet. If the location needs to be changed during the runtime, this function should be called and not the updating of the fields.
public override void SetLocation(double latitude, double longitude, double altitude, string planet = "earth")