1 //----------------------------------------------------------------------------
2 // Class definition include
3 //----------------------------------------------------------------------------
4 #include "pPlotterScaleY.h"
6 // ----------------------------------------------------------------------------
7 // WX headers inclusion.
8 // For compilers that support precompilation, includes <wx/wx.h>.
9 // ----------------------------------------------------------------------------
15 //----------------------------------------------------------------------------
16 // Class implementation
17 //----------------------------------------------------------------------------
19 #define mpLN10 2.3025850929940456840179914546844
21 IMPLEMENT_CLASS(pPlotterScaleY, pPlotterLayer)
22 //----------------------------------------------------------------------------
24 //----------------------------------------------------------------------------
25 pPlotterScaleY::pPlotterScaleY(wxString aName,int flags) {
28 SetFont(*wxSMALL_FONT);
29 SetPen(*wxGREY_PEN);*/
30 wxFont ff( *wxSMALL_FONT);
31 wxPen pp( *wxGREY_PEN);
36 void pPlotterScaleY::Plot(wxDC& dc, mpWindow& w)
45 float min= (float)w.getMinScrY();
46 float max=(float)w.getMaxScrY();
47 float scrY=(float)w.GetScrY()-50;
48 double scaleY=(scrY/(max-min))*w.getZoomFactor();
49 int offsetpy=w.getOffsetPixelsY();
50 int offsetY=w.getOffsetY();
56 // const int orgy = w.GetScrY()-40;
57 // dc.SetDeviceOrigin(70,orgy);
58 // dc.SetAxisOrientation(true,true); //EED MacOx ???
61 //dc.SetDeviceOrigin(70,orgy);
62 dc.SetDeviceOrigin(70,0);
63 double sizedc = dc.GetSize().GetY()-orgy;
64 //dc.SetAxisOrientation(true,false);
66 // const int extend = w.GetScrY()-50; //EED
69 dc.DrawLine( 0,GetYTranslated(sizedc, 0), 0, GetYTranslated(sizedc, (max-min)*scaleY));
82 float step=(max-min)/divisions;
85 //drawing the axe with the numbers
87 //drawing the first line
88 dc.DrawLine(0,GetYTranslated(sizedc, 0),-10,GetYTranslated(sizedc, 0));
89 s.Printf(_T("%d"),(int)(min));
90 dc.DrawText(s,(wxCoord)-20,GetYTranslated(sizedc, (wxCoord)0));
93 for(float i=0;i<=(max);i+=step)
96 int p=(i-min-offsetY)*scaleY+offsetpy;
99 dc.DrawLine(0,GetYTranslated(sizedc, p),-10,GetYTranslated(sizedc, p));
100 s.Printf(_T("%d"),(int)(i));
101 dc.DrawText(s,(wxCoord)-20,GetYTranslated(sizedc, (wxCoord)p));
104 //drawing the last line
105 int p=(max-min-offsetY)*scaleY+offsetpy;
106 dc.DrawLine(0,GetYTranslated(sizedc, p),-10,GetYTranslated(sizedc, p));
107 s.Printf(_T("%d"),(int)(max));
108 dc.DrawText(s,(wxCoord)-20,GetYTranslated(sizedc, (wxCoord)p));