diff --git a/Detector/DetSegmentation/src/GridDriftChamber.cpp b/Detector/DetSegmentation/src/GridDriftChamber.cpp
index b65edb2d3564a2f269526d946b67f8eb3d7f099d..c9cb9d50ed66d48130594f0afe718bae06e11f5a 100644
--- a/Detector/DetSegmentation/src/GridDriftChamber.cpp
+++ b/Detector/DetSegmentation/src/GridDriftChamber.cpp
@@ -79,9 +79,10 @@ void GridDriftChamber::cellposition(const CellID& cID, TVector3& Wstart,
   updateParams(layerIndex);
 
   double phi_start = phi(cID);
-  double phi_end = phi_start + returnAlpha();
+  double phi_mid = phi_start + _currentLayerphi/2.;
+  double phi_end = phi_mid + returnAlpha();
 
-  Wstart = returnWirePosition(phi_start, -1);
+  Wstart = returnWirePosition(phi_mid, -1);
   Wend = returnWirePosition(phi_end, 1);
 }