Index: /branches/eam_branches/ipp-20120905/Ohana/src/uniphot/src/initialize_setposangle.c
===================================================================
--- /branches/eam_branches/ipp-20120905/Ohana/src/uniphot/src/initialize_setposangle.c	(revision 34717)
+++ /branches/eam_branches/ipp-20120905/Ohana/src/uniphot/src/initialize_setposangle.c	(revision 34718)
@@ -47,4 +47,9 @@
     remove_argument (N, &argc, argv);
   }
+
+  // XXX I want to avoid running this on all data all the time
+  // some options: gpc1 only (hardwired), require photcodes (fairly tedious),
+  // exclude some photcodes?
+  // XXX for now, hardwire gpc1 photcodes
 
   PARALLEL = FALSE;
Index: /branches/eam_branches/ipp-20120905/Ohana/src/uniphot/src/update_catalog_setposangle.c
===================================================================
--- /branches/eam_branches/ipp-20120905/Ohana/src/uniphot/src/update_catalog_setposangle.c	(revision 34717)
+++ /branches/eam_branches/ipp-20120905/Ohana/src/uniphot/src/update_catalog_setposangle.c	(revision 34718)
@@ -14,5 +14,8 @@
       if (ID <= 0) continue; // detections with imageID == 0 do not have a valid image (eg, ref photcode)
 
-      // XXX only do certain photcodes?
+      // XXX only do GPC1 data for now
+      catalog[0].measure[m].pltscale = pltScale;
+      if (catalog[0].measure[m].photcode < 10000) continue;
+      if (catalog[0].measure[m].photcode > 10600) continue;
       
       // index[ID] = seqN
@@ -28,5 +31,5 @@
       setposangle_local_astrometry (&posAngle, &pltScale, Xccd, Yccd, &mosaic->coords, coords);
 
-      catalog[0].measure[m].posangle = posAngle;
+      catalog[0].measure[m].posangle = ToShortDegrees(posAngle);
       catalog[0].measure[m].pltscale = pltScale;
       myAssert(isfinite(catalog[0].measure[m].posangle), "oops: setposangle made a nan");
@@ -42,4 +45,5 @@
 
 // this is basically a re-write / adaptation of pmSourceLocalAstrometry
+// posangle in degrees, plate scale in arcseconds/pixel
 int setposangle_local_astrometry (float *posAngle, float *pltScale, double x, double y, Coords *mosaic, Coords *coords) {
 
@@ -66,5 +70,5 @@
   double pltScale_x = hypot(dPdX, dQdX);
   double pltScale_y = hypot(dPdY, dQdY);
-  *pltScale = 0.5*(pltScale_x + pltScale_y);
+  *pltScale = 3600.0*0.5*(pltScale_x + pltScale_y);
 
   double posAngle_x, posAngle_y;
@@ -86,5 +90,5 @@
     posAngle_x += 2.0 * M_PI;
   }
-  *posAngle = 0.5*(posAngle_x + posAngle_y);
+  *posAngle = 0.5*(posAngle_x + posAngle_y)*DEG_RAD;
 
   return TRUE;
