|
18 | 18 | import org.jlab.rec.cvt.trajectory.Helix; |
19 | 19 | import org.jlab.rec.cvt.trajectory.StateVec; |
20 | 20 | import org.jlab.geom.prim.Line3D; |
| 21 | +import org.jlab.geom.prim.Point3D; |
| 22 | +import org.jlab.geom.prim.Arc3D; |
21 | 23 | import org.jlab.rec.cvt.Constants; |
22 | 24 | import org.jlab.rec.cvt.bmt.BMTType; |
23 | 25 | import org.jlab.rec.cvt.hit.Hit; |
@@ -58,6 +60,14 @@ public static DataBank fillSVTHitBank(DataEvent event, List<Hit> hitlist, String |
58 | 60 | bank.setByte("status", i, (byte) hitlist.get(i).getStrip().getStatus()); |
59 | 61 |
|
60 | 62 | if(bank.getDescriptor().hasEntry("ai")){ |
| 63 | + Line3D line = hitlist.get(i).getStrip().getLine(); |
| 64 | + bank.setFloat("xo", i, (float)line.origin().x() / 10); |
| 65 | + bank.setFloat("yo", i, (float)line.origin().y() / 10); |
| 66 | + bank.setFloat("zo", i, (float)line.origin().z() / 10); |
| 67 | + bank.setFloat("xe", i, (float)line.end().x() / 10); |
| 68 | + bank.setFloat("ye", i, (float)line.end().y() / 10); |
| 69 | + bank.setFloat("ze", i, (float)line.end().z() / 10); |
| 70 | + |
61 | 71 | bank.setByte("ai", i, hitlist.get(i).getDenoiseStatus()); |
62 | 72 | if(hitlist.get(i).getDenoiseProbality().size() == 1) |
63 | 73 | bank.setFloat("probability1", i, (float) hitlist.get(i).getDenoiseProbality().get(0)); |
@@ -220,6 +230,24 @@ public static DataBank fillBMTHitBank(DataEvent event, List<Hit> hitlist, String |
220 | 230 | bank.setByte("status", i, (byte) hitlist.get(i).getStrip().getStatus()); |
221 | 231 |
|
222 | 232 | if(bank.getDescriptor().hasEntry("ai")){ |
| 233 | + Point3D originPoint, endPoint; |
| 234 | + if(hitlist.get(i).getType() == BMTType.Z) { |
| 235 | + Line3D line = hitlist.get(i).getStrip().getLine(); |
| 236 | + originPoint = line.origin(); |
| 237 | + endPoint = line.end(); |
| 238 | + } |
| 239 | + else { |
| 240 | + Arc3D arcLine = hitlist.get(i).getStrip().getArc(); |
| 241 | + originPoint = arcLine.origin(); |
| 242 | + endPoint = arcLine.end(); |
| 243 | + } |
| 244 | + bank.setFloat("xo", i, (float)originPoint.x() / 10); |
| 245 | + bank.setFloat("yo", i, (float)originPoint.y() / 10); |
| 246 | + bank.setFloat("zo", i, (float)originPoint.z() / 10); |
| 247 | + bank.setFloat("xe", i, (float)endPoint.x() / 10); |
| 248 | + bank.setFloat("ye", i, (float)endPoint.y() / 10); |
| 249 | + bank.setFloat("ze", i, (float)endPoint.z() / 10); |
| 250 | + |
223 | 251 | bank.setByte("ai", i, hitlist.get(i).getDenoiseStatus()); |
224 | 252 | if(hitlist.get(i).getDenoiseProbality().size() == 1) |
225 | 253 | bank.setFloat("probability", i, (float) hitlist.get(i).getDenoiseProbality().get(0)); |
|
0 commit comments