Package com.irurueta.navigation.frames
Class CoordinateTransformation
java.lang.Object
com.irurueta.navigation.frames.CoordinateTransformation
- All Implemented Interfaces:
Serializable,Cloneable
Contains a coordinate transformation matrix, or rotation matrix. The coordinate transformation matrix is a 3x3
matrix where a vector may be transformed in one step from one set of resolving axes to another by pre-multiplying it
by the appropriate coordinate transformation matrix. The coordinate transformation matrix is associated to a source
and destination frame.
This implementation is based on the equations defined in "Principles of GNSS, Inertial, and Multi-sensor
Integrated Navigation Systems, Second Edition" and on the companion software available at:
https://github.com/ymjdz/MATLAB-Codes/blob/master/Euler_to_CTM.m
https://github.com/ymjdz/MATLAB-Codes/blob/master/CTM_to_Euler.m
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intNumber of columns of a coordinate transformation matrix.static final doubleDefault threshold to consider a matrix valid.private FrameTypeDestination frame type.static final doubleEarth rotation rate expressed in radians per second (rad/s).(package private) com.irurueta.algebra.Matrix3x3 matrix containing a rotation.static final intNumber of rows of a coordinate transformation matrix.private FrameTypeSource frame type. -
Constructor Summary
ConstructorsConstructorDescriptionCoordinateTransformation(double roll, double pitch, double yaw, FrameType sourceType, FrameType destinationType) Constructor with Euler angles.CoordinateTransformation(com.irurueta.algebra.Matrix matrix, FrameType sourceType, FrameType destinationType) Constructor.CoordinateTransformation(com.irurueta.algebra.Matrix matrix, FrameType sourceType, FrameType destinationType, double threshold) Constructor.CoordinateTransformation(com.irurueta.geometry.Rotation3D rotation, FrameType sourceType, FrameType destinationType) Constructor with 3D rotation.Constructor.CoordinateTransformation(FrameType sourceType, FrameType destinationType) Constructor.CoordinateTransformation(com.irurueta.units.Angle roll, com.irurueta.units.Angle pitch, com.irurueta.units.Angle yaw, FrameType sourceType, FrameType destinationType) Constructor with Euler angles. -
Method Summary
Modifier and TypeMethodDescriptioncom.irurueta.geometry.Rotation3DGets internal matrix as a 3D rotation.voidasRotation(com.irurueta.geometry.Rotation3D result) Gets internal matrix as a 3D rotation.protected Objectclone()Makes a copy of this instance.voidcopyFrom(CoordinateTransformation input) Copies data of provided instance into this instance.voidcopyTo(CoordinateTransformation output) Copies this instance data into provided instance.static CoordinateTransformationecefToEciCoordinateTransformationMatrixFromAngle(double angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static voidecefToEciCoordinateTransformationMatrixFromAngle(double angle, CoordinateTransformation result) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static CoordinateTransformationecefToEciCoordinateTransformationMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static voidecefToEciCoordinateTransformationMatrixFromAngle(com.irurueta.units.Angle angle, CoordinateTransformation result) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static CoordinateTransformationecefToEciCoordinateTransformationMatrixFromTimeInterval(double timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static voidecefToEciCoordinateTransformationMatrixFromTimeInterval(double timeInterval, CoordinateTransformation result) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static CoordinateTransformationecefToEciCoordinateTransformationMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static voidecefToEciCoordinateTransformationMatrixFromTimeInterval(com.irurueta.units.Time timeInterval, CoordinateTransformation result) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static com.irurueta.algebra.MatrixecefToEciMatrixFromAngle(double angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static voidecefToEciMatrixFromAngle(double angle, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static com.irurueta.algebra.MatrixecefToEciMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static voidecefToEciMatrixFromAngle(com.irurueta.units.Angle angle, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.static com.irurueta.algebra.MatrixecefToEciMatrixFromTimeInterval(double timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static voidecefToEciMatrixFromTimeInterval(double timeInterval, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static com.irurueta.algebra.MatrixecefToEciMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static voidecefToEciMatrixFromTimeInterval(com.irurueta.units.Time timeInterval, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.static CoordinateTransformationecefToNedCoordinateTransformationMatrix(double latitude, double longitude) Computes ECEF to NED coordinate transformation matrix.static voidecefToNedCoordinateTransformationMatrix(double latitude, double longitude, CoordinateTransformation result) Computes ECEF to NED coordinate transformation matrix.static CoordinateTransformationecefToNedCoordinateTransformationMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes ECEF to NED coordinate transformation matrix.static voidecefToNedCoordinateTransformationMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, CoordinateTransformation result) Computes ECEF to NED coordinate transformation matrix.static com.irurueta.algebra.MatrixecefToNedMatrix(double latitude, double longitude) Computes matrix to convert ECEF to NED coordinates.static voidecefToNedMatrix(double latitude, double longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert ECEF to NED coordinates.static com.irurueta.algebra.MatrixecefToNedMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes matrix to convert ECEF to NED coordinates.static voidecefToNedMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert ECEF to NED coordinates.static CoordinateTransformationeciToEcefCoordinateTransformationMatrixFromAngle(double angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static voideciToEcefCoordinateTransformationMatrixFromAngle(double angle, CoordinateTransformation result) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static CoordinateTransformationeciToEcefCoordinateTransformationMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static voideciToEcefCoordinateTransformationMatrixFromAngle(com.irurueta.units.Angle angle, CoordinateTransformation result) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static CoordinateTransformationeciToEcefCoordinateTransformationMatrixFromInterval(double timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.static voideciToEcefCoordinateTransformationMatrixFromTimeInterval(double timeInterval, CoordinateTransformation result) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.static CoordinateTransformationeciToEcefCoordinateTransformationMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.static voideciToEcefCoordinateTransformationMatrixFromTimeInterval(com.irurueta.units.Time timeInterval, CoordinateTransformation result) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.static com.irurueta.algebra.MatrixeciToEcefMatrixFromAngle(double angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static voideciToEcefMatrixFromAngle(double angle, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static com.irurueta.algebra.MatrixeciToEcefMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static voideciToEcefMatrixFromAngle(com.irurueta.units.Angle angle, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.static com.irurueta.algebra.MatrixeciToEcefMatrixFromTimeInterval(double timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.static voideciToEcefMatrixFromTimeInterval(double timeInterval, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.static com.irurueta.algebra.MatrixeciToEcefMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.static voideciToEcefMatrixFromTimeInterval(com.irurueta.units.Time timeInterval, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.booleanequals(CoordinateTransformation other) Checks if provided instance has exactly the same contents as this instance.booleanequals(CoordinateTransformation other, double threshold) Checks if provided instance has contents similar to this instance up to provided threshold value.booleanChecks if provided object is a CoordinateTransformationMatrix having exactly the same contents as this instance.voidfromRotation(com.irurueta.geometry.Rotation3D rotation) Sets internal matrix as the inhomogeneous matrix representation of provided 3D rotation.Gets destination frame type.com.irurueta.algebra.MatrixGets matrix containing a rotation.voidgetMatrix(com.irurueta.algebra.Matrix result) Gets matrix containing a rotation.doubleGets pitch Euler angle (around y-axis) expressed in radians.com.irurueta.units.AngleGets pitch Euler angle (around y-axis).voidgetPitchEulerAngleMeasurement(com.irurueta.units.Angle result) Gets pitch Euler angle (around y-axis).doubleGets roll Euler angle (around x-axis) expressed in radians.com.irurueta.units.AngleGets roll Euler angle (around x-axis).voidgetRollEulerAngleMeasurement(com.irurueta.units.Angle result) Gets roll Euler angle (around x-axis).Gets source frame type.doubleGets yaw Euler angle (around z-axis) expressed in radians.com.irurueta.units.AngleGets yaw Euler angle (around z-axis).voidgetYawEulerAngleMeasurement(com.irurueta.units.Angle result) Gets yaw Euler angle (around z-axis).inthashCode()Computes and returns hash code for this instance.voidinverse()Converts this instance into its inverse coordinate transformation matrix.voidinverse(CoordinateTransformation result) Computes the inverse of this coordinate transformation matrix and stores the result into provided instance.Computes the inverse of this coordinate transformation matrix and returns it as a new instance.static booleanisValidMatrix(com.irurueta.algebra.Matrix matrix) Determines whether provided matrix is a valid rotation matrix (3x3 and orthonormal) up to default thresholdDEFAULT_THRESHOLD.static booleanisValidMatrix(com.irurueta.algebra.Matrix matrix, double threshold) Determines whether provided matrix is a valid rotation matrix (3x3 and orthonormal) up to provided threshold.static CoordinateTransformationnedToEcefCoordinateTransformationMatrix(double latitude, double longitude) Computes NED to ECEF coordinate transformation matrix.static voidnedToEcefCoordinateTransformationMatrix(double latitude, double longitude, CoordinateTransformation result) Computes NED to ECEF coordinate transformation matrix.static CoordinateTransformationnedToEcefCoordinateTransformationMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes NED to ECEF coordinate transformation matrix.static voidnedToEcefCoordinateTransformationMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, CoordinateTransformation result) Computes NED to ECEF coordinate transformation matrix.static com.irurueta.algebra.MatrixnedToEcefMatrix(double latitude, double longitude) Computes matrix to convert NED to ECEF coordinates.static voidnedToEcefMatrix(double latitude, double longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert NED to ECEF coordinates.static com.irurueta.algebra.MatrixnedToEcefMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes matrix to convert NED to ECEF coordinates.static voidnedToEcefMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert NED to ECEF coordinates.voidsetDestinationType(FrameType destinationType) Sets destination frame type.voidsetEulerAngles(double roll, double pitch, double yaw) Sets euler angles (roll, pitch and yaw) expressed in radians.voidsetEulerAngles(com.irurueta.units.Angle roll, com.irurueta.units.Angle pitch, com.irurueta.units.Angle yaw) Sets euler angles (roll, pitch and yaw).voidsetMatrix(com.irurueta.algebra.Matrix matrix) Sets matrix containing a rotation.voidsetMatrix(com.irurueta.algebra.Matrix matrix, double threshold) Sets matrix containing a rotation.voidsetSourceType(FrameType sourceType) Sets source frame type.
-
Field Details
-
ROWS
public static final int ROWSNumber of rows of a coordinate transformation matrix.- See Also:
-
COLS
public static final int COLSNumber of columns of a coordinate transformation matrix.- See Also:
-
DEFAULT_THRESHOLD
public static final double DEFAULT_THRESHOLDDefault threshold to consider a matrix valid.- See Also:
-
EARTH_ROTATION_RATE
public static final double EARTH_ROTATION_RATEEarth rotation rate expressed in radians per second (rad/s).- See Also:
-
matrix
com.irurueta.algebra.Matrix matrix3x3 matrix containing a rotation. -
sourceType
Source frame type. -
destinationType
Destination frame type.
-
-
Constructor Details
-
Method Details
-
getMatrix
public com.irurueta.algebra.Matrix getMatrix()Gets matrix containing a rotation.- Returns:
- 3x3 matrix containing a rotation.
-
getMatrix
public void getMatrix(com.irurueta.algebra.Matrix result) Gets matrix containing a rotation.- Parameters:
result- instance where internal 3x3 matrix containing a rotation will be copied to.
-
setMatrix
public void setMatrix(com.irurueta.algebra.Matrix matrix, double threshold) throws com.irurueta.geometry.InvalidRotationMatrixException Sets matrix containing a rotation.- Parameters:
matrix- a 3x3 matrix containing a rotation.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.
-
setMatrix
public void setMatrix(com.irurueta.algebra.Matrix matrix) throws com.irurueta.geometry.InvalidRotationMatrixException Sets matrix containing a rotation.- Parameters:
matrix- a 3x3 matrix containing a rotation.- Throws:
com.irurueta.geometry.InvalidRotationMatrixException- if provided matrix is not a valid rotation matrix (3x3 and orthonormal).
-
isValidMatrix
public static boolean isValidMatrix(com.irurueta.algebra.Matrix matrix, double threshold) Determines whether provided matrix is a valid rotation matrix (3x3 and orthonormal) up to provided threshold.- Parameters:
matrix- matrix to be checked.threshold- threshold to determine whether matrix is valid.- Returns:
- true if matrix is valid, false otherwise.
- Throws:
IllegalArgumentException- if provided threshold value is negative.
-
isValidMatrix
public static boolean isValidMatrix(com.irurueta.algebra.Matrix matrix) Determines whether provided matrix is a valid rotation matrix (3x3 and orthonormal) up to default thresholdDEFAULT_THRESHOLD.- Parameters:
matrix- matrix to be checked.- Returns:
- true if matrix is valid, false otherwise.
-
getRollEulerAngle
public double getRollEulerAngle()Gets roll Euler angle (around x-axis) expressed in radians. Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Returns:
- roll Euler angle.
-
getRollEulerAngleMeasurement
public void getRollEulerAngleMeasurement(com.irurueta.units.Angle result) Gets roll Euler angle (around x-axis). Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Parameters:
result- instance where roll Euler angle will be stored.
-
getRollEulerAngleMeasurement
public com.irurueta.units.Angle getRollEulerAngleMeasurement()Gets roll Euler angle (around x-axis). Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Returns:
- roll Euler angle.
-
getPitchEulerAngle
public double getPitchEulerAngle()Gets pitch Euler angle (around y-axis) expressed in radians. Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Returns:
- pitch Euler angle.
-
getPitchEulerAngleMeasurement
public void getPitchEulerAngleMeasurement(com.irurueta.units.Angle result) Gets pitch Euler angle (around y-axis). Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Parameters:
result- instance where pitch Euler angle will be stored.
-
getPitchEulerAngleMeasurement
public com.irurueta.units.Angle getPitchEulerAngleMeasurement()Gets pitch Euler angle (around y-axis). Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Returns:
- pitch Euler angle.
-
getYawEulerAngle
public double getYawEulerAngle()Gets yaw Euler angle (around z-axis) expressed in radians. Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Returns:
- yaw Euler angle.
-
getYawEulerAngleMeasurement
public void getYawEulerAngleMeasurement(com.irurueta.units.Angle result) Gets yaw Euler angle (around z-axis). Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Parameters:
result- instance where yaw Euler angle will be stored.
-
getYawEulerAngleMeasurement
public com.irurueta.units.Angle getYawEulerAngleMeasurement()Gets yaw Euler angle (around z-axis). Notice that this angle does not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Returns:
- yaw Euler angle.
-
setEulerAngles
public void setEulerAngles(double roll, double pitch, double yaw) Sets euler angles (roll, pitch and yaw) expressed in radians. Notice that these angles do not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Parameters:
roll- roll Euler angle (around x-axis) expressed in radians.pitch- pitch Euler angle (around y-axis) expressed in radians.yaw- yaw Euler angle (around z-axis) expressed in radians.
-
setEulerAngles
public void setEulerAngles(com.irurueta.units.Angle roll, com.irurueta.units.Angle pitch, com.irurueta.units.Angle yaw) Sets euler angles (roll, pitch and yaw). Notice that these angles do not match angles obtained fromRotation3DorQuaternionbecause they are referred to different axes.- Parameters:
roll- roll Euler angle (around x-axis).pitch- pitch Euler angle (around y-axis).yaw- yaw Euler angle (around z-axis).
-
getSourceType
Gets source frame type.- Returns:
- source frame type.
-
getDestinationType
Gets destination frame type.- Returns:
- destination frame type.
-
asRotation
public com.irurueta.geometry.Rotation3D asRotation() throws com.irurueta.geometry.InvalidRotationMatrixExceptionGets internal matrix as a 3D rotation.- Returns:
- a 3D rotation representing the internal matrix.
- Throws:
com.irurueta.geometry.InvalidRotationMatrixException- if internal matrix cannot be converted to a 3D rotation.
-
asRotation
public void asRotation(com.irurueta.geometry.Rotation3D result) throws com.irurueta.geometry.InvalidRotationMatrixException Gets internal matrix as a 3D rotation.- Parameters:
result- instance where 3D rotation will be stored.- Throws:
com.irurueta.geometry.InvalidRotationMatrixException- if internal matrix cannot be converted to a 3D rotation.
-
fromRotation
public void fromRotation(com.irurueta.geometry.Rotation3D rotation) Sets internal matrix as the inhomogeneous matrix representation of provided 3D rotation.- Parameters:
rotation- 3D rotation to set matrix from.
-
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 a CoordinateTransformationMatrix having exactly the same contents as this instance. -
inverse
public void inverse()Converts this instance into its inverse coordinate transformation matrix. -
inverseAndReturnNew
Computes the inverse of this coordinate transformation matrix and returns it as a new instance.- Returns:
- the inverse of this coordinate transformation matrix.
-
ecefToNedMatrix
public static void ecefToNedMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert ECEF to NED coordinates.- Parameters:
latitude- latitude angle.longitude- longitude angle.result- instance where computed matrix will be stored.
-
ecefToNedMatrix
public static com.irurueta.algebra.Matrix ecefToNedMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes matrix to convert ECEF to NED coordinates.- Parameters:
latitude- latitude angle.longitude- longitude angle.- Returns:
- a new matrix to convert ECEF to NED coordinates.
-
ecefToNedMatrix
public static void ecefToNedMatrix(double latitude, double longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert ECEF to NED coordinates.- Parameters:
latitude- latitude expressed in radians.longitude- longitude expressed in radians.result- instance where computed matrix will be stored.
-
ecefToNedMatrix
public static com.irurueta.algebra.Matrix ecefToNedMatrix(double latitude, double longitude) Computes matrix to convert ECEF to NED coordinates.- Parameters:
latitude- latitude expressed in radians.longitude- longitude expressed in radians.- Returns:
- a new matrix to convert ECEF to NED coordinates.
-
ecefToNedCoordinateTransformationMatrix
public static CoordinateTransformation ecefToNedCoordinateTransformationMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes ECEF to NED coordinate transformation matrix.- Parameters:
latitude- latitude angle.longitude- longitude angle.- Returns:
- a new ECEF to NED coordinate transformation matrix.
-
ecefToNedCoordinateTransformationMatrix
public static CoordinateTransformation ecefToNedCoordinateTransformationMatrix(double latitude, double longitude) Computes ECEF to NED coordinate transformation matrix.- Parameters:
latitude- latitude expressed in radians.longitude- longitude expressed in radians.- Returns:
- a new ECEF to NED coordinate transformation matrix.
-
nedToEcefMatrix
public static void nedToEcefMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert NED to ECEF coordinates.- Parameters:
latitude- latitude angle.longitude- longitude angle.result- instance where computed matrix will be stored.
-
nedToEcefMatrix
public static com.irurueta.algebra.Matrix nedToEcefMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes matrix to convert NED to ECEF coordinates.- Parameters:
latitude- latitude angle.longitude- longitude angle.- Returns:
- a new matrix to convert NED to ECEF coordinates.
-
nedToEcefMatrix
public static void nedToEcefMatrix(double latitude, double longitude, com.irurueta.algebra.Matrix result) Computes matrix to convert NED to ECEF coordinates.- Parameters:
latitude- latitude expressed in radians.longitude- longitude expressed in radians.result- instance where computed matrix will be stored.
-
nedToEcefMatrix
public static com.irurueta.algebra.Matrix nedToEcefMatrix(double latitude, double longitude) Computes matrix to convert NED to ECEF coordinates.- Parameters:
latitude- latitude expressed in radians.longitude- longitude expressed in radians.- Returns:
- a new matrix to convert NED to ECEF coordinates.
-
nedToEcefCoordinateTransformationMatrix
public static CoordinateTransformation nedToEcefCoordinateTransformationMatrix(com.irurueta.units.Angle latitude, com.irurueta.units.Angle longitude) Computes NED to ECEF coordinate transformation matrix.- Parameters:
latitude- latitude angle.longitude- longitude angle.- Returns:
- a new NED to ECEF coordinate transformation matrix.
-
nedToEcefCoordinateTransformationMatrix
public static CoordinateTransformation nedToEcefCoordinateTransformationMatrix(double latitude, double longitude) Computes NED to ECEF coordinate transformation matrix.- Parameters:
latitude- latitude expressed in radians.longitude- longitude expressed in radians.- Returns:
- a new NED to ECEF coordinate transformation matrix.
-
ecefToEciMatrixFromTimeInterval
public static void ecefToEciMatrixFromTimeInterval(com.irurueta.units.Time timeInterval, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval.result- instance where result will be stored.
-
ecefToEciMatrixFromTimeInterval
public static void ecefToEciMatrixFromTimeInterval(double timeInterval, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval expressed in seconds (s).result- instance where result will be stored.
-
ecefToEciMatrixFromAngle
public static void ecefToEciMatrixFromAngle(com.irurueta.units.Angle angle, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated.result- instance where result will be stored.
-
ecefToEciMatrixFromAngle
public static void ecefToEciMatrixFromAngle(double angle, com.irurueta.algebra.Matrix result) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated expressed in radians.result- instance where result will be stored.
-
ecefToEciMatrixFromTimeInterval
public static com.irurueta.algebra.Matrix ecefToEciMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval.- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
ecefToEciMatrixFromTimeInterval
public static com.irurueta.algebra.Matrix ecefToEciMatrixFromTimeInterval(double timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval expressed in seconds (s).- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
ecefToEciMatrixFromAngle
public static com.irurueta.algebra.Matrix ecefToEciMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated.- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
ecefToEciMatrixFromAngle
public static com.irurueta.algebra.Matrix ecefToEciMatrixFromAngle(double angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated expressed in radians.- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
ecefToEciCoordinateTransformationMatrixFromTimeInterval
public static CoordinateTransformation ecefToEciCoordinateTransformationMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval.- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
ecefToEciCoordinateTransformationMatrixFromTimeInterval
public static CoordinateTransformation ecefToEciCoordinateTransformationMatrixFromTimeInterval(double timeInterval) Computes ECEF to ECI coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval expressed in seconds (s).- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
ecefToEciCoordinateTransformationMatrixFromAngle
public static CoordinateTransformation ecefToEciCoordinateTransformationMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated.- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
ecefToEciCoordinateTransformationMatrixFromAngle
public static CoordinateTransformation ecefToEciCoordinateTransformationMatrixFromAngle(double angle) Computes ECEF to ECI coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated expressed in radians.- Returns:
- a new ECEF to ECI coordinate transformation matrix.
-
eciToEcefMatrixFromTimeInterval
public static void eciToEcefMatrixFromTimeInterval(com.irurueta.units.Time timeInterval, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval.result- instance where result will be stored.
-
eciToEcefMatrixFromTimeInterval
public static void eciToEcefMatrixFromTimeInterval(double timeInterval, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval expressed in seconds (s).result- instance where result will be stored.
-
eciToEcefMatrixFromAngle
public static void eciToEcefMatrixFromAngle(com.irurueta.units.Angle angle, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated.result- instance where result will be stored.
-
eciToEcefMatrixFromAngle
public static void eciToEcefMatrixFromAngle(double angle, com.irurueta.algebra.Matrix result) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated expressed in radians.result- instance where result will be stored.
-
eciToEcefMatrixFromTimeInterval
public static com.irurueta.algebra.Matrix eciToEcefMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval.- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
eciToEcefMatrixFromTimeInterval
public static com.irurueta.algebra.Matrix eciToEcefMatrixFromTimeInterval(double timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval expressed in seconds (s).- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
eciToEcefMatrixFromAngle
public static com.irurueta.algebra.Matrix eciToEcefMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated.- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
eciToEcefMatrixFromAngle
public static com.irurueta.algebra.Matrix eciToEcefMatrixFromAngle(double angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated.- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
eciToEcefCoordinateTransformationMatrixFromTimeInterval
public static CoordinateTransformation eciToEcefCoordinateTransformationMatrixFromTimeInterval(com.irurueta.units.Time timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval.- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
eciToEcefCoordinateTransformationMatrixFromInterval
public static CoordinateTransformation eciToEcefCoordinateTransformationMatrixFromInterval(double timeInterval) Computes ECI to ECEF coordinate transformation matrix taking into account Earth rotation during provided time interval.- Parameters:
timeInterval- a time interval expressed in seconds (s).- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
eciToEcefCoordinateTransformationMatrixFromAngle
public static CoordinateTransformation eciToEcefCoordinateTransformationMatrixFromAngle(com.irurueta.units.Angle angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated.- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
eciToEcefCoordinateTransformationMatrixFromAngle
public static CoordinateTransformation eciToEcefCoordinateTransformationMatrixFromAngle(double angle) Computes ECI to ECEF coordinate transformation matrix for provided Earth rotation angle.- Parameters:
angle- angle amount the Earth has rotated expressed in radians.- Returns:
- a new ECI to ECEF coordinate transformation matrix.
-
clone
Makes a copy of this instance.- Overrides:
clonein classObject- Returns:
- a copy of this instance.
- Throws:
CloneNotSupportedException- if clone fails for some reason.
-