[Qgis-developer] undisplayed elements are selected

bernhard.stroebl at jena.de bernhard.stroebl at jena.de
Fri Mar 16 07:00:17 EDT 2012


More thoughts:

I agree that the expected behaviour would be that invisible features are 
not used for any selecting done in the map.
But: how should the behaviour be regarding a spatial query and rule 
based visibility? Its result would depend on the scale then :-(

I just realized features even get labelled when invisible due to a style 
rule but not when a general scale-based visibility is set for the layer. 
This is definitely a bug.

I still favour the idea that _all_ features in the selection should be 
drawn in selection color even when invisible due to a style rule because 
the selection criteria used for selecting e.g. in the table might be 
different from the criteria used in the visibility filter. And in this 
case the user is more interested in the selection criteria. Thus it 
would be consistent to have the spatial query select all features in the 
layer, too.

I think we should distinguish (in QGIS desktop) between rule-based 
filtering and filtering by a layer query. When only looking at the map I 
could use either of them to not display certain features but when I e.g. 
want to snap to features I would always use the layer query to keep 
unwanted features out in the first place. It does not make sense loading 
them in and then hiding them because I do not want to snap to them. So 
display layers and data-input layers are different.

Bernhard

Am 16.03.2012 11:02, schrieb Nathan Woodrow:
> I agree.
>
> This is a bug then.  Fill a ticket if none exists.
>
> - Nathan
>
> On Fri, Mar 16, 2012 at 7:39 PM, Andreas Neumann <a.neumann at carto.net
> <mailto:a.neumann at carto.net>> wrote:
>
>     For me it would be ok if I can select invisible features from the
>     table, but it feels strange to select invisible features in the map.
>
>     After all my filter is there for a reason - I want them to be
>     invisible and therefore I don't want them to be selectable if they
>     are invisible. QGIS server with GetFeatureInfo behaves like this and
>     I think it is logical.
>
>     It even gets more complicated if you digitize and have snapping
>     settings on a rule-based layer. Think about it - you digitize and
>     suddenly it snaps to some invisible feature - it would be a
>     usability nightmare ...
>
>     Andreas
>
>     On Fri, 16 Mar 2012 09:40:37 +0100,  wrote:
>
>         some thoughts (unordered):
>
>         A) thinking from the table side I can always select any feature
>         there
>         regardless if it is currently visible or not. When I zoom to the
>         selection then I am responsible that all features are visible in
>         order
>         to see my selection. So the current behaviour is just the other way
>         round. If I want to exclude features I have to define a query on the
>         layer filtering out unwanted features.
>
>         B) map visibility can be controlled by three ways:
>         1) visibility of the layer on/off => features are not selectable
>         in map
>         2) scale-based visibility of the whole layer => features get
>         selected, even when not visible
>         3) rule based style with scale based visibility for rules (Denis'
>         case) => features get selected, even when not visible
>         To me case 1 is expected behaviour, cases 2 and 3 are not (although
>         not too unexpected when considering thought A), but hard to
>         explain to
>         a user)
>
>         - possible solution to accompany A) and B): show all selected
>         features in selection color regardless of their individual
>         scale-based
>         visibility. No idea if that is feasible.
>
>         Bernhard
>
>         Am 16.03.2012 09:12, schrieb Andreas Neumann:
>
>             hm - I agree with Denis. Features invisible because of scale
>             ranges
>             should not be selectable and should not react to map tips.
>
>             In QGIS Server we filtered the invisible features away in
>             GetFeatureInfo
>             requests. The same should be done for selecting features in
>             QGIS desktop
>             and for the map tips. The rule-based renderer V2 offers a
>             method called
>             willRenderFeature() (see
>
>             http://doc.qgis.org/api/__classQgsRuleBasedRendererV2.__html#__b514bc63bd9e744faca24236a89b7e__4d
>             <http://doc.qgis.org/api/classQgsRuleBasedRendererV2.html#b514bc63bd9e744faca24236a89b7e4d>)
>             that could be used to see if such a feature is displayed or
>             not. But the
>             method says that it has to be called between startRender() and
>             stopRender() calls - so I don't know if it would work for
>             querying/selection features?
>
>             Any thoughts?
>             Andreas
>
>             On Fri, 16 Mar 2012 00:44:02 -0700, Nathan Woodrow wrote:
>
>                 I would say this could be an expected behaviour as
>                 styling is only a
>                 visual thing and doesn't affect the data....maybe.
>
>                 - Nathan
>
>                 Sent from my Windows Phone
>                 From: Denis Rouzaud
>                 Sent: 16/03/2012 5:20 PM
>                 To: Qgis-developer at lists.osgeo.org
>                 <mailto:Qgis-developer at lists.osgeo.org>
>                 Subject: [Qgis-developer] undisplayed elements are selected
>                 Hi all,
>
>                 When using the rules style for a layer and defining a
>                 scale range, if
>                 you select by rectangle on the map, everything is
>                 selected including
>                 undisplayed features.
>
>                 Is there already an issue opened, I searched without any
>                 result.
>
>                 Greetings,
>
>                 Denis
>                 _________________________________________________
>                 Qgis-developer mailing list
>                 Qgis-developer at lists.osgeo.org
>                 <mailto:Qgis-developer at lists.osgeo.org>
>                 http://lists.osgeo.org/__mailman/listinfo/qgis-__developer
>                 <http://lists.osgeo.org/mailman/listinfo/qgis-developer>
>                 _________________________________________________
>                 Qgis-developer mailing list
>                 Qgis-developer at lists.osgeo.org
>                 <mailto:Qgis-developer at lists.osgeo.org>
>                 http://lists.osgeo.org/__mailman/listinfo/qgis-__developer
>                 <http://lists.osgeo.org/mailman/listinfo/qgis-developer>
>
>
>
>
>
>         ________ Information from NOD32 ________
>         This message was checked by NOD32 Antivirus System for Linux
>         Mail Server.
>         http://www.nod32.com
>         _________________________________________________
>         Qgis-developer mailing list
>         Qgis-developer at lists.osgeo.org
>         <mailto:Qgis-developer at lists.osgeo.org>
>         http://lists.osgeo.org/__mailman/listinfo/qgis-__developer
>         <http://lists.osgeo.org/mailman/listinfo/qgis-developer>
>
>
>     --
>     --
>     Andreas Neumann
>     Böschacherstrasse 10A
>     8624 Grüt (Gossau ZH)
>     Switzerland
>     _________________________________________________
>     Qgis-developer mailing list
>     Qgis-developer at lists.osgeo.org <mailto:Qgis-developer at lists.osgeo.org>
>     http://lists.osgeo.org/__mailman/listinfo/qgis-__developer
>     <http://lists.osgeo.org/mailman/listinfo/qgis-developer>
>
>
>
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer
>
>
> ________ Information from NOD32 ________
> This message was checked by NOD32 Antivirus System for Linux Mail Server.
> http://www.nod32.com



________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail Server.
http://www.nod32.com


More information about the Qgis-developer mailing list