r626: no message
[ctsim.git] / libctgraphics / ezplot.cpp
index ed1ca233d26ef8e8c02e967e78717935a77b64bd..79a4ebbb908c226babb1f72f2e54e03b16d0a328 100644 (file)
@@ -6,7 +6,7 @@
 **  This is part of the CTSim program
 **  Copyright (c) 1983-2001 Kevin Rosenberg
 **
-**  $Id: ezplot.cpp,v 1.31 2001/02/20 04:48:45 kevin Exp $
+**  $Id: ezplot.cpp,v 1.32 2001/03/10 23:14:16 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
@@ -466,14 +466,11 @@ EZPlot::getLegend (unsigned int iCurve) const
 void
 EZPlot::plot (SGP* pSGP)
 {
-
   if (m_vecCurves.size() <= 0)
     return;
   
-
   m_pSGP = pSGP;
 
-
   m_pSGP->setWindow (0., 0., 1., 1.);
   
   if (s_textsize == TRUE)
@@ -481,6 +478,8 @@ EZPlot::plot (SGP* pSGP)
 
   charheight = m_pSGP->getCharHeight();
   charwidth = m_pSGP->getCharWidth();
+  double symheight = charheight * 0.3;       // size of symbol in NDC 
+  double symwidth = symheight;
  
   const EZPlotCurve& firstCurve = *m_vecCurves[0];
 
@@ -668,7 +667,7 @@ EZPlot::plot (SGP* pSGP)
         m_pSGP->setLineStyle (SGP::LS_SOLID);
         for (int j = 0; j < 5; j++) {
           m_pSGP->moveAbs (xmin + j * xinc, y);
-          symbol(iSymbol, 0.5 * charwidth, 0.5 * charheight);
+          symbol (iSymbol, symwidth, symheight);
         }
       }
       ++iLegend;       // move to next legend position 
@@ -816,10 +815,6 @@ EZPlot::plot (SGP* pSGP)
   m_pSGP->setLineStyle (SGP::LS_SOLID);
   drawAxes();
   
-  // size of symbol in NDC 
-  double symwidth = charwidth;
-  double symheight = charheight;
-  
 
   double clipRect[4];
 
@@ -847,27 +842,18 @@ EZPlot::plot (SGP* pSGP)
       for (int i = 1; i < pCurve->m_iPointCount; i++) {
         double x2 = convertWorldToNDC_X (pCurve->x[i]);
         double y2 = convertWorldToNDC_Y (pCurve->y[i]);
-
         double x2Clip = x2;
-
         double y2Clip = y2;
 
         if (clip_rect (x1, y1, x2Clip, y2Clip, clipRect)) {
-
           m_pSGP->moveAbs (x1, y1);
-
           m_pSGP->lineAbs (x2Clip, y2Clip);
-
         }
-
         x1 = x2;
-
         y1 = y2;
-
       } 
     }
     if (iSym > 0) {
-
       int iSymFreq = getSymbolFreq (iCurve);
       m_pSGP->setLineStyle (SGP::LS_SOLID);
       double x = convertWorldToNDC_X (pCurve->x[0]);
@@ -1144,6 +1130,8 @@ EZPlot::symbol (int sym, double symwidth, double symheight)
     m_pSGP->moveRel (-0.5 * symwidth, 0.0);
     m_pSGP->lineRel (symwidth, 0.0);
     m_pSGP->moveRel (-0.5 * symwidth, 0.5 * symheight);
+  } else if (sym == SB_POINT) {
+    m_pSGP->pointRel (0, 0);
   }
 }