现在的位置: 首页 > 综合 > 正文

ArcGis for wpf 符号渲染

2013年05月06日 ⁄ 综合 ⁄ 共 629字 ⁄ 字号 评论关闭

    适用于arcgis api for silverlight/wpf

    都知道ArcGis是个灰常不错滴东东,最近做项目的也在用这个,不多说了,描述一下需求:

    要求:根据数据标识在gis上以不同的图标进行渲染,且组合方式很多。使用wpf实现

    arcgis默认是以点的方式进行数据渲染的,下面是官方的截图,喵的这个点与地图太靠色,不太好看。

    额,当然arcgis是"无所不能"滴,数据是可以以其它方式进行渲染,如下图

    但呈现的比较单一就是说只是根据一个标识进行呈现,如此地图人口密度大于1万使用A符号,大于10万使用B符号诸如此类。但需求要求在一个符号上呈现多种形态,显然使用arcgis提供的基础功能是不能实现滴,只有自己想办法了。

原来想是把所有的组合都定义成资源,然后在程序中判断标识,满足条件就加载相应的符号,但由于组合太多老纸不想这么写,所以果断放弃。

    由于服务返回的数据是Graphic的集合,可以附加数据属性,所在我在客户端加载出Graphic时自定了几个属性,然后根据标识条件更改属性的值,最后加载统一的符号模版即可实现。下图是Graphic的渲染模版,红框中是在客户端自定义的属性。

 GisGraphicsLayer.Renderer = App.Current.TryFindResource("BtsIcoRenderer") as IRenderer;

最终在gis上呈现的渲染效果如下图,这种方式类似于插件,可随时更换或增加。

抱歉!评论已关闭.