** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: sgp.cpp,v 1.17 2000/12/06 01:46:43 kevin Exp $
+** $Id: sgp.cpp,v 1.22 2000/12/18 06:47:03 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
static const double dScreenDPI = 82;
static const double dPointsPerInch = 72.;
m_dPointsPerPixel = dPointsPerInch / dScreenDPI;
- const int iTestPointSize = 72;
+ const int iTestPointSize = 12;
m_font.SetPointSize (iTestPointSize);
m_driver.idWX()->SetFont(m_font);
double dTestCharHeight = m_driver.idWX()->GetCharHeight();
- m_dPointsPerPixel = iTestPointSize / dTestCharHeight;
+ m_dPointsPerPixel = iTestPointSize / dTestCharHeight;\r
+// wxWHITE_BRUSH->SetColour (255, 255, 255);\r
+// wxWHITE_BRUSH->SetStyle (wxSOLID);\r
+ m_driver.idWX()->SetBackground (*wxWHITE_BRUSH);
}
#endif
g2_clear (m_driver.idG2());
#endif
#if HAVE_WXWINDOWS
- if (m_driver.isWX())
- m_driver.idWX()->Clear();
+ if (m_driver.isWX()) {\r
+ wxBrush brushWhite;\r
+ brushWhite.SetColour(255,255,255);\r
+ m_driver.idWX()->SetBackground(brushWhite);\r
+ m_driver.idWX()->Clear();\r
+ m_driver.idWX()->SetBackground(wxNullBrush);\r
+#if 1\r
+ wxPen pen;\r
+ pen.SetColour(255,255,255);\r
+ m_driver.idWX()->SetBrush (brushWhite);\r
+ m_driver.idWX()->DrawRectangle (0, 0, m_iPhysicalXSize, m_iPhysicalYSize);\r
+ m_driver.idWX()->SetBrush (wxNullBrush);\r
+#endif\r
+ }
#endif
}
void
SGP::setTextSize (double height)
{
- height /= (xw_max - xw_min);
+ height /= (yw_max - yw_min); // convert to NDC
#if HAVE_G2_H
if (m_driver.isG2())
g2_set_font_size(m_driver.idG2(), (height * m_iPhysicalYSize));
#if HAVE_WXWINDOWS
if (m_driver.isWX()) {
dHeight = m_driver.idWX()->GetCharHeight();
- dHeight /= static_cast<double>(m_iPhysicalYSize);
+ dHeight /= static_cast<double>(m_iPhysicalYSize);\r
+ dHeight /= (yv_max - yv_min); // scale to viewport;
}
#endif
- dHeight *= (yw_max - yw_min);
+ dHeight *= (yw_max - yw_min); // scale to world coordinates
return dHeight;
}
#if HAVE_WXWINDOWS
if (m_driver.isWX()) {
dWidth = m_driver.idWX()->GetCharWidth();
- dWidth /= static_cast<double>(m_iPhysicalXSize);
+ dWidth /= static_cast<double>(m_iPhysicalXSize);\r
+ dWidth /= (xv_max - xv_min); // scale to viewport
}
#endif
- dWidth *= (xw_max - xw_min);
+ dWidth *= (xw_max - xw_min); //scale to world coordinates
return dWidth;
}
void
-SGP::drawText (const string& rsMessage)
+SGP::drawText (const std::string& rsMessage)
{
drawText (rsMessage.c_str());
}