formmain.cs

来自「白塞尔大地主题解算 包括正算与反算。可由经纬度计算距离」· CS 代码 · 共 90 行

CS
90
字号
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace BesselEarth
{
    public partial class FormMain : Form
    {
        public FormMain()
        {
            InitializeComponent();
            comboBoxBall.SelectedIndex = 0;
            comboBoxBall2.SelectedIndex = 0;
        }

        private void buttonComputation_Click(object sender, EventArgs e)
        {
            BesselEarth bs = new BesselEarth();
            bs.StartLongitude = double.Parse(textBoxStartLongitude.Text);
            bs.StartLatitude = double.Parse(textBoxStartLatitude.Text);
            bs.A1 = double.Parse(textBoxA1.Text);
            bs.Length = double.Parse(textBoxLength.Text);
            switch (comboBoxBall.Text)
            {
                case "WGS-84椭球体":
                    {
                        bs.Computation(EnumEarthParameter.WGS84);
                        break;
                    }
                case "1975国际椭球体":
                    {
                        bs.Computation(EnumEarthParameter.International1975);
                        break;
                    }
                case "克拉索夫斯基椭球体":
                    {
                        bs.Computation(EnumEarthParameter.KeLaSuoFuSiJi);
                        break;
                    }
                default:
                    {
                        bs.Computation(EnumEarthParameter.WGS84);
                        break;
                    }
            }
            textBoxEndLongitude.Text = bs.EndLongitude.ToString();
            textBoxEndLatitude.Text = bs.EndLatitude.ToString();
            textBoxA2.Text = bs.A2.ToString();
        }

        private void buttonInverseComputation_Click(object sender, EventArgs e)
        {
            BesselEarth bs = new BesselEarth();
            bs.StartLongitude = double.Parse(textBox2StartLongitude.Text);
            bs.StartLatitude = double.Parse(textBox2StartLatitude.Text);
            bs.EndLongitude = double.Parse(textBox2EndLongitude.Text);
            bs.EndLatitude = double.Parse(textBox2EndLatitude.Text);
            switch (comboBoxBall.Text)
            {
                case "WGS-84椭球体":
                    {
                        bs.InverseComputation(EnumEarthParameter.WGS84);
                        break;
                    }
                case "1975国际椭球体":
                    {
                        bs.InverseComputation(EnumEarthParameter.International1975);
                        break;
                    }
                case "克拉索夫斯基椭球体":
                    {
                        bs.InverseComputation(EnumEarthParameter.KeLaSuoFuSiJi);
                        break;
                    }
                default:
                    {
                        bs.InverseComputation(EnumEarthParameter.WGS84);
                        break;
                    }
            }
            textBox2A1.Text = bs.A1.ToString();
            textBox2A2.Text = bs.A2.ToString();
            textBox2Length.Text = bs.Length.ToString();
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?