GeomConverter/src/org/lcsim/geometry/segmentation
diff -u -r1.3 -r1.4
--- EcalBarrelCartesianGridXY.java 9 Dec 2009 16:24:02 -0000 1.3
+++ EcalBarrelCartesianGridXY.java 5 Feb 2010 20:04:10 -0000 1.4
@@ -402,7 +402,7 @@
this.getDecoder().setID(save);
this.computeGlobalPosition();
}
- public int getPseudoLayer()
+ public int getVLayer()
{
if(validXplusP == null)
{
@@ -416,8 +416,17 @@
int layer = thisId.getValue(layerIndex);
if(xbin > validXplusP[layer])
{
- // TODO: - calculate pseudoLayer
- return layer;
+ double xc = xc0 + gridSizeX*(xbin+.5);
+ double yp = yc[layer]*costh + xc*sinth;
+ double dely = yp - yc[layer];
+ int vl = layer;
+ for(int il=layer;il<nlayers-1;il++)
+ {
+ if(dely < (yc[il+1] - yc[il])/2.)break;
+ vl++;
+ dely -= yc[il+1] - yc[il];
+ }
+ return vl;
}
return layer;
}