diff options
author | dencheva <dencheva@stsci.edu> | 2009-02-10 15:58:37 -0500 |
---|---|---|
committer | dencheva <dencheva@stsci.edu> | 2009-02-10 15:58:37 -0500 |
commit | 914af36db70dafd6417198634ce1e55a5a5dd8d9 (patch) | |
tree | c878658f842a9deb072ecf494076e87ac31a42bd /hstwcs/__init__.py | |
parent | cc6eb9ab94b41a2f5ab513d21971bc6bfaa036c4 (diff) | |
download | stwcs_hcf-914af36db70dafd6417198634ce1e55a5a5dd8d9.tar.gz |
Modified the constructor for HSTWCS. Now it can be created given:
- a filename and extension number
- fully qualified filename
- a pyfits object and an extension number
- if given an instrument and detctor parameters, a template HSTWCS
object for that instrument will be created.
git-svn-id: http://svn.stsci.edu/svn/ssb/stsci_python/development/trunk/updatewcs@7534 fe389314-cf27-0410-b35b-8c050e845b92
Diffstat (limited to 'hstwcs/__init__.py')
-rw-r--r-- | hstwcs/__init__.py | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/hstwcs/__init__.py b/hstwcs/__init__.py index 84f6cec..dfb2e4b 100644 --- a/hstwcs/__init__.py +++ b/hstwcs/__init__.py @@ -75,20 +75,20 @@ def makecorr(fname, allowed_corr): """ f = pyfits.open(fname, mode='update') - #Determine the reference chip and make a copy of its restored header. + #Determine the reference chip and create the reference HSTWCS object nrefchip, nrefext = getNrefchip(f) - primhdr = f[0].header - ref_hdr = f[nrefext].header.copy() - utils.write_archive(ref_hdr) - - for extn in f: + ref_wcs = HSTWCS(fobj=f, ext=nrefext) + ref_wcs.readModel(update=True,header=f[nrefext].header) + utils.write_archive(f[nrefext].header) + + for i in range(len(f))[1:]: # Perhaps all ext headers should be corrected (to be consistent) + extn = f[i] if extn.header.has_key('extname') and extn.header['extname'].lower() == 'sci': - ref_wcs = HSTWCS(primhdr, ref_hdr, fobj=f) - ref_wcs.readModel(update=True, header=ref_hdr) + ref_wcs.restore(f[nrefext].header) hdr = extn.header - ext_wcs = HSTWCS(primhdr, hdr, fobj=f) utils.write_archive(hdr) + ext_wcs = HSTWCS(fobj=f, ext=i) ext_wcs.readModel(update=True,header=hdr) for c in allowed_corr: if c != 'DGEOCorr': @@ -103,7 +103,6 @@ def makecorr(fname, allowed_corr): f[1].header.update(kw, kw2update[kw]) f.close() - def getNrefchip(fobj): """ This handles the fact that WFPC2 subarray observations |