Package fr.univ_eiffel.legotools.image
Interface ResolutionStrategy
- All Known Implementing Classes:
BicubicStrategy,BilinearStrategy,LanczosStrategy,NearestNeighborStrategy,StepwiseStrategy
public interface ResolutionStrategy
Interface commune à tous les algorithmes de redimensionnement.
Cette interface est le pilier du Patron de Conception Stratégie (Strategy Pattern). Elle permet à l'application de traiter une image sans savoir quel algorithme mathématique est utilisé derrière (Bicubique, Bilinéaire, etc.).
-
Method Summary
Modifier and TypeMethodDescriptiondefault int[]getRGB(int pixel) Méthode utilitaire (Default) pour extraire les canaux de couleur.resize(BufferedImage source, int targetWidth, int targetHeight) Méthode principale que chaque algorithme doit implémenter.default inttoRGB(int r, int g, int b) Recompose un pixel entier à partir des composantes R, G, B.
-
Method Details
-
resize
Méthode principale que chaque algorithme doit implémenter.- Parameters:
source- L'image originale.targetWidth- Largeur cible.targetHeight- Hauteur cible.- Returns:
- Une nouvelle image redimensionnée.
-
getRGB
default int[] getRGB(int pixel) Méthode utilitaire (Default) pour extraire les canaux de couleur.- Parameters:
pixel- L'entier représentant la couleur (ARGB).- Returns:
- Un tableau [Rouge, Vert, Bleu].
-
toRGB
default int toRGB(int r, int g, int b) Recompose un pixel entier à partir des composantes R, G, B.- Parameters:
r- Composante Rouge.g- Composante Verte.b- Composante Bleue.- Returns:
- L'entier ARGB recomposé.
-