VDF

Building


To build vdf
 

  •     setup vistools -q KCC_4_0     (If this product isn't installed contact Art Kreymer, kreymer@fnal.gov)
  •     newrel -t <release> Visualization
  •     gmakeb
  • Running (basic instructions)

    Check your display environment variable.  Note:  if you are using ssh, your display will be  encrypted/decrypted at both ends.  You probably don't want that, a lot of graphics travels between client and server and the encryption will slow it down.  Just set the environment
    variable manually to host.domain:0

    Choose a tcl file: Some of the tcl files are kept in the Visualization directory, either Visualization/file.tcl or $PROJECT_DIR/Visualization/file.tcl. There are different tcl's for different running conditions:

        Vdf-module.tcl                       for current MonteCarlo
        Vdf-module-data.tcl             for current Data (Clusters, does D->E, and applies calibrations)
        Vdf-module-b4.tcl                for commissioning run
        Vdf-module-beambox.tcl     for the "beam box data"

    Run:  Issue the following command:

        vdf-module [$PROJECT_DIR]/Visualization/Vdf-module.tcl -i Infile1 [Infile2 ...]

    Within vdf, event selection and filtering can be carried out with the aid of the arrow button, and the Run and Event Text Entries.  After typing the desired run and event number into the text entry fields, make sure to hit return.

    Interaction with the display:

    The display is built from several subsystems; each subsystem appears in a list under the "Launch" menu.  After the subsystem is launched,
    a new menu appears in the menu bar, and the subsystem refreshes each time a new event is chosen, taking the event information from the event record and building a scene.  This requires resources, both CPU and memory, but users can keep the use of resources to a minimum by launching only the subsystems that he or she nees.  The menu can be used to turn on/off various different components.  This architecture allows individual
    users to tune the amount of resources they need.

    The menus appearing with each subsystem can be used to selectively display parts of the scene.  For example the "COT system" has button allowing the COT itself and the hits within the COT to be displayed separately.  Displaying a part of the scene demands additional resources,
    especially while rotating or zooming the display.  Judiciously choosing the amount and type of data to display results in improved performance.
    Displaying all of the data in an event is a poor idea.

    The systems also handle user interaction with elements of the scene.  Each system handles interaction differently.  Many of the scene objects will print out a summary in the text window when selected.  Some of the subsystems, such as the Geometry System, display more or less detail when objects are clicked in certain ways:  More detail when Ctrl-MB1 clicked, and less detail when Shift-MB1 is clicked.   How do you know how to interact with each system?  Each system has a menu command called What is the Menu About?  This command will print a small explanation of what the system does and how to interact with it (into the Text Window).  These explanations are the real documentation for the program.
     

    Extending

    Vdf is modular and built for extensions.  Like the AC++ it is a framework--a subframework.  The objects which are scheduled for execution within this subframework are VFWSystems (VFW is for "Visualization Framework").  VFWSystems are equivalent to Modules, except that while Modules have the job of modifying the event, VFWSystems have the job of providing geometrical interpretations for objects in the event or database, in other word, for turning abstraction into geometry.  How you do this is dictated by your own creativity!  However the geometry must be expressed in terms of specific Visualization primitives.  Where do these come from?  They come from the Open Source Open Inventor class library, which is a scene description language, and their HEPVis extensions.

    Their are many resources for Open Inventor and some for HEPVis that you can use if you are considering extending the framework with your
    own display.
     

  •     The Inventor Mentor and the Inventor Toolmaker books (In the CDF Offline library)
  •     The Inventor Project Home Page:
  •     The HEPVis Home Page
  •     Manual pages for Open Inventor are in $VISTOOLS_DIR/man

  •  
    If you want further advice, or our blessing to modify the Visualization package, contact Joe Boudreau or Petar Maksimovic

    Legal Notices
    VDF Team
    Last modified: Fri Apr 13 11:20:10 CST 2001