Class NonLinearMixedPositionEstimator2D
java.lang.Object
com.irurueta.navigation.indoor.position.PositionEstimator<com.irurueta.geometry.Point2D,Reading<? extends RadioSource>,MixedPositionEstimatorListener<com.irurueta.geometry.Point2D>>
com.irurueta.navigation.indoor.position.MixedPositionEstimator<com.irurueta.geometry.Point2D>
com.irurueta.navigation.indoor.position.NonLinearMixedPositionEstimator<com.irurueta.geometry.Point2D>
com.irurueta.navigation.indoor.position.NonLinearMixedPositionEstimator2D
public class NonLinearMixedPositionEstimator2D
extends NonLinearMixedPositionEstimator<com.irurueta.geometry.Point2D>
Estimates 2D position non-linearly using located radio sources and their readings
at unknown locations.
These kind of estimators can be used to determine the position of a given device by
getting readings at an unknown location of different radio sources whose locations
are known.
-
Field Summary
Fields inherited from class com.irurueta.navigation.indoor.position.NonLinearMixedPositionEstimator
FALLBACK_DISTANCE_STANDARD_DEVIATION, laterationSolverListener, trilaterationSolverFields inherited from class com.irurueta.navigation.indoor.position.PositionEstimator
estimatedPositionCoordinates, fingerprint, listener, sources -
Constructor Summary
ConstructorsConstructorDescriptionConstructor.NonLinearMixedPositionEstimator2D(com.irurueta.geometry.Point2D initialPosition) Constructor.NonLinearMixedPositionEstimator2D(com.irurueta.geometry.Point2D initialPosition, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor.NonLinearMixedPositionEstimator2D(Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint) Constructor.NonLinearMixedPositionEstimator2D(Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint, com.irurueta.geometry.Point2D initialPosition) Constructor.NonLinearMixedPositionEstimator2D(Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint, com.irurueta.geometry.Point2D initialPosition, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor.NonLinearMixedPositionEstimator2D(Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor.NonLinearMixedPositionEstimator2D(MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor.NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources) ConstructorNonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, com.irurueta.geometry.Point2D initialPosition) Constructor.NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, com.irurueta.geometry.Point2D initialPosition, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor.NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint) Constructor.NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint, com.irurueta.geometry.Point2D initialPosition) Constructor.NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint, com.irurueta.geometry.Point2D initialPosition, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor.NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, Fingerprint<? extends RadioSource, ? extends Reading<? extends RadioSource>> fingerprint, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor.NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D> listener) Constructor. -
Method Summary
Modifier and TypeMethodDescriptioncom.irurueta.geometry.Point2DGets estimated position.private voidInitializes lateration solver.protected voidsetPositionsDistancesAndDistanceStandardDeviations(List<com.irurueta.geometry.Point2D> positions, List<Double> distances, List<Double> distanceStandardDeviations) Sets positions, distances and standard deviations of distances on internal lateration solver.Methods inherited from class com.irurueta.navigation.indoor.position.NonLinearMixedPositionEstimator
estimate, getCovariance, getDistances, getDistanceStandardDeviations, getFallbackDistanceStandardDeviation, getInitialPosition, getMinRequiredSources, getPositions, internalSetFingerprint, internalSetSources, isLocked, isRadioSourcePositionCovarianceUsed, isReady, setFallbackDistanceStandardDeviation, setInitialPosition, setRadioSourcePositionCovarianceUsedMethods inherited from class com.irurueta.navigation.indoor.position.PositionEstimator
getEstimatedPosition, getEstimatedPositionCoordinates, getFingerprint, getListener, getSources, setFingerprint, setListener, setSources
-
Constructor Details
-
NonLinearMixedPositionEstimator2D
public NonLinearMixedPositionEstimator2D()Constructor. -
NonLinearMixedPositionEstimator2D
public NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources) Constructor- Parameters:
sources- located radio sources used for lateration.- Throws:
IllegalArgumentException- if provided sources is null or the number of provided sources is less than the required minimum.
-
NonLinearMixedPositionEstimator2D
public NonLinearMixedPositionEstimator2D(com.irurueta.geometry.Point2D initialPosition) Constructor.- Parameters:
initialPosition- initial position to start position estimation.
-
NonLinearMixedPositionEstimator2D
public NonLinearMixedPositionEstimator2D(List<? extends RadioSourceLocated<com.irurueta.geometry.Point2D>> sources, com.irurueta.geometry.Point2D initialPosition) Constructor.- Parameters:
sources- located radio sources used for lateration.initialPosition- initial position to start position estimation.- Throws:
IllegalArgumentException- if provided sources is null or the number of provided sources is less than the required minimum.
-
-
Method Details
-
getEstimatedPosition
public com.irurueta.geometry.Point2D getEstimatedPosition()Gets estimated position.- Specified by:
getEstimatedPositionin classPositionEstimator<com.irurueta.geometry.Point2D,Reading<? extends RadioSource>, MixedPositionEstimatorListener<com.irurueta.geometry.Point2D>> - Returns:
- estimated position.
-
setPositionsDistancesAndDistanceStandardDeviations
protected void setPositionsDistancesAndDistanceStandardDeviations(List<com.irurueta.geometry.Point2D> positions, List<Double> distances, List<Double> distanceStandardDeviations) Sets positions, distances and standard deviations of distances on internal lateration solver.- Specified by:
setPositionsDistancesAndDistanceStandardDeviationsin classNonLinearMixedPositionEstimator<com.irurueta.geometry.Point2D>- Parameters:
positions- positions to be set.distances- distances to be set.distanceStandardDeviations- standard deviations of distances to be set.
-
initialize
private void initialize()Initializes lateration solver.
-