diff --git a/__pycache__/shapes.cpython-310.pyc b/__pycache__/shapes.cpython-310.pyc index f61ed61..a4d032c 100644 Binary files a/__pycache__/shapes.cpython-310.pyc and b/__pycache__/shapes.cpython-310.pyc differ diff --git a/drawing.py b/drawing.py index f9538e5..95cebb8 100644 --- a/drawing.py +++ b/drawing.py @@ -6,62 +6,8 @@ from turtle import * from math import sqrt -from shapes import draw_leaf +from shapes import * -def draw_trunk(height): - right(270) - forward(2*height) - circle(-height/16,90) - -def draw_branch(length): - - forward(length) - circle(length/8,180) - forward(length) - circle(-length/16,135) - - forward(length) - circle(length/8,180) - forward(length) - circle(-length/16,135) - - forward(length) - circle(length/8,180) - forward(length) - circle(-length/16,135) - - forward(length) - circle(length/8,180) - forward(length) - circle(-length/16,135) - - forward(length) - circle(length/8,180) - forward(length) - circle(-length/16,90) - - forward(2*length) - -# roots -# [1,3,3,1] - circle(-length/16,45) - - forward(length) - circle(length/8,180) - forward(length) - - circle(-length/16,135) - - forward(length) - circle(length/8,180) - forward(length) - - circle(-length/16,135) - - forward(length) - circle(length/8,180) - forward(length) - - circle(-length/16,45) +draw_tree(20) input() \ No newline at end of file diff --git a/shapes.py b/shapes.py index d9c29ca..45ffddf 100644 --- a/shapes.py +++ b/shapes.py @@ -4,6 +4,53 @@ from math import sqrt def draw_leaf(size): circle(size,90) right(270) - circle(size,90) - right(225) - forward(size*sqrt(2)) \ No newline at end of file + circle(.75*size,90) + circle(-.25*size,90) + +def draw_trunk(size): + forward(10*size) + circle(size/8,90) + +def draw_branch(size): + angles = [135, 135, 135, 135, 90] + for angle in angles: + branch_end(size) + circle(size/8,angle) + +def tip(size): + forward(size) + right(45) + forward(size/10) + right(90) + forward(size/10) + right(45) + forward(size) + +def branching(ang1, d1, ang2, d2, ang3): + right(ang1) + forward(d1) + right(ang2) + forward(d2) + right(ang3) + +def branch_end(size): + forward(4*size) + right(300) + tip(size) + branching(240,size,330,size,330) + tip(size) + branching(30,size,240,size,30) + tip(size) + branching(330,size,330,size,240) + tip(size) + right(300) + forward(4*size) + +def draw_tree(size): + circle(size/4,90) + draw_trunk(size) + draw_branch(size) + forward(10*size) + circle(size/4,90) + + \ No newline at end of file