From f8967f3893e0a31b22aa7014e4c7fca6c19878d4 Mon Sep 17 00:00:00 2001 From: Damian Kowalski Date: Sun, 7 Apr 2024 13:26:29 +0200 Subject: [PATCH] implemented window function --- src/core/transformations/transformation.cpp | 26 +++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/core/transformations/transformation.cpp b/src/core/transformations/transformation.cpp index 8cd9104..caf8b86 100644 --- a/src/core/transformations/transformation.cpp +++ b/src/core/transformations/transformation.cpp @@ -158,9 +158,31 @@ math::matrix Transformation::getWindow(int x, int y, int size, Channel channel, Mode mode = RepeatEdge) { - math::matrix window(size,size); + math::matrix window(size, size); + int center = size / 2; - qDebug() << Q_FUNC_INFO << "Not implemented yet!"; + for (int i = 0; i < size; i++) + { + for (int j = 0; j < size; j++) + { + QRgb p = getPixel(x - center + i, y - center + j, mode); + switch (channel) + { + case RChannel: + window[i][j] = qRed(p); + break; + case GChannel: + window[i][j] = qGreen(p); + break; + case BChannel: + window[i][j] = qBlue(p); + break; + case LChannel: + window[i][j] = qGray(p); + break; + } + } + } return window; }