Package com.irurueta.navigation.frames
Class NEDFrame
java.lang.Object
com.irurueta.navigation.frames.NEDFrame
- All Implemented Interfaces:
Frame
,Serializable
,Cloneable
Contains position, velocity and coordinates transformation matrix expressed in NED frame.
Position is expressed as latitude, longitude and height.
Velocity of body frame is expressed with respect ECEF frame and resolved along north, east and down axes,
as defined in
FrameType.LOCAL_NAVIGATION_FRAME
.- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate CoordinateTransformation
Body to NED coordinate transformation matrix.private double
Height expressed in meters.private double
Latitude expressed in radians.private double
Longitude expressed in radians.static final int
Number of coordinates representing velocity.private double
Coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.private double
Coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.private double
Coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis. -
Constructor Summary
ConstructorsConstructorDescriptionNEDFrame()
Constructor.NEDFrame
(double latitude, double longitude, double height) Constructor.NEDFrame
(double latitude, double longitude, double height, double vn, double ve, double vd) Constructor.NEDFrame
(double latitude, double longitude, double height, double vn, double ve, double vd, CoordinateTransformation c) Constructor.NEDFrame
(double latitude, double longitude, double height, CoordinateTransformation c) Constructor.NEDFrame
(double latitude, double longitude, double height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.NEDFrame
(double latitude, double longitude, double height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD, CoordinateTransformation c) Constructor.NEDFrame
(double latitude, double longitude, com.irurueta.units.Distance height) Constructor.NEDFrame
(double latitude, double longitude, com.irurueta.units.Distance height, double vn, double ve, double vd) Constructor.NEDFrame
(double latitude, double longitude, com.irurueta.units.Distance height, double vn, double ve, double vd, CoordinateTransformation c) Constructor.NEDFrame
(double latitude, double longitude, com.irurueta.units.Distance height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.NEDFrame
(double latitude, double longitude, com.irurueta.units.Distance height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD, CoordinateTransformation c) Constructor.Constructor.Constructor.NEDFrame
(NEDPosition position) Constructor.NEDFrame
(NEDPosition position, CoordinateTransformation c) Constructor.NEDFrame
(NEDPosition position, NEDVelocity velocity) Constructor.NEDFrame
(NEDPosition position, NEDVelocity velocity, CoordinateTransformation c) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height, double vn, double ve, double vd) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height, double vn, double ve, double vd, CoordinateTransformation c) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height, CoordinateTransformation c) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD, CoordinateTransformation c) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height, double vn, double ve, double vd) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height, double vn, double ve, double vd, CoordinateTransformation c) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height, CoordinateTransformation c) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.NEDFrame
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD, CoordinateTransformation c) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected Object
clone()
Makes a copy of this instance.void
Copies data of provided instance into this instance.void
Copies this instance data into provided instance.boolean
Checks if provided instance has exactly the same contents as this instance.boolean
Checks if provided instance has contents similar to this instance up to provided threshold value.boolean
Checks if provided object is an ECEFFrame having exactly the same contents as this instance.Gets coordinate transformation matrix.void
Gets coordinate transformation matrix.com.irurueta.algebra.Matrix
Gets coordinate transformation matrix.void
getCoordinateTransformationMatrix
(com.irurueta.algebra.Matrix result) Gets coordinate transformation matrix.com.irurueta.geometry.Rotation3D
Gets coordinate transformation as a new 3D rotation instance.void
getCoordinateTransformationRotation
(com.irurueta.geometry.Rotation3D result) Gets coordinate transformation as a 3D rotation.double
Gets height expressed in meters.com.irurueta.units.Distance
Gets height.void
getHeightDistance
(com.irurueta.units.Distance result) Gets height.double
Gets latitude expressed in radians.com.irurueta.units.Angle
Gets latitude.void
getLatitudeAngle
(com.irurueta.units.Angle result) Gets latitude.double
Gets longitude expressed in radians.com.irurueta.units.Angle
Gets longitude.void
getLongitudeAngle
(com.irurueta.units.Angle result) Gets longitude.Gets curvilinear position, expressed in terms of latitude, longitude and height.void
getPosition
(NEDPosition result) Gets curvilinear position, expressed in terms of latitude, longitude and height.com.irurueta.units.Speed
Gets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.void
getSpeedD
(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.com.irurueta.units.Speed
Gets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.void
getSpeedE
(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.com.irurueta.units.Speed
Gets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.void
getSpeedN
(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.double
getVd()
Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.double
getVe()
Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.Gets velocity coordinates of body frame resolved along North, East, Down axes.void
getVelocity
(NEDVelocity result) Gets velocity coordinates of body frame resolved along North, East, Down axes.double
Gets norm of velocity expressed in meters per second (m/s), which represents the speed of the body.com.irurueta.units.Speed
Gets norm of velocity, which represents the speed of the body.void
getVelocityNormAsSpeed
(com.irurueta.units.Speed result) Gets norm of velocity, which represents the speed of the body.double
getVn()
Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.int
hashCode()
Computes and returns hash code for this instance.static boolean
Checks whether provided coordinate transformation matrix is valid or not.void
Sets coordinate transformation matrix.void
setCoordinateTransformationMatrix
(com.irurueta.algebra.Matrix matrix) Sts coordinate transformation matrix keeping current source and destinationFrameType
.void
setCoordinateTransformationMatrix
(com.irurueta.algebra.Matrix matrix, double threshold) Sets coordinate transformation matrix keeping current source and destinationFrameType
.void
setCoordinateTransformationRotation
(com.irurueta.geometry.Rotation3D rotation) Sets coordinate transformation from 3D rotation and keeping current source and destinationFrameType
.void
setHeight
(double height) Sets height expressed in meters.void
setHeightDistance
(com.irurueta.units.Distance heightDistance) Sets height.void
setLatitude
(double latitude) Sets latitude expressed in radians.void
setLatitudeAngle
(com.irurueta.units.Angle latitudeAngle) Sets latitude.void
setLongitude
(double longitude) Sets longitude expressed in radians.void
setLongitudeAngle
(com.irurueta.units.Angle longitudeAngle) Sets longitude.void
setPosition
(double latitude, double longitude, double height) Sets body position.void
setPosition
(double latitude, double longitude, com.irurueta.units.Distance height) Sets body position.void
setPosition
(NEDPosition position) Sets curvilinear position, expressed in terms of latitude, longitude and height.void
setPosition
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height) Sets body position.void
setPosition
(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height) Sets body position.void
setSpeedCoordinates
(com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Sets velocity coordinates of body frame resolved along North, East, Down axes.void
setSpeedD
(com.irurueta.units.Speed speedD) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.void
setSpeedE
(com.irurueta.units.Speed speedE) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.void
setSpeedN
(com.irurueta.units.Speed speedN) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.void
setVd
(double vd) Sets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.void
setVe
(double ve) Sets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.void
setVelocity
(NEDVelocity velocity) Sets velocity coordinates of body frame resolved along North, East, Down axes.void
setVelocityCoordinates
(double vn, double ve, double vd) Sets velocity coordinates of body frame expressed in meters per second (m/s) resolved along North, East, Down axes.void
setVn
(double vn) Sets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.
-
Field Details
-
NUM_VELOCITY_COORDINATES
public static final int NUM_VELOCITY_COORDINATESNumber of coordinates representing velocity.- See Also:
-
latitude
private double latitudeLatitude expressed in radians. -
longitude
private double longitudeLongitude expressed in radians. -
height
private double heightHeight expressed in meters. -
vn
private double vnCoordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis. -
ve
private double veCoordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis. -
vd
private double vdCoordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis. -
c
Body to NED coordinate transformation matrix.
-
-
Constructor Details
-
NEDFrame
public NEDFrame()Constructor. Initializes position and velocity coordinates to zero and the coordinate transformation matrix to the identity. -
NEDFrame
public NEDFrame(double latitude, double longitude, double height) Constructor.- Parameters:
latitude
- latitude expressed in radians.longitude
- longitude expressed in radians.height
- height expressed in meters.
-
NEDFrame
public NEDFrame(double latitude, double longitude, com.irurueta.units.Distance height) Constructor.- Parameters:
latitude
- latitude expressed in radians to be set.longitude
- longitude expressed in radians to be set.height
- height to be set.
-
NEDFrame
public NEDFrame(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height) Constructor.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height expressed in meters to be set.
-
NEDFrame
public NEDFrame(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height) Constructor.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height to be set.
-
NEDFrame
public NEDFrame(double latitude, double longitude, double height, double vn, double ve, double vd) Constructor.- Parameters:
latitude
- latitude expressed in radians.longitude
- longitude expressed in radians.height
- height expressed in meters.vn
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.ve
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.vd
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.
-
NEDFrame
public NEDFrame(double latitude, double longitude, com.irurueta.units.Distance height, double vn, double ve, double vd) Constructor.- Parameters:
latitude
- latitude expressed in radians to be set.longitude
- longitude expressed in radians to be set.height
- height to be set.vn
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.ve
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.vd
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.
-
NEDFrame
public NEDFrame(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height, double vn, double ve, double vd) Constructor.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height expressed in meters to be set.vn
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.ve
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.vd
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.
-
NEDFrame
public NEDFrame(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height, double vn, double ve, double vd) Constructor.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height to be set.vn
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.ve
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.vd
- coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.
-
NEDFrame
public NEDFrame(double latitude, double longitude, double height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.- Parameters:
latitude
- latitude expressed in radians.longitude
- longitude expressed in radians.height
- height expressed in meters.speedN
- coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.speedE
- coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.speedD
- coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.
-
NEDFrame
public NEDFrame(double latitude, double longitude, com.irurueta.units.Distance height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.- Parameters:
latitude
- latitude expressed in radians.longitude
- longitude expressed in radians.height
- height to be set.speedN
- coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.speedE
- coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.speedD
- coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.
-
NEDFrame
public NEDFrame(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height expressed in meters to be setspeedN
- coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.speedE
- coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.speedD
- coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.
-
NEDFrame
public NEDFrame(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height, com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Constructor.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height to be set.speedN
- coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.speedE
- coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.speedD
- coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.
-
-
Method Details
-
getLatitude
public double getLatitude()Gets latitude expressed in radians.- Returns:
- latitude expressed in radians.
-
setLatitude
public void setLatitude(double latitude) Sets latitude expressed in radians.- Parameters:
latitude
- latitude expressed in radians to be set.
-
getLongitude
public double getLongitude()Gets longitude expressed in radians.- Returns:
- longitude expressed in radians.
-
setLongitude
public void setLongitude(double longitude) Sets longitude expressed in radians.- Parameters:
longitude
- longitude expressed in radians to be set.
-
getHeight
public double getHeight()Gets height expressed in meters.- Returns:
- height expressed in meters.
-
setHeight
public void setHeight(double height) Sets height expressed in meters.- Parameters:
height
- height expressed in meters to be set.
-
setPosition
public void setPosition(double latitude, double longitude, double height) Sets body position.- Parameters:
latitude
- latitude expressed in radians to be set.longitude
- longitude expressed in radians to be set.height
- height expressed in meters to be set.
-
getLatitudeAngle
public void getLatitudeAngle(com.irurueta.units.Angle result) Gets latitude.- Parameters:
result
- instance where latitude will be stored.
-
getLatitudeAngle
public com.irurueta.units.Angle getLatitudeAngle()Gets latitude.- Returns:
- latitude.
-
setLatitudeAngle
public void setLatitudeAngle(com.irurueta.units.Angle latitudeAngle) Sets latitude.- Parameters:
latitudeAngle
- latitude to be set.
-
getLongitudeAngle
public void getLongitudeAngle(com.irurueta.units.Angle result) Gets longitude.- Parameters:
result
- instance where longitude will be stored.
-
getLongitudeAngle
public com.irurueta.units.Angle getLongitudeAngle()Gets longitude.- Returns:
- longitude.
-
setLongitudeAngle
public void setLongitudeAngle(com.irurueta.units.Angle longitudeAngle) Sets longitude.- Parameters:
longitudeAngle
- longitude to be set.
-
getHeightDistance
public void getHeightDistance(com.irurueta.units.Distance result) Gets height.- Parameters:
result
- instance where height will be stored.
-
getHeightDistance
public com.irurueta.units.Distance getHeightDistance()Gets height.- Returns:
- height.
-
setHeightDistance
public void setHeightDistance(com.irurueta.units.Distance heightDistance) Sets height.- Parameters:
heightDistance
- height to be set.
-
setPosition
public void setPosition(double latitude, double longitude, com.irurueta.units.Distance height) Sets body position.- Parameters:
latitude
- latitude expressed in radians to be set.longitude
- longitude expressed in radians to be set.height
- height to be set.
-
setPosition
public void setPosition(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height) Sets body position.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height expressed in meters to be set.
-
setPosition
public void setPosition(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height) Sets body position.- Parameters:
latitude
- latitude to be set.longitude
- longitude to be set.height
- height to be set.
-
getPosition
Gets curvilinear position, expressed in terms of latitude, longitude and height.- Returns:
- curvilinear coordinates.
-
getVn
public double getVn()Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.- Returns:
- North velocity coordinate value.
-
setVn
public void setVn(double vn) Sets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.- Parameters:
vn
- North velocity coordinate value.
-
getVe
public double getVe()Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.- Returns:
- East velocity coordinate value.
-
setVe
public void setVe(double ve) Sets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.- Parameters:
ve
- East velocity coordinate value.
-
getVd
public double getVd()Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.- Returns:
- Down velocity coordinate value.
-
setVd
public void setVd(double vd) Sets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.- Parameters:
vd
- Down velocity coordinate value.
-
setVelocityCoordinates
public void setVelocityCoordinates(double vn, double ve, double vd) Sets velocity coordinates of body frame expressed in meters per second (m/s) resolved along North, East, Down axes.- Parameters:
vn
- North velocity coordinate value.ve
- East velocity coordinate value.vd
- Down velocity coordinate value.
-
getVelocityNorm
public double getVelocityNorm()Gets norm of velocity expressed in meters per second (m/s), which represents the speed of the body.- Returns:
- norm of velocity expressed in meters per second (m/s).
-
getVelocityNormAsSpeed
public void getVelocityNormAsSpeed(com.irurueta.units.Speed result) Gets norm of velocity, which represents the speed of the body.- Parameters:
result
- velocity norm.
-
getVelocityNormAsSpeed
public com.irurueta.units.Speed getVelocityNormAsSpeed()Gets norm of velocity, which represents the speed of the body.- Returns:
- velocity norm.
-
getSpeedN
public void getSpeedN(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.- Parameters:
result
- instance where North velocity coordinate will be stored.
-
getSpeedN
public com.irurueta.units.Speed getSpeedN()Gets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.- Returns:
- North velocity coordinate.
-
setSpeedN
public void setSpeedN(com.irurueta.units.Speed speedN) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.- Parameters:
speedN
- North velocity coordinate to be set.
-
getSpeedE
public void getSpeedE(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.- Parameters:
result
- instance where East velocity coordinate will be stored.
-
getSpeedE
public com.irurueta.units.Speed getSpeedE()Gets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.- Returns:
- East velocity coordinate.
-
setSpeedE
public void setSpeedE(com.irurueta.units.Speed speedE) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.- Parameters:
speedE
- East velocity coordinate to be set.
-
getSpeedD
public void getSpeedD(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.- Parameters:
result
- instance where Down velocity coordinate will be stored.
-
getSpeedD
public com.irurueta.units.Speed getSpeedD()Gets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.- Returns:
- Down velocity coordinate.
-
setSpeedD
public void setSpeedD(com.irurueta.units.Speed speedD) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.- Parameters:
speedD
- Down velocity coordinate to be set.
-
setSpeedCoordinates
public void setSpeedCoordinates(com.irurueta.units.Speed speedN, com.irurueta.units.Speed speedE, com.irurueta.units.Speed speedD) Sets velocity coordinates of body frame resolved along North, East, Down axes.- Parameters:
speedN
- North velocity coordinate.speedE
- East velocity coordinate.speedD
- Down velocity coordinate.
-
getVelocity
Gets velocity coordinates of body frame resolved along North, East, Down axes.- Returns:
- velocity coordinates.
-
getCoordinateTransformation
Gets coordinate transformation matrix.- Specified by:
getCoordinateTransformation
in interfaceFrame
- Returns:
- coordinate transformation matrix.
-
getCoordinateTransformationMatrix
public com.irurueta.algebra.Matrix getCoordinateTransformationMatrix()Gets coordinate transformation matrix. This is equivalent to calling getCoordinateTransformation().getMatrix(), but more efficient- Specified by:
getCoordinateTransformationMatrix
in interfaceFrame
- Returns:
- coordinate transformation matrix.
-
getCoordinateTransformationMatrix
public void getCoordinateTransformationMatrix(com.irurueta.algebra.Matrix result) Gets coordinate transformation matrix. This is equivalent to calling getCoordinateTransformation().getMatrix(), but more efficient- Specified by:
getCoordinateTransformationMatrix
in interfaceFrame
- Parameters:
result
- instance where coordinate transformation matrix will be copied to.
-
setCoordinateTransformationMatrix
public void setCoordinateTransformationMatrix(com.irurueta.algebra.Matrix matrix, double threshold) throws com.irurueta.geometry.InvalidRotationMatrixException Sets coordinate transformation matrix keeping current source and destinationFrameType
. This is more efficient than getting a copy of coordinate transformation calling togetCoordinateTransformation()
, setting coordinate matrix into copied coordinate transformation and then setting the coordinate transformation callingsetCoordinateTransformation(CoordinateTransformation)
.- Specified by:
setCoordinateTransformationMatrix
in interfaceFrame
- Parameters:
matrix
- a 3x3 coordinate transformation matrix to be set.threshold
- threshold to validate rotation matrix.- Throws:
com.irurueta.geometry.InvalidRotationMatrixException
- if provided matrix is not a valid rotation matrix (3x3 and orthonormal).IllegalArgumentException
- if provided threshold is negative.
-
setCoordinateTransformationMatrix
public void setCoordinateTransformationMatrix(com.irurueta.algebra.Matrix matrix) throws com.irurueta.geometry.InvalidRotationMatrixException Sts coordinate transformation matrix keeping current source and destinationFrameType
. This is more efficient than getting a copy of coordinate transformation calling togetCoordinateTransformation()
, setting coordinate matrix into copied coordinate transformation and then setting the coordinate transformation callingsetCoordinateTransformation(CoordinateTransformation)
.- Specified by:
setCoordinateTransformationMatrix
in interfaceFrame
- Parameters:
matrix
- a 3x3 coordinate transformation matrix to be set.- Throws:
com.irurueta.geometry.InvalidRotationMatrixException
- if provided matrix is not a valid rotation matrix (3x3 and orthonormal).
-
getCoordinateTransformationRotation
public com.irurueta.geometry.Rotation3D getCoordinateTransformationRotation() throws com.irurueta.geometry.InvalidRotationMatrixExceptionGets coordinate transformation as a new 3D rotation instance. This is equivalent to calling getCoordinateTransformation().asRotation(), but more efficient.- Specified by:
getCoordinateTransformationRotation
in interfaceFrame
- Returns:
- new coordinate transformation as a 3D rotation.
- Throws:
com.irurueta.geometry.InvalidRotationMatrixException
- if internal matrix cannot be converted to a 3D rotation.
-
getCoordinateTransformationRotation
public void getCoordinateTransformationRotation(com.irurueta.geometry.Rotation3D result) throws com.irurueta.geometry.InvalidRotationMatrixException Gets coordinate transformation as a 3D rotation. This is equivalent to calling getCoordinateTransformation().asRotation(), but more efficient.- Specified by:
getCoordinateTransformationRotation
in interfaceFrame
- Parameters:
result
- instance where coordinate transformation 3D rotation will be copied to.- Throws:
com.irurueta.geometry.InvalidRotationMatrixException
- if internal matrix cannot be converted to a 3D rotation.
-
setCoordinateTransformationRotation
public void setCoordinateTransformationRotation(com.irurueta.geometry.Rotation3D rotation) Sets coordinate transformation from 3D rotation and keeping current source and destinationFrameType
. This is more efficient than getting a copy of coordinate transformation calling togetCoordinateTransformation()
, setting rotation into copied coordinate transformation and then setting the coordinate transformation callingsetCoordinateTransformation(CoordinateTransformation)
.- Specified by:
setCoordinateTransformationRotation
in interfaceFrame
- Parameters:
rotation
- set rotation into current coordinate rotation.
-
hashCode
public int hashCode()Computes and returns hash code for this instance. Hash codes are almost unique values that are useful for fast classification and storage of objects in collections. -
equals
Checks if provided object is an ECEFFrame having exactly the same contents as this instance. -
clone
Makes a copy of this instance.- Overrides:
clone
in classObject
- Returns:
- a copy of this instance.
- Throws:
CloneNotSupportedException
- if clone fails for some reason.
-