나는 주어진 시간대의 일출과 일몰 정보를 반환하는 세계 시계 응용 프로그램을 작성하려고합니다. 사용자는 GMT 오프셋을 지정하거나 명시 적으로 시간대를 지정합니다. 그런 다음 응용 프로그램은 java.util.TimeZone found (또는 GMT 오프셋이 주어진 경우)를 사용하여 위도와 경도를 조회합니다. 시간대는 정치적 경계를 기반으로하기 때문에 일반적으로 지구 위치 정보를 얻는 데 매우 정확한 방법이 아니라는 점을 알고 있습니다. 그러나 이러한 것이 존재하는 것처럼 보입니다. 대부분의 사이트/API는 위도와 경도에 대한 시간대를 제공하지만 역 검색 (주어진 시간대에 대한 위도 및 경도 반환)을 수행하려고합니다. 귀하의 도움에 미리 감사드립니다.Java의 시간대에서 위도와 경도 가져 오기
답변
시간대는 지역이므로이 지역의 경계 좌표를 반환해야합니다 (그리고 주어진 점이 내부에 있는지 확인하기 위해 일부 방법을 추가해야 할 것입니다). 따라서 지리 데이터로 시작해야합니다. 많은 국가에서는 서머 타임이 있으므로 시간대가 일정하지 않습니다.
Geonames.org에는 시간대 및 인구를 포함한 모든 종류의 정보가 포함 된 다운로드 가능한 마을 데이터베이스가 있습니다. 시간대에서 해당 시간대의 가장 큰 도시 위치에 매핑하는 데이터베이스를 채우는 데 사용할 수 있습니다.
GMT 오프셋은이 용도로는 쓸모가 없지만 다행히도 대륙/도시 용어를 사용하면 사용자가 올바른 표준 시간대를 쉽게 선택할 수 있습니다.
나는이 아이디어를 원칙적으로 좋아하지만, 안드로이드 앱의 경우 데이터베이스의 크기가 엄청나게 클 것이라고 생각한다. – Hobo
@ 호보 : 시간대 만 사용하는 경우 약 400 개의 매핑이 있습니다. 더 정확한 결과를 얻으려면 인구 크기별로 정렬하고 예를 들어 다음을 포함 할 수 있습니다. 2000 대도시. –
멀리 떨어진 섬을 제외한 한 시간대에있는 뉴질랜드의 고향 인 뉴질랜드에이 작업을 수행 할 경우 기대할 수있는 오류의 수준을 보여 드리지만 넓은 범위의 위도에 적용됩니다.
Invercargill, New Zealand
Time zone: NZST
Sunrise today: 7:05 am
Auckland, New Zealand
Time zone: NZST
Sunrise today: 6:34 am
중국 (칠레, 아르헨티나 등)과 유사한 문제가 발생할 것으로 예상됩니다 (전체 국가는 하나의 시간대 임).
멋진 생각이지만, 실제로 작동하지 않을 수 있습니다.
모두의 답변을 읽은 후 주어진 물리적 주소에 대한 위도/경도 및 시간대를 반환하는 Google's Geocoding API을 사용한다고 생각합니다. 나는 API에서 정보를 검색하고 일출/일몰 시간을 계산하기 위해 사용자가 주소, 도시 또는 우편 번호를 입력 할 수있게하는 인터페이스를 추가해야합니다. 이것은 모든 정보를 데이터베이스에 로컬로 저장하는 것보다 낫습니다 (거대한 것입니다). 대답 한 모든 사람들에게 감사드립니다.
- 1. Google지도에서 위도와 경도 가져 오기
- 2. 위도와 경도,
- 3. 미국 이외의 지역에 대한 위도와 경도 가져 오기
- 4. 위도와 경도 할당 오류
- 5. 웹 서비스의 위도와 경도
- 6. BlackBerry Simulator에서 위도와 경도 시뮬레이션
- 7. BlackBerry 앱의 현재 위도와 경도
- 8. 마지막 위치 얻기 위도와 경도
- 9. Maxmind - 우편 번호로부터의 위도와 경도
- 10. Mapkit 현재 위치의 위도와 경도
- 11. C#의 위도와 경도 경계 상자?
- 12. Android ID에서 위도와 경도 값을 가져 오는 방법은 무엇입니까?
- 13. SQL abs 계산 - 위도와 경도 사용 - 수학!
- 14. 위도와 경도 좌표 간의 최소 거리
- 15. iPhone에서 셀 타워 삼각법을 사용하는 위도와 경도?
- 16. J2ME - 2 위도와 경도 사이의 거리를 계산하십시오.
- 17. 위도와 경도 값을 전달할 수있는 방법
- 18. SQL에서 위도와 경도 찾기 및 주문
- 19. 위도/경도 가져 오기 /지도 표시없이 지오 코딩 역방향
- 20. 배열의 포인트에 누벨 값의 위도와 경도 값을 추가하는 방법은 무엇입니까?
- 21. Clojure에는 Java의 가져 오기 패키지 *가 있습니까?
- 22. 버튼을 수행 할 때 사용자 위치의 위도와 경도 좌표를 얻으려면
- 23. 주어진 위도와 경도 근처의 장소 목록을 얻는 방법
- 24. 위도와 경도 및 거리가 주어진다면 경계 상자를 찾고 싶습니다.
- 25. 위도와 경도 값을 사용하여 위치 이름을 얻는 방법
- 26. 사용자 위치를 찾을 수 없음 : - 위도와 경도 in 안드로이드
- 27. 위도와 경도 값을 추가 할 때 문제가 발생했습니다.
- 28. 지도 컨테이너의 위도와 경도 가장자리를 감지하는 방법은 무엇입니까?
- 29. Google지도에 위도와 경도 대신 주소를 제공 할 수 있습니까?
- 30. 브라우저에서 위도와 경도 값을 시뮬레이트하는 방법 (Geolocation 테스트 용)?
시간대를 사용하면 수십 킬로미터 길이의 선이 생깁니다. 다행히도 바다를 자르면 수천 킬로미터로 줄어 듭니다. 당신은 여전히 위도가 어느 정도인지에 대해서만 약간의 아이디어를 가지고 +/- 5 degrees-ish의 경도를 남겨 둡니다 (21도 기울기가 그다지 중요하지 않고 시간대에 거의 반영되지 않습니다). – bdares
위도에 대해서는 근사치를 사용할 수 있지만 위도에 대해서는 명확히 알 수 없습니다. –
@bdares : * 실제 * 시간대는 일광 절약 시간 및 변경 사항을 반영하기 위해 최소한 국가별로 세분화되어 있습니다. –