Class ExtendedEllipsoid

    • Method Detail

      • pointAtLatitude

        public Vector3D pointAtLatitude​(Vector3D position,
                                        Vector3D los,
                                        double latitude,
                                        Vector3D closeReference)
        Get point at some latitude along a pixel line of sight.
        Parameters:
        position - cell position (in body frame) (m)
        los - pixel line-of-sight, not necessarily normalized (in body frame)
        latitude - latitude with respect to ellipsoid (rad)
        closeReference - reference point used to select the closest solution when there are two points at the desired latitude along the line, it should be close to los surface intersection (m)
        Returns:
        point at latitude (m)
      • pointAtLongitude

        public Vector3D pointAtLongitude​(Vector3D position,
                                         Vector3D los,
                                         double longitude)
        Get point at some longitude along a pixel line of sight.
        Parameters:
        position - cell position (in body frame) (m)
        los - pixel line-of-sight, not necessarily normalized (in body frame)
        longitude - longitude with respect to ellipsoid (rad)
        Returns:
        point at longitude (m)
      • pointOnGround

        public NormalizedGeodeticPoint pointOnGround​(Vector3D position,
                                                     Vector3D los,
                                                     double centralLongitude)
        Get point on ground along a pixel line of sight.
        Parameters:
        position - cell position (in body frame) (m)
        los - pixel line-of-sight, not necessarily normalized (in body frame)
        centralLongitude - reference longitude lc such that the point longitude will be normalized between lc-π and lc+π (rad)
        Returns:
        point on ground
      • pointAtAltitude

        public Vector3D pointAtAltitude​(Vector3D position,
                                        Vector3D los,
                                        double altitude)
        Get point at some altitude along a pixel line of sight.
        Parameters:
        position - cell position (in body frame) (m)
        los - pixel line-of-sight, not necessarily normalized (in body frame)
        altitude - altitude with respect to ellipsoid (m)
        Returns:
        point at altitude (m)
      • convertLos

        public Vector3D convertLos​(GeodeticPoint point,
                                   Vector3D los)
        Convert a line-of-sight from Cartesian to topocentric.
        Parameters:
        point - geodetic point on the line-of-sight
        los - line-of-sight, not necessarily normalized (in body frame and Cartesian coordinates)
        Returns:
        line-of-sight in topocentric frame (East, North, Zenith) of the point, scaled to match radians in the horizontal plane and meters along the vertical axis
      • convertLos

        public Vector3D convertLos​(Vector3D primary,
                                   Vector3D secondary)
        Convert a line-of-sight from Cartesian to topocentric.
        Parameters:
        primary - reference point on the line-of-sight (in body frame and Cartesian coordinates)
        secondary - secondary point on the line-of-sight, only used to define a direction with respect to the primary point (in body frame and Cartesian coordinates)
        Returns:
        line-of-sight in topocentric frame (East, North, Zenith) of the point, scaled to match radians in the horizontal plane and meters along the vertical axis
      • transform

        public NormalizedGeodeticPoint transform​(Vector3D point,
                                                 Frame frame,
                                                 AbsoluteDate date,
                                                 double centralLongitude)
        Transform a cartesian point to a surface-relative point.
        Parameters:
        point - cartesian point (m)
        frame - frame in which cartesian point is expressed
        date - date of the computation (used for frames conversions)
        centralLongitude - reference longitude lc such that the point longitude will be normalized between lc-π and lc+π (rad)
        Returns:
        point at the same location but as a surface-relative point