File indexing completed on 2026-04-10 07:50:28
0001
0002 """
0003 U4SimulateTest_ck.py
0004 ======================
0005
0006 """
0007 import os, logging, numpy as np
0008 log = logging.getLogger(__name__)
0009
0010 from opticks.ana.fold import Fold
0011 from opticks.ana.p import *
0012 from opticks.sysrap.sevt import SEvt
0013
0014 MODE = int(os.environ.get("MODE","2"))
0015 if MODE > 0:
0016 from opticks.ana.pvplt import *
0017 else:
0018 pass
0019 pass
0020
0021 axes = 0, 2
0022 H,V = axes
0023
0024
0025 if __name__ == '__main__':
0026 logging.basicConfig(level=logging.INFO)
0027
0028 FOLD = os.environ.get("FOLD", None)
0029 log.info(" -- SEvt.Load FOLD" )
0030 a = SEvt.Load(FOLD, symbol="a")
0031 print(a)
0032
0033 beg_ = "a.f.record[:,0,0,:3]"
0034 beg = eval(beg_)
0035
0036 end_ = "a.f.photon[:,0,:3]"
0037 end = eval(end_)
0038
0039
0040
0041 label0, ppos0 = "b:%s" % beg_ , beg
0042
0043
0044 label1, ppos1 = "r:%s" % end_ , end
0045
0046
0047 HEADLINE = "%s %s" % ( a.LAYOUT, a.CHECK )
0048 label = "\n".join( filter(None, [HEADLINE, label0, label1]))
0049 print(label)
0050
0051 if MODE == 0:
0052 print("not plotting as MODE 0 in environ")
0053 elif MODE == 2:
0054 fig, ax = mpplt_plotter(label=label)
0055
0056 ax.set_ylim(-250,250)
0057 ax.set_xlim(-500,500)
0058
0059 if not ppos0 is None: ax.scatter( ppos0[:,H], ppos0[:,V], s=1, c="b" )
0060 if not ppos1 is None: ax.scatter( ppos1[:,H], ppos1[:,V], s=1, c="r" )
0061
0062 fig.show()
0063 elif MODE == 3:
0064 pl = pvplt_plotter(label)
0065 os.environ["EYE"] = "0,100,165"
0066 os.environ["LOOK"] = "0,0,165"
0067 pvplt_viewpoint(pl)
0068 pl.add_points(ppos0)
0069 pl.show()
0070 pass
0071 pass
0072