Плитки карты Google - улицы и метки накладываются со стилем? - PullRequest
2 голосов
/ 21 апреля 2011

У меня есть карта Google, в которую я вставляю пользовательский слой поверх карты, а затем добавляю улицы Google и надписи на них.Я искал вокруг, чтобы увидеть, есть ли какой-нибудь способ стилизовать наложение улиц и надписей, как если бы вы были дорожной картой.

Итак, у меня есть это:

var myStyle = [
{
    featureType: "road.arterial",
    elementType: "all",
    stylers: [
    { visibility: "simplified" }
    ]
},{
    featureType: "road.highway",
    elementType: "all",
    stylers: [
      { visibility: "simplified" }
    ]
}
];

var myTileLayer = {
    getTileUrl: function(coord, zoom) {
        return "myTiles.php?" +
        "z=" + zoom + "&x=" + coord.x + "&y=" + coord.y + "&client=api";
    },
    tileSize: new google.maps.Size(256, 256),
    isPng: true
};

var labelTiles = {
    getTileUrl: function(coord, zoom) {
        return "http://mt0.google.com/vt/v=apt.116&hl=en-US&" +
        "z=" + zoom + "&x=" + coord.x + "&y=" + coord.y + "&client=api";
    },
    tileSize: new google.maps.Size(256, 256),
    isPng: true
};

var googleLabelLayer = new google.maps.ImageMapType(labelTiles);

var mapOptions = {
    mapTypeControlOptions: {
     mapTypeIds: ['mystyle', google.maps.MapTypeId.ROADMAP, google.maps.MapTypeId.TERRAIN]
   },
    zoom: 9,
    center: map_center,
    mapTypeId: 'mystyle'
};
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
map.mapTypes.set('mystyle', new google.maps.StyledMapType(myStyle, { name: 'My Style' }));
map.overlayMapTypes.insertAt(0, myTileLayer);
map.overlayMapTypes.insertAt(1, googleLabelLayer);

Кто-нибудь знает?1006 *

1 Ответ

1 голос
/ 13 мая 2011

Да, вы можете стилизовать улицы и надписи, по крайней мере, в ограниченной степени. Например, вы можете изменить зеленый цвет дороги следующим образом:

[
  {
    featureType: "road",
    elementType: "geometry",
    stylers: [
      { visibility: "simplified" },
      { hue: "#3bff00" }
    ]
  }
]

Используйте мастер стилей карт Google Maps API в http://gmaps -samples-v3.googlecode.com / svn / trunk / styledmaps / wizard / index.html , чтобы поиграть с различными настройками. Он создаст код, который вам нужен, чтобы повторить стиль. Это также может помочь вам определить, что вы хотите сделать, что API не поддерживает. Например, я не верю, что в настоящее время есть способ сделать ярлыки курсивом. (И если есть, хорошо, хорошо, но вы меня поняли.)

Еще одна вещь: Maps API v3.5 вышел не так давно. Возможно, вы захотите проверить примечания к выпуску или объявление или что-то еще на тот случай, если теперь есть доступные функции, которые по какой-либо причине не отображаются в мастере.

...