Hi Simon, Thank for reporting this problem with TCanvas::DrawClonePad. It happens when the source pad has itself subpads. I have fixed the problem in the CVS version. Rene Brun Simon Blyth wrote: > > { > /* > Dear All, > > attempting to combine 2 canvases to make a 3rd > which is a composite of the 2 -- doesnt work > with ROOT Version 3.04/02 10 March 2003 > on RedHat 8.0 > > the c2 canvas expands to fill the full c3 canvas, > ... how do I pursuade it to reside in its pad ? > > Yours, Simon > > */ > > TLine l1(0,0,1,1); > TLine l2(1,0,0,1); > > c1 = new TCanvas("c1","c1",200,200,200,200); > c2 = new TCanvas("c2","c2",400,200,200,200); > > c1->Divide(2,2,0,0); > for( Int_t i=1 ; i<=4 ; ++i ){ > c1->TPad::cd(i); // > l1.Draw(); > gPad->Modified(); gPad->Update() ; > } > c1->Modified(); c1->Update(); > > c2->Divide(2,2,0,0); > for( Int_t i=1 ; i<=4 ; ++i ){ > c2->TPad::cd(i); // > l2.Draw(); > gPad->Modified(); gPad->Update() ; > } > c2->Modified(); c2->Update(); > > /* > these make no difference, as do trying to fix aspect ratio, fixing > sizes etc... > > c1->SetFillStyle(4000); > c2->SetFillStyle(4000); > c1->SetEditable(kFALSE); > c2->SetEditable(kFALSE); > */ > > c3 = new TCanvas("c3","c3",600,200,400,200); > c3->TPad::Divide(2,1,0,0); > c3->Modified(); > c3->Update(); > > c3->cd(1); > c1->DrawClonePad(); > > c3->cd(2); > c2->DrawClonePad(); > > /* > delete c2 ; > delete c1 ; > */ > > }
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:11 MET