//Manually create a list of basemaps to display var basemaps = []; var oceanLayer = new esri.dijit.BasemapLayer({ url: "http://server.arcgisonline.com/ArcGIS/rest/services/Ocean_Basemap/MapServer" }); var oceansBasemap = new esri.dijit.Basemap({ layers:[oceanLayer], title:"World Oceans", thumbnailUrl:"http://www.arcgis.com/sharing/content/items/2adf08a4a1a84834a773805a6e86f69e/info/thumbnail/oceans.jpg" }); basemaps.push(oceansBasemap); var natGeoLayer = new esri.dijit.BasemapLayer({ url:"http://server.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer" }); var natGeoBasemap = new esri.dijit.Basemap({ layers:[natGeoLayer], title:"National Geographic", thumbnailUrl:"http://www.arcgis.com/sharing/content/items/b9b1b422198944fbbd5250b3241691b6/info/thumbnail/natgeo3.jpg" }); basemaps.push(natGeoBasemap); basemapGallery = new esri.dijit.BasemapGallery({ showArcGISBasemaps: false, basemaps: basemaps, map: map });
var basemapGallery = new esri.dijit.BasemapGallery({ showArcGISBasemaps: true, basemapsGroup:{owner:"esri",title:"Community Basemaps"}, map: map }, dojo.create('div'));
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" /> <!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" /> <title> Basemap Gallery - Bing Maps </title> <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.6/js/dojo/dijit/themes/claro/claro.css"> <style type="text/css"> html,body { height:100%; width:100%; margin:0; padding:0; } body { background-color:#feffff; overflow:hidden; font-family:"Trebuchet MS"; margin:2%; } #map { -moz-border-radius:4px; overflow:hidden; border:solid 2px #03c; } .claro .dijitButtonText { color:#03c; font-family: Arial, Helvetica, sans-serif font-weight:bold; } .claro td.dijitMenuItemLabel { color:#03c; font-family: Arial, Helvetica, sans-serif font-weight:500; } </style> <script type="text/javascript"> var djConfig = { parseOnLoad: true }; </script> <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.6"> </script> <script type="text/javascript"> dojo.require("dijit.dijit"); // optimize: load dijit layer dojo.require("dijit.layout.BorderContainer"); dojo.require("dijit.layout.ContentPane"); dojo.require("esri.map"); dojo.require("esri.dijit.BasemapGallery"); dojo.require("dijit.Tooltip"); dojo.require("dijit.form.Button"); dojo.require("dijit.Menu"); var map, basemapGallery; function init() { var initialExtent = new esri.geometry.Extent({ "xmin": -1641867, "ymin": 2647172, "xmax": 3064207, "ymax": 4765395, "spatialReference": { "wkid": 102113 } }); map = new esri.Map("map", { extent: initialExtent }); createBasemapGallery(); dojo.connect(map, 'onLoad', function(map) { //resize the map when the browser resizes dojo.connect(dijit.byId('map'), 'resize', map,map.resize); }); } function createBasemapGallery(){ //Manually create a list of basemaps to display var basemaps = []; var oceanLayer = new esri.dijit.BasemapLayer({ url: "http://server.arcgisonline.com/ArcGIS/rest/services/Ocean_Basemap/MapServer" }); var oceansBasemap = new esri.dijit.Basemap({ layers:[oceanLayer], title:"World Oceans" }); basemaps.push(oceansBasemap); var basemapImagery = new esri.dijit.Basemap({ layers: [new esri.dijit.BasemapLayer({ url: "http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer" })], id: "bmImagery", title: "Imagery" }); basemaps.push(basemapImagery); var natGeoLayer = new esri.dijit.BasemapLayer({ url:"http://server.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer" }); var natGeoBasemap = new esri.dijit.Basemap({ layers:[natGeoLayer], title:"National Geographic" }); basemaps.push(natGeoBasemap); basemapGallery = new esri.dijit.BasemapGallery({ showArcGISBasemaps: false, basemaps: basemaps, map: map }); //BasemapGallery.startup isn't needed because we aren't using the default basemap, instead //we are going to create a custom user interface to display the basemaps, in this case a menu. dojo.forEach(basemapGallery.basemaps, function(basemap) { //Add a menu item for each basemap, when the menu items are selected dijit.byId("bingMenu").addChild(new dijit.MenuItem({ label: basemap.title, onClick: dojo.hitch(this, function() { this.basemapGallery.select(basemap.id); }) })); }); } //show map on load dojo.addOnLoad(init); </script> </head> <body class="claro"> <div dojotype="dijit.layout.BorderContainer" design="headline" gutters="false" style="width: 95%; height: 94%;"> <div id="map" dojotype="dijit.layout.ContentPane" region="center"> <div style="position:absolute; right:50px; top:10px; z-Index:99;"> <button id="dropdownButton" label="Basemaps" dojoType="dijit.form.DropDownButton"> <div dojoType="dijit.Menu" id="bingMenu"> <!--The menu items are dynamically created using the basemap gallery layers--> </div> </button> </div> </div> </div> </body> </html>
function init() { // DVRPC region initExtent = new esri.geometry.Extent({"xmin":-8502778.91,"ymin":4784652.06,"xmax":-8227605.61,"ymax":4968100.93,"spatialReference":{"wkid":102100}}); initExtent = new esri.geometry.Extent({"xmin":-8513951.985121,"ymin":4786968.660565,"xmax":-8248256.864588,"ymax":4996406.126118,"spatialReference":{"wkid":102100}}); //setup the popup window var popup = new esri.dijit.Popup({marginTop:35, fillSymbol: new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255,0,0]), 2), new dojo.Color([255,255,0,0.25])) }, dojo.create("div")); map = new esri.Map("map",{ infoWindow:popup, extent:initExtent }); dojo.connect(map,"onLoad",mapReady); // imagemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer"); // map.addLayer(imagemap); basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer"); map.addLayer(basemap); refmap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Reference/MapServer"); map.addLayer(refmap); var imageParameters = new esri.layers.ImageParameters(); imageParameters.layerIds = [6]; imageParameters.layerOption = esri.layers.ImageParameters.LAYER_OPTION_SHOW; cii = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.dvrpc.org/ArcGIS/rest/services/Ci2_raster/MapServer",{id:"cii", "imageParameters": imageParameters, "opacity":1.00}); map.addLayer(cii); admin = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.dvrpc.org/ArcGIS/rest/services/Ci2_raster/MapServer",{id:"admin", visible:true,"opacity":0.80}); map.addLayer(admin); admin.setVisibleLayers([0,1,2]); transmap = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.dvrpc.org/ArcGIS/rest/services/Ci2_raster/MapServer",{id:"transmap", visible:true,"opacity":1.00}); map.addLayer(transmap); transmap.setVisibleLayers([3,4,5]); }
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" /> <!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" /> <title>Topographic Map</title> <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.7/js/dojo/dijit/themes/claro/claro.css"> <style> html, body { height: 100%; width: 100%; margin: 0; padding: 0; } .esriScalebar { padding: 20px 20px; } #map { padding:0; } </style> <script type="text/javascript"> var djConfig = { parseOnLoad: true }; </script> <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.7"></script> <script type="text/javascript"> dojo.require("dijit.layout.BorderContainer"); dojo.require("dijit.layout.ContentPane"); dojo.require("esri.map"); dojo.require("esri.dijit.BasemapGallery"); dojo.require("dijit.Menu"); dojo.require("dijit.form.Button"); var map; var basemapGallery; function init() { var initExtent = new esri.geometry.Extent({ "xmin": -75.50, "ymin": 39.84, "xmax": -74.67, "ymax": 40.14, "spatialReference": { "wkid": 4326 } }); map = new esri.Map("map", { extent: esri.geometry.geographicToWebMercator(initExtent) }); dojo.connect(map, 'onLoad', function () { //create the basemap gallery dropdown createBasemapGallery(); //resize the map when the browser resizes dojo.connect(dijit.byId('map'), 'resize', map, map.resize); }); //Add the topographic layer to the map. View the ArcGIS Online site for services http://arcgisonline/home/search.html?t=content&f=typekeywords:service var basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer"); map.addLayer(basemap); //add dynamic layers var imageParameters = new esri.layers.ImageParameters(); imageParameters.layerIds = [6]; imageParameters.layerOption = esri.layers.ImageParameters.LAYER_OPTION_SHOW; var cii = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.dvrpc.org/ArcGIS/rest/services/Ci2_raster/MapServer", { id: "cii", "imageParameters": imageParameters, "opacity": 1.00 }); map.addLayer(cii); var admin = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.dvrpc.org/ArcGIS/rest/services/Ci2_raster/MapServer", { id: "admin", visible: true, "opacity": 0.80 }); map.addLayer(admin); admin.setVisibleLayers([0, 1, 2]); var transmap = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.dvrpc.org/ArcGIS/rest/services/Ci2_raster/MapServer", { id: "transmap", visible: true, "opacity": 1.00 }); map.addLayer(transmap); transmap.setVisibleLayers([3, 4, 5]); } function createBasemapGallery() { basemapGallery = new esri.dijit.BasemapGallery({ showArcGISBasemaps: true, map: map }); dojo.connect(basemapGallery, 'onLoad', function () { //add the basemaps to the menu dojo.forEach(basemapGallery.basemaps, function (basemap) { dijit.byId("basemapMenu").addChild(new dijit.MenuItem({ label: basemap.title, onClick: dojo.hitch(this, function () { this.basemapGallery.select(basemap.id); }) })); }); }); } dojo.addOnLoad(init); </script> </head> <body class="claro"> <div dojotype="dijit.layout.BorderContainer" design="headline" gutters="false" style="width: 100%; height: 100%; margin: 0;"> <div id="map" dojotype="dijit.layout.ContentPane" region="center" style="border:1px solid #000;padding:0;"> <!-- basemap dropdown --> <div style="position:absolute; right:50px; top:10px; z-Index:99;"> <button id="dropdownButton" iconClass="bingIcon" label="Basemaps" dojoType="dijit.form.DropDownButton"> <div dojoType="dijit.Menu" id="basemapMenu"> <!--The menu items are dynamically created using the basemap gallery layers--> </div> </button> </div> </div> </div> </body> </html>