본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] float 으로 된 위경도값을 GeoPoint 에 사용하려면?

by 돼지왕 왕돼지 2012. 10. 19.
반응형




float 으로 된 위경도값 ( latitude & longitude ) 을 GeoPoint 에서 사용하려면?


MapView 를 사용하면서 사용하게 되는 GeoPoint 는 위도(Latitude)와 경도(Longitude) 값을 float 형태가 아닌 int 형태로 받습니다.

GeoPoint(int latitudeE6, int longitudeE6) 


생성자를 보면 latitudeE6, longitudeE6 으로 받는데, 암만해도 float 보다는 int 가 처리하기가 수월해서 int 형태로 받는 것 같습니다. 저 마지막에 붙은 E6 이라는 것이 무엇인지 궁금하실텐데요. E는 10의 의미로 쓰이고 그 뒤에 오는 숫자는 승으로 쓰입니다. 즉 E6 은 10^6. 10의 6승이란 의미지요.

따라서 float 로 된 위경도 ( Latitude & Longitude ) 값을 GeoPoint 에 사용하게 위해서는 아래와 같이 변환을 해주면 됩니다.

GeoPoint geoPoint = new GeoPoint( (int) (latitude * 1E6), (int) ( longitude * 1E6 ) );


여기서는 1E6 을 사용했는데 이는 1.0 x 10^6 이란 의미입니다.



도움이 되셨다면 손가락 꾸욱~ ( 로그인 필요 x )



반응형

댓글