资源简介
单张像片,已知主距f,像点坐标x,y和地面点坐标X,Y,Z求外方面为元素,即用空间后方交会计算外方位元素。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _12016225_余健
{
class Calcucs
{
//***********计算比例尺**********
public double cal_Scale(double[] xy double[] XYZ)
{
double[] em = new double[6];
double dxy = 0;
double dXY = 0;
double sumscal = 0;
int k = 0;
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3 - i; j++)
{
dxy = Math.Sqrt(Math.Pow(xy[i 0] - xy[i + j + 1 0] 2) + Math.Pow(xy[i 1] - xy[i + j + 1 1] 2)); //像点两点间距离
dXY = Math.Sqrt(Math.Pow(XYZ[i 0] - XYZ[i + j + 1 0] 2) + Math.Pow(XYZ[i 1] - XYZ[i + j + 1 1] 2)); //地面点两点间距离
em[k++] = dXY / dxy;
}
for (int s = 0; s < k; s++)
{
sumscal += em[s];
}
return sumscal / 6;
}
//*************计算旋转矩阵R***********
public void cal_R(double[] R double[] rAngle)
{
R[0 0] = Math.Cos(rAngle[0 0]) * Math.Cos(rAngle[2 0]) - Math.Sin(rAngle[0 0]) * Math.Sin(rAngle[1 0]) * Math.Sin(rAngle[2 0]);
R[0 1] = -(Math.Cos(rAngle[0 0]) * Math.Sin(rAngle[2 0])) - Math.Sin(rAngle[0 0]) * Math.Sin(rAngle[1 0]) * Math.Cos(rAngle[2 0]);
R[0 2] = -(Math.Sin(rAngle[0 0]) * Math.Cos(rAngle[1 0]));
R[1 0] = Math.Cos(rAngle[1 0]) * Math.Sin(rAngle[2 0]);
R[1 1] = Math.Cos(rAngle[1 0]) * Math.Cos(rAngle[2 0]);
R[1 2] = -(Math.Sin(rAngle[1 0]));
R[2 0] = Math.Sin(rAngle[0 0]) * Math.Cos(rAngle[2 0]) + Math.Cos(rAngle[0 0]) * Math.Sin(rAngle[1 0]) * Math.Sin(rAngle[2 0]);
R[2 1] = -(Math.Sin(rAngle[0 0]) * Math.Sin(rAngle[2 0])) + Math.Cos(rAngle[0 0]) * Math.Sin(rAngle[1 0]) * Math.Cos(rAngle[2 0]);
R[2 2] = Math.Cos(rAngle[0 0]) * Math.Cos(rAngle[1 0]);
}
//***********计算(x)(y)************
public void cal_x0y0(double[] x0y0 double[] R double f double[] XYZ double[] XsYsZs)
{
for (int i = 0; i < 4; i++)
{
x0y0[i 0] = f * (R[0 0] * (XYZ[i 0] - XsYsZs[0 0]) + R[1 0] * (XYZ[i 1] - XsYsZs[1 0]) + R[2 0] * (XYZ[i 2] - XsYsZs[2 0])) / (R[0 2] * (XYZ[i 0] - XsYsZs[0 0]) + R[1 2] * (XYZ[i 1] - XsYsZs[1 0]) + R[2 2] * (XYZ[i 2] - XsYsZs[2 0]));
x0y0[i 1] = f * (R[0 1] * (XYZ[i 0] - XsYsZs[0 0]) + R[1 1] * (XYZ[i 1] - XsYsZs[1 0]) + R[2 1] * (XYZ[i 2] - XsYsZs[2 0])) / (R[0 2] * (XYZ[i 0] - XsYsZs[0 0]) + R[1 2] * (XYZ[i 1] - XsYsZs[1 0]) + R[2 2] * (XYZ[i 2] - XsYsZs[2 0]));
}
}
//*************计算A****************
public void cal_A(double[] A doub
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-06-05 13:25 12016225_余健\
目录 0 2015-06-05 13:23 12016225_余健\12016225_余健\
文件 887 2015-06-05 13:17 12016225_余健\12016225_余健.sln
文件 18944 2015-06-05 13:32 12016225_余健\12016225_余健.suo
文件 3728 2015-06-05 13:25 12016225_余健\12016225_余健\12016225_余健.csproj
目录 0 2015-06-05 13:17 12016225_余健\12016225_余健\bin\
目录 0 2015-06-05 13:25 12016225_余健\12016225_余健\bin\Debug\
文件 15872 2015-06-05 13:31 12016225_余健\12016225_余健\bin\Debug\12016225_余健.exe
文件 36352 2015-06-05 13:31 12016225_余健\12016225_余健\bin\Debug\12016225_余健.pdb
文件 11600 2015-06-05 13:32 12016225_余健\12016225_余健\bin\Debug\12016225_余健.vshost.exe
文件 391 2015-05-30 21:51 12016225_余健\12016225_余健\bin\Debug\后方交会数据.txt
目录 0 2015-06-05 13:17 12016225_余健\12016225_余健\bin\Release\
文件 7810 2015-06-05 13:25 12016225_余健\12016225_余健\Calcucs.cs
文件 7833 2015-06-05 13:31 12016225_余健\12016225_余健\Form1.cs
文件 5225 2015-06-05 13:29 12016225_余健\12016225_余健\Form1.Designer.cs
文件 5817 2015-06-05 13:29 12016225_余健\12016225_余健\Form1.resx
目录 0 2015-06-05 13:17 12016225_余健\12016225_余健\obj\
目录 0 2015-06-05 13:17 12016225_余健\12016225_余健\obj\x86\
目录 0 2015-06-05 13:31 12016225_余健\12016225_余健\obj\x86\Debug\
文件 668 2015-06-05 13:32 12016225_余健\12016225_余健\obj\x86\Debug\12016225_余健.csproj.FileListAbsolute.txt
文件 975 2015-06-05 13:29 12016225_余健\12016225_余健\obj\x86\Debug\12016225_余健.csproj.GenerateResource.Cache
文件 15872 2015-06-05 13:31 12016225_余健\12016225_余健\obj\x86\Debug\12016225_余健.exe
文件 36352 2015-06-05 13:31 12016225_余健\12016225_余健\obj\x86\Debug\12016225_余健.pdb
文件 2867 2015-06-05 13:17 12016225_余健\12016225_余健\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache
文件 6344 2015-06-05 13:31 12016225_余健\12016225_余健\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
目录 0 2015-06-05 13:17 12016225_余健\12016225_余健\obj\x86\Debug\TempPE\
文件 180 2015-06-05 13:29 12016225_余健\12016225_余健\obj\x86\Debug\_12016225_余健.Form1.resources
文件 180 2015-06-05 13:25 12016225_余健\12016225_余健\obj\x86\Debug\_12016225_余健.Properties.Resources.resources
文件 521 2015-06-05 13:17 12016225_余健\12016225_余健\Program.cs
目录 0 2015-06-05 13:17 12016225_余健\12016225_余健\Properties\
文件 1362 2015-06-05 13:17 12016225_余健\12016225_余健\Properties\AssemblyInfo.cs
............此处省略5个文件信息
- 上一篇:C#读取惯导数据的简单
- 下一篇:小人快跑WPF帧动画效果
评论
共有 条评论