翻转式由远到近效果实现
void __fastcall TCbwAnimationEffect_RotateToNear::BuildDisplayMat
(cv::Mat& destMat, cv::Mat& srcMat, TRect displayRect) {
double angle = -45 * (1-double(FCurrentIndex + 1) / FTotalFramesInOnePeriod); // 旋转角度
if (clockwiseFlag)
angle *= -1;
double scale = 0.5 * (1+double(FCurrentIndex + 1) / FTotalFramesInOnePeriod); // 缩放尺度
cv::Mat rotateMat = cv::getRotationMatrix2D(center, angle, scale);
cv::warpAffine(srcMat, destMat, rotateMat, srcMat.size());
}
演示效果