/** * copy constructor - avoid clone !! */ @Override public ProjectionImpl constructCopy() { // constructor takes sweep_angle_axis, so need to translate between // scan geometry and sweep_angle_axis first // GOES: x // GEOS: y String sweepAxisAngle = GEOSTransform.scanGeomToSweepAngleAxis(navigation.scan_geom); return new Geostationary(navigation.sub_lon_degrees, sweepAxisAngle, geoCoordinateScaleFactor); }
private void makePP() { addParameter(CF.GRID_MAPPING_NAME, NAME); addParameter(CF.LONGITUDE_OF_PROJECTION_ORIGIN, navigation.sub_lon_degrees); addParameter(CF.LATITUDE_OF_PROJECTION_ORIGIN, 0.0); addParameter(CF.PERSPECTIVE_POINT_HEIGHT, navigation.sat_height * 1000.0); addParameter(CF.SWEEP_ANGLE_AXIS, GEOSTransform.scanGeomToSweepAngleAxis(navigation.scan_geom)); addParameter(CF.SEMI_MAJOR_AXIS, navigation.r_eq * 1000.0); addParameter(CF.SEMI_MINOR_AXIS, navigation.r_pol * 1000.0); }