[root] / trunk / graf3d / x3d / src / TViewerX3D.cxx Repository:
ViewVC logotype

Log of /trunk/graf3d/x3d/src/TViewerX3D.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 35964 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 1 08:29:48 2010 UTC (4 years, 3 months ago) by couet
File length: 21349 byte(s)
Diff to previous 35950
- coverity #12110 #12111

Revision 35950 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 30 16:15:33 2010 UTC (4 years, 3 months ago) by brun
File length: 21313 byte(s)
Diff to previous 23140
use snprintf

Revision 23140 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 11 11:01:39 2008 UTC (6 years, 9 months ago) by rdm
File length: 21309 byte(s)
Diff to previous 20882
move the following directories to "graf2d":

asimage, freetype, gpad, graf, postscript, qt, win32gdk, x11, x11ttf

move the following directories to "graf3d":

eve, ftgl, g3d, gl, x3d

Revision 20882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21309 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21309 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21361 byte(s)
Diff to previous 17359
remove :$ from tag line

Revision 17359 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 16 10:59:38 2007 UTC (8 years ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21371 byte(s)
Diff to previous 15181
Remove dependency on TClass.h

Revision 15181 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri May 26 15:13:03 2006 UTC (8 years, 8 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21393 byte(s)
Diff to previous 13204
one more round of code cleanup: change NULL by 0 in all C++ code.

Revision 13204 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 11 16:12:18 2005 UTC (9 years, 2 months ago) by couet
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21457 byte(s)
Diff to previous 12615
- mods to make the rules checker happy

Revision 12615 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 4 09:16:25 2005 UTC (9 years, 4 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21357 byte(s)
Diff to previous 12589
Fix coding conventions violations.

Revision 12589 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 2 10:22:55 2005 UTC (9 years, 4 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21346 byte(s)
Diff to previous 12459
Fix coding conventions violations.

Revision 12459 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 10 16:26:36 2005 UTC (9 years, 5 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21346 byte(s)
Diff to previous 11356
From Richard:
make TVirtualViewer TObject derv. so TPad can use without modifications.
Also removed last parts of TVirtualGL unrelated to context/draws so it
can be replaced with new TGLManager.

Added:

TGLSAViewer & TGLSAFrame - standalone viewer + GUI main frame.
TGLOutput for containing capture (pdf/eps output).

TX3DFrame (x3d mod) to avoid diamond TObject inheritance from GUI +
TVV3D interface

Removed: TViewerOpenGL

Revision 11356 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 16 17:18:13 2005 UTC (9 years, 10 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 21048 byte(s)
Diff to previous 11305
From Richard Maunder:
More fixes to the external viewer creation/closedown. We now:

i) Always call Modified() and Update() we create an external viewer 3D
(non-pad tyep - x3d or ogl) so that an externally spwaned viewer is
painted automcatically when created. For an internal TViewer3DPad we
asssume this was

ii) No longer paint the pad when the external viewer is closed. This
leaves the pad blank - but this is preferable to causing a double redraw
of the pad as the external viewer is closed - very slow....

This all needs to be revisited as part of supporting multiple viewers
properly on the pad.

Revision 11305 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Mar 11 17:22:21 2005 UTC (9 years, 10 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 20868 byte(s)
Diff to previous 11275
From Richard Maunder:
Incorrect TView projection settings - cartesian by default. Set to
perspective if TGeoPainter/TNode as required by 3D geometry.

x3d: Raise dialog if no valid content and shutdown the viewer again.

Revision 11275 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Mar 10 08:47:10 2005 UTC (9 years, 10 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 20016 byte(s)
Diff to previous 11272
From Richard maunder
Fix a compiler error on Solaris

Revision 11272 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 9 18:19:27 2005 UTC (9 years, 10 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 19995 byte(s)
Diff to previous 9665
From Richard Maunder:

Changes to viewer infrastructure (TBuffer3D,TVirtualViewer3D) to
support:

i) Proper shape specific (sphere, tube, etc) descriptions in TBuffer3D
derived classes - c.f. abuse of raw tesselation blocks before.
ii) On demand filling of buffer sections as required by viewer.
iii) Support for local/master frame shapes descriptions & child object
rejection.
iv) Template/placed shapes ids - enabling viewer to detect/receive
common shapes once and just obtain the new position and id of the
duplicate.

Cleans up all producer (g3d/geom) code so no longer has an viewer
specific knowledge - Paint() methods replaced with
GetBuffer3D/FillBuffer3D methods which complete requested sections of
the buffer.

All viewer specific code now sits on the viewer implementation side of
TVirtualViewer3D. Added a TViewer3DPad class for performing the 3D draws
into pad. In future this should be merged with TView/TView3D possibly.

TBuffer3D is now stripped of functional code (aside from memory
management) and various viewer passback options there previously.
Enforced one way passing a const & to viewer.

Buffers (various types) are held as single static inside producer
function e.g. TGeoShape::GetBuffer3D (c.f. single generic buffer type
fetched from pad previously).

For g3d and geom shapes the top level geometry painter (TNode /
TGeoPainter) controlls painting process, requesting shapes to fill
buffer and passing to 3D viewer.

Exceptions are g3d's TPolyLine3D, TPolyMarker3D & TMarker3DBox. These
are 'standalone' shapes - no controlling 'painter' object. They still
implement Paint(), fill buffer and add to viewer directly.

3D viewer still held / created by pad - and pad has it's own viewer
object (TViewer3DPad).

NOTE:

1. Current scheme supports one 3D viewer only - pad, x3d or OpenGL. This
means that pad goes blank when x3d/OGL is spawned, and is updated again
when it is closed. To be revisited - need to support multiple viewers,
of multiple types - which implies explicit naming or pad controlling
enumeration.

2. OGL viewer now responds correct to modifications in pad, without
having to be reinvoked (as previously). x3d is still decoupled (as
previously) so does not rebuild - too difficult to get working.

Revision 9665 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 3 16:01:19 2004 UTC (10 years, 5 months ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 19493 byte(s)
Diff to previous 9077
From Olivier, Timur Pocheptsov , Andrei Gheata and Rene
Mega patch to introduce the new 3-d interface (to be described later).
The new interface has been tested with both X3D and OpenGL under Linux.
Being tested under Windows.
Note that several changes are expected in these classes (OpenGL in particular)
in the coming days.

Revision 9077 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 1 14:36:41 2004 UTC (10 years, 7 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 16643 byte(s)
Diff to previous 5882
use DeleteWindow() in CloseWindow() method to delete window via timer
and avoid a potentially danagerous test of kNotDeleted bit.

Revision 5882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 12 12:50:46 2003 UTC (12 years ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 16640 byte(s)
Diff to previous 5880
aiai, bug in icc in dynamic_cast<> when casting up to second base class
(in case of multiple inheritance).

Revision 5880 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 12 11:19:09 2003 UTC (12 years ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 16497 byte(s)
Diff to previous 3679
remove also here R__RTTI option.

Revision 3679 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jan 16 13:53:53 2002 UTC (13 years ago) by brun
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 16664 byte(s)
Diff to previous 1281
Add new functions:
   Int_t    ExecCommand(Int_t px, Int_t py, char command);
   void     GetPosition(Float_t &longitude, Float_t &latitude, Float_t &psi);

ExecCommand may be called from a script to animate an X3D picture
// px, py  mouse position
//command = 0       --- move to px,py
//        = w       --- wireframe mode
//        = e       --- hidden line mode
//        = r       --- hidden surface mode
//        = u       --- move object down
//        = i       --- move object up
//        = o       --- toggle controls style
//        = s       --- toggle stereo display
//        = d       --- toggle blue stereo view
//        = f       --- toggle double buffer
//        = h       --- move object right
//        = j       --- move object forward
//        = k       --- move object backward
//        = l       --- move object left
//        = x a     --- rotate about x
//        = y b     --- rotate about y
//        = z c     --- rotate about z
//        = 1 2 3   --- autorotate about x
//        = 4 5 6   --- autorotate about y
//        = 7 8 9   --- autorotate about z
//        = [ ] { } --- adjust focus
// Example:
/*
{
   gSystem->Load("libX3d");
   TCanvas *c1 = new TCanvas("c1");
   TFile *f = new TFile("hsimple.root");
   TTree *ntuple = (TTree*)f->Get("ntuple");
   ntuple->SetMarkerColor(kYellow);
   ntuple->Draw("px:py:pz");
   TViewerX3D *x3d = new TViewerX3D(c1,"");
   for (Int_t i=0;i<500;i++) {
      Int_t px = i%500;
      Int_t py = (2*i)%200;
      x3d->ExecCommand(px,py,0);  //rotate
      if (i%20 >10) x3d->ExecCommand(px,py,'j'); //zoom
      if (i%20 <10) x3d->ExecCommand(px,py,'k'); //unzoom
   }
}
*/

Revision 1281 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 22 12:36:00 2000 UTC (14 years, 1 month ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 14621 byte(s)
Diff to previous 840
remove some compiler warnings detected by HP CC.

Revision 840 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Oct 30 11:00:41 2000 UTC (14 years, 2 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 14629 byte(s)
Diff to previous 772
use SendCloseMessage() to close the window via the close menu button. This
will cause the CloseWindow() signal to be emitted so slots connected to it
will be called.

Revision 772 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Oct 15 01:29:48 2000 UTC (14 years, 3 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 14747 byte(s)
Diff to previous 766
make TViewerX3D a singleton and add proper protection against trying to
open more than one viewer.

Revision 766 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 13 19:04:40 2000 UTC (14 years, 3 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 14075 byte(s)
Diff to previous 3
rewrite of TViewerX3D. Creates now a TGMainFrame with menus in which
X3D is displayed. Also removed the eventloop from X3D and put under
control of the ROOT event loop. Currently only one X3D viewer can be
open (due to several globals in the old X3D code). Protection still to
be added.

Revision 3 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 16 17:00:58 2000 UTC (14 years, 8 months ago) by rdm
Original Path: trunk/x3d/src/TViewerX3D.cxx
File length: 3747 byte(s)
Copied from: branches/rdm/x3d/src/TViewerX3D.cxx revision 2
Diff to previous 2
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.

Revision 2 - (view) (download) (as text) (annotate) - [select for diffs]
Added Tue May 16 17:00:58 2000 UTC (14 years, 8 months ago) by rdm
Original Path: branches/rdm/x3d/src/TViewerX3D.cxx
File length: 3747 byte(s)
Initial import of ROOT into CVS

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9