2012-03-25 8 views
1

マーカーを水平に繰り返さないようにすることができます。マーカーを地図上に表示したいだけで、地図を繰り返しません。 あなたがここに見ることができるように、それは非常にanoyingです: http://lsres.com/playerdb/test2.phpGoogleマップでマーカーを繰り返さないでください。API V3(JS)

私は現在、このように私マップを初期化:事前に

var map; 
    var mapTypeOptions = { 
    getTileUrl: function(coord, zoom) { if (coord.y < 0 || coord.y >= 1 << zoom || coord.x < 0 || coord.x >= 1 << zoom){ return "sam/map/samap_a.jpg"; } return "sam/map/samap_"+zoom+"_"+coord.x+"_"+coord.y+".jpg"; }, 
    tileSize: new google.maps.Size(256, 256), 
    maxZoom: 2, 
    minZoom: 1, 
    name: "Map", 
    opacity: 1.0, 
    isPng: false, 
    alt: "Map" 
    }; 

    var satTypeOptions = { 
    getTileUrl: function(coord, zoom) { if (coord.y < 0 || coord.y >= 1 << zoom || coord.x < 0 || coord.x >= 1 << zoom){ return "sam/map/samap_a.jpg"; } return "sam/sat/samap_"+zoom+"_"+coord.x+"_"+coord.y+".jpg"; }, 
    tileSize: new google.maps.Size(256, 256), 
    maxZoom: 2, 
    minZoom: 1, 
    name: "Satelite" 
    }; 
    var mapMapType = new google.maps.ImageMapType(mapTypeOptions); 
    var satMapType = new google.maps.ImageMapType(satTypeOptions); 

    function initialize() { 
    var myLatlng = new google.maps.LatLng(0, 0); 
    var myOptions = { 
     center: myLatlng, 
     zoom: 1, 
     streetViewControl: false, 
     panControl: false, 
     zoomControl: false, 
     scaleControl: false, 
     mapTypeControlOptions: { 
     mapTypeIds: ["map", "sat"] 
     } 
    }; 
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 
    map.mapTypes.set('map', mapMapType); 
    map.mapTypes.set('sat', satMapType);  
    map.setMapTypeId('map'); 

    } 

感謝を!

答えて

1

マーカーオブジェクトを作成し、例えば、falseに最適化されたセット:

var marker = new google.maps.Marker({ 
    position: myLatLng, 
    map: map, 
    title: 'Hello World!', 
    optimized: false 
}); 
+0

代わりに、draggable:trueを設定することもできますが、マーカーはドラッグ可能です –

0

これは、ズームレベル1と2では、マップが空白を持たないために繰り返しなければならないためです。 maps.google.comでも同じことが起こります。あなたができることは、ズームレベル3と4を代わりに使用することです。コンテンツに空の青色の塗りつぶしが含まれるようにコードを変更する必要がありますが、マップは繰り返されません。地図の詳細はまだよく見えます。それは理にかなっていますか?助けることができる一つの技術があります

+0

あなたは少し、このソリューションを拡張することができますか?基本的に境界タイルを青色のフィラーにすることをお勧めしますが、どうしますか?任意の要求されたタイルのx、y座標を使って、どのタイルが青色のフィラーであるかをどのように選択しますか? –

0

、それは

http://econym.org.uk/gmap/range.htm

を「範囲が制限」それはV2でありますので、私はここで一緒にV3のjsfiddleを入れて、このウェブサイトからです。

http://jsfiddle.net/44e6y/1/

あなたはマップが離れすぎて最初のポイントから表示されません表示されます。つまり、マップをあらかじめ定義された制限を超えてドラッグすることはできません。

ただし、この方法を選択した場合は、表示可能領域を縮小する必要があります(繰り返しマーカーには何もしません)。

関連する問題