前言:

查看arcgis sl api 老版本帮助的方式:http://resources.arcgis.com/en/help/silverlight-api/3.0/xxxxxxx

新版本的帮助默认不带版本号/3.0/这一节,如果要查看老版本的帮助需要再新版本的帮助的连接上增加版本号即可查看。

前些日子在arcgis 10.1推出后不久 sl api更新到了3.1 下面就3.1的变化进行说明:

1.支持 vs2012 ,增加vs2012项目模板

2.更新版本号为10.1.1 对应桌面版本,不再使用3.x的命名方式

3.增强Locator Class 新增了FindAsync 方法。支持 arcgis online的世界地址编码服务(http://geocode.arcgis.com)

类似Geoprocessor的GetResultMapServiceLayer方法一样,arcgis sl api 原来的异步模型都是 先提交 然后 触发完成事件  然后获取 然后触发获取完成事件

从3.0开始 部分异步替换成这种逻辑 提交 提交完成事件 获取结果 取消了原来的获取+获取完成事件的方式。FindAsync也是简化了原来的方法交互

ArcGIS Online提供了地理编码服务(http://geocode.arcgis.com),支持单线路地理编码,以及文本搜索的兴趣点,如企业和地标,根据输入位置、范围,或国家进行过滤。在API中,Locatortask已经增强,支持额外的方法,处理程序、输入和结果类型进行查找操作。服务也支持传统的地理编码,如地址转位置和位置转地址,和批量地理编码。

注意:批量编码需要ArcGIS Online的账户。

tring locatorUrl = "http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer";

Locator locatorTask = new Locator(locatorUrl);
locatorTask.FindCompleted += (s, e) =>
{
LocatorFindResult locatorFindResult = e.Result;
foreach (Location location in locatorFindResult.Locations)
{
// add to graphics/table
}
}; LocatorFindParameters locatorFindParams = new LocatorFindParameters()
{
Text = "Walmart",
Location = MyMap.Extent.GetCenter(),
Distance = MyMap.Extent.Width / 2,
MaxLocations = 5,
OutSpatialReference = MyMap.SpatialReference
}; locatorFindParams.OutFields.AddRange(
new string[]{"Score", "Distance", "Type", "Rank"}); locatorTask.FindAsync(locatorFindParams);

4.全面支持arcgis portal api(ArcGISPortalItem class)

增强了支持ArcGIS Portal API关注组织,和向门户中的项目分享信息分享信,改变门户项目的分享状态,得到用户使用的标签信息,Portal发布服务的清单助手。

使用ArcGISPortalItem.GetGroupsAsync 获取包含作为一个成员和当前用户可以访问到的门户项目的组织。使用e ArcGISPortalItem.GetSharingInfoAsyn 来获取一个项目被分享的详细信息,作为一个补充,您可以使用ArcGISPortalItem.ShareAsync和UnshareAsync来改变一个项目是如何的分享,使用ArcGISPortalUser.GetUserTagsAsync来决定什么标签被用来作为关键字,以及标签被当前用户使用多少次。

5.新的ArcGISWebClient class 用来处理 web requests

在与arcgis server通信,用来代替Microsoft System.Net.WebClient这个类,使用跟简便。例如soe情况下。

ArcGISWebClient类被用来创建和管理原始的Web请求,以优化使用ArcGISServer,ArcGIS Online,以及Portalfor ArcGIS,这个类根据Web请求的长度被用来在GET和POST请求之间切换、使用GZIP压缩下载,处理ArcGIS Server的解码错误,使用IdentityManager来访问安全的资源,禁用客户端缓存,设置代理,这个类是能够良好地与ArcGIS 资源交互,比如在ArcGISServer站点检索服务的列表,、与SOE交互,发布数据到门户。

6.新的 CsvLayer 图层 支持.csv文件

一个csv文件包含的文本用定界符来分隔作为数据,一般使用逗号,数据可以包括位置信息,比如x,y 坐标值,CsvLayer 类让添加包括地理信息的文本文件到地图上作为要素图层变的容易,一组属性可以被定义为表示数据如何存储,比如XFieldName,YFieldName,以及ColmnDelimiter,你可以选择性第限制可利用的字段源,可以使用SourcespatialReference来定义空间参考,

<esri:CsvLayer
Url="http://earthquake.usgs.gov/earthquakes/feed/csv/1.0/hour"
Renderer="{StaticResource MySimpleRenderer}">
<esri:CsvLayer.MapTip>
<TextBlock Text="{Binding [Magnitude]}" />
</esri:CsvLayer.MapTip>
</esri:CsvLayer>

7.OpenStreetMapLayer 支持自定义的 瓦片服务

OpenStreetMap提供了一个使用许多数据提供商主机映射数据作为缓存的瓦片的标准。OpenStreetMapLayer接受用来检索瓷砖地图瓦片服务器的列表, 您可以包含一个以上瓦片服务器跨越多个站点请求传播切片请求

<esri:Map x:Name="MyMap">
<esri:OpenStreetMapLayer ID="osmLayer">
<esri:OpenStreetMapLayer.TileServers>
<sys:String>http://otile1.mqcdn.com/tiles/1.0.0/osm</sys:String>
<sys:String>http://a.tile.openstreetmap.org</sys:String>
<sys:String>http://a.tile.opencyclemap.org/cycle</sys:String>
</esri:OpenStreetMapLayer.TileServers>
</esri:OpenStreetMapLayer>
</esri:Map>

8 其他增强

 

l 新的FeatureLayerInfo属性 比如DefaultVisibility, EffectiveMaxScale, EffectiveMinScale, TimeInfo,和 TimeReference.

l 根据JSON文件来创建FeatureLayerInfo和Geometry,以及把FeatureLayerInfo 、Geometry转化为JSON格式。

l Geometry.GetResolution 提供一个方便地讲比例尺转化为分辨率的方法。

l 支持基于权限启用来允许他人查询要素服务

l IdentityManager支持ArcGIS Portal for ArcGIS以及ArcGIS Server站点的联合令牌机制。

l IdentityManager 支持原生平台验证的安全服务。

l 对Web Map支持的增强,比如一个图层的最大,最小比例尺。

l WebMap 的图层的Popup窗口的字段中,支持超链接的描述字段

9 变更

Web Map 要素集合作为一个GroupLayer来返回,要素集合是有Web Map中的一个或者多个图层组成的,它们可以被作为可编辑的图层创建,或者来自CSV文件,GPX文件,以及SHP文件,当一个要素集合被展现在Web Map时,ArcGIS Runtime SDK for WindowsPhone 返回要素集合作为一个GroupLayer来匹配WebMap的结构。

OpenStreetMapLayer中Osmarender风格地图被移除,在枚举OpenStreetMapLayer.MapStyle中不在有Osmarende。

10 废弃

  GraphicsLayer.ClearGraphiocs方法不再被公开。用GrapicsLaye.Graphics.Clear() 来完成原来的功能。

arcgis api for silverlight 3.1 更新说明的更多相关文章

  1. ArcGIS API for Silverlight 当DataGrid选中项时,地图聚焦弹出窗口,并可以播放音频文件

    原文:ArcGIS API for Silverlight 当DataGrid选中项时,地图聚焦弹出窗口,并可以播放音频文件 先看效果图,然后上代码: <UserControl x:Class= ...

  2. ArcGIS API for Silverlight 实现修改地图上的工程点位置

    原文:ArcGIS API for Silverlight 实现修改地图上的工程点位置 #region 处理工程点点击编辑相关事件 public Graphic editgraphics = null ...

  3. ArcGIS API for Silverlight 调用GP服务加载等值线图层

    原文:ArcGIS API for Silverlight 调用GP服务加载等值线图层 第二篇.Silverlight客户端调用GP服务 利用ArcGIS API for Silverlight实现G ...

  4. 使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示

    原文:使用Visifire+ArcGIS API for Silverlight实现Graphic信息的动态图表显示 首先来看一看实现的效果: PS:原始的程序中更新曲线数据时添加了过渡的效果,具体可 ...

  5. ArcGIS api fo silverlight学习一(silverlight加载GeoServer发布的WMS地图)

    最好的学习资料ArcGIS api fo silverlight官网:http://help.arcgis.com/en/webapi/silverlight/samples/start.htm 一. ...

  6. ArcGIS API for Silverlight动态标绘的实现

    原文:ArcGIS API for Silverlight动态标绘的实现 1.下载2个dll文件,分别是: ArcGISPlotSilverlightAPI.dll 和 Matrix.dll 其下载地 ...

  7. ArcGIS API for Silverlight地图加载众多点时,使用Clusterer解决重叠问题

    原文:ArcGIS API for Silverlight地图加载众多点时,使用Clusterer解决重叠问题 问题:如果在地图上加载成百上千工程点时,会密密麻麻,外观不是很好看,怎么破? 解决方法: ...

  8. ArcGIS API for Silverlight 调用WebService出现跨域访问报错的解决方法

    原文:ArcGIS API for Silverlight 调用WebService出现跨域访问报错的解决方法 群里好几个朋友都提到过这样的问题,说他们在Silverlight中调用了WebServi ...

  9. ArcGIS API for Silverlight 调用GP服务绘制等值面

    原文:ArcGIS API for Silverlight 调用GP服务绘制等值面 GP服务模型如下图: 示例效果图片如下:

随机推荐

  1. 认识CSS中盒子模型

    前端之HTML,CSS(六) CSS 盒子模型 CSS中的重点,理解盒子模型对于CSS才能有更清晰的认识.网页说简单一点其实就是一块一块的拼接出来的,可以想象成拼图,所有图块拼接在一起就成了一幅图像. ...

  2. 基于JQuery easyui,gson的批量新增/修改和删除-servlet版

    最近项目需要用到在页面进行批量操作,做了一些这方面的学习,参照网上的资料写了个小例子,记录一下: 准备 引入gson-2.6.2.jar,这里使用gson而不使用json-lib,原因是json-li ...

  3. golang bufio.Scanner

    一, 我们一般会这么用,接收 标准输入的东西: scanner := bufio.NewScanner(os.Stdin) for scanner.Scan() { fmt.Println(scann ...

  4. Ubuntu下配置安装Hadoop 2.2

    ---恢复内容开始--- 这两天玩Hadoop,之前在我的Mac上配置了好长时间都没成功的Hadoop环境,今天想在win7 虚拟机下的Ubuntu12.04 64位机下配置, 然后再建一个组群看一看 ...

  5. webpack查缺补漏

    webpack是模块化打包工具,通过webpack,可以使得我们更加方便地组织代码.压缩.转译等等. 但是学习webpack也需要一定的成本,这里记录使用webpack许久以来一些模糊的知识点,方便以 ...

  6. xamarin RunOnUiThread

    One of the keys to maintaining a responsive GUI is to do long-running tasks on a background thread s ...

  7. React 同构开发(一)

    为什么要做同构 要回答这个问题,首先要问什么是同构.所谓同构,顾名思义就是同一套代码,既可以运行在客户端(浏览器),又可以运行在服务器端(node). 我们知道,在前端的开发过程中,我们一般都会有一个 ...

  8. OpenGL6-纹理动画

    代码下载 #include "CELLWinApp.hpp"#include <gl/GLU.h>#include <assert.h>#include & ...

  9. 关于80286——《x86汇编语言:从实模式到保护模式》读书笔记15

    一.80286的工作模式 80286首次提出了实模式和保护模式的概念. 实模式:和8086的工作方式相同: 保护模式:提供了存储器管理机制和保护机制,支持多任务. 二.80286的寄存器 (一)通用寄 ...

  10. Centos7 安装mysql教程

    参考原文:http://www.centoscn.com/mysql/2016/0315/6844.html 环境 CentOS 7.1 (64-bit system) MySQL 5.6.24 Ce ...