From 2ddced7d419e23d282e0dc714f83155e28120603 Mon Sep 17 00:00:00 2001 From: Laurent <2-naaturel@users.noreply.gitlab.naaturel.be> Date: Tue, 23 Jun 2026 20:27:12 +0200 Subject: [PATCH] Import from internal git --- .gitignore | 43 ++ .idea/.gitignore | 12 + .idea/gradle.xml | 17 + .idea/misc.xml | 10 + .idea/vcs.xml | 6 + README.md | 86 ++++ architecture.png | Bin 0 -> 16205 bytes build.gradle.kts | 24 ++ gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 60756 bytes gradle/wrapper/gradle-wrapper.properties | 6 + gradlew | 234 +++++++++++ gradlew.bat | 89 +++++ menu_fourier.png | Bin 0 -> 321620 bytes settings.gradle.kts | 1 + src/main/java/Main.java | 28 ++ src/main/java/app/AppModule.java | 49 +++ src/main/java/app/INavigator.java | 7 + src/main/java/app/SwingNavigator.java | 23 ++ src/main/java/app/state/AppState.java | 37 ++ .../java/app/state/DoubleMatrixState.java | 49 +++ src/main/java/app/state/State.java | 16 + src/main/java/domain/common/Mode.java | 9 + .../java/domain/events/ImageChangedEvent.java | 5 + .../domain/events/MatrixChangedEvent.java | 6 + .../java/domain/events/ModeChangedEvent.java | 5 + .../events/fourier/ComplexMatrixChanged.java | 6 + .../events/fourier/ImaginaryChangedEvent.java | 6 + .../events/fourier/ModuleChangedEvent.java | 6 + .../events/fourier/PhaseChangedEvent.java | 6 + .../events/fourier/RealChangedEvent.java | 6 + .../java/domain/image/GrayScaleMatrix.java | 130 ++++++ src/main/java/domain/image/Image.java | 126 ++++++ src/main/java/domain/image/Pixel.java | 62 +++ .../processing/complex/ComplexMatrix.java | 80 ++++ .../image/processing/complex/Complexe.java | 61 +++ .../image/processing/fourier/Fourier.java | 173 ++++++++ .../processing/histogram/Histogramme.java | 27 ++ .../lineaire/FiltrageLinaireGlobal.java | 20 + .../infrastructure/image/io/ImageLoader.java | 39 ++ .../infrastructure/image/io/ImageSaver.java | 12 + .../java/infrastructure/ui/ImageMapper.java | 55 +++ .../presenters/DoubleMatrixPresenter.java | 126 ++++++ src/main/java/presenters/MainPresenter.java | 67 ++++ src/main/java/presenters/NavPresenter.java | 55 +++ src/main/java/services/ImageService.java | 55 +++ src/main/java/services/ModeService.java | 22 ++ .../components/image/ImagePanel.java | 79 ++++ .../components/intent/FileChooser.java | 9 + .../implementation/components/nav/Menu.java | 32 ++ .../components/nav/MenuItem.java | 25 ++ .../implementation/components/nav/NavBar.java | 301 ++++++++++++++ .../dialogs/GreyScaleImageCreatorDialog.java | 38 ++ .../dialogs/GreyScalePicker.java | 122 ++++++ .../dialogs/ImageCreatorDialog.java | 167 ++++++++ .../dialogs/RGBImageCreatorDialog.java | 24 ++ .../ui/implementation/views/DoubleMatrix.java | 374 ++++++++++++++++++ .../ui/implementation/views/MainView.java | 201 ++++++++++ .../java/ui/interfaces/IDoubleMatrix.java | 11 + src/main/java/ui/interfaces/IMainView.java | 15 + src/main/java/ui/interfaces/INavBar.java | 8 + src/main/resources/Thumbs.db | Bin 0 -> 16384 bytes src/main/resources/cp_51_p1.jpg | Bin 0 -> 3063 bytes src/main/resources/cp_51_p3.jpg | Bin 0 -> 1846 bytes src/main/resources/cp_59_p3.jpg | Bin 0 -> 1857 bytes src/main/resources/dd_27_p3.jpg | Bin 0 -> 1897 bytes src/main/resources/dd_28_p1.jpg | Bin 0 -> 3535 bytes src/main/resources/display_14_p3.jpg | Bin 0 -> 1871 bytes src/main/resources/file_65_p3.jpg | Bin 0 -> 1939 bytes src/main/resources/folder_036_p3.jpg | Bin 0 -> 1863 bytes src/main/resources/net_13_p1.jpg | Bin 0 -> 3868 bytes src/main/resources/report_32_hot.jpg | Bin 0 -> 1197 bytes src/main/resources/report_48_hot.jpg | Bin 0 -> 4820 bytes 72 files changed, 3308 insertions(+) create mode 100644 .gitignore create mode 100644 .idea/.gitignore create mode 100644 .idea/gradle.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/vcs.xml create mode 100644 README.md create mode 100644 architecture.png create mode 100644 build.gradle.kts create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100644 gradlew create mode 100644 gradlew.bat create mode 100644 menu_fourier.png create mode 100644 settings.gradle.kts create mode 100644 src/main/java/Main.java create mode 100644 src/main/java/app/AppModule.java create mode 100644 src/main/java/app/INavigator.java create mode 100644 src/main/java/app/SwingNavigator.java create mode 100644 src/main/java/app/state/AppState.java create mode 100644 src/main/java/app/state/DoubleMatrixState.java create mode 100644 src/main/java/app/state/State.java create mode 100644 src/main/java/domain/common/Mode.java create mode 100644 src/main/java/domain/events/ImageChangedEvent.java create mode 100644 src/main/java/domain/events/MatrixChangedEvent.java create mode 100644 src/main/java/domain/events/ModeChangedEvent.java create mode 100644 src/main/java/domain/events/fourier/ComplexMatrixChanged.java create mode 100644 src/main/java/domain/events/fourier/ImaginaryChangedEvent.java create mode 100644 src/main/java/domain/events/fourier/ModuleChangedEvent.java create mode 100644 src/main/java/domain/events/fourier/PhaseChangedEvent.java create mode 100644 src/main/java/domain/events/fourier/RealChangedEvent.java create mode 100644 src/main/java/domain/image/GrayScaleMatrix.java create mode 100644 src/main/java/domain/image/Image.java create mode 100644 src/main/java/domain/image/Pixel.java create mode 100644 src/main/java/domain/image/processing/complex/ComplexMatrix.java create mode 100644 src/main/java/domain/image/processing/complex/Complexe.java create mode 100644 src/main/java/domain/image/processing/fourier/Fourier.java create mode 100644 src/main/java/domain/image/processing/histogram/Histogramme.java create mode 100644 src/main/java/domain/image/processing/lineaire/FiltrageLinaireGlobal.java create mode 100644 src/main/java/infrastructure/image/io/ImageLoader.java create mode 100644 src/main/java/infrastructure/image/io/ImageSaver.java create mode 100644 src/main/java/infrastructure/ui/ImageMapper.java create mode 100644 src/main/java/presenters/DoubleMatrixPresenter.java create mode 100644 src/main/java/presenters/MainPresenter.java create mode 100644 src/main/java/presenters/NavPresenter.java create mode 100644 src/main/java/services/ImageService.java create mode 100644 src/main/java/services/ModeService.java create mode 100644 src/main/java/ui/implementation/components/image/ImagePanel.java create mode 100644 src/main/java/ui/implementation/components/intent/FileChooser.java create mode 100644 src/main/java/ui/implementation/components/nav/Menu.java create mode 100644 src/main/java/ui/implementation/components/nav/MenuItem.java create mode 100644 src/main/java/ui/implementation/components/nav/NavBar.java create mode 100644 src/main/java/ui/implementation/dialogs/GreyScaleImageCreatorDialog.java create mode 100644 src/main/java/ui/implementation/dialogs/GreyScalePicker.java create mode 100644 src/main/java/ui/implementation/dialogs/ImageCreatorDialog.java create mode 100644 src/main/java/ui/implementation/dialogs/RGBImageCreatorDialog.java create mode 100644 src/main/java/ui/implementation/views/DoubleMatrix.java create mode 100644 src/main/java/ui/implementation/views/MainView.java create mode 100644 src/main/java/ui/interfaces/IDoubleMatrix.java create mode 100644 src/main/java/ui/interfaces/IMainView.java create mode 100644 src/main/java/ui/interfaces/INavBar.java create mode 100644 src/main/resources/Thumbs.db create mode 100644 src/main/resources/cp_51_p1.jpg create mode 100644 src/main/resources/cp_51_p3.jpg create mode 100644 src/main/resources/cp_59_p3.jpg create mode 100644 src/main/resources/dd_27_p3.jpg create mode 100644 src/main/resources/dd_28_p1.jpg create mode 100644 src/main/resources/display_14_p3.jpg create mode 100644 src/main/resources/file_65_p3.jpg create mode 100644 src/main/resources/folder_036_p3.jpg create mode 100644 src/main/resources/net_13_p1.jpg create mode 100644 src/main/resources/report_32_hot.jpg create mode 100644 src/main/resources/report_48_hot.jpg diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1fac4d5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,43 @@ +.gradle +build/ +!gradle/wrapper/gradle-wrapper.jar +!**/src/main/**/build/ +!**/src/test/**/build/ +.kotlin + +### IntelliJ IDEA ### +.idea/modules.xml +.idea/jarRepositories.xml +.idea/compiler.xml +.idea/libraries/ +*.iws +*.iml +*.ipr +out/ +!**/src/main/**/out/ +!**/src/test/**/out/ + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache +bin/ +!**/src/main/**/bin/ +!**/src/test/**/bin/ + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..bc44e09 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,12 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +/discord.xml +/material_theme_project_new.xml +/PMDPlugin.xml +/.name \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml new file mode 100644 index 0000000..2a65317 --- /dev/null +++ b/.idea/gradle.xml @@ -0,0 +1,17 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..f16dea7 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..3fccfec --- /dev/null +++ b/README.md @@ -0,0 +1,86 @@ +# Projet TDS MASI 4 +--- +# Ce qui a changé + +## Fonctionnalité +Certaines fonctionnalités ont été déplacées ou légérement adaptée afin de les rendre +plus facile à prendre en main + +--- + +### Réorganisation des menus +Certains items du menu tels que le chargement et la création des image, +les fonctionnalités de dessin et l'affichage des transformées de Fourier ont été rémaniés. +--- + +### Chargement et création des images +Désormais les images sont automatiquement chargée en format RGB. +Leur réprésentation en niveaux de gris est gardée en mémoire à chaque +modification de l'image et peut-être utilisée dès que nécessaire. + +#### Exemple +```java +//Crée une image blanche de 512 pixels par 512 pixels +Image image = new Image(255,255,255, 512,512); + +//Crée une copie de l'image en récupérant son équivalent en niveaus de gris +GrayScaleMatrix = image.toGrayScale(); +``` + +--- + +### Affichage des transformées de fourier + +Le module, la phase, la partie réelle et la partie imaginaire sont maintenant +régroupés dans une seule et même fenêtre. L'affichage des transformées de plusieurs +images différentes à travers différentes fenêtres reste possible. + +![fourier](./menu_fourier.png) +--- + +## Architecture +C'est ici que la majorité des changements ont eus lieu. +Une architecture et des patterns modernes ont remplacé la majorité +de la base de code précédente. + +### MVP +Le programme utilise maintenant un design pattern architectural +Model-View-Presenter afin de séparer au mieux les responsabilités +des différentes couches et d'imposer un flux d'éxecution strict +tel que décrit comme suit : + +- View : Réceptionne les événements utilisateur et gère l'état visuel de la fenêtre +- Presenter : Couche d'orchestration entre la vue et la logique métier. Possède un accès aux données locales à la vue courante. +- Services : Couche tampons faisant le lien entre les presenters, l'infrastructure et la couche domaine. Possède un accès à l'état global de l'application +- Domaine : Contient la logique métier de l'application. Doit rester totalement agnostique de toute dépendance technologique +- Infrastructure : Couche contenant un accès à des ressources externes telles que le système de fichier de la machine hôte +![architecture](./architecture.png) + +### Gestion d'état +La gestion d'état a été remaniée. Plusieurs composants d'état sont maintenant disponabible dans le package *app.state* : +- Classe abstraite *State* : Classe parent donnant une structure à chaque classe d'état +- Etat global du programme : Représenté par la classe *AppState*. Cet classe est déclarée comme étant un singleton dans le conteneur Guava +- Etat local d'une vue : Representé par toutes les autres classes disponibles dans le package. Ne devrait pas être un singleton + +### Injection de dépendances +Le programme utilise maintenant le conteneur d'injection de dépendance de Google, Guava. +Cet ajout permet d'isoler la logique d'instanciation des différents composants lors de l'éxecution. +La logique de navigation entre les différentes fenêtres s'en retrouve facilitée. +Toutes les dépendances sont enregistrées dans la classe *AppModule* au sein du package *app* + +### Logique de navigation +L'injection de dépendance précédement expliquée a permis d'isoler la logique de navigation. +Désormais, pour naviguer entre différentes vue, il suffit de créer une méthode au sein de +la classe SwingNavigator, d'injecter l'interface INavigator dans une Presenter et d'appeler la méthode nouvellement créée. + +Un exemple de fonctionnement est déjà fourni dans la classe SwingNavigator et peut-être facilement retracé en trouvant +les usages de la méthode *showFourier()* avec un IDE moderne. + +#### Note importante +Toutes les vues doivent être enregistrée en tant que dépendance au sein du conteneur Guava. +Pour ce faire, différents exemples sont déjà implémenté dans la classe *AppModule*. +Cet ajout aura pour conséquence de donner accès à un objet ``Provider`` (où T est le type de la dépendance enregistrée) +qui pourra être injecté dans la classe SwingNavigator. + +Appeler la méthode ``Provider.get()`` aura pour conséquence d'instancier la dépendance désirée, dans notre cas, +une potentielle vue qui pourra ensuite être affichée. diff --git a/architecture.png b/architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..c1f7d31476ccdf80f4a27079f8ccb137fdb67b99 GIT binary patch literal 16205 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 literal 0 HcmV?d00001 diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..d16acd4 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,24 @@ +plugins { + id("java") +} + +group = "be.naaturel" +version = "1.0-SNAPSHOT" + +repositories { + mavenCentral() +} + +dependencies { + implementation("org.jfree:jfreechart:1.5.4") + implementation("com.google.inject:guice:7.0.0") + implementation("com.google.guava:guava:33.4.0-jre") + + testImplementation(platform("org.junit:junit-bom:5.10.0")) + testImplementation("org.junit.jupiter:junit-jupiter") + testRuntimeOnly("org.junit.platform:junit-platform-launcher") +} + +tasks.test { + useJUnitPlatform() +} \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..249e5832f090a2944b7473328c07c9755baa3196 GIT binary patch literal 60756 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 '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +APP_NAME="Gradle" +APP_BASE_NAME=${0##*/} + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/menu_fourier.png b/menu_fourier.png new file mode 100644 index 0000000000000000000000000000000000000000..6636abe839d8dcb3659fdebbdb3f04cb0941e539 GIT binary patch literal 321620 zcma%iWmFsQ(>5+aQrz7gN-0v@U5dLEcefzHU5d826)5iRRzX5>cXxMq)8F5okMEwd zCueh#-MMFGubF%1nkZFe84Lh100ssILrzxmBMc1O9`qzdL4tl$q^q9`{eX4*C?gJ2 zHAcD*y+E)MQxb!LsZBt8GDU=5qdLp#y1~F;_WwO$hn-44!N9y0%Sno9cpDvMBQ|JG zFT8a6cb~32cAp!bHj0WBrJSTCN^5*%!qa$@g#Si0=>&T4Eklpi_A%k>r(y0}-H3jE z%7W4$w}f*Nzf(N!mHVp3ocpTQ9pCTwc5D+z(`nWV9f-ud{&-4XJHxA%{nkgCK)( zfoDH=-MAbMaAPS%U^f{Qd*8jhdIN^yGJ}96V*|UnO2b8{I9!fPl8QO+(YS>lad8+x z+HKwF6^8?I$(&yOAlA8B6tpIezNbnwE}IKvLXndRmTF1rB-sEu#V1GU1o9YIc%*#8 zc1-X5l^E}n`v>T!LaBB)c#SEO&xvWkr~Lgfr`3tz-25Vqpdg%-lvIsgB_k74k}Pck zs-R_e=ECC2eYZg6_v7xswr*TH#@eZkB=&zj;aJr?A|hflEt^a@mmf{(>-%nrA`vN< zm7@7_LOyRsOmczHjwivh{_Igp?pW!YDxV$TxXIV-yO+}czP1d-?BTU z{ofA-82?;eTyVPW*mI3+mpKag_OA58rlzKPyswHnhb`;u{;veBAD-ss=L`KKl)a(jE=@H*32{Rq=fTQr*& zZ9Dff^f(!iEq((MjXM%fgD)b@J0$LRNHKSntj!MQlJ@fS9pan$69iuldNsde`jhf6LnI0E#iCzQ{WuL?oLV_em#&`eH>*Xltybs!qUbd} zArg8@2N|VLCR}lynJ`8m_sc;%brawZ{` zBp>;_fM^nCOQ85~1zc>2cBX&%g37?au+-uL&+D|(0nc7vUoT;1W|r+AXu~*CSWxhW zh{$7hjbqjg)6Lje1ebtdR`)eeFi4c6FDlarV%zA|;Q+C&%i~)?L)^8>?>XdrhuX!d ze>WtysE^!QsaM#0PLlJZnhw$`%+F6`HJ&rr>bC2=-iK(==8kG(W3xIhaW7nhd31dD z@X$9gfyIn>nMMW+^+c#@KO4gxbm=!cu3v2bKD)du59#ji)=?3X#n9GIc=@cFPESj_ zHu9x@V_nHsz8F-YEha`)Wz>!-Bg2rN8fZV?-7Gr(lcO*HH@j;2bdAnPfeC#K-a!TJ zR`vsKt9Clo>%v=HWW!*ia`4Yji{XoP3@&@0(Js(pr1a$5Mlw2+`Xhj7`D4cb0N^{z zkUnWvMK&Y%@0#9}G4MsMwE7E6^|j?yPB#y6oUF>vOM5g$ z2<^@l<;_gY){Yd~JyO%qpiQ&!5ZFVv#AQIHIfZy{IRudT7|EzrOiNTxikD1lp_xaY z2w5GUGD8Xr3tbMTm}=wRoEb(k}UcA zXm1>exXPLK0&8a5!iC4zkE+9lt*(gq`T5hn)$|4`;ISk;APwNTM(tN=^{Be7h;zOh#DI&-u!-oH=){cAm`<;hMGL3WV_=sb z9?LN;Tj&N}w=y7C<|*dXx%a%hz(r*Poc>QI^bnOC!KkdPEL)iZzHf<^@Gh*_QkPLU z38hb__czCj>nA7d#9t%~GK6Vf--qO2737}ren5hS zg*Bu2CRUOJ_b*uZS%`9tDnmNAxVZUnedsad!lH^IBQ5>1N7WBZ{tEZ(C=esSNk_Mx zgtr%JQJ|%)sMvRpM&Nug#e{Wd;d820LJ>_3S$%Z`J4#zR3eQk zvlH#4t*vb;>4}0#E*ROfcEFvk-;{;DIiK&UyCZv>l6tgr#Au zA2&`UjX^9A=Rh0DZ9H2fp>nYq8hH$+j!n~UF~KkEUMN?wS)htJe*h5?k@%0D?VY|+ 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 j)nf!Dk$-|N=HPYeGEDl6ylcqd_ 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∓)( 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

IJgI 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�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 O0000 { + + NavBar navBar = injector.getInstance(NavBar.class); + MainView view = (MainView) injector.getInstance(IMainView.class); + view.setNavBar(navBar); + view.setVisible(true); + }); + } +} diff --git a/src/main/java/app/AppModule.java b/src/main/java/app/AppModule.java new file mode 100644 index 0000000..9eff494 --- /dev/null +++ b/src/main/java/app/AppModule.java @@ -0,0 +1,49 @@ +package app; + +import app.state.AppState; +import app.state.DoubleMatrixState; +import com.google.common.eventbus.EventBus; +import com.google.inject.AbstractModule; +import com.google.inject.Scopes; +import presenters.DoubleMatrixPresenter; +import presenters.MainPresenter; +import presenters.NavPresenter; +import services.ImageService; +import ui.implementation.components.nav.NavBar; +import ui.implementation.views.DoubleMatrix; +import ui.implementation.views.MainView; +import ui.interfaces.IDoubleMatrix; +import ui.interfaces.IMainView; +import ui.interfaces.INavBar; + +/** + * @author Laurent Crema + */ +public class AppModule extends AbstractModule { + + @Override + protected void configure() { + + //--- States --- + bind(AppState.class).in(Scopes.SINGLETON); + bind(DoubleMatrixState.class); + + //--- Application layer --- + bind(EventBus.class).in(Scopes.SINGLETON); + bind(INavigator.class).to(SwingNavigator.class).in(Scopes.SINGLETON); + + //--- UI layer --- + bind(INavBar.class).to(NavBar.class); + bind(IMainView.class).to(MainView.class); + bind(IDoubleMatrix.class).to(DoubleMatrix.class); + + //--- Presentation layer --- + bind(MainPresenter.class); + bind(NavPresenter.class); + bind(DoubleMatrixPresenter.class); + + //--- Service layer layer --- + bind(ImageService.class); + + } +} \ No newline at end of file diff --git a/src/main/java/app/INavigator.java b/src/main/java/app/INavigator.java new file mode 100644 index 0000000..49361e3 --- /dev/null +++ b/src/main/java/app/INavigator.java @@ -0,0 +1,7 @@ +package app; + +public interface INavigator { + + void showFourier(); + +} diff --git a/src/main/java/app/SwingNavigator.java b/src/main/java/app/SwingNavigator.java new file mode 100644 index 0000000..a264057 --- /dev/null +++ b/src/main/java/app/SwingNavigator.java @@ -0,0 +1,23 @@ +package app; + +import com.google.inject.Inject; +import com.google.inject.Provider; +import ui.implementation.views.DoubleMatrix; + +public class SwingNavigator implements INavigator { + + private final Provider doubleMatrixProvider; + + @Inject + public SwingNavigator( + Provider doubleMatrixProvider + ) { + this.doubleMatrixProvider = doubleMatrixProvider; + } + + @Override + public void showFourier() { + DoubleMatrix doubleMatrix = doubleMatrixProvider.get(); + doubleMatrix.setVisible(true); + } +} diff --git a/src/main/java/app/state/AppState.java b/src/main/java/app/state/AppState.java new file mode 100644 index 0000000..4d7e9af --- /dev/null +++ b/src/main/java/app/state/AppState.java @@ -0,0 +1,37 @@ +package app.state; + +import com.google.common.eventbus.EventBus; +import com.google.inject.Inject; +import com.google.inject.Singleton; +import domain.common.Mode; +import domain.events.ImageChangedEvent; +import domain.events.ModeChangedEvent; +import domain.image.Image; + +@Singleton +public class AppState extends State { + + private Mode mode; + private Image rgbImage; + + @Inject + public AppState(EventBus eventBus) { + super(eventBus); + } + + public void setMode(Mode mode) { + this.mode = mode; + this.eventBus.post(new ModeChangedEvent(mode)); + } + + public void setImage(Image image) { + this.rgbImage = image; + this.eventBus.post(new ImageChangedEvent(image)); + } + + public Image getImage(){ + return this.rgbImage; + } + + public Mode getMode() { return this.mode; } +} diff --git a/src/main/java/app/state/DoubleMatrixState.java b/src/main/java/app/state/DoubleMatrixState.java new file mode 100644 index 0000000..71815c6 --- /dev/null +++ b/src/main/java/app/state/DoubleMatrixState.java @@ -0,0 +1,49 @@ +package app.state; + +import com.google.common.eventbus.EventBus; +import com.google.inject.Inject; +import com.google.inject.Singleton; +import domain.events.fourier.*; +import domain.image.GrayScaleMatrix; +import domain.image.processing.complex.ComplexMatrix; + +public class DoubleMatrixState extends State { + + private ComplexMatrix fourier; + private GrayScaleMatrix module; + private GrayScaleMatrix phase; + private GrayScaleMatrix real; + private GrayScaleMatrix imaginary; + + @Inject + public DoubleMatrixState() { super(new EventBus()); } + + public ComplexMatrix getFourier() { + return fourier; + } + + public void setFourier(ComplexMatrix fourier) { + this.fourier = fourier; + this.eventBus.post(new ComplexMatrixChanged(fourier)); + } + + public void setModule(GrayScaleMatrix matrix) { + this.module = matrix; + this.eventBus.post(new ModuleChangedEvent(matrix)); + } + + public void setPhase(GrayScaleMatrix matrix) { + this.phase = matrix; + this.eventBus.post(new PhaseChangedEvent(matrix)); + } + + public void setReal(GrayScaleMatrix matrix) { + this.real = matrix; + this.eventBus.post(new RealChangedEvent(matrix)); + } + + public void setImaginary(GrayScaleMatrix matrix) { + this.imaginary = matrix; + this.eventBus.post(new ImaginaryChangedEvent(matrix)); + } +} \ No newline at end of file diff --git a/src/main/java/app/state/State.java b/src/main/java/app/state/State.java new file mode 100644 index 0000000..cded0ad --- /dev/null +++ b/src/main/java/app/state/State.java @@ -0,0 +1,16 @@ +package app.state; + +import com.google.common.eventbus.EventBus; + +public abstract class State { + + protected EventBus eventBus; + + public State(EventBus eventBus) { + this.eventBus = eventBus; + } + + public void register(Object obj) { + eventBus.register(obj); + } +} diff --git a/src/main/java/domain/common/Mode.java b/src/main/java/domain/common/Mode.java new file mode 100644 index 0000000..f81bb93 --- /dev/null +++ b/src/main/java/domain/common/Mode.java @@ -0,0 +1,9 @@ +package domain.common; + +public enum Mode { + DISABLED, + DRAW_PIXEL, + DRAW_LINE, + DRAW_RECTANGLE, + DRAW_CIRCLE, +} diff --git a/src/main/java/domain/events/ImageChangedEvent.java b/src/main/java/domain/events/ImageChangedEvent.java new file mode 100644 index 0000000..124fb89 --- /dev/null +++ b/src/main/java/domain/events/ImageChangedEvent.java @@ -0,0 +1,5 @@ +package domain.events; + +import domain.image.Image; + +public record ImageChangedEvent(Image image) { } diff --git a/src/main/java/domain/events/MatrixChangedEvent.java b/src/main/java/domain/events/MatrixChangedEvent.java new file mode 100644 index 0000000..997e5c9 --- /dev/null +++ b/src/main/java/domain/events/MatrixChangedEvent.java @@ -0,0 +1,6 @@ +package domain.events; + +import domain.image.GrayScaleMatrix; + +public record MatrixChangedEvent(GrayScaleMatrix matrix) { +} diff --git a/src/main/java/domain/events/ModeChangedEvent.java b/src/main/java/domain/events/ModeChangedEvent.java new file mode 100644 index 0000000..ed93ed3 --- /dev/null +++ b/src/main/java/domain/events/ModeChangedEvent.java @@ -0,0 +1,5 @@ +package domain.events; + +import domain.common.Mode; + +public record ModeChangedEvent(Mode mode) { } diff --git a/src/main/java/domain/events/fourier/ComplexMatrixChanged.java b/src/main/java/domain/events/fourier/ComplexMatrixChanged.java new file mode 100644 index 0000000..4cd7c45 --- /dev/null +++ b/src/main/java/domain/events/fourier/ComplexMatrixChanged.java @@ -0,0 +1,6 @@ +package domain.events.fourier; + +import domain.image.processing.complex.ComplexMatrix; + +public record ComplexMatrixChanged(ComplexMatrix matrix) { +} diff --git a/src/main/java/domain/events/fourier/ImaginaryChangedEvent.java b/src/main/java/domain/events/fourier/ImaginaryChangedEvent.java new file mode 100644 index 0000000..dc980d3 --- /dev/null +++ b/src/main/java/domain/events/fourier/ImaginaryChangedEvent.java @@ -0,0 +1,6 @@ +package domain.events.fourier; + +import domain.image.GrayScaleMatrix; + +public record ImaginaryChangedEvent(GrayScaleMatrix matrix) { +} diff --git a/src/main/java/domain/events/fourier/ModuleChangedEvent.java b/src/main/java/domain/events/fourier/ModuleChangedEvent.java new file mode 100644 index 0000000..e9c7c56 --- /dev/null +++ b/src/main/java/domain/events/fourier/ModuleChangedEvent.java @@ -0,0 +1,6 @@ +package domain.events.fourier; + +import domain.image.GrayScaleMatrix; + +public record ModuleChangedEvent(GrayScaleMatrix matrix) { +} diff --git a/src/main/java/domain/events/fourier/PhaseChangedEvent.java b/src/main/java/domain/events/fourier/PhaseChangedEvent.java new file mode 100644 index 0000000..4192da8 --- /dev/null +++ b/src/main/java/domain/events/fourier/PhaseChangedEvent.java @@ -0,0 +1,6 @@ +package domain.events.fourier; + +import domain.image.GrayScaleMatrix; + +public record PhaseChangedEvent(GrayScaleMatrix matrix) { +} diff --git a/src/main/java/domain/events/fourier/RealChangedEvent.java b/src/main/java/domain/events/fourier/RealChangedEvent.java new file mode 100644 index 0000000..9e97e81 --- /dev/null +++ b/src/main/java/domain/events/fourier/RealChangedEvent.java @@ -0,0 +1,6 @@ +package domain.events.fourier; + +import domain.image.GrayScaleMatrix; + +public record RealChangedEvent(GrayScaleMatrix matrix) { +} diff --git a/src/main/java/domain/image/GrayScaleMatrix.java b/src/main/java/domain/image/GrayScaleMatrix.java new file mode 100644 index 0000000..b40b0a3 --- /dev/null +++ b/src/main/java/domain/image/GrayScaleMatrix.java @@ -0,0 +1,130 @@ +package domain.image; + +import infrastructure.image.io.ImageSaver; + +import java.util.Arrays; + +/** + * @author Jean-Marc Wagner, Laurent Crema + */ +public class GrayScaleMatrix { + + private final double[][] matrix; + + private final double maxValue; + private final double minValue; + + public GrayScaleMatrix(double[][] matrix) { + this.matrix = matrix; + this.maxValue = computeMax(); + this.minValue = computeMin(); + } + + /** + * Returns a copy of the actual content of this matrix. + * Since a copy is returned, no change that will be applied on it is going to affect the original matrix + * @return a copy of the actual content + */ + public double[][] getRawData() { + return Arrays.copyOf(matrix, matrix.length); + } + + public int getWidth(){ + return matrix[0].length; + } + + public int getHeight(){ + return matrix.length; + } + + public double getMaxValue() { + return maxValue; + } + + public double getMinValue() { + return minValue; + } + + public double getValueAt(double normalized) { + if(normalized <= 0) { return minValue; } + if(normalized >= 1) { return maxValue; } + return minValue + (maxValue - minValue) * normalized; + } + + private double computeMax(){ + double res = matrix[0][0]; + for(int y = 0; y < getHeight(); y++) { + for (int x = 0; x < getWidth(); x++) { + double value = matrix[y][x]; + if (value > res) res = matrix[y][x]; + } + } + return res; + } + + private double computeMin(){ + double res = matrix[0][0]; + for(int y = 0; y < getHeight(); y++) { + for (int x = 0; x < getWidth(); x++) { + double value = matrix[y][x]; + if (value < res) res = matrix[y][x]; + } + } + return res; + } + + public GrayScaleMatrix clip() { + return clip(minValue, maxValue); + } + + public GrayScaleMatrix clip(double lowerBound, double upperBound) { + + int height = getHeight(); + int width = getWidth(); + + double[][] res = new double[height][width]; + + double range = upperBound - lowerBound; + if (range == 0) range = 1; + + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + + double v = matrix[y][x]; + double out; + + if (v >= upperBound) { + out = 255; + } else if (v <= lowerBound) { + out = 0; + } else { + out = (v - lowerBound) / range * 255.0; + } + + res[y][x] = Math.clamp(out, 0, 255); + } + } + + return new GrayScaleMatrix(res); + } + + public Image toImage() { + + Pixel[][] res = new Pixel[getHeight()][getWidth()]; + + double range = maxValue - minValue; + if (range == 0) range = 1; + + for (int y = 0; y < getHeight(); y++) { + for (int x = 0; x < getWidth(); x++) { + + double normalized = (matrix[y][x] - minValue) / range; + int gray = (int) (normalized * 255); + + res[y][x] = new Pixel(gray, gray, gray); + } + } + + return new Image(res); + } +} diff --git a/src/main/java/domain/image/Image.java b/src/main/java/domain/image/Image.java new file mode 100644 index 0000000..db2bb86 --- /dev/null +++ b/src/main/java/domain/image/Image.java @@ -0,0 +1,126 @@ +package domain.image; + +/** + * @author Laurent Crema + */ +public class Image { + + private final Pixel[][] pixels; + private GrayScaleMatrix grayScaleEquivalent; + + public Image(Pixel[][] pixels) { + if(pixels == null || pixels.length == 0 || pixels[0].length == 0) + throw new IllegalArgumentException("Invalid dimensions"); + this.pixels = pixels; + } + + public Image(int red, int green, int blue, int height, int width) { + pixels = new Pixel[height][width]; + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + pixels[y][x] = new Pixel(red, green, blue); + } + } + } + + public int getWidth(){ + return pixels[0].length; + } + + public int getHeight(){ + return pixels.length; + } + + public Pixel getPixel(int x, int y){ + if(x < 0 || y < 0 || x >= getWidth() || y >= getHeight()) + throw new IllegalArgumentException("Invalid coordinates"); + return pixels[y][x]; + } + + public void setPixelColor(int x, int y, int red, int green, int blue){ + if(x < 0 || y < 0 || x >= getWidth() || y >= getHeight()) + throw new IllegalArgumentException("Invalid coordinates"); + Pixel p = new Pixel(red, green, blue); + pixels[y][x] = p; + grayScaleEquivalent = toGrayScale(); + } + + public void setRectangleColor(int x1, int x2, int y1, int y2, + int red, int green, int blue) { + + int minX = Math.max(0, Math.min(x1, x2)); + int maxX = Math.min(pixels[0].length - 1, Math.max(x1, x2)); + + int minY = Math.max(0, Math.min(y1, y2)); + int maxY = Math.min(pixels.length - 1, Math.max(y1, y2)); + + Pixel p = new Pixel(red, green, blue); + + for (int y = minY; y <= maxY; y++) { + for (int x = minX; x <= maxX; x++) { + pixels[y][x] = p; + } + } + + grayScaleEquivalent = toGrayScale(); + } + + public void setLineColor(int x1, int x2, int y1, int y2, + int red, int green, int blue) { + + int dx = Math.abs(x2 - x1); + int dy = Math.abs(y2 - y1); + + int sx = x1 < x2 ? 1 : -1; + int sy = y1 < y2 ? 1 : -1; + + int err = dx - dy; + + Pixel p = new Pixel(red, green, blue); + + while (true) { + if (x1 >= 0 && y1 >= 0 && x1 < getWidth() && y1 < getHeight()) { + pixels[y1][x1] = p; + } + + if (x1 == x2 && y1 == y2) break; + + int e2 = 2 * err; + + if (e2 > -dy) { + err -= dy; + x1 += sx; + } + + if (e2 < dx) { + err += dx; + y1 += sy; + } + } + + grayScaleEquivalent = toGrayScale(); + } + + /** + * Return the corresponding gray scale matrix. Since this operation is destructive, the original image is not modified. + * Instead, a new one is returned. + * @return A newly converted image + */ + public GrayScaleMatrix toGrayScale() { + + if(grayScaleEquivalent != null) return this.grayScaleEquivalent; + + double[][] res = new double[getHeight()][getWidth()]; + + for (int y = 0; y < getHeight(); y++) { + for (int x = 0; x < getWidth(); x++) { + + Pixel p = pixels[y][x]; + res[y][x] = p.grayValue(); + } + } + + this.grayScaleEquivalent = new GrayScaleMatrix(res); + return this.grayScaleEquivalent; + } +} diff --git a/src/main/java/domain/image/Pixel.java b/src/main/java/domain/image/Pixel.java new file mode 100644 index 0000000..5af15f6 --- /dev/null +++ b/src/main/java/domain/image/Pixel.java @@ -0,0 +1,62 @@ +package domain.image; + +/** + * @author Laurent Crema + */ +public class Pixel { + + private int red, green, blue; + + public Pixel(int red, int green, int blue) { + + if(checkColorValidity(red)) + throw new IllegalArgumentException("Invalid red value"); // <-- here + if(checkColorValidity(green)) throw new IllegalArgumentException("Invalid green value"); + if(checkColorValidity(blue)) throw new IllegalArgumentException("Invalid blue value"); + + this.red = red; + this.green = green; + this.blue = blue; + } + + public int getRed() { + return red; + } + + public void setRed(int value) { + if(checkColorValidity(value)) throw new IllegalArgumentException("Invalid value"); + this.red = value; + } + + public int getGreen() { + return green; + } + + public void setGreen(int value) { + if(checkColorValidity(value)) throw new IllegalArgumentException("Invalid value"); + this.green = value; + } + + public int getBlue() { + return blue; + } + + public void setBlue(int value) { + if(checkColorValidity(value)) throw new IllegalArgumentException("Invalid value"); + this.blue = value; + } + + public boolean checkColorValidity(int color) { + return !(color >= 0 && color <= 255); + } + + /** + * Convert the current RGB combination into a gray value according to UIT-R BT 709 standard. + * The current RGB values are not modified. + * @return the corresponding gray scale value + */ + public int grayValue(){ + return (int) (0.2126 * red + 0.7152 * green + 0.0722 * blue); + } + +} diff --git a/src/main/java/domain/image/processing/complex/ComplexMatrix.java b/src/main/java/domain/image/processing/complex/ComplexMatrix.java new file mode 100644 index 0000000..f45b103 --- /dev/null +++ b/src/main/java/domain/image/processing/complex/ComplexMatrix.java @@ -0,0 +1,80 @@ +package domain.image.processing.complex; + +public class ComplexMatrix +{ + private Complexe m[][]; + private int lignes; + private int colonnes; + + /** Creates a new instance of MatriceComplexe */ + public ComplexMatrix(int l, int c) + { + lignes = l; + colonnes = c; + m = new Complexe[l][c]; + for(int i=0 ; i v ********** + double pr1[][] = new double[M][N]; + double pi1[][] = new double[M][N]; + + for(int m=0 ; m 0) + { + pr1[m][N-v] = pr1[m][v]; + pi1[m][N-v] = -pi1[m][v]; + } + } + } + + //********** m --> u ********** + double pr2[][] = new double[M][N]; + double pi2[][] = new double[M][N]; + + for(int v=0 ; v n ********** + double pr1[][] = new double[M][N]; + double pi1[][] = new double[M][N]; + + for(int u=0 ; u m ********** + double pr2[][] = new double[M][N]; + double pi2[][] = new double[M][N]; + + for(int n=0 ; n= 0) && (pixelGrayValue <= 255)) { + histo[pixelGrayValue]++; + } + } + } + return histo; + } +} diff --git a/src/main/java/domain/image/processing/lineaire/FiltrageLinaireGlobal.java b/src/main/java/domain/image/processing/lineaire/FiltrageLinaireGlobal.java new file mode 100644 index 0000000..14c95ea --- /dev/null +++ b/src/main/java/domain/image/processing/lineaire/FiltrageLinaireGlobal.java @@ -0,0 +1,20 @@ +package domain.image.processing.lineaire; + +import jdk.jshell.spi.ExecutionControl; + +public class FiltrageLinaireGlobal { + + public static int[][] filtrePasseBasIdeal(int[][] image,int frequenceCoupure){ + return null; + } + public static int[][] filtrePasseHautIdeal(int[][] image,int frequenceCoupure){ + return null; + } + public static int[][] filtrePasseBasButterworth(int[][] image,int frequenceCoupure,int ordre){ + return null; + } + public static int[][] filtrePasseHautButterworth(int[][] image,int frequenceCoupure, int ordre) { + return null; + } + +} diff --git a/src/main/java/infrastructure/image/io/ImageLoader.java b/src/main/java/infrastructure/image/io/ImageLoader.java new file mode 100644 index 0000000..259b427 --- /dev/null +++ b/src/main/java/infrastructure/image/io/ImageLoader.java @@ -0,0 +1,39 @@ +package infrastructure.image.io; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; + +import domain.image.Image; +import domain.image.Pixel; + +public class ImageLoader { + + public static Image loadImage(File f) throws IOException { + + BufferedImage buffered = ImageIO.read(f); + + if (buffered == null) throw new IOException("Unsupported or invalid image file: " + f); + + int width = buffered.getWidth(); + int height = buffered.getHeight(); + + Pixel[][] pixels = new Pixel[height][width]; + + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + + int rgb = buffered.getRGB(x, y); + + int r = (rgb >> 16) & 0xFF; + int g = (rgb >> 8) & 0xFF; + int b = rgb & 0xFF; + + pixels[y][x] = new Pixel(r, g, b); + } + } + + return new Image(pixels); + } +} \ No newline at end of file diff --git a/src/main/java/infrastructure/image/io/ImageSaver.java b/src/main/java/infrastructure/image/io/ImageSaver.java new file mode 100644 index 0000000..fae14b0 --- /dev/null +++ b/src/main/java/infrastructure/image/io/ImageSaver.java @@ -0,0 +1,12 @@ +package infrastructure.image.io; + +import domain.image.Image; + +import java.io.IOException; + +public class ImageSaver { + + public static void saveImage(Image image) throws IOException { + } + +} diff --git a/src/main/java/infrastructure/ui/ImageMapper.java b/src/main/java/infrastructure/ui/ImageMapper.java new file mode 100644 index 0000000..7eb2245 --- /dev/null +++ b/src/main/java/infrastructure/ui/ImageMapper.java @@ -0,0 +1,55 @@ +package infrastructure.ui; + +import domain.image.Image; +import domain.image.Pixel; + +import java.awt.image.BufferedImage; + +public final class ImageMapper { + + public static BufferedImage toBufferedImage(Image image) { + + int width = image.getWidth(); + int height = image.getHeight(); + + BufferedImage out = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); + + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + + Pixel p = image.getPixel(x, y); + + int rgb = (p.getRed() << 16) + | (p.getGreen() << 8) + | p.getBlue(); + + out.setRGB(x, y, rgb); + } + } + + return out; + } + + public static Image fromBufferedImage(BufferedImage img) { + + int width = img.getWidth(); + int height = img.getHeight(); + + Pixel[][] pixels = new Pixel[height][width]; + + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + + int rgb = img.getRGB(x, y); + + int r = (rgb >> 16) & 0xFF; + int g = (rgb >> 8) & 0xFF; + int b = rgb & 0xFF; + + pixels[y][x] = new Pixel(r, g, b); + } + } + + return new Image(pixels); + } +} diff --git a/src/main/java/presenters/DoubleMatrixPresenter.java b/src/main/java/presenters/DoubleMatrixPresenter.java new file mode 100644 index 0000000..b21a629 --- /dev/null +++ b/src/main/java/presenters/DoubleMatrixPresenter.java @@ -0,0 +1,126 @@ +package presenters; + +import app.state.DoubleMatrixState; +import com.google.common.eventbus.Subscribe; +import com.google.inject.Inject; +import domain.events.fourier.ImaginaryChangedEvent; +import domain.events.fourier.ModuleChangedEvent; +import domain.events.fourier.PhaseChangedEvent; +import domain.events.fourier.RealChangedEvent; +import domain.image.GrayScaleMatrix; +import domain.image.Image; +import domain.image.processing.complex.ComplexMatrix; +import services.ImageService; +import ui.interfaces.IDoubleMatrix; + +import java.io.IOException; + +/** + * @author Laurent Crema + */ +public class DoubleMatrixPresenter { + + private IDoubleMatrix view; + private final DoubleMatrixState state; + private final ImageService imageService; + + @Inject + public DoubleMatrixPresenter(ImageService imageService, DoubleMatrixState state) { + this.imageService = imageService; + this.state = state; + this.state.register(this); + } + + public void setView(IDoubleMatrix view){ + this.view = view; + } + + public void saveImage(Image image) throws IOException { + this.imageService.saveImage(image); + } + + public void loadModule(){ + double[][] module = getFourier().getModule(); + state.setModule(new GrayScaleMatrix(module)); + } + + public void loadPhase(){ + double[][] phase = getFourier().getPhase(); + state.setPhase(new GrayScaleMatrix(phase)); + } + + public void loadReal(){ + double[][] real = getFourier().getPartieReelle(); + state.setReal(new GrayScaleMatrix(real)); + } + + public void loadImaginary(){ + double[][] imaginary = getFourier().getPartieImaginaire(); + state.setImaginary(new GrayScaleMatrix(imaginary)); + } + + public double getValueAt(GrayScaleMatrix matrix, double normalized){ + return matrix.getValueAt(normalized); + } + + public void clipModule(double black, double white){ + GrayScaleMatrix module = new GrayScaleMatrix(getFourier().getModule()); + GrayScaleMatrix matrix = clip(module, black, white); + state.setModule(matrix); + } + + public void clipPhase(double black, double white){ + GrayScaleMatrix phase = new GrayScaleMatrix(getFourier().getPhase()); + GrayScaleMatrix matrix = clip(phase, black, white); + state.setPhase(matrix); + } + + public void clipReal(double black, double white){ + GrayScaleMatrix real = new GrayScaleMatrix(getFourier().getPartieReelle()); + GrayScaleMatrix matrix = clip(real, black, white); + state.setReal(matrix); + } + + public void clipImaginary(double black, double white){ + GrayScaleMatrix imaginary = new GrayScaleMatrix(getFourier().getPartieImaginaire()); + GrayScaleMatrix matrix = clip(imaginary, black, white); + state.setImaginary(matrix); + } + + @Subscribe + public void onModuleUpdate(ModuleChangedEvent event) { + GrayScaleMatrix module = new GrayScaleMatrix(getFourier().getModule()); + view.updateModule(module, event.matrix()); + } + + @Subscribe + public void onPhaseUpdate(PhaseChangedEvent event) { + GrayScaleMatrix phase = new GrayScaleMatrix(getFourier().getPhase()); + view.updatePhase(phase, event.matrix()); + } + + @Subscribe + public void onRealUpdate(RealChangedEvent event) { + GrayScaleMatrix real = new GrayScaleMatrix(getFourier().getPartieReelle()); + view.updateReal(real, event.matrix()); + } + + @Subscribe + public void onImaginaryUpdate(ImaginaryChangedEvent event) { + GrayScaleMatrix imaginary = new GrayScaleMatrix(getFourier().getPartieImaginaire()); + view.updateImaginary(imaginary, event.matrix()); + } + + private GrayScaleMatrix clip(GrayScaleMatrix matrix, double black, double white){ + double lowerBound = matrix.getValueAt(black); + double upperBound = matrix.getValueAt(white); + return matrix.clip(lowerBound, upperBound); + } + + private ComplexMatrix getFourier() { + if (state.getFourier() == null) { + state.setFourier(imageService.computeFourier()); + } + return state.getFourier(); + } +} diff --git a/src/main/java/presenters/MainPresenter.java b/src/main/java/presenters/MainPresenter.java new file mode 100644 index 0000000..ca33501 --- /dev/null +++ b/src/main/java/presenters/MainPresenter.java @@ -0,0 +1,67 @@ +package presenters; + +import com.google.common.eventbus.EventBus; +import com.google.common.eventbus.Subscribe; +import com.google.inject.Inject; +import domain.common.Mode; +import domain.events.ImageChangedEvent; +import domain.events.ModeChangedEvent; +import domain.image.Image; +import services.ImageService; +import services.ModeService; +import ui.interfaces.IMainView; + +/** + * @author Laurent Crema + */ +public class MainPresenter { + + private IMainView view; + private final ModeService modeService; + private final ImageService imageService; + + @Inject + public MainPresenter(ModeService modeService, ImageService imageService, EventBus eventBus) { + this.modeService = modeService; + this.imageService = imageService; + eventBus.register(this); + } + + public void setView(IMainView view) { + this.view = view; + } + + @Subscribe + public void onImageChanged(ImageChangedEvent e){ + view.displayImage(e.image()); + } + + @Subscribe + public void onModeChanged(ModeChangedEvent e){ + view.changeMode(e.mode()); + } + + public void drawPixel(int x, int y, int red, int green, int blue){ + if(modeService.getMode() != Mode.DRAW_PIXEL) return; + Image image = imageService.getImage(); + image.setPixelColor(x, y, red, green, blue); + imageService.setImage(image); + } + + public void drawShape(int x1, int x2, int y1, int y2, int red, int green, int blue){ + Image image = imageService.getImage(); + switch (modeService.getMode()) { + case DRAW_RECTANGLE: + image.setRectangleColor(x1, x2, y1, y2, red, green, blue); + break; + case DRAW_LINE: + image.setLineColor(x1, x2, y1, y2, red, green, blue); + break; + case DRAW_CIRCLE: + break; + } + imageService.setImage(image); + } + + +} diff --git a/src/main/java/presenters/NavPresenter.java b/src/main/java/presenters/NavPresenter.java new file mode 100644 index 0000000..9d1162b --- /dev/null +++ b/src/main/java/presenters/NavPresenter.java @@ -0,0 +1,55 @@ +package presenters; + +import app.INavigator; +import com.google.inject.Inject; +import domain.common.Mode; +import domain.image.GrayScaleMatrix; +import services.ImageService; +import services.ModeService; +import ui.interfaces.INavBar; + +import java.io.File; +import java.io.IOException; + +/** + * @author Laurent Crema + */ +public class NavPresenter { + + private INavBar navBar; + private INavigator navigator; + private final ImageService imageService; + private final ModeService modeService; + + @Inject + public NavPresenter(INavigator navigator, ImageService imageService, ModeService modeService) { + this.navigator = navigator; + this.imageService = imageService; + this.modeService = modeService; + } + + public void setView(INavBar navBar) { + this.navBar = navBar; + } + + public void createImage(int red, int green, int blue, int height, int width) { + imageService.createImage(red, green, blue, height, width); + } + + public void loadImage(File f) throws IOException { + imageService.loadImage(f); + } + + public void goToFourier(){ + navigator.showFourier(); + } + + public GrayScaleMatrix getImageGrayMatrix() { + //return ((CImageNG)appState.getImage()).getMatrice(); + return imageService.getImage().toGrayScale(); + } + + public void setMode(Mode mode) { + modeService.setMode(mode); + } +} diff --git a/src/main/java/services/ImageService.java b/src/main/java/services/ImageService.java new file mode 100644 index 0000000..f9a7f2b --- /dev/null +++ b/src/main/java/services/ImageService.java @@ -0,0 +1,55 @@ +package services; + +import app.state.AppState; +import com.google.inject.Inject; +import domain.image.Image; +import domain.image.GrayScaleMatrix; +import domain.image.processing.complex.ComplexMatrix; +import domain.image.processing.fourier.Fourier; +import infrastructure.image.io.ImageLoader; +import infrastructure.image.io.ImageSaver; + +import java.io.File; +import java.io.IOException; + +public class ImageService { + + private final AppState appState; + + @Inject + public ImageService(AppState appState) { + this.appState = appState; + } + + public void createImage(int red, int green, int blue, int height, int width) { + Image image = new Image(red, green, blue, height, width); + appState.setImage(image); + } + + public void loadImage(File f) throws IOException { + Image image = ImageLoader.loadImage(f); + appState.setImage(image); + } + + public void saveImage(Image image) throws IOException { + ImageSaver.saveImage(image); + } + + public ComplexMatrix computeFourier(){ + GrayScaleMatrix matrix = appState.getImage().toGrayScale(); + ComplexMatrix fourier = Fourier.Fourier2D(matrix.getRawData()); + return Fourier.decroise(fourier); + } + + public Image getImage(){ + return appState.getImage(); + } + + public void setImage(Image img){ + appState.setImage(img); + } + + public GrayScaleMatrix getGrayScale(){ + return appState.getImage().toGrayScale(); + } +} diff --git a/src/main/java/services/ModeService.java b/src/main/java/services/ModeService.java new file mode 100644 index 0000000..922bc7a --- /dev/null +++ b/src/main/java/services/ModeService.java @@ -0,0 +1,22 @@ +package services; + +import app.state.AppState; +import com.google.inject.Inject; +import domain.common.Mode; + +public class ModeService { + + private final AppState appState; + + @Inject + public ModeService(AppState appState) { + this.appState = appState; + } + + public void setMode(Mode m){ + appState.setMode(m); + } + + public Mode getMode() { return this.appState.getMode(); } + +} diff --git a/src/main/java/ui/implementation/components/image/ImagePanel.java b/src/main/java/ui/implementation/components/image/ImagePanel.java new file mode 100644 index 0000000..28e1434 --- /dev/null +++ b/src/main/java/ui/implementation/components/image/ImagePanel.java @@ -0,0 +1,79 @@ +package ui.implementation.components.image; + +import domain.image.GrayScaleMatrix; +import domain.image.Image; +import infrastructure.ui.ImageMapper; + +import javax.swing.*; +import java.awt.*; +import java.awt.image.BufferedImage; + + +public class ImagePanel extends JPanel { + private BufferedImage image; + private double scale; + private int drawW; + private int drawH; + private int offsetX; + private int offsetY; + + public ImagePanel() { } + + public ImagePanel(BufferedImage image) { + loadImage(image); + } + + public void loadImage(BufferedImage image){ + this.image = image; + setPreferredSize(new Dimension(image.getWidth(null), image.getHeight(null))); + repaint(); + } + + public void loadImage(GrayScaleMatrix matrix){ + this.image = ImageMapper.toBufferedImage(matrix.toImage()); + setPreferredSize(new Dimension(this.image.getWidth(null), this.image.getHeight(null))); + repaint(); + } + + public Point toImageCoordinates(int x, int y) { + if (image == null) return null; + + if (x < offsetX || x >= offsetX + drawW || + y < offsetY || y >= offsetY + drawH) { + return null; + } + + int imgX = (int) ((x - offsetX) / scale); + int imgY = (int) ((y - offsetY) / scale); + + return new Point(imgX, imgY); + } + + private void computeViewport() { + if (image == null) return; + + int imgW = image.getWidth(); + int imgH = image.getHeight(); + + scale = Math.min( + (double) getWidth() / imgW, + (double) getHeight() / imgH + ); + + drawW = (int) (imgW * scale); + drawH = (int) (imgH * scale); + + offsetX = (getWidth() - drawW) / 2; + offsetY = (getHeight() - drawH) / 2; + } + + + + @Override + protected void paintComponent(Graphics g) { + super.paintComponent(g); + if (image == null) return; + computeViewport(); + g.drawImage(image, offsetX, offsetY, drawW, drawH, null); + } +} diff --git a/src/main/java/ui/implementation/components/intent/FileChooser.java b/src/main/java/ui/implementation/components/intent/FileChooser.java new file mode 100644 index 0000000..dfcea99 --- /dev/null +++ b/src/main/java/ui/implementation/components/intent/FileChooser.java @@ -0,0 +1,9 @@ +package ui.implementation.components.intent; + +import javax.swing.*; +public class FileChooser extends JFileChooser { + + public FileChooser(String initialLocation) { + super(initialLocation); + } +} diff --git a/src/main/java/ui/implementation/components/nav/Menu.java b/src/main/java/ui/implementation/components/nav/Menu.java new file mode 100644 index 0000000..4b5e58b --- /dev/null +++ b/src/main/java/ui/implementation/components/nav/Menu.java @@ -0,0 +1,32 @@ +package ui.implementation.components.nav; + +import javax.swing.*; +import java.net.URL; + +public class Menu extends JMenu { + + public Menu(String title, JMenuItem... items) + { + this(title,null, items); + } + + public Menu(String title, String iconPath, JMenuItem... items) + { + super(title); + + if (iconPath != null) { + URL url = getClass().getResource(iconPath); + if (url != null) { + setIcon(new ImageIcon(url)); + } + } + + if (items != null) { + for (JMenuItem item : items) { + if (item != null) { + this.add(item); + } + } + } + } +} diff --git a/src/main/java/ui/implementation/components/nav/MenuItem.java b/src/main/java/ui/implementation/components/nav/MenuItem.java new file mode 100644 index 0000000..6277f52 --- /dev/null +++ b/src/main/java/ui/implementation/components/nav/MenuItem.java @@ -0,0 +1,25 @@ +package ui.implementation.components.nav; + +import javax.swing.*; +import java.awt.event.ActionListener; +import java.net.URL; + +public class MenuItem extends JMenuItem { + + public MenuItem(String title, ActionListener listener) { + this(title, null, listener); + } + + public MenuItem(String title, String iconPath, ActionListener listener) { + super(title); + if(iconPath != null) { + URL url = getClass().getResource(iconPath); + if (url != null) { + super.setIcon(new ImageIcon(url)); + } + } + if (listener != null) { + addActionListener(listener); + } + } +} diff --git a/src/main/java/ui/implementation/components/nav/NavBar.java b/src/main/java/ui/implementation/components/nav/NavBar.java new file mode 100644 index 0000000..6b14a40 --- /dev/null +++ b/src/main/java/ui/implementation/components/nav/NavBar.java @@ -0,0 +1,301 @@ +package ui.implementation.components.nav; + +import domain.image.GrayScaleMatrix; +import domain.image.processing.histogram.Histogramme; +import domain.common.Mode; +import jakarta.inject.Inject; +import org.jfree.chart.ChartFactory; +import org.jfree.chart.ChartFrame; +import org.jfree.chart.JFreeChart; +import org.jfree.chart.axis.ValueAxis; +import org.jfree.chart.plot.PlotOrientation; +import org.jfree.chart.plot.XYPlot; +import org.jfree.data.xy.XYSeries; +import org.jfree.data.xy.XYSeriesCollection; +import presenters.NavPresenter; +import ui.implementation.components.intent.FileChooser; +import ui.implementation.dialogs.ImageCreatorDialog; +import ui.implementation.dialogs.GreyScaleImageCreatorDialog; +import ui.implementation.dialogs.RGBImageCreatorDialog; +import ui.interfaces.INavBar; + +import javax.swing.*; +import java.awt.event.ActionEvent; +import java.io.File; +import java.io.IOException; + +/** + * @author Jean-Marc Wagner, Laurent Crema + */ +public class NavBar extends JMenuBar implements INavBar { + + private JMenu imageMenu; + private JMenu drawingMenu; + private JMenu fourierMenu; + private JMenu linearMenu; + private JMenu histogramMenu; + + private NavPresenter presenter; + + @Inject + public NavBar(NavPresenter presenter) { + this.presenter = presenter; + this.presenter.setView(this); + initComponents(); + } + + private void initComponents(){ + + imageMenu = new Menu("Image","/net_13_p1.jpg", + new Menu("Nouvelle", "/file_65_p3.jpg", + new MenuItem("RGB", e -> this.createImage(e, new RGBImageCreatorDialog(new JFrame(),true))), + new MenuItem("NG", e -> this.createImage(e, new GreyScaleImageCreatorDialog(new JFrame(),true))) + ), + new MenuItem("Ouvrir...", "/folder_036_p3.jpg", this::loadImage), + new MenuItem("Enregistrer sous...","/dd_27_p3.jpg", e -> {}), + new MenuItem("Quitter","/cp_59_p3.jpg", this::quit) + ); + + drawingMenu = new Menu("Editer","/dd_28_p1.jpg", + new Menu("Dessiner", "/display_14_p3.jpg", + new MenuItem("Couleur", this::chooseColor), + new Menu("Formes", + new MenuItem("Pixel", e -> this.setMode(e, Mode.DRAW_PIXEL)), + new MenuItem("Ligne", e -> this.setMode(e, Mode.DRAW_LINE)), + new MenuItem("Rectangle",e -> this.setMode(e, Mode.DRAW_RECTANGLE)), + new MenuItem("Cercle", e -> this.setMode(e, Mode.DRAW_CIRCLE)) + ) + ), + new Menu("Convertir", + new MenuItem("RGB", e -> {}), + new MenuItem("NG", e -> {}) + ) + ); + + fourierMenu = new Menu("Fourier","/cp_51_p1.jpg", + new MenuItem("Afficher", "/cp_51_p3.jpg", this::displayFourier) + ); + + linearMenu = new Menu("Linéaire","/cp_51_p1.jpg", + new Menu("Global", + new Menu("Formes", + new MenuItem("PasseBasIdeal", e -> this.setMode(e, Mode.DRAW_PIXEL)), + new MenuItem("PasseHautIdeal", e -> this.setMode(e, Mode.DRAW_LINE)), + new MenuItem("PasseBasButterworth",e -> this.setMode(e, Mode.DRAW_RECTANGLE)), + new MenuItem("PasseHautButterworth", e -> this.setMode(e, Mode.DRAW_CIRCLE)) + ) + ) + ); + + histogramMenu = new Menu("Histogramme","/report_48_hot.jpg", + new MenuItem("Afficher", "/report_32_hot.jpg",this::displayHistogram) + ); + + this.add(imageMenu); + this.add(drawingMenu); + this.add(fourierMenu); + this.add(linearMenu); + this.add(histogramMenu); + + drawingMenu.setEnabled(false); + fourierMenu.setEnabled(false); + linearMenu.setEnabled(false); + histogramMenu.setEnabled(false); + } + + //#################################################### + + private File chooseFile(){ + FileChooser chooser = new FileChooser("./"); + + int dialogResult = chooser.showOpenDialog(this); + if (dialogResult != JFileChooser.APPROVE_OPTION) return null; + + return chooser.getSelectedFile(); + } + + private void loadImage(ActionEvent e) { + try + { + File file = chooseFile(); + if(file == null) return; + presenter.loadImage(file); + activeMenusRGB(); + activeMenusNG(); + } + catch (IOException ex) + { + System.err.println("Erreur I/O : " + ex.getMessage()); + } + } + + private void quit(ActionEvent e) { + System.exit(0); + } + + private void createImage(ActionEvent e, ImageCreatorDialog dialog) { + dialog.setVisible(true); + presenter.createImage( + dialog.getRed(), dialog.getGreen(), dialog.getBlue(), + dialog.getImageHeight(), dialog.getImageWidth()); + activeMenusRGB(); + activeMenusNG(); + } + + private void setMode(ActionEvent e, Mode mode) { + presenter.setMode(mode); + } + + private void chooseColor(ActionEvent e) { + /*if (imageRGB != null) + { + Color newC = JColorChooser.showDialog(this,"Couleur du pinceau", couleurPinceauRGB); + if (newC != null) couleurPinceauRGB = newC; + observer.setCouleurPinceau(couleurPinceauRGB); + } + + if (imageNG != null) + { + GreyScalePicker dialog = new GreyScalePicker(new JFrame(),true, couleurPinceauNG); + dialog.setVisible(true); + couleurPinceauNG = dialog.getCouleur(); + }*/ + } + + + private void activeMenusNG() + { + drawingMenu.setEnabled(true); + fourierMenu.setEnabled(true); + linearMenu.setEnabled(true); + histogramMenu.setEnabled(true); + } + + private void activeMenusRGB() + { + drawingMenu.setEnabled(true); + fourierMenu.setEnabled(false); + linearMenu.setEnabled(false); + histogramMenu.setEnabled(false); + } + + //#################################################### + + private void displayHistogram(ActionEvent e) { + GrayScaleMatrix i_graymatrix = presenter.getImageGrayMatrix(); + int[] histo = Histogramme.Histogramme256(i_graymatrix); + + //Création du dataset + XYSeries serie = new XYSeries("Histo"); + for(int i=0 ; i<256 ; i++) serie.add(i,histo[i]); + XYSeriesCollection dataset = new XYSeriesCollection(); + dataset.addSeries(serie); + + // Creation du chart + JFreeChart chart = ChartFactory.createHistogram("Histogramme","Niveaux de gris", + "Nombre de pixels", dataset, PlotOrientation.VERTICAL,false,false,false); + + XYPlot plot = chart.getXYPlot(); + ValueAxis axeX = plot.getDomainAxis(); + axeX.setRange(0,255); + plot.setDomainAxis(axeX); + + // creation d'une frame + ChartFrame frame = new ChartFrame("Histogramme de l'image",chart); + frame.pack(); + frame.setVisible(true); + } + + private void jMenuItemFourierAfficherPartieImaginaireActionPerformed(ActionEvent e) { +// try +// { +// int f_int[][] = imageNG.getMatrice(); +// double f[][] = new double[imageNG.getLargeur()][imageNG.getHauteur()]; +// for(int i=0 ; i//GEN-BEGIN:initComponents + private void initComponents() { + jSlider = new javax.swing.JSlider(); + jPanel = new javax.swing.JPanel(); + jButtonOk = new javax.swing.JButton(); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + setTitle("Choix du niveau de gris"); + setResizable(false); + jSlider.setMajorTickSpacing(255); + jSlider.setMaximum(255); + jSlider.setMinorTickSpacing(15); + jSlider.setPaintLabels(true); + jSlider.setPaintTicks(true); + jSlider.addChangeListener(new javax.swing.event.ChangeListener() { + public void stateChanged(javax.swing.event.ChangeEvent evt) { + jSliderStateChanged(evt); + } + }); + + jPanel.setBorder(javax.swing.BorderFactory.createCompoundBorder(null, javax.swing.BorderFactory.createLineBorder(new Color(255, 0, 0)))); + javax.swing.GroupLayout jPanelLayout = new javax.swing.GroupLayout(jPanel); + jPanel.setLayout(jPanelLayout); + jPanelLayout.setHorizontalGroup( + jPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 62, Short.MAX_VALUE) + ); + jPanelLayout.setVerticalGroup( + jPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 45, Short.MAX_VALUE) + ); + + jButtonOk.setText("Ok"); + jButtonOk.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButtonOkActionPerformed(evt); + } + }); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jSlider, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(19, 19, 19) + .addComponent(jPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 20, Short.MAX_VALUE) + .addComponent(jButtonOk, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jButtonOk, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 47, Short.MAX_VALUE) + .addComponent(jPanel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jSlider, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap()) + ); + pack(); + }// //GEN-END:initComponents + + private void jButtonOkActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonOkActionPerformed + couleur = jSlider.getValue(); + setVisible(false); + dispose(); + }//GEN-LAST:event_jButtonOkActionPerformed + + private void jSliderStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_jSliderStateChanged + int valeur = jSlider.getValue(); + Color c = new Color(valeur,valeur,valeur); + jPanel.setBackground(c); + }//GEN-LAST:event_jSliderStateChanged + + public int getCouleur() { return couleur; } + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new GreyScalePicker(new javax.swing.JFrame(), true, 128).setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton jButtonOk; + private javax.swing.JPanel jPanel; + private javax.swing.JSlider jSlider; + // End of variables declaration//GEN-END:variables + +} diff --git a/src/main/java/ui/implementation/dialogs/ImageCreatorDialog.java b/src/main/java/ui/implementation/dialogs/ImageCreatorDialog.java new file mode 100644 index 0000000..e12a37d --- /dev/null +++ b/src/main/java/ui/implementation/dialogs/ImageCreatorDialog.java @@ -0,0 +1,167 @@ +package ui.implementation.dialogs; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.ActionEvent; + +public abstract class ImageCreatorDialog extends JDialog +{ + protected Color color; + protected int height; + protected int width; + + protected JButton confirmButton; + protected JPanel colorVisualizer; + protected JComponent colorPickerContainer; + + protected JTextField heightInput; + protected JTextField widthInput; + + public ImageCreatorDialog(Frame parent, boolean modal) + { + super(parent, modal); + initComponents(); + + color = new Color(255,255,255); + width = 256; + height = 256; + } + + private void initComponents() { + colorVisualizer = new JPanel(); + confirmButton = new JButton(); + widthInput = new JTextField(); + heightInput = new JTextField(); + + setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); + setTitle("Choix de la couleur"); + setResizable(false); + + GroupLayout jPanelLayout = new GroupLayout(colorVisualizer); + colorVisualizer.setBorder( + BorderFactory.createCompoundBorder(null, + BorderFactory.createLineBorder(new Color(255, 0, 0))) + ); + colorVisualizer.setLayout(jPanelLayout); + + jPanelLayout.setHorizontalGroup( + jPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGap(0, 62, Short.MAX_VALUE) + ); + jPanelLayout.setVerticalGroup( + jPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGap(0, 55, Short.MAX_VALUE) + ); + + confirmButton.setText("Ok"); + confirmButton.addActionListener(this::onConfirmClicked); + + widthInput.setHorizontalAlignment(JTextField.CENTER); + + heightInput.setHorizontalAlignment(JTextField.CENTER); + + JLabel widthLabel = new JLabel("Largeur"); + JLabel heightLabel = new JLabel("Hauteur"); + + colorPickerContainer = new JPanel(new BorderLayout()); + + GroupLayout layout = new GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGap(27, 27, 27) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(widthLabel) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(widthInput, GroupLayout.PREFERRED_SIZE, 97, GroupLayout.PREFERRED_SIZE) + .addGap(37, 37, 37) + .addComponent(heightLabel) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(heightInput, GroupLayout.PREFERRED_SIZE, 96, GroupLayout.PREFERRED_SIZE) + .addContainerGap(51, Short.MAX_VALUE)) + .addGroup(layout.createSequentialGroup() + .addComponent(colorVisualizer, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) + .addGap(25, 25, 25) + .addComponent(colorPickerContainer) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 135, Short.MAX_VALUE) + .addComponent(confirmButton, GroupLayout.PREFERRED_SIZE, 65, GroupLayout.PREFERRED_SIZE) + .addGap(26, 26, 26)))) + ); + + layout.linkSize(SwingConstants.HORIZONTAL, heightInput, widthInput); + + layout.setVerticalGroup( + layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addGap(24, 24, 24) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) + .addComponent(heightInput, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) + .addComponent(heightLabel) + .addComponent(widthInput, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) + .addComponent(widthLabel) + ) + .addGap(37, 37, 37) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) + .addComponent(confirmButton, GroupLayout.DEFAULT_SIZE, 57, Short.MAX_VALUE) + .addComponent(colorPickerContainer, GroupLayout.DEFAULT_SIZE, 57, Short.MAX_VALUE)) + .addComponent(colorVisualizer, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap()) + ); + pack(); + colorVisualizer.setBackground(color); + widthInput.setText("256"); + heightInput.setText("256"); + } + + protected void onColorChosen(ActionEvent e) { + Color color = JColorChooser.showDialog(this,"Couleur de fond", this.color); + if (color == null) return; + this.color = color; + colorVisualizer.setBackground(this.color); + } + + protected void onConfirmClicked(ActionEvent e) { + try + { + height = Integer.parseInt(widthInput.getText()); + width = Integer.parseInt(heightInput.getText()); + + setVisible(false); + dispose(); + } catch(NumberFormatException nfe) + { + JOptionPane.showMessageDialog(this, + "Hauteur et Largeur doivent etre entiers !","Erreur", + JOptionPane.ERROR_MESSAGE); + } + } + + public Color getImageColor() { + return color; + } + + public int getRed() { + return color.getRed(); + } + + public int getGreen() { + return color.getGreen(); + } + + public int getBlue() { + return color.getBlue(); + } + + public int getImageWidth(){ + return width; + } + + public int getImageHeight(){ + return height; + } + + protected abstract void createColorPicker(); +} diff --git a/src/main/java/ui/implementation/dialogs/RGBImageCreatorDialog.java b/src/main/java/ui/implementation/dialogs/RGBImageCreatorDialog.java new file mode 100644 index 0000000..8adca0e --- /dev/null +++ b/src/main/java/ui/implementation/dialogs/RGBImageCreatorDialog.java @@ -0,0 +1,24 @@ +package ui.implementation.dialogs; + +import javax.swing.*; +import java.awt.*; + +public class RGBImageCreatorDialog extends ImageCreatorDialog +{ + + private JButton colorPickerButton; + + public RGBImageCreatorDialog(Frame parent, boolean modal) + { + super(parent, modal); + createColorPicker(); + } + + @Override + protected void createColorPicker() { + colorPickerButton = new JButton(); + colorPickerButton.setText("Choisir"); + colorPickerButton.addActionListener(this::onColorChosen); + colorPickerContainer.add(colorPickerButton); + } +} diff --git a/src/main/java/ui/implementation/views/DoubleMatrix.java b/src/main/java/ui/implementation/views/DoubleMatrix.java new file mode 100644 index 0000000..f7cd691 --- /dev/null +++ b/src/main/java/ui/implementation/views/DoubleMatrix.java @@ -0,0 +1,374 @@ +package ui.implementation.views; + +import domain.image.GrayScaleMatrix; +import domain.image.Image; +import jakarta.inject.Inject; +import presenters.DoubleMatrixPresenter; +import ui.implementation.components.image.ImagePanel; +import ui.implementation.components.intent.FileChooser; +import ui.interfaces.IDoubleMatrix; + +import java.awt.*; +import java.awt.event.ActionEvent; +import java.io.*; +import java.util.Objects; + +import javax.swing.*; +import javax.swing.event.ChangeEvent; + +/** + * @author Jean-Marc Wagner, Laurent Crema + */ +public class DoubleMatrix extends JFrame implements IDoubleMatrix +{ + private double normalizedWhite; + private double normalizedBlack; + + private boolean isUpdating = false; + + private JTabbedPane modeTab; + private ImagePanel modulePreviewContainer; + private ImagePanel phasePreviewContainer; + private ImagePanel realPreviewContainer; + private ImagePanel imaginaryPreviewContainer; + + private JSlider whiteSlider; + private JTextField whiteTextField; + private JLabel maxLabel; + + private JSlider blackSlider; + private JTextField blackTextField; + private JLabel minLabel; + + private final DoubleMatrixPresenter presenter; + + @Inject + public DoubleMatrix(DoubleMatrixPresenter presenter) + { + this.presenter = presenter; + initComponents(); + presenter.setView(this); + initValues(); + } + + private void initComponents() { + + modulePreviewContainer = new ImagePanel(); + phasePreviewContainer = new ImagePanel(); + realPreviewContainer = new ImagePanel(); + imaginaryPreviewContainer = new ImagePanel(); + + blackSlider = buildSlider(); + whiteSlider = buildSlider(); + + blackTextField = buildTextField(Color.BLACK); + whiteTextField = buildTextField(null); + + minLabel = buildValueLabel(); + maxLabel = buildValueLabel(); + JLabel minValueText = new JLabel("Valeur MIN :"); + JLabel maxValueText = new JLabel("Valeur MAX :"); + + JButton saveButton = new JButton(new ImageIcon(Objects.requireNonNull(getClass().getResource("/dd_27_p3.jpg")))); + saveButton.addActionListener(this::saveImage); + + blackSlider.addChangeListener(this::onValueUpdate); + whiteSlider.addChangeListener(this::onValueUpdate); + + blackTextField.addActionListener(this::jTextFieldNoirActionPerformed); + whiteTextField.addActionListener(this::jTextFieldBlancActionPerformed); + + modeTab = buildModeTab(); + buildLayout(modeTab, maxValueText, minValueText, minLabel, maxLabel, saveButton); + + setTitle("Fourier"); + setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); + pack(); + } + + private void initValues(){ + modeTab.setSelectedIndex(1); + + blackSlider.setValue(0); + whiteSlider.setValue(1000); + } + + private JSlider buildSlider() { + return new JSlider(JSlider.VERTICAL); + } + + private JTextField buildTextField(Color background) { + JTextField field = new JTextField(); + field.setFont(new Font("Tahoma", Font.BOLD, 11)); + field.setForeground(Color.RED); + field.setHorizontalAlignment(JTextField.CENTER); + if (background != null) field.setBackground(background); + return field; + } + + private JLabel buildValueLabel() { + JLabel label = new JLabel("0.0"); + label.setFont(new Font("Tahoma", Font.BOLD, 11)); + label.setForeground(Color.BLUE); + return label; + } + + private JTabbedPane buildModeTab(){ + + JTabbedPane modeTabs = new JTabbedPane(); + modeTabs.addTab("Module", modulePreviewContainer); + modeTabs.addTab("Phase", phasePreviewContainer); + modeTabs.addTab("Partie réelle", realPreviewContainer); + modeTabs.addTab("Partie imaginaire", imaginaryPreviewContainer); + modeTabs.addChangeListener(e -> { + switch (modeTabs.getSelectedIndex()) { + case 0 -> presenter.loadModule(); + case 1 -> presenter.loadPhase(); + case 2 -> presenter.loadReal(); + case 3 -> presenter.loadImaginary(); + } + }); + return modeTabs; + } + + private void buildLayout(JTabbedPane modeTab, + JLabel labelMax, JLabel labelMin, + JLabel valeurMin, JLabel valeurMax, + JButton saveButton) { + + JPanel rightPanel = new JPanel(); + GroupLayout rightLayout = new GroupLayout(rightPanel); + rightPanel.setLayout(rightLayout); + + rightLayout.setHorizontalGroup( + rightLayout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addComponent(whiteTextField, GroupLayout.PREFERRED_SIZE, 90, GroupLayout.PREFERRED_SIZE) + .addGroup(rightLayout.createSequentialGroup() + .addComponent(blackSlider) + .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(whiteSlider) + ) + .addComponent(blackTextField, GroupLayout.PREFERRED_SIZE, 90, GroupLayout.PREFERRED_SIZE) + ); + + rightLayout.setVerticalGroup( + rightLayout.createSequentialGroup() + .addComponent(whiteTextField, GroupLayout.PREFERRED_SIZE, + GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(rightLayout.createParallelGroup(GroupLayout.Alignment.CENTER) + .addComponent(blackSlider) + .addComponent(whiteSlider) + ) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(blackTextField, GroupLayout.PREFERRED_SIZE, + GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) + ); + + // ------------------------- + // MAIN LAYOUT + // ------------------------- + GroupLayout layout = new GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + + layout.setHorizontalGroup( + layout.createParallelGroup(GroupLayout.Alignment.LEADING) + + // TOP BAR + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(labelMin) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(valeurMin) + .addGap(50) + .addComponent(labelMax) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(valeurMax) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, + GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(saveButton) + .addContainerGap() + ) + + // MAIN ROW + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(modeTab, 400, 400, Short.MAX_VALUE) + .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(rightPanel, GroupLayout.PREFERRED_SIZE, + GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) + .addContainerGap() + ) + ); + + layout.setVerticalGroup( + layout.createSequentialGroup() + + // TOP BAR + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) + .addComponent(labelMin) + .addComponent(valeurMin) + .addComponent(labelMax) + .addComponent(valeurMax) + .addComponent(saveButton) + ) + + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + + // MAIN CONTENT + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addComponent(modeTab) + .addComponent(rightPanel) + ) + ); + } + + private File chooseFile(){ + FileChooser chooser = new FileChooser("./"); + + int dialogResult = chooser.showOpenDialog(this); + if (dialogResult != JFileChooser.APPROVE_OPTION) return null; + + return chooser.getSelectedFile(); + } + + private void onValueUpdate(ChangeEvent e) { + if (isUpdating) return; + isUpdating = true; + + try { + int black = blackSlider.getValue(); + int white = whiteSlider.getValue(); + + int minGap = 1; + if (white - black < minGap) { + if (blackSlider.getValueIsAdjusting()) { + black = white - minGap; + blackSlider.setValue(black); + } else { + white = black + minGap; + whiteSlider.setValue(white); + } + } + + normalizedBlack = (double) black / blackSlider.getMaximum(); + normalizedWhite = (double) white / whiteSlider.getMaximum(); + + switch (modeTab.getSelectedIndex()) { + case 0 -> presenter.clipModule(normalizedBlack, normalizedWhite); + case 1 -> presenter.clipPhase(normalizedBlack, normalizedWhite); + case 2 -> presenter.clipReal(normalizedBlack, normalizedWhite); + case 3 -> presenter.clipImaginary(normalizedBlack, normalizedWhite); + } + + } finally { + isUpdating = false; + } + } + + + @Override + public void updateModule(GrayScaleMatrix source, GrayScaleMatrix clipped) { + updatePreview(modulePreviewContainer, source, clipped); + } + + @Override + public void updatePhase(GrayScaleMatrix source, GrayScaleMatrix clipped) { + updatePreview(phasePreviewContainer, source, clipped); + } + + @Override + public void updateReal(GrayScaleMatrix source, GrayScaleMatrix clipped) { + updatePreview(realPreviewContainer, source, clipped); + } + + @Override + public void updateImaginary(GrayScaleMatrix source, GrayScaleMatrix clipped) { + updatePreview(imaginaryPreviewContainer, source, clipped); + } + + private void updatePreview(ImagePanel imagePanel, GrayScaleMatrix source, GrayScaleMatrix matrix) { + try { + imagePanel.loadImage(matrix); + updateLabels(source.getMinValue(), source.getMaxValue()); + updateTextFields( + presenter.getValueAt(source, normalizedBlack), + presenter.getValueAt(source, normalizedWhite) + ); + } catch (Exception e){ + displayErrorMessage("Oups !", e.getMessage()); + } + } + + private void updateTextFields(double black, double white) { + blackTextField.setText(String.format("%.5f", black)); + whiteTextField.setText(String.format("%.5f", white)); + } + + private void updateLabels(double black, double white) { + minLabel.setText(String.format("%.5f", black)); + maxLabel.setText(String.format("%.5f", white)); + } + + private void saveImage(ActionEvent evt) { + + File file = chooseFile(); + if (file != null) { + try { + presenter.saveImage(null); + //image.enregistreFormatPNG(fichier); + } catch (IOException ex) { + System.err.println("Erreur I/O : " + ex.getMessage()); + } + } + } + + private void displayErrorMessage(String title, String message) { + JOptionPane.showMessageDialog( + this, + message, + title, + JOptionPane.ERROR_MESSAGE + ); + } + + private void jTextFieldNoirActionPerformed(ActionEvent evt) { +// double val = Double.parseDouble(jTextFieldNoir.getText()); +// +// double black = presenter.getBlackLevel(); +// double white = presenter.getWhiteLevel(); +// +// if (val < black) +// { +// jSliderNoir.setValue(0); +// return; +// } +// if (val >= normalizedWhite) +// { +// jSliderNoir.setValue(jSliderBlanc.getValue()-1); +// return; +// } +// int s = (int)((double)D*(val-black)/(white-black)+0.5); +// jSliderNoir.setValue(s); + + } + + private void jTextFieldBlancActionPerformed(ActionEvent evt) { +// double val = Double.parseDouble(jTextFieldBlanc.getText()); +// double black = presenter.getBlackLevel(); +// double white = presenter.getWhiteLevel(); +// +// if (val > white) +// { +// jSliderBlanc.setValue(D); +// return; +// } +// if (val <= normalizedBlack) +// { +// jSliderBlanc.setValue(jSliderNoir.getValue()+1); +// return; +// } +// int s = (int)((double)D*(val-black)/(white-black)+0.5); +// jSliderBlanc.setValue(s); + } +} diff --git a/src/main/java/ui/implementation/views/MainView.java b/src/main/java/ui/implementation/views/MainView.java new file mode 100644 index 0000000..03afaa0 --- /dev/null +++ b/src/main/java/ui/implementation/views/MainView.java @@ -0,0 +1,201 @@ +package ui.implementation.views; + +import com.google.inject.Inject; +import domain.common.Mode; +import domain.image.Image; +import infrastructure.ui.ImageMapper; +import presenters.MainPresenter; +import ui.implementation.components.image.ImagePanel; +import ui.implementation.components.nav.NavBar; +import ui.interfaces.IMainView; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.awt.event.MouseMotionAdapter; +import java.awt.image.BufferedImage; + +/** + * @author Jean-Marc Wagner, Laurent Crema + */ +public class MainView extends JFrame implements IMainView +{ + private Mode currentMode; + private ImagePanel imagePreviewContainer; + private final MainPresenter presenter; + + @Inject + public MainView(MainPresenter presenter){ + this.presenter = presenter; + this.presenter.setView(this); + initComponents(); + } + + public void setNavBar(NavBar navBar) { + setJMenuBar(navBar); + } + + private void initComponents() { + imagePreviewContainer = new ImagePanel(); + + imagePreviewContainer.addMouseMotionListener(new MouseMotionAdapter() { + @Override + public void mouseDragged(MouseEvent e) { + drawPixel(e.getX(), e.getY(), 255, 0, 0); + } + }); + + imagePreviewContainer.addMouseListener(new MouseAdapter() { + + private Point startPoint; + + @Override + public void mousePressed(MouseEvent e) { + startPoint = new Point(e.getX(), e.getY()); + } + + @Override + public void mouseReleased(MouseEvent e) { + Point endPoint = new Point(e.getX(), e.getY()); + if (startPoint == null) return; + + drawShape( + startPoint.x, + endPoint.x, + startPoint.y, + endPoint.y, + 255, 0, 0 + ); + + startPoint = null; + } + }); + + GroupLayout layout = new GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(imagePreviewContainer) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(imagePreviewContainer) + .addContainerGap()) + ); + + setSize(new Dimension(500, 400)); + setLocationRelativeTo(null); + } + + public void drawPixel(int x, int y, int red, int green, int blue){ + try { + Point p = imagePreviewContainer.toImageCoordinates(x, y); + if(p == null) return; + presenter.drawPixel((int)p.getX(), (int)p.getY(), red, green, blue); + } catch (Exception e) { + displayErrorMessage("Oups !", + "Impossible de dessiner sur l'image pour le moment : " + e.getMessage()); + } + } + + public void drawShape(int x1, int x2, int y1, int y2, int red, int green, int blue){ + try { + Point p1 = imagePreviewContainer.toImageCoordinates(x1, y1); + Point p2 = imagePreviewContainer.toImageCoordinates(x2, y2); + if(p1 == null || p2 == null) return; + presenter.drawShape( + (int)p1.getX(), (int)p2.getX(), (int) p1.getY(), (int) p2.getY(), + red, green, blue); + + } catch (Exception e) { + displayErrorMessage("Oups !", + "Impossible de dessiner sur l'image pour le moment : " + e.getMessage()); + } + } + + +// public void SelectCercleDetected(DeuxClicsEvent e) +// { +// if (presenter.isCircleModeActive()) +// { +// try +// { +// if (imageRGB != null) +// imageRGB.DessineCercle(e.getX1(),e.getY1(),e.getX2(),e.getY2(),couleurPinceauRGB); +// if (imageNG != null) +// imageNG.DessineCercle(e.getX1(),e.getY1(),e.getX2(),e.getY2(),couleurPinceauNG); +// } +// catch (CImageRGBException ex) +// { System.out.println("Erreur RGB : " + ex.getMessage()); } +// catch (CImageNGException ex) +// { System.out.println("Erreur NG : " + ex.getMessage()); } +// } +// } +// +// public void SelectCercleFillDetected(DeuxClicsEvent e) +// { +// if (presenter.isPlainCircleModeActive()) +// { +// try +// { +// if (imageRGB != null) +// imageRGB.RemplitCercle(e.getX1(),e.getY1(),e.getX2(),e.getY2(),couleurPinceauRGB); +// if (imageNG != null) +// imageNG.RemplitCercle(e.getX1(),e.getY1(),e.getX2(),e.getY2(),couleurPinceauNG); +// } +// catch (CImageRGBException ex) +// { System.out.println("Erreur RGB : " + ex.getMessage()); } +// catch (CImageNGException ex) +// { System.out.println("Erreur NG : " + ex.getMessage()); } +// } +// } +// +// public void SelectRectFillDetected(DeuxClicsEvent e) +// { +// if (presenter.isPlainRectangleActive()) +// { +// try +// { +// if (imageRGB != null) +// imageRGB.RemplitRect(e.getX1(),e.getY1(),e.getX2(),e.getY2(),couleurPinceauRGB); +// if (imageNG != null) +// imageNG.RemplitRect(e.getX1(),e.getY1(),e.getX2(),e.getY2(),couleurPinceauNG); +// } +// catch (CImageRGBException ex) +// { System.out.println("Erreur RGB : " + ex.getMessage()); } +// catch (CImageNGException ex) +// { System.out.println("Erreur NG : " + ex.getMessage()); } +// } +// } + + @Override + public void displayImage(Image image) { + try { + BufferedImage bufferedImage = ImageMapper.toBufferedImage(image); + imagePreviewContainer.loadImage(bufferedImage); + } catch (Exception ex) { + displayErrorMessage("Oups !", ex.getMessage()); + } + } + + @Override + public void changeMode(Mode m) { + + } + + private void displayErrorMessage(String title, String message) { + JOptionPane.showMessageDialog( + this, + message, + title, + JOptionPane.ERROR_MESSAGE + ); + } + +} diff --git a/src/main/java/ui/interfaces/IDoubleMatrix.java b/src/main/java/ui/interfaces/IDoubleMatrix.java new file mode 100644 index 0000000..42ec9c3 --- /dev/null +++ b/src/main/java/ui/interfaces/IDoubleMatrix.java @@ -0,0 +1,11 @@ +package ui.interfaces; + +import domain.image.GrayScaleMatrix; + +public interface IDoubleMatrix { + + void updateModule(GrayScaleMatrix source, GrayScaleMatrix clipped); + void updatePhase(GrayScaleMatrix source, GrayScaleMatrix clipped); + void updateReal(GrayScaleMatrix source, GrayScaleMatrix clipped); + void updateImaginary(GrayScaleMatrix source, GrayScaleMatrix clipped); +} diff --git a/src/main/java/ui/interfaces/IMainView.java b/src/main/java/ui/interfaces/IMainView.java new file mode 100644 index 0000000..54ed61b --- /dev/null +++ b/src/main/java/ui/interfaces/IMainView.java @@ -0,0 +1,15 @@ +package ui.interfaces; + +import domain.common.Mode; +import domain.image.Image; +import presenters.DoubleMatrixPresenter; +import presenters.MainPresenter; + +import java.awt.image.BufferedImage; + +public interface IMainView { + + void changeMode(Mode m); + void displayImage(Image image); + +} diff --git a/src/main/java/ui/interfaces/INavBar.java b/src/main/java/ui/interfaces/INavBar.java new file mode 100644 index 0000000..7f9b597 --- /dev/null +++ b/src/main/java/ui/interfaces/INavBar.java @@ -0,0 +1,8 @@ +package ui.interfaces; + +import presenters.NavPresenter; + +public interface INavBar { + + +} diff --git a/src/main/resources/Thumbs.db b/src/main/resources/Thumbs.db new file mode 100644 index 0000000000000000000000000000000000000000..79d32e63d59d9ec6d6175d290ced5626c76d4427 GIT binary patch literal 16384 zcmeI32Ut|ewx~Bra*`aIkt86JMY5=XfXaXb$)E%Q0Z9VV&;k-9jv({^0wPHyG&w0b zDhf)JoFvBvX)^t)o$;i(bDn4By?ej8p9}u3?%u1y+O=y{b?vp^chOFy6|qi2|00SI z0d#~Vg^vBh_juqvjxRz3LHOVejw37<`^%RQ1m1p^zt9;t1Z^b;oks^C1P}pmeNGG@ z0gwX702BZw040D5Kn(zw07MHo4xk6%t^)>;G6I-?{mcSVRsb7-9l!zL1mJYP%m4ft z(1D!6pF6|_sX$I3b%ne^?|i#3f-B~$6}ao?-^m>xAGqFl8y*2pN&FX0v45B08;%h| z_;_FI$EDwp<%^2YuZ{h+8Q+@iH+s1GaXt}e)3?@-8#6n&fd)k4m*fw>{t^2HKy4&PU*Uz`u@v+&IRKf1Llo`GBwEALlD@KH&GpKMWk>0{j3t0pJGk z0C)j>0Dizp0IqyNkO~1#0fYgk0U`iV0Pgz1^&##&N&=(+X8_WGvj7=@EC5%IJV+G) ziU1|RIe;?YJm3Q0B0vS83Qz-F0;mHt0GfcyfGYr8Sy~|d5ugpw0bB#<0`vg-00Y2v zfFZyLU<@z;m;%fI<^WtdmLRf!1Aqg30e%1k;64D?r+5GuA-H}&VkaOP4OMkj2oGG;7T^!U z4uexefRB&+2SNz`iAacu2nmVEh>4GpP>@kjkdu*S*?ivFYrN7a7gIGu$b7#aq-BX6B3`LXJlq&KhJqlTvA$A zUQt<9-PqLJ(%RPk`b~FFZ(skw$HAe=sp(HMvvczci|CEb&s&)7o!vd0U3d_|FJ}GC zvVXCQ7TASPNJv0PjI#?5-xEMUOGxyC*s$2xI7Frs3i-k&$>e9VXQ)d3pmPAd2%O5%o2n)YjjOM;-K!$g% zo@N6vgh4%ebt#-(HrLHnBL|83}`gB*AQB=`$wQ%~1umPbTqR#876Orm^EwVmUA=3Hq+WHJ0|&g$lUEqY!+ng&TZWuW4Ie(f zJZcc(1k3m6PmGYZi}Rpjd0gO4c$|8pKy7lasY5A9+pNQ4bM#dgdm8I0hL1eEuFR{Q zN0mmY4M&_c!K+i-+TpK7xL@5Vu?o2Un>mizmBheO27J#WiX%p75s-NB>LTdeDRBadH=CR9jYka3+HxDKaF(EKEgE0J~>c_{|O7(Hox)_ z_9h&nnyRbzGd@trjmnr|vbv-HWLk*-(06w3K#IDVzLR@>n;5o%UxtOI1e;-{bJ1Bh zSe2+hW1*)EC@e&4629a1Q0dMbg%YaFFtBOZwC>LI4Dn~qK4fVe7D8>xDCBFd9s16B zTchV%D&D5RSy{SFtECE$G|l3eB39L!99HgX8lT)E_j!3MM$^ISL0pWAKJhIUb}W=4 z)a-u9p7GNZ9|0)oGfJ!X$6+{KpFfeCul2xDEqDIHyVrxs?)(B8?^2xil@C<<;UYKF z8nQ;c#gfnPbDb-8E8UB>->rwcpd+4*J07&TXSigg9j%q!Q(H02tv0#kq9)s_ieza} zTCOOA4`!H*b>1#|eqKV3V3W#kZeMEpX71G|Nm_gRQ504$d^AW8xWZKO;7_{^%YSm8{JvTmSjF1#uVKaGVUAuN~7q%kU zSzwj~s$Io>>TW=Hw8R@=$_Hd)8}5)A{*a^<$#HeMf%qqfdFNw0 z{rfHBcv8D-tA0H^_aXywN%}-7=I@d1#LOO{x8z8jMDphnFC!nd+ql(Ky*5eQi=F6v zX1jworD8|h-dlQfvsGz;|0$}tWARP;tJJM+P7Kkzj`4d~$V^QS9X(N&9V(Ti*Don- ztLJlFv5TWM*8NfX({`e`J$AaKEvd!@EL5`g;PbeUv;TqFm@$*dcvJ86_(y}$cgMwM zl=phzp;)L=s6Qtp(_q>_!A|GF=#ZjB$RsjoBIx|N2+_?j8&F6*t{`?aowrLfhx_{S*oQU<-!))e}+P=L}un( zEAbe={Ega!8IDf3PZww**%Jb!>POOwVy4e_O89>+Kpe4lG@;k`sEW1rg_y7q zd%?A7%CU!3CAUSS9LUuZ$0$E^-C+n>9VqjDfE;7AOx?NU9=I`gq=+0?GI7hBTK3*@ zxGHW3QyxC*O{5%byp`ApGq?l>?uWP!D(I*;2nu`F#o-Y(XA8{KCF@Wpk9hZx0QQMM zE(PlIa-ZM>&YqLG4#BDerI{Xgb?WR{2&wZuFZ|eZ+K*-@=adwi=Im%TBV%_+{XU%i ziMB>b(xsFAajLPlUFKz~<*+H)X1ce6@ox~mB}azBcg*NZHOo{JiK7I#1lKT6>nV>y zYR}EqwxidUOFX8c8MK~bA?qDm-3x_kE;+pK69S%-SE>mXoZ~nL)5x{m7q!RGl1#48 z`8N^`2QtiEo`WqNI<&OSe2mcad!ugt(w2`KPjJJzE=ln`n!dYn;JBu}kvC5)Sm-)5 z2|2RdrlN9*pdCpBGv58Z5>vPWI`8ybt+*_9iC`>*+(&3&mevLldcFQkoGj}SpJEW6 z_hh({&h#emZFO+8HzGzO!m%5GA1hWA3a*J-odp_wq{-)PssL zyFKYWWKjJp`B?pmt}Ug%`EePzl zlqCn0UV#3>32wjU&&VIy|GEk))cv)7++NY25nTP?r_YzY@^7`@0_Z3FT0d@|>d(j@ zvEL0;D2?0T2l9RY;&*pu{%`vinBmmu@?w*f4+q>+Fq$C=@fKfO-k?|4EG9~C%r5d< zcd3$>ZV|rslU~I0ga!KvlK1dop^IQmKhauix8pH=Gs}y+p@<+_M7gJ0d~2V_w8pP& zrN4NAm7}e(e_)NMHG7J!!&GOMJcQiVF-x6mqdClLlxw%-<1vngiX5}^hjYLik-dfriutDXG*hCd%8hqETmf9BR{JbLv!|uKWY6U35tCu zdfMfM7p#@m%H|4zb{qGRFHhPHF*19JuwClGmfS2as#g+H{G^z0LqlELAPV}s3^xRHVw!7_K zqY%s~Caun~d5}Asf3v}Dq2K6J()Aa1OcSYy;@AF1e#uK~H}{2&M4_GS=1&BVk`!Qp zOIV0&FZJ?a+<}}Uykzm-YS|RCGU1T9+D!_r04mrr=7WSlo8a}FRe?hT=EWQt6%}^_ zq2V7RSi^dMZ#Mfne_i@MfBm8P>%0H@!~Sa@zxdUKyekP8P zOO}PjIm)I-X0~OIEuT-JT{1&sw0-w>O%~w7Q&nY4E9X0BJB18ajth_m+>K)~sbnv` zrOau#GUB%IVIaxN_)6t~)2S`5wA!*L;T(l!Ezu}#Hb$D|Yens+8o~)m#k4nVZPQx3 z36~joRS~Pfa~pZ$xAnQ1g7n15%?^)L2gm5B16wuXITnU};IHLLt$n88Ba%ke`y3w& zt5UAtwU{P$a_gyVD|0s*kMf8n7_7-Zig0xQtlu#xsl|$duaJG*7T79~ojzBZT=Cq; zTk*D}a4CKpZ~5WK+>@!21LgF^y@FVe8y*HV0oRSVkQd_#BWyh{`#?hDcW3SzrOL0C zOTt?8Q`f_c?bXc7*0E49hB=>c^kQ+L7ShUP9gn$hSA*%96ln;Z0N+^16D2S zk=EGS1aI*SC;uY0qs^WyO@n#&9V4j?FB{1h(r30JOEpaqBCj^)BJQA;6ML#Y!`*nE zM`TQvMAio&2(sYDyF|l`~yzCTP zizM^PEqwW$>3N1VrLl%5#2<_ZU;jyoMQqRDrT^5aHYlCULxjlLBcnf+JHDJT&Z;+l zZYDkut#!S}gDstH^a|_A%DA|MSIK!yZXWf#<)5C|639%|Ztq+}Qz_WNrLz~_C-B6- zm0EndORFz+Om#WiYgy4*x^^UF2R7MSv0kyS-#DPvUA9KC*nMd)Ilm_FN3&66mk2ja z@kxp|+&3WN!1`Qsd_QtTW9|pim(>!BNG{3AtNNl6#iHZQ^z60~Pg1s~TsZl%X>3Z} z_;zLJuJG46GT86eFBWC5}P&jC3A+_7Ac<^l2n1ppMF5Ksgt29y9w0cC)4Kn0)@ zPz9(4yac=g)BtJ$b%1(61E3Mm1ZW1d09pZU09?KQ+vWTE`A@8$!*t7;qRQvwY)(i7 z26i#5pMsSVuMkajJ@gX^Z$MVCMuj-!nlw3c^u1ENcqxW~1jRS*B$0@59Vy7Nn(NS^ z(Kc{$oiX=K=m>4@X;MqcY8#g{2!+$2*P0J+8ddfv@)+%CHTA=6`GhL1%k^U}PutO& z;8(GHBHP|qAl)KY-REdc^5FC{Twb$+CL$)2d5AX^5Uih2!9jwZL9(A0r4C{vkYfqK zFwv$PbwNT$2>;YWuY&W=45s!+rz^TY+gx+DpD809cHsK)(#H&27bO93vuAf+CY5!k zcE8P_LXm0R;c)=DXOe!u=5D~rK2PzBcey%=$GEJ1ItKCXqe#4Lni>;1YLXu~kuUwaGO>^`OeM5IUihp=UcQV&N8jm4Or7I9hvCXR$^GG+OqvYF z?v7Vjh*b9m^(+ybGVQ?UeJ%UEk#%sHttVgdi|oX0BX73u+xRWWsFxMC{4!2w88G~9 z3aU$2cP>m#XAiye&3Tt)a>35QktN13>()oXXZO`*mSs?#T0vNd!E#3#P1b16x?{5{ z6(AzWonx#?5ifGT_KvDaY=vtIHN_^QUVX7ZxWdB7|J z2=6H;MqP&s$;Qq~e7+&a;<8&jvvW%W#?%b6Y(mq2*0h*YatWzbZmZ*P%C~b!8*0d$ zPYhZbT`XL6kg*yn9IjK(6ezu~dbicjw)HAKotd>aI=3mYRL35@I5A(?6`S*Ri8r&L zPv=Dk=S++ihDy`=9P^1PQa?Gv5qkpz#)0EgQ~C*W)xJF=ayP{_Mn@*@oc$61IoVT# zmUUbF{ubTX7R$$$OzAH64*U7@ncFbBCU0HwMTAi<^JeyHuGCp96n2H@NIlia%i;2e z1DVOB8oG<&x3vd@Qq*L89`Ys7l%#wLvR`s&R>b!TKcX`y--%joH?-~*cAs&*_aHLU z5(_A7%81c&MTy^uZT zBBYpV?nW`JdTEQ}P?=qCJOIX!jqVC7T@li*HXc>HQwx_S<1o~nDHaQ?M>!p4)>(&} zN8f7;*}}`kLKaewyw(cR%cPILb`EIJ#$!vp16lcRvQA3X4Td+RkOVf$b~XJh6;9f{ zY=>O8-*B#qmHT-_oQfublZh+BAiu?MhP@{w9XV4P$NF0MM!rq;c$eGw>lg z#?AplG%RpSoazU=i|Dxlt9eqGy3nc;h24-7a&kWZ@=tl;%mkf}g*at5!)DBR}rZ zEEXa>Vjes=vF=e9bgj9_D_&hHK}yEyAgJ79mm7~&Nemr*(k;c4S_AWwD;|5;W~5TR zQJ(D6gxO0g#ttOgPS%ZrmQgZFT>R`-DK%QpE~e;SO6cq(ka`!|tk=>Pcdrw4)_k2X zRb`9v$+nySu(~=6=D9y3VE_3`tT-7c1UFZHOIbewrAqL76DJoSOAvKz31S*qYsAAg1Q^Y{4AuW_w^`S`89HH~g5YDTjwH*fN2($BvsM(W=xY?YSND`^<2r;U+z zXU?sT4v~r!xfa~;ENs?V$Ivo`x#P(sqQ5#-=N!v^c3O+8Y)JEPR}hmKYdrbMZs8lI z=LE(WY(z~?x_;~w=j5Sm*fr-0pma&4tK~9>n-<6PoAysgs7VTJb9gh)r33}L^$=7j zC49(E>XI5Ze@WI+2p#TpP9H1LUjluaYx`f;yz@%wn@Ytd*1t!duu z5P56INmIqO)`79(eQ<@-8P;J+Wajn{#YZ{|GUSzYEmWzAYO&DS6IG*Ugkc)dx6K(= zt+>;iL+*iCHYStLiz>=|%N@7o*19`~r#&AI8CdT-C1o35q(0f1>-Gag6>{rSs!9P8 zrG|$IE&)3s8?BE(Z$W26Yn?CK6bRNt<#0JoS*$3x)Eq(=eKlh7kSE23wajXqb70fHQL1eu( zh?3_5PYg(arvuDEr^h~HX?%k^d2`PIsc;OT;Y%q0$ilAYCh56@u{P6#p z`DY)$YSgDSK2f1<@WeH5-&V_r^@Mp7OrA)D5-nnq@Wb*%xd&@`j`ZM)rz z)94mtxkL1hLzc09El)*-PkD9IZt<&pq>bfk{yK%4rP<9V1N%xbkxEfMcQr6|yD;9Q zx#Nv}!PL~wcBfI#6f`gQ&%W%Ls*KaKA#iVpSr91Dajl+JXkQpAKJY16Jfc9;87nK4 zr#U@G@%U*Uli!S(i;aM_)}$WM=ARL!X`y%dxfhlktTktbhZa@2wb6!0i&F9oG=KW( zx=LtZvisg@d~SMo|1S5OSVFA`r9M49XC6mIsfCy7uBr?|A}iZ@T`6WxelTuc#K zZ;;&zTu5Ab(&gw$;C>?`=#iF(Wv3boWt327tL02kb8n^)Ph$Ct6+^jUHS02rV%O<5 zEt)DJ=MUSvFp;DFG0_<6=vvO6#Pfwlb_o~xSso2OFvAclpA2-e~2UfWG$CsdSds*CrkN-w^Lstamp zi*;8yEEMFcz+NYep?!-k3XixE>uTU)x8S(#Y$^v6X=Wzrf1E3ATegodP`U*F0p<0w zZHQ-c$450)zcj$S%0RDdskm)I5`UiR785n&b^Gq~_D-BB-;3>WCwo z3~Ds=rkN|UD@O->HbvUkbF6ir3wqG=Y7fe7X4I~NH3wY_oM~SguGgb@!f=V{h`O@8 ztW=%D#QuyhQmB-I^!0r65yRphEKuHhGGF6p|Jr&>FRNFnozrQR(e#6MWp>hVcKo@_ zds5p_F&JQ9>5yEbCHST7pLlNix)w)|JLVGO_N>uxDxJ zhIW`Jh(+s=j7>%sq>;sit%_~p&HJkQa0*;&K7ZYNqKNGC%y#xDOeLbBjfwb}mvhjT zg4Sf+a)|5nyO=5S&|^|!t1_zHk2fn`9F)x?NR=EZ4X%_Fm-c@ibY6ane*E*$t*4MP!kkc!Ap&&oWnJguY(YQ$C%z9I%G0ik@W{k5|<*xnC<<{7UlR7%;!cKL3 zUG9a4MUqJvJw;fJaxa%YJo?5l3DXo5S_teE1Z>4-@y@)O)_mz1u+cYV@e=A>c9efq zFM~lPOAgl&EEMOWqNEJZ&1W|x#$ci4xWR=~I(bn?DIs!aTKjv+En5-&@tFL{qU!@6aF9WM#^+IErOjEH2FQfh-eZ`)^J_0{frbIM)AfSmC|= zu%Q81+29ELVrW1}1XkAfi0LUaS;wfba4bFy(1O8q4Pbf(ns8Z7m;oGa0M}u)1=6?x zc2+q|OAD5k!S;vi>B9iF;=ko#tQh!zILAM{^LI}c*jPjSU4_=yW3hkKG-1CB|6u=L zfB-iD17Ki~9Ka?30tZ3JfLgz^I*Fc|!s zavt~-1+h2>rvMkXppYCOEDsUUJT5A(sAY;#KscmltfIX_LNgyc?i?5#0s&ywcK^|2 zc@9q2VYmf;E3&bJIXEDH$Nne^$Z-k+Lh_ozB3cTHrU(ZvQMj2G_wiF`M~rXCjeR=6 z17=Mm02TmDfUCOTs_d-vq3IX`IDqN1rI!Ft+| zy1Cb+;cN}-FNVs#&3xU&nut{kBB=ged9RJ07{bnu`>Zc1-*UO68hl0o|HrF@Jo7eTfh1z~a zSn0}0df-T}PVU%m-g)atu<3{v<>wlCf<#9aQDW|1WGu==`fl#6&lm65>RwTQA@|ec zngWF+#cW0H8QI&~4LsRBmIz+evkhZp_LD+&f0;B~S?FKu-foIxwlc2Yk5UY_*Wfv@ z2bs)=#Y6_~1N<8e>Jw!*)rGDZ-l;K^atd&lE?zrqr(P^!BPQEqQPwx{aP^ldAhQg< z+b-$0oH&7hUop6#<7xPEx}7$Y3MJ#|a5bk_D(|u5hzFQYJ?5NJ%CoPI+J$t{)~!)d zM^8{jzx&r{PD3Lz)`DlpBzdjxh&xi-hkLm$41I7j{!*nlr(7{R4h_I{2%lViqy4SJ z*u0dtKjpLXOjk-;@Er5G8|{08Kh{=&JX#uT*|P<|UZc3?682VxZ~Dee6U7z#?B#is zTxbCo$C=vl-8b^HyDRDGeJL?}#T9v3N=G3)jo%L-EuLhqedZh8mESzPQyOt4N4Ys5 zgw8c6g`6?IS0xjaI(+Wp3q2jlwjFx7-fMZ1Hdf1x3wo|n*@b$fyY#wV!M(qHZ-$Ni zEQl{F;p;GduPx;TuR|5+L%lVb8%KTD55GaR7Whe-i+LW9?N5k(I@G=$un)}h6!=~2 zjmx?8Ll_e4JTB|D+?UW)m7(7d$tqq>i2 zNDHz8m!e?NS?Sh9lH+B&ay(Tnu;{@;UWSx|%oRs<_Rn+0eoy04ulmVU;nM1JtvRiE zQ(DP1e!B)zTGaB-vF%u$uS=gE+GX>+(zQ-nrFUdG)T1^No26Ih;NQtKp9NleXYB_V?!6nI2k}+9I z9JF?cI1?M)l?4g3TF@X7YKUx3FU7f$hflQ0B(>{XqDk83c-Vy&ePWtWOk~Tw$fZW* zknT{mS1q9W5#o)jg_ZP%x}1n3{D(^jH@23lER%j|o1ZaVNEIL+xJjOa$mpT{0$N)p ztIwv!o%TU1TabcB%lQWm?rPNM$BvWSepph=Xni-b?=GZ1E2dR*pUX%o>oxGqy2-(4 zRqsT$1Xk1Ox16id-mbKyjI+sOD;@#l)K7@!6k=_TdMS8SB`sV@lE0cAP6jEGIOh`jqn3<*eF*+dAYK(}uWBc)vSMjdh8&Ti zwk4|Iipn!wwG?`9sW;mgJx_h>c+4WA+(u`IPe;=6qTFDD#Mq3klGVhy0c|lHnw>IE z*5Jw6Q$0!#nx{OLKfaE$PL@}DJ@l|%9)7zS7qBrk*YZ|(;HTH|LY*u}lTq_U__PnxNDJrLy!iD@sRT)0 zk1=a3=GL-hh^gzxILqm)1ft?@=^gHL^;guoQX<(b%YG4hLZUbrs;KLAiI)>0ve$H| zO67Zxc0$`3iSVK1-js<7#3R9~ApKBRQ6&{w=9cH;PwMbcgwxFHeC63@W^}S(p}S^Q z7vW^DLLY89q+vStZp3(Sx6l~nc41h>jzh_onbEKr^{I5|V%div%NoLz&hlRu#zZdr z)K$bl5}gYXja~FiE8KOun`e5DTEyYIymB>p9!ijPo~ZEAAMh7Z#!mLx5-@KAlBP|g zV#^>!j~|DU)2LS`2B{n*lR4=iCDY?N;q{Qbc5?=0x#Ieqj(D;Nu7Hx8IOzURuWc7uqCS?1(>{`Xtv25BvTu@Z zUhJG4w`s&hB`m%&`&drp@;Irhd53MZp)ePU8mjcT_QO4n(k#Wg>#>sWX2ELHuKjR)>{i zLb}7+al4hdheL{eBFwYW%AcpSW4;_ci%G5h(# ziIqH0lu!7NuCltUicDOcYNgW&;}cFUb^+Ycm!^(x6N?2)3H_c*;O5|}@;kJJsL5{x zKY#WEYW^-9)aY2@o&#yBLUUBFm`t_4XAqA^ZBG8Qg`}oX>#lio5DF&N~b;|1iANtBfsLFCck9tkN+F)z90So literal 0 HcmV?d00001 diff --git a/src/main/resources/cp_51_p3.jpg b/src/main/resources/cp_51_p3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..afd1968daa2a8e28f418349412a81ac1db68ff82 GIT binary patch literal 1846 zcmc&xiC5Ft6295Pri926gtDc!0<8%ROJYFQuv9<@OW?R+5-?351u8oPP_VM3kR#z? z*+ig4%OVJpR-i<`SCGdcb%Zgf1bA(8B9BnKLqVoD~_ zC=?on3Ox&oFaQaqlWc5AMH2WsPIj;d@ap&FO(6~OFOK?~_dxy~z@aAIX9ZFnAoh1P zGKutFhlc$b;IP0Hm?B_i0FHwpa4?kuoCC1`H&ngg0yF>|v9tDnfK@|b033=92Er`(k(6{^xFboO}5J(*4hauod6aw1v z4xj=^97@LwjRzRA%N|{G*8mHfVq!#GwnX&=XhLnkaR?kZ1bB+5ChJuH*_i5|dRzGo zI<4aSV*$aF*5tY+uSDE=f*$qc0dkM4fbGN1La9sjM}E#_EAYIzHTL-HH0*?;WW{}M z5G1*hlM;n@P0HRT2QQ3T^(}YnFWUL~VJof(ry5(fzo3pdszB!-qK8^9cFlJM){Y{q zKJ)xYP&vz&-Xrt~#4a-%ir+^O({$~y8QtP1l_N!VCXu_6TVlHsO`b2Dl^SEYlNA?p1as!M z`oA{NfxRH8M_j(NS(3Wz`sKal9IZtW)d1u4Snf!5>hU#>Yg7gr$c=jF8LRVNJn>P;2OJtwk=^<}XSIf<6VabxLqiMpUk=KifXMHJgwxfjwY3cXgurICL z&&cv#p;$a#7X7E)Tm|IHfKWA)d4{aKyJ7JXJf}kx&GJSB@z=mYzK*OkGXPxpgxJQq;jl07)&;dpuI_U^qZW<*43_(Z zd5ASe`xJfU~7`DT-(!wiN$w}sR`chbDYfY46wkR*@&&JFHR{5l4*q+MsGOyFk(z#IMH$JrQ#@Hjr`OKkHxhTeHcb9c@Lhg9`FdnX~q8kq$dGgbC z5qjFhdLPZ%w5drtuj$4aW49WS?(}JV-Q0kNAJjR~mM@j}8ww8_=et_DHjQ=dW>}$* zDDcX+FYluQwcF2^Mvu%zP1X3%4RpVVANVf!$F=DLKQbGRcDK3SZ5>ndI>rpX+SSvU zs}VS5N$zUF7;Tz(d>N+PrcI5~Z|e~y9%TjLh3m}DvM0Yd)Uh7!{T5heRr&i9Qk9}A zPGM>cCDAR1C@G=muZJE9ppJjLTcL0H!@+FZ<;vY_hep+>7jGSS$iOReI!M1-uhI`1 zD&v`_HtL#?vTf<@9~AOgslmKj88ZqnCvV$5qI#S>J~ynzpS?s1jB?Ys9Cnbq9QkL} zZ!u-c^eT%wTj$KH*A~Mo+QD+aB5r6PIf1@a{>Isocbb+^W$DWbpEeZuEp1I|?|<4C Ulgx3;es#y{j?rspE7jw_09^&I@c;k- literal 0 HcmV?d00001 diff --git a/src/main/resources/cp_59_p3.jpg b/src/main/resources/cp_59_p3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a73120aabadc27422a8786407fb115299b0b8a5f GIT binary patch literal 1857 zcmc&!i(k^`8h^QYTiXPcxpWGmHP9Mxyi9B|QzS80D%vtq$-ptuQ+Sz$cG1*A5y|jg zsi=8P)6&$rA~DUjvSxz1PT{2#n>BOR)+x@<+CJy}2j}~~&*%Amp4f zBi^}Sa0C)%WNd;47z@0qgO4TlBZ{>n6`C9YTYa;?0XKpnjR6V`;4lOdhJYDE_q&SK zd^84Sgr_(F3m>YnC3bUgNELVgQTa*31XzQB3ZW5bKnKA!U5lpb;vAcW^C~`RX|ZOl zdbgf>@HVS?e6yQA&vq!>CblKNzi9j=inER@>lh5H2%nvl{L{fH$}P-E=G&{m)IRo> z#?!uek*Z=)qXx_Ttmu_Ev+}XXY3p^rO8?r|q=5%=~ntkdAgBb zCTYZ?|Ai+!LgrL{0BpC|d;Ac%$ettC3q}?4iZlu@G&j`-V@bdg+LhS0wi_4x>wD@P z?|dR0&vVXc?|UzHMVwHN&t3`}L=)FX_ov!K&D_C;(+b6UwQxeW?{bZfo!7pBWydc6 zv>RnY@q#ZW zrdQ6L6A8p|KDScmXC!9&?oGL@OQz%vxL}pk>}0<@k$2g<*|+QGZFj$Ioax;1zT!Cl zxwHA}tA%I6uY5E()H2yBW)2+sxUeE3T&hUiXqOj!vp7i4E@=^6)a=Qhoz6LXE+f<< z?mDOaOSPMq0xfIx)$Y{9Ov1nEkoYwe9K1mv$m02+y~m$)|H!p4mHCV)kC*r!CBG1S zc)@(xAz{&XKxa{_6 z!&s?PFecq&&8{`|*i;#?UPS9bj~LD5$FHT&x7 zsLfT#x@nDrt#wbbEO*U6Y-o9x7M%HM1J-4~?ue{S&C{^@MB5`a`OLXjxMMWU%sr=1 zB&EzN2~ovuU$oxnv{2%$XX^fBc&jE{6?=M$nddT^?g!)z@p^m61hQIbWanZgs#*Dp h6|(q6NQ8hG$)m6Um;ZjW50+k!7l*zsmPHxH{{x0=x5xkh literal 0 HcmV?d00001 diff --git a/src/main/resources/dd_27_p3.jpg b/src/main/resources/dd_27_p3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..50859c339c0ec8de952a684b53b8b101aad18640 GIT binary patch literal 1897 zcmc&xi#ywA8~!D~L_+5fhfYgukEgD`ww=%*K@u1_1w>Mzwh(D%BRX% zK+E05%>{tL0RRRqK>0hccjIXa)jdS8l9h>VQ~C?t}N9f@j3 zK8hui?5rqu6f5XhfR6$YP&NPZ1i;JR+hZXO{0B$=#k-;WTfm`9yziph zQX%%28<|9UuS3Ij0T?uZ1+X9t2f#5f5CclVATni>9ZIjd3>+K{8ey= zCAG2^d1Hj>X}np#*50B>)sqbg0@Iul`obgy$a!$CHpLSbYO&!L^sr=i>fW;g3-;$x1_4I{UD|!GAq8e<^qY2y zsMC(E1{PbENuFdM2T?g+C|LYhVU%@rSGB^*hZ#%E8hiW+A=!n+8}qFWp=VyBEgY3` zZ+aL?L5=TQRSTGgs$F>tr}v%7i^@3WslkhCW@nko~{kO`n@j< zgyEddLCx!vE^+y$CpfHlvyBClW75N>pV}%G&X8H`i5zPGq_Ez4@raR&nCa0RDE)<< z*&DsOA#=Z3(I*;UkNHkUNDihfkDf^B+OA5wB zR!frMvt>6Ld+Kf*zg92Ez;IZFa>GAz2ewIjY|yDe<5{hjPw{NlqsjW?s!dw|cG-6|=?(6hY9=}T^NTnl*8`7gMyA&?BWoY{s!5&`FLIe} zdl|1y#YxX>OLg--6rEljz^6Kxp&qO2Bui-^;`{_lX_zDWEPfCy*V0paxMt3&fyIHY#hlr@45=C<^&MkZT3xY z+n1UK*WPsQHCDvAN%~?xjrnc%bk9$Mml1R?+{5z(!gpm_bnm(3`Z6}SDJNbZqMjSm zJdkx|{^5Z(_RPbXTv1T$Mz9iCuP~iVZo9tvkar6wnA)(f4q&8=SU#{gYg#+-WVD#6# zxRi{S#~gS=O*<^kT|bTSo1T&BPs1MRzozzOU)B#QZhk=Tq2Til$?RWOAId=;=X986 z_R~V~i6d>cT$HCV#i;tm&*rlIBTxJ1szzgur`^$GP(+VnS{6h5GLls6AB%0xCfrsA zM~P7>C7FmZ+G0-H0OOW+du&x0eDoA&g6e~H11n2uAu?_}KQ)5;Bs%bRxNF_Ca61=m zt6gx`tBP;gRcV$opz(@iKh!zqZ^H7X|5~aMAlSTB?RXV`nKrr*er|WDY<^2Yd9~6N zTk+MM6WOnh=n*f8IDQxR%JW^)N~QFf&nB{}t*15|L!Qv8v0Di*^;yk+`o9(5Lu7rJ z+q_|}R}pNGTHoW-@WpzD+Dn2k45=GkU!Fv$6!?d5ygfPN!A2TvJt;bVotNxIpu1RS zALe`(YLMo>UcYuDf63Ps7d-FyU$ZHg4BxcRVnM}-$H^R*(#1)2GvWaA#zt@LkXE6e VVKp9qF5|%(oNOs)HQFmD{twSK*6#oS literal 0 HcmV?d00001 diff --git a/src/main/resources/dd_28_p1.jpg b/src/main/resources/dd_28_p1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4b09e7b012eba1958daae1670d5ebb5cd8108c13 GIT binary patch literal 3535 zcmc&!hgZ|f*8PPVq<5tmnjlSx6hl)K0-*{>6A+|`F@zS4N)ZI4gMf$_iW&hi0VzUA zEKx2PrHIsEC`u1VfJ;PF>KE_3YkluOczf2F*)wy_o-;FRX7BUfBp_xFN5BCP7XW}b z1=yPcmTayeF8}}np#^{e0N@2AK-_<({xJiNr!t4za}3JiQk)jWF-flf_d%xf{NtO* z8UF(W`g~Yu3^EiFaRt2?gN(is3JKA$I%N%UzmB;aipBs?eSH&C{bQyEh7bdNQ$wif zQDe@sKt4af!wJ`iLiO_txd3hsKWYE~To3;vug~do{}<=|m$z}o|A32=1lK2n zE5OYo4uE(#0^D4@|4{(AK-@eW32_MkEGeaIARw&*J$b%BRn5vZdT$gE;^s(+bBhDV zflAT3AExDz|5VG8TNoVe$p+Kn1KsF&3+785%JukFn5!h4@ZeNtg7eRS5oCkkKy+nI zw>+%eo>fdg==SzjaYsPkB?MQTS~GO)yQjCOvb^i2LZ%M3onab~e3(}_1lfs#zOC5z z4M%}~JtQsOUbL`zmOM@1Q)M>Bn#$#~a#Dzm5*i8!k7KOT6}#*$jV{6-aIkl5brYe9 z^1lw)n6%|DyH)ZAceErkS!?MNS0_?rR3#vai9?Nr-V(#}-u`@&s# z%8XvARnwf$4MzV0dw4XQ24d`!GpAMJ&TFEYUxF8GW37aOyY4PxjIxzWzjzuO*Var8&r!ipbkzU z`iAW�vBc)r!^IS8gwyZG2qLgFATr(dbgl1hkAii+QYse5Ci6hV`j3^8))uS>8C@ z*hWfW7|GD$1xlUdZ!05oSQE?diwf$w8+^AmruObZags5_vJUScdUmvVQe2|&3CLW~ zlZf$DxWwD5dNsU#m9&Gl_>j}Vmsu%mQ%#-B6VT33t7`%dJuF>0S+1)zJkp{#Fu#=Y zYrqjd>=s(L`Z7KA`r22)2Y5n#ao0eKnEQ7a=u7;`HkNFRM^udexR|cAP}1qF(3Q`1 zv*z9ET@CAu+6?#!EiMI`Vx;MT#BksApjX}P{gQJ^bC}`)bYrem-kq5a8te;BB-y%? zE=ynTzS0Go|Cpeq8ew}WA;FrmT!nA4cW9=hLrSGprgigX{XjN-Ll=!cN2uOHPTO3J zp|xSm*QQ-#Y!Y5?gNZJ=#AGwkQO(YKhX5RjMWKdFza&|3eH)Tf*sa*;n5X9=iiZ6R znS>Tzz2{~ZuEbNT@kGC3F~Nnz<%QUmu6cZHsY*$r1;sY6#8J=o3DYQadh?;s3p1CS zC2)oZS~V$XS%h2{hhi3xqWzi{g>#k=IrJoX5_z7CHv0{RX{BGo&S02N-~|kC=B?YN-%3(_=QV^ry(G3MEewk2kul z>L+jvvP#ddJb29UGI?$dRose*2Jh+Fye#e96CLw)&SN{di%PyM&Y65(Cp=sX6^9%~)2 zd1i|VLm9PgMD}dokw)h;#L2AepdPGkRA|~*xUsm%Em2sr7v-zib|&^@+Kd;OGHbTI zE3aKfG+niQOdp+NO;r;fRo5n!%A3J5T(DwoN-@k3C=?u8@Dcv*YWA)N{a4DYl5>0K zihSKZIk}Lknmd)V#*DaLk1LRrGiFgT5%kQ;2j+%(q)+#Gnm5#hc>8VXX;xEtFj;!W zbm8|p2>sQO1Dz1pumd*MqXcVhK2-+zrHvjG5dk$nS}4g3V)2LX=dmL!rHN#})siMv zkDMLt_x2j<#FE0lIb1ufo6_Ba&iT-LROFJRpRhvOrjcemT<>;vK0)H9;3E0ES2l{r z1kc+aeDD4lqzod~pVBfi-px0fMIg#`jh$tsL?TVh<_cEI;&0sv7a58tnEL%VG08~n zOozT&`slrQ^VM*@_4m7vo{#wY=zy_LkVrX%fT@}Hd*Q;&a}9k=VhXWq z?yvfu({4$c%)zDRxH1v{6^D}P!WtH8ETXcwzc@Le*v+ysLZ_##K{d1ny5Fwug^Km~ z1~VdpdU061vd9p3wes(1?_(jgVcN0pe)O!O!*+U?^kN`}4YdK+f}4drQ&zj>XujB! zez<#bFq%d zsZaSKF7AWBaFO&B^4~I7TFvw1qp}ZWLGbbWI^JmplaCAhJ{R7f@CK^2wY~l+$nw`* zPm1lVfYdw_AkdbwTXc>SkD$lAo z`^TMjU?TBv)HDT{*mba@2eoAC_Zk!?Sm5WV+^Bl@ETnb0ZnFNQrNV@$Bl{?AXK?C% z?Ni*eZk0qAeGgFRXU5V39ZvBnE`0TaTwa?i$o2lJdakis;_KMgINYFrO5i<)pgz0A z#QURk&v=*~LN&~9t~>;B6EJ!IKg*;{!09&oYdO;Nz=_73QhWgzZm`JB(g5ttiHw}W_^hz<0Hof}Vfkvdg2 ze$h%dm;@Oq3xdmDW5Z8f7Khd*8#Sn$khJB~R_QvHj8A|6W6gi)`jHoS!d87}oGfAw zSn=6t#D5ktrxfacm8^?+4A(Y{kI%XxXk4~ zoLbFjE$hNSslRU2OeaX(ZvIk>i6&)e0+RW-RpMhbUAyAxWxJk&1wDpT-^KRHG&6Xu zarO(a@c@^Gg!_7ud*g7o#>{OU-*8+qJ(qc1mN%kTwCZ!8>+$L%+0a~zVLuW3fK(}@ zUB{qY1h-0#@04GQIf$rQu+#) z(pOSp?+PKQpW6g=vX7>w%z*X3R3*Mw+HZl{^4TP71NDm7D^Y zKZY*@z~BJDpapc#!L-j=K_mdazPkV#0DuBG7-GHjF36B_JH-8 zGLY}I$xwbBzM}9beyo5`I3*TM#R_7?d_si1rH{QXCs8P*i(kRtaT;kqfM5N+JprmA{=rdy@D3=y4mdQ#@2t;!#9rQ<9qhSZE+k!{*;T;dT-7>6o7-`5$V=X$6B(p<-_}!XOCqK z7?r;YU$U5{efieZ=lS&A=vmwO0v+I(wHSX(j&#{;#%%aFk5OQXy>!l9{5+Fs^uV9l zHpdIVmS}ErGx)Ff+?uv~Qa!V|H&<<_Y*fN&GbfP=28{PJs%dc(uGzKXi8mLSkyX`i zQdat{KWNAk??GJfvc(?ZjfIe3=Lb|=s?f}>d}`9h*%y=Wy&&`MmvvpiaMOfML>HA9 z7#J@UDYBNl!4z7a>N+->H0g(c8qxM6#fER{#v zF8KHeOR81&{DV`!IG^e9zvrYZls~!6l~&48D``?x_-?=sgGIw|Gcj}7EOpyjC^frC^oo24Q4H$lY;68rqsmjH` z{T{waikya0R-xRRhFiPa9`NloTfe(GvXLmq5n6z2L~ngQUMu~Ij|-m2f>keHV{j_n z553I$LYm~3KK{Khv_v2-`J%Hwrg4?8l!XnAA#>gkdA+L1NcX1xk?_D9b@3G6Lh3Xt zoNLxmuS&Gh-lO`JNOD`JuSm4PvCAc#OI4GDC+b{sn)K+g!I|tWkq%YGPbJGaTXr5L z{7_`#y!h7n*Q~@Xnpf-VR~qXYr?Jg(0VQ_=<8qd@(w3 zgf$Sv?RnuA`NqENhtcB&tycyYpWvr5Z>ZCn%dKlfJoU%0Xq-Z}8iY#4TsloUS6uAN zp1t2^p2+$4@v_F)PL<*mn?q%JmA?0^RKK>%X)?~PP*fB+G#RYY9&4_TAxYG=Evr)E z`6~Ph-Mn(JM=-isQ6?i|a(M^4D6E?eJj?9?{o|?ZRGOQmZ0E6#a&k&|lMdhpnQGzG zcwlc`Cj&ON8E3&B*}nr_G%+_{f4sZjl38~+D?RJb?f4MPkB;-lmqK+Q`To;ol2sZ# zX2P=IeqVhsdv4c6`^JeH$4wce$vsO?5}XUAhN@|DaErfBZPq8-+T4OaFsJ)j*sW@J z(fwMHRB_7n!=BhPZw=y)uGMmn`J<*B@01+zxm+2+bA7Dkd4&pm@=>L#QQ-zh4q2E% zMQthw8dSVY2^uyvfAqe-!{wXBZFWNYgKfi#X3Y+oNz#y4dj#)Ax_gV}mkpL474WaA p<_={Gvybg*^&SJQPORo%54h329^O>f5|^BM@1(67%JX#U-vCN`$}|7~ literal 0 HcmV?d00001 diff --git a/src/main/resources/file_65_p3.jpg b/src/main/resources/file_65_p3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7ed010bd852f0a276a6c10baf8192fb8521f17e4 GIT binary patch literal 1939 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/net_13_p1.jpg b/src/main/resources/net_13_p1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1c7f09ce04910b30230750961b32c2d8d7c0b927 GIT binary patch literal 3868 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 U!^G0A#S2SLqe78^`=`_Y2Zsx$q5uE@ literal 0 HcmV?d00001 diff --git a/src/main/resources/report_32_hot.jpg b/src/main/resources/report_32_hot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e95b66606e81f23e2ec5f955f6e0177967319d3a GIT binary patch literal 1197 zcmex=gC zf1n@(3y96Yz-<*MgkS^382;a8aAx3OV`FDyNsy6Qkn#T!26>>nS%E$Uc@_#7nV4Bv+1NQaxwwG}whAyX zF)}kVu`si;vH-owSPPVAU=d^$QZ#gA6AnydS1J@SYMi)`L)mHLLD8U#A5@H!ikdjN z#Ka{erBv0_H8izMOwG(KEUlbfT;1F~JiUTLLc_u%BBPR1Qq$5iGP89XZ3R<7E#dCS&q+js2Tb?ESsqsNY)IC<*Qd`)1o*_6z)GbVt-tdRv)J zSJkSX=X)bQ-0!g8n!az#&RtupcUNwhcx+zqmS}-M z_HD}0U6=a#QE{P6!{mHLW+tb@O;sztAAGdr!zLR$;~kAN%NE_4u=9z~v`Cfek3Xf_ z&#Wr?vhnVlm3zdu{*Jl!Gve~qwYl$WqNZ&x=2*Kl+jPRrTLKQ<0SVmNn#@|(UysIo z_%?IV?YJLpSM%2fsqAqSd%aoh&+Q|Al6R&(nfLtityMqz4^97dZl&zgd0VDwtdz)@ zcT|trh|_8NnZobsg+1lx0}N;KH+;Pz=iYzRtl^~ktm1_S3T}rM8C5(KZ#*vf%GaFb z?(Ls4MqQIOo0c5C%+~&ZJ^Ode+y1j`sekX~EPciK)6dQFePE;n|B<=QZ!Sf7^S}SL z$4Bz~yBw>Df9&S{Uae-|9(5$_+XVH_w=QKfJ~duUv=y9?XL-72P2IQJs?X7OG9Q-y y>t1!TvU08JE2ER!L^gUCtos*`_S4VGp;_YXyd}>)PoBIxZOIi&vFkhk-vj`l2Ie#X literal 0 HcmV?d00001 diff --git a/src/main/resources/report_48_hot.jpg b/src/main/resources/report_48_hot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..019ca8270c8f4a7d49306454de2b7af76a6d9f6a GIT binary patch literal 4820 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 literal 0 HcmV?d00001