CERN Accelerating science

Visworkplan 20140303A

As is standard for Geant4 Planned Features documents,

(1) means expected to be done in first half of year

(2) means expected to be done in second half of year

(*) means may get to this in second half of year or may take longer

Multi-threading: Add Visualization Management Thread so that events can be seen in MT mode even before the run is complete (1)

-

Multi-threading: Support user-drawn primitives in MT mode (1/2)

-

Documentation: Major overhaul of visualization documentation (1/2)

-

Qt5: Adapt as necessary for this new Qt version (1)

-

Wt: Implement Wt driver (1/2)

-

OGLFile: new driver to produce image files in batch jobs where there is no graphics card present (1/2)

-

OpenGL Version: adapt to newer OpenGL versions, exploit new functionalities and replace deprecated calls such as glBegin/glEnd (1/2)

-

GDML: Study addition of visualization attributes to this exchange format (1/2)

-

OpenInventor: Continue development of SoXtViewer (1/2)

Supports save and restore viewpoint and save and replay fly-through (originally motivated by beam line applications).

-

gMocrenFile and gMocren: Continue development (1/2)

-

iOS and Android Devices: Develop visualization solutions for these devices (1/2/*)

-

New Transparent Visualization Tool: Develop new tool to support high resolution transparent visualization with abilty to rotate and zoom, able to show, for example, trajectories and hits within a HEP detector - (2/*)

-

Key tasks for which we do not have manpower:

-

Change from current flat format to hierarchical format in VRML - (*)

-

Visualisation of GPS source - (*)

-

Integrated visualization of field lines - (*)

Electric, magnetic, maybe even gravitational.

-

Full support for visualization of boolean shapes - (*)

Boolean operations on polyhedral representations of Geant4 solids for visualisations were improved in 9.3. But it is still not a general solution. It is a workaround based on finding a good way of shifting one solid relative to the other by a small amount. The most serious computational problems arise when faces coincide. We have had a simple shifting algorithm in place for many years; in 9.3 this algorithm became a little more sophisticated. In a test it fixed 96% of failures. There remains a stubborn 4%. (The effect of a failure is to prevent visualisation of the boolean solid, except with the ray tracer driver, which does not rely on polyhedrons.) We might be able to make the shifting workaround yet more sophisticated but, ideally, we really need a comprehensive solution, a daunting re-write and improvement of the basic facet-intersection algorithms.