lcsim/src/org/lcsim/contrib/JanStrube
diff -u -r1.1 -r1.2
--- ZvTubePlotter.py 1 Aug 2005 04:12:19 -0000 1.1
+++ ZvTubePlotter.py 3 Aug 2005 18:52:25 -0000 1.2
@@ -3,7 +3,6 @@
from org.lcsim.spacegeom import CartesianPoint
import sys
-// needs the latest PAIDA, because JAS3 can't plot 3D
sys.path.append('/home/jstrube/paida-3.2.1_2.8.1')
from paida import IAnalysisFactory
from paida.paida_core.IFunction import IFunction, IAnnotation
@@ -16,17 +15,42 @@
self.histFac = self.anaFac.createHistogramFactory(self.tree)
self.funcFac = self.anaFac.createFunctionFactory(self.tree)
self.plotter = self.anaFac.createPlotterFactory().create()
- self.region = self.plotter.createRegion()
-
+ self.dataPointSetFac = self.anaFac.createDataPointSetFactory(self.tree)
+ return
+
def process(self, event):
+ region = self.plotter.createRegion()
+
tracks = event.getTracks()
-
iter = tracks.iterator()
while iter.hasNext():
iTrack = iter.next()
zvTrack = ZvTrack(iTrack)
f = ZvTube(zvTrack)
- self.region.plot(f, "minX=-50;maxX=50;minY=-50;maxY=50;minZ=-1;maxZ=2")
+ region.plot(f, "minX=-50.;maxX=50.;minY=-50.;maxY=50.;minZ=-1;maxZ=2")
+
+ dataPointSet = self.dataPointSetFac.create('partEndPoints', 'MC Particle endpoints', 3)
+ particles = event.getMCParticles()
+ iter = particles.iterator()
+ while iter.hasNext():
+ iPart = iter.next()
+ try:
+ endPoint = iPart.getEndPoint()
+ dataPoint = dataPointSet.addPoint()
+ dataPoint.coordinate(0).setValue(endPoint.x())
+ dataPoint.coordinate(0).setErrorPlus(0.01)
+ dataPoint.coordinate(0).setErrorMinus(0.01)
+ dataPoint.coordinate(1).setValue(endPoint.y())
+ dataPoint.coordinate(1).setErrorPlus(0.01)
+ dataPoint.coordinate(1).setErrorMinus(0.01)
+ dataPoint.coordinate(2).setValue(0)
+ dataPoint.coordinate(2).setErrorPlus(0.05)
+ dataPoint.coordinate(2).setErrorMinus(0.05)
+ except:
+ pass
+ region.plot(dataPointSet)
+ self.plotter.show()
+ self.plotter.writeToFile('tracks.png')
print 'please press ENTER'
sys.stdin.readline()