diff options
| author | Yuval Adam <_@yuv.al> | 2020-09-24 23:34:59 +0300 |
|---|---|---|
| committer | Yuval Adam <_@yuv.al> | 2020-09-24 23:34:59 +0300 |
| commit | 3ad1589a4c01d00af761a53eafbd3010ce168fb3 (patch) | |
| tree | a8b999989879bab5886c1aec80453476c547b632 | |
| parent | fcb862b5f56094504746ca75820f19d978ea08dc (diff) | |
Finalize prediction data structure
| -rw-r--r-- | iss/predictions.py | 21 | ||||
| -rw-r--r-- | iss/tests/test_predictions.py | 6 |
2 files changed, 18 insertions, 9 deletions
diff --git a/iss/predictions.py b/iss/predictions.py index 37bf49e..f569f7d 100644 --- a/iss/predictions.py +++ b/iss/predictions.py @@ -47,16 +47,23 @@ class Predictions(object): t1 = ts.ut1_jd(t0.ut1 + self.days) return t0, t1 - def get_prediction_details(self, rise, culminate, zet): + def get_position_details(self, t): + difference = self.satellite - self.location + topocentric = difference.at(t) + alt, az, distance = topocentric.altaz() return { - "rise": {"iso": rise.utc_iso(), "ut1": rise.ut1}, - "culminate": {"iso": culminate.utc_iso(), "ut1": culminate.ut1}, - "set": {"iso": zet.utc_iso(), "ut1": zet.ut1}, + "time": t.utc_iso(), + "degrees": int(alt.degrees), + "azimuth": int(az.degrees), + "distance": int(distance.km), } - def get_position_details(self, satellite, t): - geocentric = satellite.at(t) - return {"distance": geocentric.position.km} + def get_prediction_details(self, rise, culminate, zet): + return { + "rise": self.get_position_details(rise), + "culminate": self.get_position_details(culminate), + "set": self.get_position_details(zet), + } def get_prediction_events(self): t0, t1 = self.get_next_days() diff --git a/iss/tests/test_predictions.py b/iss/tests/test_predictions.py index a88674d..9dd5f2b 100644 --- a/iss/tests/test_predictions.py +++ b/iss/tests/test_predictions.py @@ -61,5 +61,7 @@ def test_get_predictions(): ) preds = p.get_predictions() assert len(preds) == 16 - assert preds[0]["culminate"]["ut1"] == 2459117.39787489 - assert preds[0]["rise"]["iso"] == "2020-09-24T21:31:31Z" + assert preds[0]["rise"]["time"] == "2020-09-24T21:31:31Z" + assert preds[0]["rise"]["azimuth"] == 332 + assert preds[0]["culminate"]["degrees"] == 61 + assert preds[0]["set"]["distance"] == 779 |
