arbre.py
arbre.py — 1.7 KB
Contenu du fichier
''' ********************************************************************** Fichier pgm1.py Programme qui manipule les chaines auteur gabriel girard date 2016 Ce programme ne fonctionne pas correctment. Corrigez-le? ********************************************************************** ''' import sfml as sf from arbreC import * plus=0 def dessinerArbre(ecran, pt1, pt2, lgArbre, angle) : print("Longueur tronc = ", lgArbre) if lgArbre > 2 : # on dessine le tronc dessinerLigne(ecran, pt1, pt2); #on dessine un arbre à gauche p3 = calculerPoint(pt2, lgArbre//2, angle+45+plus) dessinerArbre(ecran, pt2,p3,lgArbre//2, angle+45+plus) #on dessine un arbre à droite p3 = calculerPoint(pt2, lgArbre//2, angle-45-plus); dessinerArbre(ecran, pt2,p3,lgArbre//2, angle-45-plus); #on dessine un arbre au sommet du tronc p3 = calculerPoint(pt2, int(lgArbre*3/4), angle); dessinerArbre(ecran, pt2,p3,int(lgArbre*3/4), angle); def main() : ecran = Canevas() # Lecture des coordonnees du bas de l'arbre print("Entrer la racine de l'arbre : ") p1 = Point() p1.lecture() # Lecture de la longueur du tronc de l'arbre longueurTronc = int(input( "Entrer la longueur de l'arbre : ") ) # Calculer le point pour dessiner le tronc original de l'arbre p2 = Point(p1.valX(), p1.valY() + longueurTronc); # on dessine le prmier tronc à un angle de 90 dessinerArbre(ecran, p1, p2, longueurTronc, 90); # Une lecture pour eviter la fermeture trop rapide du canevas pause = input("Entrez un caractere pour terminer la pause : ") if __name__ == "__main__": main()