59 lines
1.5 KiB
C
59 lines
1.5 KiB
C
|
#pragma once
|
|||
|
#ifndef __SATEORIBT_H__
|
|||
|
#define __SATEORIBT_H__
|
|||
|
///
|
|||
|
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD>
|
|||
|
///
|
|||
|
|
|||
|
//#define EIGEN_USE_MKL_ALL
|
|||
|
//#define EIGEN_VECTORIZE_SSE4_2
|
|||
|
//#include <mkl.h>
|
|||
|
// <20><><EFBFBD>ط<EFBFBD><D8B7><EFBFBD>
|
|||
|
#include "gf3calibrationandorthlib_global.h"
|
|||
|
#include "BaseTool.h"
|
|||
|
#include <iostream>
|
|||
|
#include <Eigen/Core>
|
|||
|
#include <Eigen/Dense>
|
|||
|
#include <time.h>
|
|||
|
//#include <mkl.h>
|
|||
|
//#include <armadillo>
|
|||
|
|
|||
|
|
|||
|
//using namespace std;
|
|||
|
//using namespace Eigen;
|
|||
|
//using namespace arma;
|
|||
|
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// <20><><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
/// </summary>
|
|||
|
class GF3CALIBRATIONANDORTHLIB_EXPORT OrbitPoly {
|
|||
|
public:
|
|||
|
//OrbitPoly(std::string orbitModelPath);
|
|||
|
OrbitPoly();
|
|||
|
OrbitPoly(int polynum, Eigen::MatrixX<double> polySatellitePara, double SatelliteModelStartTime);
|
|||
|
~OrbitPoly();
|
|||
|
|
|||
|
Eigen::MatrixX<double> SatelliteSpacePoint(Eigen::MatrixX<double> satellitetime);
|
|||
|
Eigen::MatrixX<double> SatelliteSpacePoint(long double satellitetime);
|
|||
|
public:
|
|||
|
int polynum;
|
|||
|
Eigen::MatrixX<double> polySatellitePara;
|
|||
|
double SatelliteModelStartTime;
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// <20><>ȡָ<C8A1><D6B8>ʱ<EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
/// </summary>
|
|||
|
/// <param name="satellitetime"><3E><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1></param>
|
|||
|
/// <param name="SatelliteModelStartTime">ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1></param>
|
|||
|
/// <param name="polySatellitePara">ģ<>Ͳ<EFBFBD><CDB2><EFBFBD>[x1,y1,z1,vx1,vy1,vz1; x2,y2,z2,vx2,vy2,vz2; ..... ]</param>
|
|||
|
/// <param name="polynum">ģ<>Ͳ<EFBFBD><CDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></param>
|
|||
|
/// <returns><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></returns>
|
|||
|
Eigen::MatrixX<double> GF3CALIBRATIONANDORTHLIB_EXPORT SatelliteSpacePoints(Eigen::MatrixX<double> &satellitetime, double SatelliteModelStartTime, Eigen::MatrixX<double>& polySatellitePara, int polynum = 4);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
#endif
|