X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=libctgraphics%2Fsgp.cpp;h=ee325e1d0b314451a33491edcd963623d6c3cc6e;hb=de411914da8b157958e9caae917bf1edeafbb713;hp=57904a621f9a64120b4c210ef33db6fd84743438;hpb=b361677a2f7d5b443641faec70b057f2a84dc77e;p=ctsim.git diff --git a/libctgraphics/sgp.cpp b/libctgraphics/sgp.cpp index 57904a6..ee325e1 100644 --- a/libctgraphics/sgp.cpp +++ b/libctgraphics/sgp.cpp @@ -7,7 +7,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: sgp.cpp,v 1.30 2001/03/10 23:14:16 kevin Exp $ +** $Id: sgp.cpp,v 1.31 2001/03/11 15:27:30 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 @@ -104,6 +104,7 @@ SGP::SGP (const SGPDriver& driver) setTextPointSize (12); setColor (C_BLACK); setLineStyle (LS_SOLID); + setMarker (MARKER_POINT); } @@ -170,6 +171,22 @@ SGP::stylusNDC (double x, double y, bool beam) void SGP::markerNDC (double x, double y) { + int xp = static_cast(x * (m_iPhysicalXSize - 1) + 0.5); + int yp = static_cast(y * (m_iPhysicalYSize - 1) + 0.5); + if (m_driver.isWX()) + yp = m_iPhysicalYSize - yp; + +#if HAVE_WXWINDOWS + if (m_driver.isWX()) { + m_driver.idWX()->DrawPoint (xp, yp); + m_driver.idWX()->DrawPoint (xp-1, yp-1); + m_driver.idWX()->DrawPoint (xp+1, yp+1); + m_driver.idWX()->DrawPoint (xp+1, yp-1); + m_driver.idWX()->DrawPoint (xp-1, yp+1); + } +#endif + m_iCurrentPhysicalX = xp; + m_iCurrentPhysicalY = yp; } void @@ -406,8 +423,9 @@ SGP::setRasterOp (int ro) void -SGP::setMarker (int idMarke, int iColor) +SGP::setMarker (int idMarker) { + m_iMarker = idMarker; } //============================================================== @@ -647,7 +665,6 @@ SGP::markerAbs (double x, double y) double yndc = y; mc_to_ndc.transformPoint (&xndc, &yndc); markerNDC (xndc, yndc); - stylusNDC (xndc, yndc, false); // move to location m_dCurrentWorldX = x; m_dCurrentWorldY = y; }