ArcGIS For JavaScript API 默认参数及示例
来源:互联网 发布:java jdbc查询数据库 编辑:程序博客网 时间:2024/05/29 17:55
查看原文:http://www.ibloger.net/article/1805.html
引用参考API:http://help.arcgis.com/en/webapi/javascript/arcgis/help/jshelp_start.htm
注:“esri.config”的是在1.3版中的的“esriConfig”的替代品。如果您使用的是1.2或更低的版本,您应该参阅默认API v1.2和更低的配置。对于版本1.3或更高版本,您可以使用“esri.config”在地方的“esriConfig”。虽然“esriConfig”可以继续使用,与1.3版本,您应该更新您的应用程序,而不是使用“esri.config”。
ArcGIS的JavaScript API中有一些默认的配置,可以被重写编程。
例如:
var zoomSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID,
new esri.symbol.SimpleLineSymbol(
esri.symbol.SimpleLineSymbol.STYLE_DASHDOT,newdojo.Color([ 0, 0, 255 ]),0.5 ]));
esri.config.defaults.map.zoomSymbol = zoomSymbol.toJson();
下面的列表中包含的的默认JavaScript API配置。
(1)esri.config.defaults.io.alwaysUseProxy 不论怎样都使用代理: 默认:false
esriConfig.defaults.io.alwaysUseProxy = true;
(2)esri.config.defaults.io.corsEnabledServers 添加到这个数组中启用跨域资源共享的服务器的URL。跨域资源共享(CORS)的Web应用程序可以绕过浏览器的同一原产地政策文件和访问资源或服务在不同的服务器/域。当Web服务器和浏览器的支持CORS,esri.request将不会使用代理执行跨域请求。 API提供了一些默认情况下,ESRI的服务器,所以重要的是要推到这个数组,而不是覆盖它的项目。
(3)esri.config.defaults.geometryService 指定默认的几何服务所使用的部件和操作。 (2.2)
esri.config.defaults.geometryService = new esri.tasks.GeometryService(<输入几何服务网址>);
(4)esri.config.defaults.io.proxyUrl 发布时,应使用大型有效载荷的端点代理URL的位置。这必须位于同一个域中的HTML应用程序。 默认:null
esriConfig.defaults.io.proxyUrl = "/arcgisserver/apis/javascript/proxy/proxy.ashx";
(5)esri.config.defaults.io.timeout 每个通过esri.request要求最多允许60秒的时间。如果没有响应返回或返回一个服务器端错误,
esri.Error和错误返回处理程序被调用时的顺序。 (1.3) 默认:60秒
(6)esri.config.defaults.map.panDuration 时间长度(以毫秒为单位),该地图将采取平移程度。默认:350
(7)esri.config.defaults.map.panRate 时间长度(以毫秒为单位),地图上会刷新,因为它平移到下一个区。默认:50
(8)esri.config.defaults.map.slider 参数定义的滑动件的位置,大小和方向。
默认: {left:"30px",top:"30px",width:null,height:"200px"}
(9)esri.config.defaults.map.sliderLabel 定义的参数的滑块刻度和相应的Tick标志。如果为null,则滑块将显示刻度。
默认:Default: {tick:5,labels:null,style:"width:2em; font-family:Verdana; font-size:75%;"}
(10) esri.config.defaults.map.zoomDuration 时间长度,以毫秒为单位的地图放大程度。 默认:500
(11)esri.config.defaults.map.zoomRate 以毫秒为单位,把它放大到下一个地图会刷新的时间长度。默认:50
(12)esri.config.defaults.map.zoomSymbol SimpleFillSymbol使用代表的颜色,填充和轮廓属性的橡皮变焦。
这是JSON表示的SimpleFillSymbol。
默认:Default: {color:[0,0,0,64],outline:{color:[255,0,0,255],width:1.5,style:"esriSLSSolid"},style:"esriSFSSolid"}
示例(1)设置滑块位置:http://help.arcgis.com/en/webapi/javascript/arcgis/samples/mapconfig_orientation/index.html
默认情况下,滑块是垂直方向的缩放级别。您可以调整滑块水平方向上设置height属性的滑块为空。
- <!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>Map Slider Position and Height</title>
- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/dojo/dijit/themes/claro/claro.css">
- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/esri/css/esri.css" />
- <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.2"></script>
- <script type="text/javascript">
- dojo.require("esri.map");
- function init() {
- //配置地图滑块水平是在左下角的地方
- esri.config.defaults.map.slider = { left:"10px", bottom:"10px", width:"200px", height:null };
- var map = new esri.Map("map", {
- nav:false
- });
- map.addLayer(new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"));
- }
- dojo.addOnLoad(init);
- </script>
- </head>
- <body class="claro">
- 配置地图滑块的方向
- <div id="map" style="width:500px; height:500px; border:1px solid #000;"></div>
- </body>
- </html>
esriConfig.defaults.map.slider = { right:"10px", bottom:"10px", width:"200px", height:null };
示例(2)设置滑块的显示label值。http://help.arcgis.com/en/webapi/javascript/arcgis/samples/mapconfig_customlabels/index.html
此示例演示如何您可以标记的缩放级别滑块的尺度。此示例使用一个ArcGISTiledMapServiceLayer,,这意味着在特定的尺度层具有预渲染的地图瓦片缓存。你可以得到一个阵列的高速缓存从该层的tileInfo属性的尺度。这是如何在此示例中得到的标签。在下面的代码中,“lods(Levels of Detail——多细节层次)
var lods = layer.tileInfo.lods;
for (var i=0, il=lods.length; i<il; i++) {
labels[i] = lods[i].scale;
}在构建这个数组的规模水平,可以很容易地在esriConfig应用标签通过的sliderLabel.labels的属性
esriConfig.defaults.map.sliderLabel = {
...
labels: labels,
...
};
- <!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>Map Slider Labels</title>
- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/dojo/dijit/themes/claro/claro.css">
- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/esri/css/esri.css" />
- <style>
- /* 默认情况下,使地图的滑块标签是white, claro 使用black */
- .claro .dijitRuleLabel {
- color: white;
- }
- html,body,#map,.map.container{
- padding:0;
- margin:0;
- height:100%;
- }
- </style>
- <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.2"></script>
- <script type="text/javascript">
- dojo.require("esri.map");
- function init(){
- var layer = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer");
- if (layer.loaded) {
- initMap(layer);
- } else {
- dojo.connect(layer, "onLoad", initMap);
- }
- }
- function initMap(layer) {
- //自定义滑块标签
- //使用层的比例刻度显示滑块标签
- var labels = [];
- var lods = layer.tileInfo.lods;
- for (var i=0, il=lods.length; i<il; i++) {
- labels[i] = lods[i].scale;
- }
- esri.config.defaults.map.sliderLabel = {
- tick: 0,
- labels: labels,
- style: "width:2em; font-family:Verdana; font-size:65%; color:#fff; padding-left:2px;"
- };
- var initExtent = new esri.geometry.Extent({"xmin":-18902571,"ymin":-1995923,"xmax":1134936,"ymax":8022830,"spatialReference":{"wkid":102100}});
- var map = new esri.Map("map",{extent:initExtent});
- dojo.connect(map,'onLoad',function(){
- dojo.connect(window,'resize',map,map.resize);
- });
- map.addLayer(layer);
- }
- dojo.addOnLoad(init);
- </script>
- </head>
- <body class="claro">
- <div id="map"></div>
- </body>
- </html>
效果如下:
示例(3)自定义泛动画 http://help.arcgis.com/en/webapi/javascript/arcgis/samples/mapconfig_smoothpan/index.html
当用户点击平移按钮,您可以自定义动画行为。panDuration和panRate,确定了动画的持续时间和帧刷新速率,分别是Dojo的动画属性。这些特性都测量到250毫秒,默认为泛持续时间和25泛率。
- <!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>Map Pan Animation</title>
- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/dojo/dijit/themes/claro/claro.css">
- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/3.2/js/esri/css/esri.css" />
- <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=3.2"></script>
- <script type="text/javascript">
- dojo.require("esri.map");
- function init() {
- //设置地图泛动画变慢
- esri.config.defaults.map.panDuration = 1000; //以毫秒为单位;默认持续动画事件:250
- esri.config.defaults.map.panRate = 50; //刷新率的缩放动画,默认帧刷新速率:25
- var myExtent = new esri.geometry.Extent(-125, 28, -62, 45, new esri.SpatialReference({wkid:4326}));
- var map = new esri.Map("map", {nav:true, extent:esri.geometry.geographicToWebMercator(myExtent)});
- map.addLayer(new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer"));
- }
- dojo.addOnLoad(init);
- </script>
- </head>
- <body class="claro">
- Configure map zoom pan animation
- <div id="map" style="width:1024px; height:512px; border:1px solid #000;"></div>
- </body>
- </html>
效果如下:
- ArcGIS For JavaScript API 默认参数及示例
- ArcGIS For JavaScript API 默认参数及示例
- ArcGIS API for JavaScript
- 创建ArcGIS API for JavaScript的第一个示例程序
- ArcGIS API for JavaScript 离线地图调用源码示例功能
- ArcGIS API for JavaScript 4.5安装配置及测试
- arcgis api for JavaScript相关
- arcgis api for JavaScript相关
- ArcGIS API for Javascript热区图
- ArcGIS API for Javascript介绍
- ArcGIS API for JavaScript是什么
- ArcGIS API For JavaScript部署
- arcgis api for javascript去掉加载地图时默认的logo
- arcgis api for javascript v3.21加载天地图代码示例
- ArcGIS API for Javascript(中文版!!) 谁有啊。。。。。。。
- 关于ArcGIS API for JavaScript与Dojo
- 关于ArcGIS API for JavaScript与Dojo
- ArcGIS API for JavaScript 本地部署
- CSS3 弹性盒模型 display:flex
- 树莓派Android Things物联网开发:GitHub案例程序汇总
- Unity在模拟器上的黑苹果打包IOS碰到的问题
- [初学笔记] matlab中 switch和if 语句的区别和效率问题
- http://blog.csdn.net/iew0000/article/details/594271
- ArcGIS For JavaScript API 默认参数及示例
- cron表达式
- java.lang.StackOverflowError--解决方法
- iOS 11 导航栏按钮偏移问题
- 观光旅游最小环
- 最大子数组问题
- maven向本地仓库导入jar包命令
- Java并发编程之volatile关键字解析
- Apache Axis配置文件WSDD详解