Geant4 Cross Reference |
1 # Category vis_toolssg History << 1 ------------------------------------------------------------------- 2 2 3 See `CONTRIBUTING.rst` for details of **requir << 3 ========================================================= 4 which **must** added in reverse chronological << 4 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 5 It must **not** be used as a substitute for wr << 5 ========================================================= 6 << 6 7 ---------------------------------------------- << 7 Category History file 8 << 8 --------------------- 9 ## 2024-06-21 Ben Morgan (vis_toolssg-V1-02-02 << 9 This file should be used by G4 developers and category coordinators 10 - Use runtime checks for MT mode. << 10 to briefly summarize all major modifications introduced in the code 11 << 11 and keep track of all category-tags. 12 ## 2024-04-30 Ben Morgan (vis_toolssg-V11-02-0 << 12 It DOES NOT substitute the CVS log-message one should put at every 13 - Replace TOOLSSG vis driver variables that ar << 13 committal in the CVS repository ! 14 fundamental config options (e.g. GEANT4_USE_ << 14 15 variable. << 15 ---------------------------------------------------------- 16 << 16 * Reverse chronological order (last date on top), please * 17 ## 2024-01-11 Ben Morgan (vis_toolssg-V11-02-0 << 17 ---------------------------------------------------------- 18 - Make Freetype a private dependency << 18 19 << 19 History file for visualization ToolsSG category - a vis driver based on 20 ## 2023-09-05 Ben Morgan (vis_toolssg-V11-01-1 << 20 g4tools scene graph logic. See geant4/source/analysis/g4tools/tools.license 21 - Set AUTOMOC property on module when Qt used. << 21 ------------------------------------------------ 22 << 23 ## 2023-08-14 John Allison (vis_toolssg-V11-01 << 24 - G4ToolsSGQtGLES, G4ToolsSGQtZB: << 25 - Simplify IsUISessionCompatible. << 26 - Exploit new method, G4UImanager::GetBase << 27 << 28 ## 2023-07-16 John Allison (vis_toolssg-V11-01 << 29 - G4ToolsSGViewer: Protect null scene pointer << 30 << 31 ## 2023-07-12 Guy Barrand (vis_toolssg-V11-01- << 32 - G4ToolsSGQtViewer.[hh,cc] renamed G4ToolsSGQ << 33 - G4ToolsSGQtGLES.cc, sources.cmake: class nam << 34 << 35 ## 2023-06-04 John Allison (vis_toolssg-V11-01 << 36 - IsUISessionCompatible: Remove the function w << 37 << 38 ## 2023-05-29 Guy Barrand (vis_toolssg-V11-01- << 39 - sources.cmake: declare the G4*ZB.hh, G4*ZB.c << 40 - new ToolsSG Qt ZB sub-driver: new files: G4T << 41 - new ToolsSG X11 sub-driver. New files: G4Too << 42 - new ToolsSG Xt sub-driver. New files: G4Tool << 43 - new ToolsSG Windows sub-driver. New files: G << 44 - sources.cmake: in if(GEANT4_USE_TOOLSSG_XT_G << 45 - src/G4ToolsSGQtGLES.cc, G4ToolsSGXtGLES.cc: << 46 << 47 ## 2023-04-27 Ben Morgan (vis_toolssg-V11-01-0 << 48 - Link to Qt6OpenGLWidgets library when using << 49 << 50 ## 2023-04-14 John Allison (vis_toolssg-V11-01 << 51 - Co-working: visman-V11-01-04, greps-V11-01-0 << 52 opengl-V11-01-06, openinventor-V11-01-04. << 53 - New Scene Tree Phase 2 - first implementatio << 54 - See visualization/management/History for f << 55 - Revert earlier changes for the new scene tre << 56 - After the introduction of virtual G4VInter << 57 they are no loner necessary. << 58 << 59 ## 2023-04-02 Ben Morgan (vis_toolssg-V11-01-0 << 60 - No longer link to QtPrintSupport, which is n << 61 << 62 ## 2023-03-28 John Allison (vis_toolssg-V11-01 << 63 - G4ToolsSGViewer.hh: << 64 - Call UpdateGUISceneTree() if (kernelVisit << 65 - G4ToolsSGQtViewer.hh: << 66 - uiQt becomes fUIQt, i.e., a data member. << 67 - Implement virtual void UpdateGUISceneTree( << 68 - if (fUIQt) fUIQt->UpdateSceneTree(fScene << 69 << 70 ## 2023-03-22 Ben Morgan (vis_toolssg-V11-01-0 << 71 - Export public compile definitions to indicat << 72 "use on link" model. << 73 << 74 ## 2023-02-06 Ben Morgan (vis_toolssg-V11-01-0 << 75 - Isolate private headers and update dependenc << 76 << 77 ## 2023-01-30 Ben Morgan (vis_toolssg-V11-01-0 << 78 - Link to new G4UIcore/UIimplementation module << 79 << 80 ## 2022-11-25 Gabriele Cosmo (vis_toolssg-V11- << 81 - Fixed compilation warnings for implicit type << 82 << 83 ## 2022-10-28 John Allison (vis_toolssg-V11-00 << 84 - Request kernel visit when cutaway mode chang << 85 - G4ToolsSGViewer.hh << 86 << 87 ## 2022-10-13 Guy Barrand (vis_toolssg-V11-00- << 88 - new offscreen sub-driver. << 89 - new files: include/G4ToolsSGOffscreen.hh, in << 90 - sources.cmake, GNUmakefile: G4ToolsSGOffscre << 91 - G4ToolsSGViewer.hh: handle ambient lightenin << 92 - G4ToolsSGViewer.hh: for "write paper", handl << 93 - G4ToolsSGViewer.hh: correct fSGViewer->set_c << 94 << 95 ## 2022-09-06 Ben Morgan (vis_toolssg-V11-00-1 << 96 - Address dependency inconsistencies reported << 97 << 98 ## 2022-05-18 Guy Barrand (vis_toolssg-V11-00- << 99 - have "toolx" namespace for g4tools code rela << 100 - tools::[Qt,Windows,X11,Xt,sg::text_freetyp << 101 - and corresponding includes #include <tools << 102 << 103 ## 2022-05-03 Ben Morgan (vis_toolssg-V11-00-1 << 104 - Preliminary build support for Qt5 and Qt6 << 105 << 106 ## 2022-04-13 Ben Morgan (vis_toolssg-V11-00-0 << 107 - Add needed dependencies << 108 << 109 ## 2022-04-06 John Allison (vis_toolssg-V11-00 << 110 - `G4ToolsSGSceneHandler.cc`: << 111 - void G4ToolsSGSceneHandler::AddPrimitive(c << 112 - Comment out common line elimination - to << 113 polyhedron. << 114 - Maybe eliminate altogether in future? << 115 - Allow the graphics-reps utilities to opt << 116 - Use StandardSpecialMeshRendering(mesh). << 117 - Of course, only if special mesh renderin << 118 << 119 ## 2022-03-22 Ben Morgan (vis_toolssg-V11-00-0 << 120 - Use geant4_module_sources to add optional so << 121 << 122 ## 2022-03-07 John Allison (vis_toolssg-V11-00 << 123 - `G4ToolsSGSceneHandler`: << 124 - `AddPrimitive (const G4Polymarker& a_polym << 125 - Define dots as a single pixel. << 126 - Use `GetMarkerSize(...)` for circles and << 127 - `AddCompound(const G4Mesh& mesh)`: << 128 - For parameterised tetrahedron mesh, call << 129 G4VSceneHandler::DrawTetMeshAsDots(mesh) << 130 - Tested on "ICRP145", a Geant4 applicatio << 131 a Geant4 advanced example, downloaded fr << 132 of Kim et al, ICRP, 2020. Adult mesh-typ << 133 phantoms, ICRP Publication 145, Ann. ICR << 134 << 135 ## 2022-03-05 John Allison (vis_toolssg-V11-00 << 136 - `G4ToolsSGSceneHandler::SetPlotterHistograms << 137 - Suppress /control/verbose messages for /an << 138 << 139 ## 2022-02-08 Ben Morgan (vis_toolssg-V11-00-0 << 140 - Access G4VVisCommand::G4VisManager pointer t << 141 to prevent DLL issues on Windows. << 142 << 143 ## 2022-01-30 John Allison (vis_toolssg-V11-00 << 144 - Co-works with visman-V11-00-05. << 145 - G4ToolsSGViewer.hh: << 146 - G4ToolsSGViewer::SwitchToMasterThread: << 147 - At the moment, the ToolsSG viewer cannot << 148 so in multithreading mode, so in this fu << 149 have been kept by the vis manager. But w << 150 end-of-event models in the scene - this << 151 - It fixes an issue where plots were being << 152 - G4ToolsSGSceneHandler.cc: << 153 - G4ToolsSGSceneHandler::SetPlotterHistogram << 154 - Add warning message if plot cannot be fo << 155 ``` << 156 G4ToolsSGSceneHandler::SetPlotterHistograms: c << 157 Maybe this app does not do analysis at all? << 158 ``` << 159 << 160 ## 2022-01-28 Ben Morgan (vis_toolssg-V11-00-0 << 161 - Replace `geant4_global_library_target` with << 162 call to `geant4_add_category` to define libr << 163 << 164 ## 2022-01-16 John Allison (vis_toolssg-V11-00 << 165 - G4ToolsSGViewer::wheel_rotate: << 166 - Re-program wheel_rotate for perspective pr << 167 - Takes into account the extent of the sce << 168 - Reactivate G4ToolsSGQtGLES::IsUISessionCompa << 169 - Paves way for permitted instantiation of m << 170 << 171 ## 2021-12-10 Ben Morgan (vis_toolssg-V11-00-0 << 172 - Change to new Markdown History format << 173 << 174 --- << 175 << 176 # History entries prior to 11.0 << 177 22 178 13 November 2021 - John Allison (vis_toolssg-V 23 13 November 2021 - John Allison (vis_toolssg-V10-07-16) 179 - G4ToolsSGSceneHandler.cc: Bug fix: 24 - G4ToolsSGSceneHandler.cc: Bug fix: 180 - In AddPrimitive, use preferred GetColour(a 25 - In AddPrimitive, use preferred GetColour(a_polyline) instead of GetColour(). 181 - Similarly for a_polymarker and a_polyhed 26 - Similarly for a_polymarker and a_polyhedron. 182 - If the vis attributes pointer is not up 27 - If the vis attributes pointer is not up to date, GetColour() picks up 183 the colour of the previous object! 28 the colour of the previous object! 184 - GetColour() will probably be deprecate 29 - GetColour() will probably be deprecated in future! It's use is 185 misleading - see visman-V10-07-27. 30 misleading - see visman-V10-07-27. 186 31 187 12 November 2021 - Ben Morgan (vis_toolssg-V10 32 12 November 2021 - Ben Morgan (vis_toolssg-V10-07-15) 188 - Retire G4VIS_... preprocessor symbols in too 33 - Retire G4VIS_... preprocessor symbols in toolkit build, only required 189 by obsolete GNUmake system 34 by obsolete GNUmake system 190 35 191 8 November 2021 - Ben Morgan (vis_toolssg-V10- 36 8 November 2021 - Ben Morgan (vis_toolssg-V10-07-14) 192 - Retire G4UI/G4INTY_... preprocessor symbols 37 - Retire G4UI/G4INTY_... preprocessor symbols in toolkit build, only required 193 by obsolete GNUmake system 38 by obsolete GNUmake system 194 39 195 05 November 2021 Guy Barrand (vis_toolssg-V10 40 05 November 2021 Guy Barrand (vis_toolssg-V10-07-13) 196 - G4ToolsSGSceneHandler: SetPlotterHistograms( 41 - G4ToolsSGSceneHandler: SetPlotterHistograms(): revisit 197 in order that, from an int histogram hid giv 42 in order that, from an int histogram hid given by a user (and 198 passed to a G4Plotter), the address of the t 43 passed to a G4Plotter), the address of the tools::histo, managed by G4/analysis, 199 is retrieved by using a /analysis/h/get comm 44 is retrieved by using a /analysis/h/get command so that the 200 histo is copied in a tools::sg::plottable ma 45 histo is copied in a tools::sg::plottable managed by a tools::sg::plotter. 201 This way of doing secures the relationship t 46 This way of doing secures the relationship tools::sg::plotter, managed by G4/vis 202 relative to the histo, managed by G4/analysi 47 relative to the histo, managed by G4/analysis. 203 This overall way of doing permits to have t 48 This overall way of doing permits to have the commands: 204 /vis/plotter/add/h1,h2 49 /vis/plotter/add/h1,h2 205 managed back in G4/vis, and then avoids to i 50 managed back in G4/vis, and then avoids to instrument 206 G4/examples and user code with the templated 51 G4/examples and user code with the templated G4VisPlotMessenger 207 which is no more needed. 52 which is no more needed. 208 53 209 03 November 2021 Guy Barrand (vis_toolssg-V10 54 03 November 2021 Guy Barrand (vis_toolssg-V10-07-12) 210 - G4ToolsSGSceneHandler: changes to deal with 55 - G4ToolsSGSceneHandler: changes to deal with the changes 211 in management/G4PlotterManager that handles 56 in management/G4PlotterManager that handles a local list of styles. 212 57 213 25 October 2021 Guy Barrand (vis_toolssg-V10 58 25 October 2021 Guy Barrand (vis_toolssg-V10-07-11) 214 - src/G4ToolsSGQtViewer.cc, sources.cmake: Lin 59 - src/G4ToolsSGQtViewer.cc, sources.cmake: Linux: it permits to have cmake doing the 215 "mocing" of G4ToolsSGQtViewer.hh. (Strangely 60 "mocing" of G4ToolsSGQtViewer.hh. (Strangely not needed on my mac). 216 - include/G4ToolsSGQtViewer.hh: handle a Qt "d 61 - include/G4ToolsSGQtViewer.hh: handle a Qt "destroy" signal/slot to properly 217 delete the G4ToolsSGViewer from the G4ToolsS 62 delete the G4ToolsSGViewer from the G4ToolsSGSceneHandler in case a user 218 delete the viewer QWidget in the G4UIQt tab 63 delete the viewer QWidget in the G4UIQt tab container widget. 219 - include/G4ToolsSGViewer.hh: FinishView: hand 64 - include/G4ToolsSGViewer.hh: FinishView: handle the update of plotters 220 (tools::sg::plots nodes) if any in the scene 65 (tools::sg::plots nodes) if any in the scene graph. Done by using 221 fSGSceneHandler.TouchPlotters() 66 fSGSceneHandler.TouchPlotters() 222 - remove G4ToolsSGExport.hh. Now done by using 67 - remove G4ToolsSGExport.hh. Now done by using tools/sg/write_paper. 223 - G4ToolsSGSceneHandler.hh,.cc: have a /vis/ts 68 - G4ToolsSGSceneHandler.hh,.cc: have a /vis/tsg/plotter/printParameters. To 224 print available style parameters of the tool 69 print available style parameters of the tools::sg::plotter node. 225 - G4ToolsSGSceneHandler.hh,.cc: plotting logic 70 - G4ToolsSGSceneHandler.hh,.cc: plotting logic. Mainly implement AddPrimitive(G4Plotter) 226 by handling a tools::sg::plots node in the s 71 by handling a tools::sg::plots node in the scene graph. Have code to attach histograms 227 and setup styles 72 and setup styles 228 73 229 22 October 2021 Guy Barrand (vis_toolssg-V10 74 22 October 2021 Guy Barrand (vis_toolssg-V10-07-10) 230 - ToolsSG/History: change vis_toolsg to vis_to 75 - ToolsSG/History: change vis_toolsg to vis_toolssg in tags. 231 - include/G4ToolsSGQtViewer.hh: remove ShowVie 76 - include/G4ToolsSGQtViewer.hh: remove ShowView, FinishView: the below modification 232 permits to rely on the parent ShowView, Fini 77 permits to rely on the parent ShowView, FinishView. (No more need to have code 233 to handle the "in tab" case). 78 to handle the "in tab" case). 234 - include/G4ToolsSGQtViewer.hh/Initialise: enf 79 - include/G4ToolsSGQtViewer.hh/Initialise: enforce a Qt show() to be able 235 to retreive the true QGLWidget size at start 80 to retreive the true QGLWidget size at startup. 236 - include/G4ToolsSGQtViewer.hh: __APPLE__: imp 81 - include/G4ToolsSGQtViewer.hh: __APPLE__: implement a SetView to enforce a 237 fVP.SetGlobalMarkerScale(2); 82 fVP.SetGlobalMarkerScale(2); 238 so that 2D text have a similar size than oth 83 so that 2D text have a similar size than other drivers and platforms. 239 - include/G4ToolsSGViewer.hh: handle a /vis/ts 84 - include/G4ToolsSGViewer.hh: handle a /vis/tsg/export command to 240 produce "paper" output files. 85 produce "paper" output files. 241 - include/G4ToolsSGViewer.hh: ShowView calls F 86 - include/G4ToolsSGViewer.hh: ShowView calls FinishView. 242 - include/G4ToolsSGViewer.hh: handle a scene g 87 - include/G4ToolsSGViewer.hh: handle a scene graph so that camera and lighting nodes 243 belong to the viewer. 88 belong to the viewer. 244 - G4ToolsSGSceneHandler.cc: AddPrimitives : us 89 - G4ToolsSGSceneHandler.cc: AddPrimitives : use G4VSceneHandler::GetColour(), GetTextColour() 245 instead of the viewer vis attributs ones. 90 instead of the viewer vis attributs ones. 246 - G4ToolsSGSceneHandler.hh,.cc: revisit the sc 91 - G4ToolsSGSceneHandler.hh,.cc: revisit the scene graph logic so that camera and lighting 247 nodes be handled by G4ToolsSGViewer. 92 nodes be handled by G4ToolsSGViewer. 248 93 249 13 October 2021 Guy Barrand (vis_toolssg-V10 94 13 October 2021 Guy Barrand (vis_toolssg-V10-07-09) 250 - Following g4tools-V10-07-07. 95 - Following g4tools-V10-07-07. 251 - for 2D text with freetype; have a mechanism 96 - for 2D text with freetype; have a mechanism to handle embedded fonts. 252 Have the font lato_regular.ttf embedded in t 97 Have the font lato_regular.ttf embedded in the C++ file: 253 tools/sg/font/lato_regular_ttf 98 tools/sg/font/lato_regular_ttf 254 The embedding of a .ttf file is done by usin 99 The embedding of a .ttf file is done by using 'xxd -i' on a UNIX. 255 With this in place, usage of the env variabl 100 With this in place, usage of the env variable TOOLS_FONT_PATH is no more 256 needed for 2D freetype text to find the lato 101 needed for 2D freetype text to find the lato_regular font at run time. 257 - handle G4/vis lightening. Use a tools::sg::t 102 - handle G4/vis lightening. Use a tools::sg::torche. 258 - for 2D: handle mouse resize of the viewer (Q 103 - for 2D: handle mouse resize of the viewer (Qt,Xt,X11,Windows). 259 - handle transparency. Cowork with modifs in: 104 - handle transparency. Cowork with modifs in: 260 tools/sg[GL_viewer,atb_vertices,render_act 105 tools/sg[GL_viewer,atb_vertices,render_action] 261 - G4ToolsSGViewer, G4ToolsSGSceneHandler: revi 106 - G4ToolsSGViewer, G4ToolsSGSceneHandler: revisit the scene graph organization 262 to handle 2D text 107 to handle 2D text 263 - handle 2D graphics. Cowork with modifs in: 108 - handle 2D graphics. Cowork with modifs in: 264 tools/sg/[text_freetype_marker,text_hershe 109 tools/sg/[text_freetype_marker,text_hershey_marker] to avoid text squashing. 265 110 266 12 October 2021 Ben Morgan (vis_toolssg-V10-0 111 12 October 2021 Ben Morgan (vis_toolssg-V10-07-08) 267 - Xt backend does not depend on Xm 112 - Xt backend does not depend on Xm 268 113 269 01 September 2021 John Allison (vis_toolssg- 114 01 September 2021 John Allison (vis_toolssg-V10-07-07) 270 - Store default background in view parameters. 115 - Store default background in view parameters. 271 116 272 30 June 2021 John Allison (vis_toolssg-V10-0 117 30 June 2021 John Allison (vis_toolssg-V10-07-06) 273 - Requires greps-V10-07-09, modeling-V10-07-11 118 - Requires greps-V10-07-09, modeling-V10-07-11 and visman-V10-07-11. 274 - Revise vis models. See visualization/modelin 119 - Revise vis models. See visualization/modeling/History for more details. 275 - Consequent changes: 120 - Consequent changes: 276 o AddPrimitive(const G4Scale&) has been remo 121 o AddPrimitive(const G4Scale&) has been removed from all scene handlers. 277 122 278 07 June 2021 John Allison (vis_toolssg-V10-0 123 07 June 2021 John Allison (vis_toolssg-V10-07-05) 279 - Requires greps-V10-07-07 (new method AddComp 124 - Requires greps-V10-07-07 (new method AddCompound (const G4Mesh&)). 280 - Requires modeling-V10-07-09 (new class G4Mes 125 - Requires modeling-V10-07-09 (new class G4Mesh). 281 - Requires visman-V10-07-10 (new default metho 126 - Requires visman-V10-07-10 (new default method and new commands). 282 - G4ToolsSGViewer.hh: 127 - G4ToolsSGViewer.hh: 283 o Force kernel visit if special mesh renderi 128 o Force kernel visit if special mesh rendering parameters change. 284 129 285 28 May 2021 Ben Morgan (vis_toolssg-V10-07-04) 130 28 May 2021 Ben Morgan (vis_toolssg-V10-07-04) 286 - Migrate to modular CMake build 131 - Migrate to modular CMake build 287 132 288 27 May 2021 John Allison (vis_toolssg-V10-07- 133 27 May 2021 John Allison (vis_toolssg-V10-07-03) 289 - AddPrimitive(const G4Polyhedron&): 134 - AddPrimitive(const G4Polyhedron&): 290 o Minor improvement to error message in the 135 o Minor improvement to error message in the case of unexpected number 291 of edges. 136 of edges. 292 137 293 23 May 2021 John Allison (vis_toolssg-V10-07- 138 23 May 2021 John Allison (vis_toolssg-V10-07-02) 294 - Corrections to cmake files for freetype font 139 - Corrections to cmake files for freetype fonts: 295 o Move freetype setup from CMakeLists.txt to 140 o Move freetype setup from CMakeLists.txt to sources.cmake. 296 - G4ToolsSGSceneHandler.cc: Remove redundant c 141 - G4ToolsSGSceneHandler.cc: Remove redundant comments. 297 142 298 14 May 2021 Guy Barrand (vis_toolssg-V10-07-0 143 14 May 2021 Guy Barrand (vis_toolssg-V10-07-01) 299 - cosmetic/style improvements: 144 - cosmetic/style improvements: 300 o 0 => nullptr. 145 o 0 => nullptr. 301 o have '= default' for some destructors. 146 o have '= default' for some destructors. 302 o G4ToolsSGNode.hh : have public cpstor and 147 o G4ToolsSGNode.hh : have public cpstor and operator=. 303 o G4ToolsSGViewer.hh : rm #ifdef G4TOOLSSG_D 148 o G4ToolsSGViewer.hh : rm #ifdef G4TOOLSSG_DEBUG code. 304 149 305 05 May 2021 Guy Barrand (vis_toolssg-V10-07-0 150 05 May 2021 Guy Barrand (vis_toolssg-V10-07-00) 306 - Requires cmake-V10-07-15, visman-V10-07-06 a 151 - Requires cmake-V10-07-15, visman-V10-07-06 and externals-V10-07-02. 307 - First committal of a tools_sg driver (Guy Ba 152 - First committal of a tools_sg driver (Guy Barrand). 308 o Four (mutually exclusive) options: 153 o Four (mutually exclusive) options: 309 . TOOLSSG_X11_GLES 154 . TOOLSSG_X11_GLES 310 . TOOLSSG_WINDOWS_GLES 155 . TOOLSSG_WINDOWS_GLES 311 . TOOLSSG_XT_GLES 156 . TOOLSSG_XT_GLES 312 . TOOLSSG_QT_GLES << 157 . TOOLSSG_QT_GLES