public GeoPoint createSurfacePoint(final double x,final double y,final double z){
  final double t=Math.sqrt(1.0 / (x * x * inverseAbSquared + y * y * inverseAbSquared + z * z * inverseCSquared));
  return new GeoPoint(t * x,t * y,t * z);
}

public GeoPoint createSurfacePoint ( final double x , final double y , final double z ) { final double t = Math . sqrt ( 1.0 / ( x * x * inverseAbSquared + y * y * inverseAbSquared + z * z * inverseCSquared ) ) ; return new GeoPoint ( t * x , t * y , t * z ) ; }
compute a geopoint that ' s based on ( x , y , z ) values , but is scaled to actually be on the planet surface .
