2017年2月13日月曜日

開発環境

たのしいプログラミング Pythonではじめよう!(Jason R. Briggs (著)、磯蘭水・藤永奈保子・鈴木悠 (翻訳)、オーム社)の第1部(プログラムの作り方)、第12章(tkinter でもっとすごいグラフィックス)、12.14(自分でやってみよう)を取り組んでみる。

コード(Emacs)

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from tkinter import *

# 1. キャンバスが三角形だらけ
import random
tk = Tk()
w = 400
h = 400
canvas = Canvas(tk, width=w, height=h)
canvas.pack()

for _ in range(5):
    color = '#{:<02x}{:<02x}{:<02x}'.format(random.randrange(256),
                                            random.randrange(256),
                                            random.randrange(256))
    canvas.create_polygon(random.randrange(w), random.randrange(h),
                          random.randrange(w), random.randrange(h),
                          random.randrange(w), random.randrange(h),
                          fill=color)

# 2. 三角形を自由に動かそう
import time

n = canvas.create_polygon(10, 10, 10, 60, 50, 35)


def move(n, x, y):
    for _ in range(60):
        canvas.move(n, x, y)
        tk.update()
        time.sleep(0.05)

move(n, 5, 0)
move(n, 0, 5)
move(n, -5, 0)
move(n, 0, -5)

# 3. 写真も動かせる?
img = PhotoImage(file='k.gif')
n = canvas.create_image(0, 0, anchor=NW, image=img)
move(n, 5, 0)
move(n, 0, 5)
move(n, -5, 0)
move(n, 0, -5)

入出力結果(Terminal, IPython)

$ ./sample1.py
$

0 コメント:

コメントを投稿