Made SGP4 getter methods public and added OrbitNumber()

feature/19
Daniel Warner 2011-04-22 12:33:24 +01:00
parent 878eb3f7d8
commit dcb4469507
2 changed files with 89 additions and 81 deletions

View File

@ -67,6 +67,7 @@ void SGP4::SetTle(const Tle& tle) {
mean_motion_ = tle.MeanMotion() * TWOPI / Globals::MIN_PER_DAY();
bstar_ = tle.BStar();
epoch_ = tle.Epoch();
orbit_number_ = tle.OrbitNumber();
/*
* error checks
@ -1287,4 +1288,6 @@ void SGP4::ResetGlobalVariables() {
recovered_mean_motion_ = perigee_ = period_ = 0.0;
epoch_ = Julian();
orbit_number_ = 0;
}

167
SGP4.h
View File

@ -13,6 +13,91 @@ public:
void FindPosition(Eci& eci, double tsince) const;
void FindPosition(Eci& eci, const Julian& date) const;
/*
* XMO
*/
double MeanAnomoly() const {
return mean_anomoly_;
}
/*
* XNODEO
*/
double AscendingNode() const {
return ascending_node_;
}
/*
* OMEGAO
*/
double ArgumentPerigee() const {
return argument_perigee_;
}
/*
* EO
*/
double Eccentricity() const {
return eccentricity_;
}
/*
* XINCL
*/
double Inclination() const {
return inclination_;
}
/*
* XNO
*/
double MeanMotion() const {
return mean_motion_;
}
/*
* BSTAR
*/
double BStar() const {
return bstar_;
}
/*
* AODP
*/
double RecoveredSemiMajorAxis() const {
return recovered_semi_major_axis_;
}
/*
* XNODP
*/
double RecoveredMeanMotion() const {
return recovered_mean_motion_;
}
/*
* PERIGE
*/
double Perigee() const {
return perigee_;
}
double Period() const {
return period_;
}
/*
* EPOCH
*/
Julian Epoch() const {
return epoch_;
}
unsigned int OrbitNumber() const {
return orbit_number_;
}
private:
void Initialize(const double& theta2, const double& betao2, const double& betao, const double& eosq);
void DeepSpaceInitialize(const double& eosq, const double& sinio, const double& cosio, const double& betao,
@ -166,87 +251,6 @@ private:
mutable double d_xnddt_t_;
mutable double d_xldot_t_;
/*
* XMO
*/
double MeanAnomoly() const {
return mean_anomoly_;
}
/*
* XNODEO
*/
double AscendingNode() const {
return ascending_node_;
}
/*
* OMEGAO
*/
double ArgumentPerigee() const {
return argument_perigee_;
}
/*
* EO
*/
double Eccentricity() const {
return eccentricity_;
}
/*
* XINCL
*/
double Inclination() const {
return inclination_;
}
/*
* XNO
*/
double MeanMotion() const {
return mean_motion_;
}
/*
* BSTAR
*/
double BStar() const {
return bstar_;
}
/*
* AODP
*/
double RecoveredSemiMajorAxis() const {
return recovered_semi_major_axis_;
}
/*
* XNODP
*/
double RecoveredMeanMotion() const {
return recovered_mean_motion_;
}
/*
* PERIGE
*/
double Perigee() const {
return perigee_;
}
double Period() const {
return period_;
}
/*
* EPOCH
*/
Julian Epoch() const {
return epoch_;
}
/*
* these variables are set at the very start
* and should not be changed after that
@ -263,6 +267,7 @@ private:
double perigee_;
double period_;
Julian epoch_;
unsigned int orbit_number_;
};
#endif