mirror of
https://github.com/opencv/opencv.git
synced 2025-06-08 01:53:19 +08:00
Improve the efficiency as suggested by vpisarev.
Alter the Rotation enum to be unambiguous as to direction.
This commit is contained in:
parent
6f7bf653f7
commit
ad5c50a923
@ -1023,9 +1023,9 @@ around both axes.
|
||||
CV_EXPORTS_W void flip(InputArray src, OutputArray dst, int flipCode);
|
||||
|
||||
enum RotateFlags {
|
||||
ROTATE_90 = 0, //Rotate 90 degrees clockwise
|
||||
ROTATE_90_CLOCKWISE = 0, //Rotate 90 degrees clockwise
|
||||
ROTATE_180 = 1, //Rotate 180 degrees clockwise
|
||||
ROTATE_270 = 2, //Rotate 270 degrees clockwise
|
||||
ROTATE_90_COUNTERCLOCKWISE = 2, //Rotate 270 degrees clockwise
|
||||
};
|
||||
/** @brief Rotates a 2D array in multiples of 90 degrees.
|
||||
The function rotate rotates the array in one of three different ways:
|
||||
|
@ -832,14 +832,16 @@ static bool ocl_rotate(InputArray _src, OutputArray _dst, int rotateMode)
|
||||
{
|
||||
switch (rotateMode)
|
||||
{
|
||||
case ROTATE_90:
|
||||
flip(_src.getUMat().t(), _dst, 1);
|
||||
case ROTATE_90_CLOCKWISE:
|
||||
_dst.getUMat() = _src.getUMat().t();
|
||||
flip(_dst, _dst, 1);
|
||||
break;
|
||||
case ROTATE_180:
|
||||
flip(_src, _dst, -1);
|
||||
break;
|
||||
case ROTATE_270:
|
||||
flip(_src.getUMat().t(), _dst, 0);
|
||||
case ROTATE_90_COUNTERCLOCKWISE:
|
||||
_dst.getUMat() = _src.getUMat().t();
|
||||
flip(_dst, _dst, 0);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@ -856,14 +858,16 @@ void rotate(InputArray _src, OutputArray _dst, int rotateMode)
|
||||
|
||||
switch (rotateMode)
|
||||
{
|
||||
case ROTATE_90:
|
||||
flip(_src.getMat().t(), _dst, 1);
|
||||
case ROTATE_90_CLOCKWISE:
|
||||
_dst.getMat() = _src.getMat().t();
|
||||
flip(_dst, _dst, 1);
|
||||
break;
|
||||
case ROTATE_180:
|
||||
flip(_src, _dst, -1);
|
||||
break;
|
||||
case ROTATE_270:
|
||||
flip(_src.getMat().t(), _dst, 0);
|
||||
case ROTATE_90_COUNTERCLOCKWISE:
|
||||
_dst.getMat() = _src.getMat().t();
|
||||
flip(_dst, _dst, 0);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user