中南大学测绘程序课程设计报告(含代码).doc
文本预览下载声明
中南大学
测绘程序课程设计报告
姓名:XXX
学号:XXXXXXX
指导老师:XXX
专业班级:XXXX
1系统设计
实现功能
1.1优化设计:根据控制网的观测精度与网形,全面评定网的精度
1.2数据输入:使用外部数据倒入,通过读取.txt格式观测文件实现数据输入
1.3概算:主要是进行近似坐标的推算。
1.4平差计算:对观测数据进行精密平差计算,得到平差后的点位坐标,方向
观测值,边长观测值等,精度评定。
1.5成果输出:控制网图形输出,绘制误差椭圆,以及平差结果导出到txt文
件中。
2、系统总体框架
导线网平差系统
导线网平差系统
成果输出平差计算近似坐标推算数据输入
成果输出
平差计算
近似坐标推算
数据输入
2.1数据输入
2.1.1文件格式:
2 已知点数据个数
1,31250.2500,11500.4100
2,33256.5700,10900.8400 已知点数据
3 未知点数据个数
3,
4, 未知点数据
5,
8 距离观测数据个数
1,3,2300.0600
1,4,3090.3530
2,5,3643.2340
2,3,2115.9190 距离观测数据
2,4,4363.6110
3,5,2169.0730
3,4,2620.9090
4,5,3922.8600
18 方向观测数据个数
1,2,0
1,3,57.203210
1,4,113.140635
2,5,0
2,3,32.122292
2,4,57.501530
2,1,98.261273
3,1,0
3,2,56.253779
3,5,172.533944 方向观测数据
3,4,282.295383
4,1,0
4,2,26.095412
4,3,46.361798
4,5,77.594671
5,4,0
5,3,39.001779
5,2,70.195151
2.1.2数据输入实现:
(1)创建点类用于存取点的信息,如坐标、点号、长短轴、精度信息
class ClzControlPoint
{
public:
ClzControlPoint();
~ClzControlPoint();
double X;
double Y;
CString strPointID;
int state;
int flg;
double dE;
double dF;
double dQ;
double dMx;
double dMy;
double dMk;
};
(2)创建距离类用于存取距离观测信息,如测站方向点、观测方向点、距离观测值
class ClzDistObs
{
public:
ClzDistObs();
~ClzDistObs();
public:
ClzControlPoint *cpStart, *cpEnd;
double dDist;
};
(3)创建方向类用于存取方向观测信息,如测站方向点、照准方向点、方向观测值
class ClzAngleObs
{
public:
ClzAngleObs();
~ClzAngleObs();
public:
ClzControlPoint *cpStation;
ClzControlPoint *cpEnd;
Angle ObsAngle;
};
(4)读取文件函数:bool ClzControlNetAdjust::LoadObsData(const CString strFileName),此函数功能为通过传入的文件名strFileName进行文件读写,并将信息存到相应成员数据中。
2.2近似坐标推算
2.2.1近似坐标计算原理
按方向和边长观测值计算导线网中待定点的近似坐标
bka
b
k
a
A
tab
t
d
2.2.2具体实现
(1)坐标概算函数:void ClzControlNetAdjust::CoordinateEstimat
显示全部