- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
摄影测量程序汇总(后方交会前方交会单模型光束法平差)[精品]
程序运行环境为Visual Studio2010.运行前请先将坐标数据放在debug下。
单像空间后方交会
内方位元素 x0(/mm) y0(/mm) 主距f(/mm) 比例尺分母 0 0 153.24 50000 像点坐标(/mm) 物点坐标(/m) -86.15 -68.99 36589.41 25273.32 2195.17 -53.4 82.21 37631.08 31324.51 728.69 -14.78 -76.63 39100.97 24934.98 2386.5 10.46 64.43 40426.54 30319.81 757.31
C语言程序:
#include stdio.h
#include math.h
#include iostream
double *readdata();
void savedata(int hang,double *data,double *xishuarray,double *faxishu,double *l,int i,double xs,double ys,double zs,double fai,double oumiga,double kapa);
void transpose(double *m1,double *m2,int m,int n);
void inverse(double *a,int n);
void multi(double *mat1,double * mat2,double * result,int a,int b,int c);
void inverse(double *a,int n)/*正定矩阵求逆*/
{
int i,j,k;
for(k=0;kn;k++)
{
for(i=0;in;i++)
{
if(i!=k)
*(a+i*n+k)=-*(a+i*n+k)/(*(a+k*n+k));
}
*(a+k*n+k)=1/(*(a+k*n+k));
for(i=0;in;i++)
{
if(i!=k)
{
for(j=0;jn;j++)
{
if(j!=k)
*(a+i*n+j)+=*(a+k*n+j)* *(a+i*n+k);
}
}
}
for(j=0;jn;j++)
{
if(j!=k)
*(a+k*n+j)*=*(a+k*n+k);
}
}
}
void transpose(double *m1,double *m2,int m,int n) //矩阵转置
{ int i,j;
for(i=0;im;i++)
for(j=0;jn;j++)
m2[j*m+i]=m1[i*n+j];
return;
}
void multi(double *mat1,double *mat2,double * result,int a,int b,int c)
{ int i,j,k;
for(i=0;ia;i++)
{for(j=0;jc;j++)
{result[i*c+j]=0;
for(k=0;kb;k++)
result[i*c+j]+=mat1[i*b+k]*mat2[k*c+j];
}
}
return;
}
double *readdata()
{
FILE *fp;
int i,j;
int number;
char datacatolog[100];
//scanf(%s,datacatolog);
if ((fp=fopen(控制点坐标.txt,r))==NULL)
{
printf(读取数据出错!\n);
return false;
}
fscanf(fp,%d,number);
double *cordata=new double[number*5];
for (i=0;inumber;i++)
{
for (j=0;j5;j++)
{
fscanf(fp,%lf,cordata+i*5+j);
}
}
printf(控制点坐标数据读取成功!\n);
return cordata;
}
void savedata(int hang,double *data,double *xishuarray,double *faxishu,double *l,int i,double xs,double ys,double zs,double fai,double oumiga,double
您可能关注的文档
最近下载
- 《中国民航发展史》课件——1-2 近代中国航空的开展.pptx VIP
- 第2节_电生磁-教学课件.pptx VIP
- 上访事件应急处置方案.docx VIP
- 《中国民航发展史》课件——第六章 中国民航体制改革的继续深化与.pptx VIP
- 《核电子学》习题解答.docx
- 《中国民航发展史》课件——第三章 新中国民用航空事业的创立与初步发展.pptx VIP
- 《中国民航发展史》课件——第二章 第二次世界大战后快速崛起的中国民用航空.pptx VIP
- 心流体验之如何进入最佳心理状态的课件.pptx
- 牙科椅的使用注意事项和维护保养.pptx
- 《中国民航发展史》课件——第一章 中国民用航空的萌芽与初步发展.pptx VIP
文档评论(0)