首页 > 解决方案 > Atlas 函数似乎不适用于结合“内部”过滤器的倒置多边形

问题描述

我的项目是创建一组地图来描述流域。该盆地由多个子盆地组成,每个子盆地都使用 .shp 文件中的多边形进行描述。我正在使用 layout/Atlas 选项创建显示相对较高细节的子流域地图。这些子流域地图应仅显示位于子流域内的几何图形 - 我不想看到其多边形之外的任何信息。我想显示的大多数(点)图层可以很好地过滤到子流域内的那些,仅使用within($geometry,@atlas_geometry)基于规则的符号系统过滤器中的语句。这些层由完全位于盆地内的点或多边形组成。到目前为止,一切都很好。

这种方法不适合包含高度轮廓的多边形层。通过构造,这些等高线跨越(而不是位于)子流域多边形。使用within语句过滤不会给出我正在寻找的结果(它只会导致显示轮廓的子集)。类似地,使用过滤器intersects将导致完整轮廓多边形的可视化,包括子流域之外的部分。

我目前的方法是简单地隐藏(而不是不绘制)可视化的子流域多边形之外的任何对象。我尝试通过将子流域多边形设置为用纯白色“简单填充”的“倒置多边形”来做到这一点。我的想法是,这应该只是隐藏正在显示的子流域之外的轮廓。我的设置如下:

我本来希望布局以橙色显示周围的子流域。唉,布局没有以任何方式显示任何子流域(下面的最后一个屏幕截图)。

我的问题是:

  1. 我的方法是否可行,即我所考虑的原则是否有效?
  2. 如果是这样,那么我的设置在哪里不正确或不完整?

非常感谢您的帮助!

layout_atlas_setting

layout_map_properties

subbasin_symbology_settings

subbasin_symbology_settings_filter_evaluation

布局原样

标签: qgis

解决方案


推荐阅读