Сначала вам необходимо спроецировать ваши географические координаты в декартову 2D систему координат, поскольку аффинные преобразования не применяются к географическим системам координат.
Вы можете применить аффинное преобразование из контрольных точек или из параметров преобразования. Плагин QGIS запрашивает у вас параметры преобразования, но для пользователя гораздо чаще иметь контрольные точки.
Из контрольных точек вы можете рассчитать параметры преобразования. Для аффинного преобразования есть 6 параметров преобразования, поэтому вам нужно как минимум 3 контрольные точки (каждая контрольная точка подразумевает 4 координаты: Xsource, Ysource, Xtarget, Ytarget), но рекомендуется, чтобы большее количество контрольных точек имело избыточность и, следовательно, могло применяться Наименьшие квадраты, которые дадут вам оценку качества трансформации. Помните, что аффинные преобразования могут вращать, сдвигать, масштабировать (даже применяя различные факторы к каждой оси) и наклонять геометрию.
Контрольные точки должны иметь форму:
X SOURCE: Xs
Y SOURCE: Ys
X TARGET: Xt
Y TARGET: Yt
Параметры:
a: Scale X
e: Scale Y
d: Rotation X
b: Rotation Y
c: Translation X
f: Translation Y
И мы знаем:
Xt = X*a + Y*b + c
Yt = X*d + Y*e + f
Итак, вам необходимо решить эту систему уравнений (для 3 контрольных точек):
¦ Xs1 Ys1 1 0 0 0 ¦ | a ¦ ¦ Xt1 ¦
¦ Xs2 Ys2 1 0 0 0 ¦ ¦ b ¦ ¦ Xt2 ¦
¦ Xs3 Ys3 1 0 0 0 ¦ ¦ c ¦ = ¦ Xt3 ¦
¦ 0 0 0 Xs1 Ys1 1 ¦ ¦ d ¦ ¦ Yt1 ¦
¦ 0 0 0 Xs2 Ys2 1 ¦ ¦ e ¦ ¦ Yt2 ¦
¦ 0 0 0 Xs3 Ys3 1 ¦ ¦ f ¦ ¦ Yt3 ¦
Где параметры a, b, c, d, e и f неизвестны.
Как только вы вычислите параметры a, b, c, d, e и f (например, с помощью этого интерактивного решателя уравнений ), поместите их в интерфейс плагина QGIS следующим образом:
X' = a*x + b*y + c
Y' = d*x + e*y + f
или:
Я думаю, что это решает ваши два вопроса.