주소를 위도 / 경도로 변환하는 방법은 무엇입니까?
주소 나 도시를 위도 / 경도로 변환하려면 어떻게해야합니까? 이 서비스를 "대여"할 수있는 상업용 의상이 있습니까? 이것은 풀 타임 인터넷 액세스가 가능한 Windows PC의 상업용 데스크톱 응용 프로그램에서 사용됩니다.
Google에는 Google지도 데이터가있는 대부분의 위치에서 잘 작동하는 지오 코딩 API가 있습니다.
http://googlemapsapi.blogspot.com/2006/06/geocoding-at-last.html
온라인 지오 코딩 (JavaScript를 통해)을 제공합니다.
http://code.google.com/apis/maps/documentation/services.html#Geocoding
또는 백엔드 지오 코딩 (HTTP 요청을 통해) :
http://code.google.com/apis/maps/documentation/services.html#Geocoding_Direct
데이터는 일반적으로 Google지도 자체에서 사용하는 것과 동일합니다. (이에 대한 일부 예외가 있습니다 (예 : 데이터가 다른 소스에서 제공되고 품질이 약간 저하 된 영국 또는 이스라엘))
추가 할 새로운 사항은 없지만 이전 작업에서 GIS 및 지오 코딩에 대한 실제 경험이 많습니다. 내가 기억하는 것은 다음과 같습니다.
응용 프로그램에 "가끔씩"필요한 경우 Google 또는 Yahoo Geocoding API를 확실히 권장하지만 라이선스 약관을주의 깊게 읽어보십시오.
일반적으로 Google Maps API는 상업용 웹 페이지에도 쉽게 라이선스를 부여 할 수 있지만 Pay-to-Access 상황에서는 사용할 수 없습니다. 즉, 광고 수익을 창출하는 서비스를 광고하거나 제공하는 데 사용할 수 있지만 사이트에 액세스하도록 비용을 부과하거나 암호 시스템 뒤에 둘 수는 없습니다.
이러한 제한에도 불구하고 거리 데이터베이스를 자주 업데이트하기 때문에 둘 다 훌륭한 선택입니다. 대부분의 무료 백엔드 도구 및 라이브러리는 자주 업데이트되지 않는 Census 및 TIGER 도로 데이터를 사용하므로 빠르게 성장하는 지역이나 새로운 하위 구역의 주소를 성공적으로 지오 코딩 할 가능성이 적습니다.
대부분의 서비스는 또한 하루에 만들 수있는 지오 코딩 쿼리의 수를 제한하므로 데이터베이스에 추가되는 신규 고객의 주소를 찾아도 괜찮습니다. 그러나 수천 개의 주소를 제공하는 일괄 작업을 실행하는 경우 데이터베이스를 지오 코더에 추가하면 차단됩니다.
나는 이것이 아직 언급되지 않았다고 생각하지만 ESRI 에는 지오 코딩을 포함하는 ArcWeb 웹 서비스 가 있지만 매우 저렴하지는 않습니다. 지난번에 사용했을 때 조회 당 약 1.5 센트의 비용이 들었지만 시작하려면 일정 금액을 선불로 지불해야했습니다. 다시 한 번 가장 큰 장점은 그들이 사용하는 도로 데이터가 적시에 최신 상태로 유지되고 Google이 허용하지 않는 상업적 상황에서 데이터를 사용할 수 있다는 것입니다. ArcWeb 서비스는 또한 Google지도에서 고해상도 위성 및 항공 사진을 제공 하며 요청 당 가격이 다시 책정됩니다.
직접 롤링하거나 훨씬 더 정확한 데이터에 액세스하려면 TeleAtlas 와 같은 회사에서 GIS 데이터 구독을 구매할 수 있지만 저렴하지는 않습니다. 귀하의 필요가 극도로 지역적이라면 주 또는 카운티 가치의 데이터 만 구입할 수 있습니다. 여러 계층의 데이터가 있습니다. GIS 기능 만, GIS 및 상세 거리, 모든 데이터와 지오 코드 데이터, 모든 데이터와 경로에 대한 트래픽 흐름 / 방향 / 속도 제한이 있습니다. 물론 계층이 올라 갈수록 가격이 올라갑니다.
마지막으로 지오 코딩 에 대한 Wikipedia 기사 에는 알고리즘과 기술에 대한 좋은 정보가 있습니다. 자체 코드에서 수행하지 않더라도 다양한 종류의 데이터 소스에서 어떤 종류의 오류와 정확성을 기대할 수 있는지 아는 것이 유용합니다.
야후! Maps Web Services-Geocoding API 는 Google의 API와 달리 영국 우편 번호를 정확하게 지오 코딩 합니다.
불행히도 yahoo는이 서비스를 더 이상 사용하지 않습니다. http://developer.yahoo.com/geo/placefinder/ 를 방문 하여 yahoo의 서비스를 확인할 수 있습니다.
자세한 정보 : http://code.google.com/apis/maps/documentation/geocoding/
주소 나 객체를 위도 / 경도로 변환하는 것을 지오 코딩이라고합니다.
주변에 많은 지오 코딩 솔루션이 있습니다. 프로젝트에 적합한 솔루션은 각 지오 코딩 솔루션의 라이선스 조건에 대한 수락 여부에 따라 달라집니다. Microsoft Virtual Earth와 Google Maps는 모두 매우 제한적인 라이선스에 따라 무료로 사용할 수있는 솔루션을 제공합니다.
http://code.google.com/apis/maps/documentation/services.html
http://www.microsoft.com/virtualearth/product/faq.aspx
이전에 이것에 대한 내 자신의 솔루션을 롤링 했으므로 Geo :: Coder :: US Perl 모듈을 진심으로 추천 할 수 있습니다 . 모든 인구 조사 데이터를 다운로드하고 포함 된 수입 업체를 사용하여 해당 국가의 Berkeley DB를 생성하고 Perl 스크립트를 가리 키십시오. 모듈에 내장 된 주소 구문 분석을 사용하면 바로 오프라인 지오 코딩 시스템입니다!
이 코드로 시도해보십시오. 나는 주소로 다음과 같이 작동합니다.
GET 메서드로 요청을 보내고 lat 및 lng를 얻는 링크입니다. http://maps.google.com/maps/api/geocode/json?address=YOUR ADDRES & sensor = false
1. GET 메서드를 만듭니다.
public static String GET(String url) throws Exception {//GET Method
String result = null;
InputStream inputStream = null;
try {
HttpClient httpclient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
Log.v("ExecuteGET: ", httpGet.getRequestLine().toString());
HttpResponse httpResponse = httpclient.execute(httpGet);
inputStream = httpResponse.getEntity().getContent();
if (inputStream != null) {
result = convertInputStreamToString(inputStream);
Log.v("Result: ", "result\n" + result);
}
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
2. 요청 보내기 방법 생성
@SuppressWarnings("deprecation")
public static String getLatLng(String accessToken) throws Exception{
String query=StaticString.gLobalGoogleUrl+"json?address="+URLEncoder.encode(accessToken)+"&sensor=false";
Log.v("GETGoogleGeocoder", query+"");
return GET(query);
}
gLobalGoogleUrl = "http://maps.google.com/maps/api/geocode/"
3. getLatLng 메소드 호출
String result=getLatLng("W Main St, Bergenfield, NJ 07621");
4. JSONObject 구문 분석
이제 결과 는 주소 및 lan, lng에 대한 정보 가 포함 된 JSONObject 입니다. gson ()으로 JSONObject (결과)를 구문 분석합니다 . 그 후 lat, lng를 사용하십시오.
코드에 대한 질문이 있으면 물어보십시오.
지오 코딩 애플리케이션이 필요합니다. 온라인 또는 애플리케이션 백엔드로 사용할 수 있습니다.
Online applications:
- Google has a geocoding API
Backend applications:
Maptsraction (http://www.mapstraction.com) lets you choose between any number of geocoding services. This could be helpful if you need to do large quantities, as I know Google has a limit to how many you can do a day.
Virtual Earth does it. There is also a web service at geocoder.us
You could also try the OpenStreetMap NameFinder (or the current Nominatim), which contains open source, wiki-like street data for (potentially) the entire world.
you can use bing maps soap services, where you can reference reverse geocode service to find lat/long from address here is the link http://msdn.microsoft.com/en-us/library/cc980922.aspx
Yahoo! Maps Web Services - Geocoding API
You can use Microsoft's MapPoint Web Services.
I created a blog entry on how to convert an address to a GeoCode (lat/long).
Thought I would add one more to the list. Texas A&M has a pretty decently priced service here: http://geoservices.tamu.edu/Services/Geocode/
A good option if you have a pretty large set of addresses to geocode and don't want to pat 10k to Google or Microsoft. We still ended up using the returned data in a Google Map.
you are asking about Geocoder. Google provide an API for this. so does another provider for this.
you can see the demo of implementation in My Current Location .net
The USC WebGIS Geocoder is free and offers several API's, or you can upload a database for online batch processing.
If you need a one off solution, you can try: https://addresstolatlong.com/
I've used it for a long time and it has worked pretty well for me.
참고URL : https://stackoverflow.com/questions/98449/how-to-convert-an-address-to-a-latitude-longitude
'programing tip' 카테고리의 다른 글
배포 인증서 / 개인 키가 설치되지 않았습니다. (0) | 2020.11.06 |
---|---|
Android에서 EditText를 입력 한 후 키보드를 숨기는 방법은 무엇입니까? (0) | 2020.11.06 |
Python object .__ repr __ (self)는 표현식이어야합니까? (0) | 2020.11.05 |
xcode에서 탭을 활성화 하시겠습니까? (0) | 2020.11.05 |
'행렬에 값 X가 포함되어 있습니까?'에 대한 함수 (0) | 2020.11.05 |