Re: [ROOT] Moving a 3D plot with pointer in a TCanvas as a loop is lasting.

From: Rene Brun (brun@pcbrun.cern.ch)
Date: Tue Dec 07 2004 - 19:37:42 MET


Hi Tommaso,

Before your statement
   cin>>Happy;
add teh statement
  gPad->WaitPrimitive();

You will be able to rotate your plot, edit it, etc.
When double clicking you will return to your cin command.
See doc of TPad::WaitPrimitive at:
http://root.cern.ch/root/htmldoc/TPad.html#TPad:WaitPrimitive

Rene Brun

On Tue, 7 Dec 
2004, 
tommaso chiarusi wrote:

> Dear Rooters
> My problem is the following:
> 
> I'm looping on stacks of data.
> For each stack I issue a 3D plot.
> I need to interactively look at that plot, and I need to use the 
> beautiful feature  of the interactive rotation with the pointer.
> If I'm happy I go on with the loop to the next stack of data... and so on.
> 
> The actual problem is that for a pit-stop I do the same (sketched):
> 
> TCanvas *c = new TCanvas("c");
> 
> loop-on-stacks
> {
>   loop-on-data-of-this-stack
>      {
>        fill-3DPLOT()
>      }
> 
> 3DPLOT->Draw();  
> c->Update();
> c->Modified();
> 
> cout<<"Happy (0/1)?"<<endl;
> cin>>happy;
> if(happy) continue;
> else stop;
> }
> 
> 
> How can I smartly force my TCanvas to interact with me as the program is 
> waiting for a "happy" answer?
> 
> Thank you very much!
> Tommaso
> 
> P.S. My system is
> 
> ROOT:  Version   4.00/08       9 July 2004    
> OS: Linux RH-9 
> gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
> 
> 
> 
> 
> 
> 
> 
> 



This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:10 MET