Skip to content

Instantly share code, notes, and snippets.

@AlexZeGamer
Created April 18, 2022 19:19
Show Gist options
  • Save AlexZeGamer/aeca7f09f76580657f1e2d7767b84ab2 to your computer and use it in GitHub Desktop.
Save AlexZeGamer/aeca7f09f76580657f1e2d7767b84ab2 to your computer and use it in GitHub Desktop.
Sierpinski triangle using Turtle (Python)
from itertools import count
from turtle import *
import random
# Based on this video by @mathletters on TikTok :
# https://vm.tiktok.com/ZMLqmaYUt/
title('Sierpinski Triangle')
screen = getscreen()
screen.screensize(2000, 2000)
screen.setworldcoordinates(0,0,100,100)
hideturtle()
penup()
speed(0)
def draw_point(point):
penup()
goto((point))
pendown()
dot(2)
penup()
def middlepoint(point1, point2):
return (point1[0]+point2[0])/2, (point1[1]+point2[1])/2
corners = [(10,10), (90,10), (50,90)]
last_point = (50,50)
for i in count(0):
# write i in the title
title(f'Sierpinski Triangle - {i}')
# randomly select one of the corners
corner = random.choice(corners)
# draw a point halfway between the last point and the selected corner
current_point = middlepoint(last_point, corner)
draw_point(current_point)
last_point = current_point
@AlexZeGamer
Copy link
Author

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment