createDefaultImageryProviderViewModels.js 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. /*global define*/
  2. define([
  3. '../../Core/buildModuleUrl',
  4. '../../Scene/ArcGisMapServerImageryProvider',
  5. '../../Scene/BingMapsImageryProvider',
  6. '../../Scene/BingMapsStyle',
  7. '../../Scene/OpenStreetMapImageryProvider',
  8. '../../Scene/TileMapServiceImageryProvider',
  9. '../BaseLayerPicker/ProviderViewModel'
  10. ], function(
  11. buildModuleUrl,
  12. ArcGisMapServerImageryProvider,
  13. BingMapsImageryProvider,
  14. BingMapsStyle,
  15. OpenStreetMapImageryProvider,
  16. TileMapServiceImageryProvider,
  17. ProviderViewModel) {
  18. "use strict";
  19. /**
  20. * @private
  21. */
  22. function createDefaultImageryProviderViewModels() {
  23. var providerViewModels = [];
  24. providerViewModels.push(new ProviderViewModel({
  25. name : 'Bing Maps Aerial',
  26. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/bingAerial.png'),
  27. tooltip : 'Bing Maps aerial imagery \nhttp://www.bing.com/maps',
  28. creationFunction : function() {
  29. return new BingMapsImageryProvider({
  30. url : '//dev.virtualearth.net',
  31. mapStyle : BingMapsStyle.AERIAL
  32. });
  33. }
  34. }));
  35. providerViewModels.push(new ProviderViewModel({
  36. name : 'Bing Maps Aerial with Labels',
  37. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/bingAerialLabels.png'),
  38. tooltip : 'Bing Maps aerial imagery with label overlays \nhttp://www.bing.com/maps',
  39. creationFunction : function() {
  40. return new BingMapsImageryProvider({
  41. url : '//dev.virtualearth.net',
  42. mapStyle : BingMapsStyle.AERIAL_WITH_LABELS
  43. });
  44. }
  45. }));
  46. providerViewModels.push(new ProviderViewModel({
  47. name : 'Bing Maps Roads',
  48. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/bingRoads.png'),
  49. tooltip : 'Bing Maps standard road maps\nhttp://www.bing.com/maps',
  50. creationFunction : function() {
  51. return new BingMapsImageryProvider({
  52. url : '//dev.virtualearth.net',
  53. mapStyle : BingMapsStyle.ROAD
  54. });
  55. }
  56. }));
  57. providerViewModels.push(new ProviderViewModel({
  58. name : 'ESRI World Imagery',
  59. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/esriWorldImagery.png'),
  60. tooltip : '\
  61. World Imagery provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution \
  62. satellite imagery worldwide. The map includes NASA Blue Marble: Next Generation 500m resolution imagery at small scales \
  63. (above 1:1,000,000), i-cubed 15m eSAT imagery at medium-to-large scales (down to 1:70,000) for the world, and USGS 15m Landsat \
  64. imagery for Antarctica. The map features 0.3m resolution imagery in the continental United States and 0.6m resolution imagery in \
  65. parts of Western Europe from DigitalGlobe. In other parts of the world, 1 meter resolution imagery is available from GeoEye IKONOS, \
  66. i-cubed Nationwide Prime, Getmapping, AeroGRID, IGN Spain, and IGP Portugal. Additionally, imagery at different resolutions has been \
  67. contributed by the GIS User Community.\nhttp://www.esri.com',
  68. creationFunction : function() {
  69. return new ArcGisMapServerImageryProvider({
  70. url : '//services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer'
  71. });
  72. }
  73. }));
  74. providerViewModels.push(new ProviderViewModel({
  75. name : 'ESRI World Street Map',
  76. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/esriWorldStreetMap.png'),
  77. tooltip : '\
  78. This worldwide street map presents highway-level data for the world. Street-level data includes the United States; much of \
  79. Canada; Japan; most countries in Europe; Australia and New Zealand; India; parts of South America including Argentina, Brazil, \
  80. Chile, Colombia, and Venezuela; Ghana; and parts of southern Africa including Botswana, Lesotho, Namibia, South Africa, and Swaziland.\n\
  81. http://www.esri.com',
  82. creationFunction : function() {
  83. return new ArcGisMapServerImageryProvider({
  84. url : '//services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer'
  85. });
  86. }
  87. }));
  88. providerViewModels.push(new ProviderViewModel({
  89. name : 'ESRI National Geographic',
  90. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/esriNationalGeographic.png'),
  91. tooltip : '\
  92. This web map contains the National Geographic World Map service. This map service is designed to be used as a general reference map \
  93. for informational and educational purposes as well as a basemap by GIS professionals and other users for creating web maps and web \
  94. mapping applications.\nhttp://www.esri.com',
  95. creationFunction : function() {
  96. return new ArcGisMapServerImageryProvider({
  97. url : '//services.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer/'
  98. });
  99. }
  100. }));
  101. providerViewModels.push(new ProviderViewModel({
  102. name : 'Open\u00adStreet\u00adMap',
  103. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/openStreetMap.png'),
  104. tooltip : 'OpenStreetMap (OSM) is a collaborative project to create a free editable map \
  105. of the world.\nhttp://www.openstreetmap.org',
  106. creationFunction : function() {
  107. return new OpenStreetMapImageryProvider({
  108. url : '//a.tile.openstreetmap.org/'
  109. });
  110. }
  111. }));
  112. providerViewModels.push(new ProviderViewModel({
  113. name : 'Stamen Watercolor',
  114. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/stamenWatercolor.png'),
  115. tooltip : 'Reminiscent of hand drawn maps, Stamen watercolor maps apply raster effect \
  116. area washes and organic edges over a paper texture to add warm pop to any map.\nhttp://maps.stamen.com',
  117. creationFunction : function() {
  118. return new OpenStreetMapImageryProvider({
  119. url : '//stamen-tiles.a.ssl.fastly.net/watercolor/',
  120. credit : 'Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under CC BY SA.'
  121. });
  122. }
  123. }));
  124. providerViewModels.push(new ProviderViewModel({
  125. name : 'Stamen Toner',
  126. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/stamenToner.png'),
  127. tooltip : 'A high contrast black and white map.\nhttp://maps.stamen.com',
  128. creationFunction : function() {
  129. return new OpenStreetMapImageryProvider({
  130. url : '//stamen-tiles.a.ssl.fastly.net/toner/',
  131. credit : 'Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under CC BY SA.'
  132. });
  133. }
  134. }));
  135. providerViewModels.push(new ProviderViewModel({
  136. name : 'MapQuest Open\u00adStreet\u00adMap',
  137. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/mapQuestOpenStreetMap.png'),
  138. tooltip : 'OpenStreetMap (OSM) is a collaborative project to create a free editable \
  139. map of the world.\nhttp://www.openstreetmap.org',
  140. creationFunction : function() {
  141. return new OpenStreetMapImageryProvider({
  142. url : '//otile1-s.mqcdn.com/tiles/1.0.0/osm/'
  143. });
  144. }
  145. }));
  146. providerViewModels.push(new ProviderViewModel({
  147. name : 'The Black Marble',
  148. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/blackMarble.png'),
  149. tooltip : 'The lights of cities and villages trace the outlines of civilization in this global view of the \
  150. Earth at night as seen by NASA/NOAA\'s Suomi NPP satellite.',
  151. creationFunction : function() {
  152. return new TileMapServiceImageryProvider({
  153. url : '//cesiumjs.org/blackmarble',
  154. maximumLevel : 8,
  155. credit : 'Black Marble imagery courtesy NASA Earth Observatory'
  156. });
  157. }
  158. }));
  159. providerViewModels.push(new ProviderViewModel({
  160. name : 'Natural Earth\u00a0II',
  161. iconUrl : buildModuleUrl('Widgets/Images/ImageryProviders/naturalEarthII.png'),
  162. tooltip : 'Natural Earth II, darkened for contrast.\nhttp://www.naturalearthdata.com/',
  163. creationFunction : function() {
  164. return new TileMapServiceImageryProvider({
  165. url : buildModuleUrl('Assets/Textures/NaturalEarthII')
  166. });
  167. }
  168. }));
  169. return providerViewModels;
  170. }
  171. return createDefaultImageryProviderViewModels;
  172. });