Gmap с ESRI JS 3.14

У нас нет лицензии Googlemap. У нас есть серверная лицензия ESRI 10.1.

  1. Можно ли бесплатно добавить googlemap в наше веб-приложение размером 600X600?

  2. Как мы можем добавить googlemap в наше веб-приложение ESRI javascript? Я использую http://js.arcgis.com/3.14/. В сети я нашел несколько примеров для добавления goolemap в версию http://js.arcgis.com/3. Если я добавлю этот код в jsapi 3.14, он не будет работать. Будет также много ошибок скрипта. Любая помощь, пожалуйста......

3. Код вставлен ниже. Который показывает bing и динамические карты отлично. Мне нужно добавить googlemap также в этом. Может кто-нибудь мне помочь?

<!DOCTYPE html>  
<html>  
<head>  
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
  <!--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" href="http://js.arcgis.com/3.14/dijit/themes/claro/claro.css">  
  <link rel="stylesheet" href="http://js.arcgis.com/3.14/esri/css/esri.css">  

  <style type="text/css">  
    html,  
    body,  
    #mapDiv {  
      padding: 0;  
      margin: 0;  
      height: 100%;  
      z-index: -1;  
      -moz-border-radius: 4px;  
      overflow: hidden;  
    }  

    .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;  
    }  

    .auto-style1 {}  

    .auto-style2 {  
      height: 20px;  
    }  

    .auto-style3 {  
      height: 20px;  
    }  

    .auto-style6 {  
      height: 2%;  
      width: 279px;  
    }  

    .auto-style7 {  
      width: 279px;  
    }  

    #TxtAltareeqEng {  
      width: 55px;  
    }  

    #TxtAltareeqEng0 {  
      width: 55px;  
    }  
  </style>  

  <script type="text/javascript" src="http://js.arcgis.com/3.14/"></script>  
  <!--<script src="Scripts/jquery-2.1.1.js" type="text/javascript"></script>-->  
  <script type="text/javascript">  
    window.onerror = function (msg, url, linenumber) {  
      alert('Error message: ' + msg + '\nURL: ' + url + '\nLine Number: ' + linenumber);  
      return true;  
    }  

    var map, basemapGallery;  
    require([  
        "esri/map",  
        "esri/graphic",  
        "esri/layers/ArcGISDynamicMapServiceLayer",  
        "esri/layers/GraphicsLayer",  
        "esri/geometry/Extent",  
        "esri/geometry/Point",  
        "esri/symbols/PictureMarkerSymbol",  
        "esri/InfoTemplate",  
        "esri/dijit/Basemap",  
        "esri/dijit/BasemapGallery",  
        "esri/dijit/BasemapLayer",  
        "esri/graphicsUtils",  
        "dojo/_base/array",  
        "dojo/parser",  
        "dojo/dom",  
        "dojo/_base/lang",  
        "dijit/MenuItem",  
        "dijit/Menu",  
        "dijit/layout/ContentPane",  
        "dijit/form/Button",  
        "dijit/form/RadioButton",  
        "dijit/form/DropDownButton",  
        "dojo/domReady!"  
        ],  
      function (  
        Map,  
        Graphic,  
        ArcGISDynamicMapServiceLayer,  
        GraphicsLayer,  
        Extent,  
        Point,  
        PictureMarkerSymbol,  
        InfoTemplate,  
        Basemap,  
        BasemapGallery,  
        BasemapLayer,  
        graphicsUtils,  
        array,  
        parser,  
        dom,  
        lang,  
        MenuItem  
      ) {  
        parser.parse();  

        var TareeqENG, TareeqARB;  
        var graphicsLayer;  
        var AltareeqArb, AltareeqEng;  

        /*Manually define the maps LODs*/  
        var lods = [  
         {  
          "level": 0,  
          "resolution": 156543.03392800014,  
          "scale": 5.91657527591555E8  
         },  
         {  
          "level": 1,  
          "resolution": 78271.51696399994,  
          "scale": 2.95828763795777E8  
         },  
         {  
          "level": 2,  
          "resolution": 39135.75848200009,  
          "scale": 1.47914381897889E8  
         },  
         {  
          "level": 3,  
          "resolution": 19567.87924099992,  
          "scale": 7.3957190948944E7  
         },  
         {  
          "level": 4,  
          "resolution": 9783.93962049996,  
          "scale": 3.6978595474472E7  
         },  
         {  
          "level": 5,  
          "resolution": 4891.96981024998,  
          "scale": 1.8489297737236E7  
         },  
         {  
          "level": 6,  
          "resolution": 2445.98490512499,  
          "scale": 9244648.868618  
         },  
         {  
          "level": 7,  
          "resolution": 1222.992452562495,  
          "scale": 4622324.434309  
         },  
         {  
          "level": 8,  
          "resolution": 611.4962262813797,  
          "scale": 2311162.217155  
         },  
         {  
          "level": 9,  
          "resolution": 305.74811314055756,  
          "scale": 1155581.108577  
         },  
         {  
          "level": 10,  
          "resolution": 152.87405657041106,  
          "scale": 577790.554289  
         },  
         {  
          "level": 11,  
          "resolution": 76.43702828507324,  
          "scale": 288895.277144  
         },  
         {  
          "level": 12,  
          "resolution": 38.21851414253662,  
          "scale": 144447.638572  
         },  
         {  
          "level": 13,  
          "resolution": 19.10925707126831,  
          "scale": 72223.819286  
         },  
         {  
          "level": 14,  
          "resolution": 9.554628535634155,  
          "scale": 36111.909643  
         },  
         {  
          "level": 15,  
          "resolution": 4.77731426794937,  
          "scale": 18055.954822  
         },  
         {  
          "level": 16,  
          "resolution": 2.388657133974685,  
          "scale": 9027.977411  
         },  
         {  
          "level": 17,  
          "resolution": 1.1943285668550503,  
          "scale": 4513.988705  
         },  
         {  
          "level": 18,  
          "resolution": 0.5971642835598172,  
          "scale": 2256.994353  
         },  
         {  
          "level": 19,  
          "resolution": 0.29858214164761665,  
          "scale": 1128.497176  
         },  
         {  
          "level": 20,  
          "resolution": 0.1492910708238083,  
          "scale": 564.248588  
         },  
         {  
          "level": 21,  
          "resolution": 0.0746455354119042,  
          "scale": 282.124294  
         }  
        ];  

        map = new Map("mapDiv", {  
          center: [6.389, 36.054],  
          zoom: 4,  
          lods: lods  
        });  
        createBasemapGallery();  

        dijit.byId("radioOne").on("change", function(isChecked){  
          if(isChecked){  
            dijit.byId("LnkLastPosition").set("label", "LastPosition");  
            dijit.byId("LnkTracking").set("label", "Tracking");  
          }  
        }, true);  

        dijit.byId("radioTwo").on("change", function(isChecked){  
          if(isChecked){  
            dijit.byId("LnkLastPosition").set("label", "الموقف الأخير");  
            dijit.byId("LnkTracking").set("label", "التتبع");  
          }  
        }, true);  

        dijit.byId("LnkLastPosition").on("click", LastPosClick);  
        dijit.byId("LnkTracking").on("click", LastPosClick);  

        function createBasemapGallery() {  
          AltareeqEng = "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Population_World/MapServer";  
          AltareeqArb = "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer";  

          //Manually create a list of basemaps to display  
          var basemaps = [];  

          /*Add the your basemaps is reverse order. We need the Bing basemap loaded first in the BasemapGallery 
          we will latter reverse the array so that it lists in the order you want*/  
          BingMapsHybrid = new Basemap({  
            layers: [new BasemapLayer({  
              type: "BingMapsHybrid"  
            })],  
            id: "bmHybrid",  
            title: "BingMaps-Aerial-Labels"  
          });  
          basemaps.push(BingMapsHybrid);  

          BingMapsAerial = new Basemap({  
            layers: [new BasemapLayer({  
              type: "BingMapsAerial"  
            })],  
            id: "bmAerial",  
            title: "BingMaps-Aerial"  
          });  
          basemaps.push(BingMapsAerial);  

          BingMapsRoad = new Basemap({  
            layers: [new BasemapLayer({  
              type: "BingMapsRoad"  
            })],  
            id: "bmRoad",  
            title: "BingMaps-Road"  
          });  
          basemaps.push(BingMapsRoad);  

          TareeqARB = new Basemap({  
            layers: [new ArcGISDynamicMapServiceLayer(AltareeqArb)],  
            id: "TareeqARB",  
            title: "Al-Tareeq(AR)"  
          });  
          basemaps.push(TareeqARB);  

          TareeqENG = new Basemap({  
            layers: [new ArcGISDynamicMapServiceLayer(AltareeqEng)],  
            id: "TareeqENG",  
            title: "Al-Tareeq(ENG)"  
          });  
          basemaps.push(TareeqENG);  

          basemapGallery = new BasemapGallery({  
            showArcGISBasemaps: false,  
            basemaps: basemaps,  
            bingMapsKey: "yourbingkey",  
            map: map  
          });  
          basemapGallery.startup();  

          graphicsLayer = new GraphicsLayer();  
          map.addLayer(graphicsLayer);  

          //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.  
          array.forEach(basemapGallery.basemaps.reverse(), function (basemap) {  
            //Add a menu item for each basemap, when the menu items are selected  
            dijit.byId("bingMenu").addChild(new MenuItem({  
              label: basemap.title,  
              onClick: lang.hitch(this, function () {  
                this.basemapGallery.select(basemap.id);  
              })  
            }));  
          });  
          /*Select that basemap that you want to be initially displayed*/  
          basemapGallery.select(TareeqENG.id);  
        }  

        function LastPosClick() {  
          map.infoWindow.hide();  
          var colourstyle = "images/sphere-blue-dark-16x16.png"  
          var Status = "status";  
          var procname = "procname";  
          var location = "location";  
          var Driver = "Drv";  
          var strhotspot = "strhotspot";  
          var geomPoint1 = new Point(58.46236, 23.61581);  
          var geomPoint2 = new Point(59.46236, 23.61581);  
          var geomPoint3 = new Point(60.43362666666, 23.583081666666);  
          var symbol = new PictureMarkerSymbol({  
            "url": colourstyle,  
            "height": 16,  
            "width": 16,  
            "type": "esriPMS"  
          });  

          var infoTemplate = new InfoTemplate();  
          infoTemplate.content = strhotspot;  
          var pointGraphic = new Graphic(geomPoint1, symbol);  
          var pointGraphic2 = new Graphic(geomPoint2, symbol);  
          var pointGraphic3 = new Graphic(geomPoint3, symbol);  
          pointGraphic.setInfoTemplate(infoTemplate);  
          pointGraphic2.setInfoTemplate(infoTemplate);  
          pointGraphic3.setInfoTemplate(infoTemplate);  
          graphicsLayer.add(pointGraphic);  
          graphicsLayer.add(pointGraphic2);  
          graphicsLayer.add(pointGraphic3);  
          setextent();  
          var DivesriLogoImage = dom.byId('DivesriLogoImage');  
          var mapDiv = dom.byId('mapDiv');  
          mapDiv.style.visibility = "visible";  
          DivesriLogoImage.style.visibility = "hidden";  
        }  

        function setextent() {  
          var gextent = graphicsUtils.graphicsExtent(graphicsLayer.graphics).expand(1.2);  
          map.setExtent(gextent);  
        }  
      });  
  </script>  
</head>  

<body class="claro">  
  <!--style="background-image: url('Images/menubackground.png');"-->  
  <form id="form1" >  
    <div style="width: 100%; height: 100%">  
      <table id="Tablecontrols0" style="font-size: 15px; z-index: 101; background-color: #5B748B; width: 100%; height: 100%;">  
        <tr style="font-family: Times New Roman">  
          <td style="border-style: none; background-color: #496277; " valign="top" class="auto-style6">  
            <input type="radio" data-dojo-type="dijit/form/RadioButton" name="uilanguage" id="radioOne" checked value="English"/><label for="radioOne">English</label><br />  
            <input type="radio" data-dojo-type="dijit/form/RadioButton" name="uilanguage" id="radioTwo" value="العربية"/><label for="radioTwo">العربية</label>  
          </td>  
          <td align="left" style="border-style: none; background-color: #496277; height: 2%;" valign="top" class="auto-style3">  
          </td>  
        </tr>  
        <tr style="font-family: Times New Roman">  
          <td style="border-style: none;" valign="top" bgcolor="#496277" class="auto-style7">  
            <table id="Tablecontrols" style="border-color: #F2F0EE; font-size: 15px; z-index: 101;  
            background-color: #496277; width:auto; height: 274px; font-family: verdana; color: tomato; font-weight: bold; border-top-style: none;" align="left">  
              <tr style="font-family: Times New Roman">  
                <td rowspan="1" valign="top" height="10px" class="auto-style1">  
                </td>  
                <td rowspan="1" style="border-style: none;" valign="top" height="10px">  
                </td>  
              </tr>  
              <tr style="font-family: Times New Roman">  
                <td rowspan="1" style="font-weight: bold; " valign="top" height="10px" class="auto-style1">  
                </td>  
                <td rowspan="1" style="border-style: none;" valign="top" height="10px">  
                </td>  
              </tr>  
              <tr style="font-family: Times New Roman">  
                <td style="font-weight: bold; " valign="top" height="10" class="auto-style1" colspan="2">  
                </td>  
              </tr>  
              <tr style="font-family: Times New Roman">  
                <td style="font-weight: bold; text-align: center; " valign="top" class="auto-style2">  
                  <button dojotype="dijit/form/Button" id="LnkLastPosition" style="font-family: Arial; font-size: x-small; font-weight: normal">  
                    Last Position</button>  
                </td>  
                <td style="border-style: none; text-align: center;" valign="top" class="auto-style3">  
                  <button dojotype="dijit/form/Button" id="LnkTracking" style="font-family: Arial; font-size: x-small; font-weight: normal">  
                    Tracking</button>  
                </td>  
              </tr>  
              <tr style="font-family: Times New Roman">  
                <td colspan="2" rowspan="1" style="border-top: 2px solid #547289; border-bottom: 2px solid #547289; font-weight: bold;  position: static;  
                    height: 100%; text-align: left; width: 30%; border-left-width: 2px; border-right-width: 2px;" valign="top" align="left">  
                  <div id="Something"></div>  
                  <div style="width: 300px; height: 356px; overflow: scroll"></div>  
                </td>  
              </tr>  
            </table>  
          </td>  
          <td style="border-style: none; background-color: white;  width: 100%; height:100%;" valign="top" id="td11">  
            <div id="mapDiv"  dojotype="dijit/layout/ContentPane" region="center" style="border:1px solid #000; visibility: visible; height: 100%;">  
              <div style="position:absolute; right:50px; top:100px; z-Index:99;">  
                <button id="dropdownButton" label="Basemaps" data-dojo-type="dijit/form/DropDownButton">  
                  <div data-dojo-type="dijit/Menu" id="bingMenu">  
                    <!--The menu items are dynamically created using the basemap gallery layers-->  
                  </div>  
                </button>  
              </div>  
            </div>  
            <!--<asp:Image  ImageUrl="Images/tareeq Logo1.jpg" ID="esriLogoImage" Height="495px" style="margin-right: 36px" Width="100%" />-->  
            <div id="DivesriLogoImage"  style="background-color: #FFFFFF; width: 80%; height:99.8%; visibility: hidden; position: absolute; top: 72px;" align="center">  
              <!--<asp:Image  ID="esriLogoImage" ImageAlign="Middle" Height="564px" />-->  
            </div>  
          </td>  
        </tr>  
      </table>  
    </div>  
  </form>  
</body>  

</html>  

0 ответов

Другие вопросы по тегам