From 0df289dcbfe6288bd4aca20ec00d572b138d7b7f Mon Sep 17 00:00:00 2001 From: William Joye Date: Wed, 15 Aug 2018 14:07:38 -0400 Subject: simplify marker code --- tksao/frame/bpanda.C | 57 ++++++++++++++++++---------------------------------- tksao/frame/epanda.C | 57 ++++++++++++++++++---------------------------------- 2 files changed, 40 insertions(+), 74 deletions(-) diff --git a/tksao/frame/bpanda.C b/tksao/frame/bpanda.C index 0c76f35..b91c5cb 100644 --- a/tksao/frame/bpanda.C +++ b/tksao/frame/bpanda.C @@ -525,44 +525,27 @@ void Bpanda::listA(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, FitsImage* ptr = parent->findFits(sys,center); listPre(str, sys, sky, ptr, strip, 0); - Vector r1 = ptr->mapLenFromRef(annuli_[0],sys,Coord::ARCSEC); - Vector r2 = ptr->mapLenFromRef(annuli_[numAnnuli_-1],sys,Coord::ARCSEC); - double a1 = radToDeg(parent->mapAngleFromRef(angles_[0],sys,sky)); - double a2 = radToDeg(parent->mapAngleFromRef(angles_[numAngles_-1],sys,sky)); - double aa = parent->mapAngleFromRef(angle,sys,sky); - if (a2<=a1+FLT_EPSILON) - a2 += 360; - str << type_ << '('; - switch (sys) { - case Coord::IMAGE: - case Coord::PHYSICAL: - case Coord::DETECTOR: - case Coord::AMPLIFIER: - str << setprecision(parent->precLinear_) << ptr->mapFromRef(center,sys) - << ',' - << setprecision(parent->precAngle_) << a1 << ',' << a2 << ','; - str << numAngles_-1 << ',' - << setprecision(parent->precLenLinear_) << r1 << ',' << r2 << ','; - str << numAnnuli_-1 << ','; - break; - default: - listWCS(ptr,center,sys,sky,format); - str << ra << ',' << dec << ',' - << setprecision(parent->precLinear_) << a1 << ',' << a2 << ',' ; - str << numAngles_-1 << ','; - - if (ptr->hasWCSCel(sys)) { - str << setprecision(parent->precArcsec_) << fixed - << setunit('"') << r1 << ',' << setunit('"') << r2 << ','; - str.unsetf(ios_base::floatfield); - } - else - str << setprecision(parent->precLenLinear_) << r1 << ',' << r2 << ','; - - str << numAnnuli_-1 << ','; - } - str << setprecision(parent->precAngle_) << radToDeg(aa) << ')'; + ptr->listFromRef(str,center,sys,sky,format); + str << ','; + parent->listAngleFromRef(str,angles_[0],sys,sky); + str << ','; + parent->listAngleFromRef(str,angles_[numAngles_-1],angles_[0],sys,sky); + str << ','; + str << numAngles_-1; + str << ','; + if (ptr->hasWCSCel(sys)) + str << setunit('"'); + ptr->listLenFromRef(str,annuli_[0],sys,Coord::ARCSEC); + str << ','; + if (ptr->hasWCSCel(sys)) + str << setunit('"'); + ptr->listLenFromRef(str,annuli_[numAnnuli_-1],sys,Coord::ARCSEC); + str << ','; + str << numAnnuli_-1; + str << ','; + parent->listAngleFromRef(str,angle,sys,sky); + str << ')'; listPost(str, conj, strip); } diff --git a/tksao/frame/epanda.C b/tksao/frame/epanda.C index 7528b97..d3fe716 100644 --- a/tksao/frame/epanda.C +++ b/tksao/frame/epanda.C @@ -489,44 +489,27 @@ void Epanda::listA(ostream& str, Coord::CoordSystem sys, Coord::SkyFrame sky, FitsImage* ptr = parent->findFits(sys,center); listPre(str, sys, sky, ptr, strip, 0); - Vector r1 = ptr->mapLenFromRef(annuli_[0],sys,Coord::ARCSEC); - Vector r2 = ptr->mapLenFromRef(annuli_[numAnnuli_-1],sys,Coord::ARCSEC); - double a1 = radToDeg(parent->mapAngleFromRef(angles_[0],sys,sky)); - double a2 = radToDeg(parent->mapAngleFromRef(angles_[numAngles_-1],sys,sky)); - double aa = parent->mapAngleFromRef(angle,sys,sky); - if (a2<=a1+FLT_EPSILON) - a2 += 360; - str << type_ << '('; - switch (sys) { - case Coord::IMAGE: - case Coord::PHYSICAL: - case Coord::DETECTOR: - case Coord::AMPLIFIER: - str << setprecision(parent->precLinear_) << ptr->mapFromRef(center,sys) - << ',' - << setprecision(parent->precAngle_) << a1 << ',' << a2 << ','; - str << numAngles_-1 << ',' - << setprecision(parent->precLenLinear_) << r1 << ',' << r2 << ','; - str << numAnnuli_-1 << ','; - break; - default: - listWCS(ptr,center,sys,sky,format); - str << ra << ',' << dec << ',' - << setprecision(parent->precAngle_) << a1 << ',' << a2 << ','; - str << numAngles_-1 << ','; - - if (ptr->hasWCSCel(sys)) { - str << setprecision(parent->precArcsec_) << fixed << setunit('"') - << setunit('"') << r1 << ',' << setunit('"') << r2 << ','; - str.unsetf(ios_base::floatfield); - } - else - str << setprecision(parent->precLenLinear_) << r1 << ',' << r2 << ','; - - str << numAnnuli_-1 << ','; - } - str << setprecision(parent->precAngle_) << radToDeg(aa) << ')'; + ptr->listFromRef(str,center,sys,sky,format); + str << ','; + parent->listAngleFromRef(str,angles_[0],sys,sky); + str << ','; + parent->listAngleFromRef(str,angles_[numAngles_-1],angles_[0],sys,sky); + str << ','; + str << numAngles_-1; + str << ','; + if (ptr->hasWCSCel(sys)) + str << setunit('"'); + ptr->listLenFromRef(str,annuli_[0],sys,Coord::ARCSEC); + str << ','; + if (ptr->hasWCSCel(sys)) + str << setunit('"'); + ptr->listLenFromRef(str,annuli_[numAnnuli_-1],sys,Coord::ARCSEC); + str << ','; + str << numAnnuli_-1; + str << ','; + parent->listAngleFromRef(str,angle,sys,sky); + str << ')'; listPost(str, conj, strip); } -- cgit v0.12