Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Identify tool with on-the-fly projection can crash #11219

Closed
qgib opened this issue Jul 16, 2008 · 3 comments
Closed

Identify tool with on-the-fly projection can crash #11219

qgib opened this issue Jul 16, 2008 · 3 comments
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Projections/Transformations Related to coordinate reference systems or coordinate transformation

Comments

@qgib
Copy link
Contributor

qgib commented Jul 16, 2008

Author Name: barryrowlingson - (barryrowlingson -)
Original Redmine Issue: 1159

Redmine category:projection_support
Assignee: Tom Elwertowski


I loaded a world shapefile (downloaded from here http://www.cipotato.org/diva/data/moredata.htm), then set the projection to 164 - US National Atlas Equal Area (from the Projected Coord Systems: Lambert Azimuthal Equal Area category) and set on-the-fly projection.

Do 'Zoom to Layer Extent' on the world layer. Now you get a US-centric circular map of the world.

Using the Identify tool on the polygons works but is very slow. It's not a massive dataset but maybe the point-in-polygon projection calculations are complex. Never mind. If you click outside the circle of the map Qgis crashes on Windows with a Visual C++ Runtime Library Error. I'm guessing it's an arithmetic problem when converting from a screen coord that doesn't have a piece of the world under it.

Haven't tested on Linux yet.

@qgib
Copy link
Contributor Author

qgib commented Sep 11, 2008

Author Name: Tom Elwertowski (Tom Elwertowski)


Happens on Mac too (and most likely all platforms):

Debug: /Users/tce/developer/qgis/trunk/src/core/qgscoordinatetransform.cpp: 498: (transformCoords) Projection failed emitting invalid transform signal: Failed inverse transform of
(-5.84894e+08, 6.4696e+08)
with error: tolerance condition error

Warning: Throwing exception /Users/tce/developer/qgis/trunk/src/core/qgscoordinatetransform.cpp502
Warning: Throwing exception /Users/tce/developer/qgis/trunk/src/core/qgscoordinatetransform.cpp272
Debug: Transform error caught in /Users/tce/developer/qgis/trunk/src/core/qgsmaprenderer.cpp line 630:
Failed inverse transform of
(-5.84894e+08, 6.4696e+08)
with error: tolerance condition error

terminate called after throwing an instance of 'QgsCsException'
  what():  Failed inverse transform of
(-5.84894e+08, 6.4696e+08)
with error: tolerance condition error

Abort trap

There are two things to fix here.

  1. QGIS needs an exception handler on the main event loop so that an exception alert is displayed and the user is allowed to continue without crashing.

  2. The Identify code ought to handle this specific exception and report "No features found" much as it does if you click above or below the poles using an unprojected map.

@qgib
Copy link
Contributor Author

qgib commented Sep 13, 2008

Author Name: Tom Elwertowski (Tom Elwertowski)


Fixed by 5facf32 (SVN r9321).

Also added application-wide exception handler for events in b254446 (SVN r9320).


  • resolution was changed from to fixed
  • status_id was changed from Open to Closed

@qgib
Copy link
Contributor Author

qgib commented Aug 21, 2009

Author Name: Anónimo (Anónimo)


Milestone Version 1.0.0 deleted

@qgib qgib added Bug Either a bug report, or a bug fix. Let's hope for the latter! Projections/Transformations Related to coordinate reference systems or coordinate transformation labels May 24, 2019
@qgib qgib closed this as completed May 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Projections/Transformations Related to coordinate reference systems or coordinate transformation
Projects
None yet
Development

No branches or pull requests

1 participant