Orbit.hpp   Orbit.hpp 
skipping to change at line 26 skipping to change at line 26
class OrbitSampleProc; class OrbitSampleProc;
//! @internal //! @internal
//! Orbit computations used for comet and asteroids //! Orbit computations used for comet and asteroids
class Orbit class Orbit
{ {
public: public:
Orbit(void) {} Orbit(void) {}
virtual ~Orbit(void) {} virtual ~Orbit(void) {}
// virtual Vec3d positionAtTime(double) const = 0;
// virtual double getPeriod() const = 0;
// virtual double getBoundingRadius() const = 0;
// virtual void sample(double, double, int, OrbitSampleProc&) const = 0;
private: private:
Orbit(const Orbit&); Orbit(const Orbit&);
const Orbit &operator=(const Orbit&); const Orbit &operator=(const Orbit&);
}; };
class EllipticalOrbit : public Orbit class EllipticalOrbit : public Orbit
{ {
public: public:
EllipticalOrbit(double pericenterDistance, EllipticalOrbit(double pericenterDistance,
double eccentricity, double eccentricity,
skipping to change at line 51 skipping to change at line 47
double ascendingNode, double ascendingNode,
double argOfPeriapsis, double argOfPeriapsis,
double meanAnomalyAtEpoch, double meanAnomalyAtEpoch,
double period, double period,
double epoch, // = 2451545.0, double epoch, // = 2451545.0,
double parentRotObliquity, // = 0.0, double parentRotObliquity, // = 0.0,
double parentRotAscendingnode, // = 0.0 double parentRotAscendingnode, // = 0.0
double parentRotJ2000Longitude // = 0.0 double parentRotJ2000Longitude // = 0.0
); );
// Compute the orbit for a specified Julian date and return a "stellari // Compute position for a specified Julian date and return coordinat
um compliant" function es
// void positionAtTime(double JD, double * X, double * Y, double * Z) co // given in "dynamical equinox and ecliptic J2000"
nst; // which is the reference frame for VSOP87
// void positionAtTimev(double JD, double* v); // In order to rotate to VSOP87
// parentRotObliquity and parentRotAscendingnode must be supplied.
// Compute position for a specified Julian date and return coordinate
s
// given in "dynamical equinox and ecliptic J2000"
// which is the reference frame for VSOP87
// In order to rotate to VSOP87
// parentRotObliquity and parentRotAscendingnode must be supplied.
void positionAtTimevInVSOP87Coordinates(double JD, double* v) const; void positionAtTimevInVSOP87Coordinates(double JD, double* v) const;
// Original one // Original one
Vec3d positionAtTime(double) const; Vec3d positionAtTime(double) const;
double getPeriod() const; double getPeriod() const;
double getBoundingRadius() const; double getBoundingRadius() const;
virtual void sample(double, double, int, OrbitSampleProc&) const; virtual void sample(double, double, int, OrbitSampleProc&) const;
private: private:
double eccentricAnomaly(double) const; double eccentricAnomaly(double) const;
Vec3d positionAtE(double) const; Vec3d positionAtE(double) const;
double pericenterDistance; double pericenterDistance;
 End of changes. 3 change blocks. 
17 lines changed or deleted 7 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/