[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/extragear/graphics/gsoc-geocoding
From: Gabriel Voicu <ping.gabi () gmail ! com>
Date: 2010-04-30 21:59:26
Message-ID: 20100430215926.27AB2AC8AA () svn ! kde ! org
[Download RAW message or body]
SVN commit 1121238 by gvoicu:
finished the reverse_geocoding_google_maps_v3.html
M +29 -21 reverse_geocoding_google_maps_v3.html
--- branches/extragear/graphics/gsoc-geocoding/reverse_geocoding_google_maps_v3.html \
#1121237:1121238 @@ -5,13 +5,14 @@
<title>Google Maps JavaScript API v3 Example: Reverse Geocoding</title>
<script type="text/javascript" \
src="http://maps.google.com/maps/api/js?sensor=false"></script> <script \
type="text/javascript"> +
var geocoder;
var map;
var infowindow = new google.maps.InfoWindow();
var marker;
- var format_address;
function initialize() {
+
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(51.18955,6.79561);
var myOptions = {
@@ -20,7 +21,6 @@
mapTypeId: 'roadmap'
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
- format_address = 0;
marker = new google.maps.Marker({
position: latlng,
map: map
@@ -32,21 +32,30 @@
function showMarkerOnClick(eve){
var wanted_language = document.getElementById("language_id").value;
- if (wanted_language=="") { wanted_language = null; }
+ if (wanted_language=="") {
+ wanted_language = null;
+ }
+
var input = eve.latLng.toUrlValue();
var latlngStr = input.split(",",2);
var lat = parseFloat(latlngStr[0]);
var lng = parseFloat(latlngStr[1]);
var latlng = new google.maps.LatLng(lat, lng);
+ var infowindowContent = "";
if (geocoder) {
geocoder.geocode({'latLng': latlng,language:wanted_language}, \
function(results, status) { if (status == google.maps.GeocoderStatus.OK) {
- if (results[format_address]) {
+ if (results[0]) {
map.setZoom(14);
marker.setPosition(latlng);
- infowindow.setContent(results[format_address].formatted_address + "<br> \
" + results[format_address].geometry.location); + for( var i = 0 ; i < \
results[0].address_components.length; ++i){ +
+ infowindowContent +=results[0].address_components[i].types + ":" + \
results[0].address_components[i].long_name + "<br>"; +
+ }
+ infowindow.setContent(infowindowContent);
infowindow.open(map, marker);
} else {
alert("No results found");
@@ -59,23 +68,32 @@
}
- function codeLatLng(opt) {
+ function codeLatLng() {
var wanted_language = document.getElementById("language_id").value;
- if (wanted_language=="") { wanted_language = null; }
- format_address = parseFloat(opt);
+ if (wanted_language=="") {
+ wanted_language = null;
+ }
+
var input = document.getElementById("latlng").value;
var latlngStr = input.split(",",2);
var lat = parseFloat(latlngStr[0]);
var lng = parseFloat(latlngStr[1]);
var latlng = new google.maps.LatLng(lat, lng);
+ var infowindowContent = "";
if (geocoder) {
geocoder.geocode({'latLng': latlng,language:wanted_language}, \
function(results, status) { if (status == google.maps.GeocoderStatus.OK) {
- if (results[format_address]) {
+ if (results[0]) {
map.setZoom(14);
- infowindow.setContent(results[format_address].formatted_address);
+
+ for ( var i = 0; i < results[0].address_components.length; ++i){
+
+ infowindowContent += results[0].address_components[i].types + ":" + \
results[0].address_components[i].long_name + "<br>"; +
+ }
+ infowindow.setContent(infowindowContent);
infowindow.open(map, marker);
} else {
alert("No results found");
@@ -96,19 +114,9 @@
Insert coordinates:
<input id="latlng" type="textbox" />
<br>
- <br> Choose how display addres (0 - 8):
- <br>0 - Full address
- <br>1 - Neighborhood, City, Country
- <br>2 - District, City, Country
- <br>3 - City, Country
- <br>4 - City, Country in english
- <br>5 - Country
- <br>
- <input type="text" name="opt" />
- <br>
Language: <input type="text" id="language_id" name="language_id" />
<br>
- <input type="button" value="Submit" onclick="codeLatLng(this.form.opt.value)" />
+ <input type="button" value="Submit" onclick="codeLatLng()" />
</form>
</body>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic