常用测绘C#程序设计源代码Word格式文档下载.docx
- 文档编号:13695853
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:46
- 大小:142.77KB
常用测绘C#程序设计源代码Word格式文档下载.docx
《常用测绘C#程序设计源代码Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《常用测绘C#程序设计源代码Word格式文档下载.docx(46页珍藏版)》请在冰豆网上搜索。
{
staticvoidMain(string[]args)
Console.Write("
请输入斜边="
);
doubleD=double.Parse(Console.ReadLine());
请输入垂直角[ddd.mmss]="
doublea=DEG(double.Parse(Console.ReadLine()));
请输入仪器高="
doublei=double.Parse(Console.ReadLine());
请输入反光镜高="
doublev=double.Parse(Console.ReadLine());
doubleh=D*Math.Sin(a)+(1-0.13)*D/6371000.0*D/6371000.0*Math.Cos(a)*Math.Cos(a)/2.0+i-v;
Console.WriteLine("
高差为{0}"
h);
}
//将ddd.mmss转为弧度
staticpublicdoubleDEG(doubleang)
intfuhao=(int)(ang/Math.Abs(ang));
ang=Math.Abs(ang);
intd=(int)ang;
intm=((int)(ang*100))-d*100;
doubles=ang*10000-m*100-d*10000;
return((d+m/60.0+s/3600.0)*fuhao)/180.0*Math.PI;
(2)如图所示,已知A点的坐标及A点到B点的边长及方位角,计算B点的坐标。
请输入A点的X坐标="
doubleXA=double.Parse(Console.ReadLine());
请输入A点的Y坐标="
doubleYA=double.Parse(Console.ReadLine());
请输入A到B的方位角[ddd.mmss]="
请输入A到B的水平距离="
doubleS=double.Parse(Console.ReadLine());
doubleXB=XA+S*Math.Cos(a);
doubleYB=YA+S*Math.Sin(a);
B点的坐标({0},{1})"
XB,YB);
(3)如图所示,已知A点和B点的坐标,计算A点到的边长及方位角。
请输入B点的X坐标="
doubleXB=double.Parse(Console.ReadLine());
请输入B点的Y坐标="
doubleYB=double.Parse(Console.ReadLine());
doubleS=距离(XA,YA,XB,YB);
doublea=方位角(XA,YA,XB,YB);
AB间的距离={0},从A到B的方位角={1}"
S,DMS(a));
//将弧度转为ddd.mmss
staticpublicdoubleDMS(doubleang)
ang+=1.0E-15;
//加上一个小量,以保证进位
ang=Math.Abs(ang)*180.0/Math.PI;
ang=(ang-d)*60.0;
intm=(int)ang;
doubles=(ang-m)*60.0;
return(d+m/100.0+s/10000.0)*fuhao;
//计算方位角,返回弧度值
publicstaticdouble方位角(doublex1,doubley1,doublex2,doubley2)
doubledeltaX=x2-x1;
doubledeltaY=y2-y1;
doubleangle=Math.PI*0.5;
if(Math.Abs(deltaX)>
0.000000001)
angle=Math.Atan2(deltaY,deltaX);
if(angle<
0)
angle+=Math.PI;
if(deltaY<
0.0)
returnangle;
//计算距离
publicstaticdouble距离(doublex1,doubley1,doublex2,doubley2)
returnMath.Sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
(4)在如图所示的支中导线,已知A点到M点的坐标方位角及每个左角,求每条边的坐标方位角。
请输入A点到M点的坐标方位角="
//将A点到M点的坐标方位角换算为M点到A点的坐标方位角,以便利用公式
doublea0=DEG(double.Parse(Console.ReadLine())+180.0);
if(a0>
2*Math.PI)
a0-=2*Math.PI;
List<
double>
导线转角集合=newList<
();
inti=1;
do
请输入第{0}个转角的水平角[左角为正,右角为负]<
直接回车结束输入>
="
i++);
stringstr=Console.ReadLine();
if(str!
="
"
)
导线转角集合.Add(DEG(double.Parse(str)));
else
break;
}while(true);
i=1;
foreach(doubleain导线转角集合)
a0+=a+Math.PI;
elseif(a0<
a0+=2*Math.PI;
第{0}条边的方位角为{1}"
i++,DMS(a0));
return((d+m/60.0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常用 测绘 C# 程序设计 源代码
![提示](https://static.bdocx.com/images/bang_tan.gif)