def top_layer():
    turtle.clearscreen()
    screen_setup()
    stations()
    sp = turtle.Turtle()
    sp.color('white')
    sp.penup()
    
    global top_pos
    sp.setpos(top_pos)
    sp.showturtle()
    sp.speed(1)
        
    def sta1():
        turn_and_go(sp, 'sta1')
    def sta2():
        turn_and_go(sp, 'sta2')
    def sta3():
        turn_and_go(sp, 'sta3')
        
    def zoom1():
        global top_pos
        top_pos = sp.pos()
        global middle_sta1_pos
        middle_sta1_pos = 250,-150
        if sp.pos() == (200,75):
            middle_layer_sta1()
        else:
            zoom()
    turtle.onkey(sta1, 'a')
    turtle.onkey(sta2, 'b')
    turtle.onkey(sta3, 'c')
    turtle.onkey(zoom1, '=')
    turtle.listen()
Exemple #2
0
def top_layer():
    turtle.clearscreen()
    screen_setup()
    stations()
    sp = turtle.Turtle()
    sp.color('white')
    sp.penup()
    sp.setpos(200, 75)
    sp.showturtle()
    sp.speed(1)      
    def sta1():
        sp.goto(200, 75)
    def sta2():
        sp.goto(-300, 45)
    def sta3():
        sp.goto(-100,-200)
    def zoom1():
        if sp.pos() == (200,75):
            middle_layer_sta1()
        else:
            zoom()
    turtle.onkey(sta1, 'a')
    turtle.onkey(sta2, 'b')
    turtle.onkey(sta3, 'c')
    turtle.onkey(zoom1, '=')
    turtle.listen()
Exemple #3
0
def docking_layer():
    turtle.clearscreen()
    screen_setup()
    docking_port1()
    sp3 = turtle.Turtle()
    sp3.color('white')
    sp3.penup()
    sp3.speed(0)
    sp3.setpos(300, 0)
    sp3.seth(180)
    sp3.showturtle()
    speed = (10)
    def turnleft():
        sp3.left(30)
    def turnright():
        sp3.right(30)
    def forward():
        sp3.forward(speed)
    def backward():
        sp3.backward(speed)
        
    turtle.onkey(forward, 'Up')
    turtle.onkey(turnleft, 'Left')
    turtle.onkey(turnright, 'Right')
    turtle.onkey(backward, 'Down')
    turtle.onkey(middle_layer_sta1, '-')
    turtle.listen()
Exemple #4
0
def middle_layer_sta1():
    time.sleep(0.5)
    turtle.clearscreen()
    screen_setup()
    station_1()
    sp2 = turtle.Turtle()
    sp2.color('white')
    sp2.penup()
    sp2.speed(0)
    sp2.setpos(250, -150)
    sp2.seth(90)
    sp2.showturtle()
    speed = (10)
    b = 2
    def turnleft():
        sp2.left(30)
    def turnright():
        sp2.right(30)
    def forward():
        sp2.forward(speed)
    def backward():
        sp2.backward(speed)
    def zoom1():
        if sp2.xcor() > -162 and sp2.xcor() < -98 and sp2.ycor() > -112 and sp2.ycor() < -64:
            docking_layer()
    
            
    turtle.onkey(forward, 'Up')
    turtle.onkey(turnleft, 'Left')
    turtle.onkey(turnright, 'Right')
    turtle.onkey(backward, 'Down')
    turtle.onkey(top_layer, '-')
    turtle.onkey(zoom1,'=')
    turtle.listen()
Exemple #5
0
def zoom():
    time.sleep(0.5)
    turtle.clearscreen()
    screen_setup()
    sp2 = turtle.Turtle()
    sp2.color('white')
    sp2.penup()
    sp2.speed(0)
    sp2.setpos(250, -150)
    sp2.seth(90)
    sp2.showturtle()
    speed = (10)
    b = 2
    def turnleft():
        sp2.left(30)
    def turnright():
        sp2.right(30)
    def forward():
        sp2.forward(speed)
    def backward():
        sp2.backward(speed)    
    
            
    turtle.onkey(forward, 'Up')
    turtle.onkey(turnleft, 'Left')
    turtle.onkey(turnright, 'Right')
    turtle.onkey(backward, 'Down')
    turtle.onkey(top_layer, '-')
    turtle.listen()
def planet_layer():
    turtle.clearscreen()
    screen_setup()
    
    pla = turtle.Turtle()
    pla.hideturtle()
    pla.penup()
    pla.color('white')
    pla.speed(0)
    pla.setpos(35,0)
    pla.seth(90)
    pla.pendown()
    pla.circle(35)
    
    sta1 = turtle.Turtle()
    sta1.hideturtle()
    sta1.resizemode("user")
    sta1.shapesize(1, 1, 1)
    sta1.color('white')
    sta1.speed(0)
    sta1.penup()
    sta1.shape('circle')
    sta1.setpos(90,0)
    sta1.seth(90)
    sta1.showturtle()
    sta1.speed(1)
    
    while True:
        sta1.circle(90)
def regression():
    filename = input("Please provide the name of the file including the extention: ")
    while not (os.path.exists(filename)):
        filename = input("Please provide a valid name for the file including the extention: ")
    ds = []
    file = open(filename)

    for line in file:
        coordinates = line.split()
        x = float(coordinates[0])
        y = float(coordinates[1])
        point = (x, y)
        ds.append(point)
    my_turtle = turtle.Turtle()
    turtle.title("Least Squares Regression Line")

    turtle.clearscreen()
    xmin = min(getXcoords(ds))
    xmax = max(getXcoords(ds))
    ymin = min(getYcoords(ds))
    ymax = max(getYcoords(ds))
    xborder = 0.2 * (xmax - xmin)
    yborder = 0.2 * (ymax - ymin)
    turtle.setworldcoordinates(xmin - xborder, ymin - yborder, xmax + xborder, ymax + yborder)
    plotPoints(my_turtle, ds)
    m, b = leastSquares(ds)
    print("The equation of the line is y=%fx+%f" % (m, b))
    plotLine(my_turtle, m, b, xmin, xmax)
    plotErrorBars(my_turtle, ds, m, b)
    print("Goodbye")
Exemple #8
0
def franklinBegin():
		turtle.screensize(3000, 3000)
		turtle.clearscreen()
		turtle.bgcolor('black')
		franklin = turtle.Turtle(visible = False)
		franklin.color('green', 'green')
		franklin.speed(0)
		return franklin
Exemple #9
0
def koch_wipe(degree):
    '''Display a koch curve but wiping the screen before hand'''
    turtle.clearscreen()
    me = turtle.Turtle()
    me.speed(0)
    me.penup()
    me.bk(400)
    me.pendown()
    koch_curve(me, 800, degree)
    me.ht()
Exemple #10
0
def avion(a, b, salto):
    for i in range(a, b, salto):
        turtle.clearscreen()
        x1 = i
        x2 = i - 3
        x3 = i + 3
        figura.triangulo(x1, 7, x2, 0, x3, 0)
        turtle.pencolor('red')
        rayo(x1)
    avion(b, a, -salto)
    def middle_layer_sta1():
        time.sleep(0.5)
        turtle.clearscreen()
        screen_setup()
        station_1()
        sp2 = turtle.Turtle()
        sp2.color('white')
        sp2.penup()
        sp2.speed(0)
        global middle_sta1_pos
        sp2.setpos(middle_sta1_pos)
        sp2.seth(90)
        sp2.showturtle()
        speed = (10)
        b = 2
        def turnleft():
            sp2.left(30)
        def turnright():
            sp2.right(30)
        def forward():
            sp2.forward(speed)
        def backward():
            sp2.backward(speed)
        def zoom1():
            global middle_sta1_pos
            middle_sta1_pos = sp2.pos()
            if sp2.xcor() > -162 and sp2.xcor() < -98 and sp2.ycor() > -112 and sp2.ycor() < -64:
                docking_layer()            
                
        turtle.onkey(forward, 'Up')
        turtle.onkey(turnleft, 'Left')
        turtle.onkey(turnright, 'Right')
        turtle.onkey(backward, 'Down')
        turtle.onkey(top_layer, '-')
        turtle.onkey(zoom1,'=')
        turtle.listen()

        for i in range(1000):
            x = random.randrange(-250, 450)
            h = random.randrange(220, 340)
            ship = turtle.Turtle()
            ship.hideturtle()
            ship.color('gray')
            ship.penup()
            ship.speed(0)
            ship.setpos(x, 260)
            ship.showturtle()
            ship.speed(1)
            ship.seth(h)
            ship.forward(1000)
            if sp2.xcor() > -162 and sp2.xcor() < -98 and sp2.ycor() > -112 and sp2.ycor() < -64:
                break
def game_end_screen(winner):
    turtle.clearscreen()
    screen.bgcolor("#4A4A4A")

    if winner == 0:
        text_write = "AI Won!"
    elif winner == 1:
        text_write = "Player Won!"
    elif winner == 2:
        text_write = "Stalemate!"

    end_turtle = turtle.Turtle()
    end_turtle.hideturtle()
    end_turtle.color("white")
    end_turtle._tracer(False)
    # the font size is just a relative static value to make sure it is proportionate
    end_turtle.write(text_write, move=False, align="center", font=("Arial", int(BOARD_DIMENSION/10)))
def fan(shape,width,height,num=10,angle1=0,angle2=180,color='red') :
    import turtle
    
    turtle.clearscreen()
    turtle.color(color)
    angle1=angle1-90
    angle2=angle2-90
    b = ((angle2-angle1)/num)
    x = angle1
    if (shape is rectangle) :
        for i in range(num + 1) :
            rectangle(turtle,0, 0, width, height, x)
            x += b
    else:
        if (shape is triangle):
            for i in range(num+1):
                triangle(turtle,0,0,width,height,x)
                x+=b
    turtle.done()
Exemple #14
0
def update():
   moved = move_turtle(mario)
   if moved:
      (i1,j1) = (mario['i'], mario['j'])
      drawer.undo()   # clear the previous message written
      #drawer_write("Mario: {}, {}".format(score, live))
      item = items.get(item_key(i1,j1))
      if item != None:   # there is an item at this coordinate
         mario['score'] += 10
         print(item["type"] + " eaten , your point is: ",mario['score'])
         stamp_id = item["stamp"]
         drawer.clearstamp(stamp_id)
         del items[item_key(i1,j1)]
      for bad_turtle in bad_turtles:
         (i2,j2) = (bad_turtle['i'], bad_turtle['j'])
         if i1==i2 and j1==j2: # mario is at the same cell with bad_turtle
           print("Mario lost a life")
           mario['lives'] -= 1
      #wn.title("Mario at ({0}, {1}) DIR:{2} , score:{3}, left:{4}".format(mario['i'], mario['j'], mario['dir'],score,live))
      drawer_write("point: {}  | lives: {}".format(mario['score'], mario['lives']))
   for bad_turtle in bad_turtles:
      set_direction(bad_turtle)
      moved = move_turtle(bad_turtle)
      if moved:
         (i1,j1) = (mario['i'], mario['j'])
         (i2,j2) = (bad_turtle['i'], bad_turtle['j'])
         if i1==i2 and j1==j2:
           print("Mario is eaten")
           mario['lives'] -= 1
   if mario['lives'] == 0:
       print("game over")
       turtle.clearscreen()
       drawer.goto(0,0)
       drawer.write("GAME OVER", font=("Arial", 25, "normal"), align="center")

   elif len(items) == 0:
      print("Game completed.")
      drawer.goto(0,0)
      drawer.write("CONGRATULATIONS!! YOU WON", font=("Arial", 25, "normal"), align="center")
      
   else:
      wn.ontimer(update, 200)
def main():
    x=int(input('Enter the number of trees: '))
    house=input('Is there a House in the forest (y/n)? ')
    StartPos()
    findmax=sketch(x,house)
    input('Night is done, press enter for the day')
    turtle.clearscreen()
    turtle.penup()
    turtle.setx(-150)
    turtle.sety(-150)
    turtle.pendown()
    total=WoodQuantity(findmax)

    """
    Adding the wood obtained from the trunks and the house built during the night
    """
    dayTime(total+341.4)
    showSun()
    print('Day is done, house is built, ')
    input('Press ENTER to quit')
Exemple #16
0
    def core(self):
        turtle.clearscreen()
        p = v = 100
        q = z = 100
        #
        x = 0
        # mouvement
        while self.map[p][q] != 1:
            if x != 0:
                if len(self.trace) != 0:
                    for l in self.trace:
                        b = True
                        if [v, z] == l:
                            b = False
                    if b:
                        p = v
                        q = z
                        self.map[p][q] = 1
                        self.addTrace(p, q)
                        self.display(x)
                    else:
                        v = p
                        q = z
                else:
                    self.map[p][q] = 1
                    self.addTrace(p, q)
                    self.display(x)

            x = self.randomMode(1)
            if x == 1:
                v += 1
            if x == 2:
                z -= 1
            if x == 3:
                v -= 1
            if x == 4:
                z += 1
def main_program():
    turtle.bgcolor("black")
    k = turtle.numinput("Vanishing Point X-coordinate", "Input an x-coordinate between -20 and 20 for t"
                                                        "he vanishing point and press ENTER.", -6)
    b = turtle.numinput("Vanishing Point Y-coordinate", "Input a  y-coordinate between -20 and 20 for t"
                                                        "he vanishing point and press ENTER.", 3)
    turtle.hideturtle()
    turtle.clearscreen()
    turtle.bgcolor("black")
    turtle.tracer(0, 0)
    turtle.penup()
    c = (20 * k) - 80
    f = (20 * b) + 70
    turtle.goto(c, f)
    turtle.pendown()
    turtle.pencolor("#00FF47")
    turtle.goto(c, (f + 5))
    turtle.goto(c, f)
    turtle.goto((c + 5), f)
    turtle.goto(c, f)
    turtle.goto((c - 5), f)
    turtle.goto(c, f)
    turtle.goto(c, (f - 5))
    turtle.update()

    draw(-10, 0, 0, k, b)  # First layer of the left side of the house.
    draw(-10, 0, 1, k, b)
    draw(-10, 0, 2, k, b)  
    draw(-10, 0, 3, k, b)  
    draw(-10, 0, 4, k, b)
    draw(-10, 0, 5, k, b)  
    draw(-10, 0, 6, k, b)  
    draw(-10, 0, 7, k, b)  
    draw(-10, 0, 8, k, b)  

    draw(-9, 0, 8, k, b)  # First layer of the front and back of the house.
    draw(-9, 0, 0, k, b)   
    draw(-8, 0, 8, k, b)   
    draw(-8, 0, 0, k, b)   
    draw(-7, 0, 8, k, b)
    draw(-7, 0, 0, k, b)   
    draw(-6, 0, 8, k, b)   
    draw(-6, 0, 0, k, b)   
    draw(-5, 0, 0, k, b)   
    draw(-4, 0, 0, k, b)   
    draw(-3, 0, 8, k, b)   
    draw(-3, 0, 0, k, b)   
    draw(-2, 0, 8, k, b)   
    draw(-2, 0, 0, k, b)   
    draw(-1, 0, 8, k, b)   
    draw(-1, 0, 0, k, b)   

    draw(0, 0, 0, k, b)  # First layer of the right side of the house.
    draw(0, 0, 1, k, b)  
    draw(0, 0, 2, k, b)  
    draw(0, 0, 3, k, b)  
    draw(0, 0, 4, k, b)
    draw(0, 0, 5, k, b)  
    draw(0, 0, 6, k, b)  
    draw(0, 0, 7, k, b)  
    draw(0, 0, 8, k, b)  

    draw(-6, 1, 8, k, b)  # Doorway of the house.
    draw(-6, 2, 8, k, b)  
    draw(-6, 3, 8, k, b)  
    draw(-6, 4, 8, k, b)  
    draw(-5, 4, 8, k, b)
    draw(-4, 4, 8, k, b)  
    draw(-3, 4, 8, k, b)  
    draw(-3, 3, 8, k, b)  
    draw(-3, 2, 8, k, b)  
    draw(-3, 1, 8, k, b)  

    draw(-10, 1, 0, k, b)  # Back left corner of the house.
    draw(-10, 2, 0, k, b)   
    draw(-10, 3, 0, k, b)
    draw(-10, 4, 0, k, b)   
    draw(-10, 5, 0, k, b)   
    draw(-10, 6, 0, k, b)   

    draw(-10, 1, 8, k, b)  # Front left corner of the house.
    draw(-10, 2, 8, k, b)   
    draw(-10, 3, 8, k, b)
    draw(-10, 4, 8, k, b)   
    draw(-10, 5, 8, k, b)   
    draw(-10, 6, 8, k, b)   

    draw(0, 1, 0, k, b)  # Back right corner of the house.
    draw(0, 2, 0, k, b)   
    draw(0, 3, 0, k, b)
    draw(0, 4, 0, k, b)   
    draw(0, 5, 0, k, b)   
    draw(0, 6, 0, k, b)   

    draw(0, 1, 8, k, b)  # Front right corner of the house.
    draw(0, 2, 8, k, b)    
    draw(0, 3, 8, k, b)
    draw(0, 4, 8, k, b)    
    draw(0, 5, 8, k, b)    
    draw(0, 6, 8, k, b)    

    draw(-10, 6, 1, k, b)  # Top layer of the left side of the house.
    draw(-10, 6, 2, k, b)  
    draw(-10, 6, 3, k, b)  
    draw(-10, 6, 4, k, b)
    draw(-10, 6, 5, k, b)  
    draw(-10, 6, 6, k, b)  
    draw(-10, 6, 7, k, b)  
    
    draw(-9, 6, 8, k, b)  # Top layer of the front and back of the house.
    draw(-9, 6, 0, k, b)   
    draw(-8, 6, 8, k, b)   
    draw(-8, 6, 0, k, b)   
    draw(-7, 6, 8, k, b)    
    draw(-7, 6, 0, k, b)   
    draw(-6, 6, 8, k, b)   
    draw(-6, 6, 0, k, b)   
    draw(-5, 6, 8, k, b)   
    draw(-5, 6, 0, k, b)   
    draw(-4, 6, 8, k, b)   
    draw(-4, 6, 0, k, b)   
    draw(-3, 6, 8, k, b)   
    draw(-3, 6, 0, k, b)   
    draw(-2, 6, 8, k, b)   
    draw(-2, 6, 0, k, b)   
    draw(-1, 6, 8, k, b)   
    draw(-1, 6, 0, k, b)   

    draw(0, 6, 1, k, b)  # Top layer of the right side of the house.
    draw(0, 6, 2, k, b)
    draw(0, 6, 3, k, b)
    draw(0, 6, 4, k, b)
    draw(0, 6, 5, k, b)    
    draw(0, 6, 6, k, b)    
    draw(0, 6, 7, k, b)    

    draw(-11, 6, 0, k, b)  # Left gutter.
    draw(-11, 6, 1, k, b)  
    draw(-11, 6, 2, k, b)  
    draw(-11, 6, 3, k, b)  
    draw(-11, 6, 4, k, b)
    draw(-11, 6, 5, k, b)  
    draw(-11, 6, 6, k, b)  
    draw(-11, 6, 7, k, b)  
    draw(-11, 6, 8, k, b)  

    draw(1, 6, 0, k, b)  # Right gutter.
    draw(1, 6, 1, k, b)    
    draw(1, 6, 2, k, b)    
    draw(1, 6, 3, k, b)    
    draw(1, 6, 4, k, b)
    draw(1, 6, 5, k, b)    
    draw(1, 6, 6, k, b)    
    draw(1, 6, 7, k, b)    
    draw(1, 6, 8, k, b)    

    draw(-10, 7, 0, k, b)  # Back left part of roof.
    draw(-9, 8, 0, k, b)   
    draw(-8, 9, 0, k, b)
    draw(-7, 10, 0, k, b)  
    draw(-6, 11, 0, k, b)  
    draw(-5, 12, 0, k, b)  

    draw(-4, 11, 0, k, b)  # Back right part of roof.
    draw(-3, 10, 0, k, b)  
    draw(-2, 9, 0, k, b)
    draw(-1, 8, 0, k, b)   
    draw(0, 7, 0, k, b)    

    draw(-10, 7, 8, k, b)  # Front left part of roof.
    draw(-9, 8, 8, k, b)   
    draw(-8, 9, 8, k, b)
    draw(-7, 10, 8, k, b)  
    draw(-6, 11, 8, k, b)  
    draw(-5, 12, 8, k, b)  

    draw(-4, 11, 8, k, b)  # Front right part of roof.
    draw(-3, 10, 8, k, b)  
    draw(-2, 9, 8, k, b)
    draw(-1, 8, 8, k, b)   
    draw(0, 7, 8, k, b)    

    draw(-5, 12, 1, k, b)  # Ridge beam.
    draw(-5, 12, 2, k, b)
    draw(-5, 12, 3, k, b)
    draw(-5, 12, 4, k, b)
    draw(-5, 12, 5, k, b)
    draw(-5, 12, 6, k, b)
    draw(-5, 12, 7, k, b)
    
    main_program()
    turtle.mainloop()
Exemple #18
0
def reset():
    turtle.clearscreen()
    turtle.hideturtle()
    drawPig()
Exemple #19
0
def turtle_setup(width=800, height=800):
    turtle.Screen()
    turtle.setup(width, height)
    turtle.clearscreen()
    turtle.title("Bohr (turtle) atom")
Exemple #20
0
def startGame():
    tList = []
    turtle.clearscreen()
    turtle.hideturtle()
    colors = [
        "red", "green", "blue", 'yellow', 'pink', 'orange', 'purple', 'black',
        'grey'
    ]
    start = -(win_length / 2) + 20
    for t in range(turtles):
        newPosX = start + t * (win_length) // turtles
        tList.append(racer(colors[t], (newPosX, -230)))
        tList[t].turt.showturtle()

    run = True
    while run:
        for t in tList:
            t.move()

        maxColor = []
        maxDis = 0
        for t in tList:
            if t.pos[1] > 230 and t.pos[1] > maxDis:
                maxDis = t.pos[1]
                maxColor = []
                maxColor.append(t.color)
            elif t.pos[1] > 230 and t.pos[1] == maxDis:
                maxDis = t.pos[1]
                maxColor.append(t.color)

        if len(maxColor) > 0:
            run = False
            print('The winner is: ')
            for win in maxColor:
                print(win)

    oldScore = []
    if (not os.path.exists("scores.txt")):
        file = open("scores.txt", 'w')
        for color in colors:
            file.write(color + ' 0 \n')
        file.close()
    file = open('scores.txt', 'r')
    for line in file:
        l = line.split(' ')
        color = l[0]
        score = l[1]
        oldScore.append([color, score])

    file.close()

    file = open('scores.txt', 'w')

    for entry in oldScore:
        for winner in maxColor:
            if entry[0] == winner:
                entry[1] = int(entry[1]) + 1

        file.write(str(entry[0]) + ' ' + str(entry[1]) + '\n')

    file.close()
	def core(self):
		turtle.screensize(10000,10000)
		turtle.clearscreen()
		turtle.bgcolor("black")

		# select the origin in middle of the map
		q = self.n/2
		p = self.m/2
		
		# origin
		turtle.pencolor("red")
		turtle.fill(True)
		for _ in range(3): turtle.forward(5); turtle.left(120)
		turtle.fill(False)
		
		# init
		x = 0
		y = 0
		
		#while(self.map[p][q]!=1) :
		while(True) :
			self.map[p][q]+=1
			
			# current color
			t = 0;
			if(self.map[p+1][q+1]==1) : t+=1
			if(self.map[p+1][q-1]==1) : t+=1
			if(self.map[p-1][q-1]==1) : t+=1
			if(self.map[p-1][q+1]==1) : t+=1
			if(t==0) : turtle.pencolor("white")
			if(t==1) : turtle.pencolor("green")
			if(t==2) : turtle.pencolor("blue")
			if(t==3) : turtle.pencolor("purple")
			if(t==4) : turtle.pencolor("red")

			# display progression with tk and turtle
			self.display(x)

			# random value
			x = self.randomMode(1)
			if(x>0 and x<=90):
				p += 1
				q += 1
			elif(x>90 and x<=180):
				p += 1
				q -= 1
			elif(x>180 and x<=270):
				p -= 1
				q -= 1
			elif(x>270 and x<=360):
				p -= 1
				q += 1
			else : print '>>>> ERROR !!!'


			y += 1
		print '>>> ESSAI '+str(self.c)
		print '>>> Nombre de coups : '+str(y)
		(self.s).append(y)
		self.v += y
		self.c += 1
		self.t -= 1
Exemple #22
0
	def show(self,color=['yellow','red','blue','#CCCCFF','orange','green'],notation=None,exfaces=None,\
			 movement=None,arrow=None,dimension=3,pencolor='black'):
		colordict = {}
		for facecolor in list(zip(self.faces,color)):
			colordict[facecolor[0]] = facecolor[1]

		coordinate_heading_angle_list = [[(0,225),330,120],\
										 [(0,75),30,120],\
										 [(-75*np.sqrt(3),150),330,60],\
								   		 [(0,-100),330,120],\
								   		 [(-160*np.sqrt(3),235),30,120],\
								   		 [(90*np.sqrt(3),310),330,60]]

		def plot_a_face(angle, pencolor, fillcolors, dimension):
			t.down()
			
			def plot_a_row(angle, pencolor, fillcolors,dimension):
				for i in range(len(fillcolors)):
					t.color(pencolor, fillcolors[i])
					t.begin_fill()
					t.forward(50*3/dimension)
					t.right(angle)
					t.forward(50*3/dimension)
					t.right(180 - angle)
					t.forward(50*3/dimension)
					t.right(angle)
					t.forward(50*3/dimension)
					t.right(180 - angle)
					t.end_fill()
					t.forward(50*3/dimension)
			
			n = int(len(fillcolors)/dimension)
			for i in range(n):
				plot_a_row(angle,pencolor,fillcolors[dimension*i:dimension*(i+1)],dimension)
				t.up()
				t.backward(150)
				t.right(angle)
				t.forward(50*3/dimension)
				t.left(angle)
				t.down()
		
		def blocksarray(colors,dimension):
				if dimension == 2:
					return [colors[0,0],colors[0,2],colors[2,0],colors[2,2]]
				else:
					return colors.reshape(9)

		try:
			t.clearscreen()
		
		finally:
			t.color('black')
			t.pensize(2)
			t.speed(0)
			
			for i in range(6):
				blockslist = blocksarray(self.coordinate[i],dimension)
				fillcolors = [colordict[self.status[x][0]] for x in blockslist]
				t.up()
				t.goto(coordinate_heading_angle_list[i][0])
				t.setheading(coordinate_heading_angle_list[i][1])
				t.down()
				plot_a_face(coordinate_heading_angle_list[i][2],pencolor,fillcolors,dimension)

			t.up()
			t.goto(0,500)
			t.done()
			time.sleep(3)
Exemple #23
0
import turtle as t
import math as m
j = 4
while (j <= 25):
    i = 0
    while (i <= 2 * m.pi):
        v = 0
        k = 1
        for k in range(1, j, 2):
            c = (1 / k) * (m.sin(k * i))
            v = v + c
        t.setpos(25 * i, 50 * v)
        i += 0.01

    j += 2
    t.clearscreen()
        forward(groesse / 2)
        left(180)
        forward(groesse / 2)
        left(60)
        forward(groesse / 2)
        left(180)
        forward(groesse / 2)
        right(120)
        forward(groesse / 2)
        left(180)
        forward(groesse * 1.5)
        left(120)


# Hauptprogramm
clearscreen()
color("lightblue")
width(3)
speed(20)

for i in range(10):
    # Stift an zufällige Position setzen
    up()
    setx(randint(-250, 250))
    sety(randint(-200, 200))
    down()
    # Flocke in zufälliger Größe zeichnen
    groesse = randint(10, 30)
    zeichne_flocke(groesse)

Exemple #25
0
def game_over():
    turtle.clearscreen()
    turtle.bgpic("game_over.gif")
    # PARTIE TURTLE
    SCREEN_X = 400
    SCREEN_Y = 400

    turt.up()

    # Présentation du projet
    turt.goto(-400, 100)
    turt.write(return_banner(), font=("Courier New", 12, "normal"))
    turt.goto(-400, -120)
    turt.write(return_proj(), font=("Courier New", 12, "normal"))
    turt.goto(-400, -285)
    turt.write(return_text(), font=("Courier New", 12, "normal"))

    # On attends 5 secondes puis on clean puis pavage
    turt.ontimer(lambda: turt.clearscreen(), 800)
    time.sleep(1)

    # Screen
    turt.title("Projet Vasarely")
    turt.screensize(SCREEN_X, SCREEN_Y)
    turt.bgcolor('white')

    # Tortue
    turt.hideturtle()
    turt.speed("fastest")
    turt.up()

    # Console
    print("Paramètres retenus : ")
    print("Coin inférieur gauche : ", ig)
Exemple #27
0
def new_game():

    """
    This method will set up a game of simon says.
    It requires a helper function "show_circle()", which
    draws the pattern as it gets larger.
    """

    # Stores the colors for the circles
    simon_colors = ["blue", "green", "red", "yellow"]
    scores_turtle = turtle.Turtle()

    try:
        with open("scores.txt", "rb") as myFile:  # Open file and store data in dictionary
            scores = pickle.load(myFile)
    except EOFError:  # If empty file give empty dictionary
        scores = {}

    shape_turtle = turtle.Turtle()  # Turtle that draws the circles

    while True:
        # Clears screen before each new game
        turtle.clearscreen()
        turtle.clear()
        turtle.reset()
        scores_turtle.clear()
        scores_turtle.reset()
        scores_turtle.hideturtle()

        # Prompts user to enter his/her name
        name = turtle.textinput("Simon Says game", "Enter your name and then press OK:")

        # Displays start screen instructions
        turtle.write("Hello " + name + " and welcome to Simon Says!\n\nA series of circles will"
        " be displayed on the screen.\nYour task, should you choose to accept, is to guess the pattern.\nEnter your guess in the text box."
        "\n\n(ex: if the pattern is blue red, enter br)\n\nHave fun!\n\n", align="center", font=("Arial", 14, "bold"))

        # Waits for 1 second so user can read instructions
        time.sleep(1)

        # User can enter anything here to start game
        # Game will only end here if the user clicks cancel
        instructions_input = turtle.textinput("Ready to play?", "Press OK to continue.")

        # Clears screen once user hits OK button
        if instructions_input.strip() == "":
            turtle.clear()
        else:
            turtle.clear()

        correct = True  # Checks if the answer is correct
        score = 0  # Stores user score
        answer = []  # Stores the correct answer pattern with each color
        answer_string = ""   # Stores the correct answer pattern with each starting letter

        # Keeps going while the answer is correct
        while correct:
            rand = random.randint(0, 3)  # Random number to generate a random color
            answer.append(simon_colors[rand])  # Adds the color to the answer list
            answer_string += answer[score][0]  # Adds the first letter of each color to answer_string

            # Draws the sequence of circles
            for i in range(0, len(answer)):
                show_circle(shape_turtle, [answer[i]])

                # Decreases sleep time as score goes up, stops at .3 seconds
                if score == 0:
                    time.sleep(1.5)
                elif score < 10:
                    time.sleep(1.5 - ((score + 1) * .1))
                else:
                    time.sleep(.3)

                shape_turtle.hideturtle()
                shape_turtle.clear()

            # Prompt user to guess
            user_guess = turtle.textinput("Answer", "Enter your guess:")
            user_guess = user_guess.strip().lower()  # Remove unnecessary white spaces and convert to lower case

            # If answer is not equal to the answer_string, stops game
            if user_guess != answer_string:
                correct = False
                scores[name] = score
                sorted_scores = sorted(scores.items(), key=operator.itemgetter(1))
                turtle.write("TOP SCORES\n\n", align="center", font=("Arial", 14, "bold"))
                for key, val in sorted_scores:
                    scores_turtle.write("\n")
                    scores_turtle.write(str(key) + ".    " + str(val), align="center", font=("Arial", 10))

            # Adds to user score each round they get one correct
            else:
                score += 1

        # Asks user if he/she wants to play again
        if not correct:
            continue_option = turtle.textinput("GAME OVER!", "Press OK to play again. Enter q and hit OK to quit:")
        # User quits the game
        if continue_option.strip() == "q" or continue_option.strip() == "Q":
            break
Exemple #28
0
 def restart(self):
     clearscreen()
     main()
Exemple #29
0
    def time_temp(i, q):
        turtle.resetscreen()
        turtle.clearscreen()
        wn.setup(width=600, height=600)
        wn.bgpic("timetemp1.gif")
        turtle.listen()
        turtle.onkey(clearhome, "e")
        #today = date.today()
        game.color("white")
        home = turtle.Turtle()
        home.color("black")
        home.penup()
        home.left(90)
        home.forward(280)
        home.left(90)
        home.forward(150)
        home.write("Click me to go back", font=style1, align="center")
        turtle.listen()
        home.onclick(clearhome)

        pen = turtle.Turtle()
        pen.hideturtle()
        pen.speed(0)
        pen.pensize(3)

        #Making a function to make a clock
        def clock(h, m, s, pen):
            pen.up()
            pen.goto(0, 210)
            pen.setheading(180)
            pen.color("black")
            wn.tracer(0)
            pen.pendown()
            pen.circle(210)
            pen.penup()
            pen.goto(0, 0)
            pen.setheading(90)

            for _ in range(12):
                pen.fd(190)
                pen.pendown()
                pen.fd(20)
                pen.penup()
                pen.goto(0, 0)
                pen.rt(30)
            pen.penup()
            pen.goto(0, 0)
            pen.color("blue")
            pen.setheading(90)
            angle = (h / 12) * 360
            pen.rt(angle)
            pen.pendown()
            pen.fd(100)

            pen.penup()
            pen.goto(0, 0)
            pen.color("black")
            pen.setheading(90)
            angle = (m / 60) * 360
            pen.rt(angle)
            pen.pendown()
            pen.fd(180)

            pen.penup()
            pen.goto(0, 0)
            pen.color("gold")
            pen.setheading(90)
            angle = (s / 60) * 360
            pen.rt(angle)
            pen.pendown()
            pen.fd(120)

        while True:
            h = int(time.strftime("%H"))
            m = int(time.strftime("%M"))
            s = int(time.strftime("%s"))
            clock(h, m, s, pen)
            wn.update()
            time.sleep(1)
            pen.clear()
            pen.hideturtle()
            #This is how when we click the turtle, it goes to the weather network to see the time
            temp = turtle.Turtle()
            temp.penup()
            temp.color("black")
            temp.forward(280)
            temp.setpos(0, 250)
            temp.color("black")
            temp.write("Click me to see temprature",
                       font=style1,
                       align="center")
            temp.onclick(temps)
Exemple #30
0
def start_button(x, y):
    print("Clearing Screen!")
    turtle.resetscreen()
    turtle.clearscreen()
    game_window()
def ZeeSlag(x, y):
    global gevonden
    global zelfdecor
    global raakteller
    global Rx
    global Ry
    global BootGeraakt
    global HitStatus
    global gamemode
    global RnG
    found = False
    if x <= -200 and x >= -300 and y <= 0 and y >= -80 and gamemode == 0:
        gamemode = 1
        pen2.clear()
        if gamemode == 1:
            CreateGrid(listcor)
            GridBuildPlayer()
            GridBuildBot()
            text.setposition(-550, 310)
            text.write(Printschepen[vlootteller], font=("Arial", 25, "normal"))
            turtle.onscreenclick(none)
    elif x <= 400 and x >= 300 and y <= 0 and y >= -80 and gamemode == 0:
        turtle.bye()
        exit
    InCellLeftGrid(x, y)
    if BotenGeplaatst == False:
        maakvlootPlayer(Gx, Gy)
    else:
        #speler speelt
        InCellRightGrid(x, y)
        HitOrSunk(Ty, Tx, vlootbotlijst[RnG], vlootbotstatus)
        if gevonden == True:
            ColorCellRed(Gx, Gy)
        if HitStatus == 'Vloot gezonken!':
            turtle.clearscreen()
            text.setposition(-200, 0)
            text.color('green')
            text.write('Gewonnen! :)', font=("Arial", 50, "normal"))
            text.setposition(-140, -200)
            text.color('black')
            text.write('klik om te stoppen', font=("Arial", 25, "normal"))
            turtle.exitonclick()
        #Bot speelt
        if gevonden == False:
            ColorCellGrey(Gx, Gy)
            #in the case a boat has not been hit already
            if BootGeraakt == False:
                SmartClick(listcor, 0)
                HitOrSunk(Ty, Tx, vloot, vlootstatus)
                if gevonden == True:
                    CollorCellBotRed(Ty, Tx)
                    BootGeraakt = True
                else:
                    CollorCellBotGrey(Ty, Tx)
            if BootGeraakt == True:
                while True:
                    if gevonden == True:
                        CreateSmartlist(Ty, Tx, boot, smartcorlist)
                    SmartClick(smartcorlist, 1)
                    HitOrSunk(Ty, Tx, vloot, vlootstatus)
                    if gevonden == True:
                        CollorCellBotRed(Ty, Tx)
                        if HitStatus == 'Vloot gezonken!':
                            turtle.clearscreen()
                            text.setposition(-200, 0)
                            text.color('red')
                            text.write('Verloren! :(',
                                       font=("Arial", 50, "normal"))
                            text.setposition(-140, -200)
                            text.color('black')
                            text.write('klik om te stoppen',
                                       font=("Arial", 25, "normal"))
                            turtle.exitonclick()
                        elif HitStatus == 'Boot gezonken!':
                            Emptycorlist(boot)
                            SmartClick(listcor, 0)
                            HitOrSunk(Ty, Tx, vloot, vlootstatus)
                            if gevonden == False:
                                CollorCellBotGrey(Ty, Tx)
                                BootGeraakt = False
                                break
                            else:
                                CollorCellBotRed(Ty, Tx)
                                BootGeraakt = True
                    else:
                        CollorCellBotGrey(Ty, Tx)
                        break
def click_x_key():
    turtle.clearscreen()
Exemple #33
0
def clear_all():
    t.clearscreen()
    screen.bgcolor("black")
    screen.tracer(n=0)
Exemple #34
0
        def game1():
            wn.bgpic(image)
            wn.tracer(0)
            pygame.mixer.pre_init(44100, 16, 2,
                                  4096)  #frequency, size, channels, buffersize
            pygame.init()
            # song = pygame.mixer.Sound('music/music.wav')
            pygame.mixer.music.load(path.join(music_dir, 'music.wav'))
            pygame.mixer.music.play(-1)

            turtle.register_shape(path.join(img_dir, 'playerShip20.gif'))

            class Pen(turtle.Turtle):
                def __init__(self):
                    turtle.Turtle.__init__(self)
                    self.shape("square")
                    self.color("white")
                    self.penup()
                    self.speed(0)

            class Player(turtle.Turtle):
                def __init__(self):
                    turtle.Turtle.__init__(self)
                    self.shape(path.join(img_dir, 'playerShip20.gif'))
                    self.color("blue")
                    self.penup()
                    self.speed(0)
                    self.gold = 100

                def go_up(self):
                    move_to_x = player.xcor()
                    move_to_y = player.ycor() + 24
                    if (move_to_x, move_to_y) not in walls:
                        self.goto(move_to_x, move_to_y)

                def go_down(self):
                    move_to_x = player.xcor()
                    move_to_y = player.ycor() - 24
                    if (move_to_x, move_to_y) not in walls:
                        self.goto(move_to_x, move_to_y)

                def go_left(self):
                    move_to_x = player.xcor() - 24
                    move_to_y = player.ycor()
                    if (move_to_x, move_to_y) not in walls:
                        self.goto(move_to_x, move_to_y)

                def go_right(self):
                    move_to_x = player.xcor() + 24
                    move_to_y = player.ycor()
                    if (move_to_x, move_to_y) not in walls:
                        self.goto(move_to_x, move_to_y)

                def is_collision(self, other):
                    a = self.xcor() - other.xcor()
                    b = self.ycor() - other.ycor()
                    distance = math.sqrt((a**2) + (b**2))

                    if distance < 5:
                        return True
                    else:
                        return False

            class treasure(turtle.Turtle):
                def __init__(self, x, y):
                    turtle.Turtle.__init__(self)
                    self.shape("circle")
                    self.color("gold")
                    self.penup()
                    self.speed(0)
                    self.gold = 100
                    self.goto(x, y)

                def destroy(self):
                    self.goto(2000, 2000)
                    self.hideturtle()

            class Enemy(turtle.Turtle):
                turtle.register_shape("Mars_Folder/img/mete.gif")

                def __init__(self, x, y):
                    turtle.Turtle.__init__(self)
                    self.color("yellow")
                    self.penup()
                    self.speed(-50)
                    self.gold = 100
                    self.goto(x, y)
                    self.direction = random.choice(
                        ["up", "down", "left", "right"])

                def move(self):
                    if self.direction == "up":
                        dx = 0
                        dy = 24
                    elif self.direction == "down":
                        dx = 0
                        dy = -24
                    elif self.direction == "left":
                        dx = -24
                        dy = 0
                    elif self.direction == "right":
                        dx = 24
                        dy = 0
                    else:
                        dx = 0
                        dy = 0

                    move_to_x = self.xcor() + dx
                    move_to_y = self.ycor() + dy

                    if (move_to_x, move_to_y) not in walls:
                        self.goto(move_to_x, move_to_y)
                    else:
                        self.direction = random.choice(
                            ["up", "down", "left", "right"])

                    turtle.ontimer(self.move, t=random.randint(100, 300))

                def destroy(self):
                    self.goto(2000, 2000)
                    self.hideturtle()

            levels = [""]

            level_1 = [
                "XXXXXXXXXXXXXXXXXXXXXXXXX", "XXP                  XXXX",
                "XX XX               E  XX", "XX XXX                 XX",
                "XX  XXX  XXXXXXX  XXX  XX", "XX  XXX           XXX  XX",
                "XXX  XX   E       XXX  XX", "XXX  XXXXXXX   XXXXXX  XX",
                "XX     XXXXXXX   XX    XX", "XXX    XXXXXXXX  XXX    XX",
                "XX     XX    XX  XXXXXXXXX", "X     XXXXX             X",
                "XX   XXXXXXXXXXXX  XXXXXX", "XX  E  XXXXXXXX    XXXXXX",
                "XXXXX  XXXXXXX   XXXXXXXX", "XXXXX  XXXXXX  XXXXXXXXXX",
                "XXXXX  XXXXXXX  XXXXXXXXX", "XXXXX  XXXXXXXX  XXXXXXXX",
                "XXXXX  XXXXXXXX   XXXXXXX", "XXXX               XXXXXX",
                "XXXX         E      XXXXX", "XXXXX   E            XXXX",
                "XXXX                  TXX", "XXXXXXXXXXXXXXXXXXXXXXXXX"
            ]

            level_2 = [
                "XXXXXXXXXXXXXXXXXXXXXXXXX", "XXP                   XXX",
                "XXXXXXXXXXXXXXXXXXXX  XXX", "XX                    XXX",
                "XX  XXXXXXXXXXXXXXXXXXXXX", "XX                    XXX",
                "XXXXXXXXXXXXXXXXXXXX  XXX", "XXXXXXXXXXXXXXXXXXXX  XXX",
                "XX      E              XX", "XXXXXXXXXXXXXXXXXXX    XX",
                "XX EXXX      XXXXX     XX", "X       XXX             X",
                "XXXXXXX                 X", "XXXXXXX                 X",
                "XXXXX            XXX   XX", "XXXXX    E     XXXX   XXX",
                "XXXXXXXXXXXXXX  XXX    XX", "XXXXXXXXXXXXXXX  XXX  E X",
                "XXXXXXXXXXXXXXX   XXX   X", "XXXX               XX   X",
                "XXXX         E      X   X", "XXXX    E               X",
                "XXXX                   TX", "XXXXXXXXXXXXXXXXXXXXXXXXX"
            ]

            level_3 = [
                "XXXXXXXXXXXXXXXXXXXXXXXXX", "XXP      XXXXXXXXXXXXXXXX",
                "XX XX    XXXXXXX    E  XX", "XX XXX   XXXXXXX  XXX  XX",
                "XX  XXX  XXXXXXX  XXX  XX", "XX  XXX           XXX  XX",
                "XXX XXX   E       XXX  XX", "XXX            XXXXXX  XX",
                "XXX              XX    XX", "XXXXXXXXXXXXXX  XXX    XX",
                "XX  XXX     XX  XXXXX  XX", "X       XXX             X",
                "XXXXXXXXXXXXXXXXX  XXXXXX", "XXXXX E    XXXX    XXXXXX",
                "XXXXX E    XXX   XXXXXXXX", "XXXXX E    XX  XXXXXXXXXX",
                "XXXXX E    XXX  XXXXXXXXX", "XX    E    XXXX  XXXXXXXX",
                "X   XXXXXXX       XXXXXXX", "X  X               XXXXXX",
                "X  X         E      XXXXX", "X  XXX               XXXX",
                "X                     TXX", "XXXXXXXXXXXXXXXXXXXXXXXXX"
            ]

            level_4 = [
                "XXXXXXXXXXXXXXXXXXXXXXXXX", "X P                     X",
                "X  XXXXXXXXXXXXXXXXXXXX X", "X  XXX       XXX  XXX   X",
                "X   XXX      XXX  XXX   X", "X   XXX           XXX   X",
                "X    XX   E       XXX   X", "X    XXXXXXX   XXXXXX   X",
                "X    XXXXXXXXX   XX     X", "X  XXXXXXXXXXX  XXX    EX",
                "X   XXX     XX  XXXXXXX X", "X       XXX             X",
                "X  XXXXX       XX  XXXX X", "X  XXXXX   E      XXXXX X",
                "X  XXX            XXXXX X", "X  XX          XXXXXXXX X",
                "X  XXXXXXXXXXX  XXXXXXX X", "X  XXXXXXXXXXXX  XXXXXX X",
                "X  XXXXXXXXXXXX   XXXXX X", "X  X               XXXX X",
                "X  X         E      XXX X", "X  XXXXXXXXXXXXXXXX  XX X",
                "XE       E             TX", "XXXXXXXXXXXXXXXXXXXXXXXXX"
            ]

            treasuress = []

            enemies = []

            levels.append(level_1)
            levels.append(level_2)
            levels.append(level_3)
            levels.append(level_4)

            def setup_maze(level):
                for y in range(len(level)):
                    for x in range(len(level[y])):
                        character = level[y][x]

                        screen_x = -288 + (x * 24)
                        screen_y = 288 - (y * 24)

                        if character == "X":
                            pen.goto(screen_x, screen_y)
                            pen.stamp()
                            walls.append((screen_x, screen_y))

                        if character == "P":
                            player.goto(screen_x, screen_y)

                        if character == "E":
                            enemies.append(Enemy(screen_x, screen_y))

                        if character == "T":
                            treasuress.append(treasure(screen_x, screen_y))

            pen = Pen()
            player = Player()

            walls = []

            setup_maze(random.choice(levels))

            turtle.listen()
            turtle.onkey(player.go_left, "Left")
            turtle.onkey(player.go_right, "Right")
            turtle.onkey(player.go_up, "Up")
            turtle.onkey(player.go_down, "Down")
            # if turtle.bye() == True:
            #     import MainMenuV4
            #     MainMenuV4.main_menu()

            wn.tracer(0)

            for enemy in enemies:
                turtle.ontimer(enemy.move, t=250)

            while True:

                for treasure in treasuress:
                    if player.is_collision(treasure):
                        pygame.mixer.pause()
                        outro()
                for enemy in enemies:
                    if player.is_collision(enemy):
                        # print("Player dies!")
                        pygame.mixer.pause()
                        turtle.clearscreen()
                        wn.bgpic(image)
                        game1()
                wn.update()
Exemple #35
0
def main_program():
    turtle.bgcolor("black")
    k = turtle.numinput(
        "Vanishing Point X-coordinate", "Input the x-coordinate for t"
        "he vanishing point and press ENTER.", -5)
    b = turtle.numinput(
        "Vanishing Point Y-coordinate", "Input the y-coordinate for t"
        "he vanishing point and press ENTER.", 5)
    turtle.hideturtle()
    turtle.clearscreen()
    turtle.bgcolor("black")
    draw(
        -10, 0, 0, k, b
    )  # Starting point. The sections of code are broken up according to their function.
    draw(-10, 0, 1, k, b)  # +
    draw(-10, 0, 2, k, b)  # |
    draw(-10, 0, 3, k, b)  # |
    draw(-10, 0, 4, k, b)  # | Left side of the "C".
    draw(-10, 0, 5, k, b)  # |
    draw(-10, 0, 6, k, b)  # |
    draw(-10, 0, 7, k, b)  # |
    draw(-10, 0, 8, k, b)  # |
    #   -------------------------+
    draw(-9, 0, 8, k, b)  # |
    draw(-9, 0, 0, k, b)  # |
    draw(-8, 0, 8, k, b)  # |
    draw(-8, 0, 0, k, b)  # |
    draw(-7, 0, 8, k, b)  # | Top and bottom of the "C".
    draw(-7, 0, 0, k, b)  # |
    draw(-6, 0, 8, k, b)  # |
    draw(-6, 0, 0, k, b)  # |
    #   -------------------------+
    draw(-4, 0, 0, k, b)  # |
    draw(-4, 0, 1, k, b)  # |
    draw(-4, 0, 2, k, b)  # |
    draw(-4, 0, 3, k, b)  # |
    draw(-4, 0, 4, k, b)  # | Left side of the "H".
    draw(-4, 0, 5, k, b)  # |
    draw(-4, 0, 6, k, b)  # |
    draw(-4, 0, 7, k, b)  # |
    draw(-4, 0, 8, k, b)  # |
    #   -------------------------+
    draw(-3, 0, 3, k, b)  # |
    draw(-2, 0, 3, k, b)  # | Crossbar of the "H".
    draw(-1, 0, 3, k, b)  # |
    draw(0, 0, 3, k, b)  # |
    draw(1, 0, 3, k, b)  # |
    #   -------------------------+
    draw(1, 0, 2, k, b)  # |
    draw(1, 0, 4, k, b)  # |
    draw(1, 0, 1, k, b)  # |
    draw(1, 0, 5, k, b)  # | Right side of the "H".
    draw(1, 0, 0, k, b)  # |
    draw(1, 0, 6, k, b)  # |
    draw(1, 0, 7, k, b)  # |
    draw(1, 0, 8, k, b)  # |
    #   -------------------------+
    draw(3, 0, 0, k, b)  # |
    draw(4, 0, 0, k, b)  # |
    draw(5, 0, 0, k, b)  # | Top of the "S".
    draw(6, 0, 0, k, b)  # |
    draw(7, 0, 0, k, b)  # |
    #   -------------------------+
    draw(3, 0, 1, k, b)  # |
    draw(3, 0, 2, k, b)  # | Top-left side of the "S".
    draw(3, 0, 3, k, b)  # |
    #   -------------------------+
    draw(4, 0, 3, k, b)  # |
    draw(5, 0, 3, k, b)  # | Middle bar of the "S".
    draw(6, 0, 3, k, b)  # |
    draw(7, 0, 3, k, b)  # |
    #   -------------------------+
    draw(7, 0, 4, k, b)  # |
    draw(7, 0, 5, k, b)  # |
    draw(7, 0, 6, k, b)  # | Bottom-left side of the "S".
    draw(7, 0, 7, k, b)  # |
    draw(7, 0, 8, k, b)  # |
    #   -------------------------+
    draw(3, 0, 8, k, b)  # |
    draw(4, 0, 8, k, b)  # |
    draw(5, 0, 8, k, b)  # | Top of the "S".
    draw(6, 0, 8, k, b)  # |
    draw(7, 0, 8, k, b)  # |
    main_program()
    turtle.mainloop()
Exemple #36
0
def main(P1, P2, P3, P4, P5):
    start = time.time()
    used_time = 0
    turtle.setup(700, 700, 600, 10)
    # turtle.clear()
    r1 = Robot(P1[0], P1[1], 'red')
    r2 = Robot(P2[0], P2[1], 'blue')
    r3 = Robot(P3[0], P3[1], 'green')
    r4 = Robot(P4[0], P4[1], 'black')
    r5 = Robot(P5[0], P5[1], 'indigo')
    robot_list = [r1, r2, r3, r4, r5]

    Tr = [[[] for i in range(2)] for j in range(len(robot_list))]

    while True:

        # calculate the detection params
        detection_params = [[] for i in range(len(robot_list))]
        for r in robot_list:
            detection_params[robot_list.index(r)].append(
                [r.location_x, r.location_y, r.velocity, r.heading])
            temp = copy.copy(robot_list)
            index = temp.index(r)
            del temp[index]
            intruders_temp = []
            for j in temp:
                intruders_temp.append(
                    [j.location_x, j.location_y, j.velocity, j.heading])
            detection_params[robot_list.index(r)].append(intruders_temp)

        target = 0
        # target used to check if reach target position
        for r in robot_list:
            if get_distance([r.location_x, r.location_y],
                            [r.target_x, r.target_y]) < 10:
                target = target + 1
            else:
                order = conflict_detection(
                    detection_params[robot_list.index(r)][0],
                    detection_params[robot_list.index(r)][1])
                if order:
                    r.move_heading_velocity(order[0], order[1])
                    Tr[robot_list.index(r)][0].append(r.location_x)
                    Tr[robot_list.index(r)][1].append(r.location_y)
                else:
                    r.move()
                    Tr[robot_list.index(r)][0].append(r.location_x)
                    Tr[robot_list.index(r)][1].append(r.location_y)
                target = target + 0
        if target == len(robot_list):
            end = time.time()
            time.sleep(5)
            turtle.clearscreen()
            excepted_legth = 0
            real_legth = 0
            for i in Tr:
                temp = get_distance([i[0][0], i[1][0]], [i[0][-1], i[1][-1]])
                excepted_legth = excepted_legth + temp
            # print("期望距离:",excepted_legth)
            for j in Tr:
                for k in range(len(j[0]) - 1):
                    real_legth = real_legth + get_distance(
                        [j[0][k], j[1][k]], [j[0][k + 1], j[1][k + 1]])
            # print("实际距离:",real_legth)
            # print("路径度量",real_legth/excepted_legth)
            Tra_metric = real_legth / excepted_legth

            used_time = end - start
            episode = []
            for i in Tr:
                episode.append(len(i[0]))
            # print(episode)
            # print("到达目标所需步骤:", episode)
            # print("总共花费实际时间:", used_time)
            # print("时间度量:", (used_time/max(episode))/4)
            Time_metric = (used_time / max(episode)) / 4

            mean_min_separation = []
            for j in range(len(episode)):
                for k in range(len(Tr)):
                    for m in range(k + 1, len(Tr)):
                        mean_min_separation.append(
                            get_distance([Tr[k][0][j], Tr[k][0][j]],
                                         [Tr[m][0][j], Tr[m][1][j]]))

            # print("最小间隔:", min(mean_min_separation)/2)
            Sep_metric = min(mean_min_separation)
            print("本次度量:", Sep_metric, Tra_metric, Time_metric, '\n')
            return Sep_metric, Tra_metric, Time_metric
Exemple #37
0
def draw_street():
  turtle.clearscreen()
  draw_house(curb_length=10, wall_height=90, roof_length=70)
  draw_house(curb_length=10, wall_height=80, roof_length=60)
  draw_house(curb_length=20, wall_height=90, roof_length=80)
  
Exemple #38
0
    "Not likely", "Hm, I'm not sure", "Why do you ask", "Yes", "No",
    "ABSOLUTELY NOT", "Ask again", "I guess"
]


def reset():
    turtle.clearscreen()
    turtle.hideturtle()
    drawPig()


num = 1
while (answer != "quit"):
    reset()
    turtle.write("You asked: " + answer,
                 align="center",
                 font=("Times New Roman", 20, "bold"))
    time.sleep(3)
    reply = bank[randint(0, 7)]
    turtle.write(reply, align="center", font=("Arial", 20, "bold"))
    time.sleep(2)
    answer = screen.textinput("Ask a Question",
                              "Wait 3s for response or type quit to exit")

if (answer == "quit"):
    turtle.clearscreen()
    turtle.hideturtle()
    turtle.write("I knew it. Bye-bye!",
                 align="center",
                 font=("Arial", 20, "bold"))
# -*- coding: utf-8 -*-
"""
Created on Sun Jul  6 22:35:59 2014

@author: sanajaved
"""
import turtle 
turtle.clearscreen()
window = turtle.Screen()
window.bgcolor("blue")
mark = turtle.Turtle()
mark.color("white")    
#s
mark.forward(100)
mark.left(90)
mark.forward(100)
mark.left(90)
mark.forward(100)
mark.right(90)
mark.forward(100)
mark.right(90)
mark.forward(100)
#j
dog = turtle.Turtle()
dog.color("pink")
dog.penup()
dog.forward(120)
dog.pendown()
dog.forward(150)
dog.left(90)
dog.forward(200)
def turtle_tekening():
    turtle.shape("turtle")
    turtle.clearscreen()
    turtle.forward(20)
    turtle.right(90)
Exemple #41
0
def reset():
    tr.clearscreen()
    tr.speed(0)
while gameOn == True:
    while roundOn == True:
        t.speed(0)
        print
        biomeTable()
        print
        playerInfo()
        drawBoard()
        drawPlayer()
        print
        turnGenerator()
        diamondCalculator()
        combatCalculator()
        print
        catastropheGenerator()
        gameCheck()
        t.clearscreen()

    print
    playerInfo()

    ### BUG LIST###
        #Playing no godMode, found pythonShine, but there is no message saying that I found PythonShine.
        #Playing godMode on, got error when entering 'e' for # of turns, make some real verification.
        #Same error occurs when "efklfn" is used as initial health
        #Also with manual biome selection
        # was able to use 12.5 as a turn maximum value, allows infinite play
        #if the file stated is not in the directory, great error
        #will accept an empty file, and then great dismay occurs :'(
        
Exemple #43
0
def drawgraph():
    global result
    t.clearscreen()
    t.ht()
    t.delay(0)
    t.speed(0)
    t.penup()
    t.colormode(255)
    k = 1 + max(result) // 50
    t.seth(0)
    for i in range(5):
        t.goto(-243, 40 * i - 280)
        t.pendown()
        t.forward(500)
        t.penup()

    t.seth(90)
    for i in range(11):
        t.goto(-243 + 50 * i, -280)
        t.pendown()
        t.forward(160)
        t.penup()

    for i in range(1, 10):
        t.goto(-220 + 50 * i, -150)
        t.write(str(i), move=False, align="left", font=("맑은 고딕", 12, "normal"))
    t.color(255, 0, 0)
    t.goto(-233, -190)
    t.write('야생', move=False, align="left", font=("맑은 고딕", 12, "normal"))
    t.color(0, 0, 255)
    t.goto(-233, -230)
    t.write('내성', move=False, align="left", font=("맑은 고딕", 12, "normal"))
    t.color(0, 0, 0)
    t.goto(-233, -270)
    t.write('전체', move=False, align="left", font=("맑은 고딕", 12, "normal"))

    for i in range(9):
        t.goto(-178 + 50 * i, -190)
        t.write(str(result[2 * i]),
                move=False,
                align="left",
                font=("맑은 고딕", 10, "normal"))
        t.goto(-178 + 50 * i, -230)
        t.write(str(result[2 * i + 1]),
                move=False,
                align="left",
                font=("맑은 고딕", 10, "normal"))
        t.goto(-178 + 50 * i, -270)
        t.write(str(result[2 * i] + result[2 * i + 1]),
                move=False,
                align="left",
                font=("맑은 고딕", 10, "normal"))

    ####### 그래프 틀
    for i in range(1):
        t.penup()
        t.goto(-150, -50)
        t.seth(90)
        t.pendown()
        t.forward(300)
        t.right(135)
        t.forward(10)
        t.penup()
        t.goto(-150, 250)
        t.pendown()
        t.right(90)
        t.forward(10)
        t.penup()
        t.goto(-150, -50)
        t.seth(0)
        t.pendown()
        t.forward(300)
        t.right(135)
        t.forward(10)
        t.penup()
        t.goto(150, -50)
        t.pendown()
        t.right(90)
        t.forward(10)
        t.penup()
        t.goto(-170, 250)
        t.write('개체 수', move=False, align="left", font=("맑은 고딕", 10, "normal"))
        t.goto(160, -58)
        t.write('세대', move=False, align="left", font=("맑은 고딕", 10, "normal"))
        t.seth(90)
        for i in range(1, 10):
            t.goto(30 * i - 152, -78)
            t.write(str(i),
                    move=False,
                    align="left",
                    font=("맑은 고딕", 10, "normal"))
            t.goto(30 * i - 150, -58)
            t.pendown()
            t.forward(12)
            t.penup()
        t.seth(0)
        for i in range(1, 10):
            t.goto(-192, 30 * i - 60)
            t.write(str(5 * k * i),
                    move=False,
                    align="left",
                    font=("맑은 고딕", 10, "normal"))
            t.goto(-158, 30 * i - 50)
            t.pendown()
            t.forward(16)
            t.penup()

    ######## 그래프 내용
        t.colormode(255)
        t.color(255, 0, 0)
        t.penup()
        for i in range(9):
            t.goto(-150 + 30 * (i + 1),
                   (-50 + int(270 * (result[2 * i] / (9 * 5 * k)))))
            t.pendown()
        t.color(0, 0, 255)
        t.penup()
        for i in range(9):
            t.goto(-150 + 30 * (i + 1),
                   (-50 + int(270 * (result[2 * i + 1] / (9 * 5 * k)))))
            t.pendown()
        t.color(0, 0, 0)
        t.penup()
        t.ht()
        t.speed(0)
        t.pensize(2)
        for i in range(9):
            t.goto(-150 + 30 * (i + 1),
                   (-50 + int(270 * (result[2 * i] + result[2 * i + 1]) /
                              (9 * 5 * k))))
            t.pendown()
        t.penup()
        t.pensize(1)
        t.color(0, 0, 0)
        t.goto(-143, -340)
        t.write('결과를 기록하신 후 이 창을 닫아 주세요.',
                move=False,
                align="left",
                font=("맑은 고딕", 12, "normal"))
Exemple #44
0
def docking_layer():
    turtle.clearscreen()
    screen_setup()
    docking_port1()
    sp3 = turtle.Turtle()
    sp3.color('white')
    sp3.penup()
    sp3.speed(0)
    sp3.setpos(300, 0)
    sp3.seth(180)
    sp3.showturtle()
    speed = (10)
    def turnleft():
        sp3.left(30)
    def turnright():
        sp3.right(30)
    def forward():
        sp3.forward(speed)
    def backward():
        sp3.backward(speed)
#airlocks
    a1 = (-370,-215)
    a2 = (-332,-215)
    a3 = (-294,-215)
    a4 = (-256,-215)
    a5 = (-370,-185)
    a6 = (-332,-185)
    a7 = (-294,-185)
    a8 = (-256,-185)
    a9 = (-370,-115)
    a10 = (-332,-115)
    a11 = (-294,-115)
    a12 = (-256,-115)
    a13 = (-370,-85)
    a14 = (-332,-85)
    a15 = (-294,-85)
    a16 = (-256,-85)
    a17 = (-370,-15)
    a18 = (-332,-15)
    a19 = (-294,-15)
    a20 = (-256,-15)
    a21 = (-370,15)
    a22 = (-332,15)
    a23 = (-294,15)
    a24 = (-256,15)
    a25 = (-370,85)
    a26 = (-332,85)
    a27 = (-294,85)
    a28 = (-256,85)
    a29 = (-370,115)
    a30 = (-332,115)
    a31 = (-294,115)
    a32 = (-256,115)
    a33 = (-370,185)
    a34 = (-332,185)
    a35 = (-294,185)
    a36 = (-256,185)
    a37 = (-370,215)
    a38 = (-332,215)
    a39 = (-294,215)
    a40 = (-256,215)
    
    
    turtle.onkey(forward, 'Up')
    turtle.onkey(turnleft, 'Left')
    turtle.onkey(turnright, 'Right')
    turtle.onkey(backward, 'Down')
    turtle.onkey(middle_layer_sta1, '-')
    turtle.listen()

    for i in range(1000):
        a = random.randrange([a1,a2,a3,a4,a5,a6,a7,a8])
        y = random.randrange(-250, 250)
        t = random.randrange(50,160)
        ship = turtle.Turtle()
        ship.hideturtle()
        ship.color('gray')
        ship.penup()
        ship.speed(0)
        ship.setpos(455, y)
        ship.showturtle()
        ship.speed(1)
        ship.goto(a)
        ship.delay(t)
        ship2 = turtle.Turtle()
        ship2.hideturtle()
        ship2.color('gray')
        ship2.penup()
        ship2.speed(0)
        ship2.setpos(455, y)
        ship2.showturtle()
        ship2.speed(1)
        ship2.goto(a1)
        ship2.delay(t)
        if sp2.xcor() > -162 and sp2.xcor() < -98 and sp2.ycor() > -112 and sp2.ycor() < -64:
            break
Exemple #45
0
	def wyczysc(self):
		tu.clearscreen()
		tu.reset()
		self.__init__(self.nazwa)
def limpiar():
    turtle.clearscreen()
    ejes()
Exemple #47
0
def SecondGame():  # 하늘에 떠있는 원을 제대로 클릭할때, forward하기.
    t.clearscreen()
    s.bgpic('bg3.gif')
    s.update()
    t.ht()
    t.penup()
    t.setposition(-350, -20)
    sShip = t.Turtle()
    sShip.ht()
    sShip.up()
    sShip.setposition(600, 0)

    sShip.shape(ship)
    sShip.st()
    t.write(" \" 뺏기지 않게 먼저 우주선에 도착하자 ! \" ", font=("KCC-은영체", 40))
    # time.sleep(3);
    t.clear()
    t.ht()

    r1 = t.Turtle()
    r1.ht()
    r1.up()
    r1.shape(Enem1)
    r1.setposition(-650, -50)
    r1.st()
    r2 = t.Turtle()
    r2.ht()
    r2.up()
    r2.shape(Enem2)
    r2.setposition(-620, -100)
    r2.st()
    r3 = t.Turtle()
    r3.ht()
    r3.up()
    r3.shape(Enem3)
    r3.setposition(-570, -150)
    r3.st()
    main2 = t.Turtle()
    main2.ht()
    main2.up()
    main2.shape(mCharacter)
    main2.setposition(-600, -200)
    main2.st()

    stepX = random.choice(range(-600, 600))
    stepY = random.choice(range(-300, 300))

    step1 = t.Turtle()
    step1.ht()
    step1.up()
    step1.shape('circle')
    step2 = t.Turtle()
    step2.ht()
    step2.up()
    step2.shape('circle')
    step3 = t.Turtle()
    step3.ht()
    step3.up()
    step3.shape('circle')
    step4 = t.Turtle()
    step4.ht()
    step4.up()
    step4.shape('circle')
    step5 = t.Turtle()
    step5.ht()
    step5.up()
    step5.shape('circle')

    def LevelSet():
        step1.setposition(stepX, stepY)
        step1.st()

    def Running():
        global StampN
        rs1 = random.randint(1, 10)
        rs2 = random.randint(1, 10)
        rs3 = random.randint(1, 10)
        r1.forward(rs1)
        r2.forward(rs2)
        r3.forward(rs3)
        main2.forward(9)  # 움직이기

        def getPos(x, y):  # 클릭 좌표
            global mxPose
            global myPose
            mxPose = x
            myPose = y
            print(str(x), str(y))
            return

        # step1.setposition(stepX,stepY); step1.st()
        # step1.setposition(stepX,stepY); step1.st()
        # step1.setposition(stepX,stepY); step1.st()
        # step1.setposition(stepX,stepY); step1.st()

        if StampN == 10:
            t.clear()
            t.ht()
            t.setposition(-250, 0)
            t.write(" \" 두번째 게임, 성공! \" ", font=("KCC-은영체", 50))
            time.sleep(2)
            FirstPlay += 0.5
            if FirstPlay == 1:
                Ending()
                return

        if main2.distance(sShip) > 12:
            t.ontimer(Running, 100)
        elif main2.distance(sShip) == 12:
            StampN == 10
        elif r1.distance(600, -50) or r2.distance(
                600, -100) or r3.distance(600, -150) < 50:
            Stop()

        t.onscreenclick(getPos)

    Running()
Exemple #48
0
    def planner(pykd, dhjk):
        turtle.resetscreen()
        turtle.clearscreen()
        wn.setup(width=600, height=600)
        turtle.listen()
        turtle.onkey(clearhome, "e")
        home = turtle.Turtle()
        home.color("white")
        home.penup()
        home.left(90)
        home.forward(280)
        home.right(90)
        home.forward(170)
        home.right(90)
        home.forward(35)
        home.right(90)
        home.write("Click me to go back", font=style1, align="center")
        turtle.listen()
        home.onclick(clearhome)

        wn.bgcolor("light pink")
        wn.bgpic("money.gif")

        #all the expences
        car_loan = int(input("Enter  car loan amount: "))
        house_loan = int(input("Enter house loan amount: "))
        water_bill = int(input("Enter water bill amount: "))
        electric_bill = int(input("Enter electric bill amount: "))
        groceries = int(input("Enter grocery expence: "))
        internet = int(input("Enter internet expence: "))
        landline = int(input("Enter landline expence: "))
        furnace_gas_bill = int(input("Enter furnace gas bill expence: "))
        morgage_protection = int(input("Enter morgage protection expence: "))
        home_insurance = int(input("Enter home insurance expence: "))
        sim_card = int(input("Enter sim card bill amount: "))
        car_gas = int(input("Enter car gas expence: "))
        hot_water_rental = int(input("Enter hot water rental bill: "))
        other_expences = int(input("Enter other expences: "))
        car_loan_insurance = int(input("Enter car loan insurance: "))
        resp = int(input("Enter resp amount: "))
        rrsp = int(input("Enter rrsp amount: "))
        credit_card = int(input("Enter credit card expences: "))
        salary = int(input("Enter salary amount: "))
        amount = int(input("Enter savings amount: "))
        expectedamount = int(input("Enter  amount"))
        month = 30
        year = 12
        daily = amount * expectedamount
        monthly = daily * month
        yearly = monthly * year
        total = credit_card + rrsp + resp + car_loan_insurance + other_expences + hot_water_rental + car_gas + sim_card + home_insurance + morgage_protection + furnace_gas_bill + landline + internet + groceries + electric_bill + water_bill + house_loan + car_loan
        saving = salary - total

        # to write all the expences down oon the turtle window
        expence = turtle.Turtle()
        expence.color("white")
        expence.penup()
        expence.left(90)
        expence.forward(275)
        expence.write("Car Loan = $" + str(car_loan),
                      font=style1,
                      align='center')
        expence.left(90)
        expence.forward(180)
        expence.write("House Loan = $" + str(house_loan),
                      font=style1,
                      align='center')
        expence.left(90)
        expence.forward(35)
        expence.write("Water Bill = $" + str(water_bill),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Electric Bill = $" + str(electric_bill),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Groceries = $" + str(groceries),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Internet = $" + str(internet),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Landline = $" + str(landline),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Furnace = $" + str(furnace_gas_bill),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Loan Protect = $" + str(morgage_protection),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Home Insure = $" + str(home_insurance),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("SIM Card = $" + str(sim_card),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Car Gas = $" + str(car_gas),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Hot Water = $" + str(hot_water_rental),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Other Expence = $" + str(other_expences),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Credit Card = $" + str(credit_card),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Car Insure = $" + str(car_loan_insurance),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.left(90)
        expence.write("RESP = $" + str(resp), font=style1, align='center')
        expence.forward(180)
        expence.write("RRSP = $" + str(rrsp), font=style1, align='center')
        expence.forward(180)
        expence.write("Salary = $" + str(salary), font=style1, align='center')
        expence.left(90)
        expence.forward(35)
        expence.write("Savings = $" + str(saving), font=style1, align='center')
        expence.forward(35)
        expence.write("Total Expenses = $" + str(total),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Daily = $" + str(daily), font=style1, align='center')
        expence.forward(35)
        expence.write("Monthly = $" + str(monthly),
                      font=style1,
                      align='center')
        expence.forward(35)
        expence.write("Yearly = $" + str(yearly), font=style1, align='center')
        turtle.listen()
        turtle.mainloop()
Exemple #49
0
 def clear():
     turtle.clearscreen()
Exemple #50
0
    def ytsongs(io, so):
        turtle.resetscreen()
        turtle.clearscreen()
        wn.setup(width=600, height=600)
        turtle.listen()
        turtle.onkey(clearhome, "e")
        home = turtle.Turtle()
        home.color("white")
        home.penup()
        home.left(90)
        home.forward(280)
        home.left(90)
        home.forward(150)
        home.left(90)
        home.forward(50)
        home.right(90)
        home.forward(18)
        home.write("Click me to go back", font=style1, align="center")
        turtle.listen()
        home.onclick(clearhome)

        wn.bgcolor("dodger blue")
        wn.bgpic("music1.gif")
        song1 = turtle.Turtle()
        song1.color("white")
        song1.penup()
        song1.left(180)
        song1.setpos(-137.5, 0)
        song1.right(90)
        song1.forward(137.5)
        song1.write("Naalai Namathe", font=style1, align="center")
        song1.onclick(song_1)
        song2 = turtle.Turtle()
        song2.color("white")
        song2.penup()
        song2.left(90)
        song2.forward(275)
        song2.write("Putham Pudhu Kaalai", font=style1, align="center")
        song2.onclick(song_2)

        song3 = turtle.Turtle()
        song3.color("white")
        song3.penup()
        song3.forward(137.5)
        song3.left(90)
        song3.forward(137.5)
        song3.write("Madai Thirandhu Thavum", font=style1, align="center")
        song3.onclick(song_3)

        song4 = turtle.Turtle()
        song4.color("white")
        song4.penup()
        song4.right(90)
        song4.forward(275)
        song4.write("Tholvi Nilaiye Ninaithal", font=style1, align="center")
        song4.left(180)
        song4.onclick(song_4)

        song5 = turtle.Turtle()
        song5.color("white")
        song5.penup()
        song5.forward(137.5)
        song5.right(90)
        song5.forward(137.5)
        song5.write("Vaaranam Aayiram", font=style1, align="center")
        song5.left(180)
        song5.onclick(song_5)

        song6 = turtle.Turtle()
        song6.color("white")
        song6.penup()
        song6.left(180)
        song6.forward(137.5)
        song6.left(90)
        song6.forward(137.5)
        song6.write("Vaadi Pulla Vaadi", font=style1, align="center")
        song6.left(180)
        song6.onclick(song_6)

        song7 = turtle.Turtle()
        song7.color("white")
        song7.penup()
        song7.left(180)
        song7.forward(137.5)
        song7.write("Natpe Thunai", font=style1, align="center")
        song7.right(90)
        song7.onclick(song_7)

        song8 = turtle.Turtle()
        song8.color("white")
        song8.penup()
        song8.forward(137.5)
        song8.left(90)
        song8.write("Anjaan - Ek Do Teen Video", font=style1, align="center")
        song8.onclick(song_8)
        turtle.mainloop()
def percentage_changes():
    import turtle
    aFile = open("WorldPopulationData2019.txt", encoding='ISO-8859-1')
    percentage_change = []
    print("{:35s}:{:20s},{:19s}".format("Country", "Population in 2019",
                                        "Percentage Change"))
    for line in aFile:
        line = line.rstrip()
        data = line.split(";")
        try:
            perc_change = float(data[6])
            pop_2019 = int(data[3])
            country = data[1]
            percentage_change.append((country, pop_2019, perc_change))

        except:
            continue
    #function returns the second index of the list "percentage_change", which represents the percentage change in population
    def change(num):
        return num[2]

    percentage_change.sort(key=change, reverse=True)
    #prints the
    for country, pop_2019, perc_change in percentage_change:
        print("{:35s}:{:20d},{:17.3f}".format(country, pop_2019, perc_change))

    #bar graph
    negative_percentages = []
    # creating list of countries with negative percentage changes (from least negative to most negative)
    for country, pop_2019, percentage in percentage_change:
        if float(percentage) < 0:
            negative_percentages.append(
                (country, percentage)
            )  #creates a list of countries with negative percentage change in population
        else:
            continue

    print(
        "This function allows you to obtain a bar chart of countries with a negative population change"
    )
    n = input(
        "Enter the number of countries you would like data for (max: 8):")
    x = 1
    while True:
        if n.isdigit():
            if int(n) <= 8:
                #yaxis
                turtle.clearscreen()
                y = turtle.Turtle()
                y.penup()
                y.goto(-300, -300)
                y.pendown()
                y.left(90)
                y.forward(500)
                y.write("PERCENTAGE CHANGE",
                        font=("Times New Roman", 12, "normal"))

                #xaxis
                x = turtle.Turtle()
                x.penup()
                x.goto(-300, 0)
                x.pendown()
                x.goto(250, 0)
                x.write("COUNTRY", font=("Times New Roman", 12, "normal"))

                #drawing the graph
                p = turtle.Turtle()
                p.penup()
                for i in range(-300, 200, 50):  #labelling y axis
                    p.speed(9)
                    p.goto(-300, i)
                    p.forward(-20)
                    p.write(i / 1000, font=("Times New Roman", 10, "normal"))
                    p.forward(20)
                    p.pendown()
                    p.forward(550)
                    p.penup()

                p.goto(-300, 0)  #turtle goes to origin

                for i in range(
                        0, int(n)):  #turtle plots graph for top n countries

                    distance = 0.05 * 1000
                    p.penup()
                    p.forward(distance)
                    p.write(negative_percentages[i][0])
                    p.fillcolor("blue")
                    p.begin_fill()
                    p.pendown()
                    p.left(90)
                    p.forward(float((negative_percentages[i][1])) * 1000)
                    p.penup()
                    p.forward(-0.03 * 1000)
                    p.write(str(negative_percentages[i][1]) + "%",
                            font=("Times New Roman", 10, "normal"))
                    p.forward(0.03 * 1000)
                    p.pendown()
                    p.right(90)
                    p.forward(0.03 * 1000)
                    p.left(90)
                    p.forward(-float(negative_percentages[i][1]) * 1000)
                    p.left(90)
                    p.forward(0.03 * 1000)
                    p.right(180)
                    p.end_fill()
                    distance = distance + 0.05

                p.hideturtle()
                break
            else:
                print(
                    "The number that has been inputted is too big. Try again!"
                )  #In case number is out of range
                n = input(
                    "Enter the number of countries you would like data for (Max: 8):"
                )
                continue

        else:
            print("Invalid input")  #In case input is not a number
            n = input(
                "Enter the number of countries you would like data for (Max: 8):"
            )
            continue

    # designing back button
    my_turtle = turtle.Turtle()
    my_turtle.hideturtle()
    my_turtle.penup()
    my_turtle.goto(-300, 300)
    my_turtle.pendown()
    my_turtle.fillcolor("grey")
    my_turtle.begin_fill()
    for i in range(2):
        my_turtle.fd(50)
        my_turtle.rt(90)
        my_turtle.fd(15)
        my_turtle.rt(90)
    my_turtle.end_fill()
    my_turtle.penup()
    my_turtle.rt(90)
    my_turtle.fd(15)
    my_turtle.lt(90)
    my_turtle.fd(25)

    my_turtle.write("Back", align="center", font=("Ariel", 9, "bold"))

    turtle.onscreenclick(back, btn=1)
Exemple #52
0
def check_all_balls_collision():
    global running, score
    all_balls = []
    all_balls.append(my_ball)
    for ball in BALLS:
        all_balls.append(ball)
    for ball_a in all_balls:
        for ball_b in all_balls:
            if collide(ball_a, ball_b):
                r1 = ball_a.r
                r2 = ball_b.r

                x = random.randint(-screen_width + maximum_ball_radius,
                                   screen_width - maximum_ball_radius)
                y = random.randint(-screen_height + maximum_ball_radius,
                                   screen_height - maximum_ball_radius)
                dx = random.randint(minimum_ball_dx, maximum_ball_dx)
                while dx == 0:
                    dx = random.randint(minimum_ball_dx, maximum_ball_dx)

                dy = random.randint(minimum_ball_dy, maximum_ball_dy)
                while dy == 0:
                    dy = random.randint(minimum_ball_dy, maximum_ball_dy)
                r = random.randint(minimum_ball_radius, maximum_ball_radius)
                color = (random.random(), random.random(), random.random())
                if ball_a.r < ball_b.r:
                    if ball_b == my_ball:
                        score += 10
                        turtle.clear()
                        turtle.pencolor("pink")
                        turtle.write("Score: " + str(score),
                                     align="left",
                                     font=('ariel', 40, 'normal'))

                    if ball_a == my_ball:
                        turtle.clearscreen()
                        turtle.bgcolor("black")
                        print("eaten")
                        turtle.pencolor("red")
                        turtle.write("game over!",
                                     align="center",
                                     font=('arial', 100, 'normal'))
                        turtle.pencolor("purple")
                        turtle.penup()
                        turtle.goto(-188, 150)
                        turtle.pendown()
                        turtle.write("youre score:" + str(score),
                                     align="left",
                                     font=('ariel', 50, 'normal'))
                        turtle.hideturtle()
                        running = False
                    ball_a.new_ball(x, y, dx, dy, r, color)
                    ball_b.r = ball_b.r + 1
                    ball_b.shapesize(ball_b.r / 10)
                else:
                    if ball_a == my_ball:
                        score += 10
                        turtle.clear()
                        turtle.pencolor("pink")
                        turtle.write("Score: " + str(score),
                                     align="left",
                                     font=('ariel', 40, 'normal'))
                    if ball_b == my_ball:
                        turtle.clearscreen()
                        turtle.bgcolor("black")

                        print("eaten")

                        turtle.pencolor("red")
                        turtle.write("game over!",
                                     align="center",
                                     font=('arial', 100, 'normal'))
                        turtle.pencolor("purple")
                        turtle.penup()
                        turtle.goto(-188, 150)
                        turtle.pendown()
                        turtle.write("youre score:" + str(score),
                                     font=('ariel', 50, 'normal'))
                        turtle.hideturtle()
                        running = False
                    ball_b.new_ball(x, y, dx, dy, r, color)
                    ball_a.r = ball_a.r + 1
                    ball_a.shapesize(ball_a.r / 10)
    if ball_a.r > maximum_ball_radius or ball_b.r > maximum_ball_radius:
        #running = False
        print("w")
        ball_b.new_ball(x, y, dx, dy, r, color)
        ball_a.new_ball(x, y, dx, dy, r, color)
def menu():

    import turtle
    colors = ["sandy brown", "gold", "orange", "salmon"]
    n = 0

    turtle.clearscreen()
    for i in range(-300, 300, 160):
        box = turtle.Turtle()
        box.penup()
        box.speed(9)
        box.goto(i, 0)
        box.fillcolor(colors[n])
        box.begin_fill()
        box.pendown()
        box.forward(150)
        box.left(90)
        box.forward(150)
        box.left(90)
        box.forward(150)
        box.left(90)
        box.forward(150)
        box.end_fill()
        box.hideturtle()
        box.penup()
        n = n + 1

    #Title

    box.goto(-200, 250)
    box.write("CLICK ON THE BOX FOR THE INFORMATION YOU REQUIRE",
              20,
              font="Times")
    box.penup()

    #Designing first box to execute first function
    piecolor = ['black', 'red', 'blue', 'green']
    angles = [45, 50, 135, 130]
    box.goto(-225, 75)
    n = 0
    angle = 0
    for index in angles:
        box.setheading(angle)
        box.pencolor(piecolor[n])
        box.fillcolor(piecolor[n])
        box.begin_fill()
        box.pendown()
        box.forward(50)
        box.left(90)
        box.circle(50, index)
        box.goto(-225, 75)
        box.end_fill()
        n = n + 1
        angle = angle + index
        box.penup()

    box.goto(-300, -30)
    box.write("2019 Population".upper(), font="Times")
    box.goto(-300, -50)
    box.write("by continent".upper(), font="Times")

    #Designing second box to execute second function
    box.goto(-85, 25)
    box.pencolor("black")
    box.fillcolor("blue")
    box.begin_fill()
    box.pendown()
    box.forward(20)
    box.right(90)
    box.forward(20)
    box.right(90)
    box.forward(20)
    box.right(90)
    box.forward(20)
    box.end_fill()
    box.forward(-20)
    box.begin_fill()
    box.left(90)
    box.forward(-50)
    box.left(90)
    box.forward(20)
    box.right(90)
    box.forward(50)
    box.right(90)
    box.forward(20)
    box.end_fill()
    box.forward(-20)
    box.begin_fill()
    box.left(90)
    box.forward(-70)
    box.left(90)
    box.forward(20)
    box.right(90)
    box.forward(70)
    box.left(90)
    box.forward(-20)
    box.end_fill()
    box.penup()

    box.goto(-140, -30)
    box.write("PERCENTAGE CHANGE", font="Times")
    box.goto(-140, -50)
    box.write("IN POPULATION", font="Times")

    # Designing the third box
    box.pencolor("black")
    box.goto(20, -30)
    box.write("INCREASE IN POPULATION", font="Times")
    box.goto(20, -50)
    box.write("IN 2019", font="Times")
    box.penup()
    box.goto(120, 70)
    box.write("+", font="Times")
    p = turtle.Turtle()
    p.penup()
    p.goto(85, 20)
    p.left(90)
    p.pendown()
    p.forward(100)

    # Designing the fourth box
    box.goto(195, 120)
    box.write("MAX", font="Times")
    box.goto(300, 10)
    box.write("MIN", font="Times")
    box.goto(195, -30)
    box.write("MAXIMUM AND ", font="Times")
    box.goto(195, -50)
    box.write("MINIMUM ", font="Times")
    box.goto(195, -70)
    box.write("POPULATION DATA", font="Times")
    box.goto(195, -90)
    box.write("BY CONTINENT", font="Times")
 def end(tim):
     turtle.clearscreen()
     return tims
Exemple #55
0
def main():

    print ('Mondrian Composition')
    print ('')
    print ('This program creates a randomly recursively generated work of art in the\
 abstract style of Piet Mondrian. After each work is created you will have the option\
 to save the image, continue without saving, or exit.')
    print ('')
    begin=str(input('Press any key to begin: '))
    if begin:

      #order= int(input('Enter a level of recursion between 1 and 6: '))
      #while not(0<=order<=6):
          #order= int(input('Enter a level of recursion between 1 and 6: '))

      ttl=turtle.Turtle()
      turtle.title('Recursive Art')
      turtle.setup (800,800,0,0)
      # initialize and set up turtle
      ttl.speed (0)
      ttl.ht()
        
      #if order==0:
      #     turtle.done()
      #     return
        
      count=1
      import time
      
      while True:
        frame1=Point (-370, -350)
        frame2=Point (370, 325)
        frame=Quad(frame1, frame2)
        ttl.color ('black')
        ttl.pensize(10)
        draw_quad(ttl, frame)
        # draws frame in which Mondrian-esque work created
        order=random.randint(1,8)

        ttl.ht()
        ttl.penup()
        ttl.goto(0,350)
        ttl.write('Piece '+str(count)+'- Recursive order: '+str(order), False, align='center', font=('Arial', 18, 'bold'))

        draw_mondrian(ttl, order, frame1, frame2)
        count+=1
        
        answer=str(input('To save press Y, to continue press N, to exit press E: '))

        t=time.localtime()
        sec=str(t[5])
        minet=str(t[4])
        hour=str(t[3])
        day=str(t[2])
        mon=str(t[1])
        year=str(t[0])

        now=day+'/'+mon+'/'+year+' - '+hour+':'+minet+':'+sec
        if answer=='y' or answer=='Y':
            ts = ttl.getscreen().getcanvas()
            ts.postscript(file='Mondrian'+str(count)+'.eps')
            turtle.clearscreen()
            
        elif answer=='e' or answer=='E':       
            turtle.clearscreen()
            break
          
        else:
            turtle.clearscreen()
            continue
         
    ttl.penup()
    ttl.goto(0,0)
    ttl.write('Byeeeee <3', False, align='center', font=('Arial', 36, 'bold'))
    time.sleep(2)
    print ('Byeeeee <3')
    turtle.bye()
    return