

Public Member Functions | |
| Point3d | computePosition (double jd) const |
| double | getBoundingRadius () const |
| double | getPeriod () const |
| JPLEphOrbit (const JPLEphemeris &e, JPLEphemItem item, double _period, double _boundingRadius) | |
Private Attributes | |
| JPLEphemItem | body |
| double | boundingRadius |
| const JPLEphemeris & | ephem |
| double | period |
|
||||||||||||||||||||
|
Definition at line 2700 of file customorbit.cpp. 02701 : 02702 ephem(e), 02703 body(item), 02704 period(_period), 02705 boundingRadius(_boundingRadius) 02706 { 02707 };
|
|
|
Implements CachingOrbit. Definition at line 2719 of file customorbit.cpp. References degToRad(), JPLEph_Sun, Point3< T >::x, Matrix3< T >::xrotation(), Point3< T >::y, and Point3< T >::z. 02720 {
02721 Point3d baryPos = ephem.getPlanetPosition(body, jd);
02722
02723 // Convert from solar system barycentric position to heliocentric
02724 // position.
02725 Point3d sunPos = ephem.getPlanetPosition(JPLEph_Sun, jd);
02726 Point3d heliocentricPos = Point3d(0.0, 0.0, 0.0) + (baryPos - sunPos);
02727
02728 // Rotate from the J2000 mean equator to the ecliptic
02729 // 23 deg 26' 21".448
02730 double J2000_equator = degToRad(23.4392911);
02731 heliocentricPos = heliocentricPos * Mat3d::xrotation(J2000_equator);
02732
02733 return Point3d(heliocentricPos.x,
02734 heliocentricPos.z,
02735 -heliocentricPos.y);
02736 }
|
|
|
Implements CachingOrbit. Definition at line 2714 of file customorbit.cpp. 02715 {
02716 return boundingRadius;
02717 }
|
|
|
Implements CachingOrbit. Definition at line 2709 of file customorbit.cpp. 02710 {
02711 return period;
02712 }
|
|
|
Definition at line 2740 of file customorbit.cpp. |
|
|
Definition at line 2742 of file customorbit.cpp. |
|
|
Definition at line 2739 of file customorbit.cpp. |
|
|
Definition at line 2741 of file customorbit.cpp. |
1.4.1