Good ol’ GIS.stackexchange … I finally ended up posting a bounty of 50 reputation points for my rotation problem, and got an answer within a couple of hours!

If you want to rotate a grid of points around (originX, originY) and degrees θ, enter the following values into the dialog (see image to the right):

Scale X

cos(θ)

Rotation Y

-sin(θ)

Translation X

originX – cos(θ) * originX + sin(θ) * originY

Rotation X

sin(θ)

Scale Y

cos(θ)

Translation Y

originY – sin(θ) * originX – cos(θ) * originY

Here’s an R function to give you the numbers directly:

I really want a solution which works just in QGIS, so for the moment am going to use the qgsAffine plugin, even though it’s a bit clunky to have to do the calcs, and the plugin itself seems buggy.

However, it should be possible to build a rotation function in spatialite, which comes installed with QGIS.

Hi, i’m trying to work with this tool to rotate a vector point grid, I calculate with a spreedsheet de values of rotation, scale and translation but when I run the vector affine transformation, the geometry of vector point grid do the rotation but change the location of the grid.

My coordinate System is: ESPG:2743 – Datum 73 /Modified Portuguese Grid.

This are the characteristics of the grid:
+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-223.237,110.193,36.649,0,0,0,0 +units=m +no_defs

Hi, i’m trying to work with this tool to rotate a vector point grid, I calculate with a spreedsheet de values of rotation, scale and translation but when I run the vector affine transformation, the geometry of vector point grid do the rotation but change the location of the grid.

My coordinate System is: ESPG:2743 – Datum 73 /Modified Portuguese Grid.

This are the characteristics of the grid:

+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-223.237,110.193,36.649,0,0,0,0 +units=m +no_defs