• 大小: 44KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: 其他
  • 标签:

资源简介

空间两坐标系转换,7参数求解,注释详细,机构简单,一看就明白。利用平差求得7参数值,开源代码,便于自己添加坐标转换!

资源截图

代码片段和文件信息

/* * * * * * * * * * * * * * * * * * * * * 
* FileName:    Matrix.h
* Description: Matrix Class 

* Version:     1.0
* Author:      wxs
* Finish Time: 2001年7月2日
* * * * * * * * * * * * * * * * * * * * * */

#include “stdafx.h“
#include “Matrix.h“
#include 

#ifndef _EPSINON_
    #define EPSINON 1e-18
#endif

#ifndef _MINDOUBLE_
#define MINDOUBLE -1.7e+308
#endif

#ifndef _MAXDOUBLE_
#define MAXDOUBLE 1.7e+308
#endif

CMatrix::CMatrix()//构造函数
{
m_nRow = 0;
m_nCol = 0;

m_pData = NULL;
}

CMatrix::CMatrix(int nRow int nCol)//带参构造函数
{
    m_nRow = nRow; 
m_nCol = nCol;

    m_pData = new double*[m_nRow];
    ASSERT(m_pData != NULL);

    for (int i = 0; i < m_nRow; i++)
    {
       m_pData[i] = new double[m_nCol];
       ASSERT(m_pData[i] != NULL);

   for (int j = 0; j < m_nCol; j++)
       {
           (*this)[i][j] = 0;
       }
    }
}

CMatrix::CMatrix(int nRow int nCol double* pAry)//带参构造函数 
{
    ASSERT(pAry != NULL);

    m_nRow = nRow; 
m_nCol = nCol;

    m_pData = new double*[m_nRow];
    ASSERT(m_pData != NULL);

for (int i = 0; i < m_nRow; i++)
    {
       m_pData[i] = new double[nCol];
       ASSERT(m_pData[i] != NULL);

   for (int j = 0; j < m_nCol; j++)
       {
           (*this)[i][j] = pAry[i*m_nCol+j];
       }
    }
}

CMatrix::CMatrix(CMatrix & src)
{
m_nRow = src.Row();
m_nCol = src.Col();

m_pData = new double*[src.Row()];
    ASSERT(m_pData != NULL);

    for(int i = 0; i < src.Row(); i++)
{
        m_pData[i] = new double[src.Col()];
        ASSERT(m_pData[i] != NULL);

        for(int j = 0; j < src.Col(); j++)
        {
            (*this)[i][j] = src[i][j];
        }
}
}

CMatrix::~CMatrix(void)//析构函数
{
    this->Empty();
}

void CMatrix::Serialize(CArchive &ar)//文件流操作
{
Cobject::Serialize(ar);

if(ar.IsStoring())
{
ar << m_nRow<< m_nCol;

for(int i = 0; i < m_nRow; i++)
{
for(int j = 0; j < m_nCol; j++)
{
ar << (*this)[i][j];
}
}
}
else
{
int nRow nCol;

ar >> nRow >> nCol;
SetMatrix(nRow nCol);

for(int i = 0; i < nRow; i++)
{
for(int j = 0; j < nCol; j++)
{
ar >> (*this)[i][j];
}
}
}
}

void CMatrix::Draw(CDC *pDC CPoint pos)//画矩阵
{
}

void CMatrix::Empty(void)//清空矩阵
{
    if (m_pData != NULL)
    {
for (int i = 0; i < Row(); i++)
{
   delete[] m_pData[i];
}

delete[] m_pData;

m_pData = NULL;
    }

    m_nRow = 0; 
m_nCol = 0;
}

BOOL CMatrix::IsEmpty(void)//判断矩阵是否为空
{
    if (m_pData != NULL)
    {
        return FALSE;
    }

return TRUE;
}

void CMatrix::SetMatrix(int nRow int nCol)//矩阵初始化为 0
{
    this->Empty();

    m_nRow = nRow; 
m_nCol = nCol;

    m_pData = new double*[nRow];
ASSERT(m_pData != NULL);

    for (int i = 0; i < nRow; i++)
    {
m_pData[i] = new double[nCol];
ASSERT(m_pData[i] != NULL);

for (int j = 0; j <

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      17800  2009-04-26 01:36  Transform\Matrix.cpp

     文件       2587  2009-04-26 01:13  Transform\Matrix.h

     文件       3633  2009-04-23 22:09  Transform\ReadMe.txt

     文件       1270  2009-04-25 23:40  Transform\res\bitmap1.bmp

     文件        894  2009-04-25 00:52  Transform\res\ROBOT31.ICO

     文件       1078  2009-04-23 22:09  Transform\res\Transform.ico

     文件        401  2009-04-23 22:09  Transform\res\Transform.rc2

     文件       1882  2009-04-25 23:40  Transform\resource.h

     文件        211  2009-04-23 22:09  Transform\StdAfx.cpp

     文件       1054  2009-04-23 22:09  Transform\StdAfx.h

     文件      25192  2009-05-02 16:14  Transform\Transform.aps

     文件       3430  2009-05-06 11:59  Transform\Transform.clw

     文件       2105  2009-04-23 22:09  Transform\Transform.cpp

     文件       4470  2009-04-26 00:58  Transform\Transform.dsp

     文件        543  2009-04-23 22:09  Transform\Transform.dsw

     文件       1357  2009-04-23 22:09  Transform\Transform.h

     文件     123904  2009-05-06 11:59  Transform\Transform.ncb

     文件      54784  2009-05-06 11:59  Transform\Transform.opt

     文件        713  2009-05-06 11:11  Transform\Transform.plg

     文件       8750  2009-04-25 23:40  Transform\Transform.rc

     文件       7612  2009-04-26 01:40  Transform\TransformDlg.cpp

     文件       1828  2009-04-26 01:39  Transform\TransformDlg.h

     目录          0  2009-04-26 15:01  Transform\res

     目录          0  2009-05-07 13:01  Transform

----------- ---------  ---------- -----  ----

               265498                    24


评论

共有 条评论

相关资源