c#距离计算、角度转换、前方交会、距离交会程序

c#距离计算、角度转换、前方交会、距离交会程序,第1张

Program:

using System

using System.Collections.Generic

using System.Linq

using System.Text

namespace 测绘工程

{

class Program

{

static void Main(string[] args)

{

string a

Console.WriteLine("1:距离计算")

Console.WriteLine("2:度、分、秒转换")

Console.WriteLine("3:度与弧度转换")

Console.WriteLine("4:前方交会")

Console.WriteLine("5:距离交会")

Console.WriteLine(" ")

a=Console.ReadLine()

switch (a)

{

case "1"://计算距离

Distance distance = new Distance()

Console.WriteLine("请输入第一个点位坐标:")

distance.X1 = Convert.ToDouble(Console.ReadLine())

distance.Y1 = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第二个点位坐标:")

distance.X2 = Convert.ToDouble(Console.ReadLine())

distance.Y2 = Convert.ToDouble(Console.ReadLine())

distance.Calcu()

Console.ReadLine()

break

case "2"://度、分、秒转换

zhuanhuan zhuanhuan = new zhuanhuan()

string b

Console.WriteLine("1:度转换为分")

Console.WriteLine("2:度转换为秒")

Console.WriteLine("3:分转换为秒")

Console.WriteLine("4:分转换为度")

Console.WriteLine("5:秒转换为度")

Console.WriteLine("6:秒转换为分")

Console.WriteLine(" ")

b = Console.ReadLine()

switch(b)

{

case "1":

Console.WriteLine("度数:")

double dushu=Convert.ToDouble(Console.ReadLine())

zhuanhuan.A(dushu)

Console.WriteLine("转换后度数为:"+"{0:f4}"+"分",dushu)

Console.ReadLine()

break

case "2":

Console.WriteLine("度数:")

dushu = Convert.ToDouble(Console.ReadLine())

dushu=(zhuanhuan.A(dushu))

dushu = (zhuanhuan.A(dushu))

Console.WriteLine("转换后度数为:" + "{0:f4}" + "秒", dushu)

Console.ReadLine()

break

case "3":

Console.WriteLine("分:")

dushu = Convert.ToDouble(Console.ReadLine())

zhuanhuan.A(dushu)

Console.WriteLine("转换后度数为:" +"{0:f4}"+ "秒", dushu)

Console.ReadLine()

break

case "4":

Console.WriteLine("分:")

dushu = Convert.ToDouble(Console.ReadLine())

dushu = (zhuanhuan.B(dushu))

Console.WriteLine("转换后度数为:" + "{0:f4}" + "度", dushu)

Console.ReadLine()

break

case "5":

Console.WriteLine("秒:")

dushu = Convert.ToDouble(Console.ReadLine())

dushu = (zhuanhuan.B(dushu))

dushu = (zhuanhuan.B(dushu))

Console.WriteLine("转换后度数为:" + "{0:f4}" + "度",dushu)

Console.ReadLine()

break

case "6":

Console.WriteLine("秒:")

dushu = Convert.ToDouble(Console.ReadLine())

dushu = (zhuanhuan.B(dushu))

Console.WriteLine("转换后度数为:" + "{0:f4}" + "分", dushu)

Console.ReadLine()

break

}

break

case "3":

{

string aa

double bb

huduzhi huduzhi = new huduzhi()

Console.WriteLine("1:角度制转换为弧度制")

Console.WriteLine("2:弧度制转换为角度制")

Console.WriteLine(" ")

aa = Console.ReadLine()

if (aa == "1")

{

Console.WriteLine("角度为:")

bb =Convert.ToDouble(Console.ReadLine())

bb=huduzhi.A(bb)

Console.WriteLine("弧度为: "+"{0:f4}",bb)

Console.ReadLine()

}

if (aa == "2")

{

Console.WriteLine("弧度为:")

bb = Convert.ToDouble(Console.ReadLine())

bb=huduzhi.B(bb)

Console.WriteLine("角度为: " + "{0:f4}", bb)

Console.ReadLine()

}

break

}

case "4":

{

jiaohui jiaohui = new jiaohui()

Console.WriteLine("请输入第一个控制点X坐标:")

jiaohui.XA =Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第一个控制点Y坐标:")

jiaohui.YA =Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第二个控制点X坐标:")

jiaohui.XB =Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第二个控制点Y坐标:")

jiaohui.YB = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第一个观测方位角(弧度制):")

jiaohui.QBAP = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第二个观测方位角(弧度制):")

jiaohui.QPBA = Convert.ToDouble(Console.ReadLine())

jiaohui.qianfang()

}

break

case "5":

{

julijiaohui julijiaohui = new julijiaohui()

Console.WriteLine("请输入第一个控制点X坐标:")

julijiaohui.XA = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第一个控制点Y坐标:")

julijiaohui.YA = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第二个控制点X坐标:")

julijiaohui.XB = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第二个控制点Y坐标:")

julijiaohui.YB = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第一个控制点与待求点距离:")

julijiaohui.DAP = Convert.ToDouble(Console.ReadLine())

Console.WriteLine("请输入第二个控制与待求点距离:")

julijiaohui.DBP = Convert.ToDouble(Console.ReadLine())

julijiaohui.juli()

}

break

}

}

}

}

摘要:如果已知每张像片的6个外方位元素,就能确定被摄物体与航摄像片的关系。因此,利用单像空间后方交会的方法,可以迅速的算出每张像片的6个外方位元素。而前方交会的计算,可以算出像片上点对应于地面点的三维坐标。基于这两点,利用计算机强大的运算能力,可以代替人脑快速的完成复杂的计算过程。

关键词:后方交会,前方交会,外方位元素,C++编程

解算地面点坐标。

根据查询相关资料信息,航空摄影测量空间前方交会的目的是解算地面点坐标。应用单像空间后方交会求得像片的外方位元素后,欲由单张像片上的像点坐标反求相应。

航空摄影测量指的是在飞机上用航摄仪器对地面连续摄取像片,结合地面控制点测量、调绘和立体测绘等步骤,绘制出地形图的作业。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11138759.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存