|
|
|
|
|
마우스 커서 이동시 현재위치의 좌표를 알려고 합니다.
YEvent 에 있는 마우스관련 이벤트중 적절하게 보이는 MouseOver 를 사용해서 다음과 같이
테스트해보았는데요.
YEvent.Capture(ltsMap, EventsList.MouseOver, function(_e, _c) { YLog.print(_c.Lat + ", " + _c.Lon); if(console != null) console.log(_c); });
아무래도 잘려져있는 지도이미지위에 over 될때만 이벤트가 발생하는거 같아요.
즉, 쭉 이동하다보면 중간중간 이벤트가 들어오는거죠. 제가 필요한건 마우스 움직일때마다
바로바로 현재좌표를 알아야 되는데. MouseMove 이벤트 같은거는 어떻게 처리해야하나요?
마우스드래그를 통해 지도위에 사각형이나 원을 그리기 위해 위와같은 기능이 필요합니다.
추가로 중심좌표, 반경을 이용해 원을 그리는 API 는 없나요? 제공하는 API 가 없다면
다른방법은 없나요?
|
http://kr.blog.yahoo.com/gugi_openapi/trackback/12/69
-
거기오픈API 2008.09.12 10:28
-
말씀하신 부분은 Map과는 별도로 Window의 event를 잡아서 처리하셔야 할 것 같습니다.
답글쓰기
-
-
거기오픈API 2008.09.12 10:28
-
Window mouse이벤트를 활용하셔서 원을 그리시되, 구해진 pixel(지도 좌상단 모서리를 0,0으로 할때 x, y축으로 n pixel)로 lat, lon을 구하는 것은 지도의 MP오브젝트를 이용해서 하실 수 있습니다.
mapobject.MP.pxy_to_ll(xpixel, ypixel)
mapobject.MP.ll_to_pxy(lat,lon)
와 같이 사용하실 수 있습니다. 여기서의 xpixel은 그리니치 자오선으로부터의 해당 줌레벨에서의 pixel 거리이며, ypixel은 적도로부터의 pixel거리 입니다. 감사합니다.
답글쓰기
-
|
|
|
|
|