C# 简单的前方交会程序设计

 窗口设计不过多介绍。

前方交会最主要的是计算,以下为主要的计算程序:

        首先对已知的角度进行转化,将角度转化为弧度制:

 a1 = a1 + b1 / 60 + c1 / 3600;
 anga = a1 / 180 * Math.PI;
 a2 = a2 + b2 / 60 + c2 / 3600;
 angb = a2 / 180 * Math.PI;

           利用弧度制对坐标进行计算:
          

 xp = (xa*(1/Math.Tan(angb))+xb*(1/Math.Tan(anga))+(yb-ya))/(1/Math.Tan(angb)+1/ Math.Tan(anga));
 yp = (ya*(1/Math.Tan(angb))+yb*(1/Math.Tan(anga))+(xa-xb))/(1/Math.Tan(angb)+1/ Math.Tan(anga));

 ​​​​​​主要程序设计:

private void button1_Click(object sender, EventArgs e)//计算按钮
        {
            double xa, ya, xb, yb, xp, yp,a1,b1,c1,a2,b2,c2 ,anga, angb;


            xa = Convert.ToDouble(textBox1.Text);
            ya = Convert.ToDouble(textBox2.Text);
            xb = Convert.ToDouble(textBox3.Text);
            yb = Convert.ToDouble(textBox4.Text);
            a1 = Convert.ToDouble(textBox5.Text);
            b1 = Convert.ToDouble(textBox9.Text);
            c1 = Convert.ToDouble(textBox10.Text);
            a2 = Convert.ToDouble(textBox6.Text);
            b2 = Convert.ToDouble(textBox11.Text);
            c2 = Convert.ToDouble(textBox12.Text);

            a1 = a1 + b1 / 60 + c1 / 3600;
            anga = a1 / 180 * Math.PI;
            a2 = a2 + b2 / 60 + c2 / 3600;
            angb = a2 / 180 * Math.PI;


            xp = (xa * (1 / Math.Tan(angb)) + xb * (1 / Math.Tan(anga)) + (yb - ya)) / (1 / Math.Tan(angb) + 1 / Math.Tan(anga));
            yp= (ya * (1 / Math.Tan(angb)) + yb * (1 / Math.Tan(anga)) + (xa - xb)) / (1 / Math.Tan(angb) + 1 / Math.Tan(anga));
            
            textBox7.Text = Convert.ToString(xp);
            textBox8.Text = Convert.ToString(yp);
        }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值