Table of Contents

Class Vessel

Namespace
NominalSystems.Universe
Assembly
NominalSystems.Universe.dll

[Nominal] This class defines a vessel that can represent the state of a particular object at sea level based. This can also be used to connect to maritime data-streams and represent a position of a vessel. This object will always exist on the surface of a WGS-84 (World Geodetic System) globe, which is the true non-spherical shape of the Earth.


public class Vessel : Vehicle
Inheritance
Vessel
Extension Methods

Constructors

Vessel()

Default constructor

protected Vessel()

Fields

MMSI

The unique identifier for the ship using the Maritime Mobile Service Identity (MMSI) number.

[Unit(UnitType.NONE)]
public int MMSI

Field Value

int

Speed

The speed of the vessel in meters per second along the surface of the Earth's water.

[Unit(UnitType.METRE_PER_SECOND)]
public double Speed

Field Value

double

Properties

Heading

The degree of heading angle that is clockwise from true north relative to the surface of the Earth.

[Unit(UnitType.DEGREE)]
public double Heading { get; set; }

Property Value

double

Methods

OnCreate()

Called when the 'Component' is created from the controller.

protected override void OnCreate()

OnLoad(double)

Called after all of the data has been loaded from a save state on this object. This enables any post-load operations to be performed and extra data to be loaded from the metadata.

protected override void OnLoad(double time)

Parameters

time double

[s] The current clock time of the simulation

OnUpdate(double, double)

Called when the object should update from the simulation tick. This will take in a time and a step, where the time is the time of the clock before updating the object.

protected override void OnUpdate(double time, double step)

Parameters

time double

[s] Current time of the simulation before the update

step double

[s] The time-step to update during this tick

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")

Parameters

latitude double

[deg] Latitude of the body

longitude double

[deg] Longitude of the body

altitude double

[m] Altitude of the body

planet string

[-] The name of the stationed body