arcpy 验证中心点是否位于图层之内

for attr in dir(mxd):
...     if not attr.startswith("_")and hasattr(mxd,attr):
...         print(attr,getattr(mxd,attr))
...         

查看地图文档的所有属性。

(‘activeDataFrame’, <DataFrame object at 0x2581d690[0x25832b60]>)
(‘activeView’, u’\u77e2\u91cf\u5730\u56fe’)
(‘author’, u’‘)
(‘credits’, u’‘)
(‘dateExported’, datetime.datetime(2019, 4, 17, 17, 9, 55))
(‘datePrinted’, datetime.datetime(1899, 12, 30, 0, 0))
(‘dateSaved’, datetime.datetime(2020, 4, 19, 11, 58, 59))
(‘deleteThumbnail’, <bound method MapDocument.deleteThumbnail of <MapDocument object at 0x2581db30[0x2581d540]>>)
(‘description’, u’‘)
(‘filePath’, u’F:\1615273438559\\u94a6\u5dde\u5e02\\u94a6\u5dde\u5e0210.0.mxd’)
(‘findAndReplaceWorkspacePaths’, <bound method MapDocument.findAndReplaceWorkspacePaths of <MapDocument object at 0x2581db30[0x2581d540]>>)
(‘hyperlinkBase’, u’‘)
(‘isDDPEnabled’, False)
(‘makeThumbnail’, <bound method MapDocument.makeThumbnail of <MapDocument object at 0x2581db30[0x2581d540]>>)
(‘pageSize’, PageSize(width=8.266666666666667, height=11.694166666666666))
(‘relativePaths’, True)
(‘replaceWorkspaces’, <bound method MapDocument.replaceWorkspaces of <MapDocument object at 0x2581db30[0x2581d540]>>)
(‘save’, <bound method MapDocument.save of <MapDocument object at 0x2581db30[0x2581d540]>>)
(‘saveACopy’, <bound method MapDocument.saveACopy of <MapDocument object at 0x2581db30[0x2581d540]>>)
(‘summary’, u’‘)
(‘tags’, u’‘)
(‘title’, u’')

在这里插入图片描述
打印数据框的四至空间范围。
在这里插入图片描述

下面查看图层的四至空间地理范围:
在这里插入图片描述

>>> lyrs=mp.ListLayers(mxd)#获取当前地图文档的所有图层列表
>>> lyr=lyrs[0]#通过下标找到列表的某个图层,本次我们找到是第一个。
>>> ext=lyr.getExtent()#获取图层的空间范围
>>> print(ext.XMin,ext.XMax,ext.YMin,ext.YMax)#获取x和y的最大值、最小值。

在这里插入图片描述
验证中心点是否位于图层之内:

lyrs=mp.ListLayers(mxd)
>>> lyr=lyrs[0]
>>> ext=lyr.getExtent()
>>> x0=(ext.XMin+ext.XMax)/2
>>> y0=(ext.YMin+ext.YMax)/2
>>> p0=arcpy.Point(x0,y0)
>>> ext.contains(p0)

在这里插入图片描述
结果:位于图层中心内。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值