ISIS Application Documentation
    Outputs ring radius/longitude at line/sample or reverse for Cassini images of Saturn rings
  
 
          Description
        
    This program requires the user supply a "level 1" cube.  That is, a
    cube in raw camera geometry. 
    The user must also enter one of the following coordinates:
     
      line/sample
      ring radius/ring longitude
    
    The program will then compute the other coordinates and various other
    spacecraft and instrument related information including but not limited to
    the north azimuth, solar azimuth,
    spacecraft azimuth, incidence angle, phase angle, emission angle, and
    resolution.  The following is an example of the output given when campt is ran:
     
Group = GroundPoint
  Filename                   = $ISISDATA/base/examples/ab102401.cub
  Sample                     = 1.0
  Line                       = 1.0
  PixelValue     
l            = 0.0607816
  RightAscension             = 65.749350916052
  Declination                = -18.390093214966
  PlanetocentricLatitude     = 34.444196777763
  PlanetographicLatitude     = 34.760399604837
  PositiveEastLongitude      = 223.84999971299
  PositiveWestLongitude      = 136.15000028701
  BodyFixedCoordinate        = (-2015.9595225544, -1936.6155808127, 1917.2574858384) <km>
  LocalRadius                = 3389756.4767145 <m>
  SampleResolution           = 536.05556350077 <m>
  LineResolution             = 536.05556350077 <m>
  # Spacecraft Information
  SpacecraftPosition         = (-2025.6211429076, -2130.1417975758, 2009.318879871) <km>
  SpacecraftAzimuth          = 0.006855593033889
  SlantDistance              = 214.52515878961 <km>
  TargetCenterDistance       = 3560.6189705415 <km>
  SubSpacecraftLatitude      = 34.354896748841
  SubSpacecraftLongitude     = 226.44072947174
  SpacecraftAltitude         = 170.83335389965 <km>
  OffNadirAngle              = 36.149255932304
  SubSpacecraftGroundAzimuth = 91.64525294858
  # Sun Information
  SunPosition                = (-177337948.13839, 112957442.69098, -33704752.205292) <km>
  SubSolarAzimuth            = 172.30460990873
  SolarDistance              = 1.4234246174889 <AU>
  SubSolarLatitude           = -9.1071705738361
  SubSolarLongitude          = 147.50443340123
  SubSolarGroundAzimuth      = 254.69139701227
  # Illumination and Other
  Phase                      = 120.59515694473
  Incidence                  = 84.106289446623
  Emission                   = 38.288719431206
  NorthAzimuth               = 261.46910874636
  # Time
  EphemerisTime              = -69382819.160519 <seconds>
  UTC                        = 1997-10-20T10:58:37.6570806
  LocalSolarTime             = 17.089704420784 <hour>
  SolarLongitude             = 201.83159041209
End_Group
    
    
      In the output, all positions are in body fixed coordinates.  The  
      SubSpacecraftLatitude and SubSpacecraftLongitude 
      make up the subspacecraft point, which is the point on a body which 
      lies directly beneath the spacecraft.  The SubSolarLatitude 
      and SubSolarLongitude make up the subsolar point, which 
      is the point on a body's refernce surface where a line from the body 
      center to the sun center intersects that surface.   The 
      NorthAzimuth, SpacecraftAzimuth, and 
      SubSolarAzimuth are the values of the angle between a line 
      from the image center to the relative point (North pole, SubSpacecraft 
      Latitude/Longitude, SubSolar Latitude/Longitude respectively) and a 
      reference line in the image plane.  The reference line is a horizontal 
      line from the image center to the middle right edge of the image.  The 
      angles increase in a clockwise direction.  The LocalSolarTime
      is the time at the current longitude relative to the subsolar longitude,
      which has a time of 12 o'clock.  The SolarLongitude 
      is LSubS, or the seasonal angle. 
       
   
 
          Categories
        
 
              History
          
| Ken Edmundson | 2012-07-31 | 
      Original version copied from campt application
     | 
 
| Jeannie Backer | 2013-03-12 | 
      Added appTests.  Test coverage 79% scope, 91% line, 100% function covers all but 
      CameraRingsPointInfo::GetPointInfo() with allowErrors=true.
     | 
 
| Jeannie Backer | 2014-08-22 | 
      Updated truth data. References #1659.
     | 
 
 
 | 
 
 
                Parameter Groups
            
Files
| 
                    Name
                     | 
                    Description
                     | 
 
| FROM | 
          Filename of a cube
         | 
 
| TO | Text file | 
 
| FORMAT | 
          Output Format
         | 
 
| APPEND | 
          Append Output to File
         | 
 
 
Position
 | 
 
Files:
                        FROM
                         Description
                       
          Input cube with appropriate camera labels 
          (Instrument and kernel groups)
        
| 
                             Type
                            | cube | 
| 
                               File Mode
                              | input | 
| 
                               Filter
                              | 
          *.cub
         | 
 
 
Files:
                        TO
                         Description
                       
          A text file in label format which will contain
          the results of this program.  This file can
          be used in conjunction with the "getkey" program
          in order to pass the results to another program
          when developing scripts.
        
| 
                             Type
                            | filename | 
| 
                               File Mode
                              | output | 
| 
                               Internal Default
                              | None | 
 
 
Files:
                        APPEND
                         Description
                       
          If this option is selected, the output from the application will be appended to the file. 
          If it is not selected, any information in the TO file will be overwritten.
        
| 
                             Type
                            | boolean | 
| 
                               Default
                              | TRUE | 
 
 
Position:
                        TYPE
                         Description
                       
          This parameter is used to select the type of coordinate which will be used to
          compute the other two remaining coordinates.
        
| 
                             Type
                            | string | 
| 
                               Default
                              | IMAGE | 
| 
                               Option List:
                              | 
| 
                                   Option | 
                                   Brief | 
                                   Description | 
 
| IMAGE | Interprets the coordinate as sample/line | 
              This option interprets the coordinate as sample/line and will
              compute ring radius/longitude and x/y/z
            Exclusions
 | 
 
| GROUND | Interprets the coordinates as ring radius/longitude | 
              This option interprets the coordinate as ring radius/longitude and will
              compute sample/line and x/y/z
            Exclusions
 | 
 
 
 | 
 
 
Position:
                        SAMPLE
                         Description
                       
            This is the sample position used to compute infomration about the camera state at the pixel.
        
| 
                             Type
                            | double | 
| 
                               Internal Default
                              | Center sample | 
 
 
Position:
                        LINE
                         Description
                       
            This is the line position used to compute infomration about the camera state at the pixel.
        
| 
                             Type
                            | double | 
| 
                               Internal Default
                              | Center line | 
 
 
Position:
                        RINGRADIUS
                         Description
                       
            This is the ring radius position in kilometers from the center
            of the target body to try to locate in the  image.
        
| 
                             Type
                            | double | 
| 
                               Minimum
                              | 0.0
                                   (inclusive)
                                  | 
 
 
Position:
                        RINGLONGITUDE
                         Description
                       
            This is the counterclockwise ring longitude position  to try to locate in the camera image
        
| 
                             Type
                            | double | 
| 
                               Minimum
                              | 0.0
                                   (inclusive)
                                  | 
| 
                               Maximum
                              | 360.0
                                   (inclusive)
                                  | 
 
 
Position:
                        ALLOWOUTSIDE
                         Description
                       
          When this is checked, sample/line values that are outside of the image (but close)
          will be extrapolated. For example, a sample of -0.5 would be valid. If this is not
          checked, a sample of -0.5 is not allowed.
        
| 
                             Type
                            | boolean | 
| 
                               Default
                              | true |