Array
Interface HydrophoneLocator

All Known Implementing Classes:
SimpleHydrophoneLocator, StaticHydrophoneLocator, StraightHydrophoneLocator, TerrellaHydrophoneLocator, ThreadingHydrophoneLocator

public interface HydrophoneLocator

HydrophoneLocator is an interface for objects that can work out the true positions of hydrophones based on any or all of the following information

The set positions for each hydrophone from the array dialog

The movement of the vessel (e.g. the hydrophone may thread behind the vessel

Any sensor information available, e.g. depth, Terella, etc.

Author:
Doug Gillespie

Field Summary
static int ANGLE_RE_ARRAY
           
static int ANGLE_RE_NORTH
           
static int ANGLE_RE_SHIP
           
 
Method Summary
 double getPairAngle(long timeMilliseconds, int phone1, int phone2, int angleType)
          Get's the angle between a pair of hydrophones
 double getPairSeparation(long timeMilliseconds, int phone1, int phone2)
          Gets the distance between a pair of hydrophones in metres.
 double getPhoneDepth(long timeMilliseconds, int phoneNo)
          Get's the depth of a specific hydrophone at a given time.
 LatLong getPhoneLatLong(long timeMilliseconds, int phoneNo)
          Get's the LatLong of a specific hydrophone at a given time.
 double getPhoneTilt(long timeMilliseconds, int phoneNo)
          Get's the tilt of a specific hydrophone at a given time.
 LatLong getReferenceLatLong(long timeMilliseconds)
          Gets a reference LatLong for the locator at a given time.
 void notifyModelChanged(int changeType)
           
 

Field Detail

ANGLE_RE_NORTH

static final int ANGLE_RE_NORTH
See Also:
Constant Field Values

ANGLE_RE_SHIP

static final int ANGLE_RE_SHIP
See Also:
Constant Field Values

ANGLE_RE_ARRAY

static final int ANGLE_RE_ARRAY
See Also:
Constant Field Values
Method Detail

getReferenceLatLong

LatLong getReferenceLatLong(long timeMilliseconds)
Gets a reference LatLong for the locator at a given time. For towed hydrophones, this will be the ships gps position at that moment. FOr static phones it will be the static array reference position.

Parameters:
timeMilliseconds - time reference needed for
Returns:
Reference LatLonbg

getPhoneLatLong

LatLong getPhoneLatLong(long timeMilliseconds,
                        int phoneNo)
Get's the LatLong of a specific hydrophone at a given time.

Parameters:
timeMilliseconds - time position needed for
phoneNo - Hydrophone number
Returns:
Hydrophone LatLong

getPhoneDepth

double getPhoneDepth(long timeMilliseconds,
                     int phoneNo)
Get's the depth of a specific hydrophone at a given time.

Parameters:
timeMilliseconds - time depth needed for
phoneNo - Hydrophone number
Returns:
Hydrophone depth

getPhoneTilt

double getPhoneTilt(long timeMilliseconds,
                    int phoneNo)
Get's the tilt of a specific hydrophone at a given time.

Parameters:
timeMilliseconds - time tilt needed for
phoneNo - Hydrophone number
Returns:
Hydrophone tilt

getPairAngle

double getPairAngle(long timeMilliseconds,
                    int phone1,
                    int phone2,
                    int angleType)
Get's the angle between a pair of hydrophones

Parameters:
timeMilliseconds - time angle is needed for
phone1 - First hydrophone
phone2 - Second Hydrophone
angleType - Type of angle - ANGLE_RE_NORTH; ANGLE_RE_SHIP; ANGLE_RE_ARRAY;
Returns:
angle in radians

getPairSeparation

double getPairSeparation(long timeMilliseconds,
                         int phone1,
                         int phone2)
Gets the distance between a pair of hydrophones in metres.

Parameters:
timeMilliseconds - time angle is needed for
phone1 - First hydrophone
phone2 - Second Hydrophone
Returns:
distance in metres.

notifyModelChanged

void notifyModelChanged(int changeType)