Repere¶
A propos¶
Cette bibliothèque facilite l’affichage d’une fenêtre munie d’un repère interactif (zoom, déplacement). Des fonctions sont disponibles pour tracer des objets géométriques simples.
C’est une Version légèrement modifiée de cette librairie écrite par Olivier Brebant en 2011 et publié par l’académie d’Aix-Marseille en 2012, sous licence MIT depuis novembre 2018.
A quoi ca sert?¶
A tracer un graphique non dynamique muni (ou non) d’un repère. On peut par exemple construire facilement un traceur de courbes.
Par non dynamique, j’entends qu’on ne peut pas facilement utiliser cette librairie pour interagir directement avec les objets. Par exemple cette librairie n’est pas adaptée au codage d’un jeu de type pong ou même d’un objet en mouvement.
Comment l’utiliser¶
# On importe la librairie
from pydiderotlibs.repere import *
# On initialise la fenetre
creer_fenetre()
# On créé des objects geométriques
point(5, 3)
segment(-10, -4, 8, 7, couleur='rouge', taille=2)
rectangle(1, 1, 8, 4, couleur='noir', taille=4, remplissage='jaune')
point(5, 5, couleur='bleu', taille=5)
point(6, 7, couleur='bleu', taille=5, forme='croix')
texte(-3, 3, "Un texte", couleur='bleu')
On peut agir sur le repère grâce à la souris:
- La roulette de la souris:
- Si le curseur est proche d’un axe, modifie l’échelle uniquement pour cet axe.
- Sinon zoome/dézoome par rapport à la position courante du curseur
- Un Cliquer-glisser:
- Si le curseur est proche d’un axe, translate le repère suivant cet axe.
- Sinon déplace le repère suivant le mouvement libre de la souris.
- Un double clic rend le repère orthonormé en se basant sur l’axe des abscisses.
Couleurs¶
Les formats de couleurs acceptés sont:
- Une chaîne de caractères (str) en francais dans la liste ci-contre (
'rouge'
par exemple). - Une chaîne de caractères représentant la couleur sous forme hexadécimale. Par exemple la couleur rouge est
'#FF0000'
. - Un tuple RVB
(r, v, b)
oùr
,v
,b
sont des entiers entreO
et255
. Par exemple la couleur rouge est(255, 0, 0)
. - Une chaîne de caractère en anglais dans la liste suivante:
'black'
,'white'
,'grey'
,'red'
,'green'
,'blue'
,'yellow'
,'pink'
,'purple'
.
Techniquement¶
Le coté non dynamique mentionné plus haut vient de l’utilisation de Tkinter. C’est techniquement possible avec la méthode after mais pas réaliste dans un cadre pédagogique.
La principale modification par rapport à la version de Olivier Brebant est de créer une variable globale fenetre
.
Cela simplifie l’utilisation pour les élèves auquel on cache le coté méthodes et attributs de la programmation orientée objet. Concrètement, on passe d’une utilisation:
fen = creer_fenetre()
fen.trace_point(5, 5, couleur='blue', taille=5)
fen.loop()
à
creer_fenetre()
trace_point(5, 5, couleur='blue', taille=5)
Documentation¶
Ce module a ete ecrit par Olivier Brebant en aout 2011.
On peut l’utiliser librement sous licence MIT
-
point
(x, y, couleur='noir', taille=1, forme='rond')[source]¶ Ajoute un point dans la fenetre graphique aux coordonees
(x, y)
.Alias disponible:
trace_point()
Paramètres:
-
cercle
(x, y, couleur='noir', taille=5)[source]¶ Trace un disque dont le centre a pour coordonnées
(x, y)
et dont le rayon est 2 foistaille
(en pixels).Alias:
trace_cercle()
,circle()
Paramètres:
-
texte
(x, y, message, couleur='noir')[source]¶ Trace un texte dans la fenêtre graphique au coordonnées
x, y
.Alias : “trace_texte()” et “text()”
Paramètres:
-
segment
(x1, y1, x2, y2, couleur='noir', taille=2)[source]¶ Trace un segment entre les points de coordonnées
(x1, y1)
et(x2, y2)
.Alias:
trace_segment()
Paramètres:
-
rectangle
(x1, y1, largeur, hauteur, couleur='noir', taille=2, remplissage='jaune')[source]¶ Trace un rectangle dont le sommet en bas à gauche a pour coordonnées
(x1, y1)
.Alias:
trace_rectangle()
Paramètres: - x1,y1 (float) – Coordonnées du sommet en bas à gauche du rectangle.
- largeur,hauteur (float) – Largeur et hauteur du rectangle
- couleur – Couleur des cotés du rectangle (
noir
par défaut). - taille (int, optionnel) – épaisseur des cotés du rectangle. (
2
par défaut). - remplissage (str, optionnel) – Couleur de l’intérieur du rectangle (
yellow
par default)
-
fenetre
(xmin=-10, xmax=10, ymin=-10, ymax=10, fond='blanc', titre='Repère mathematique', axes=True)[source]¶ Initialise l’object fenetre graphique sans l’afficher.
Alias:
creer_fenetre()
etwindow()
Paramètres: - titre (str) – Titre de la fenêtre. La valeur par défaut est
Repère mathematique
. - xmin,xmax,ymin,ymax (float) – Dimensions du repère. Les valeurs par défaut sont -10, 10, -10, 10
- fond – Couleur de fond de la fenêtre (
blanc
par défaut). - axes (bool, optionnel) – Affiche les axes du repère si
True
(True
par défaut).
- titre (str) – Titre de la fenêtre. La valeur par défaut est
-
courbe
(valeurs=[(1, 1), (2, 2)], couleur='noir', type='courbe', taille=2, forme='rond')[source]¶ Crée automatiquement une courbe en fonction des points donnés.
Paramètres: - valeurs (list) – Les points par lesquelles passe la courbe. La valeur par défaut est
[(1,1), (2,2)]
. - couleur – Couleur des cotés du rectangle (
noir
par défaut). - type (str, optionnel) – Le type de courbe à creer (
double
,courbe
oupoints
) - taile (int, optionel) – La taille de la courbe (``2``par default)
- forme (str, requis pour points) – La forme des points (
rond
par défault)
- valeurs (list) – Les points par lesquelles passe la courbe. La valeur par défaut est