안녕하세요. 어떻게 꾸역꾸역 3편까지 오게 된 대머리 직장인입니다.
며칠 전에 제가 휴대폰 앱의 화면을 캡쳐해서 겹친 다음에 보여주는 걸 어떻게 구현하면 좋을지 여쭤봤는데요( https://okky.kr/article/580950 ) 많은 분들이 관심을 가져주지는 않아서... 으흐흐흐흐흑
그냥 제 생각대로 해 봅니다. 오래 걸리겠지요. 중간에 4편부터 시작할 수도 있습니다.
만들려고 하는 건 이런 겁니다.
네... 제 현재 위치로 킥보드 앱들(킥고잉, 고고씽, 씽씽)을 모조리 조회해서 한 화면에 겹쳐서 보여주는 겁니다. 안타깝게도 고고씽은 전체 점검 중이라 킥보드가 안나오는군요.
편하겄쥬?
맞습니다. 저는 앱 세 개를 하나씩 띄워서 현재 위치 클릭하는 게 너무나도 귀찮아서 이런 거를 만들어야겠다고 마음먹고야 마는 정도로 게으른 사람인 것입니다. 우리는 출근하느라 바쁜데 앱을 하나 하나 열어보고 버스를 탈지 킥보드를 탈지 어느 출구로 나갈지 고민하는 사이에 이미 지각을 하지 않습니까? 그렇게 지각을 여러번 하면 인사/총무를 맡고 있는 저는 다른 사람들에게 면이 안 사는데 이게 다 킥보드 앱이 너무 많아서입니다!
앱 세 개 하나씩 띄워서 현재 위치 클릭 -> 아이콘 클릭, 내위치 클릭, 기다림, 홈 버튼 클릭: 총 8번의 클릭과 세 번의 기다림.
취합된 지도 -> 지도 클릭, 내 위치 자동 전송, 기다림: 총 1번의 클릭.
8번을 1번으로 줄일 수 있으면 해야죠. 하는 겁니다.
3편의 첫 글이니까 여기서는 그냥 아이디어만 적습니다. 구현은 내일의 제가 하겠죠.
휴대폰 앱에 API를 제공해 줄 리도 없고 세 앱 모두 웹으로는 지도를 안 보여 줍니다. 결국 휴대폰 에뮬레이터를 씁니다.
내 휴대폰에서 위치전송 ->
휴대폰 에뮬레이터 세 개에 위치설정 (아마도 오토마우스 or 파이썬) ->
에뮬레이터에서 내 위치 클릭(녹스 마우스 녹화 기능 or 파이썬)->
화면 캡처->
저장된 파일을 크기, 투명도 가공해서 저장->
웹페이지에 업로드 or 슬랙메시지 전송
히야... 생각만 해도 간단하네요. 클릭 날마다 여덟 번씩 하는 것보다 이게 분명히 나을 것 같은 확신이 드네요. ㅠㅠ
에뮬레이터는 NOX 플레이어를 쓰겠습니다.
깔고 실행하자마자 블루스크린이 뜨네요. Hyper-V를 꺼야 한다고 합니다. 끕니다.
맵은 킥고잉과 씽씽은 구글 맵, 고고씽은 네이버 기반입니다.
위치를 맞춰주면 최소한 킥고잉과 씽씽은 같은 화면이 나올 겁니다. 그냥 겹쳐주기만 하면 되지요. ㅋㅋㅋ
....안됩니다.
축척이 왜 다른 거죠. 미묘하게 안 맞습니다.
파일을 파워포인트로 가져와서 크기를 비교해 봅니다. MS Office가 짱이죠.
파워포인트에는 2020년이 다 되어가는 지금 이 순간에도 이미지 투명도 조절 기능이 없습니다. 그냥 비교하면 맞출 수가 없으니 그림을 뒤집어 줍니다. 대충 맞은 거 같죠?
킥고잉은 높이 20.29cm, 너비 11.41cm, 씽씽은 19.05cm, 10.72cm입니다.
엑셀을 열어서 계산해봅니다. 1.06509186351706배만큼 확대되어 있습니다.
이게 무슨 숫자인지 모르겠군요... api zoom level은 저렇게 미세한 차이는 안 날텐데... 두 녹스플레이어의 안드로이드 버전이 다른데, 그것때문에 차이가 나는 걸까요.
어쨌든 실제로 캡처화면을 겹칠 때는 저만큼 확대해줘야 합니다.
그거가 문제가 아니고 확대한 놈을 기준점(내 위치)을 잡아서 맞춰줘야 합니다. 그림의 특정지점(아마도 "내위치"를 나타내는 파란 점)을 인식해야 합니다.
아.... 갑자기 이거 만들 수 있을까 싶은 불안감이 엄습합니다. (최악의 경우 그냥 그림을 안 겹치고 캡처화면 세개를 샥샥샥 보여주는 걸로 하기로 하고 그냥 계속해봅니다.)
고고씽도 한번 겹쳐 봅니다.
어? 이거 좀 이상합니다.
크기가 다른 건 당연히 그러려니 한데, 방향이 미세하게 안 맞습니다!!!
북쪽을 인식하는 게 약간씩 다른 건지, 도법이 다른 건지 모르겠습니다. 갑자기 초등학교 때 공부했던 메르카토르 도법을 다시 찾아봐야 하는 건가 하는 불안감이 엄습합니다만... 그냥 살짝 차이나는 거라 괜찮을 거라고 믿고 넘어갑니다.
저게 다 되면 그림을 표시해주고, 그림에 나온 각 회사별 아이콘을 누르면 그 회사 앱으로 연결되도록 만들까 했는데, 그냥 아래에 킥고잉, 씽씽, 고고씽 버튼 나열할 겁니다. 보고 가까이 있는 회사 누르는 걸로...
캡처랑 등등을 수행하는 거는 집에 퀀트인지 뭔지 하겠다고 설치해둔 윈도우 서버를 쓸 겁니다. 네. 파이썬 배우기 시작한 게 다 자동 트레이딩 해보겠다고 한 건데, 텃밭에 물이나 주고 있습니다.... 그래도 몸이 편해져야 돈도 벌고 하는 거겠지요.
다음 편은 파이썬으로 마우스 제어하기와 그림파일 조작하기, 아마도 flask웹서버를 공부한 뒤에 다시 돌아와서 적겠습니다. 아마도 오래 걸릴 거 같네요....