キャンバスで円弧を表示しよう
前回はCanvasウィジェットを使って楕円形を表示しました。
今回はキャンバス上に円弧を表示してみましょう。
Canvasウィジェットで円弧を表示する
Canvasウィジェットで円弧を表示するメソッドは、以下の通りです。
オブジェクト名.create_arc(座標, オプション)
円弧の表示は、ややくせがあります。
楕円の中から円弧の表示を開始する角度(start)と、その角度から表示する円弧の角度(extent)を指定します。
イメージとしては、下図のようになります。
create_arc()のオプション
create_arc()の主なオプションは、以下の通りです。
オプション名 | 内容 |
start | 開始角度。デフォルトは0 |
extent | 開始角度を基準にした角度。デフォルトは90 |
width | 線の太さ。整数を指定 |
outline | 線の色 *1 |
fill | 塗りつぶしの色 *1 |
dash | 破線を表示。整数のタプルを指定。例:(1,1) |
*1 色の指定にはred、green、blueなどのカラー名や先頭に#(シャープ)を付けた16進数が使えます。
Canvasウィジェットに円弧を表示するプログラム
Canvasウィジェットに円弧を表示するプログラムは、以下のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
### インポート import tkinter ### キャンバス作成 canvas = tkinter.Canvas(master=None, width=640, height=400) ### キャンバス表示 canvas.pack() ### 円弧描画 canvas.create_arc( 20, 20, 300, 180) canvas.create_arc(340, 20, 620, 180, start=225, extent=90, width=5) canvas.create_arc( 20, 220, 300, 380, start=315, extent=270, dash=(1,1)) canvas.create_arc(340, 220, 620, 380, start=90, extent=180, outline="blue", fill="red", width=10) ### イベントループ canvas.mainloop() |
プログラムを実行すると、以下のような画面が表示されます。