Arcpy 将要素类添加到当前工作窗口(内容列表)
test1
layer=arcpy.mapping.Layer( folder+"\\"+"result.shp")
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd)[0]
arcpy.mapping.AddLayer(df,layer,"TOP")
test2
layer_name = "acute angle_lyr"
arcpy.MakeFeatureLayer_management(out_fc, layer_name,workspace=out_folder)
out_layer = "{}\\acute angle_lyr.lyr".format(out_folder)
arcpy.SaveToLayerFile_management(layer_name,out_layer)
layer=arcpy.mapping.Layer(out_layer)
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd)[0]
arcpy.mapping.AddLayer(df,layer,"TOP")
test3
def AddLayerToMap(in_fc, lyr_name,lyrFile_saveFolder):
arcpy.MakeFeatureLayer_management(in_fc, lyr_name,workspace=lyrFile_saveFolder)
out_layer = "{0}\\{1}.lyr".format(lyrFile_saveFolder,lyr_name)
arcpy.SaveToLayerFile_management(lyr_name,out_layer)
layer=arcpy.mapping.Layer(out_layer)
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd)[0]
arcpy.mapping.AddLayer(df,layer,"TOP")
del layer,mxd
终:
#in_fc: feature class
#lyr_name
#lyrFile_saveFolder: a folder used to save layer file.
def AddLayerToMap(in_fc, lyr_name,lyrFile_saveFolder):
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd)[0]
for lyr in arcpy.mapping.ListLayers(mxd,"*",df):
if lyr.name==lyr_name:
arcpy.mapping.RemoveLayer(df,lyr)
try:
arcpy.MakeFeatureLayer_management(in_fc, lyr_name,workspace=lyrFile_saveFolder)
# except:
# lyr_name=lyr_name+"_"+str(uuid.uuid1())
# arcpy.MakeFeatureLayer_management(in_fc, lyr_name,workspace=lyrFile_saveFolder) out_layer = "{0}\\{1}.lyr".format(lyrFile_saveFolder,lyr_name)
if os.path.exists(out_layer):
os.remove(out_layer)
arcpy.SaveToLayerFile_management(lyr_name,out_layer)
arcpy.Delete_management(lyr_name)
layer=arcpy.mapping.Layer(out_layer)
arcpy.mapping.AddLayer(df,layer,"TOP")
Arcpy 将要素类添加到当前工作窗口(内容列表)的更多相关文章
- ArcGIS Engine问答:为什么地理数据库中不能产生同名要素类
之所以产生这种问题,其原因是不管一个要素类是直接放在工作空问中,还是放在工作空问的一个要素数据集中,这些区别不过逻辑上的,而它们的物理组成都是数据库中的一张二维表,并目表名就是要素类的名字.在一个数据 ...
- ArcGis 创建Annotation注记要素类、添加注记要素 并加载到Activeview AO C#
AO中一般有两种方式存储图面注记元素,一种使用TextElement,它是文档级的元素,编辑后要通过文档(mxd)保存:另一种是使用Annotation要素类,它是一个独立的要素类(featurecl ...
- AE 向已存在的要素类中添加字段
风过无痕 原文向已存在的要素类中添加字段 以前,在用AE写程序的时候,为了方便,一般都是直接新建一个MapControl窗体应用程序.这次需要解决的问题用不到窗口,就突发奇想,直接新建了一个Conso ...
- arcpy实例教程-地图图层导出到要素类
arcpy实例教程-地图图层导出到要素类 商务合作,科技咨询,版权转让:向日葵,135-4855_4328,xiexiaokui#qq.com 功能:将选定图层的范围导出到内存要素类 描述:将选定图层 ...
- arcpy实例教程-地图范围导出到要素类
arcpy实例教程-地图范围导出到要素类 商务合作,科技咨询,版权转让:向日葵,135-4855_4328,xiexiaokui#qq.com 功能:将当前地图范围导出到内存要素类 描述:将当前地图的 ...
- ArcGIS 要素类整体平移工具-arcgis/arcpy/模型构建器案例实习教程
ArcGIS 要素类整体平移工具-arcgis/arcpy/模型构建器案例实习教程 联系方式:谢老师,135-4855_4328,xiexiaokui#qq.com 目的:对整个要素类,按指定偏移距离 ...
- ArcGIS创建要素类
在使用ARCGIS软件进行工作时,免不了要建立地理数据库和要素类之类的.一下是我创建文件地理数据库并在数据库中创建要素类写相关步骤: 1.启动软件,可以使用ARCCatalog直接进行创建也可以使用A ...
- C#中的扩展方法(向已有类添加方法,但无需创建新的派生类型)
C#中的扩展方法 扩展方法使你能够向现有类型"添加"方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型. 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样 ...
- Geodatabase - 创建要素类.
在NET中,会遇到以“_2”结尾的属性,这些属性是可写的. 以下代码在已有工作空间下,创建一个新的点要素类: //例如,personalDBPath=@"G:\doc\gis\1.400\d ...
随机推荐
- C#序列化json属性名首字母变成小写的解决方案
原文:C#序列化json属性名首字母变成小写的解决方案 //接口返回自动转小写,容易造成前后端不一致,获取不到数据,切换成转驼峰(首字母大写)如Code/Result //在ConfigureServ ...
- 【学习总结】Python-3-身份运算符 is 与 == 区别
参考:菜鸟教程-Python3运算符 身份运算符 is 和 is not:用于比较两个对象的存储单元 判断两个标识符是不是引用自相同或不同对象,返回一个布尔值 对于"同一个对象"中 ...
- linux100day(day8)--shell监控脚本练习
这是一个大型的监控脚本,方便于查看硬盘,网络,负载,内核版本等系统信息. 本脚本来自于github的atarallo,我对脚本做出了改编和一些注释,尽量让新手也能理解,这个脚本逻辑清楚简单,适合用于练 ...
- dubbo服务调试管理实用命令
公司如果分项目组开发的,各个项目组调用各项目组的接口,有时候需要在联调环境调试对方的接口,可以直接telnet到dubbo的服务通过命令查看已经布的接口和方法,并能直接invoke具体的方法,我们可以 ...
- noip2018火柴棒等式
以下题目摘自洛谷p1149 给你n根火柴棍,你可以拼出多少个形如“A+B=CA+B=C”的等式?等式中的AA.BB.CC是用火柴棍拼出的整数(若该数非零,则最高位不能是00).用火柴棍拼数字0-90− ...
- oldlinux
http://oldlinux.org/Linux.old/ http://oldlinux.org/Book-Lite/
- 如何限制只有某些IP才能使用Tomcat Manager
只有指定的主机或IP地址才可以访问部署在Tomcat下的应用.Tomcat提供了两个参数供你配置:RemoteHostValve 和RemoteAddrValve,前者用于限制主机名,后者用于限制IP ...
- Mongo 备份
1. Windows下远程连接服务器上的MongoDB数据库 使用的是mongo命令,如果安装mongodb时配置了环境变量,可以直接快捷键windows+R打开cmd. Cmd --- mongo ...
- 18.synchronized
同步的前提: 必须要有两个或者两个以上的线程 必须是多个线程使用同一个锁 必须保证同步中只能有一个线程在运行 好处:解决了多线程的安全问题 弊端:多个线程需要判断锁,较为消耗资源.抢锁的资源 ...
- C++11之列表初始化
1. 在C++98中,标准允许使用花括号{}来对数组元素进行统一的集合(列表)初始化操作,如:int buf[] = {0};int arr[] = {1,2,3,4,5,6,7,8}; 可是对于自定 ...