Python ArcMap 添加不可见图层 如H表

目的

ArcGIS自己维护的表不能直接添加至ArcMap,因为他不需要用户知道有这些表,如(H表,A表,D表),这些表本身是要素列表,可以进行添加。需要自己手动添加

准备工作

  • 新建一个空白地图,添加一个随便图层,用来做图层添加参考

代码实现步骤

  1. 设置添加图层的连接;值为可正常连接的SDE连接

    arcpy.env.workspace = r'数据库连接\192.168.204.133_FJQ.sde'
    
  2. 获取当前的地图文档。MapDocument参数为固定字符串 CURRENT,代表当前地图

    mxd = arcpy.mapping.MapDocument("CURRENT")
    
  3. 获取工作数据框

    dataframe = arcpy.mapping.ListDataFrames(mxd)[0]
    
  4. 获取参照图层,插入新图层时需要参考图层

    reflayer = reflayer = arcpy.mapping.ListLayers(mxd)[0]
    
  5. 构建新图层。 Layer图层参数为 SDE连接下的要素类名称,可带用户名,如:SDE.Sample

    newlayer = arcpy.mapping.Layer('FTEXT1_H')
    
  6. 添加新图层至地图,AFTER代表添加的图层在参照图层之后,还可接受参数 BEFORE

    arcpy.mapping.InsertLayer(dataframe, reflayer, newlayer,"AFTER")
    

大功告成!!!

整理代码如下

arcpy.env.workspace = r'数据库连接\192.168.204.133_FJQ.sde'
mxd = arcpy.mapping.MapDocument("CURRENT")
dataframe = arcpy.mapping.ListDataFrames(mxd)[0]
reflayer = reflayer = arcpy.mapping.ListLayers(mxd)[0]
newlayer = arcpy.mapping.Layer('FTEXT1_H')
arcpy.mapping.InsertLayer(dataframe, reflayer, newlayer,"AFTER")

你可能感兴趣的:(Arcgis二次开发,python)