From 6747aa5b05406e47333675eae2ded64899ff4087 Mon Sep 17 00:00:00 2001
From: Louis Chmielewski <louischmielewski@MacBook-Air-de-Louis.local>
Date: Fri, 15 Mar 2024 10:38:07 +0100
Subject: [PATCH] est_couleur_proche

---
 .DS_Store               | Bin 10244 -> 10244 bytes
 Projet/.DS_Store        | Bin 6148 -> 6148 bytes
 Projet/src/.DS_Store    | Bin 0 -> 6148 bytes
 Projet/src/bloc.py      |  33 ++++++++++----------------
 Projet/src/fonctions.py |  50 ++++++++++++++++++++++++++++++++++++++++
 5 files changed, 62 insertions(+), 21 deletions(-)
 create mode 100644 Projet/src/.DS_Store
 create mode 100755 Projet/src/fonctions.py

diff --git a/.DS_Store b/.DS_Store
index 55abb228771bf4adbb7bb1ee293e0e714c44a2d5..003afd4f6d0267c410233112bbb4c720804e7e90 100644
GIT binary patch
delta 164
zcmZn(XbIS$Di9~Y)XTuYz`~%%kj{|FP?DSP;*yk;pTxkxz|pT2D5iets3WR;3SRkw
z48!2${M-Tt5Kw8@+$<o^sG{e?z`(%95WrBxkk63Ckcw&z0|Nt(`lZRo1Ql2s%5Ghl
P{7O)Pal&S9p`W4vf~F|x

delta 164
zcmZn(XbIS$DiFtCFVDchz`~%%kj{|FP?DSP;*yk;pTxkxz>yZ>R(9dSQAbqy6uj~U
z8HT~h`MCuQAfRlpxmiG-QAKDQ0|NsaLjXe&Lq0<mLn^8@3=9p%w=PURCaA!|pt0)w
Q<X3_Uj0u~$g?@?x0B>n47XSbN

diff --git a/Projet/.DS_Store b/Projet/.DS_Store
index 3cc5a085cf80b39596e3e5ea68fb33c5912768bf..e740dabcb827ecdfd5d0f3f0a0108543136de213 100644
GIT binary patch
delta 41
xcmZoMXffFEj*Urv?c@(^5-bcn>X#<-uuHIQ6nN);=fY$yb}2@O&93bG1pq6q4cGtx

delta 41
xcmZoMXffFEj*W>$eDVi236=)qTNfttuuHHpFfcgUpP8)1F2yLY*_D02000t<3;6&5

diff --git a/Projet/src/.DS_Store b/Projet/src/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..044889880fc94c6fc63cae57f79ab2e0f0af49ae
GIT binary patch
literal 6148
zcmZQzU|@7AO)+F(5MW?n;9!8z4DAe90Z1N%F(jFwA|RR(Y=#~~0Yjx{PJVJy4pfd1
z1=7pTki?L~kk63JfTTY^3F<6I1_lPb|6l+%jE5nOA)g_SA(^3sArs6h#;R{Unm(}R
zQDQU%MnhmU1V%$(Gz3O`2rxoIfP))CkCLMyFd71*Apj2nQ2C$$>MJlXFgQTz1_%w3
zVqj!o05#u1Gz&}<q#wWl5(8-k(IBlL8l;th5yS$U0oKaE$N<sG2=0b}^nto0AR4Tl
zfe~yoh!57zzzDXPfq@aCoq-Xeoq-YBLt%tyXJCYAXJ7=|4s+coJsJX|Api>jW(Y$7
zRR6m&FyQL{LsX5DqaiRF0>d%{7+G9`U7Wy`GIsxg>RM2Jnt&wD2&$7IdO*^kY8_k^
nGeHIvC16S!85lrXLGs|Ln2~`2T$7JB1YjXFN{@yB{X+l%*b6D0

literal 0
HcmV?d00001

diff --git a/Projet/src/bloc.py b/Projet/src/bloc.py
index f1ab95c..f6656c0 100755
--- a/Projet/src/bloc.py
+++ b/Projet/src/bloc.py
@@ -11,27 +11,7 @@
 """
 
 from PIL import Image, ImageDraw
-
-def moyenne_couleur_bloc(liste: list[tuple]) -> tuple:
-    """
-    Renvoie la moyenne de la couleur d'un bloc
-    Précondition : aucune
-    Exemple(s) :
-    $$$ moyenne_couleur_bloc([(1,2,3),(4,5,6),(7,8,9)])
-    (4,5,6)
-    """
-    total_r = 0
-    total_g = 0
-    total_b = 0
-    for couleur in liste:
-        total_r = total_r + couleur[0]
-        total_g = total_r + couleur[1]
-        total_b = total_r + couleur[2]
-    nombre_blocs = len(liste)
-    moyenne_r = total_r / nombre_blocs
-    moyenne_g = total_g / nombre_blocs
-    moyenne_b = total_b / nombre_blocs
-    return (moyenne_r, moyenne_g, moyenne_b)
+from fonctions import *
     
 class Bloc:
     """Classe d'un bloc d'une image en pixel
@@ -43,4 +23,15 @@ class Bloc:
         """
         self.image = image
         
+    def __eq__(self, other):
+        """à_remplacer_par_ce_que_fait_la_fonction
+
+        Précondition : 
+        Exemple(s) :
+        $$$ 
+
+        """
+        self.image == other.image
+        
+        
     
\ No newline at end of file
diff --git a/Projet/src/fonctions.py b/Projet/src/fonctions.py
new file mode 100755
index 0000000..57a6b59
--- /dev/null
+++ b/Projet/src/fonctions.py
@@ -0,0 +1,50 @@
+#!/usr/bin/python3
+# -*- coding: utf-8 -*-
+
+"""
+:mod:`association` module : un module pour la modélisation des blocs
+
+:author: Louis Chmielewski
+
+:date: 2024 mars
+
+"""
+
+def moyenne_couleur_bloc(liste: list[tuple[int,int,int]]) -> tuple:
+    """
+    Renvoie la moyenne de la couleur d'un bloc
+    Précondition : aucune
+    Exemple(s) :
+    $$$ moyenne_couleur_bloc([(1,2,3),(4,5,6),(7,8,9)])
+    (4,5,6)
+    """
+    total_r = 0
+    total_g = 0
+    total_b = 0
+    for couleur in liste:
+        total_r += couleur[0]
+        total_g += couleur[1]
+        total_b += couleur[2]
+    nombre_blocs = len(liste)
+    moyenne_r = total_r / nombre_blocs
+    moyenne_g = total_g / nombre_blocs
+    moyenne_b = total_b / nombre_blocs
+    return (moyenne_r, moyenne_g, moyenne_b)
+
+def est_couleur_proche(couleur1 : tuple[int,int,int], couleur2 : tuple[int,int,int]) -> bool:
+    """
+    Renvoie True ssi 2 couleurs sont proches, sinon False
+    Précondition : len(couleur1) == len(couleur2) == 3
+    Exemple(s) :
+    $$$ est_couleur_proche((120, 130, 140), (125, 125, 137))
+    True
+    $$$ est_couleur_proche((12, 13, 14), (125, 125, 137))
+    False
+    """
+    res = True
+    for i in range(len(couleur1)):
+        if abs(couleur1[i] - couleur2[i]) > 5:
+            res = False
+    return res
+        
+    
\ No newline at end of file
-- 
GitLab