Ignore:
Timestamp:
06/03/03 17:45:39 (21 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/mgui
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mgui/MCamDisplay.cc

    r2153 r2158  
    6666#include "MImgCleanStd.h"
    6767
    68 #define kItemsLegend 50 // see SetPalette(1,0)
     68#define kItemsLegend 48 // see SetPalette(1,0)
    6969
    7070ClassImp(MCamDisplay);
     
    7474//  Default Constructor. To be used by the root system ONLY.
    7575//
    76 MCamDisplay::MCamDisplay()
    77     : fGeomCam(NULL), fAutoScale(kTRUE)
     76MCamDisplay::MCamDisplay() : fGeomCam(NULL), fAutoScale(kTRUE)
    7877{
    7978    fNumPixels = 0;
     
    9089    fMinimum = 0;
    9190    fMaximum = 1;
    92 
    93     //fData.Set(0);
    9491}
    9592
     
    9996//
    10097MCamDisplay::MCamDisplay(MGeomCam *geom)
    101     : fGeomCam(NULL), fAutoScale(kTRUE), fData(geom->GetNumPixels()), fMinimum(0), fMaximum(1)
     98    : fGeomCam(NULL), fAutoScale(kTRUE), fColors(kItemsLegend), fData(geom->GetNumPixels()), fMinimum(0), fMaximum(1)
    10299{
    103100    fGeomCam = (MGeomCam*)geom->Clone();
     
    139136
    140137    fLegend  = new TClonesArray("TBox",  kItemsLegend);
    141     fLegText = new TClonesArray("TText", kItemsLegend);
    142 
    143     for (Int_t i = 0; i<kItemsLegend; i++)
    144     {
    145         TBox  &newbox = *new ((*fLegend)[i])  TBox;
    146         TText &newtxt = *new ((*fLegText)[i]) TText;
    147 
     138    fLegText = new TClonesArray("TText", kItemsLegend+1);
     139
     140    for (Int_t i=0; i<kItemsLegend; i++)
     141    {
     142        TBox &newbox = *new ((*fLegend)[i])  TBox;
    148143        newbox.SetX1(fRange);
    149144        newbox.SetX2(fRange+w);
     
    154149        newbox.SetBit(/*kNoContextMenu|*/kCannotPick);
    155150#endif
    156 
     151    }
     152
     153    for (Int_t i=0; i<kItemsLegend+1; i++)
     154    {
     155        TText &newtxt = *new ((*fLegText)[i]) TText;
    157156        newtxt.SetTextSize(0.025);
    158157        newtxt.SetTextAlign(12);
     
    344343    {
    345344        gStyle->SetPalette(51, NULL);
    346         Int_t c[50];
    347         for (int i=0; i<50; i++)
    348             c[49-i] = gStyle->GetColorPalette(i);
    349         gStyle->SetPalette(50, c);
     345        TArrayI c(kItemsLegend);
     346        for (int i=0; i<kItemsLegend; i++)
     347            c[kItemsLegend-i-1] = gStyle->GetColorPalette(i);
     348        gStyle->SetPalette(kItemsLegend, c.GetArray());
    350349    }
    351350    else
     
    714713void MCamDisplay::UpdateLegend(Float_t minphe, Float_t maxphe, Bool_t islog)
    715714{
    716     for (Int_t i=0; i<kItemsLegend; i+=3)
     715    for (Int_t i=0; i<kItemsLegend+1; i+=3)
    717716    {
    718717        const Float_t pos = (Float_t)i/kItemsLegend;
     
    724723            val = minphe + pos * (maxphe-minphe);
    725724
    726         TText &txt = *GetText(i);
     725        TText &txt = *(TText*)fLegText->At(i);
    727726        txt.SetText(txt.GetX(), txt.GetY(), Form(val<1e6?"%5.1f":"%5.1e", val));
    728727    }
  • trunk/MagicSoft/Mars/mgui/MCamDisplay.h

    r2153 r2158  
    1010#ifndef ROOT_TArrayF
    1111#include <TArrayF.h>
     12#endif
     13#ifndef ROOT_TArrayI
     14#include <TArrayI.h>
    1215#endif
    1316#ifndef ROOT_TClonesArray
     
    4043    Float_t        fRange;       // the range in millimeters of the present geometry
    4144
    42     Int_t          fColors[50];
     45    TArrayI        fColors;
    4346
    4447    TArrow        *fArrowX;      // Coordinate System
     
    5861
    5962    TBox  *GetBox(Int_t i)  { return (TBox*) fLegend->At(i); }
    60     TText *GetText(Int_t i) { return (TText*)fLegText->At(i); }
    6163
    6264    MHexagon &operator[](int i) { return *((MHexagon*)fPixels->At(i)); }
Note: See TracChangeset for help on using the changeset viewer.