Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var mapTypes = [];
- mapTypes['sky'] = {
- getTileUrl: function(coord, zoom) {
- return getHorizontallyRepeatingTileUrl(coord, zoom, function(coord, zoom) {
- return "http://mw1.google.com/mw-planetary/sky/skytiles_v1/" +
- coord.x + "_" + coord.y + '_' + zoom + '.jpg';
- });
- },
- tileSize: new google.maps.Size(256, 256),
- isPng: false,
- maxZoom: 10,
- radius: 57.2957763671875,
- name: 'Sky',
- credit: 'Image Credit: SDSS, DSS Consortium, NASA/ESA/STScI'
- };
- function getHorizontallyRepeatingTileUrl(coord, zoom, urlfunc) {
- var y = coord.y;
- var x = coord.x;
- var tileRange = 1 << zoom;
- if (y < 0 || y >= tileRange) {
- return null;
- }
- if (x < 0 || x >= tileRange) {
- x = (x % tileRange + tileRange) % tileRange;
- }
- return urlfunc({x:x,y:y}, zoom)
- }
- function getMarsTileUrl(baseUrl, coord, zoom) {
- var bound = Math.pow(2, zoom);
- var x = coord.x;
- var y = coord.y;
- var quads = ['t'];
- for (var z = 0; z < zoom; z++) {
- bound = bound / 2;
- if (y < bound) {
- if (x < bound) {
- quads.push('q');
- } else {
- quads.push('r');
- x -= bound;
- }
- } else {
- if (x < bound) {
- quads.push('t');
- y -= bound;
- } else {
- quads.push('s');
- x -= bound;
- y -= bound;
- }
- }
- }
- return baseUrl + quads.join('') + ".jpg";
- }
- var map;
- var mapTypeIds = [];
- function initialize() {
- for (var key in mapTypes) {
- mapTypeIds.push(key);
- }
- var mapOptions = {
- zoom: 0,
- center: new google.maps.LatLng(0, 0),
- mapTypeControlOptions: {
- mapTypeIds: mapTypeIds,
- style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
- }
- };
- map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
- for (key in mapTypes) {
- map.mapTypes.set(key, new google.maps.ImageMapType(mapTypes[key]));
- }
- map.setMapTypeId('sky');
- }
Advertisement
Add Comment
Please, Sign In to add comment