From 67dc3bcba40f1a2afdb806e790501c440a806160 Mon Sep 17 00:00:00 2001 From: William Joye Date: Tue, 19 Dec 2017 17:09:21 -0500 Subject: upgrade AST --- tksao/frame/base.C | 110 +++++++++++++++-------------------------------------- 1 file changed, 30 insertions(+), 80 deletions(-) diff --git a/tksao/frame/base.C b/tksao/frame/base.C index 9559be3..9241265 100644 --- a/tksao/frame/base.C +++ b/tksao/frame/base.C @@ -663,88 +663,38 @@ Matrix Base::calcAlignWCS(FitsImage* fits1, FitsImage* fits2, AstFrameSet* cvt = (AstFrameSet*)astConvert(wcs2, wcs1, ""); - if (cvt != AST__NULL) { - int naxes1 = astGetI(astGetFrame(cvt,AST__BASE),"Naxes"); - int naxes2 = astGetI(astGetFrame(cvt,AST__CURRENT),"Naxes"); - cerr << naxes1 << " x " << naxes2 << endl; - - Vector ll2 = fits2->center() - Vector(10,10); - Vector ur2 = fits2->center() + Vector(10,10); - double ll[4]; - ll[0] =ll2[0]; - ll[1] =ll2[1]; - ll[2] =1; - ll[3] =1; - double ur[4]; - ur[0] =ur2[0]; - ur[1] =ur2[1]; - ur[2] =1; - ur[3] =1; - - int ss = (naxes1+1)*naxes2; - double* fit = new double[ss]; - double tol = 1; - if (astLinearApprox(cvt, ll, ur, tol, fit) == AST__BAD) - return rr; - for (int ii=0; iicenter() - Vector(10,10); + Vector ur2 = fits2->center() + Vector(10,10); + double ll[4]; + ll[0] =ll2[0]; + ll[1] =ll2[1]; + ll[2] =1; + ll[3] =1; + double ur[4]; + ur[0] =ur2[0]; + ur[1] =ur2[1]; + ur[2] =1; + ur[3] =1; + + int ss = (naxes1+1)*naxes2; + double* fit = new double[ss]; + double tol = 1; + if (astLinearApprox(cvt, ll, ur, tol, fit) != AST__BAD) + rr = Matrix(fit[naxes2], fit[naxes2+1], + fit[naxes2+naxes1], fit[naxes2+naxes1+1], + fit[0], fit[1]); + + if (fit) + delete [] fit; + astEnd; // now, clean up memory return rr; } -- cgit v0.12