本文整理汇总了Java中nom.tam.fits.BasicHDU.getHeader方法的典型用法代码示例。如果您正苦于以下问题:Java BasicHDU.getHeader方法的具体用法?Java BasicHDU.getHeader怎么用?Java BasicHDU.getHeader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类nom.tam.fits.BasicHDU
的用法示例。
在下文中一共展示了BasicHDU.getHeader方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getFirstHeader
import nom.tam.fits.BasicHDU; //导入方法依赖的package包/类
public static Header getFirstHeader(File f) throws FitsException {
BasicHDU myHDU = null;
Header header;
Fits myFits = new Fits(f);
try
{
//myHDUs = myFits.read();
myHDU = myFits.readHDU();
}
catch (FitsException fe)
{
throw fe;
//System.out.println("RBH caught FitsException");
//fe.printStackTrace();
}
catch (IOException ioe)
{
throw new FitsException(ioe.getMessage());
//System.out.println("RBH caught IOException");
//ioe.printStackTrace();
}
if (myHDU == null)
throw new FitsException("cannot read header");
header = myHDU.getHeader();
return header;
}
示例2: writeFitsFile
import nom.tam.fits.BasicHDU; //导入方法依赖的package包/类
public static void writeFitsFile(OutputStream stream, FitsRead[] fitsReadAry, Fits refFits) throws FitsException, IOException{
Fits output_fits = new Fits();
for(FitsRead fr : fitsReadAry) {
BasicHDU one_image_hdu = refFits.getHDU(0);
Header header = one_image_hdu.getHeader();
//Data data = one_image_hdu.getData();
//ImageHDU image_hdu = new ImageHDU(header, data);
ImageHDU imageHDU = new ImageHDU(header, fr.getImageData(header, fr.float1d));
output_fits.addHDU(imageHDU);
}
output_fits.write(new DataOutputStream(stream));
}
示例3: open_ref
import nom.tam.fits.BasicHDU; //导入方法依赖的package包/类
private void open_ref(Fits refFits) throws FitsException
{
try
{
BasicHDU HDU = refFits.getHDU(0);
ref_fits_header = HDU.getHeader();
//BufferedDataInputStream ibs = refFits.getStream();
//ref_fits_header = Header.readHeader(ibs);
if (ref_fits_header == null)
{
if (SUTDebug.isDebug())
{
System.out.println("HDU null! (ref image)");
}
throw new FitsException("HDU null! (ref image)");
}
ref_header = new ImageHeader(ref_fits_header);
}
catch (IOException e)
{
if (SUTDebug.isDebug())
{
System.out.println("got IOException: " + e.getMessage());
}
throw new FitsException("got IOException: " + e.getMessage());
}
open_ref();
}
示例4: importKeywords
import nom.tam.fits.BasicHDU; //导入方法依赖的package包/类
private void importKeywords(BasicHDU hdu) {
Header newHdr = hdu.getHeader();
Header oldHdr = getHeader();
Cursor newC = newHdr.iterator();
newC.setKey("END");
Cursor oldC = oldHdr.iterator();
oldC.setKey("NAXIS");
while (oldC.hasNext()) {
HeaderCard old = (HeaderCard) (oldC.next());
String key = old.getKey();
if (!reservedKeys.contains(key)) {
newC.add(old);
}
}
}
示例5: parseScanPrimaryHDU
import nom.tam.fits.BasicHDU; //导入方法依赖的package包/类
public void parseScanPrimaryHDU(BasicHDU<?> hdu) throws HeaderCardException {
Header header = hdu.getHeader();
// Load any options based on the FITS header...
instrument.setFitsHeaderOptions(header);
fitsVersion = header.getStringValue("FITSVER");
if(fitsVersion.length() == 0) fitsVersion = null;
// Source Information
String sourceName = header.getStringValue("OBJECT");
if(sourceName == null) sourceName = descriptor;
setSourceName(sourceName);
setSerial(header.getIntValue("SCAN", -1));
project = header.getStringValue("PROJID");
// GBT 79:50:23.406 W, 38:25:59.236 N
site = new GeodeticCoordinates(
-(79 * Unit.deg + 50 * Unit.arcmin + 23.406 * Unit.arcsec),
38 * Unit.deg + 25 * Unit.arcmin + 59.236 * Unit.arcsec
);
// or use SITELON / SITELAT from FITS?...
timeStamp = header.getStringValue("DATE-OBS");
String date = timeStamp.substring(0, timeStamp.indexOf('T'));
String startTime = timeStamp.substring(timeStamp.indexOf('T') + 1);
id = date + "." + getSerial();
equatorial = new EquatorialCoordinates(
header.getDoubleValue("RA0") * Unit.hourAngle,
header.getDoubleValue("DEC0") * Unit.deg,
CoordinateEpoch.J2000
);
info("[" + sourceName + "] of project " + project + " observed on " + date + " at " + startTime);
info("Equatorial: " + equatorial.toString());
if(hasOption("tau")) {
zenithTau = option("tau").getDouble();
info("Using tau: " + Util.f3.format(zenithTau));
}
else if(header.containsKey("TAUZ")) {
zenithTau = header.getDoubleValue("TAUZ");
info("Zenith tau from skydip: " + Util.f3.format(zenithTau));
}
else {
warning("No tau in FITS, or specified. No extinction correction.");
}
}
示例6: parseScanPrimaryHDU
import nom.tam.fits.BasicHDU; //导入方法依赖的package包/类
public void parseScanPrimaryHDU(BasicHDU<?> hdu) throws HeaderCardException, FitsException {
Header header = hdu.getHeader();
// Platform
String platform = header.getStringValue("PLATFORM");
if(platform == null) platform = "Cassegrain";
mount = platform.equalsIgnoreCase("NASMYTH") ? Mount.RIGHT_NASMYTH : Mount.CASSEGRAIN;
info(mount.name + " mount assumed.");
rotatorZeroAngle = header.getDoubleValue("ROTZERO", Double.NaN) * Unit.deg;
rotatorAngle = header.getDoubleValue("ROTATOR", rotatorZeroAngle / Unit.deg) * Unit.deg;
rotatorOffset = header.getDoubleValue("ROTOFFST", 0.0) * Unit.deg;
rotatorMode = header.getStringValue("ROTMODE");
if(rotatorMode == null) rotatorMode = "Unknown";
// Various fixes for premature FITS files, without valid rotator information
// These typically have 1000 values.
if(rotatorZeroAngle == 1000.0 * Unit.deg) {
rotatorZeroAngle = 16.0 * Unit.deg;
info(">>> Fix: missing rotator zero angle set to 16.0 deg.");
}
if(rotatorAngle == 1000.0 * Unit.deg) {
rotatorAngle = Double.NaN;
info(">>> Fix: missing rotator angle..");
}
if(rotatorOffset == 1000.0 * Unit.deg) {
rotatorOffset = 0.0;
info(">>> Fix: assuming no rotator offset.");
}
// Focus
focusX = header.getDoubleValue("FOCUS_X") * Unit.mm;
focusY = header.getDoubleValue("FOCUS_Y") * Unit.mm;
focusZ = header.getDoubleValue("FOCUS_Z") * Unit.mm;
focusYOffset = header.getDoubleValue("FOCUS_YO") * Unit.mm;
focusZOffset = header.getDoubleValue("FOCUS_ZO") * Unit.mm;
focusMode = header.getStringValue("FOCMODE");
if(focusMode == null) focusMode = "Unknown";
info("Focus [" + focusMode + "]"
+ " X=" + Util.f2.format(focusX / Unit.mm)
+ " Y=" + Util.f2.format(focusY / Unit.mm)
+ " Z=" + Util.f2.format(focusZ / Unit.mm)
+ " Yoff=" + Util.f2.format(focusYOffset / Unit.mm)
+ " Zoff=" + Util.f2.format(focusZOffset / Unit.mm)
);
// DSOS
dsosUsed = header.getBooleanValue("DSOS");
dsosVersion = header.getStringValue("DSOSVER");
if(dsosUsed) info("DSOS version " + dsosVersion);
}
示例7: parseScanPrimaryHDU
import nom.tam.fits.BasicHDU; //导入方法依赖的package包/类
public void parseScanPrimaryHDU(BasicHDU<?> hdu) throws HeaderCardException {
Header header = hdu.getHeader();
// nReadouts = header.getIntValue("NROACHES", 1);
focus = header.getDoubleValue("LFCY", Double.NaN) * Unit.mm;
}