def main(argv=[__name__]): acqimage = AcquisitionImage(argv[1]) ui.display(acqimage.get_science_data(), zscale=True) # the listener will collect the actual data we want verbose = False listener = SelectionCursorListener(acqimage, verbose) listener.start()
def test_mdf_box_locations_are_unchanged_by_acquisition_image(): acqimage = AcquisitionImage(get_data_file_name("N20121108S0357.fits"), mosmask="6") box_centers = [(4370.9898354, 339.18367075), (1948.16935825, 712.01011175), (1384.48997275, 1181.42130025), (1451.827332, 2218.3127036 )] assert len(box_centers) == len(acqimage.get_mos_boxes()) for refcenter, box in zip(box_centers, acqimage.get_mos_boxes()): box_detector_center = box.get_mdf_detector_center() assert_tolerance(refcenter, box_detector_center, tolerance=0.0001)
def __init__(self, detsec): origin=(0, 0) FiberStamp.__init__(self, detsec, detsec.get_data(), origin) def fiber_finder(fiberfield): fiber_center = None while fiber_center is None: print "== Press 'a' on this fiber, and then 'q' when happy ==" listener = FiberDetectionListener(fiberfield, verbose=True) listener.start() fiber_center = listener.get_fiber_center() return fiber_center acqimage = AcquisitionImage(sys.argv[1]) if acqimage.focal_plane_mask().upper() != "IFU-2" or acqimage.grating().upper() != "MIRROR": print "Should only be run on a IFU-2 flat non-dispersed image" sys.exit(1) fiberfield = FiberField(acqimage.get_full_field_of_view()) ui.display(fiberfield.get_data(), zscale=True) fname = sys.argv[2] newfname = fname if not os.path.exists(fname): fname = None fiberbundles = FiberBundleCollection(fname, acqimage) try: