The EVENTDISPLAYC Project


Back to the index


display.cxx



// Event Display
// Example of Using
// Electron and positron in the magnetic field

#include "VRMLFile.h"
#include "LocalHelix.h"
#include "TrackedParticle.h"
#include "VRMLInit.h"
#include <CLHEP/ThreeVector.h>
#include "MagneticField.h"

main(){
// Create 100 GeV electron    
    Hep3VectorF pos1(0, 0, 0);
    Hep3VectorF dir1(1, 1, 1);	
    dir1 = dir1.unit();
    Hep3VectorF cur1(1, 1, 1);
    cur1 = cur1.unit();
    LocalHelix myHelix1(pos1, dir1, cur1);
    TrackedParticle electron(myHelix1, 1, 100, 0);
// Create 100 GeV positron
    Hep3VectorF pos2(0, 0, 0);
    Hep3VectorF dir2(1, 1, 1);	
    dir2 = dir2.unit();
    Hep3VectorF cur2(1, 1, 1);
    cur2 = cur2.unit();
    LocalHelix myHelix2(pos2, dir2, cur2);
    TrackedParticle positron(myHelix2, -1, 100, 0);
// Create Magnetic Field
    MagneticField mField;
// Create Event Display VRML File
    VRMLFile myFile("display.wrl");
    VRMLInit init;
    myFile.display(init);
// Send both particles trough simple magnetic field
// and display them
    myFile.display(electron);
    myFile.display(positron);
    for(float i = 1; i < 200; i++)
    {
	mField.goByStep(electron, 0.01);
	mField.goByStep(positron, 0.01);
	myFile.display(electron);
	myFile.display(positron);
    }
}


Back to the index


Created on Thu Jun 27 1996 by Julius Hrivnac using the HTML generator Ddl2Html