Class TrackedGroupLocalisation
- Author:
- brian_mil
-
Constructor Summary
ConstructorDescriptionTrackedGroupLocalisation
(TrackedGroupDataUnit difarDataUnit, int locContents, int referenceHydrophones) -
Method Summary
Modifier and TypeMethodDescriptionboolean
double[]
double[]
getLatLong
(int iSide) Return the latlong for a location.int
Gte the number of lat long results (replaced by getAmbiguityCount());int
Get vectors pointing at this localisation in a real world coordinate frame.void
setAngleErrors
(double[] angleErr) Methods inherited from class PamDetection.AbstractLocalisation
addLocContents, getAmbiguityCount, getArrayOrientationVectors, getBearing, getBearing, getBearingError, getBearingReference, getDepth, getErrorDirection, getHeight, getHeightError, getLocError, getOriginLatLong, getParallelError, getParentDetection, getPerpendiculaError, getPlanarAngles, getPlanarVector, getRange, getRangeError, getRealWorldVectors, getReferenceHydrophones, getTimeDelayChIndex, getTimeDelayErrors, getTimeDelays, hasLocContent, removeLocContents, setArrayAxis, setLocContents, setParentDetection, setReferenceHydrophones, setSubArrayType, toString
-
Constructor Details
-
TrackedGroupLocalisation
public TrackedGroupLocalisation(TrackedGroupDataUnit difarDataUnit, int locContents, int referenceHydrophones)
-
-
Method Details
-
getSubArrayType
public int getSubArrayType()- Overrides:
getSubArrayType
in classAbstractLocalisation
- Returns:
- the type of hydrophone sub array used, eg point, planar, line, volumetric.
this can tell us the type of information likely to be available in terms of bearings, etc.
Added DG 6 January 2010
-
getLocContents
- Overrides:
getLocContents
in classAbstractLocalisation
- Returns:
- a set of flags specifying which data are available within this localisation object.
-
bearingAmbiguity
public boolean bearingAmbiguity()- Overrides:
bearingAmbiguity
in classAbstractLocalisation
- Returns:
- true if the bearing is subject to a left right (or rotational) ambiguity about the reference bearing.
-
getWorldVectors
Description copied from class:AbstractLocalisation
Get vectors pointing at this localisation in a real world coordinate frame.
N.B. Real world in this instance means relative to the xyz coordinate frame of the hydrophone array. To get real real world vectors relative to the planet, the vectors will need to be further rotated by the course of the vessel/array and the pitch, roll of the hydrophone array- Overrides:
getWorldVectors
in classAbstractLocalisation
- Returns:
- vectors pointing at this localisation in a real world coordinate frame. For a volumetric array, there should be a single vector since the geometry gives an unambiguous result. For a planar array we will get two vectors, one either side of the plane.
-
getAngles
public double[] getAngles()- Overrides:
getAngles
in classAbstractLocalisation
- Returns:
- Angles to detection in radians. The number of angles will be 0, 1 or 2.
***************** CHANGES FROM AUGUST 2017 *******************
Now oriented the 'globe' differently, so that the first angle can be between -Pi and +Pi or between 0 and 2Pi. The second angle is the elevation angle which is either up (+ve angles) or down (-ve angles) having a range of -Pi/2 to +Pi/2. This change will only affect data from volumetric arrays when the animal is at significant depth. Changes are being made to data from click and whistle detectors which used the older system to maintain compatibility.For a point array, null should be returned.
For a line array a single angle is returned which is the angle relative to the first orientation vector with 0 being in line with the orientation vector (can be thought of as colatitude).
For a planar or volumetric array, two angles should be returned, the first being the colongitude, the second being the latitude. Imagine a globe, with North vertical and 0 longitude pointing along the main axis of the array geometry.
-
getAngleErrors
public double[] getAngleErrors()- Overrides:
getAngleErrors
in classAbstractLocalisation
- Returns:
- Angle errors to detection in radians. The number of angles will be 0, 1 or 2.
For a point array, null should be returned.
For a line array a single error is returned which is the angle relative to the first orientation vector with 0 being in line with the orientation vector (can be thought of as colatitude).
For a planar or volumetric array, two errors should be returned, the first being the error on colatitude, the second being the longitude which will be between 0 and pi for a planar array and either -pi to pi or 0 to 2pi for a volumetric array.
-
setAngleErrors
public void setAngleErrors(double[] angleErr) -
getLatLong
Description copied from class:AbstractLocalisation
Return the latlong for a location. There may be more than one of them if there is side to side ambiguity.- Overrides:
getLatLong
in classAbstractLocalisation
- Parameters:
iSide
- 0, 1, 2, etc.- Returns:
- LatLong information
-
getNumLatLong
public int getNumLatLong()Description copied from class:AbstractLocalisation
Gte the number of lat long results (replaced by getAmbiguityCount());- Overrides:
getNumLatLong
in classAbstractLocalisation
- Returns:
- The number of LatLongs (generally 0 to 2)
-