Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
C
Coding Week Gol Dolleans Boujerfaoui
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Boujerfaoui Yassine
Coding Week Gol Dolleans Boujerfaoui
Commits
8d1667b0
Commit
8d1667b0
authored
6 years ago
by
Dolleans Geoffrey
Browse files
Options
Downloads
Patches
Plain Diff
tkinter 2/many
parent
c9a1fdfd
No related branches found
No related tags found
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
game_of_life/AffichageTkinter.py
+29
-0
29 additions, 0 deletions
game_of_life/AffichageTkinter.py
game_of_life/GoL_simulate.py
+4
-5
4 additions, 5 deletions
game_of_life/GoL_simulate.py
game_of_life/add_seed.py
+4
-2
4 additions, 2 deletions
game_of_life/add_seed.py
with
37 additions
and
7 deletions
game_of_life/AffichageTkinter.py
+
29
−
0
View file @
8d1667b0
...
...
@@ -2,6 +2,7 @@ from tkinter import *
from
game_of_life.generate_universe
import
*
from
game_of_life.generation
import
*
from
game_of_life.survival
import
*
from
game_of_life.add_seed
import
*
fenetre
=
Tk
()
game_of_life
=
Toplevel
(
fenetre
)
...
...
@@ -10,6 +11,10 @@ universe = generate_universe((100,100))
canvas
=
Canvas
(
game_of_life
)
canvas
.
pack
()
var_text
=
StringVar
ligne_texte
=
Entry
(
fenetre
,
textvariable
=
var_text
,
width
=
30
)
ligne_texte
.
pack
()
def
create_a_grid
():
"""
create the grid for the graphic interface
"""
width
=
game_of_life
.
winfo_width
()
...
...
@@ -26,6 +31,7 @@ def create_a_grid():
def
update_grid
():
"""
mets la grille a jours
"""
global
universe
for
x
in
range
(
len
(
universe
)):
for
y
in
range
(
len
(
universe
[
0
])):
if
universe
[
x
][
y
]
==
0
:
...
...
@@ -38,10 +44,33 @@ def update_grid():
def
create_cell_on_click
(
event
):
"""
créer une cellule vivante la ou l
'
utilisateur clique
"""
global
universe
x
=
event
.
x
//
(
width
/
100
)
y
=
event
.
y
//
(
heigth
/
100
)
universe
[
x
][
y
]
=
1
def
add_seed_tk
():
"""
ajoute la graine donner dans la fenetre principale
"""
global
universe
type_seed
=
ligne_texte
.
get
()
print
(
type_seed
)
ligne_texte
.
config
(
text
=
"
"
)
seed
=
create_seed
(
type_seed
)
"""
Gestion d
'
exceptions
"""
try
:
x_start
=
rd
.
randint
(
0
,
size
[
0
]
-
len
(
seed
))
y_start
=
rd
.
randint
(
0
,
size
[
1
]
-
len
(
seed
[
0
]))
universe
=
add_seed_to_universe
(
seed
,
universe
,
x_start
,
y_start
)
except
:
print
(
"
la graine est trop grande pour l
'
univers
"
)
button_add_seed
=
Button
(
fenetre
,
text
=
"
ajoute la graine
"
,
command
=
add_seed_tk
)
button_add_seed
.
pack
()
create_a_grid
()
...
...
This diff is collapsed.
Click to expand it.
game_of_life/GoL_simulate.py
+
4
−
5
View file @
8d1667b0
...
...
@@ -8,21 +8,20 @@ from matplotlib import animation
import
random
as
rd
def
simulate
(
size
,
type_seed
,
iterations
):
"""
Size : taille de l
'
univers , Type_Seed : Type de la graine , Iterations : Nombre d
'
iterations d
'
univers
"""
"""
Création de l
'
univers et ajout de la graine
"""
"""
Size : taille de l
'
univers , Type_Seed : Type de la graine , Iterations : Nombre d
'
iterations d
'
univers
"""
universe
=
generate_universe
(
size
)
seed
=
create_seed
(
type_seed
)
"""
Choix aléatoire des coordonnées de la position aléatoire de la cellule tout en haut en gauche de la graine
"""
x_start
=
rd
.
randint
(
0
,
size
[
0
]
-
len
(
seed
))
y_start
=
rd
.
randint
(
0
,
size
[
1
]
-
len
(
seed
[
0
]))
"""
Ajout de la graine dans l
'
univers
"""
universe
=
add_seed_to_universe
(
seed
,
universe
,
x_start
,
y_start
)
"""
Gestion d
'
exceptions
"""
try
:
x_start
=
rd
.
randint
(
0
,
size
[
0
]
-
len
(
seed
))
y_start
=
rd
.
randint
(
0
,
size
[
1
]
-
len
(
seed
[
0
]))
except
:
print
(
"
la graine est trop grande pour l
'
univers
"
)
"""
Ajout de la graine dans l
'
univers
"""
universe
=
add_seed_to_universe
(
seed
,
universe
,
x_start
,
y_start
)
fig
=
plt
.
figure
()
im
=
plt
.
imshow
(
universe
,
cmap
=
"
Greys
"
,
animated
=
True
)
"""
cmap : Chaine de caractère de coloriation de la figure , animated : Variable booléene pour l
'
activation de l
'
animation
"""
...
...
This diff is collapsed.
Click to expand it.
game_of_life/add_seed.py
+
4
−
2
View file @
8d1667b0
...
...
@@ -48,9 +48,10 @@ def create_seed(type_seed):
"
Renvoie une graine du type indiqué
"
try
:
seed
=
seeds
[
type_seed
]
except
:
return
seed
except
KeyError
:
print
(
"
Ce type de graine est inconnu
"
)
return
seed
def
add_seed_to_universe
(
seed
,
universe
,
x_start
,
y_start
):
...
...
@@ -58,6 +59,7 @@ def add_seed_to_universe(seed, universe, x_start, y_start):
size_seed
=
(
len
(
seed
),
len
(
seed
[
0
]))
if
size_seed
[
0
]
>
len
(
universe
)
or
size_seed
[
1
]
>
len
(
universe
[
0
]):
print
(
"
la graine est trop grande
"
)
try
:
for
x
in
range
(
size_seed
[
0
]):
for
y
in
range
(
size_seed
[
1
]):
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment