팀플) 행성의 가시성 검증중 문제발견.

BlackBird·2024년 10월 15일

Team Project

목록 보기
22/66

지금 난 행성에 위치를 계산하기 위해서 planets = load('de421.bsp')이렇게 행성 정보들을 로드했었다.

문제는 목성부터 결과가 나오지 않아서 보니까 de421.bsp에서 화성까지 밖에 행성 정보를 지원하지 않는다는 사실을 알았다. 타행성은 이제 중력 중심점을 지원하는데 이렇게 요청할 경우에 기존에 넣어둔 api 때문에 또 문제가 생겨서 그냥 행성들을 따로 다 다운 받아서 넣어줄 필요가 있었다.

귀찮네 진짜..

그래서 찾아봤고,

해당사이트에서 필요한 파일들을 찾을 수 있었다.

해결하는데 한세월 걸렸다.

planets = load('/de440.bsp')

우선 이제 행성 로드는 이걸로 해주고.

# 행성 이름과 코드 간의 매핑
def get_planet_code(planet_name):
    planet_name_map = {
        "Mercury": "Mercury",
        "Venus": "Venus",
        "Earth": "Earth",
        "Mars": "Mars barycenter",
        "Jupiter": "Jupiter barycenter",
        "Saturn": "Saturn barycenter",
        "Uranus": "Uranus barycenter",
        "Neptune": "Neptune barycenter",
        "Pluto": "Pluto barycenter"
    }
    return planet_name_map.get(planet_name)

행성도 이름으로 매핑할 수 있게 바꿔주었다.

화성부터 Mars barycenter 중력중심 기준으로 바뀌어서 이 정보를 찾는데 되게 오래 걸렸다.

아무튼 해결해서 이제

다시 결과 잘뜬다. 라이브러리 하나 바꾼다고 이렇게까지 고생할 줄 몰랐다..

profile
한영신의 벨로그입니다.

0개의 댓글