ArcGIS Api for js之縮放至圖層


///----------------------------------------------------------
//前置條件:地圖全局變量的名稱為map
//功能:對行政區划地圖中的縣城圖層
//      查詢當前操作的縣城
//      通過查詢,使當前地圖視圖為該縣城的范圍,達到縮放至圖層的效果
require(["dojo/parser",
    "dijit/registry",
    'dojo/on',
    "dojo/dom",
    "esri/map",
    "esri/layers/ArcGISDynamicMapServiceLayer",
    "esri/tasks/FindTask",
     "esri/tasks/FindParameters",
    "esri/symbols/SimpleLineSymbol",
    "esri/symbols/SimpleFillSymbol",
    "esri/graphic",
    "dojo/domReady!"],
   function (parser, registry, on, dom, Map, ArcGISDynamicMapServiceLayer, FindTask, FindParameters, SimpleLineSymbol, SimpleFillSymbol) {
       //parser.parse();
       var findTask = new FindTask("http://localhost:6080/arcgis/rest/services/henan/MapServer");
       var FindParameters = new FindParameters();
       var xzFieldName = ["xxx"];//字段名稱
       var xzFieldValue = "xxxx";//縣名       
       on(dom.byId("BtnSetExtent"), "click", FindByField);

       //對字段進行查詢
       function FindByField() {
           FindParameters.returnGeometry = true;
           FindParameters.layerIds = [0];
           FindParameters.searchFields = xzFieldName;
           FindParameters.searchText = xzFieldValue;
           findTask.execute(FindParameters, ShowFindResult);
           //alert("3");
       }
       //屬性查詢結果處理
       function ShowFindResult(queryResult) {
           if (queryResult.length > 0) {
               var feature = queryResult[0].feature;//[0].feature;

               //創建線符號
               var lineSymbol = new SimpleLineSymbol(SimpleLineSymbol.STYLE_SOLID, new dojo.Color([54, 141, 58]), 2);
               //創建面符號
               var fill = new SimpleFillSymbol(SimpleFillSymbol.STYLE_NULL, lineSymbol);
               //賦予相應的符號
               feature.setSymbol(fill);
               pMap.graphics.clear();
               pMap.graphics.add(feature);
               var sGeometry = feature.geometry;
               var ftGeoExt = sGeometry.getExtent();
               
               pMap.setExtent(ftGeoExt);
               
           }
       }
   });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM