1、關於Graphicjavascript
首先看張圖:html
這是整個Graphic涉及的一些類,上圖中的能夠進行客戶端點、線、面的表示。在服務器端的進行修改時applyEdits函數傳入的也是graphic,drawToolbar繪圖類也涉及到graphic,總而言之,graphic能夠視爲一個要素元素,感受更應該稱之爲圖形java
2、關於esriLang類的substitute(data, template?, first?)方法數據庫
返回一個字符串,data是數據,template是中佔位符模板api
一、模板的寫法跨域
HTML寫法服務器
var t = "<b>${NAME}</b><hr><b>2000 人口數量: </b>${POP2000:NumberFormat}<br>" + "<b>2000 人口密度: </b>${POP00_SQMI:NumberFormat}<br>" + "<b>2007 人口密度:</b>${POP2007:NumberFormat}<br>" + "<b>2007 人口密度: </b>${POP07_SQMI:NumberFormat}"; //attributes中的字段進行替換 var content = esriLang.substitute(evt.graphic.attributes, t);
該方法通常與infoTemplate類一塊用app
3、關於FeatureLayer加載服務函數
一、發佈的要素服務無 工具
二、地圖服務的單個圖層
4、關於TiledMapServiceLayer的子類
一、ArcGISTiledMapServiceLayer:用於訪問ArcGIS Server發佈的地圖切片服務
二、VETiledLayer:用於訪問微軟的Bing地圖,可是其 命名空間在3.25不在layer圖層下,在"esri/virtualearth/VETiledLayer"
三、OpenStreetMapLayer:用於訪問開放街道地圖(OSM)
四、WMTSLayer:用於訪問OGC標準的WMTS服務
五、WebTiledLayer:用於訪問非ArcGIS Server發佈的切片服務
5、esri/config模塊
ArcGIS API For JS有一些默認的配置,例如漫遊動畫時間、縮放持續時間、縮放刷新速度等,均可以經過該模塊進行控制。
使用示例:
esriConfig.defaults.map.panDuration = 1000; esriConfig.defaults.map.panRate = 50; esriConfig.defaults.map.zoomDuration = 1000; esriConfig.defaults.map.zoomRate = 50;
6、關於地圖的配置(寫成一個對象)
好處:開發人員容易配置,代碼不亂,更改服務更容易。
示例:
/* --------------------------------地圖初始信息配置-------------------------------- */ function MapConfig() { } MapConfig.mapInitParams = { fullExtent: {//全圖範圍 xmin: 121.29585473952106, ymin: 39.49550677343447, xmax: 123.05162192862765, ymax: 139.982938778863684 }, extent: {//初始化範圍 xmin: 120.8696333, ymin: 38.65953686, xmax: 123.6199347, ymax: 40.202622 }, spatialReference: {//地圖空間參考座標系 wkid: 4326 }, lods: [//針對瓦片的地圖服務的,用來控制瓦片級別的顯示,有時候切片級別太多的話,能夠只顯示部分的級別地圖 //resolution scale這些值的獲取參照發佈的切片地圖服務詳情 { "level": 0, "resolution": 0.00118973050291514, "scale": 500000 }, { "level": 1, "resolution": 5.9486525145757E-4, "scale": 250000 }, { "level": 2, "resolution": 2.3794610058302802E-4, "scale": 100000 }, { "level": 3, "resolution": 5.710706413992673E-5, "scale": 24000 }, { "level": 4, "resolution": 2.3794610058302804E-5, "scale": 10000 } ] } /*地圖調用*/ MapConfig.vecMapUrl = "http://localhost:6080/arcgis/r ... rcGIS動態服務 MapConfig.imgMapUrl = "http://localhost:6080/arcgis/r ... rcGIS切圖服務
7、Dojo類的代碼聲明示例
define(["dojo/_base/declare"], function (declare) { return declare("aClass", null, { mynum: 10, //聲明一個變量(在這個類裏是全局的) constructor: function (num) { //這個是構造函數,聲明類的實例時,傳的參數在這裏 console.log(num); //咱們讓聲明實例時,輸出他傳的參數 }, add: function (num1) { //類方法,調用類方法時,返回值是參數+10 return this.mynum + num1; //必須加this.mynum才能調用類內置的變量 }, getMynum: function () { //返回類內部的變量 return this.mynum; }, mynumAdd:function(){ this.mynum++; return this.mynum; } }) })
8、咱們在要發佈模型工具(插值、緩衝區、等值線、等值面等等)以前,爲何會要把輸入要素類型改爲輸入要素類?
當咱們使用查詢、地理處理和路徑分析的時候咱們經常將FeatureSet輸入和輸出參數。
FeatureSet:是要素類的輕量級的表示,至關於地理數據庫的一個要素類,是Feature(要素)的集合,FeatureSet的每一個Feature可能包含Geometry、符號、屬性、和一個InfoTemplate。若是FeatureSet不包含Geometry,只包含屬性,那麼FeatureSet能夠看做一個表,其中每一個Feature是一個行對象。
9、兩個修改要素方面的小部件
一、AttributeInspector
效果如上圖,點擊出現彈窗,進行要素的編輯修改,點我查看demo
二、FeatureTable
這個基本功能和上面差很少,點我查看demo
10、esri/config類
關於這個類主要設置地圖的默認配置即defaults,defaults 又分爲三個種類設置:
一、IO:這裏面涉及一些跨域等方面的設置
二、map:這裏面主要涉及一些地圖狀態參數設置
三、workers:AMD加載一些設置
四、kmlService:該參數默認爲空,具體什麼用還沒看懂
五、geometryService:該參數對於一些分析類的東西雖然有時候咱們沒法發佈咱們的模型,可是咱們能夠用online上面的,很是方便的。
使用示例:
esriConfig.defaults.map.panDuration = 1; // time in milliseconds, default panDuration: 350 esriConfig.defaults.map.panRate = 1; // default panRate: 25 esriConfig.defaults.map.zoomDuration = 100; // default zoomDuration: 500 esriConfig.defaults.map.zoomRate = 1; // default zoomRate: 25 esriConfig.defaults.geometryService = new GeometryService("https://utility.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer"); esriConfig.defaults.io.proxyUrl = "/proxy/"; esriConfig.defaults.io.alwaysUseProxy = false;
11、未完待續。。。。。