문제

Sqlite 데이터베이스에 GPS 데이터를 저장하려고 합니다.DDMS를 통해 KML 파일에서 데이터를 검색하고 다음과 같은 방식으로 GeoPoint에 저장합니다.

GeoPoint p = new GeoPoint(latitude,longitude)

문제는 GeoPoint() lon 및 lat는 double 형식으로 정의되지 않았으므로 int로만 허용됩니다.이제 경도가 45.3242355라면 이는 Sqlite에 int-453242355로 저장됩니다.그리고 이것을 사용하여 지도에 지오포인트 사이에 선을 그리고 싶지만 이 정수 형식은 위도와 경도 범위를 벗어나므로 그렇게 할 수 있습니다.실제 형식 데이터를 다시 가져오려면 어떻게 해야 하는지 알려줄 수 있나요?

도움이 되었습니까?

해결책

여기에 10^-6(1e-6)을 곱합니다(그리고 double을 정수 형식으로 변환하려면 10^6(1e6)을 곱합니다).GeoPoint에서 사용하는 정수 형식은 데이터가 손실되지 않으며 다음에서 지정한 대로 각도 대신 마이크로도 단위입니다. 문서.

(이는 산술을 단순화하고 비용이 많이 드는 부동 연산 및 FP 오류를 방지하기 위해 통화 필드에서 $2.36 값을 "236"으로 저장하는 방식과 유사합니다.)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top