--查看当前数据框
adf = mxd.activeDataFrame #此处对应mxd对象
--列举所有数据框
1 dfs = mp.ListDataFrames(mxd) #此处对应 mapping 附加库 2 for df in dfs: 3 print(df.name)
--动态旋转地图
1 adf.rotation = i #属性 旋转i度 2 time.sleep(secs) #方法 进程挂起 secs 秒 3 4 ap.RefreshActiveView() #刷新活动视图 5 ap.RefreshTOC() #刷新内容列表--左侧 6 ap.RefreshCatalog() #刷新目录--右侧 7 8 9 10 11 import time 12 angles = range(1,30) + range(30,-1,-1) 13 for i in angles: 14 adf.rotation = i 15 ap.RefreshActiveView() 16 time.sleep(0.05)
--查看数据框的空间参考
sr = adf.spatialReference sr.name
--更改数据框显示范围
adf.zoomToSelectedFeatures() ap.RefreshActiveView() #缩放至选择要素 #当没有选择要素时,显示全图
--模拟动态跟踪目标
1 zip() 用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回有这些元组组成的列表 2 xs = [1,2,3] 3 ys = [4,5,6] 4 zip(xs,ys) 5 [(1,4),(2,5),(3,6)] 6 #可以利用这个函数的组织方式来创建面对象 7 ap.Extent(XMin,YMin,XMax,YMax) #创建范围,范围是左下角和右上角坐标确定的一个矩形,单位是地图单位 8 adf.panToExtent(extent) #平移至指定范围 9 10 11 12 13 import numpy as np 14 ext = adf.extent #这一步要确保窗口的显示范围是最大显示范围 15 xs = np.linespace(ext.XMin,ext.XMax,50) 16 ys = np.linespace(ext.YMin,ext.YMax,50) 17 xys = zip(xs,ys) 18 adf.scale = 250000 #确定比例尺 19 for xy in xys: 20 x = xy[0] 21 y = xy[1] 22 extent = ap.Extent(x,y,x,y) 23 adf.panToExtent(extent) 24 ap.RefreshActiveView() 25 time.sleep(0.05)
标签:--,地图,adf,ap,ext,课本,RefreshActiveView,ys,第四章 From: https://www.cnblogs.com/Agiser0/p/17387407.html