高斯投影坐标正反算编程报告
更新时间:2023-09-10 11:04:02 阅读量: 教育文库 文档下载
高斯投影坐标正反算编程报告
1. 编程思想
进行高斯投影坐标正反算的编程需要牵涉到大量的公式,为了使程序条理更清楚,各块的数据复用性更强,这里采取了结构化的编程思想。
程序由四大块组成。
GeodesyHomework.cpp文件用于存放main()函数,是整个程序的入口。通过结构化的编程尽力使main()函数变得简单。
MyFunction.h和MyFunction.cpp用于存放计算过程中进行角度弧度换算时所要用到的一些自定的转换函数。
Zhengsuan.h和Zhengsuan.cpp用于存放Zhengsuan类,在Zhengsuan类中声明了高斯投影坐标正算所要用到的所有变量,在类的构造函数中进行成员变量的初始化及正算计算。通过get函数获得相应的正算结果。
Fansuan.h和Fansuan.cpp用于存放Fansuan类,类似于Zhengsuan类,Fansuan类中声明了高斯投影坐标反算所要用到的所有变量,在类的构造函数中进行成员变量的初始化及反算计算。通过get函数获得相应的反算结果。
2. 计算模型
高斯投影正算公式
x?X??NN232244????sinBcosB?l?simBcosB(5?t?9??4?)l2???224???4N5246??sinBcosB(61?58t?t)l720???6y??NN3223??cosB?l???cosB(1?t??)l???6???3N5242225??cosB(5?18t?t?14??58?t)l120???5
tf2MfNf5f高斯投影反算公式
B?Bf??tfy?2tf24MfN3f?5?3t2f224??2f?9?ftfy?720MfN46y61?90t2?45tyff??yy32l??1?2t2f??f3NfcosBf6NfcosBf???
y524222?5?28t?24t?6??8?fffftf5120NfcosBf?3. 程序框图
1
开始 输入B,L 求定带号N,中央纬度L0,纬度差l 正算 按照实用公式计算x,y 换算为国家统一坐标X,Y 输出X,Y 输入国家统一坐标X,Y 由Y取定带号N,并换算出x,y 求出中央经线L0 反算 按照实用公式计算B,l L=L0+l求出大地经度L 输出B,L 结束
4. 计算结果
2
5. 附录:程序代码
/////主函数入口
GeodesyHomework.cpp
#include \#include \#include \#include
void main(){ zhengsuan(); fansuan();
printf(\ }
voidzhengsuan(){ doublemyB,myL;
cout<<\【正算】\
cout<<\请输入大地纬度B\ myB=angleToDegree();
cout<<\请输入大地经度L\ myL=angleToDegree();
ZhengsuanmyZhengsuan1(myB,myL);
printf(\ myZhengsuan1.printLocation();
3
}
voidfansuan(){ doublemyX,myY;
cout<<\【反算】\
cout<<\请输入国家统一坐标 X Y。例如 3378627.1819 20243953.4517\ cin>>myX>>myY;
FansuanmyFansuan1(myX,myY); myFansuan1.printLocation(); }
///自定功能函数库 MyFunction.h
#define PI 3.1415926 #include
doubleangleToDegree(intdu,intfen,floatmiao); double angleToDegree();//将度分秒换算为度 doubledegreeToRadian(double degree); double degreeToRadian();//将角度换算为弧度
MyFunction.cpp
#include \
doubleangleToDegree(intdu,intfen,floatmiao){ double result=0;
result=miao/3600.0+fen/60.0+du; return result; }
doubleangleToDegree(){ intdu,fen; floatmiao; double result;
cout<<\请输入度分秒。例如:30 20 00\ cin>>du>>fen>>miao;
result=angleToDegree(du,fen,miao); return result; }
doubledegreeToRadian(double degree){ double result=0;
result=degree/57.295779513082321;
4
return result; }
doubledegreeToRadian(){ doubleresult,degree; degree=angleToDegree();
result=degreeToRadian(degree); return result; }
///正算类 Zhengsuan.h
// Zhengsuan.h: interface for the Zhengsuan class. //
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_ZHENGSUAN_H__2655EA28_E810_44A3_8F14_56421A7B4466__INCLUDED_)
#define
AFX_ZHENGSUAN_H__2655EA28_E810_44A3_8F14_56421A7B4466__INCLUDED_
#if _MSC_VER > 1000 #pragma once
#endif // _MSC_VER > 1000
#define rouSecond 206264.806247096355 #include \#include
classZhengsuan {
public:
Zhengsuan();
Zhengsuan(double fB,doublefL); doublegetX(); doublegetY(); doublegetrB(); doublegetrL();
voidprintLocation(); virtual ~Zhengsuan();
private:
5
正在阅读:
高斯投影坐标正反算编程报告09-10
我的故事作文600字03-31
JL-150系列电流继电器说明书10-27
学生个人《骆驼祥子》读后感08-02
XX卷烟厂制丝车间岗位绩效工资分配方案04-18
CASIO卡西欧GShockGWM56101男款腕表05-16
文言文2教师指导09-22
中国的广告行业的未来发展方向在哪里08-17
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 高斯
- 正反
- 坐标
- 投影
- 编程
- 报告
- 地籍图测绘
- 火力发电原理
- 送电线路工高级技师试题
- 浙江省绍兴市2017-2018学年高二下学期期末考试数学试卷Word版含解析
- ASME SB241铝及铝合金无缝管材及挤压无缝管材
- 2019年冷链运输现状及发展趋势分析报告 目录
- FastCAM系列软件
- 2018年-北师大版-三年级语文下册-第6单元测试卷(含解析)
- 云南省民办非学历教育机构设置指导标准
- 2018秋季学期最新(岳麓版)初中历史八年级上册习题:第8课 新文化运动同步测试-可打印
- 遥控编解码电路序号产品型号主要功能、用途兼容产品封装形式
- 脑卒中评定量表 - 图文
- 新教育读后感
- 浆果采摘机的设计
- 工程建设项目中存在超(概)预算问题的分析与建议
- 26那片绿绿的爬山虎教学设计
- 1号豫交文(2014)220号河南省公路工程工地试验室管理办法 - 图文
- 考核内容即格式要求--大作业格式模板
- 中药临方制剂刍议
- X线报告模板