from planet_overhead_est import check_planet_visibility, closest_time_index, earth_rotation_angle_from_unix, \
    SECONDS_PER_DAY
from datetime import datetime, timezone
import numpy as np

PLANETS = [
    "mercury",
    "venus",
    "mars",
    "jupiter barycenter",
    "saturn barycenter",
    "uranus barycenter",
    "neptune barycenter",
    "pluto barycenter",
    "moon"
]

now_utc = datetime.now(timezone.utc).timestamp()
lat = 0
lon = 0

planet_name = PLANETS[0]
planet_table = np.load(f"data/{planet_name}_sv_table.npy")
time_table = np.load(f"data/time_table.npy")
sun_data = np.load(f"data/sun_sv_table.npy")
idx = closest_time_index(time_table, now_utc)
print(idx)
print(now_utc - time_table[idx])
print(earth_rotation_angle_from_unix(now_utc))
print((now_utc - time_table[idx]) / SECONDS_PER_DAY)

for name in PLANETS:
    result = check_planet_visibility(name, now_utc, lat, lon)
    print(result)