2010-04-08 29 views
5

Xin lỗi đây không phải là một câu hỏi rất được xác định rõ, tôi đang nghĩ về một ý tưởng cho một sản phẩm, vì vậy cần phải biết những gì có thể ...Ở Anh, làm cách nào để tìm địa chỉ được gán tọa độ GPS?

Nói rằng tôi đang đứng ở cửa suối của một ngôi nhà, do GSP tọa độ từ điện thoại thông minh, làm cách nào để tìm địa chỉ tôi đang đứng?

GPS có đủ tốt cho điều này không?

Tôi cần bao nhiêu dữ liệu/dịch vụ để sử dụng?

Tôi nên hỏi những câu hỏi nào khác về điều này?

+0

xem thêm http://www.tomanthony.co.uk/blog/geocoding-uk-postcodes-with-google-map-api/ –

+0

thể trùng lặp của http://stackoverflow.com/questions/2621844/fetch-latitude-longitude-by-passing-postcodes-to-maps-google-com-sử dụng-javascript –

Trả lời

5

GPS bị giới hạn khi trả lại tọa độ kinh độ và vĩ độ của vị trí của bạn.

Để giải quyết các tọa độ này thành một địa chỉ, bạn cần phải sử dụng nguồn dữ liệu ngoài. Hành động chuyển đổi toạ độ địa lý thành địa chỉ thường được gọi là reverse geocoding.

Có một số dịch vụ mã hóa địa lý đảo ngược miễn phí chẳng hạn như that offered within the Google Maps API. Tuy nhiên, hãy đảm bảo bạn đọc và hiểu số Terms of Use trước khi sử dụng một dịch vụ như vậy.


Ví dụ, bạn có thể làm mã hóa địa lý ngược với API của Google Maps bằng cách sử dụng yêu cầu HTTP sau:

Simple CSV:

http://maps.google.com/maps/geo?q=40.756041,-73.986939&output=csv&sensor=false

Returns:

200,8,"601-699 7th Ave, New York, NY 10036, USA" 
.210

More XML Complex:

http://maps.google.com/maps/geo?q=40.756041,-73.986939&output=xml&sensor=false

Returns:

<kml xmlns="http://earth.google.com/kml/2.0"><Response> 
    <name>40.756041,-73.986939</name> 
    <Status> 
    <code>200</code> 
    <request>geocode</request> 
    </Status> 
    <Placemark id="p1"> 
    <address>601-699 7th Ave, New York, NY 10036, USA</address> 
    <AddressDetails Accuracy="8" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><Country><CountryNameCode>US</CountryNameCode><CountryName>USA</CountryName><AdministrativeArea><AdministrativeAreaName>NY</AdministrativeAreaName><SubAdministrativeArea><SubAdministrativeAreaName>New York</SubAdministrativeAreaName><Locality><LocalityName>New York</LocalityName><DependentLocality><DependentLocalityName>Manhattan</DependentLocalityName><Thoroughfare><ThoroughfareName>601-699 7th Ave</ThoroughfareName></Thoroughfare><PostalCode><PostalCodeNumber>10036</PostalCodeNumber></PostalCode></DependentLocality></Locality></SubAdministrativeArea></AdministrativeArea></Country></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7595131" south="40.7532178" east="-73.9835667" west="-73.9898620" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9869192,40.7560331,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p2"> 
    <address>Times Sq - 42nd St Station, New York, NY 10116, USA</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><AddressLine>Times Sq - 42nd St Station</AddressLine></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7591946" south="40.7528994" east="-73.9838014" west="-73.9900966" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9869490,40.7560470,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p3"> 
    <address>Times Square - 42nd Street</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><AddressLine>Times Square - 42nd Street</AddressLine></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7591476" south="40.7528524" east="-73.9838524" west="-73.9901476" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9870000,40.7560000,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p4"> 
    <address>W 42 St - 7 Av, New York, NY 10116, USA</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><AddressLine>W 42 St - 7 Av</AddressLine></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7591446" south="40.7528494" east="-73.9839964" west="-73.9902916" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9871440,40.7559970,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p5"> 
    <address>New Amsterdam Theatre, New York, NY 10036, USA</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><Country><CountryNameCode>US</CountryNameCode><CountryName>USA</CountryName><AdministrativeArea><AdministrativeAreaName>NY</AdministrativeAreaName><Locality><LocalityName>New York</LocalityName><PostalCode><PostalCodeNumber>10036</PostalCodeNumber></PostalCode><AddressLine>New Amsterdam Theatre</AddressLine></Locality></AdministrativeArea></Country></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7593416" south="40.7530464" east="-73.9842484" west="-73.9905436" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9873960,40.7561940,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p6"> 
    <address>W 42 St - 7 Av, New York, NY 10116, USA</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><AddressLine>W 42 St - 7 Av</AddressLine></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7594606" south="40.7531654" east="-73.9842484" west="-73.9905436" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9873960,40.7563130,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p7"> 
    <address>Times Sq - 42nd St Station, New York, NY 10116, USA</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><AddressLine>Times Sq - 42nd St Station</AddressLine></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7589406" south="40.7526454" east="-73.9832194" west="-73.9895146" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9863670,40.7557930,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p8"> 
    <address>W 42 St - Broadway, New York, NY 10116, USA</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><AddressLine>W 42 St - Broadway</AddressLine></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7588236" south="40.7525284" east="-73.9831654" west="-73.9894606" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9863130,40.7556760,0</coordinates></Point> 
    </Placemark> 
    <Placemark id="p9"> 
    <address>7 Av - W 41 St, New York, NY 10116, USA</address> 
    <AddressDetails Accuracy="9" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><AddressLine>7 Av - W 41 St</AddressLine></AddressDetails> 
    <ExtendedData> 
     <LatLonBox north="40.7586296" south="40.7523344" east="-73.9843024" west="-73.9905976" /> 
    </ExtendedData> 
    <Point><coordinates>-73.9874500,40.7554820,0</coordinates></Point> 
    </Placemark> 
</Response></kml> 

Đơn giản chỉ cần thay đổi các tham số q với latitude,longitude của bạn.


Lưu ý rằng phiên bản API Google Maps miễn phí có giới hạn 15.000 yêu cầu cho mỗi địa chỉ IP mỗi ngày.(Google Maps API FAQ)

Nếu bạn dự định sử dụng nhiều dịch vụ mã hóa địa lý đảo ngược của Google, bạn có thể cân nhắc sử dụng Premier edition of the Google Maps API.

API Premier tự động đi kèm với "advanced geocoding capabilities with greater volume and speed", do đó, các giới hạn của API chuẩn nên được thay thế bằng hạn ngạch mới.

Là một lưu ý bổ sung, theo một unofficial source (ngày tháng 4 năm 2008), chi phí cho API Premier bắt đầu ở mức 10.000 USD mỗi năm.

2

Bạn có thể sử dụng các dịch vụ miễn phí khác nhau, chẳng hạn như các dịch vụ do Google cung cấp cho mã địa lý đảo ngược (thuật ngữ kỹ thuật) địa chỉ từ một số tọa độ GPS. Tôi đề nghị có một vở kịch với API của họ, tài liệu hướng dẫn đầy đủ có sẵn ở đây:

http://code.google.com/apis/maps/documentation/services.html

1

Btw, Khảo sát Pháp lệnh vừa phát hành dữ liệu của họ theo giấy phép thực sự lỏng lẻo và tôi nghĩ rằng họ cũng có dịch vụ web. Bạn có thể muốn cho rằng một cái nhìn.

Các vấn đề liên quan