X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=libctsim%2Fphantom.cpp;h=f8b1278cef478037b28352f45537e8e8185b22ce;hb=711cae0ee02e046370fdb4d6c6f440596ff71980;hp=2063683d0675d8532a2a31feb635c4ecf8e3a82a;hpb=286d655a25df2668bd65ad365676c6ecc94415a1;p=ctsim.git diff --git a/libctsim/phantom.cpp b/libctsim/phantom.cpp index 2063683..f8b1278 100644 --- a/libctsim/phantom.cpp +++ b/libctsim/phantom.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: phantom.cpp,v 1.10 2000/07/22 15:45:33 kevin Exp $ +** $Id: phantom.cpp,v 1.11 2000/07/28 08:28:08 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 @@ -306,29 +306,12 @@ Phantom::print () const void Phantom::show () const { - double wsize = m_xmax - m_xmin; - double xmin = m_xmin; - double ymin = m_ymin; - double xmax, ymax; - SGP_ID gid; - - if ((m_ymax - m_ymin) > wsize) - wsize = m_ymax - m_ymin; - wsize *= 1.1; - - xmax = xmin + wsize; - ymax = ymin + wsize; - - printf("Drawing Phantom:\n\n"); - printf(" data limits: %9.3g, %9.3g, %9.3g, %9.3g\n", m_xmin, m_ymin, m_xmax, m_ymax); - printf(" window size: %9.3g, %9.3g, %9.3g, %9.3g\n", xmin, ymin, xmax, ymax); - - gid = sgp2_init (0, 0, "Phantom Show"); - sgp2_window (xmin, ymin, xmax, ymax); + SGPDriver driverSGP ("Phantom Show"); + SGP sgp (driverSGP); + draw (sgp); - draw(); - - sgp2_close (gid); + cout << "Press return to continue"; + cio_kb_getc(); } #endif @@ -342,10 +325,22 @@ Phantom::show () const #ifdef HAVE_SGP void -Phantom::draw () const +Phantom::draw (SGP& sgp) const { + double wsize = m_xmax - m_xmin; + double xmin = m_xmin; + double ymin = m_ymin; + + if ((m_ymax - m_ymin) > wsize) + wsize = m_ymax - m_ymin; + wsize *= 1.1; + + double xmax = xmin + wsize; + double ymax = ymin + wsize; + + sgp.setWindow (xmin, ymin, xmax, ymax); for (PElemIterator i = m_listPElem.begin(); i != m_listPElem.end(); i++) - sgp2_polyline_abs ((*i)->xOutline(), (*i)->yOutline(), (*i)->nOutlinePoints()); + sgp.polylineAbs ((*i)->xOutline(), (*i)->yOutline(), (*i)->nOutlinePoints()); } #endif