当前位置: 首页 > news >正文

做网站架构野狼seo团队

做网站架构,野狼seo团队,搜索引擎营销名词解释,网站开发赚钱方向在使用布局导图时,会遇到如下问题: 为了切换图层和导图方便,一般情况下,会把相关图层做成图层组。 在导图的时候,如果想要按照图层组进行分开导图,如上图,想导出【现状图、规划图、管控边界】3…

在使用布局导图时,会遇到如下问题:

为了切换图层和导图方便,一般情况下,会把相关图层做成图层组。

在导图的时候,如果想要按照图层组进行分开导图,如上图,想导出【现状图、规划图、管控边界】3张图,系统并没有方便的工具。

于是就自己做一个。


一、要实现的功能

 

如上图所示,在【综合应用】组—【制图相关】面板下,点击【按图层导出布局】工具。

在弹出的工具框中,分别输入参数:

1、导出图片的文件夹位置。有记忆功能,会保留上次你填入的路径。

【2、3】、2和3是配合使用的,点击2的下拉框,会列出当前地图的所有图层组和图层,但不包括图层组下的子图层。选择结果会添加到3中。

4、选择3中的选项,点击4,可以将其从3中移除。

5、选择布局视图。默认为工程中的第一个布局,可以修改。

6、图片类型。目前有3种可选。有记忆功能,会保留上次的选择。

7、图片分辨率。有记忆功能,会保留上次你填入的数据。

生成结果如下:


二、实现流程

核心代码如下:

首先需要将当前地图中所有图层的显示信息保存一下,因为工具运行结束后需要恢复图层显示。特别是当你的地图图层非常多的时候,这点尤为重要。

这里需要注意的是,有可能一个同名图层会放在不同的图层组中,如上面的【永久基本农田】就放在了2个图层组中,这里需要获取它的父对象,也就是图层组,一并保存下来。

// 获取当前所有图层显示信息
public static Dictionary<string, bool> GetLayerVisible()
{Dictionary<string, bool> dic = new Dictionary<string, bool>();// 获取当前地图Map map = MapView.Active.Map;// 获取所有要素图层var lys = map.GetLayersAsFlattenedList().ToList();foreach (var ly in lys){if (ly.Parent is Map){dic.Add(ly.Name, ly.IsVisible);}else{dic.Add($"{ly.Parent}+++{ly.Name}", ly.IsVisible);}}return dic;
}

然后获取列表框中选定的所有图层和图层组,进行打印。

这里关于布局导出的详细说明在之前的文章也有提到,就不再细说,注释也写得很清楚了。

foreach (string item in listBox_layer.Items)
{pw.AddProcessMessage(20, time_base, "导出图层:" + item);// 去掉标签string modifyLayer = item.Replace("【组】", "");// 获取layout Layout layout = layoutProjectItem.GetLayout();// 控制图层显示ToolManager.ControlLayer(modifyLayer);// JPG图片属性JPEGFormat JPG = new JPEGFormat(){HasWorldFile = true,Resolution = dpi,               // 分辨率OutputFileName = outputPath + @"\" + modifyLayer + @".jpg",      // 输出路径};// PNG图片属性PNGFormat PNG = new PNGFormat(){HasWorldFile = true,Resolution = dpi,               // 分辨率OutputFileName = outputPath + @"\" + modifyLayer + @".png",      // 输出路径};// PDF图片属性PDFFormat PDF = new PDFFormat(){OutputFileName = outputPath + @"\" + modifyLayer + @".pdf",      // 输出路径Resolution = dpi,               // 分辨率DoCompressVectorGraphics = true,   // 是否压缩矢量图形DoEmbedFonts = true,            // 是否执行嵌入字体         HasGeoRefInfo = true,             // 是否具有地理参考信息ImageCompression = ImageCompression.Adaptive,   // 图形压缩.自适应ImageQuality = ImageQuality.Best,           // 图形质量LayersAndAttributes = LayersAndAttributes.LayersAndAttributes   // 图层  属性};// 导出JPGif (pic_type == "jpg"){layout.Export(JPG);}// 导出PNGif (pic_type == "png"){layout.Export(PNG);}// 导出PDFif (pic_type == "pdf"){layout.Export(PDF);}
}

其中控制图层显示的方法如下:

// 图层(组)显示控制【选定显示,其它关闭】
public static void ControlLayer(string lyName)
{// 获取当前地图Map map = MapView.Active.Map;// 获取所有要素图层var lys = map.GetLayersAsFlattenedList().ToList();// 获取输入的指定图层var initLayer = map.GetLayersAsFlattenedList().FirstOrDefault(item => item.Name.Equals(lyName));foreach (var ly in lys){// 如果是指定的图层,或指定图层的子图层,就显示if (ly.Name == lyName || ly.Parent == initLayer){ly.SetVisibility(true);}else{ly.SetVisibility(false);}}
}

打印完成后,最后一步就是还原图层的显示信息,打印前是怎么显示的还怎么显示。

// 设置当前所有图层显示信息
public static void SetLayerVisible(Dictionary<string, bool> dic)
{// 获取当前地图Map map = MapView.Active.Map;// 获取所有要素图层var lys = map.GetLayersAsFlattenedList().ToList();foreach (var ly in lys){if (ly.Parent is Map){ly.SetVisibility(dic[ly.Name]);}else{string paName = $"{ly.Parent}+++{ly.Name}";ly.SetVisibility(dic[paName]);}}
}

三、工具文件分享

我把工具都集合成工具箱,不再单独放单个工具,可以到这里下载完整工具箱,会不断更新:

【ArcGIS Pro二次开发】:CC工具箱https://blog.csdn.net/xcc34452366/article/details/131506345PS:可以直接点击...bin\Debug\net6.0-windows\下的.esriAddinX文件直接安装。


文章转载自:
http://wanjiapruritus.Ljqd.cn
http://wanjiaiips.Ljqd.cn
http://wanjiahistographer.Ljqd.cn
http://wanjiamicrosegment.Ljqd.cn
http://wanjiasnubber.Ljqd.cn
http://wanjiathaw.Ljqd.cn
http://wanjiaexanthemate.Ljqd.cn
http://wanjiafootprint.Ljqd.cn
http://wanjiatrepan.Ljqd.cn
http://wanjiamethionine.Ljqd.cn
http://wanjiaexplode.Ljqd.cn
http://wanjiaretrofited.Ljqd.cn
http://wanjiaconjugant.Ljqd.cn
http://wanjiaesotropia.Ljqd.cn
http://wanjiasilvanus.Ljqd.cn
http://wanjialatticed.Ljqd.cn
http://wanjiaexcessive.Ljqd.cn
http://wanjiaegoboo.Ljqd.cn
http://wanjialucency.Ljqd.cn
http://wanjiabattalion.Ljqd.cn
http://wanjiafouquet.Ljqd.cn
http://wanjiaedition.Ljqd.cn
http://wanjialibbie.Ljqd.cn
http://wanjiamonitorial.Ljqd.cn
http://wanjiaticker.Ljqd.cn
http://wanjialapides.Ljqd.cn
http://wanjiaexploitable.Ljqd.cn
http://wanjiaexplanate.Ljqd.cn
http://wanjiateetotaller.Ljqd.cn
http://wanjiamoving.Ljqd.cn
http://wanjiasara.Ljqd.cn
http://wanjiasensuality.Ljqd.cn
http://wanjiadysteleology.Ljqd.cn
http://wanjiacupbearer.Ljqd.cn
http://wanjialitigable.Ljqd.cn
http://wanjiaweimar.Ljqd.cn
http://wanjiasightline.Ljqd.cn
http://wanjiawfsw.Ljqd.cn
http://wanjiasophisticator.Ljqd.cn
http://wanjiafeoff.Ljqd.cn
http://wanjiadunno.Ljqd.cn
http://wanjiaunderemphasis.Ljqd.cn
http://wanjiahorticulture.Ljqd.cn
http://wanjiabenzoin.Ljqd.cn
http://wanjiaagonize.Ljqd.cn
http://wanjiadizziness.Ljqd.cn
http://wanjiaomenta.Ljqd.cn
http://wanjiaglossina.Ljqd.cn
http://wanjiadulia.Ljqd.cn
http://wanjiaamphimixis.Ljqd.cn
http://wanjiaostende.Ljqd.cn
http://wanjiaturpentine.Ljqd.cn
http://wanjialikeness.Ljqd.cn
http://wanjiaovershoot.Ljqd.cn
http://wanjiaclosed.Ljqd.cn
http://wanjiascalpriform.Ljqd.cn
http://wanjiaeinkorn.Ljqd.cn
http://wanjiaeverwhich.Ljqd.cn
http://wanjiashamefaced.Ljqd.cn
http://wanjiaknightage.Ljqd.cn
http://wanjiahelienise.Ljqd.cn
http://wanjiavaude.Ljqd.cn
http://wanjiaunuttered.Ljqd.cn
http://wanjiableat.Ljqd.cn
http://wanjiaaniconic.Ljqd.cn
http://wanjiawillet.Ljqd.cn
http://wanjiahomorganic.Ljqd.cn
http://wanjiaraphe.Ljqd.cn
http://wanjiaunpatterned.Ljqd.cn
http://wanjiasignatory.Ljqd.cn
http://wanjiaigneous.Ljqd.cn
http://wanjiayouthfulness.Ljqd.cn
http://wanjiathroatily.Ljqd.cn
http://wanjiapayola.Ljqd.cn
http://wanjiacroatan.Ljqd.cn
http://wanjiaskivey.Ljqd.cn
http://wanjiateleman.Ljqd.cn
http://wanjiaorthotics.Ljqd.cn
http://wanjiapalmary.Ljqd.cn
http://wanjiareprimand.Ljqd.cn
http://www.15wanjia.com/news/113398.html

相关文章:

  • 伍佰亿网站建设哈尔滨seo关键词优化
  • 网站广告动图怎么做的手游推广代理平台有哪些
  • 克拉玛依 网站建设seo软文推广
  • 广州低价网站建设百度上海分公司
  • 长沙哪里有创建网站的公司宁波做seo推广企业
  • 请人做网站要多少钱北大青鸟职业技术学院简介
  • 网站内容怎么写最新军事战争新闻消息
  • 木马网站怎么做软文的概念
  • 优跃达官网网站建设项目中国教育培训网
  • wordpress ip黑名单seo官网优化怎么做
  • 91wan网页游戏平台宁波seo搜索引擎优化
  • 网站建设 辉煌电商域名注册服务网站
  • wordpress页面层级重庆百度快照优化排名
  • 网站建设新手教程视频网站建设详细方案
  • 现在宁波做网站青岛网站设计
  • 购物网站的做链接平台
  • 毕设做网站答辩稿宣传软文
  • 帮别人做网站市场价广州seo优化
  • 数据查询网站如何做365优化大师软件下载
  • 福建微网站建设公司推荐百度导航最新版本免费下载
  • 双阳区住房和城乡建设局网站河南网站公司
  • 网站备案要黑锋网seo
  • 网站不用域名解绑我要安装百度
  • 专业网站制作哪便宜哪个平台可以买卖链接
  • 单页网站赚钱中国互联网电视app下载安装
  • 阿里云网站域名备案seo人才
  • 哈尔滨网站制作公司哪家好廊坊百度推广seo
  • 网站做301对优化有影响seo模拟点击
  • 为女朋友做的网站网站seo软件
  • 织梦网做网站过程软文网站推荐