Ticket #2890 (assigned patch)

Opened 3 years ago

Last modified 3 years ago

Georeference's plugin can work with changes of projections

Reported by: lmotta Owned by: mmassing
Priority: minor: annoyance Milestone: Version 1.7.0
Component: C++ Plugins Version: Trunk
Keywords: Georeferencer Cc:
Platform Version: 1.6 Platform: All
Must Fix for Release: No Awaiting user input: no

Description

The patch allows Georeference´s plugin work changes of projections.

1) The display of GCP's in QGis mapcanvas with projection changes in QGis (property of project - Coordinate Reference System)

2) The reference coordinates (Map) in GCP table change when new setting of EPSG in plugin.

3) Show EPSG (reference coordinates) in table of GCP and dialog input coordinate (EPSG of Qgis mapcanvas)

Attachments

georeferencer_paths_lmotta.2.zip Download (37.7 KB) - added by lmotta 3 years ago.
georeferencer_diff_lmotta.zip Download (14.4 KB) - added by lmotta 3 years ago.
georeferencer_paths_lmotta.zip Download (49.5 KB) - added by lmotta 3 years ago.

Change History

Changed 3 years ago by lmotta

Update patchs file:

At now, the dialog input coordinate is compact(the information about input by tips) and save the last position of dialog (when accept).

Changed 3 years ago by mmassing

  • keywords Georeferencer added; Georeference removed
  • status changed from new to assigned
  • must_fix changed from Yes to No

Hi Luiz,

thank you for your contribution. I must confess I haven't fully understood the patch description, so can't really comment on it right now, but I will test it out and give you feedback soon.

For the future, it would be great if you could submit your changes as patches (i.e., the output of "svn diff") instead of submitting the whole source files. This makes it a lot easier to review and apply changes.

See  http://www.qgis.org/wiki/Developers_Manual#Submitting_Patches for details on how to submit patches.

Thank you,

Manuel

Changed 3 years ago by lmotta

Manuel,

I made your suggestion, i created the set of compared's files (*.diff).

The patch upgraded changed the input coordinate, where, the input mask is sensible with type of projection.

Thank you, Luiz

Changed 3 years ago by lmotta

Patch and diff files updated

The patch enable move the reference point(dstX and dstY), by Qgis MapCanvas? and by typing the coordinate.

Changed 3 years ago by lmotta

Changed 3 years ago by lmotta

Sorry! The georeferencer_paths_lmotta.2.zip is not valid ( have same zips of georeferencer_paths_lmotta.zip add in 07/21/2010).

Patch and diff files updated.

The patch fixed the bug about raster layer of Plugin Georeferencer when the user open the new Qgis project. At the moment, the raster layer is loaded again after new project is open.

Changed 3 years ago by lmotta

Patch and diff files updated.

The patch fixed the bug for use reference systems geographic for create georeferencer image (E.: ESPG 4326) and change get type of compress setting by original name, my be problem with translator.

Changed 3 years ago by lmotta

Patch and diff files updated.

The patch enable georeferencer images with GeoTag?´s.

Changed 3 years ago by lmotta

Changed 3 years ago by lmotta

Changed 3 years ago by lmotta

Patch and diff files updated.

No changes, only made correction in zip files.

Changed 3 years ago by mmassing

Thanks Luiz for these excellent additions. I have commited parts of your changes in r13959, r13960 and r13962.

I am not including the reprojection code at the moment, because it has some issues which I'd like to resolve first. The main problem is that a user can easily run into cases which result in destructive transformation of GCP coordinates or which work in a counter-intuitive fashion. I think with the current implementation it would be best to only let the user reproject GCPs explicitly (e.g. by selecting it as a function from the menu, or by enabling it explicitly), and not trying to guess from/to which SRS to reproject to avoid any confusion or unintentional reprojection.

1) Does only work with EPSG projections (i.e. does not work with user-defined projections, or +proj4 based projections without EPSG code). Entering a non-EPSG projeciton trips up the automatic reprojection completely.

2) Automatic reprojection may not be desired for a variety of reasons, e.g. because reprojection may be associated with a loss of precision.

3) The transform may fail (e.g. because some coordinates can not be represented in the new coordinate system), resulting in information loss - this can happen as the result of a seemingly unrelated user-action (e.g., opening a new project, or changing the projects transformation settings in QGis)

4) The reprojection makes assumptions about the destination SRS which may not be valid. In particular, it may become impossible to even open a file if the projection (as set in the gis project settings) results in an invalid transformation of the GCPs. These problems could maybe be addressed cleanly by storing all GCP destination coordinates in a fixed geographic reference frame (e.g. WGS84), and deriving the reprojected coordinates only when needed (e.g. when displaying them to the user, or when fitting the parametrized transform). This would avoid SRS ambiguities, curb precision loss and make it possible to recover from failed reprojection attempts.

Changed 3 years ago by lmotta

Thanks for commit my contributions.

About the reproject. My point of view it was to ensure the projection for georeference is the same projection in QGis canvas, because need had explicit projection to harvest of GCP, in this case, it is same QGis Canvas.

Note: See TracTickets for help on using tickets.