TCanvas *c1 = NULL; const UInt_t kNPMT = 5; void example(Bool_t draw_text=kTRUE) { Double_t **pos = new Double_t*[kNPMT]; for( UInt_t i = 0; i < kNPMT; i++ ) pos[i] = new Double_t[3]; delete c1; c1 = new TCanvas( "c1", "PMT layout", 10, 10, 700, 700 ); Double_t rmax = 1; TH1F *frame = gPad->DrawFrame( -rmax, -rmax, rmax, rmax ); TText *txt; if( draw_text ) txt = new TText( 0, 0, "" ); for( UInt_t i = 0; i < kNPMT; i++ ) { if( draw_text ) { TString s( "" ); s += i; txt->DrawText( pos[i][0], pos[i][1], s ); } } c1->Modified(); c1->Update(); for( UInt_t i = 0; i < kNPMT; i++ ) delete [] pos[i]; delete [] pos; }