python thinker canvas create_arc 使用详解
版權(quán)聲明:本文為博主原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/A757291228/article/details/106739556
———————————————— 版權(quán)聲明:本文為CSDN博主「1_bit」的原創(chuàng)文章,遵循CC 4.0
BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/A757291228/article/details/106739556
注:以下文章皆基于以下代碼所創(chuàng)建的對tk對象進(jìn)行編程
python 版本為3.x
create_arc 的基本使用
Python Thinker canvas 使用 create_arc 創(chuàng)建一個(gè)扇形。
create_arc 的函數(shù)的一般使用方法如下:
類型說明:
- coord :元組 int
- start :整形 int
- extent:整形 int
- fill :字符串 str
coord元組配置矩形所形成的橢圓的左上角坐標(biāo)及右下角坐標(biāo):
coord=x1,y1,x2,y2
首先嘗試 create_arc 的簡單使用方法:
完整代碼如下:
from tkinter import *root = Tk() root.title('作者CSDN :1bit 帳號:A757291228')canvas = Canvas(root,background='#D4D4D4',width=830,height=830)#初始化 canvas canvas.pack(fill=BOTH,expand=YES)coord = 200, 200, 400, 400 #坐標(biāo)起始點(diǎn) canvas.create_rectangle(coord)#這一行只是為了方便查看該坐標(biāo)繪制的矩形,進(jìn)行對照,不必要了解 arc = canvas.create_arc(coord)以上代碼繪制了一個(gè)矩形與扇形進(jìn)行對照,結(jié)果如下:
以上結(jié)果得到了一個(gè)扇形,該扇形與矩形進(jìn)行對比,得出扇形所在的區(qū)域?yàn)榫匦蔚挠疑喜糠?#xff0c;扇形所在的區(qū)域?yàn)榫匦蔚挠疑辖菂^(qū)域,想要扇形繪制出一個(gè)半圓,占整個(gè)矩形的上半部分所需要另外兩個(gè)參數(shù):extent 與 start(start并不是一定需要) 。
參數(shù)類型說明:
- start:從x軸正方向(起始方向)開始,單位為度進(jìn)行繪制,start為起始繪制角度的設(shè)置
- extent:以start參數(shù)作為參考,以start參數(shù)給定的角度開始,逆時(shí)針延伸角度,這個(gè)角度為extent設(shè)置的值
嘗試使用start參數(shù):
from tkinter import *root = Tk() root.title('作者CSDN :1bit 帳號:A757291228')canvas = Canvas(root,background='#D4D4D4',width=830,height=830)#初始化 canvas canvas.pack(fill=BOTH,expand=YES)coord = 200, 200, 400, 400 canvas.create_rectangle(coord) arc = canvas.create_arc(coord,start=10)以上代碼在 create_arc 添加了 start參數(shù),設(shè)置start參數(shù)為10,繪制時(shí),將以x正方向作為參照,形成的角度為10度作為起始繪制角度,所形成的扇形如下:
現(xiàn)在使用 extent 參數(shù)進(jìn)行延伸繪制,并把 start 參數(shù)設(shè)置為 0:
結(jié)果如下,繪制成一個(gè)半圓扇形:
以上代碼,start 參數(shù)省略也可以完成半圓繪制,start默認(rèn)為0。使用start可更靈活的控制起始繪制角度。
使用fill 可以使繪制區(qū)域填充設(shè)置的顏色代碼,代碼如下:
結(jié)果如下:
create_arc 的擴(kuò)展使用
create_arc 可以接收更多的參數(shù)進(jìn)行擴(kuò)展繪制,參數(shù)為 (并不是所有參數(shù),之后有時(shí)間將陸續(xù)補(bǔ)上):style、dash、outline、width等。
style 參數(shù)
style 參數(shù)設(shè)置值有 ARC、CHORD 以及 PIESLICE;默認(rèn)情況下 style的值為 PIESLICE,以下設(shè)置 style 的值為 ARC 查看效果:
arc = canvas.create_arc(coord,extent=180,style=ARC)結(jié)果如下:
CHORD
結(jié)果如下:
PIESLICE
結(jié)果如下:
dash 參數(shù)
dash 參數(shù)類型為元組,用于設(shè)定虛線線段。例如 dash=(3,4) 中,值3為指定繪制多少個(gè)像素的線段,值4為下一條線段繪制需要間隔多少個(gè)像素。
查看代碼:
以上代碼繪制一個(gè)扇形,是虛線繪制,其中dash的值設(shè)置為10與2,其中10為設(shè)置每條線段長度為10,下次繪制間隔2個(gè)像素。結(jié)果如下:
dash設(shè)置的值并不只能設(shè)置兩個(gè),可以設(shè)置多個(gè),例如:dash=(15,2,13,2,10,2,7,2);該代碼為繪制15像素線段后間隔2像素再次繪制,下一次繪制13像素,再間隔2次以此類推。結(jié)果為:
outline 參數(shù)
outline 用于設(shè)置繪制的線段顏色,默認(rèn)為黑色,參數(shù)類型為字符串,例如:outline='red',代碼如下:
arc = canvas.create_arc(coord,outline='red',style=PIESLICE)結(jié)果如下:
width 參數(shù)
設(shè)置繪制成的圖形邊框的粗細(xì),默認(rèn)單位為像素。
代碼示例:
設(shè)置邊框粗細(xì)為10,結(jié)果如下:
版權(quán)聲明:本文為博主原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/A757291228/article/details/106739556
———————————————— 版權(quán)聲明:本文為CSDN博主「1_bit」的原創(chuàng)文章,遵循CC 4.0
BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/A757291228/article/details/106739556
總結(jié)
以上是生活随笔為你收集整理的python thinker canvas create_arc 使用详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python turtle库实现基本剖析
- 下一篇: Python3 实现单例设计模式