http://www.comp.nus.edu.sg/~cs4243/doc/ipl.pdf
док на старый IPL
меня интересует функция
void iplRotate(IplImage* srcImage, IplImage* dstImage,double angle, double xShift, double yShift,int interpolate);
непонятно зачем нужен сдвиг после поворота?
выполняет поворот вокруг (0,0) и зачем то потом сдвигает.
вообще формула поворота вокруг произвольной точки такая
p'x = cos(theta) * (px-ox) - sin(theta) * (py-oy) + ox
p'y = sin(theta) * (px-ox) + cos(theta) * (py-oy) + oy
т.е. мы сдвигаемся в (0,0) поворачиваем и возвращаемся.
вот рецепт на поворот вокруг произвольной точки.
т.е. вроде как понятно что это будет работать, непонятно по какой формуле и как считается сам Shift в первой формуле.