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 CoordinateTransformationBody to NED coordinate transformation matrix.private doubleHeight expressed in meters.private doubleLatitude expressed in radians.private doubleLongitude expressed in radians.static final intNumber of coordinates representing velocity.private doubleCoordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.private doubleCoordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along East axis.private doubleCoordinate 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 Objectclone()Makes a copy of this instance.voidCopies data of provided instance into this instance.voidCopies this instance data into provided instance.booleanChecks if provided instance has exactly the same contents as this instance.booleanChecks if provided instance has contents similar to this instance up to provided threshold value.booleanChecks if provided object is an ECEFFrame having exactly the same contents as this instance.Gets coordinate transformation matrix.voidGets coordinate transformation matrix.com.irurueta.algebra.MatrixGets coordinate transformation matrix.voidgetCoordinateTransformationMatrix(com.irurueta.algebra.Matrix result) Gets coordinate transformation matrix.com.irurueta.geometry.Rotation3DGets coordinate transformation as a new 3D rotation instance.voidgetCoordinateTransformationRotation(com.irurueta.geometry.Rotation3D result) Gets coordinate transformation as a 3D rotation.doubleGets height expressed in meters.com.irurueta.units.DistanceGets height.voidgetHeightDistance(com.irurueta.units.Distance result) Gets height.doubleGets latitude expressed in radians.com.irurueta.units.AngleGets latitude.voidgetLatitudeAngle(com.irurueta.units.Angle result) Gets latitude.doubleGets longitude expressed in radians.com.irurueta.units.AngleGets longitude.voidgetLongitudeAngle(com.irurueta.units.Angle result) Gets longitude.Gets curvilinear position, expressed in terms of latitude, longitude and height.voidgetPosition(NEDPosition result) Gets curvilinear position, expressed in terms of latitude, longitude and height.com.irurueta.units.SpeedGets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.voidgetSpeedD(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.com.irurueta.units.SpeedGets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.voidgetSpeedE(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.com.irurueta.units.SpeedGets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.voidgetSpeedN(com.irurueta.units.Speed result) Gets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.doublegetVd()Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along Down axis.doublegetVe()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.voidgetVelocity(NEDVelocity result) Gets velocity coordinates of body frame resolved along North, East, Down axes.doubleGets norm of velocity expressed in meters per second (m/s), which represents the speed of the body.com.irurueta.units.SpeedGets norm of velocity, which represents the speed of the body.voidgetVelocityNormAsSpeed(com.irurueta.units.Speed result) Gets norm of velocity, which represents the speed of the body.doublegetVn()Gets coordinate of velocity of body frame expressed in meters per second (m/s) with respect ECEF frame and resolved along North axis.inthashCode()Computes and returns hash code for this instance.static booleanChecks whether provided coordinate transformation matrix is valid or not.voidSets coordinate transformation matrix.voidsetCoordinateTransformationMatrix(com.irurueta.algebra.Matrix matrix) Sts coordinate transformation matrix keeping current source and destinationFrameType.voidsetCoordinateTransformationMatrix(com.irurueta.algebra.Matrix matrix, double threshold) Sets coordinate transformation matrix keeping current source and destinationFrameType.voidsetCoordinateTransformationRotation(com.irurueta.geometry.Rotation3D rotation) Sets coordinate transformation from 3D rotation and keeping current source and destinationFrameType.voidsetHeight(double height) Sets height expressed in meters.voidsetHeightDistance(com.irurueta.units.Distance heightDistance) Sets height.voidsetLatitude(double latitude) Sets latitude expressed in radians.voidsetLatitudeAngle(com.irurueta.units.Angle latitudeAngle) Sets latitude.voidsetLongitude(double longitude) Sets longitude expressed in radians.voidsetLongitudeAngle(com.irurueta.units.Angle longitudeAngle) Sets longitude.voidsetPosition(double latitude, double longitude, double height) Sets body position.voidsetPosition(double latitude, double longitude, com.irurueta.units.Distance height) Sets body position.voidsetPosition(NEDPosition position) Sets curvilinear position, expressed in terms of latitude, longitude and height.voidsetPosition(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, double height) Sets body position.voidsetPosition(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.units.Distance height) Sets body position.voidsetSpeedCoordinates(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.voidsetSpeedD(com.irurueta.units.Speed speedD) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along Down axis.voidsetSpeedE(com.irurueta.units.Speed speedE) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along East axis.voidsetSpeedN(com.irurueta.units.Speed speedN) Sets coordinate of velocity of body frame with respect ECEF frame and resolved along North axis.voidsetVd(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.voidsetVe(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.voidsetVelocity(NEDVelocity velocity) Sets velocity coordinates of body frame resolved along North, East, Down axes.voidsetVelocityCoordinates(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.voidsetVn(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:
getCoordinateTransformationin 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:
getCoordinateTransformationMatrixin 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:
getCoordinateTransformationMatrixin 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:
setCoordinateTransformationMatrixin 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:
setCoordinateTransformationMatrixin 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:
getCoordinateTransformationRotationin 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:
getCoordinateTransformationRotationin 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:
setCoordinateTransformationRotationin 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:
clonein classObject- Returns:
- a copy of this instance.
- Throws:
CloneNotSupportedException- if clone fails for some reason.
-