Google Maps Api v3, значок пользовательского кластера

Как изменить значок кластера? мне нравится иметь такой же значок, с каким-то другим цветом, чем синий.

4 ответов


вам нужно использовать параметр styles при инициализации объекта MarkerClusterer-приведенный ниже код показывает стили по умолчанию, поэтому, если вы хотите перекрасить один из значков, просто измените соответствующий url-адрес на изображение...

//set style options for marker clusters (these are the default styles)
mcOptions = {styles: [{
height: 53,
url: "http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/images/m1.png",
width: 53
},
{
height: 56,
url: "https://github.com/googlemaps/js-marker-clusterer/tree/gh-pages/images/m2.png",
width: 56
},
{
height: 66,
url: "https://github.com/googlemaps/js-marker-clusterer/tree/gh-pages/images/m3.png",
width: 66
},
{
height: 78,
url: "https://github.com/googlemaps/js-marker-clusterer/tree/gh-pages/images/m4.png",
width: 78
},
{
height: 90,
url: "https://github.com/googlemaps/js-marker-clusterer/tree/gh-pages/images/m5.png",
width: 90
}]}

//init clusterer with your options
var mc = new MarkerClusterer(map, markers, mcOptions);

Google изменил свой РЕПО. Последнее кластерное РЕПО:https://github.com/googlemaps/js-marker-clusterer изображения : https://github.com/googlemaps/js-marker-clusterer/tree/gh-pages/images

вы также можете рассмотреть возможность загрузки источника и дать ссылку с вашего локального пути. Таким образом, у вас будет больше контроля над ресурсами, необходимыми вашему приложению.

local_path "/pucblic/"
mcOptions = {styles: [{
height: 53,
url: local_path+"m1.png",
width: 53
},
{
height: 56,
url: local_path+"m2.png",
width: 56
},
{
height: 66,
url: local_path+"m3.png",
width: 66
},
{
height: 78,
url: local_path+"m4.png",
width: 78
},
{
height: 90,
url:  local_path+"m5.png",
width: 90
}]}

ярлык переопределяет путь изображения следующим образом:

MarkerClusterer.prototype.MARKER_CLUSTER_IMAGE_PATH_ = 
    "https://raw.githubusercontent.com/googlemaps/v3-utility-library/master/markerclustererplus/images/m";

вот оригинальные фотографии

markerClusterOptions = {styles: [{
    height: 53,
    url: "https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m1.png",
    width: 53
    },
    {
    height: 56,
    url: "https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m2.png",
    width: 56
    },
    {
    height: 66,
    url: "https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m3.png",
    width: 66
    },
    {
    height: 78,
    url: "https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m4.png",
    width: 78
    },
    {
    height: 90,
    url: "https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m5.png,
    width: 90
    }]}
    markerCluster = new MarkerClusterer(map, markers,markerClusterOptions);