587 lines
21 KiB
Plaintext
587 lines
21 KiB
Plaintext
$Id: README,v 1.11 2001/11/13 07:06:01 stanaka Exp $
|
|
|
|
Note: Specific graphics systems must be instantiated in a high level
|
|
library to avoid circular dependencies. Also, some specifically need
|
|
additional external libararies that the user must supply. Therefore we
|
|
ask the user to implement RegisterGraphicsSystems() in a subclass of
|
|
G4VisManager. We have to wait for the subclass to instantiate so
|
|
RegisterGraphicsSystems() cannot be called from G4VisManager's
|
|
constructor; it is called from G4VisManager::Initialise(). So we ask
|
|
the user:
|
|
(a) to write a subclass of G4VisManager and implement
|
|
RegisterGraphicsSystems(). See
|
|
visualization/include/MyVisManager.hh/cc as an example.
|
|
(b) instantiate the subclass.
|
|
(c) invoke the Initialise() method of the subclass.
|
|
For example, in your main():
|
|
...
|
|
#ifdef G4VIS_USE
|
|
// Instantiate and initialise Visualization Manager.
|
|
G4VisManager* visManager = new MyVisManager;
|
|
visManager -> SetVerboseLevel (Verbose);
|
|
visManager -> Initialise ();
|
|
#endif
|
|
// (Don't forget to delete visManager;)
|
|
...
|
|
See, for example, examples/novices/N02/exampleN02.cc.
|
|
|
|
1) Decide which graphics systems drivers you want. By default you get:
|
|
ASCIITree, DAWNFILE, GAGTree, HepRepFile, RayTracer, VRMLFILE.
|
|
|
|
For others, the choice depends on what graphics libraries you have
|
|
access to. Set the appropriate environment variables. Here are
|
|
the current possibilities (see example "rc" script in Appendix A):
|
|
|
|
setenv G4VIS_BUILD_DAWN_DRIVER 1 # Uses Fukui Renderer DAWN
|
|
# with network connection
|
|
# (for remote visualization)
|
|
|
|
setenv G4VIS_BUILD_OPACS_DRIVER 1 # Uses OPACS graphics libraries
|
|
|
|
setenv G4VIS_BUILD_OPENGLX_DRIVER 1 # Uses OpenGL libraries
|
|
setenv G4VIS_BUILD_OPENGLXM_DRIVER 1 # Uses OpenGL and Motif
|
|
# libraries
|
|
|
|
setenv G4VIS_BUILD_OIX_DRIVER 1 # Uses OpenInventor X11
|
|
|
|
setenv G4VIS_BUILD_VRML_DRIVER 1 # Sends VRML ascii files
|
|
# to a remote host
|
|
# (for remote visualization)
|
|
|
|
Unless an environment variable G4VIS_NONE is set, setting any of
|
|
these sets a C-pre-processor flag of the same name; also
|
|
C-pre-processor flag G4VIS_BUILD is set.
|
|
|
|
In some cases you will need additional variables, e.g.:
|
|
|
|
setenv DAWN_HOME /user/local/bin
|
|
set path=( $path $DAWN_HOME )
|
|
|
|
setenv OPACS_HOME ~/private/GEANT4/OPACS
|
|
|
|
setenv OGLHOME /usr/local
|
|
setenv OGLFLAGS "-I$(OGLHOME)/include"
|
|
setenv OGLLIBS "-L$OGLHOME/lib -lMesaGLU -lMesaGL"
|
|
|
|
If you are going to use widgets, then you might need to set the
|
|
environment variable:
|
|
|
|
setenv XKEYSYMDB /usr/lib/X11/XKeysymDB
|
|
|
|
2) Compile and build the Geant4 libraries:
|
|
|
|
cd $G4INSTALL/source
|
|
gmake
|
|
|
|
If you have already built the Geant4 libraries and only wish to
|
|
include/change visualization, you need to rebuild visualization and
|
|
interfaces (since some graphics drivers share resources, such as X
|
|
event handling, with interfaces) and rebuild the libary map (in
|
|
case new libraries have been made):
|
|
|
|
cd $G4INSTALL/source/visualization
|
|
gmake clean
|
|
gmake
|
|
cd $G4INSTALL/source/interfaces
|
|
gmake clean
|
|
gmake
|
|
cd $G4INSTALL/source
|
|
gmake libmap
|
|
|
|
*******************************************************************
|
|
NOTE THAT IF YOU CHANGE ANY OF THE ABOVE ENVIRONMENT VARIABLES THEN
|
|
YOU WILL HAVE TO REPEAT THE ABOVE OPERATIONS.
|
|
*******************************************************************
|
|
|
|
|
|
3) Decide which graphics systems you want to use in your particular
|
|
excutable. By default you get:
|
|
ASCIITree, DAWNFILE, GAGTree, HepRepFile, RayTracer, VRMLFILE.
|
|
|
|
Of course, this has to be chosen from the set you
|
|
installed in (1,2) above. Here are the current possibilities:
|
|
|
|
setenv G4VIS_USE_DAWN 1
|
|
setenv G4VIS_USE_OPACS 1
|
|
setenv G4VIS_USE_OPENGLX 1
|
|
setenv G4VIS_USE_OPENGLXM 1
|
|
setenv G4VIS_USE_OIX 1
|
|
setenv G4VIS_USE_VRML 1
|
|
|
|
Unless an environment variable G4VIS_NONE is set, setting any of
|
|
these sets a C-pre-processor flag of the same name; also,
|
|
C-pre-processor flag G4VIS_USE is set.C-pre-processor flag - see
|
|
examples/novices/N02/exampleN02.cc to see a use of this.
|
|
|
|
The graphics systems are instantiated and registered when you
|
|
execute MyVisManager::Initialise() (or MyVisManager::Initialize()).
|
|
Note also that you can register graphics systems directly, e.g.,
|
|
pVisManager->RegisterGraphicsSystem ( new DAWNFILE ). You can also
|
|
register your own graphics system, e.g.,
|
|
pVisManager->RegisterGraphicsSystem (new MyGraphicsSystem).
|
|
|
|
|
|
4) Compile and link your code. This assumes, in the current
|
|
directory, you have a GNUmakefile like
|
|
$G4INSTALL/examples/novice/N01/GNUmakefile and your main program.
|
|
Also your header files are in include/ and your source files are in
|
|
src/ - see, e.g., $G4INSTALL/examples/novice/N01 (this is the
|
|
"canonical" user code structure).
|
|
|
|
gmake clean
|
|
gmake
|
|
|
|
*******************************************************************
|
|
NOTE THAT IF YOU CHANGE ANY OF THE ABOVE ENVIRONMENT VARIABLES THEN
|
|
YOU WILL HAVE TO REPEAT THE ABOVE gmake clean AND gmake COMMANDS, OR
|
|
AT THE VERY LEAST, RECOMPILE YOUR MAIN PROGRAM AND YOUR DERIVED VIS
|
|
MANAGER CLASS, E.G.,
|
|
touch myprog.cc; touch src/MyVisManager.cc; gmake
|
|
*******************************************************************
|
|
|
|
|
|
5) To run:
|
|
|
|
setenv DISPLAY <local IP address>:0
|
|
$G4WORKDIR/bin/$G4SYSTEM/myprog
|
|
|
|
|
|
Appendix A: An "rc" example
|
|
---------------------------
|
|
|
|
---------------------- g4rc ------------------------------------------
|
|
## Must be run from a directory *containing* geant4/.
|
|
## It must be "sourced" from a Bourne/ksh.bash shell using `. <pathname>'
|
|
## or `source <pathname>'.
|
|
## G4INSTALL becomes geant4.
|
|
## G4BIN, etc., in some apprpriate subdirectory of $disc1
|
|
|
|
disc1=/scratch/GEANT4
|
|
if [ ! -e $disc1/$thisbase ]; then
|
|
mkdir $disc1/$thisbase
|
|
fi
|
|
if [ ! -e $disc1/$thisbase/geant4 ]; then
|
|
mkdir $disc1/$thisbase/geant4
|
|
fi
|
|
disc2=/mnt/disc2
|
|
|
|
if [ -e `pwd`/geant4 ]; then
|
|
|
|
thiswd=`pwd`
|
|
thisbase=`basename $thiswd`
|
|
export G4INSTALL=$thiswd/geant4
|
|
env | grep G4INSTALL=
|
|
export G4WORKDIR=$G4INSTALL
|
|
export G4BIN=$disc1/$thisbase/geant4/bin
|
|
env | grep G4BIN=
|
|
export G4LIB=$disc1/$thisbase/geant4/lib
|
|
env | grep G4LIB=
|
|
export G4TMP=$disc1/$thisbase/geant4/tmp
|
|
env | grep G4TMP=
|
|
export G4SYSTEM=Linux-g++
|
|
export G4LEVELGAMMADATA=$G4INSTALL/data/PhotonEvaporation
|
|
|
|
export G4DEBUG=1
|
|
export CLHEP_BASE_DIR=/usr/local
|
|
env | grep G4DEBUG
|
|
env | grep CLHEP
|
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CLHEP_BASE_DIR/lib
|
|
|
|
##export CVSROOT=:pserver:allison@g4cvs.cern.ch:/afs/cern.ch/sw/geant4/cvs
|
|
export CVSROOT=/afs/cern.ch/sw/geant4/cvs
|
|
export CVSEDITOR=emacs
|
|
|
|
########## DAWN (Fukui) Renderer
|
|
export G4VIS_BUILD_DAWN_DRIVER=1
|
|
export G4VIS_USE_DAWN=1
|
|
export DAWN_BSD_UNIX_DOMAIN=1
|
|
export DAWN_GUI_ALWAYS=1
|
|
#export DAWN_HOME=/home/johna/GEANT4/DAWN # Now in /usr/local.
|
|
#export G4DAWNFILE_VIEWER=NONE # Uncomment if DAWN is not available.
|
|
#export PATH=$PATH:$DAWN_HOME # Now in /usr/local.
|
|
|
|
########## OPACS graphics
|
|
export G4VIS_BUILD_OPACS_DRIVER=1
|
|
export G4VIS_USE_OPACS=1
|
|
export OPACS_HOME=$disc2/OPACS
|
|
export OPACS_VERSION=v3
|
|
export OPACS_SYSTEM=Linux-gxx
|
|
export OCONFIG=Linux
|
|
. $OPACS_HOME/OPACS/$OPACS_VERSION/setup.sh
|
|
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$disc2/HEPVis/new/Linux-gxx-SF/
|
|
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$disc2/SoFree/new/Linux-gxx
|
|
OPATH="$OPATH $G4INSTALL/source/visualization/test/OPACS"
|
|
|
|
########### OpenGL
|
|
export G4VIS_BUILD_OPENGLX_DRIVER=1
|
|
export G4VIS_USE_OPENGLX=1
|
|
export G4VIS_BUILD_OPENGLXM_DRIVER=1
|
|
export G4VIS_USE_OPENGLXM=1
|
|
### export XKEYSYMDB=/usr/lib/X11/XKeysymDB
|
|
export OGLHOME=/usr/X11
|
|
|
|
########### OpenInventor
|
|
export G4VIS_BUILD_OIX_DRIVER=1
|
|
export G4VIS_USE_OIX=1
|
|
export OIVFLAGS="-I$disc2/HEPVis/new/include -DINVENTOR2_1 -I$disc2/SoFree/new/include"
|
|
export OIVLIBS="-L$disc2/HEPVis/new/Linux-gxx-SF -lHEPVis -L$disc2/SoFree/new/Linux-gxx -lSoFree"
|
|
export SOFREEUSER=$disc2/SoFree/new/user/
|
|
|
|
############ VRML
|
|
export G4VIS_USE_VRML=1
|
|
export G4VIS_BUILD_VRML_DRIVER=1
|
|
|
|
########### Interfaces
|
|
export G4UI_BUILD_TERMINAL_SESSION=1
|
|
export G4UI_USE_TERMINAL=1
|
|
export G4UI_BUILD_GAG_SESSION=1
|
|
export G4UI_USE_GAG=1
|
|
export G4UI_BUILD_XM_SESSION=1
|
|
export G4UI_USE_XM=1
|
|
export G4UI_BUILD_WO_SESSION=1
|
|
export G4UI_USE_WO=1
|
|
### #export G4UI_BUILD_XAW_SESSION=1
|
|
### #export G4UI_USE_XAW=1
|
|
|
|
############ Persistency
|
|
# export G4USE_HEPODBMS=1
|
|
# . $G4INSTALL/examples/extended/persistency/PersistentEx01/g4odbms_setup.sh
|
|
# export OS=`uname`
|
|
# oocheckls -notitle `hostname` || \
|
|
# oolockserver -notitle -noauto
|
|
|
|
else
|
|
echo No geant4 here.
|
|
fi
|
|
|
|
|
|
Appendix B: Sample session
|
|
--------------------------
|
|
|
|
The Visualization Manager has been constructed with verbosity == 1.
|
|
|
|
$ test19 tcsh 1
|
|
RunManager is constructing....
|
|
**********************************************
|
|
Geant4 version $Name: geant4-07-00-cand-01 $
|
|
(29-Jun-2001)
|
|
Copyright : Geant4 Collaboration
|
|
**********************************************
|
|
conv: Total cross sections from a parametrisation. Good description from 1.5 MeV to 100 GeV for all Z.
|
|
e+e- energies according Bethe-Heitler
|
|
PhysicsTables from 1.022 MeV to 100 GeV in 100 bins.
|
|
...
|
|
Constructing Visualization Manager....
|
|
Initialising Visualization Manager....
|
|
|
|
The following graphics systems drivers are supported in the GEANT4 distribution:
|
|
|
|
ASCIITree (prints geometry hierarchy)
|
|
|
|
DAWN (socket connection to the Fukui Renderer DAWN) High quality technical renderer.
|
|
Features: exact hidden line, hidden surface algorithms.
|
|
high (unlimited) resolution.
|
|
renders to PostScript for viewing and/or hardcopy.
|
|
remote rendering.
|
|
off-line rendering.
|
|
graphical user interface.
|
|
Disadvantages: compute intensive, takes time (use a fast graphics
|
|
system, such as OpenGL, to select view, then copy
|
|
to this renderer - /vis~/copy/view, /vis~/set/view).
|
|
|
|
DAWNFILE (file connection to the Fukui Renderer DAWN ) High quality technical renderer.
|
|
Features: exact hidden line, hidden surface algorithms.
|
|
high (unlimited) resolution.
|
|
renders to PostScript for viewing and/or hardcopy.
|
|
remote rendering.
|
|
off-line rendering.
|
|
graphical user interface.
|
|
connection via g4.prim file to Fukui Renderer DAWN etc.
|
|
Disadvantages: compute intensive, takes time (use a fast graphics
|
|
system, such as OpenGL, to select view, then copy
|
|
view parameters to this renderer:
|
|
"/vis/viewer/set/all <OpenGL-view>".
|
|
|
|
GAGTree (prints geometry hierarchy, connectable to GAG
|
|
user interface)
|
|
|
|
OPACS (the Orsay Package)
|
|
|
|
OpenGLIX (direct/immediate drawing on X Windows)
|
|
Dumb single buffered X Window, No Graphics Database.
|
|
Advantages: does not gobble server memory.
|
|
good for drawing steps and hits.
|
|
Disadvantages: needs G4 kernel for re-Draw.
|
|
cannot take advantage of graphics accelerators.
|
|
|
|
OpenGLSX (display List/stored drawing on X Windows)
|
|
Dumb double buffered X Window with Graphics Database.
|
|
Advantages: uses display lists as graphics database.
|
|
fastest possible redraw, e.g., on simple change
|
|
of viewpoint.
|
|
uses client-server model for remote viewing
|
|
(but only if you have a full client-server
|
|
implementation of OpenGL, i.e., not Mesa).
|
|
Disadvantages: not advised for viewing large numbers of steps
|
|
and/or hits, because it gobbles memory for database.
|
|
|
|
OpenGLIXm (with Motif widgets)
|
|
Smart single buffered X Window, No Graphics Database.
|
|
Advantages: resizeable, and has Motif-based view-control panel.
|
|
does not gobble server memory.
|
|
good for drawing steps and hits.
|
|
Disadvantages: currently locks out GEANT4 commands, until "exit".
|
|
needs G4 kernel for re-Draw.
|
|
cannot take advantage of graphics accelerators.
|
|
|
|
OpenGLSXm (with Motif widgets)
|
|
Smart double buffered X Window with Graphics Database.
|
|
Advantages: resizeable, and has Motif-based view-control panel.
|
|
uses display lists as graphics database.
|
|
fastest possible redraw, e.g., on simple change
|
|
of viewpoint.
|
|
uses client-server model for remote viewing
|
|
(but only if you have a full client-server
|
|
implementation of OpenGL, i.e., not Mesa).
|
|
Disadvantages: currently locks out GEANT4 commands, until "exit".
|
|
not advised for viewing large numbers of steps
|
|
and/or hits, because it gobbles memory for database.
|
|
|
|
Open Inventor Open Inventor Window/View/Scene.
|
|
Advantages: Open Inventor feature set (interactivity, scene control).
|
|
Disadvantages: Requires Open Inventor license ($$), Hepvis library (Free).
|
|
|
|
RayTracer (produces JPEG file)
|
|
|
|
VRML1 (produces VRML 1 file over network)
|
|
|
|
VRML1FILE (produces VRML 1 file locally )
|
|
|
|
VRML2 (produces VRML 2 file over network)
|
|
|
|
VRML2FILE (produces VRML 2 file locally )
|
|
|
|
The following graphics systems drivers are installed on your system:
|
|
ASCII Tree (produces ASCII file of geometry hierarchy)
|
|
DAWN (socket connection to the Fukui Renderer DAWN)
|
|
DAWNFILE (file connection to the Fukui Renderer DAWN)
|
|
GAG Tree (produces ascii file of geometry hierarchy for GAG)
|
|
OPACS (the Orsay Package)
|
|
OpenGLIX (direct/immediate drawing on X Windows)
|
|
OpenGLSX (display List/stored drawing on X Windows)
|
|
OpenGLIXm (with Motif widgets)
|
|
OpenGLSXm (with Motif widgets)
|
|
Open Inventor X11
|
|
RayTracer (produces JPEG file)
|
|
VRML1 (produces VRML 1 file over network)
|
|
VRML2 (produces VRML 2 file over network)
|
|
VRML1FILE (produces VRML 1 file locally)
|
|
VRML2FILE (produces VRML 2 file locally)
|
|
|
|
You have instantiated your own Visualization Manager, inheriting
|
|
G4VisManager and implementing RegisterGraphicsSystems(), in which
|
|
you should, normally, instantiate drivers which do not need
|
|
external packages or libraries, namely:
|
|
ASCIITree, DAWNFILE, GAGTree, RayTracer, VRMLFILE
|
|
and, optionally, drivers under control of the following
|
|
environment variables:
|
|
G4VIS_USE_DAWN
|
|
G4VIS_USE_OPACS
|
|
G4VIS_USE_OPENGLX
|
|
G4VIS_USE_OPENGLXM
|
|
G4VIS_USE_OIX
|
|
G4VIS_USE_VRML
|
|
See visualization/include/MyVisManager.hh/cc, for example.
|
|
In your main() you will have something like:
|
|
#ifdef G4VIS_USE
|
|
G4VisManager* visManager = new MyVisManager;
|
|
visManager -> SetVerboseLevel (Verbose);
|
|
visManager -> Initialize ();
|
|
#endif
|
|
(Don't forget to delete visManager;)
|
|
Registering additional graphics systems....
|
|
G4VisManager::RegisterGraphicsSystem: ASCIITree (ATree) registered.
|
|
G4VisManager::RegisterGraphicsSystem: DAWNFILE (DAWNFILE) registered.
|
|
G4VisManager::RegisterGraphicsSystem: GAGTree (GAGTree) registered.
|
|
G4VisManager::RegisterGraphicsSystem: RayTracer (RayTracer) registered.
|
|
G4VisManager::RegisterGraphicsSystem: VRML1FILE (VRML1FILE) registered.
|
|
G4VisManager::RegisterGraphicsSystem: VRML2FILE (VRML2FILE) registered.
|
|
G4VisManager::RegisterGraphicsSystem: FukuiRenderer (DAWN) registered.
|
|
G4VisManager::RegisterGraphicsSystem: Wo registered.
|
|
G4VisManager::RegisterGraphicsSystem: Xo registered.
|
|
G4VisManager::RegisterGraphicsSystem: OpenGLImmediateX (OGLIX) registered.
|
|
G4VisManager::RegisterGraphicsSystem: OpenGLStoredX (OGLSX) registered.
|
|
G4VisManager::RegisterGraphicsSystem: OpenGLImmediateXm (OGLIXm) registered.
|
|
G4VisManager::RegisterGraphicsSystem: OpenGLStoredXm (OGLSXm) registered.
|
|
G4VisManager::RegisterGraphicsSystem: OpenInventorX (OIX) registered.
|
|
G4VisManager::RegisterGraphicsSystem: VRML1 (VRML1) registered.
|
|
G4VisManager::RegisterGraphicsSystem: VRML2 (VRML2) registered.
|
|
|
|
You have successfully chosen to use the following graphics systems.
|
|
Current available graphics systems are:
|
|
ASCIITree (ATree)
|
|
DAWNFILE (DAWNFILE)
|
|
GAGTree (GAGTree)
|
|
RayTracer (RayTracer)
|
|
VRML1FILE (VRML1FILE)
|
|
VRML2FILE (VRML2FILE)
|
|
FukuiRenderer (DAWN)
|
|
Wo
|
|
Xo
|
|
OpenGLImmediateX (OGLIX)
|
|
OpenGLStoredX (OGLSX)
|
|
OpenGLImmediateXm (OGLIXm)
|
|
OpenGLStoredXm (OGLSXm)
|
|
OpenInventorX (OIX)
|
|
VRML1 (VRML1)
|
|
VRML2 (VRML2)
|
|
Reading test19.g4m file....
|
|
# This is test19.g4m
|
|
#
|
|
# Switch on echoing of commands and history mechanism.
|
|
#
|
|
/control/saveHistory
|
|
#
|
|
# John's personal preferences
|
|
/vis/viewer/set/lightsMove true
|
|
G4VisCommandsViewerSet::SetNewValue: no current viewer.
|
|
/vis/viewer/set/hiddenMarker true
|
|
G4VisCommandsViewerSet::SetNewValue: no current viewer.
|
|
#/vis/verbose 10
|
|
#
|
|
# See list of detector possibilities.
|
|
/test19det/detector
|
|
Available detectors:
|
|
0) Part of original test calorimeter
|
|
1) Example1 (LBNO, no rotation)
|
|
2) Example2 (embryo LBNO, rotated volumes)
|
|
3) A parametrised volume
|
|
4) MyDetector
|
|
Choose by specifying integer parameter.
|
|
# Select detector.
|
|
#/test19det/detector 1
|
|
#/test19det/detector 4
|
|
#
|
|
# Initialise run, i.e., create geometry, set cuts, etc.
|
|
/run/initialize
|
|
#
|
|
# Set gun for demo (detector 1)
|
|
#/gun/particle e+
|
|
#/gun/position 0 -100 0 cm
|
|
#/gun/direction 0 1 0
|
|
#
|
|
# for drawing the tracks
|
|
/tracking/storeTrajectory 1
|
|
# if too many tracks cause core dump =storeTrajectory 0
|
|
#
|
|
# Create empty scene.
|
|
/vis/scene/create
|
|
/vis/scene/notifyHandlers
|
|
G4Scene::AddWorldIfEmpty: The scene was empty,
|
|
"world" has been added.
|
|
New empty scene "scene-0" created.
|
|
#
|
|
# Add volume to scene - "world" is default.
|
|
/vis/scene/add/volume
|
|
G4Scene::AddRunDurationModel: model "G4PhysicalVolumeModel expHall_P.0"
|
|
is already in the run-duration list of scene "scene-0".
|
|
/vis/scene/notifyHandlers
|
|
#
|
|
# See list of graphics systems possibilities.
|
|
help /vis/sceneHandler/create
|
|
#
|
|
# Create a scene handler for a specific graphics system.
|
|
# Edit the next line(s) to choose another graphic system
|
|
#/vis/sceneHandler/create DAWNFILE
|
|
#/vis/sceneHandler/create DAWN
|
|
#/vis/sceneHandler/create OGLIXm
|
|
#/vis/sceneHandler/create OGLSXm
|
|
#/vis/sceneHandler/create OGLIX
|
|
/vis/sceneHandler/create OGLSX
|
|
G4VisManager::SetCurrentGraphicsSystem: system now OpenGLStoredX
|
|
Graphics system set to OpenGLStoredX
|
|
1 OpenGLStoredX scene handlers extanct.
|
|
New scene handler "scene-handler-0" created.
|
|
/vis/sceneHandler/attach
|
|
Scene "scene-0" attached to scene handler "scene-handler-0.
|
|
#/vis/sceneHandler/create VRML1
|
|
#/vis/sceneHandler/create VRML1FILE
|
|
#/vis/sceneHandler/create Xo
|
|
#/vis/sceneHandler/create Wo
|
|
#
|
|
# Add world volume.
|
|
/vis/scene/add/volume
|
|
G4Scene::AddRunDurationModel: model "G4PhysicalVolumeModel expHall_P.0"
|
|
is already in the run-duration list of scene "scene-0".
|
|
/vis/scene/notifyHandlers
|
|
/vis/scene/add/axes 0 0 0 2 m
|
|
/vis/scene/notifyHandlers
|
|
Axes have been added to scene "scene-0".
|
|
/vis/scene/add/text 0 0 0 mm 50 -120 -200 exampleN03
|
|
/vis/scene/notifyHandlers
|
|
Text "exampleN03" has been added to scene "scene-0".
|
|
#
|
|
# Add scale
|
|
/vis/scene/add/scale
|
|
/vis/scene/notifyHandlers
|
|
Scale of 1 m has been added to scene "scene-0".
|
|
#
|
|
# Create a viewer.
|
|
/vis/viewer/create
|
|
Got standard cmap
|
|
Window name: viewer-0 (OpenGLStoredX)
|
|
G4VisManager::CreateViewer: new viewer created: view parameters are:
|
|
View parameters and options:
|
|
Drawing style: wireframe
|
|
Representation style: polyhedron
|
|
Culling: on
|
|
Culling invisible objects: on
|
|
Density culling: off
|
|
Culling daughters covered by opaque mothers: off
|
|
Section flag: false
|
|
Cutaway flag: false
|
|
Explode flag: false
|
|
No. of sides used in circle polygon approximation: 24
|
|
Viewpoint direction: (0,0,1)
|
|
Up vector: (0,1,0)
|
|
Field half angle: 0
|
|
Zoom factor: 1
|
|
Current target point: (0,0,0)
|
|
Dolly distance: 0
|
|
Light does not move with camera
|
|
Relative lightpoint direction: (1,1,1)
|
|
Actual lightpoint direction: (1,1,1)
|
|
Derived parameters for standard view of object of unit radius:
|
|
Camera distance: 1
|
|
Near distance: 1e-06
|
|
Far distance: 2
|
|
Front half height: 1
|
|
View geometry: true
|
|
View hits : true
|
|
View digits : true
|
|
Default VisAttributes:
|
|
G4VisAttributes: visible, daughters visible, colour: (1,1,1,1)
|
|
linestyle: solid, line width: 1
|
|
drawing style unforced
|
|
Default TextVisAttributes:
|
|
G4VisAttributes: visible, daughters visible, colour: (0,0,1,1)
|
|
linestyle: solid, line width: 1
|
|
drawing style unforced
|
|
Default marker: G4VMarker: position: (0,0,0), world size: 0, screen size: 5
|
|
fill style: no fill
|
|
No Visualization Attributes
|
|
Global marker scale: 1
|
|
Marker not hidden by surfaces.
|
|
Window size hint: 600x600
|
|
Auto refresh: false
|
|
NOTE: objects with visibility flag set to "false" will not be drawn!
|
|
"/vis/set/culling off" to Draw such objects.
|
|
Also see other "/vis/set" commands.
|
|
New viewer "viewer-0 (OpenGLStoredX)" created.
|
|
#
|
|
/vis/viewer/set/lineSegmentsPerCircle 100
|
|
Number of line segements per circle in polygon approximation is 100
|
|
/vis/viewer/refresh
|
|
Refreshing viewer "viewer-0 (OpenGLStoredX)"...
|
|
...
|