2008-09-16 8 views
3

Yahooマップにマーカーを付けるデータベースのアドレスリストがあります。 Yマップ上のaddMarker() methodにはYGeoPointがあり、緯度と経度が必要です。しかし、drawZoomAndCenter(LocationType,ZoomLevel)がアドレスを取ることができるので、Yahoo Mapsはアドレスからの変換方法を知っていなければなりません。 drawZoomAndCenter()を次にgetCenterLatLon()に変換することができましたが、より良い方法がありますが、これは描画を必要としませんか?Yahoo Maps APIで位置(文字列)文字列をYGeoPointに変換するにはどうすればよいですか?

答えて

1

あなたはジオコーディングを行うには、マップオブジェクトを尋ねると、コールバックをキャッチすることができますに注意する

<script type="text/javascript"> 
var map = new YMap(document.getElementById('map')); 
map.drawZoomAndCenter("Algeria", 17); 

map.geoCodeAddress("Cambridge, UK"); 

YEvent.Capture(map, EventsList.onEndGeoCode, function(geoCode) { 
    if (geoCode.success) 
     map.addOverlay(new YMarker(geoCode.GeoPoint)); 
}); 
</script> 

一つのこと - この例ではdrawAndZoomコール自体がジオコーディング要求を行うので、あなたでしょう」コールバックもそれから取得します。それをフィルタリングしたり、GeoPointに基づいて地図の中心を設定することができます。

関連する問題