2012-04-27 6 views
0

私はGoogleマップが初めてです。私は、米国全土に販売地域を示すKmlLayerを使用するマップを作成しようとしています。この部分は成功です。私はGoogleマップにすべてのホームデポを表示しようとしています

私は現在、理論上、地図を訪問し、あなたの領域を見て、あなたのエリアのすべてのホームデポを見ることができるように、ホームデポのマーカーをすべて表示したいと考えています。ここで

は、私がこれまで持っているものです:私が直接APIを通して、あなたのクエリを実行すると

$(document).ready(function() { 
    var map, geocoder; 

    init(); 

    $('.showVendors').click(function() { 
     loadKML(); 
     showVendors(); 
    }); 
}); 

function init() { 
    var myOptions = { 
     center: new google.maps.LatLng(37.09024,-95.712891), 
     zoom: 3, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 

    map = new google.maps.Map(document.getElementById('map'), myOptions); 
    geocoder = new google.maps.Geocoder(); 
} 

function loadKML() { 
    var kmlOptions = { 
     clickable: true, 
     map: map, 
     preserveViewport: true, 
     suppressInfoWindows: false 
    } 
    var kmlLayer = new google.maps.KmlLayer('kml/territories.kml', kmlOptions); 

} 

function showVendors() { 
    var vendor = 'Home Depot'; 
    geocoder.geocode({ 'premise' : vendor }, function(results, status) { 
     if (status == google.maps.GeocoderStatus.OK) { 
      map.setCenter(results[1].geometry.location); 
      var marker = new google.maps.Marker({ 
       map: map, 
       position: results[1].geometry.location 
      }); 
     } else { 
      alert ("Geocode was unsuccessful for the following reason: " + status); 
     } 
    }); 
} 

答えて

1

は:

http://maps.googleapis.com/maps/api/geocode/json?premise=Home%20Depot&sensor=true 

私が取得:

{ 
    "results" : [], 
    "status" : "ZERO_RESULTS" 
} 

が、この情報のように見えますジオコーディングAPIでは使用できません。これは上記のコードです。あなたは場所のAPIとのより良い運を持っていますが、それはまだ実験的なものです:

https://developers.google.com/maps/documentation/places/

+0

Googleプレイスは、私が探していたソリューションを提供しました。正しい方向に私を押してくれてありがとう! –

+0

ニース!私が手伝ってくれると嬉しいです。 – javram

関連する問題