private static double ConvertLatitudeToMercatorY(double latitudeDegrees)
{
if ((latitudeDegrees > 89.999999) || (latitudeDegrees < -89.999999))
{
throw new ArgumentException("Latitude " + latitudeDegrees +
" is outside the valid range, would produce infinity or NaN.");
}
double latitude = GeoMath.ConvertToRadians(latitudeDegrees);
double y = GeoMath.EARTH_RADIUS_AT_EQUATOR_METERS / 2.0 *
Math.Log((1.0 + Math.Sin(latitude)) /
(1.0 - Math.Sin(latitude)));
return y;
}