source: trunk/source/visualization/OpenGL/History@ 1137

Last change on this file since 1137 was 1135, checked in by garnier, 16 years ago

preparation to integrate Vis in UI for Qt

File size: 34.6 KB
RevLine 
[1135]1$Id: History,v 1.155 2009/10/21 08:14:44 lgarnier Exp $
[529]2-------------------------------------------------------------------
3
4 =========================================================
5 Geant4 - an Object-Oriented Toolkit for Simulation in HEP
6 =========================================================
7
[1092]8 Category History file for visualization/OpenGL
9 ----------------------------------------------
[529]10This file should be used by G4 developers and category coordinators
11to briefly summarize all major modifications introduced in the code
12and keep track of all category-tags.
13It DOES NOT substitute the CVS log-message one should put at every
14committal in the CVS repository !
15
16 ----------------------------------------------------------
17 * Reverse chronological order (last date on top), please *
18 ----------------------------------------------------------
[1135]19
2021 October 2009 Laurent Garnier
21 - G4OpenGLQtViewer : Prepare to attach viewer In UI
22
[1133]2315 October 2009 Laurent Garnier
24 - G4OpenGLViewer.cc : Fix a problem with printing. On mac OSX version
25 > 10.5.7? or Ubuntu > 9.04? AND with user account configure in french
26 (or canadian I believe), the decimal point character was defined by
27 "," (see LC_NUMERIC). This cause a problem on reading eps files.
28 Changed "," to "."
29
[1125]3013 October 2009 Laurent Garnier
31 - G4OpenGLImmediateQtViewer/StoredQtViewer : some cleaning
[1131]32 - G4OpenGLImmediateQtViewer : Remove picking to true at initialisation
33 - G4OpenGLQtViewer.cc : Fix a redraw problem on mac OS X 10.6
[1132]34 - G4OpenGLStoreQtViewer.cc,G4OpenGLImmediateQtViewer.cc : Fix width()
35 and height() problem on mac OS X 10.6
[1131]36
[1125]3729 September 2009 John Allison (opengl-V09-02-07)
38- Tagged.
[529]39
[1095]4018 August 2009 Laurent Garnier
41 - G4OpenGLXmViewer : Fix a wrong initialization introduce by the
42 new way of handling window size hints (January 2009)
43
[1094]4429 July 2009, Laurent Garnier
45 - G4OpenGLQtViewer : Ensure the GL frame size will be correct
46 by setting a 0 size margin around
47
[1092]4827 July 2009, Laurent Garnier
49 - G4OpenGLStoredQtViewer : Remove picking to true at initialisation
[1040]50
[1092]5120 May 2009, Laurent Garnier (opengl-V09-02-06)
52 - Fixed compilation errors on WIN32-VC for WIN32 specific drivers.
53
5418 May 2009, Joseph Perl (opengl-V09-02-05)
55 - Correct G4OpenGLViewerMessenger.hh
56
[1046]5714 May 2009, Laurent Garnier (opengl-V09-02-04)
58 - G4OpenGLViewer : Add methods to manage print size and filename
59 - G4OpenGLViewerMessenger : Added /vis/ogl/set/printSize
60 - G4OpenGLViewerMessenger : Added /vis/ogl/set/printFilename
61 - G4OpenGLQtViewer.cc,G4OpenGLXmMainMenuBarCallback.cc, renaming
62 according to first point.
63
[1040]6413 May 2009, Laurent Garnier
65 - G4OpenGLStoredQtViewer.cc: Fix a second view redraw at ShowView() call
66 - G4OpenGLQtViewer : Remove unuseful variables, renaming others
[1041]67 - G4OpenGLViewer : Add method for resizing properly windows. Add methods
68 to get window width, height and to know if size has changed
69 - G4OpenGLQtViewer, G4OpenGLStoredQtViewer, G4OpenGLImmediateQtViewer,
70 G4OpenGLXmViewer, G4XmWindowsHandlingCallback, G4OpenGLXViewer :
71 Apply the previous changes.
[1040]72
[1036]736 May 2009, Laurent Garnier
74 - G4OpenGLQtViewer.cc: Fix compilation warning and error with gcc4.4
75
7628th April 2009, John Allison
77 - G4OpenGLViewerMessenger.cc: Added return statement at end of every
78 "if (command == ..." statement. (Because of test for OGLS, it is
79 not elegant to use "if...else if...else" structure.)
80
[1023]8128th April 2009, Laurent Garnier
82 - G4OpenGLXViewer,G4OpenGLViewer : End of moving printEPS and associated
83 functions from GLXViewer to GLViewer.
84 - G4OpenGLXViewer :
85 - Remove debug methods
86 - Add check in SetView() method
[1036]87 - G4OpenGLViewer : Add a glReadBuffer before glReadPixel in grabPixel method
[529]88
[973]898th April 2009, Laurent Garnier
90 - G4OpenGLBitmapStore.hh : BugFix correction for windows (introduce 2nd February ?)
[975]91 - G4OpenGLViewer.hh : move methods in private
92 - G4OpenGLXViewer.hh : Add debug methods
93 - G4OpenGLImmediateXmViewer.cc, G4OpenGLStoredViewer.cc, G4OpenGLStoredXmViewer.cc,
94 G4OpenGLStoredXViewer.cc, G4OpenGLViewer.cc : Add debug messages
95 - G4OpenGLStoredXmViewer.cc,G4OpenGLStoredXViewer.cc, G4OpenGLStoredWin32Viewer.cc :
96 - Add a DrawDisplay list in case of KernelVisit=1 and nothing new to display.
97 - Add a flush at the end of the view.
98 - G4OpenGLViewer.cc :
99 - Improve the fix and resizing when X/Y size was even (lack of precision
100 in a /2)
101 - Set line/point size at a default size when printing.
102 - G4OpenGLXmWindowsHandlingCallbacks.cc : print method rename in printEPS
103 - G4OpenGLXViewer.cc : Lot of changes, try to debug it. Pb when printing in pixmap
104 mode on some windows size
[970]105
[1023]1066th April 2009, Joseph Perl (opengl-V09-02-02, then opengl-V09-02-03)
[973]107 - New tag to clean up all of the cases of files that changed only in the cvs id.
108
[959]10924th March 2009, Laurent Garnier (opengl-V09-02-01)
[949]110 - G4OpenGLViewer : Add a fix and resizing when X/Y size was even (lack of precision
111 in a /2)
112
[950]11318th March 2009 John Allison
114- G4OpenGLViewerMessenger.cc: printMode and transparency are available
115 for all OGL windows (they were previously inadvertently hidden by
116 an OGLS requirement).
117
[945]11816th March 2009, Laurent Garnier
119 - G4OpenGLViewer : Add a check on max viewport dimensions when setting size.
120
[940]1214rd March 2009, Laurent Garnier
[938]122 - G4OpenGLQtViewer:
123 - Suppress some warnings when saving file
124 - Changing size is now allowed when saving (to save with better resolution than screen size)
[941]125 - G4OpenGLViewer:
126 - Some renaming for print methods to be more clear about Vectored and non Vectored
127 - Now using Gl2PS method to do PS (changes also in G4OpenGLXViewer and G4OpenGLQtViewer)
128 - Suppress unuseful printX methods (heritated form XViewer)
129 - Add methods to handle printVectored and NonVector cases
130 - G4OpenGLViewerMessanger : Changes methods to get new G4OpenGLViewer methods to print
[938]131
[935]1321st March 2009, Laurent Garnier
[938]133 - Remplacing glBitmap by GL_POINTS to draw marker : Speed improvment
[935]134 and gl2ps can now draw Markers.
135
[924]13616 February 2009, Laurent Garnier
137 - Modifications in GNUMakefile for gl2ps.
138 - G4OpenGLViewer,G4OpenGLViewerMessenger.cc,G4OpenGLXmMainMenubarCallbacks.cc
139 ,G4OpenGLXmViewer.cc modified for gl2ps and some renaming "print" in
140 "printVectoredEPS"
141
[915]1422nd February 2009 Laurent Garnier
143- Improve Anticipate headers declaration in all files
144- Factorize grabPixels function in G4OpenGLViewer
145- Begin of refactoring printEPS function
146
[912]14722th January 2009 Laurent Garnier
148- Fix bug in ratio and geometry on X/Xm/Qt/Win32 viewers
149
[911]15019th January 2009 Laurent Garnier
[942]151- Change G4DEBUG definition by G4DEBUG_VIS_OGL
[911]152
[906]15312th January 2009 John Allison
154- G4OpenGLViewer.cc: Pick up X and Y window size hints to define viewport.
155
[897]1562 December, Laurent Garnier
157 - G4OpenGLImmediateXmViewer,G4OpenGLStoredXmViewer,G4OpenGLXmViewer
158 G4OpenGLImmediateXViewer, G4OpenGLStoredXViewer, G4OpenGLXViewer,
159 G4OpenGLXmWindowHandlingCallbacks,
160 G4OpenGLImmediateQtViewer.cc, G4OpenGLStoredQtViewer, G4OpenGLQtViewer
161 G4OpenGLImmediateWin32Viewer.cc, G4OpenGLStoredWin32Viewer, G4OpenGLWin32Viewer
162 -> Replace WinSize by fWinSize and some improvments about size initialization
163
164 - G4OpenGLQtViewer.hh : Suppress WinSize private variable
[898]165 - Now Could pass XString like 400x600-0+0 to viewers and set position and location. It
166 will work for Qt, X, Win32 for the moment.
[897]167
[906]16824 October, Laurent Garnier (opengl-V09-01-03)
[873]169 - Change GEANT4_QT_DEBUG flag by QTDEBUG
170 - Suppress unuseful DEBUG messages
171
[866]17212th October Laurent Garnier
173 - G4OpenGLQtExportDialog : improvments for Qt3"
174 - G4OpenGLQtViewer,G4OpenGLImmediateQtViewer,G4OpenGLStoreQtViewer : Add the name on OpenGlQt viewers
175 - G4OpenGLStoredQtViewer,G4OpenGLImmediateQt, G4OpenGLStoredQt : Change OGLSQT and OGLIQT by OGLSQt and OGLIQt
176
[862]1772 October Laurent Garnier
178 - Fix a crash when there was no scene.
179
[848]18028 July Laurent Garnier
181 - Fix a bug in XmRotation panel introduce in last commit by myself.
182
[845]18320th June 2008 Laurent Garnier
184 - Correct some warnings
185 - Move rotation code of Xm and Qt in G4OpenGLViewer::rotateScene. Same code in now shared
186
[843]18712th June 2008 Laurent Garnier
[845]188 - Emit signals when moving/rotate scene, in order to get them in external app
[843]189
[804]19028th Mai 2008 Laurent Garnier
[845]191 - Add mouse wheel zoom commands
[804]192
[790]19328th April 2008 Laurent Garnier
[845]194 - Add better moc control/compilation step in GNUmakefile
195 - Fix a problem when launching QT VIS without QT UI (N02 for example)
[789]196
[790]19728th April 2008 John Allison (opengl-V09-01-02)
198- G4OpenGLStoredSceneHandler: Tidied constructors of nested classes.
199
[789]2004th April 2008 John Allison (opengl-V09-01-01)
201- Fixed DBL_MAX problem in 2D drawing:
202 o changed G4OPENGL_DBL_MAX to G4OPENGL_FLT_BIG.
203- Fix gcc-4.3.0 compiler warnings.
204
[776]20511th March 2008, Laurent Garnier
206 - Resolve QT3 compilation errors
[714]207
[776]20810th March 2008, Laurent Garnier
209 - Add a dialog panel to make movies (Right button->Actions->Movie parameters)
210 - Add ability to "auto rotate" volume launched with quick mouse move
211 - Lots of improvments for Qt3
212 - Improvments on moving steps with shortcuts
213 - Could now select between orthogonal/perspective view mode
214
2151st February 2008 John Allison
216 - G4OpenGLQtViewer.cc: Fix #ifdef QT protection.
217 - G4OpenGLSceneHandler.cc: Small improvement to logic of setting GL_LIGHTING.
218
[714]21930th January 2008, Laurent Garnier
[704]220 - Add moving camera on left/right/up/down arrown, going forward/backward
221 on SHIFT+up/down, zoom in with +/- keys
222 - Add a context menu entry for projection perspective/orthographic
223 - Fix some bugs on windows in export dialog
224
[714]22515th January 2008, Laurent Garnier
[688]226 - Fixed some layout problems on export dialog box
227 - Some improvements on exports formats
228 - Fix a bug in the help command : The clic callback on a item was not
229 working on windows
230 - Fix a crash at exit when launched on a MAC.
231 - EPS export format is now ready for Qt3
232 - Add Vectoriel EPS export format
233 - Fix an aspect ratio deformation when resize the widget
234 - Fix a crash at launch with leopard
235 - When selecting the "move" mouse action, this action was set even when
236 mouse button was released. Fixed : Now we should clic to have the move action
237 - GNUmakefile : Added a macro for moc file
238 - Moc files : Suppression of all theses files. They are now autogenerated
239 thanks to config/common.gmk
240
2414th January 2008 John Allison (opengl-V09-01-00)
242- Implemented extended 2D interface.
243
[632]24430th November 2007 Laurent Garnier
245- Improvements for Qt3
246- moc files : Adding other versions for QT_MOC_REVISION 28,58 and
247 59, but this is not the right solution..
248
[631]24919th November 2007 Joseph Perl (for Laurent Garnier) (opengl-V09-00-04)
250- Added GEANT4_QT_DEBUG flag to more places
251
[610]25215th November 2007 John Allison (opengl-V09-00-03)
253- Re-introduced Qt files, now properly protected by cpp flags.
254- cpp flags also added to some other files not previously properly protected.
255
[609]25615 Nov 2007, Laurent Garnier
257 - G4UIQt,G4Qt : Adding a GEANT4_QT_DEBUG flag to hide all debug messages
258 - G4UIQt,G4Qt : Compilation improvements for Qt3
259 - G4UIQt,G4Qt : Minors corrections on G4UIQt helpWidget
260
26114 Nov 2007, Laurent Garnier
262 - G4OpenGLStoredQtViewer.cc : Correction of a bug with mouse move event in
263 Qt4
264 - G4OpenGLQtExportDialog_moc.cc, G4OpenGLQtViewer.cc, G4OpenGLQtViewer_moc.cc :
265 Adding protection for Qt version between 4.0 and 4.2
266
[610]26713th November 2007 John Allison (opengl-V09-00-02)
268- Removed Qt files from tag. File are still at head - need fixing.
269
[609]27013 Nov 2007, Laurent Garnier
271 - G4UIQt,G4Qt : Moving all moc in one big file interface/G4UIQT_moc.cc,
272 including Qt3 and Qt4 moc support
273
[610]27410th November 2007 John Allison (opengl-V09-00-01)
275- Moved WinSize_x, y to base class G4OpenGLViewer.
276- Minor improvement in guidance for /vis/ogl/printEPS.
277
[609]27809 Nov 2007, Laurent Garnier
279 - G4UIQt,G4Qt : Change all include directive to be compatible with Qt3
280
28108 Nov 2007, Laurent Garnier
282 - moc_G4OpenGLQtExportDialog.cc move in G4OpenGLQtExportDialog_moc.cc
283 - moc_G4OpenGLQtViewer.cc move to G4OpenGLQtViewer_moc.cc
284
28527 Sept 2007, Laurent Garnier
286 - Adding sur files for G4UIQt driver :
287 - G4OpenGLImmediateQt.cc
288 - G4OpenGLImmediateQtViewer.cc
289 - G4OpenGLQtExportDialog.cc
290 - G4OpenGLQtViewer.cc
291 - G4OpenGLStoredQt.cc
292 - G4OpenGLStoredQtViewer.cc
293 - moc_G4OpenGLQtExportDialog.cc
294 - moc_G4OpenGLQtViewer.cc
295
29628th September 2007 lgarnier
297- first import of G4UI Qt files : Do not try to compil them
298
[593]29921st August 2007 John Allison (opengl-V09-00-00)
300- Removed redundant G4OpenGLXViewerMessenger.
301
30225th May 2007 John Allison (opengl-V08-03-03)
303- G4OpenGLSceneHandler and G4OpenGLXViewerMessenger:
304 Fixed gcc-4.1.2 compiler warnings.
305
30625th May 2007 John Allison (opengl-V08-03-02)
307- G4OpenGLXViewer: Trapped glXMakeCurrent in Initialise function.
308
30924th May 2007 John Allison (opengl-V08-03-01)
310- Fixes for SUN.
311
31216th May 2007 John Allison (opengl-V08-03-00)
313- Fix compiler warnings on SLC4.
314- Bug fixes:
315 o Correct path /vis/ogl/set/printMode.
316 o Add SetView to pixmap screen dump ("/vis/ogl/set/printMode pixmap"
317 and "/vis/ogl/printEPS").
318
3198th May 2007 John Allison (opengl-V08-02-06)
320- Moved vectored PostScript printing to G4OpenGLViewer.
321- /vis/ogl/printEPS should work for all viewers, including Win32.
322- Introduced /vis/ogl/set/printMode vectored|pixmap, currently only
323 effective on X windows (and still somewhat buggy).
324
3254th April 2007 John Allison (opengl-V08-02-05 - needs visman-V08-02-04)
326- Implemented picking for OGLSX ( as well as OGLIX). Hopefully works
327 for OGL*Win32. Still doesn't work for OGL*Xm.
328
3293rd April 2007 John Allison (opengl-V08-02-04 - needs visman-V08-02-03)
330- G4OpenGLStoredSceneHandler:
331 o Re-organised display lists on a per-primitive basis, i.e., one
332 display list per primitive. (This is so that, except for text,
333 the colour - or, rather, intensity - can be brought out of the
334 display list into the TOList (Transient Object List) and
335 controlled for the Display-by-Time feature. Previously, if more
336 than one primitive were drawn between BeginPrimitives and
337 EndPrimitives, it would finish up all in one display list, colour
338 commands included. Rationalises and fixes a rare bug in the
339 Display-by-Time feature - see August 2006.)
340 o Added AddPrimitive(const G4Polymarker&) so that it is treated as
341 one primoitive to fit with the above re-organisation.
342- Implemented picking for OGLIX.
343
34425th March 2007 John Allison (opengl-V08-02-03)
345- Fix compiler warnings.
346
3478th February 2007 John Allison (opengl-V08-02-02)
348- Fixed Windows problem with DBL_MAX. (Introduced G4OPENGL_DBL_MAX.)
349- G4OpenGLXViewer.cc: Small bug fix in print(). (Context was switched
350 .but not switched back. Not serious, because context was always set
351 before normal drawing.)
352
3539th January 2007 John Allison (opengl-V08-02-01)
354- Implemented bitmap markers for MarkerSizeType == screen. (The old
355 polygon implementation remains for MarkerSizeType == world.)
356- Added G4OpenGLBitMapStore to assist the above.
357- G4OpenGLXViewer::CreateGLXContext:
358 o Bug fix: Added missing break in colormap lookup routine.
359
3605th January 2007 John Allison (opengl-V08-02-00)
361- G4OpenGLSceneHandler.cc:
362 o Followed change of signature of GetLineWidth in visman-V08-02-00.
363 o Minor efficiency improvements.
364
[529]36521st November 2006 John Allison (opengl-V08-01-09)
366- Fixed compiler warnings.
367
3681st November 2006 John Allison (opengl-V08-01-08)
369- Replace /vis/oglx/set/printEPS by /vis/oglx/printEPS. The new command
370 actually initiates a print, rather than set a flag for printing.
371
37224th October 2006 John Allison (opengl-V08-01-07)
373- G4OpenGLStoredViewer.cc: Calculate light front horizon properly.
374- G4OpenGLViewerMessenger.cc: Make refresh depend on auto-refresh.
375
37619th September 2006 John Allison (opengl-V08-01-06)
377- Added time origin for light front.
378- Added /vis/ogl/set/transparency.
379- G4OpenGLStoredViewer.cc: Bug fix in time range acceptance.
380
3814th September 2006 John Allison (opengl-V08-01-05)
382- Implement cutaways.
383- Immediate mode: G4OpenGLImmediateSceneHandler.cc: Flush all
384 primitives (see detector being drawn).
385- /vis/oglx/set/printEPS: change parameter default to true.
386
38730th August 2006 John Allison (opengl-V08-01-04)
388- G4OpenGLSceneHandler:
389 o Implemented line width.
390 o Switched off back face culling when clipping so that the inside of
391 volumes can be seen.
392 o Added CreateSection/CutawayPolyhedron to exploit generic
393 sectioning (DCUT) and cutaways. Currently not activated due to
394 instabilities in BooleanProcessor. Local sectioning still active
395 but broken (at least on Mac) due to apparent change in effect of
396 clipping planes (polyhedron edges not reconstructed).
397 o Rationalised calculation of marker size.
398- G4OpenGLStoredSceneHandler:
399 o Fixed bug due to recursive calls of AddPrimitive (polymarkers -> markers).
400 o Pick up time range from G4VisAttributes.
401- G4OpenGLViewer(Messenger):
402 o Added position and colour to /vis/ogl/set/displayHeadTime.
403 o Added /vis/ogl/set/displayLightFront.
404- G4OpenGLStoredViewer.cc:
405 o Rationalised CompareForKernelVisit. (Local sectioning still active.)
406 o Added position and colour to DisplayHeadTime.
407 o Added DisplayLightFront.
408
40916th August 2006 John Allison (opengl-V08-01-03)
410- Corrected Solaris compilation error.
411- Added /vis/ogl/set/fade and displayHeadTime.
412
41314th August 2006 John Allison (opengl-V08-01-02)
414- Needs visman-V08-01-02.
415- G4OpenGLStored: Implemented display-by-time. Only available in
416 stored mode at present. Only implemented for circle, square,
417 polyline and polymarker at present, enough for currently available
418 trajectory models. Time is communicated via G4AttValues.
419- Added G4OpenGLViewerMessenger.
420- Added /vis/ogl/set/startTime and endTime of displayed objects.
421- All factories: Instantiated G4OpenGLViewerMessenger.
422- G4OpenGLViewer: Added fStart/EndTime.
423- G4OpenGLXViewer.cc: Graceful recovery from unexpected tokens in
424 spewPrimitiveEPS and spewSortedFeedback.
425
42617th July John Allison (opengl-V08-01-01)
427- Added /vis/oglx/set/printEPS (prints eps file on every update).
428
4293rd July 2006 John Allison (opengl-V08-01-00)
430- Elimination of redundant variable doublebuffer and implementation of
431 FinishView in all viewers.
432
43330th May 2006 Joseph Perl (opengl-V08-00-08)
434- G4OpenGLImmediateWin32Viewer: Removed tests on doublebuffer since that
435 variable seems to have random behavior and should be assumed false for
436 this viewer.
437
43829th May 2006 Joseph Perl (opengl-V08-00-07)
439- G4OpenGLWin32Viewer, G4OpenGLImmediateWin32Viewer, G4OpenGLStoredWin32Viewer:
440 Removed common FinishView and instead made separate FinishView for the two different
441 versions of this viewer since each wants a different buffer swapping behaviour.
442
44312th May 2006 John Allison (opengl-V08-00-06)
444- G4OpenGLWin32Viewer: Fixed buffer swapping behaviour.
445
44628th April 2006 John Allison (opengl-V08-00-05 - needs visman-V08-00-14)
447- G4OpenGLStoredX/Xm/Win32Viewer.cc: Fixed buffer swapping problem when
448 recomputing transients.
449
45024th April 2006 John Allison (opengl-V08-00-04)
451- Fixed compilation problem on Windows.
452
45319th April 2006 John Allison (opengl-V08-00-03)
454- G4OpenGLSceneHandler, G4OpenGLStoredSceneHandler and
455 G4OpenGLImmediateSceneHandler:
456 o Implemented Begin/EndPrimitives2D (needs visman-V08-00-12 and
457 greps-V08-00-02).
458 o Migrated to direct access to G4PhysicalVolumeModel.
459- G4OpenGLStoredX/Xm/Win32Viewer.cc: bug fix for conditional drawing
460 of display lists in DrawView.
461
46214th March 2006 John Allison (opengl-V08-00-02)
463- Refined display list building and re-drawing algorithm.
464 o G4OpenGLStoredSceneHandler::EndModeling: Changed to GL_COMPILE_AND_EXECUTE.
465 o Avoided unnecessary re-execution in DrawView (X, Xm and Win32).
466- G4OpenGLStoredSceneHandler::RequestPrimitives: Refined display list
467 re-use algorithm. In test19 with global culling off, numbers of
468 display lists used are:
469 o 191 No re-use:
470 o 73 Before this change: re-use except replicas (includes parameterised).
471 o 33 After this change: re-use except parameterised and replicas in radius.
472
47326th January 2006 John Allison (opengl-V08-00-01)
474- Coworks with visman-V08-00-04 (removed fModified).
475- Removed references to fModified.
476- Tidying: Removed unnecessary ClearView.
477- G4OpenGLSceneHandler.cc: Added some (commented out) code for
478 possible future implementation of 2D drawing.
479- G4OpenGLXViewer.cc: Improved exception printing.
480
48111th January 2006 John Allison (opengl-V08-00-00)
482- Improved efficiency: all DrawView's:
483 o Don't call ClearView.
484 o Set flag so SetView will not be called in ProcessView.
485 o Leave background colour to ClearView.
486- Used dynamic_cast<G4OpenGLViewer*>, no need for G4OpenGLViewerDataStore.
487- G4OpenGLXmViewerMessenger: Made a smart singleton; interrogates vis manager
488 for current viewer.
489
49024th November 2005 John Allison (opengl-V07-01-09)
491- Protected G4OpenGLXmViewerMessenger with #ifdef G4VIS_BUILD_OPENGLXM_DRIVER.
492
49322nd November 2005 John Allison (opengl-V07-01-08)
494- Added G4OpenGLXmViewerMessenger.
495- Corrected text position.
496- Made depth test for polyhedron GL_LEQUAL (slightly dominant).
497
49817th November 2005 Gabriele Cosmo
499- Fixed settings of background style for WIN32 viewers.
500
50113th November 2005 John Allison (opengl-V07-01-07)
502- Implemented X-Window-style geometry hints in G4OpenGLXViewer.
503
50413th October 2005 John Allison (opengl-V07-01-06)
505- Allowed any colour background.
506- Implemented non-uniform scaling.
507- Migration to <sstream>.
508
50929th September 2005 John Allison (opengl-V07-01-05)
510- Added G4OpenGLViewerDataStore to facilitate access of viewer data by
511 scene handler.
512- Re-implemented transparency button in OpenGLXm.
513
51413th September 2005 John Allison (opengl-V07-01-04 - needs visman-V07-01-02)
515- Implemented white background for all OGL viewers.
516- G4OpenGLSceneHandler.cc:
517 o Fixed hidden line removal (bug introduced in opengl-V07-01-02).
518 o Fixed treatment of triangular polygons for drawing of auxiliary/soft lines.
519 o Corrected GetTextColour(text).
520 o Corrected GetColour(polyhedron).
521
5225th September 2005 John Allison (opengl-V07-01-03)
523- Bug fix: stored transparent objects were being lost.
524
5252nd September 2005 John Allison (opengl-V07-01-02 - needs visman-V07-01-01)
526- Bug fix: edgeflags problem introduced with smooth shading in
527 opengl-V07-01-00.
528- Implementation of a "better algorithm" for the rendering of
529 transparent polyhedron objects. It renders all opaque objects
530 first, then renders the transparent objects with the depth buffer in
531 read-only mode (see OpenGL Programming Guide). It uses the new
532 facility in G4VSceneHandler::ProcessScene for an optional second pass
533 of the run-duration models in the scene. Note this algorithm is
534 still only an approximation. It will still give the wrong blended
535 colour if two transparent objects are rendered front first. For
536 nested transparent objects, this is unfortunate, because
537 G4PhysicalVolumeModel traverses Geant4's mother-daughter hierarchy
538 in such a way that mothers come first. Also, there is no guaranteed
539 relationship between the order of rendering and the depth of two
540 transparent objects if they are at the same level or in different
541 branches of the hierarchy. Still, the only error will be an
542 incorrect colour - the objects will still give the appearance of
543 transparency, so it's a pretty good algorithm. (An even better
544 algorithm would be to attempt to render the facets in depth order,
545 deepest first. But how do you calculate the depth - centre of area,
546 deepest corner? One can still imagine pathalogical cases that would
547 sometimes give the wrong colour. Also, for stored mode, the order
548 is fixed in a display list so when the user rotates the view, one
549 would lose the depth ordering. I think we have to accept that
550 blending in OpenGL is only ever an approximation. For accurate
551 blending, use RayTracer.)
552
55328th August 2005 John Allison (opengl-V07-01-01)
554- Half-way implementation of rendering of transparent polyhedron
555 objects. In this implementation, no account is taken of the order
556 of rendering. Transparent objects are rendered with depth testing
557 off so that objects behind can still be seen. But this means that
558 opaque objects in front do not obscure them - and they jolly well
559 should! A better algorithm is to render all opaque objects first,
560 then render the transparent objects with the depth buffer in
561 read-only mode (see OpenGL Programming Guide). This is going to
562 take a little more thought - see opengl-V07-01-02.
563
56420th July 2005 John Allison (opengl-V07-01-00)
565- Introduced smooth shading, taking advantage of hitherto un-noticed
566 feature of HepPolyhedron::GetNextFacet that calculates the normals
567 at each vertex so that curved surfaces are rendered more
568 realistically (Gouraud shading).
569- G4OpenGLImmediateSceneHandler.cc: Removed unnecessary #include's.
570- G4OpenGLXmViewer.cc: Fixed to use window size hints. This changes
571 the default window size. It used to be 400x400, hardcoded in
572 G4OpenGLXmViewer.cc, but now it picks up the
573 G4ViewParameters::GetWindowSizeHintX/Y, which defaults to 600x600.
574 The user may change it on the command line, e.g:
575 /vis/open OGLSXm 500
576 or
577 /vis/viewer/create ! ! 500
578
57930th May 2005 John Allison (opengl-V07-00-03)
580- Fixed compilation problem in OpenGL on SUN. (Replaced multimap by
581 map of vectors in G4OpenGLFontBaseStore.)
582
5834th May 2005 John Allison (opengl-V07-00-02)
584- Restored sequence Set/Clear/DrawView in ClearTransientStore. (It
585 was taken out to prevent recursive calling, but that seems to be OK,
586 and it is needed to implement refresh at end of event/run.)
587
58822nd April 2005 John Allison (opengl-V07-00-01)
589- Rationalised work of opengl-V07-00-00. Functionality unchanged.
590 o G4OpenGLViewer.hh: Created virtual void CreateFontLists(){}.
591 o In all concrete viewers, added call to CreateFontLists().
592 o Moved font code for X to G4OpenGLXViewer::CreateFontLists().
593 o There is no longer a need to implement in the XmViewer, since it
594 now inherits. Thus the font code now only appears once for X.
595 o Awaiting implementation for WIN32.
596
59717th April 2005 John Allison (opengl-V07-00-00)
598- Based on vis-V07-00-13.
599- Implemented text for X-Windows viewers. Uses glXUseXFont, which
600 creates display lists for nominated fonts. Simple-minded scheme in
601 which each viewer creates its own font display lists for a variety
602 of sizes, which are accessed by the scene handler through a new
603 class, G4OpenGLFontBaseStore. Affected methods:
604 G4OpenGLXViewer::CreateMainWindow()
605 G4OpenGLXmViewer::CreateMainWindow()
606 G4OpenGLSceneHandler::AddPrimitive (const G4Text& text)
607
60818th November 2004 John Allison (opengl-V06-02-07)
609- Removed redundant fLastVP from G4OpenGLStoredSceneHandler.
610
61115th November 2004 Guy Barrand
612- G4OpenGLWin32Viewer::ShowView : glFlush was not sufficient
613 to see trajectories (for example with N03). Correct so that
614 ShowView do a FinishView that does : glFlush, wglSwapBuffer
615 and empty the Windows message queue.
616
61722nd September 2004 John Allison (opengl-V06-02-06)
618- doxygen output to tmp area.
619- Trap non-regular polyhedrons.
620
62113th September 2004 Gabriele Cosmo (opengl-V06-02-05)
622- G4OpenGLTransform3D.cc: simplified implementation for GetMatrix()
623 to allow for porting on CLHEP-1.9.X series.
624
62523rd July 2004 John Allison
626- Draws auxiliary edges if required.
627- Added auxiliary edge button.
628
62916th July 2004 John Allison (opengl-V06-02-04)
630- Refinements to hidden line, hidden surface removal.
631
63214th July 2004 John Allison (opengl-V06-02-03)
633- Removed superfluous #include "G4VisManager.hh" from G4OpenGLXmViewer.cc.
634
63513th July 2004 John Allison (opengl-V06-02-02)
636- Hidden line *and* hidden surface removal now works.
637
6389th July 2004 John Allison (opengl-V06-02-01)
639- Fixed long-standing problem with hidden line removal.
640- Improved messages on failure to get visual.
641- Added GLX_STENCIL_SIZE explicit request to visual attributes - most
642 systems provided by default anyway, so no effect.
643
6441st July 2004 John Allison (opengl-V06-02-00)
645- Rationalised G4OpenGLSceneHandler ready for hidden line removal.
646- Bug fix in G4OpenGLXmPanningCallbacks.cc for dolly control.
647
64818th June 2004 Gunter Folger (geant4-06-02)
6499th June 2004 Gabriele Cosmo (vis-V06-01-03)
6507th June 2004 Gabriele Cosmo (vis-V06-01-02)
651- GNUmakefile and disclaimer changes - see visualization/History.
652
6539th April 2004 John Allison (vis-V06-01-01 + interfaces-V06-01-00)
654- Tagged OpenGL as below. Joint with interfaces-V06-01-00.
655
6567th April 2004 Guy Barrand
657- visualization/OpenGL/* : use the G4OpenGL.hh file.
658- Added : visualization/OpenGL/include/G4OpenGL.hh to encapsulate
659 the include of gl/gl.h and gl/glu.h that may be platform dependant.
660 It permits to rm some #ifdef WIN32 spread in the code. It opens also
661 the way to the usage of the Apple OpenGL on a Mac.
662
66317th February 2004 John Allison (opengl-V06-00-00)
664- Fixed bug #581: wrong order of statements in
665 G4OpenGLXViewer::~G4OpenGLXViewer (see bug report).
666
6674th October 2003 Gabriele Cosmo (vis-V05-02-01)
668- GNUmakefile:
669 o replaced "digits+hits" with "digits_hits".
670- Coworks with "geometry-V05-02-00" and "digits_hits-V05-02-00".
671
67222nd September 2003 John Allison (vis-V05-02-00, greps-V05-02-00)
673- Cosmetic change to regularise names:
674 o changed _Feedback3Dcolo to G4OpenGLXViewerFeedback3Dcolor.
675 o changed _DepthIndex to G4OpenGLXViewerDepthIndex.
676
67723rd June 2003 Guy Barrand (opengl-V05-01-02)
678- Commit a first implementation of G4OpenGLWin32Viewer.
679
68010th June 2003 Gabriele Cosmo (opengl-V05-01-01)
681- More fixes for warnings in viewers classes.
682- Added inclusion of <windows.h> for WIN32 platforms when GL headers
683 are included.
684
68505th June 2003 Gabriele Cosmo (opengl-V05-01-00)
686- Fixes for porting compilation on WIN32:
687 o G4OpenGLWin32Viewer[.hh.cc]: removed inclusion of <GL/glx.h>.
688 o G4OpenGLViewer.cc: replaced local variables near/far with pnear/pfar
689 since declared 'obsolete' in WIN32 platforms.
690
69127th November 2002 John Allison (vis-V04-01-08)
692- Improved algorithm of CompareForKernelVisit.
693
69411th November 2002 John Allison (opengl-V04-01-02)
695- Corrected inclusion of G4OpenGLXViewer #ifdef X_DRIVER.
696- Added G4OpenGLSceneHandler::AddThis for trajectories and hits - simply
697 call default but there as a marker and encourager.
698- Added tracking and digits+hits/hits to GNUmakefile.
699
70016th October 2002 John Allison (opengl-V04-01-01)
701- Fix for WIN32. Now compiles but viewer not implemented.
702
70324th June 2002 John Allison (opengl-V04-01-00)
704- Further cosmetic changes in G4OpenGLXViewer.cc for DEC compiler.
705
70610th June 2002 John Allison (opengl-V04-00-03)
707- Cosmetic changes for SUN-CC in G4OpenGLXmConvenienceRoutines.cc.
708
7096th June 2002 John Allison (opengl-V04-00-02)
710- Cosmetic changes for GNU compiler in G4OpenGLXViewer.cc.
711
71223rd February 2002 John Allison (opengl-V04-00-01)
713- Changes to encourage compilation on Windows in preparation for
714 implementation of G4OpenGLWin32Viewer. Removed spurious includes of
715 glx.h, unistd.h and assert.h.
716
71724th August 2001 John Allison (vis-V03-02-13)
718- Limited the printing of warnings in
719 G4OpenGLSceneHandler::AddPrimitive (const G4Text& text).
720
72114th August 2001 John Allison (vis-V03-02-11)
722- Improved KernelVisitDecision.
723- Fixed a few small bugs in multiple "stored" viewers, but see next item.
724- There's an outstanding bug in OpenGL Stored. If there is more than
725 one viewer controlled by a scene handler, after a ClearStore on the
726 scene handler, e.g., with /vis/scene/notifyHandlers, the first
727 viewer to get refreshed should trigger the display list rebuild, but
728 the second need not. However, when the second viewer's turn comes,
729 the display lists are there, and are called, e.g.,
730 G4OpenGLStoredXViewer::DrawView calls
731 G4OpenGLStoredViewer::DrawDisplayLists that calls glCallList, but
732 nothing appears on the screen. To overcome this there is some
733 temporary code in G4VViewer::NeedKernelVisit which marks *all*
734 viewers to force a rebuild. To see the symptoms, comment out that
735 temporary code and issue these commands:
736 /vis/verbose c
737 /control/verbose 2
738 /vis/scene/create
739 /vis/scene/add/volume
740 /vis/sceneHandler/create OGLSX
741 /vis/viewer/create ! ! 1
742 /run/beamOn
743 /vis/viewer/create ! ! 1
744 /vis/viewer/select viewer-0
745 /vis/viewer/viewpointThetaPhi 20 20
746 /vis/viewer/select viewer-1
747 /vis/viewer/viewpointThetaPhi 40 40
748 /vis/viewer/set/style surface
749 /vis/viewer/refresh
750 /vis/viewer/select viewer-0
751 /vis/viewer/refresh
752 /vis/viewer/select viewer-1
753 /vis/viewer/set/style wireframe
754 /vis/scene/notifyHandlers
755 You may have to do this too:
756 /vis/viewer/select viewer-0
757 /vis/scene/notifyHandlers
758 One of the viewers is empty. Curious!!
759
7609th August 2001 John Allison (vis-V03-02-10-00)
761- Implemented G4OpenGLStoredSceneHandler::ClearTransientStore()
762- Removed G4OpenGLSceneHandler::AddPrimitive (const G4Polymarker&) (it only
763 invoked G4VSceneHandler::AddPrimitive (const G4Polymarker&) which is
764 picked up by inheritance anyway.
765- Removed lots of unnecessary header files from G4OpenGLStoredSceneHandler.cc.
766- Corrected order of calling base class functions in
767 G4OpenGLStoredSceneHandler::Begin/EndModeling.
768
76924th July 2001 John Allison (vis-V03-02-06)
770- G4OpenGLSceneHandler::AddPrimitive (const G4Text&) handles transformation.
771
77214th July 2001 John Allison (opengl-V03-02-00)
773- Fixed crash in optimised mode: added Initialise() to viewers so
774 that windows are opened after viewers are fully constructed.
775
7762nd April 2001 John Allison (opengl-V03-00-01 wrt vis-V03-00-09)
777- Tidied G4OpenGLXmViewer callback code. Removed superfluous header files.
778
7797th March 2001 John Allison
780- Changed char* to const char* in many places and that gave problems in
781 calls to Xt and Xm. Hope all's OK. Differences:
782 cvs diff -r vis-V03-00-06 vis-V03-00-07
783
78425th January 2001 John Allison (opengl-V03-00-00)
785- Implemented running re-calculation of up-vector in the case of "object
786 rotation" (lights move with camera) to prevent "flipping" of view when
787 camera passes through up-vector. Note that the default is "camera
788 rotation" (lights do not move with camera, i.e., remain fixed relative
789 to object) so the default is that this "flipping" can happen. To set
790 "object rotation" (lights move with camera) use
791 /vis/lights/move_with_camera true (soon to be
792 /vis/viewer/set/lights move-with-camera) or click "Object" radio button
793 on Rotation Panel in OpenGLXm mode.
794- Changed some objects to references for efficiency. E.g.:
795 const G4Vector3D& vp = pView->fVP.GetViewpointDirection ().unit ();
796
79722nd May 2000 John Allison (opengl-V01-01-00)
798- Fixed slow response of 2nd window of OpenGLXm. Worked around Mesa bug
799 by sharing static visuals in G4OpenGLXViewer (Guy Barrand):
800 static XVisualInfo* vi_single_buffer;
801 static XVisualInfo* vi_double_buffer;
802- Removed ChooseVisual from G4OpenGLXmViewer.cc - done in base class
803 G4OpenGLXViewer.
804- Protected double deletion of window in destructors of G4OpenGLXmViewer
805 and G4OpenGLXViewer (Guy Barrand).
806- Changed requested bits per colour to r,g,b = 1,1,1 in G4OpenGLViewer.cc.
807- Corrected order of CreateMainWindow() and InitializeGLView() in X*Viewer
808 constructors.
Note: See TracBrowser for help on using the repository browser.