Sierpinski

 

trianglesierpinski

 

 

# @fabiolr mathArt exercise
# triangle sierpinsky using f library
import rhinoscriptsyntax as rs
import modules.f as f
import math as m #needed to get pi
reload(f)

#globals
scale = .5
side = 50

# Make a Triangle

height = m.sqrt(3) / 2 * side # basic trig
p1 = 0, 0, 0
p2 = side, 0, 0
p3 = side/2, height, 0
points = [p1,p2,p3]
triangle = f.Triangle()
triangle.draw(points)

def loop(triangle):

if triangle.area() < 1:
return
else:
for i in range(3):
new = f.Triangle()
new.id = triangle.divide(scale,3,i)
loop(new)

loop(triangle)

 

Leave a comment