** Date Started: August 2000
**
** This is part of the CTSim program
-** Copyright (C) 1983-2000 Kevin Rosenberg
+** Copyright (c) 1983-2001 Kevin Rosenberg
**
-** $Id: dlgreconstruct.cpp,v 1.14 2001/01/27 21:02:20 kevin Exp $
+** $Id: dlgreconstruct.cpp,v 1.19 2002/05/30 06:27:46 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
#pragma implementation "dlgreconstruct.h"
#endif
-// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
-#ifdef __BORLANDC__
-#pragma hdrstop
-#endif
-
#include "wx/utils.h"
#include "wx/frame.h"
#include "wx/button.h"
IMPLEMENT_CLASS(ReconstructDialog, wxDialog)
-ReconstructDialog::ReconstructDialog (Reconstructor& rReconstruct, const Projections& rProj, ImageFile& rIF, const int iTrace, wxWindow *parent)
-: wxDialog(parent, -1, "Reconstruction", wxDefaultPosition), m_rReconstructor(rReconstruct), m_rProjections(rProj), m_rImageFile(rIF), m_pSGPDriver(NULL), m_pSGP(NULL), m_iTrace(iTrace), m_pDC(NULL), m_btnAbort(0), m_btnPause(0), m_btnStep(0)
+ReconstructDialog::ReconstructDialog (Reconstructor& rReconstruct, const Projections& rProj,
+ ImageFile& rIF, const int iTrace, wxWindow *parent)
+: wxDialog(parent, -1, "Reconstruction", wxDefaultPosition), m_rReconstructor(rReconstruct),
+ m_rProjections(rProj), m_rImageFile(rIF), m_pSGPDriver(NULL), m_pSGP(NULL),
+ m_iTrace(iTrace), m_pDC(NULL), m_btnAbort(0), m_btnPause(0), m_btnStep(0)
{
m_state = Continue;
m_iLastView = -1;
wxSize sizeDlg (m_nxGraph, m_nyGraph);
m_nxImage = m_rImageFile.nx();
if (m_nxImage > MAX_IMAGE_X)
- m_nxImage = MAX_IMAGE_X;
+ m_nxImage = MAX_IMAGE_X;
m_nyImage = m_rImageFile.ny();
if (m_nyImage > MAX_IMAGE_Y)
- m_nyImage = MAX_IMAGE_Y;
+ m_nyImage = MAX_IMAGE_Y;
sizeDlg.x += m_nxImage;
- sizeDlg.y = max (sizeDlg.y, m_nyImage);
+ sizeDlg.y = imax (sizeDlg.y, m_nyImage);
m_iClientX = sizeDlg.x;
m_iClientY = sizeDlg.y;
m_pSGP->setViewport (0, 0, 1, 1);
m_pSGP->setWindow (0, 0, 1, 1);
m_pSGP->setTextColor (C_LTRED, -1);
- double dCharHeight = m_pSGP->getCharHeight();
- m_pSGP->setTextSize (dCharHeight * 2);
+ m_pSGP->setTextPointSize (20.);
m_pSGP->moveAbs(0., m_pSGP->getCharHeight());
m_pSGP->drawText (szProgress);
- m_pSGP->setTextSize (dCharHeight);
-
- // m_pSGP->setViewport (0.0, 0.1, 0.66, 1.); // viewport equiv now done in subroutine
- m_rReconstructor.reconstructView (iViewNumber, 1, m_pSGP, bBackprojectView);
+ m_pSGP->setTextPointSize (10.);
+ int iXDialog, iYDialog;
+ GetClientSize (&iXDialog, &iYDialog);
+ double dGraphWidth = (iXDialog - m_nxImage) / static_cast<double>(iXDialog);
+
+ m_rReconstructor.reconstructView (iViewNumber, 1, m_pSGP, bBackprojectView, dGraphWidth);
+ ::wxYield();
+::wxYield();
+::wxYield();
+::wxYield();
+
ImageFileArrayConst v = m_rImageFile.getArray();
int xBase = m_nxGraph;
int yBase = 0;
m_pSGP->getDriver().idWX()->DrawBitmap(bitmap, xBase, yBase, false);
delete imageData;
}
+
+ ::wxYield();
}
bool