课本_第五章、地图图层

发布时间 2023-05-10 11:39:40作者: Agiser0

 

--循环打印图层名称
 1 #获取所有数据框
 2 dfs = mp.ListDataFrames(mxd)
 3 #获取所有图层
 4 lyrs = mp.ListLayers(mxd,用于筛选图层名称的字符串,数据框)
 5  6 for each in lyrs:
 7     print each.name
 8     
 9     
10 #for range  循环
11 for i in range(len(lyrs)):
12     print lyrs.name[i]

 

--获取数据框的图层列表
1 #打印活动数据框包含的所有图层的名称
2 lyrs = mp.ListLayers(mxd,data_frame = adf)
3 for each in lyrs:
4     print each.name

 

--图层模糊查找
lyrs = mp.ListLayers(mxd,"兴趣*")     #熟悉通配符的使用方式

 

--输出图层空间范围
1 lyr = lyrs[0]
2 ext = lyr.getExtent()
3 print(ext.XMax,ext.XMin,ext.YMax,ext.YMin)

 

--判断点与图层的关系
1 #创建点
2 Point = ap.Point(x,y)
3 ext.contain(Point)   #包含测试

 

--平移和缩放至图层或选择范围
 1 #平移至图层
 2 adf.panToExtent(extent)
 3  4 #缩放至图层
 5 #先修改图层显示范围;再刷新;;;即可实现缩放
 6 adf.extent = extent
 7  8 #平移至选择范围
 9 extent = lyr.getSelectExtent()   #获取图层对象的选中要素的空间范围#extent 为含有该函数返回值的对象   是一个范围对象
10 adf.pantoExtent(extent)          #平移至选择范围--这个是平移,目标是范围
11 adf.extent = extent              #缩放至选择范围--这是缩放,目标是范围
12 adf.zoomToSelectFeatures()       #放缩至全部选择要素--这是放缩,目标是选中要素

 

--查看和设置图层的定义查询
1 #获取定义查询
2 lyr.definitionQuery
3 #设置定义查询
4 #这是一个属性,用等号赋值;所赋的值为字符串类型
5 lyr.definition = "查询语句"   #若查询语句为空,则表示清除所有选择要素

 

--获取图层的符号系统
1 lyr.symbologyType    #返回符号系统所选用的分类方式
2 3 sym = lyr.symbology
4 sym.valueField        #返回用于分类的值字段