Bug report #17277

Atlas - filter attribute table return empty table if layers haven't the same CRS

Added by Loïc BARTOLETTI about 1 month ago. Updated 20 days ago.

Status:Feedback
Priority:Normal
Assignee:-
Category:Map Composer/Printing
Affected QGIS version:2.18.13 Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:
Crashes QGIS or corrupts data:No

Description

I just met this problem.

I have an atlas with a coverage layer (polygon) in EPSG:2154 and an attribute table from a point layer in EPSG:3946.

If I click on "Show only features intersecting Atlas feature", it returns an empty table.

Reproject the coverage layer in EPSG:3946 and retry returns the good table.

So, either this is normal since the intersection is not done on the fly, or the documentation is not accurate since it's written: " When activated it will show a table with only the features shown on the map of that particular page of the atlas." and the points are shown on the map.

atlas_filter.7z (64.6 KB) Loïc BARTOLETTI, 10/17/2017 10:10 AM

coverage-4326_table-4326.png (107 KB) Loïc BARTOLETTI, 10/17/2017 10:10 AM

coverage-3946_table-4326.png (78.3 KB) Loïc BARTOLETTI, 10/17/2017 10:10 AM

History

#1 Updated by Giovanni Manghi about 1 month ago

  • Status changed from Open to Feedback

I think that possibly the documentation assumes that if a user is working with layers in different CRSs then OTF is enabled... and of course that also means that the functionality needs the project to have OTF enabled if layers have different CRSs. I would propose to close this in favor of a ticket on documentation.

#2 Updated by Harrissou Santanna about 1 month ago

I do not think this is a documentation issue: if in the map canvas, the features are shown overlaping each others, then the "show only features intersecting atlas" should respect that and display these features. Imho, this is what people would expect.
Hence I'd say that there's a reprojection operation missing here.

#3 Updated by Giovanni Manghi about 1 month ago

Harrissou Santanna wrote:

I do not think this is a documentation issue: if in the map canvas, the features are shown overlaping each others, then the "show only features intersecting atlas" should respect that and display these features. Imho, this is what people would expect.
Hence I'd say that there's a reprojection operation missing here.

I have tested with data of my own, two layers one in 3763 the other in 27493, two CRSs that have origin one next to the other, with OTF OFF.
The functionality works as expected.

#4 Updated by Loïc BARTOLETTI about 1 month ago

Hello,

Here my example with a dirty map.

Regards.

#5 Updated by Giovanni Manghi about 1 month ago

Loïc BARTOLETTI wrote:

Hello,

Here my example with a dirty map.

Regards.

without OTF there is no overlap between your "cities" layer (CRS 2154) and the point layer (CRS 4326).

#6 Updated by Loïc BARTOLETTI about 1 month ago

Yes, and it's normal.

As I have write before: either this is normal since the intersection is not done on the fly, or the documentation is not accurate

Personally I have no position on what is the good answer. Just clarify this.

I'm close enough to giovanni's opinion to modify the documentation, but is this really the result expected by users?

#7 Updated by Giovanni Manghi about 1 month ago

Loïc BARTOLETTI wrote:

Yes, and it's normal.

As I have write before: either this is normal since the intersection is not done on the fly, or the documentation is not accurate

Personally I have no position on what is the good answer. Just clarify this.

I'm close enough to giovanni's opinion to modify the documentation, but is this really the result expected by users?

as a user my personal 2 cents are: if without OTF there is no overlap why I should expect a function called "Show only features intersecting Atlas feature" to return anything?

#8 Updated by Harrissou Santanna about 1 month ago

Giovanni Manghi wrote:

Loïc BARTOLETTI wrote:

I'm close enough to giovanni's opinion to modify the documentation, but is this really the result expected by users?

as a user my personal 2 cents are: if without OTF there is no overlap why I should expect a function called "Show only features intersecting Atlas feature" to return anything?

Hence, there's no issue here, neither in Desktop nor in Doc:
- if OTF is off, and there's no features overlapping in map canvas, hence there's nothing (to be) returned in atlas table. And in case there's overlap, atlas returned what is shown in canvas (given Giovanni's test).
- if OTF is on and features overlap, then atlas return also the features.
So all is good, isn't it? when features overlap, they are listed and if they don't, the table is empty.

Well, reading the doc, I think it should be more precise on returned features (because features from the other layer may sometimes appear in the atlas page but not overlap the atlas feature - see this PR based on initial implementation 30ada2833a7804f66077056f9fcd626952faccb1 and let me know if it would fix the description for you).

But this is not the main issue that was reported here as far as i understand.

#9 Updated by Loïc BARTOLETTI 23 days ago

Hi,

Harrissou, I can't see your PR but anyway. I think we need a better precision in the doc. It's writed " the features shown ", without any comment about OTF enabled or not.

Thanks.

#10 Updated by Harrissou Santanna 22 days ago

Yes sorry Loïc it has been merged meanwhile. I use in the doc the exact wording as in the commit in code. And i'm not sure whether otf status should be mentioned because i think that atlas should mimic what's shown in canvas: If features are shown overlaping in canvas, beit with or without otf, they are listed. Otherwise, it's empty.
Anyway, if you feel there's still a need for precision, and that the otf behavior is clear and consistent enough (i'm not sure Giovanni confirmed it), could you please either file an issue report or propose a rewording? Thanks

#11 Updated by Giovanni Manghi 20 days ago

Anyway, if you feel there's still a need for precision, and that the otf behavior is clear and consistent enough (i'm not sure Giovanni confirmed it), could you please either file an issue report or propose a rewording? Thanks

My point of view on this matter is the same as above.

(thinking as a user) if without OTF there is no overlap why I should expect a function called "Show only features intersecting Atlas feature" to return anything?

Also available in: Atom PDF