tkinterのcanvasを使って図形をウインド上で動かす
2020/01/26追記:プログラミング初心者に向けたpythonの勉強法と手順を記事にしました。
■はじめに
前回、tkinterのcanvasで図形を描く方法を紹介しました。
今回は、前回描いた図形をGIF画像みたいに動かしてみたいと思います。
■コード
実行すると以下のように四角が動きます。
(今回は動画の載せ方が分からないので画像です)
また処理にかかった時間を表示させみました。
目標時間が10秒なので 結構ずれていますね。
■自分が使ってるお得情報の紹介
私はAmazon kindle unlimitedというサービスを1年以上利用しています。
これは月額980円で 和書12万冊以上の電子書籍を読めるサービスです。
ビジネス本、雑誌、漫画、技術本など様々な本を読むことができます。10冊まで端末にダウンロードできるのでネット環境がなくても(オフラインでも)見れます。
なおkindle unlimitedは最初の30日間無料のため、気軽に登録してみて、あまり読みたい本が無ければすぐに解約しても問題ありません。
それか30日内に気になる本を全て読破すれば実質タダです。
ぜひ気になった方はチェックしてみて下さい。
なおkindleにない本等を買う時はamazonギフト券(amazonで使えるポイント)を買い、ポイントで数冊まとめて買った方がお得です。
ギフト券(ポイント)は買ったら10年も有効で、ポイントが付きます。さらに本をまとめ買い(2冊以上同時に)買うと、ポイントがもらえます。
(https://www.amazon.co.jp/b?ie=UTF8&node=5431437051)
学生さんであればkindle unlimitedよりも年2450円(月210円程度)で映画見放題、音楽聞き放題、本読み放題の「prime student」がおすすめです。
以下に私がkindle unlimitedで読んだ本を載せておきます。
■雑誌系
Tarzan(ターザン) 2020年1月23日号 No.779 [内臓脂肪 皮下脂肪すっきり落とす!] [雑誌]
- 作者:
- 出版社/メーカー: マガジンハウス
- 発売日: 2020/01/04
- メディア: Kindle版
■説明
キャンバスおよび図形の作成は前回の記事で紹介したので省略します。
図形を動かすには次のようにcoords()を使います。
これによりオブジェクトであるsquareがカッコ内の座標「左端の角の座標(x,y)、右下の角の座標(x+dx,y+dy)」に移動します。
ここで縦方向に動かしたいなら、
のようにy座標を少しづつ動かしていけば良いことになります。
横方向に動かしたいならx+=Vyになります。
また画面外に行かないように、次のように端に到達したら動く向きを反対にしています。
また人間の目で追えるように0.02秒ごとに処理が行われるようにしています。
最後に目標時間に到達したらループを抜けるようにしています。
この判定は好きに変えることができます、例えば下端に四角が接したら終了させたい場合は、if y>=Y_currentと描けばよいです
■おわりに
いかがだったでしょうか。次回はこの機能を使って簡単な物理シミュレーションをしてみたいと思います。
次記事