[Qgis-developer] Affine transformation code in Georeferencer -- incomplete?

Benjamin Ducke benducke at fastmail.fm
Mon May 4 01:35:05 PDT 2015


Dear Devs --

I am currently converting the transformation methods
in the QGIS Georeferencer to plain C.
So far, I have been able to extract and convert the
projective and Helmert transformations.

However, the code for the affine transformation seems
incomplete.

Looking here:

https://github.com/qgis/QGIS/trunk/src/plugins/georeferencer/qgsleastsquares.cpp

I find this method:

void QgsLeastSquares::affine()

It computes a 6x6 transformation matrix but stops there.
In analogy to "QgsLeastSquares::helmert()", I _think_
the next step should be to extract the rotation, scaling,
translation and shearing vectors using "gsl_vector_get()".

It seems to me that "QgsLeastSquares::affine()" has been
abandoned code for a while and that the affine transformation
is now delegated to gdal_warp(?).

Does anyone here still remember how to extract the affine
components from the 6x6 matrix? I have done some extensive
searching on the web but came up empty. Any pointers would
be greatly appreciated.

Cheers,

Ben


More information about the Qgis-developer mailing list