QGIS 2.4 Python 콘솔을 사용하여 레이어 기능의 하위 세트 만 표시하려고합니다. 레이어에서 기능을 모두 얻었습니다.
featuresIterator = layer.getFeatures(QgsFeatureRequest().setFilterExpression ( u'"field"=4'))
그리고 dataProvider에서 :
featuresIterator = layer.dataProvider().getFeatures(QgsFeatureRequest().setFilterExpression ( u'"field"=4'))
(차이점을 잘 모르겠습니다).
지금 달성하려는 것은 이러한 기능 만 표시하는 것입니다. GUI에서 쿼리 빌더를 사용하는 것과 똑같은 방식으로. 렌더링 수준 (일부 기능 만 렌더링하고 다른 기능은 렌더링하지 않음) 또는 데이터 공급자 수준 (레이어에 포함 된 데이터에 대한보기 만 제공)에서 관리해야하는지 모르겠습니다. 원하는 하위 집합) 또는 그 중간에 위치합니다.
@Nathan의 대답이 옳습니다. layer.subsetString ()을 사용하여 setSubsetString () 또는 Query Builder에서 설정 한 내용을 가져올 수도 있습니다. 비어 있으면 빈 문자열 ''이 반환됩니다.
—
Zac