2012-01-19 2 views
2

자바 스크립트를 사용하여 한 국가의 중심 좌표를 얻고 싶습니다. 웹 응용 프로그램에서 사용할 수 있도록 이러한 종류의 데이터를 제공하는 xml 파일이 있습니까? 기본적으로 OpenLayers에서 국가 이름을 사용하여지도에 데이터를 저장하려고합니다.국가의 중심 좌표는 자바 스크립트입니다.

답변

3

Google Maps API을 사용하면 Geocoder 클래스를 사용할 수 있습니다.

var geocoder = new google.maps.Geocoder(); 
geocoder.geocode(
    { address : "Germany" }, 
    function(results) { 
     window.alert(results[0].geometry.bounds.getCenter()); 
    }); 
그냥 인덱스 0을 얻기보다 약간 더 results[] 배열을 검사 할 수 있습니다,하지만 당신이 올바른 방향으로 시작할 수 있어야

.

+0

답장을 보내 주셔서 감사합니다.하지만 라이센스 조항으로 인해 Google API를 사용하고 싶지 않습니다. Google지도에 데이터를 표시해야합니다. 그렇지 않으면 데이터를 사용할 수 없습니다. 어떤 대안이 있습니까? – Anz

2

적합한 GIS 데이터 세트를 다운로드하고 자신이 원하는 정보를 생성했을 수도 있습니다. 예를 들어 각 군의 무게 중심을 계산하고 국가 이름과 X/Y에서 테이블을 생성 할 수 있습니다 Quantum GIS 같은 프로그램으로

. 부하 전체 형상

OpenLayers와 (무게 중심을 계산 : Koordinates는 또한 위치에 따라 기능을 조회하고 선택적으로 뽑아 전체 형상을 허용하는 벡터 API를 가지고

주 예 : OpenLayers getCentroid Docs) 세계 경계 데이터 세트의 크기와 복잡성을 고려할 때 성능이 좋지는 않습니다.

함께

모으기 가장 좋은 옵션은 아마 이것이다 : 당신이 국가에서 무게 중심을 가지고하면, (기하학을 받고하지 않고) Koordinates 벡터 API를 사용하여 선택한 지점 인 국가 결정 응답에서 데이터 파일의 이름으로 중심을 찾아이 위치에지도의 중심에 위치시킵니다.