Class SensorMeanPlaneCrossing


  • public class SensorMeanPlaneCrossing
    extends Object
    Class dedicated to find when ground point crosses mean sensor plane.

    This class is used in the first stage of inverse location.

    Author:
    Luc Maisonobe
    • Constructor Detail

      • SensorMeanPlaneCrossing

        public SensorMeanPlaneCrossing​(LineSensor sensor,
                                       SpacecraftToObservedBody scToBody,
                                       int minLine,
                                       int maxLine,
                                       boolean lightTimeCorrection,
                                       boolean aberrationOfLightCorrection,
                                       int maxEval,
                                       double accuracy)
        Simple constructor.
        Parameters:
        sensor - sensor to consider
        scToBody - converter between spacecraft and body
        minLine - minimum line number
        maxLine - maximum line number
        lightTimeCorrection - flag for light time correction
        aberrationOfLightCorrection - flag for aberration of light correction.
        maxEval - maximum number of evaluations
        accuracy - accuracy to use for finding crossing line number
      • SensorMeanPlaneCrossing

        public SensorMeanPlaneCrossing​(LineSensor sensor,
                                       SpacecraftToObservedBody scToBody,
                                       int minLine,
                                       int maxLine,
                                       boolean lightTimeCorrection,
                                       boolean aberrationOfLightCorrection,
                                       int maxEval,
                                       double accuracy,
                                       Vector3D meanPlaneNormal,
                                       Stream<SensorMeanPlaneCrossing.CrossingResult> cachedResults)
        Simple constructor.
        Parameters:
        sensor - sensor to consider
        scToBody - converter between spacecraft and body
        minLine - minimum line number
        maxLine - maximum line number
        lightTimeCorrection - flag for light time correction
        aberrationOfLightCorrection - flag for aberration of light correction.
        maxEval - maximum number of evaluations
        accuracy - accuracy to use for finding crossing line number
        meanPlaneNormal - mean plane normal
        cachedResults - cached results
    • Method Detail

      • getSensor

        public LineSensor getSensor()
        Get the underlying sensor.
        Returns:
        underlying sensor
      • getScToBody

        public SpacecraftToObservedBody getScToBody()
        Get converter between spacecraft and body.
        Returns:
        converter between spacecraft and body
      • getMinLine

        public int getMinLine()
        Get the minimum line number in the search interval.
        Returns:
        minimum line number in the search interval
      • getMaxLine

        public int getMaxLine()
        Get the maximum line number in the search interval.
        Returns:
        maximum line number in the search interval
      • getMaxEval

        public int getMaxEval()
        Get the maximum number of evaluations.
        Returns:
        maximum number of evaluations
      • getAccuracy

        public double getAccuracy()
        Get the accuracy to use for finding crossing line number.
        Returns:
        accuracy to use for finding crossing line number
      • getMeanPlaneNormal

        public Vector3D getMeanPlaneNormal()
        Get the mean plane normal.

        The normal is oriented such traversing pixels in increasing indices order corresponds is consistent with trigonometric order (i.e. counterclockwise).

        Returns:
        mean plane normal
      • find

        public SensorMeanPlaneCrossing.CrossingResult find​(Vector3D target)
        Find mean plane crossing.
        Parameters:
        target - target ground point
        Returns:
        line number and target direction at mean plane crossing, or null if search interval does not bracket a solution