Making changes to the present georeferencer would be a great improvement. I have used this georeferencer for many years, but it has a major drawback - when loading a *.points file > 200-300 points -- it becomes very slow
A *.points file of 1000 points can take up to an hour to load - to add/move/delete a point 20-60 seconds -- often after 2-3 attempts --- When Spatialite offered the GrassGis based GCP_* functions - I attempted to adapt the georeferencer code to use a Spatialite Database instead of the *.points file -- importing an existing *.points file when found In QgsGeorefPluginGui::loadGCPs, if a Database was found this would be loaded as a QgsVectorLayer for both QgsMapCanvasLayers - otherwise use the *.points file Loading and moving with > 1000 points poses no problems at all. Using the GrassGis based GCP_* functions has the advantage that: - after defining about 10-20 points (both pixel and position) -- the GCP_Compute function can be called to calculate an average (Polynomial coefficients) At the moment I then manual attach a Database and load a set (300-500) well known points - and the pixel values are calculated and stored Reloading this in QGIS-georeferencer, the estimated points can then be corrected - using QgsVectorLayer which deals with the updating of the changed values -- What is missing is adding, deleting of points - when a position is added, GCP_Compute could be called to create the pixel point on the Raster -- after witch that point only needs to be corrected Not being firm on the gui portions - all needed interactions, that is not delt with by QgsMapCanvasLayers, are needed A existing QgsGeorefPluginGui::createGCPDb function - creates the Spatialite-Database with everything that is needed -- including views to create a .point file or a GDAL GCP list - checks if Spatialite has been compiled with GCP support [HasGCP()] -- due to the different licence of GrassGis where the GCP_* logic comes from All of this speeds up the development of a new Map greatly - since most of the needed (well known) point are added automaticly The created final gdal GCP list is then placed into a script configuration file - that then calls gdal to create the final image --- I would be glad to offer this existing QGIS code to any one interested in implementing this - I am not that firm on the QT-gui logic My problem is that I use a QGIS version base on the commit of 2014_02_22 - the last version that, when refreshing, does not blank the screen before repainting -- which is too hard on my eyes to work with --- 2.8.x Wien also has this effect Also I have not been able to compile that last master version for some while - due to new dependencies that have been added Otherwise I would be willing to cooperate with anybody that could get this working as a part of QGIS. Mark Johnson, Berlin Germany
_______________________________________________ Qgis-developer mailing list [email protected] List info: http://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-developer
