diff --git a/Geo/GFace.cpp b/Geo/GFace.cpp
index d8ec5c1012f3471f57c0ad0317c3a15e31ce9a3f..6c6831fde44ed83fc2d3773102a68812dcf5cdf3 100644
--- a/Geo/GFace.cpp
+++ b/Geo/GFace.cpp
@@ -813,8 +813,8 @@ void GFace::XYZtoUV(double X, double Y, double Z, double &U, double &V,
   double mat[3][3], jac[3][3];
   double umin, umax, vmin, vmax;
   // don't use 0.9, 0.1 it fails with ruled surfaces
-  double initu[NumInitGuess] = {0.5, 0.6, 0.4, 0.7, 0.3, 0.8, 0.5, 0.5, 0.5};
-  double initv[NumInitGuess] = {0.5, 0.6, 0.4, 0.7, 0.3, 0.8, 0.2, 0.5, 0.5};
+  double initu[NumInitGuess] = {0.5, 0.6, 0.4, 0.7, 0.3, 0.8, 0.2, 1.0, 0.0};
+  double initv[NumInitGuess] = {0.5, 0.6, 0.4, 0.7, 0.3, 0.8, 0.2, 1.0, 0.0};
 
   Range<double> ru = parBounds(0);
   Range<double> rv = parBounds(1);