Package com.irurueta.navigation
Class Accuracy3D
java.lang.Object
com.irurueta.navigation.Accuracy<com.irurueta.geometry.Accuracy3D>
com.irurueta.navigation.Accuracy3D
Contains methods to convert covariance matrices into ellipsoids representing accuracy with
requested confidence.
-
Field Summary
Fields inherited from class com.irurueta.navigation.Accuracy
internalAccuracy
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor.Accuracy3D
(double confidence) Constructor.Accuracy3D
(com.irurueta.algebra.Matrix covarianceMatrix) Constructor.Accuracy3D
(com.irurueta.algebra.Matrix covarianceMatrix, double confidence) Constructor.Accuracy3D
(com.irurueta.geometry.Accuracy3D internalAccuracy) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionFlattens accuracy representation to 2D by taking into account only x and y coordinates and ignoring variance related to z coordinates.com.irurueta.geometry.Ellipse
Intersects ellipsoid representing this accuracy with horizontal xy plane.com.irurueta.geometry.Ellipsoid
Converts provided covariance matrix into a 3D ellipsoid taking into account current confidence and standard deviation factor.Methods inherited from class com.irurueta.navigation.Accuracy
getAverageAccuracy, getAverageAccuracyMeters, getConfidence, getCovarianceMatrix, getLargestAccuracy, getLargestAccuracyMeters, getNumberOfDimensions, getSmallestAccuracy, getSmallestAccuracyMeters, getStandardDeviationFactor, setConfidence, setCovarianceMatrix, setStandardDeviationFactor
-
Constructor Details
-
Accuracy3D
public Accuracy3D()Constructor. -
Accuracy3D
public Accuracy3D(com.irurueta.algebra.Matrix covarianceMatrix) throws com.irurueta.algebra.NonSymmetricPositiveDefiniteMatrixException Constructor.- Parameters:
covarianceMatrix
- covariance matrix to be set. Must be 3x3 and positive definite.- Throws:
IllegalArgumentException
- if provided matrix is not square (it must also be positive definite to be properly converted to an ellipsoid).com.irurueta.algebra.NonSymmetricPositiveDefiniteMatrixException
- if provided matrix is not symmetric and positive definite.
-
Accuracy3D
public Accuracy3D(double confidence) Constructor.- Parameters:
confidence
- confidence of provided accuracy of an estimated position.- Throws:
IllegalArgumentException
- if provided value is not within 0 and 1.
-
Accuracy3D
public Accuracy3D(com.irurueta.algebra.Matrix covarianceMatrix, double confidence) throws com.irurueta.algebra.NonSymmetricPositiveDefiniteMatrixException Constructor.- Parameters:
covarianceMatrix
- covariance matrix to be set. Must be 3x3 and positive definite.confidence
- confidence of provided accuracy of an estimated position.- Throws:
IllegalArgumentException
- if provided matrix is not square (it must also be positive definite to be properly converted to an ellipsoid), or if provided confidence value is not within 0 and 1.com.irurueta.algebra.NonSymmetricPositiveDefiniteMatrixException
- if provided matrix it not symmetric and positive definite.
-
Accuracy3D
Accuracy3D(com.irurueta.geometry.Accuracy3D internalAccuracy) Constructor.- Parameters:
internalAccuracy
- internal accuracy to be set.
-
-
Method Details
-
toEllipsoid
public com.irurueta.geometry.Ellipsoid toEllipsoid() throws com.irurueta.geometry.InvalidRotationMatrixExceptionConverts provided covariance matrix into a 3D ellipsoid taking into account current confidence and standard deviation factor.- Returns:
- ellipsoid representing accuracy of covariance matrix with current confidence and standard deviation factor.
- Throws:
NullPointerException
- if covariance matrix has not been provided yet.com.irurueta.geometry.InvalidRotationMatrixException
- if rotation cannot be properly determined.
-
flattenTo2D
Flattens accuracy representation to 2D by taking into account only x and y coordinates and ignoring variance related to z coordinates.- Returns:
- flattened accuracy representation in 2D.
- Throws:
NullPointerException
- if covariance matrix is not defined.com.irurueta.geometry.GeometryException
- if accuracy cannot be flattened.
-
intersectWithPlane
public com.irurueta.geometry.Ellipse intersectWithPlane() throws com.irurueta.geometry.GeometryExceptionIntersects ellipsoid representing this accuracy with horizontal xy plane.- Returns:
- intersected ellipse.
- Throws:
NullPointerException
- if covariance matrix is not defined.com.irurueta.geometry.GeometryException
- if intersection cannot be computed.
-