Class GEOSTransform


  • public class GEOSTransform
    extends Object
    Geostationary Transform
    Since:
    08/28/2014
    • Constructor Summary

      Constructors 
      Constructor Description
      GEOSTransform()  
      GEOSTransform​(double subLonDegrees)  
      GEOSTransform​(double subLonDegrees, double perspective_point_height, double semi_minor_axis, double semi_major_axis, double inverse_flattening, String sweep_angle_axis)  
      GEOSTransform​(double subLonDegrees, double perspective_point_height, double semi_minor_axis, double semi_major_axis, String sweep_angle_axis)  
      GEOSTransform​(double subLonDegrees, String scan_geom)  
      GEOSTransform​(double subLonDegrees, String scan_geom, String geoidID)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int[] earthToElemLine​(double geographic_lon, double geographic_lat, double scale_x, double offset_x, double scale_y, double offset_y)
      Transform pixel center Earth coordinates (lon,lat) to integer FGF coordinates.
      double[] earthToFGF​(double geographic_lon, double geographic_lat, double scale_x, double offset_x, double scale_y, double offset_y)
      Transform Earth coordinates (lon,lat) to fractional FGF coordinates.
      double[] earthToSat​(double geographic_lon, double geographic_lat)
      Transform geographic Earth coordinates to satellite view angle coordinate system also known as the "intermediate" coordinate system in CGMS Normalized Geostationary Projection.
      double[] elemLineToEarth​(int elem, int line, double scale_x, double offset_x, double scale_y, double offset_y)
      Transform integer FGF coordinates to (longitude, latitude) of pixel center The (i,j) pixel, zero-based, refers to the pixel center.
      boolean equals​(Object o)  
      double[] FGFtoEarth​(double fgf_x, double fgf_y, double scale_x, double offset_x, double scale_y, double offset_y)
      Transform fractional FGF coordinates to (longitude, latitude).
      double[] FGFtoSat​(double fgf_x, double fgf_y, double scale_x, double offset_x, double scale_y, double offset_y)
      Transform fractional FGF coordinates to (lamda, theta) radians.
      double[] GOES_to_GEOS​(double lamda_goes, double theta_goes)
      Transform view angle coordinates in the GOES scan geometry frame to view angle coordinates in the GEOS scan geometry frame.
      int hashCode()  
      double[] satToEarth​(double x, double y)
      Transform satellite view angle coordinates, known as the "intermeidate" coordinates in the CGMS Normalized Geostationary Projection, to geographic Earth coordinates.
      double[] SatToFGF​(double lamda, double theta, double scale_x, double offset_x, double scale_y, double offset_y)
      Transform (lamda, theta) in radians to fractional FGF coordinates.
      static String scanGeomToSweepAngleAxis​(String scanGeometry)
      Find sweep_angle_axis associated with a scan geometry
      static String sweepAngleAxisToScanGeom​(String sweepAngleAxis)
      Find scan geometry associated with sweep_angle_axis
    • Constructor Detail

      • GEOSTransform

        public GEOSTransform()
      • GEOSTransform

        public GEOSTransform​(double subLonDegrees)
      • GEOSTransform

        public GEOSTransform​(double subLonDegrees,
                             String scan_geom)
      • GEOSTransform

        public GEOSTransform​(double subLonDegrees,
                             String scan_geom,
                             String geoidID)
      • GEOSTransform

        public GEOSTransform​(double subLonDegrees,
                             double perspective_point_height,
                             double semi_minor_axis,
                             double semi_major_axis,
                             double inverse_flattening,
                             String sweep_angle_axis)
      • GEOSTransform

        public GEOSTransform​(double subLonDegrees,
                             double perspective_point_height,
                             double semi_minor_axis,
                             double semi_major_axis,
                             String sweep_angle_axis)
    • Method Detail

      • earthToSat

        public double[] earthToSat​(double geographic_lon,
                                   double geographic_lat)
        Transform geographic Earth coordinates to satellite view angle coordinate system also known as the "intermediate" coordinate system in CGMS Normalized Geostationary Projection.
        Parameters:
        geographic_lon - longitude, units: degrees
        geographic_lat - latitude, units: degrees
        Returns:
        (lamda, theta) units: radian. This is the (x,y) or (East-West, North_South) view angle.
      • satToEarth

        public double[] satToEarth​(double x,
                                   double y)
        Transform satellite view angle coordinates, known as the "intermeidate" coordinates in the CGMS Normalized Geostationary Projection, to geographic Earth coordinates.
        Parameters:
        x - is lamda (East-West) angle, units: radians
        y - is theta (Norht-South) angle, units: radians
        Returns:
        (Longitude, Latitude), units degrees
      • GOES_to_GEOS

        public double[] GOES_to_GEOS​(double lamda_goes,
                                     double theta_goes)
        Transform view angle coordinates in the GOES scan geometry frame to view angle coordinates in the GEOS scan geometry frame.
      • FGFtoEarth

        public double[] FGFtoEarth​(double fgf_x,
                                   double fgf_y,
                                   double scale_x,
                                   double offset_x,
                                   double scale_y,
                                   double offset_y)
        Transform fractional FGF coordinates to (longitude, latitude).
        Parameters:
        fgf_x - fractional FGF coordinate, zero-based
        fgf_y - fractional FGF coordinate, zero-based
        scale_x - scaleFactor from the x coordinate variable
        offset_x - addOffset from the x coordinate variable
        scale_y - scaleFactor from the y coordinate variable
        offset_y - addOffset from the y coordinate variable
        Returns:
        (Longitude, Latitude), units: degrees
      • FGFtoSat

        public double[] FGFtoSat​(double fgf_x,
                                 double fgf_y,
                                 double scale_x,
                                 double offset_x,
                                 double scale_y,
                                 double offset_y)
        Transform fractional FGF coordinates to (lamda, theta) radians.
        Parameters:
        fgf_x - fractional FGF coordinate, zero-based
        fgf_y - fractional FGF coordinate, zero-based
        scale_x - scaleFactor from the x coordinate variable
        offset_x - addOffset from the x coordinate variable
        scale_y - scaleFactor from the y coordinate variable
        offset_y - addOffset from the y coordinate variable
        Returns:
        (lamda, theta), units: radians
      • elemLineToEarth

        public double[] elemLineToEarth​(int elem,
                                        int line,
                                        double scale_x,
                                        double offset_x,
                                        double scale_y,
                                        double offset_y)
        Transform integer FGF coordinates to (longitude, latitude) of pixel center The (i,j) pixel, zero-based, refers to the pixel center.
        Parameters:
        scale_x - scaleFactor from the x coordinate variable
        offset_x - addOffset from the x coordinate variable
        scale_y - scaleFactor from the y coordinate variable
        offset_y - addOffset from the y coordinate variable
        Returns:
        (Longitude, Latitude), units: degrees, of FGF (i,j) pixel center
      • earthToFGF

        public double[] earthToFGF​(double geographic_lon,
                                   double geographic_lat,
                                   double scale_x,
                                   double offset_x,
                                   double scale_y,
                                   double offset_y)
        Transform Earth coordinates (lon,lat) to fractional FGF coordinates.
        Parameters:
        geographic_lon - Longitude, units: degrees
        geographic_lat - Latitude, units: degrees
        scale_x - scaleFactor from the x coordinate variable
        offset_x - addOffset from the x coordinate variable
        scale_y - scaleFactor from the y coordinate variable
        offset_y - addOffset from the y coordinate variable
        Returns:
        fractional fgf coordinates
      • earthToElemLine

        public int[] earthToElemLine​(double geographic_lon,
                                     double geographic_lat,
                                     double scale_x,
                                     double offset_x,
                                     double scale_y,
                                     double offset_y)
        Transform pixel center Earth coordinates (lon,lat) to integer FGF coordinates.
        Parameters:
        scale_x - scaleFactor from the x coordinate variable
        offset_x - addOffset from the x coordinate variable
        scale_y - scaleFactor from the y coordinate variable
        offset_y - addOffset from the y coordinate variable
      • SatToFGF

        public double[] SatToFGF​(double lamda,
                                 double theta,
                                 double scale_x,
                                 double offset_x,
                                 double scale_y,
                                 double offset_y)
        Transform (lamda, theta) in radians to fractional FGF coordinates.
        Parameters:
        scale_x - scaleFactor from the x coordinate variable
        offset_x - addOffset from the x coordinate variable
        scale_y - scaleFactor from the y coordinate variable
        offset_y - addOffset from the y coordinate variable
      • scanGeomToSweepAngleAxis

        public static String scanGeomToSweepAngleAxis​(String scanGeometry)
        Find sweep_angle_axis associated with a scan geometry
        Parameters:
        scanGeometry - scanning geometry (GOES or GEOS)
        Returns:
        sweep_angle_axis (x or y)
      • sweepAngleAxisToScanGeom

        public static String sweepAngleAxisToScanGeom​(String sweepAngleAxis)
        Find scan geometry associated with sweep_angle_axis
        Parameters:
        sweepAngleAxis - sweep_angle_axis (x or y)
        Returns:
        scan_geom scanning geometry (GOES or GEOS)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object