private void button1_Click(object sender, EventArgs e)
{
double wgs84f = 0.00335281, wgs84a = 6378137.00, wgs84b = 6356752.31424518;
double X, Y, Z;
X = Convert.ToDouble(textX.Text);
Y = Convert.ToDouble(textY.Text);
Z = Convert.ToDouble(textZ.Text);
double lambda;
lambda = (Math.Atan(Y / X));
if (X >= 0)
{
lambda = (Math.Atan(Y / X));
}
else if (X < 0 && Y >= 0)
{
lambda = ((Math.Atan(Y / X)) + 3.1415926535898);
}
else if (X < 0 && Y < 0)
{
lambda = ((Math.Atan(Y / X)) - 3.1415926535898);
}
double lambdaderece;
lambdaderece = (lambda * (180 / Math.PI));
double ke2;
ke2 = ((wgs84a * wgs84a) - (wgs84b * wgs84b)) / (wgs84a * wgs84a);
double P;
P = Math.Sqrt((X * X) + (Y * Y));
double R;
R = Math.Sqrt((P * P) + (Z * Z));
double teta;
teta = Math.Atan((Z * ((1 - wgs84f) * (ke2 * wgs84a / R))) / P);
double enlem;
enlem = Math.Atan((Z * (1 - wgs84f) + ke2 * wgs84a * (Math.Pow((Math.Sin(teta)), 3))) / ((1 - wgs84f) * (P - ke2 * wgs84a * (Math.Pow((Math.Cos(teta)), 3)))));
double fiderece;
fiderece = (enlem * (180 / Math.PI));
double yukseklik;
yukseklik = P * (Math.Cos(fiderece)) + Z * (Math.Sin(fiderece)) - wgs84a * (Math.Sqrt(1 - ke2 * (Math.Pow((Math.Sin(fiderece)), 2))));
lblBoylam.Text = lambdaderece.ToString();
lblEnlem.Text = fiderece.ToString();
lblYukseklik.Text = yukseklik.ToString();
}