最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python光學(xué)仿真wxpython之DC繪圖

 更新時間:2021年10月19日 14:25:45   作者:微小冷  
這篇文章主要為大家介紹了Python光學(xué)仿真wxpython之DC繪圖的基本概念及用法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助

一般來說,系統(tǒng)與繪圖程序之間的信息交換是由圖形設(shè)備接口(Graphics Device Interface,GDI)實現(xiàn)的,在wxpython中,通過device context(DC)對象來實現(xiàn)GDI的功能。

DC對象的創(chuàng)建非常簡單,只需引用wx.PaintDC即可,而后則可通過dc來設(shè)置畫筆dc.SetPen,有了畫筆,就可以進(jìn)行圖形繪制了。于是,我們再考慮到圖形的屬性,包括形狀、顏色與邊框等,更細(xì)致地說,是圖形形狀、填充顏色、邊框類型、邊框顏色。

我們可以通過一個矩形的例子來說明:

在這里插入圖片描述

上面的窗口由如下代碼實現(xiàn)。

import wx
class Example(wx.Frame):
    def __init__(self, parent,title):
        super(Example,self).__init__(parent,title=title,size=(350,280))
        self.Bind(wx.EVT_PAINT, self.OnShowColour)
        self.Center()   #居中
        self.Show()     #顯示
    def OnShowColour(self,evt):
        dc = wx.PaintDC(self)
        dc.SetPen(wx.Pen('#d4d4d4'))    #設(shè)置畫筆顏色
        dc.SetBrush(wx.Brush('#c56c00'))#設(shè)置填充顏色
        dc.DrawRectangle(10,15,90,60)   #繪制矩形
        dc.SetBrush(wx.Brush('#1ac500'))
        dc.DrawRectangle(130,15,90,60)
        dc.SetBrush(wx.Brush('#539e47'))
        dc.DrawRectangle(250,15,90,60)
        dc.SetBrush(wx.Brush('#004fc5'))
        dc.DrawRectangle(10,105,90,60)
def test():
    app = wx.App()		#創(chuàng)建App對象
    Example(None,'Rect')#創(chuàng)建繪圖窗口
    app.MainLoop()
if __name__ == "__main__":
    test()

首先,通過dc.SetPen()設(shè)置畫筆屬性,wx.Pen('#d4d4d4')的標(biāo)準(zhǔn)調(diào)用格式為wx.Pen(wx.Colour,width,style),width顧名思義即為畫筆寬度,'#d4d4d4'是Colour類的一種表示,為紅、綠、藍(lán)三組十六進(jìn)制值的組合,從而定義畫筆顏色。除了字符串的表示方法之外,還可以通過引用標(biāo)準(zhǔn)顏色庫或者調(diào)用wx.Colour()來對顏色進(jìn)行定義。

例如,wx.Colour(255,0,0),‘Red'和'#FF0000'都表示紅色。標(biāo)準(zhǔn)顏色庫如表所示:

AQUAMARINE BLACK BLUE BLUE VIOLET BROWN
CADET BLUE CORAL CORNFLOWER BLUE CYAN DARK GREY
DARK GREEN DARK OLIVE GREEN DARK ORCHID DARK SLATE BLUE DARK SLATE GREY
DARK TURQUOISE DIM GREY FIREBRICK FOREST GREEN GOLD
GOLDENROD GREY GREEN GREEN YELLOW INDIAN RED
KHAKI LIGHT BLUE LIGHT GREY LIGHT STEEL BLUE LIME GREEN
MAGENTA MAROON MEDIUM AQUAMARINE MEDIUM BLUE MEDIUM FOREST GREEN
MEDIUM GOLDENROD MEDIUM ORCHID MEDIUM SEA GREEN MEDIUM SLATE BLUE MEDIUM SPRING GREEN
MEDIUM TURQUOISE MEDIUM VIOLET RED MIDNIGHT BLUE NAVY ORANGE
ORANGE RED ORCHID PALE GREEN PINK PLUM
PURPLE RED SALMON SEA GREEN SIENNA
SKY BLUE SLATE BLUE SPRING GREEN STEEL BLUE TAN
THISTLE TURQUOISE VIOLET VIOLET RED WHEAT
WHITE YELLOW YELLOW GREEN

除了顏色之外,SetPen中還可以定義其他屬性,例如畫筆樣式:

wx.SOLID:實線

wx.DOT:點線

wx.LONG_DASH:長橫線

wx.SHORT_DASH:短橫線

wx.DOT_DASH:點橫線

wx.TRANSPARENT:無邊框

dc.SetBrush為設(shè)置筆刷,即圖形內(nèi)部填充,除了wx.Colour()之外,其style包括以下類型

wx.SOLID:實心填充

wx.BDIAGONAL_HATCH:右斜紋wx.

CROSSDIAG_HATCH:左斜紋wx.

FDIAGONAL_HATCH:斜交叉紋wx.

CROSS_HATCH:橫豎交叉紋

wx.HORIZONTAL_HATCH:橫紋

wx.VERTICAL_HATCH:縱紋

wx.TRANSPARENT:無填充

dc.DrawRectangle為矩形繪制命令,其中四個參數(shù)分別為左上角點的坐標(biāo)以及長寬值。除了矩形之外,wxpython提供了許多其他的圖形,如表所示

函數(shù) 圖形 參數(shù)備注
dc.DrawEllipse(x, y, width, height) 橢圓
dc.DrawRoundedRectangle(x, y, width, height, radius) 圓角矩形 radius為圓角半徑
dc.DrawArc(xStart, yStart, xEnd, yEnd, xc, yc) 圓弧 xc,yc為圓心
dc.DrawPolygon(points) 多邊形 輸入為點集
dc.DrawRectangle(x, y, width, height) 矩形
dc.DrawSpline(points) 曲線 輸入為點集
dc.DrawLines(points) 折線 輸入為點集
dc.DrawCircle(x, y, radius)

以上就是Python光學(xué)仿真wxpython之DC繪圖的詳細(xì)內(nèi)容,更多關(guān)于wxpython之DC繪圖的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python實現(xiàn)多進(jìn)程之間共享變量

    Python實現(xiàn)多進(jìn)程之間共享變量

    Python多線程和多進(jìn)程之間共享變量的方法有所不同,多線程可以直接使用global變量,而多進(jìn)程則需要使用multiprocessing庫中的Value、Array、Queue等或Manager模塊,Pool進(jìn)程池中進(jìn)程間共享變量時,必須使用Manager模塊,在共享list時,不能直接賦值
    2024-11-11
  • 詳解Python各大聊天系統(tǒng)的屏蔽臟話功能原理

    詳解Python各大聊天系統(tǒng)的屏蔽臟話功能原理

    這篇文章主要介紹了詳解Python各大聊天系統(tǒng)的屏蔽臟話功能原理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。
    2016-12-12
  • TensorFlow通過文件名/文件夾名獲取標(biāo)簽,并加入隊列的實現(xiàn)

    TensorFlow通過文件名/文件夾名獲取標(biāo)簽,并加入隊列的實現(xiàn)

    今天小編就為大家分享一篇TensorFlow通過文件名/文件夾名獲取標(biāo)簽,并加入隊列的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • jupyter 中文亂碼設(shè)置編碼格式 避免控制臺輸出的解決

    jupyter 中文亂碼設(shè)置編碼格式 避免控制臺輸出的解決

    這篇文章主要介紹了jupyter 中文亂碼設(shè)置編碼格式 避免控制臺輸出的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python中連通域分割Two-Pass算法的原理與實現(xiàn)詳解

    Python中連通域分割Two-Pass算法的原理與實現(xiàn)詳解

    兩遍掃描法(?Two-Pass?),正如其名,指的就是通過掃描兩遍圖像,將圖像中存在的所有連通域找出并標(biāo)記,本文將詳細(xì)介紹Two-Pass算法的原理與實現(xiàn),需要的可以參考下
    2023-12-12
  • Python創(chuàng)建普通菜單示例【基于win32ui模塊】

    Python創(chuàng)建普通菜單示例【基于win32ui模塊】

    這篇文章主要介紹了Python創(chuàng)建普通菜單,結(jié)合實例形式分析了Python基于win32ui模塊創(chuàng)建普通菜單及添加菜單項的相關(guān)操作技巧,并附帶說明了win32ui模塊的安裝命令,需要的朋友可以參考下
    2018-05-05
  • 基于Python實現(xiàn)一個PDF特殊字體提取工具

    基于Python實現(xiàn)一個PDF特殊字體提取工具

    在PDF文檔處理場景中,我們常常需要針對特定格式的文本內(nèi)容進(jìn)行提取分析,本文介紹的"PDF特殊字體提取器"是一款基于Python開發(fā)的桌面應(yīng)用程序感興趣的小伙伴跟著小編一起來看看吧
    2025-03-03
  • Pycharm制作搞怪彈窗的實現(xiàn)代碼

    Pycharm制作搞怪彈窗的實現(xiàn)代碼

    這篇文章主要介紹了Pycharm制作搞怪彈窗(聲音強制最大,屏幕亮度強制最亮,按鈕躲避,彈窗炸彈),本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • 一小時學(xué)會TensorFlow2之大幅提高模型準(zhǔn)確率

    一小時學(xué)會TensorFlow2之大幅提高模型準(zhǔn)確率

    這篇文章主要介紹了TensorFlow2之大幅提高模型準(zhǔn)確率,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • 基于Pytorch實現(xiàn)邏輯回歸

    基于Pytorch實現(xiàn)邏輯回歸

    這篇文章主要為大家詳細(xì)介紹了基于Pytorch實現(xiàn)邏輯回歸,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07

最新評論

南宁市| 彩票| 响水县| 蒙自县| 休宁县| 宜州市| 北宁市| 神池县| 彝良县| 吴川市| 莆田市| 介休市| 罗平县| 海门市| 贺兰县| 洱源县| 邹平县| 怀宁县| 芷江| 霍城县| 商城县| 两当县| 贡嘎县| 绍兴县| 花垣县| 林西县| 滕州市| 宜兰县| 望奎县| 嘉善县| 吉安县| 濉溪县| 涟水县| 安图县| 阿勒泰市| 洪江市| 乐都县| 宿迁市| 锡林郭勒盟| 宁国市| 集贤县|