brunch

매거진 개발일지

You can make anything
by writing

C.S.Lewis

by yurikim Dec 13. 2022

기상청 오픈API 활용해서 날씨안내 웹서비스 만들기 3

눈 내리게 하는 css

인터렉티브도 하고 싶은데 능력이안된다.

겨우 눈오는 css 복붙해뒀다.

마침 눈이와서 겸사겸사 테스트해봄.


https://wwendy.tistory.com/1104

복붙해서 가져옴, 내가 만든 원형 오브제에 블러를 입혀서 인터렉티브를 적용하고 싶었는데 변수지정이 너무 어려워서 일단 css가져다가 붙여넣기 해둠 random() 뭐 이런걸로 할 수 없으려나 흠...

가져와서 오브젝트의 크기나 블러 값을 적용해두었는데... 컴퓨터가 힘들어하는 느낌이 살짝 있었다...?




date는 오늘날짜 basetime은 기준시간 그리고 강수량과 하늘상태의 fcsttime은 기준시간에서 가장 적은 수로 가져오도록if 구문을 써줬다. 이렇게 안하니까 예보의 가장 늦은 프레임의 데이터가 넘어오더라 왜그러는거니...?



if item['category'] == 'SKY' and int(item['fcstTime']) <= int(basetime)+59 :
    weather_data['sky_condition'] = item['fcstValue']
    weather_data['sky_fcstTime'] = item['fcstTime']

이런식으로 sky를 포함하는 카테고리에서 fcsttime이 basetime보다 59보다 작은 수를 불러오도록 설정했다. 예보는 45분 마다 앞으로 한시간 이후부터 업데이트 되기때문에 

현재시간에 45보다 작은 수가 들어가면 예보를 불러올 수 없다. 그리고 45분에 그 시각30분 기준의 30분뒤인 총 한시간 뒤의 예보가 최초 생성된다. 


예를들어 현재 시간이 4시 25분일 경우 4시대의 베이스타임이 설정되지 않았으므로 3시 30분 베이스타임을 확인하게 된다. 예보이기 때문에 기준시간이 늦는 것은 크게 상관이 없으나, 현재시간이 api제공시간 이후의 시간을 원하게 되면 데이터가 넘어오지 않기 때문에 45분이 넘지 않았다면 , 기준시간을 앞당겨주어야 한다. 


데이터 넘겨와서 큰산 넘었다 했는데 css도 만만치 않게 어렵군, 우선 구현하고 인터렉티브는 차차 생각해봐야겠다. 최소 마우스 따라다니는정도? 터치나 클릭시 액션 한가지 정도 넣고싶다. 그리고 데이터가 너무 없다... 너무 배경화면느낌...

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari