Google Maps v2-v3: дорожная карта getTile (), почему не работает? - PullRequest
0 голосов
/ 30 октября 2011

Почему эта v2-подобная конструкция не работает в v3?

(вместо пути к дорожной карте я получаю неопределенный)

var mytype = new google.maps.ImageMapType({
  getTileUrl: function(tile, zoom) {
    var url = '';
    if (cond_need_custom_tiles) {
      url = 'http://domain.com/mytiles/tile-'+tile.x+'-'+tile.y+'-'+zoom;
    }
    else { // need ROADMAP tiles
      // old (v2):
      // url = G_NORMAL_MAP.getTileLayers()[0].getTileUrl(tile, zoom);

      // new (v3):
      url = map.mapTypes.get(google.maps.MapTypeId.ROADMAP).getTile(tile, zoom); // why it doesn't work??
    }
    console.log(url); // undefined!!! why?
    return url;
  },
  tileSize: new google.maps.Size(256, 256),
  minZoom: 0,
  maxZoom: Number(opt.zoom),
  name: 'mytiles',
});

PS: я хочу, чтобы мои плитки mapType и ROADMAP были вфон (где нет моей плитки), спасибо.

1 Ответ

1 голос
/ 30 октября 2011

getTile () больше не определяется для базовых карт;он должен использоваться только в качестве пользовательского метода для пользовательских mapTypes - пожалуйста, смотрите комментарий № 2 к http://code.google.com/p/gmaps-api-issues/issues/detail?id=3635#c2 для некоторых дополнительных деталей.

В вашем конкретном случае использования, возможно, вы просто можете всегда загружатьплитки ROADMAP по умолчанию, а затем отображать свой пользовательский imageMapType в зависимости от ситуации в зависимости от cond_need_custom_tiles?

В качестве альтернативы, указанная выше ошибка будет хорошим местом для предоставления дополнительной информации о вашем случае использования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...