線形グラデ対応
PyQtでお手軽GUI開発♪―――は可能だったか? 第4回 画面描画編
http://www7a.biglobe.ne.jp/~thor/novel/column/07.html
def paintEvent(self, event):
canvas = Qg.QPainter(self) #画面のPainterを取得する
#線形グラデーション
grad = Qg.QLinearGradient(25,0,75,100) #座標(25,0)~(75,100)間で定義
grad.setColorAt(0.1, Qg.QColor(Qt.red)) #色の位置の設定
grad.setColorAt(0.5, Qg.QColor(Qt.green))
grad.setColorAt(1.0, Qg.QColor(Qt.blue))
canvas.setBrush(Qg.QBrush(grad)) #画面に描画する
canvas.drawRect(0,0,100,100)
#放射状グラデーション
grad = Qg.QRadialGradient(150,50,50,160,60) #(150,50)を中心、半径50、(160,60)が開始位置
grad.setColorAt(0.0, Qg.QColor(Qt.white)) #色を指定
grad.setColorAt(1.0, Qg.QColor(Qt.blue))
canvas.setBrush(Qg.QBrush(grad)) #画面への描画
canvas.drawRect(100,0,100,100)
#円錐形グラデーション
grad = Qg.QConicalGradient(250, 50, 45) #座標(250,50)を中心に45度角から開始
grad.setColorAt(0.0, Qg.QColor(Qt.red)) #色の指定
grad.setColorAt(0.33, Qg.QColor(Qt.green))
grad.setColorAt(0.66, Qg.QColor(Qt.blue))
grad.setColorAt(1.0, Qg.QColor(Qt.red))
canvas.setBrush(Qg.QBrush(grad)) #画面への描画
canvas.drawRect(200,0,100,100)
エフェクトはここがわかりやすいね
Qtへの変換も
https://qiita.com/pashango2/items/145d858eff3c505c100a
pil はQt変換を標準でサポートしてるのか??
https://dungeonneko.hatenablog.com/entry/2015/07/19/142034
Qpixmapに直接読み込むのとどっちが速いか試してみよう
画像貼り付け
Python, Pillowで画像に別の画像を貼り付けるpaste
https://note.nkmk.me/python-pillow-paste/
位置指定して小さい画像を貼り付けできる
PIL.Image と PyQt4.QtGui.QImageの相互変換
http://doloopwhile.hatenablog.com/entry/20100305/1267782841
グラデ画像は逆変換になるな
UsefulModules
https://wiki.python.org/moin/UsefulModules#Audio_.2F_Music
https://pypi.org/project/musicplayer/
https://pypi.org/project/musicplayer/
OpenCVでガンマ補正を行ってみる
https://newtechnologylifestyle.net/opnecvでガンマ補正を行ってみる/
OpenCVを使った画像処理
http://labs.eecs.tottori-
proc.html
skimage
https://qiita.com/taka_baya/items/453e429b466ffaa702c9
→ 戻る