【ArcMap操作指南】在地图上画蜂窝

分而治之是人类文明中已经绵延几千年的古老思想,在现今的计算机科学、深度学习等领域仍然在持续发挥着作用。分而治之的思路与人类对于世界的认知规律也是暗合的,人类时而关注整体,时而关注局部,过于关注整体往往会忽略局部,而过于关注局部往往也会忽略整体。在整体和局部之间把控微妙的平衡,实属不易。

当我们看到一幅巨型的地图,感到目不暇接的时候,有没有那么一瞬间会想,如果有一些可视的六边形在地图上,就可以让这幅地图显得更有层次感,也可以减轻部分的认知负担。

现在,ArcMap的addin就可以帮你实现这一愿望。

我们可以用addin来制作工具条,工具条中包含了一些组件,其中tool是可以检测鼠标事件的,比如单击、双击、移动、框选等,而框选又可细分为画线、画圆、画长方形等,如下图所示:
在这里插入图片描述
然后,在addin工具文件夹中找到addin.py文件,找到onRectangle函数,对该函数进行补足,具体代码如下:

#鼠标框选的范围
extent=rectangle_geometry
#坐标系
spatial_ref = extent.spatialReference
#每个六边形的面积
area = '20 SquareKilometers'
#生成六边形的格网
fishnet=arcpy.GenerateTessellation_management(r'in_memory\fishnet',extent,"HEXAGON",area,spatial_ref)
#调节六边形的透明度,这样就可以透过六边形看到地图了
layer=mapping.Layer(r'fishnet')
layer.transparency=50
#刷新地图
arcpy.RefreshActiveView()

写完代码后,就可以将该addin安装到arcmap中了,最后的操作及效果如图所示:
最终效果

猜你喜欢

转载自blog.csdn.net/esa72ya/article/details/96423066