arcgis api for silverlight

简介: 原文 http://blog.sina.com.cn/s/blog_4638cf7b0100wntt.html arcgis api for silverlight(1) (2011-09-21 09:09:26) 转载▼ 标签: 杂谈 分类: 技术 发现了一个很好的学习工具,就是Esri的在线帮助,包括概念,例子,API介绍等等。

原文 http://blog.sina.com.cn/s/blog_4638cf7b0100wntt.html

arcgis api for silverlight(1)

(2011-09-21 09:09:26)
标签:

杂谈

分类: 技术

发现了一个很好的学习工具,就是Esri的在线帮助,包括概念,例子,API介绍等等。接下来的学习基本上就是按照例子结合开发方案进行实践学习。

http://help.arcgis.com/en/webapi/silverlight/samples/start.htm

程序的构成 和asp.net结构类似,前台设计代码+后台程序代码。

Xaml+Xaml.cs

Xaml包括控件的引用、设计表格的代码、控件的设置和数据绑定代码。

Xaml则是C#程序代码。

 

首先学习加载图层,添加控制控件。

加载图层服务是在Xaml中添加的,放在代码最下端的是在最上端显示的。图层服务的显示可以在后台程序中控制

可以添加一些控制控件,navigation(导航控件)、scaleLine(比例尺)、mapProgressBar(进度条),直接链接map就可以,非常方便。

 

实际上map控件加载的是server发布的一个地图服务。

图层加载服务有三种:

TiledMap 缓存切片地图服务 适用于在服务器已经做了缓存的地图
DynamicMap 动态地图服务 适用于没做缓存的地图

Image 影像服务

它们都属于MapServer。

FeatureLayer则不是加载服务,而是加载某一个确切的图层。属于graphics layer

在Featurelayer里,加载"Renderer"可以制定矢量要素的各种形状及鼠标的形状。

<Grid.Resources>
   <esri:SimpleRenderer x:Key="SelectRenderer">
    <esri:SimpleRenderer.Symbol>                             //client.SimpleRenderer.Symbol

    <esri:SimpleMarkerSymbol Color="#7F0F2497" Size="20"/>   //制定点的形状

    </esri:SimpleRenderer.Symbol>
  </Grid.Resources>

 

尝试了利用FeatureDataGrid显示加载的图层属性数据。但是却显示数据总数,不显示数据,后来对照源代码好像是AutoGenerateColumns选项没选上。

显示鼠标坐在地理真实坐标,需要首先获取鼠标屏幕坐标,再利用map1.ScreenToMap获取真实坐标。

 

arcgis api for silverlight(2)

(2011-09-22 16:49:07)
标签:

杂谈

分类: 技术

通过表格查找要素并且显示属性和高亮地图显示

关键接口:

ESRI.ArcGIS.Client.Tasks.QueryTask 用于查询

QueryTask queryTask = new QueryTask("http..."); 设置查询图层服务

queryTask.ExecuteAsync(query); 执行查询语句

queryTask.ExecuteAsync(query,"user state"); 执行查询语句并带用户状态

ESRI.ArcGIS.Client.Tasks.Query 用于设置查询条件

Query.text 设置查找文本

Query.Where 设置查找条件

Query.Outfield.AddRange or Query.Outfield.Add 设置查询输出字段

Query.OutSpatialReference 设置查询输出控件参考

Query.ReturnGeometry 设置输出要素是否包含集合体

 

datagrid数据绑定:

分两种:一种是横排显示,一种是竖排显示

竖排显示首先在Xaml中要首先设置列字段数据绑定

<Datagrid columns>

<sdk:datagrid.textcolumn Binding="{binding path=key}">//字段

<sdk:datagrid.textcolumn Binding="{binding path=value}">//值

在后台代码中:

dataGrid.ItemsSource = selectedFeature.Attributes;//绑定选择要素的属性

横排显示需要在Xaml中设置列字段数据绑定

<Datagrid columns>

<sdk:datagrid.textcolumn Binding="{binding attributes[]}">//绑定

在后台代码中:

 Binding resultFeaturesBinding = new Binding("LastResult.Features");//绑定属性
resultFeaturesBinding.Source = queryTask;//绑定来源
dataGrid1.SetBinding(DataGrid.ItemsSourceProperty, resultFeaturesBinding);//绑定

在地图中高亮显示:

首先在Xaml中添加图层<esri:GraphicsLayer ID="MyGraphicsLayer" />

再在后台程序中:

GraphicsLayer selectionGraphicslayer = map1.Layers["MySelectionGraphicsLayer"] as GraphicsLayer;

graphicsLayer.Graphics.Add(selectedFeature);//绑定要素图层标记

通过点击图层查找要素并且显示属性和高亮地图显示

定义鼠标勾画结束事件

private void MyDrawFace_DrawComplete (object sender, ESRI.ArcGIS.Client.DrawEventArgs args)
{

QueryTask queryTask = new QueryTask("http:“);//定义查找数据源

query.Geometry = args.Geometry;//定义查找图形

queryTask.ExecuteAsync(query);执行查找

}

在地图中高亮显示多个要素:

foreach (Graphic feature in featureSet.Features)
{
graphicsLayer.Graphics.Insert(0, feature);
}

arcgis api for silverlight(3)发布

(2011-10-11 08:52:52)
标签:

杂谈

分类: 技术
  1. win7的IIS配置。win7默认的IIS是7.5.
  2. silverlight程序发布,比较简单,在vs2010下,右键单击Web工程后点击发布即可。
  3. 设置IIS,首先新建网站,然后在新建网站上添加应用程序,路径设置为工程所在文件夹,应用程序池选择asp.net4.0。
  4. arcgis api for silverlight程序获取Server服务,在服务器的IIS目录下,必须放置这两个文件(crossdomain.xml和clientaccesspolicy.xml)?跨域访问文件
  5. 防火墙一定要关闭或者设置好。
  6. webconfig,加默认文档前要加<clear />。
目录
相关文章
|
6月前
|
人工智能 数据可视化 API
ArcGIS API for Python
ArcGIS API for Python
33 0
|
10月前
|
JavaScript 前端开发 应用服务中间件
Arcgis api for javascript 详细部署
Arcgis api for javascript 详细部署
|
12月前
|
人工智能 数据可视化 数据管理
ArcGIS API for Python
ArcGIS API for Python
76 0
|
JavaScript 前端开发 定位技术
ArcGIS API For JavaScript官方文档(六)之设置范围
ArcGIS API For JavaScript官方文档(六)之设置范围
|
存储 JSON 前端开发
ArcGIS API For JavaScript官方文档(一)之默认API配置
ArcGIS API For JavaScript官方文档(一)之默认API配置
|
数据可视化 数据管理 API
​​​​​​​ARCGIS API for Python进行城市区域提取
​​​​​​​ARCGIS API for Python进行城市区域提取
​​​​​​​ARCGIS API for Python进行城市区域提取
arcgis api 3.X 修改自带弹窗样式 2022年6月12日
自带的弹窗介绍: arcgis api 3.X 修改自带弹窗样式插图 /*修改原有弹窗的css样式*/ /* 弹窗整体 */ .esriPopup { font-size: 16px; box-shadow: 10px 10px 5px #888888; } .esriPopup .sizer { position: relative; width: 400px; /* 弹窗宽度 */ z-index: 1; } /* 标题部分 */ .esriPopup .titlePane { background-color: rgba(7
|
JSON JavaScript API
geoserver图层属性查询及查询结果转换为arcgis js api能使用的格式
一个项目使用了ArcGIS JS API开发GIS展示层,但GIS服务使用了Geoserver,这时加载Geoserver数据和查询数据就和之前完全不一样了,以下介绍下我使用ArcGIS JS API+Geoserver开发过程中解决Geoserver图层属性查询的一个方案。
1245 0
|
JavaScript 前端开发 数据可视化
ArcGIS API for JavaScript 4.10 重大更新,强势来袭!
ArcGIS API for JavaScript 4.10 版引入了大量新功能,并对原有功能进行了增强: 引入了一种新的建筑图层类型BuildingSceneLayer,用于可视化BIM数据; 新增众多微件,如3D剖切、草图绘制、二维面积和距离测量、改善编辑工作流的FeatureTemplates微件等; 地图中的所有图层均可使用WebGL进行绘制,从而提升渲染性能; 通过更高性能的 WebStyleSymbols增强了3D体验; 还有诸多精彩变化,下文将为您一一呈现。
2549 0
|
JavaScript 前端开发 应用服务中间件
离线部署ArcGIS API for Javascript
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bitree1/article/details/58611551 1.
1452 0

热门文章

最新文章