arcgis server 学习(二)添加动态渲染层
2008-11-14 00:31
183 查看
添加动态渲染层分为三步
1.定义一个MapResource类型变量,用来往里面添加动态层
2. 定义一个GraphicLayer,并将存储有需要渲染的地图要素的数据表类型为DataTable的变量转化为GraphicLayer类型,并指定颜色样式
3.将转化后的GraphicLayer添加到步骤1中定义的数据源中,刷新地图。
1 public void showGraphic(Map map1, string mapResourceName,DataTable dt)
8 {
9 System.Collections.IEnumerable enumFunc = map1.GetFunctionalities();
//添加一个地图数据源,动态层将添加到这个数据源中
MapResource mapResource = null;
//遍历地图控件的fuanctionality,找到需要的数据源,转化为MapResource类型
foreach (IGISFunctionality func in enumFunc)
{
if (func.Resource.Name == mapResourceName)
mapResource =(Graphics.MapResource) func.Resource;
//清楚原有数据,如果此处不清除原有数据,每次渲染将保留以前的数据
mapResource.Graphics.Tables.Clear();
}
if (mapResource == null)
return;
//将传进来的DataTable参数转化为GraphicLayer
ESRI.ArcGIS.ADF.Web.Display.Graphics.GraphicsLayer graphicLayer = null;
graphicLayer = Converter.ToGraphicsLayer(dt, Color.Yellow, Color.Green);
//将转化后的GraphicLayer添加到地图数据源中
mapResource.Graphics.Tables.Add(graphicLayer);
//地图刷新
if (map1.ImageBlendingMode == ImageBlendingMode.Browser)
{ map1.Refresh(); }
else if(map1.ImageBlendingMode==ImageBlendingMode.WebTier)
{
map1.RefreshResource(mapResource.Name);
}
}
1.定义一个MapResource类型变量,用来往里面添加动态层
2. 定义一个GraphicLayer,并将存储有需要渲染的地图要素的数据表类型为DataTable的变量转化为GraphicLayer类型,并指定颜色样式
3.将转化后的GraphicLayer添加到步骤1中定义的数据源中,刷新地图。
1 public void showGraphic(Map map1, string mapResourceName,DataTable dt)
8 {
9 System.Collections.IEnumerable enumFunc = map1.GetFunctionalities();
//添加一个地图数据源,动态层将添加到这个数据源中
MapResource mapResource = null;
//遍历地图控件的fuanctionality,找到需要的数据源,转化为MapResource类型
foreach (IGISFunctionality func in enumFunc)
{
if (func.Resource.Name == mapResourceName)
mapResource =(Graphics.MapResource) func.Resource;
//清楚原有数据,如果此处不清除原有数据,每次渲染将保留以前的数据
mapResource.Graphics.Tables.Clear();
}
if (mapResource == null)
return;
//将传进来的DataTable参数转化为GraphicLayer
ESRI.ArcGIS.ADF.Web.Display.Graphics.GraphicsLayer graphicLayer = null;
graphicLayer = Converter.ToGraphicsLayer(dt, Color.Yellow, Color.Green);
//将转化后的GraphicLayer添加到地图数据源中
mapResource.Graphics.Tables.Add(graphicLayer);
//地图刷新
if (map1.ImageBlendingMode == ImageBlendingMode.Browser)
{ map1.Refresh(); }
else if(map1.ImageBlendingMode==ImageBlendingMode.WebTier)
{
map1.RefreshResource(mapResource.Name);
}
}
相关文章推荐
- ios开发runtime学习三:动态添加方法(实际应用少,面试)
- Hadoop学习记录(5)|集群搭建|节点动态添加删除
- Android学习--动态向SPinner控件中添加数据
- 萌新的Python学习日记 - 爬虫无影 - 添加headers抓取动态网页内容:TripAdvisor(上)
- Flex个人使用总结:ClassFactory,动态为DataGird添加渲染列
- iOS学习之动态添加Button和监听UIAlertView按钮
- Android学习探索之App多渠道打包及动态添加修改资源属性
- vue v-html动态添加 html 内容渲染,事件失效(无法从新渲染)
- JS动态添加节点后渲染为EasyUI控件,EasyUI动态渲染解析解决方案
- 学习经历<EXCEL表的导入,动态添加ODBC>
- jQuery Mobile动态添加数据后渲染视图
- JS动态修改页面EasyUI datebox不生效、EasyUI动态添加Class、EasyUI动态渲染解析解决方案
- IOS学习之动态添加Button和监听UIAlertView按钮
- Android学习一——动态添加组件与删除,可见性设置,imagebutton简单使用
- C#开发学习笔记:Dev控件库的TreeList动态添加节点
- javascript学习笔记—表格的动态添加、删除,表格排序
- 动态创建对象,并渲染贴图,动态添加删除脚本
- XAudio2学习之动态添加删除Voice
- jquery学习记录一:jquery动态添加html元素后设置其绑定事件
- Jquery学习-用Jquery添加一个按扭后无法动态对该按扭实行监听解决方法