refactor: enhance code documentation and remove unnecessary greeting outputs in tests
This commit is contained in:
@@ -6,8 +6,11 @@ import java.util.Objects;
|
||||
import java.util.Scanner;
|
||||
|
||||
import sudoku.core.Console;
|
||||
import sudoku.gui.ColorGenerator;
|
||||
import sudoku.core.GenerateurCouleur;
|
||||
|
||||
/**
|
||||
* Classe Grille permettant de créer une grille de sudoku.
|
||||
*/
|
||||
public class Grille {
|
||||
private final int taille;
|
||||
private final Case[][] cases;
|
||||
@@ -40,6 +43,12 @@ public class Grille {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Méthode permettant de mettre à jour la référence au multidoku
|
||||
*
|
||||
* @param multidoku : multidoku
|
||||
* @see Multidoku
|
||||
*/
|
||||
public void setMultidoku(Multidoku multidoku) {
|
||||
this.multidoku = multidoku;
|
||||
}
|
||||
@@ -51,20 +60,34 @@ public class Grille {
|
||||
*/
|
||||
private void initColors() {
|
||||
// nombre de couleurs = nombre de blocs (pour sudoku classique)
|
||||
List<ColorGenerator.Color> colors = ColorGenerator.greatScheme(taille);
|
||||
List<GenerateurCouleur.Couleur> colors = GenerateurCouleur.paletteCouleurEtendue(taille);
|
||||
generatedColors = new ArrayList<>();
|
||||
for (ColorGenerator.Color color : colors) {
|
||||
for (GenerateurCouleur.Couleur color : colors) {
|
||||
generatedColors.add(convertToAnsi(color));
|
||||
}
|
||||
}
|
||||
|
||||
private String convertToAnsi(ColorGenerator.Color color) {
|
||||
/**
|
||||
* Convertit une couleur en format ANSI pour l'affichage en console.
|
||||
*
|
||||
* @param color : couleur à convertir
|
||||
* @return couleur convertie
|
||||
*/
|
||||
private String convertToAnsi(GenerateurCouleur.Couleur color) {
|
||||
int r = Math.round(color.r * 255);
|
||||
int g = Math.round(color.g * 255);
|
||||
int b = Math.round(color.b * 255);
|
||||
return String.format("\u001B[38;2;%d;%d;%dm", r, g, b);
|
||||
}
|
||||
|
||||
/**
|
||||
* Méthode permettant de définir un symbole dans une case en fonction de sa
|
||||
* ligne, de sa colonne et du symbole
|
||||
*
|
||||
* @param ligne : coordonnée de la ligne
|
||||
* @param colonne : coordonnée de la colonne
|
||||
* @param symbole : symbole à placer
|
||||
*/
|
||||
public void setCase(int ligne, int colonne, Symbole symbole) {
|
||||
try {
|
||||
if (symbole != null && !symbolesPossibles.contains(symbole)) {
|
||||
@@ -175,9 +198,10 @@ public class Grille {
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée des blocs rectangulaires automatiquement à partir de la taille de la
|
||||
* grille.
|
||||
* Ne fonctionne pas pour les grilles dont la taille est un carré parfait.
|
||||
* Crée des blocs rectangulaires.
|
||||
*
|
||||
* @param blocHeight : hauteur du bloc
|
||||
* @param blocWidth : largeur du bloc
|
||||
*/
|
||||
public void creerBlocRectangulaire(int blocHeight, int blocWidth) {
|
||||
if (taille % blocHeight != 0 || taille % blocWidth != 0) {
|
||||
@@ -208,12 +232,23 @@ public class Grille {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Méthode permettant d'afficher les blocs de la grille à l'aide de la méthode
|
||||
* toString de la classe Bloc.
|
||||
*/
|
||||
public void printBlocs() {
|
||||
for (Bloc bloc : blocs) {
|
||||
System.out.println(bloc.toString());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Méthode utilisée pour le menu princial.
|
||||
* Méthode permettant de choisir le type de symbole à utiliser pour la grille
|
||||
*
|
||||
* @param scanner : scanner pour lire l'entrée utilisateur
|
||||
* @return int : choix de l'utilisateur
|
||||
*/
|
||||
public static int choisirTypeSymbole(Scanner scanner) {
|
||||
while (true) {
|
||||
System.out.println("Choisissez le type de symbole :");
|
||||
@@ -235,6 +270,14 @@ public class Grille {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Méthode utilisée pour le menu principal.
|
||||
* Méthode permettant de demander à l'utilisateur de saisir les symboles
|
||||
* possibles pour la grille.
|
||||
*
|
||||
* @param choix : choix de l'utilisateur
|
||||
* @param scanner : scanner pour lire l'entrée utilisateur
|
||||
*/
|
||||
public void askSetSymbolesPossibles(int choix, Scanner scanner) {
|
||||
try {
|
||||
for (int i = 0; i < taille; i++) {
|
||||
|
||||
Reference in New Issue
Block a user