К сожалению, спутниковых снимков многих сибирских городов на Яндекс.Картах пока нет. Поэтому мне пришла в голову идея использовать снимки из карт Google.
API Яндекс.Карт позволяет использовать сторонние тайлы через YMaps.TileDataSource:
var gMap = new YMaps.TileDataSource('http://khm1.google.ru/kh/v=4 0', false, false);
var gMapType = new YMaps.MapType(new YMaps.MapLayer(gMap), 'Google Maps', {minZoom: 1, maxZoom: 17});
gMap.getTileUrl = function(tile, zoom) {
return this.getTileUrlTemplate() + '&x=' + tile.x + '&y=' + tile.y + '&z=' + zoom + '&s=G';
}
map.addControl(new YMaps.TypeControl([YMaps.MapType.MAP, YMaps.MapType.SATELLITE, gMapType]));
Переключение между картами заработало, но тут меня ждало разочарование - тайлы не совпадают.
Возможно, тут поможет смещение тайлов, но я не разобрался как это сделать.
Может, у кого-нибудь из участников клуба стояла подобная задача? Или выбранный мною путь неверен?