やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

PySide2

SciKitImageのflood_fillで塗りつぶしバケツツールを実装する

なぜか凹凸のある形は塗りつぶせなかった。

Pixpeerで矩形・楕円ツールを追加した

アウトラインのみ。

Pixpeer 直線ツールを追加した

直線ツールを追加した 自由線のほかに直線ツールを追加した。

PySide2で透明な窓を作る

背景が透明のウインドウ。

Pixpeer メニューでキー押下中にピクセルを連続描画する

イベントでなくアクションで実装できた。Shift,Ctrl,Altなど同時押し可能なキーを使えば「押下中のみ」を再現できた。

Pixpeer キー押下中にピクセルを連続描画する

理想に近づいた。が、一瞬の溜めが邪魔。

Pixpeer キーで1ピクセルずつ描画する

キーで描画は一応できた。が、1ピクセルずつ……。

Pixpeer キーボードでピクセル位置にフォーカスする

フォーカスだけ。描画はまだできない。

QListViewの項目をDnDで移動する

[QStandardItemModel]ならできたが、[QAbstractListModel]ではできなかった。

Pixpeer アニメ再生・停止ショートカットキー実装

ついでにDuration設定ダイアログ表示ショートカットキーも実装した。

Pixpeer メニューをテキスト読込する

類似コードが一掃できてスッキリ。

Pixpeer リスト項目移動ショートカットキーを実装した

項目の選択でなく移動。

Pixpeer 選択フレーム遷移ショートカットキーを実装した

ちょっと使いやすくなった。

自作ドット絵エディタPixpeerのファイル読書

名前はpixpeerにした。

フレームを挿入する

リスト再描画バグも修正した。

Pixmapで透明色を描画する

painter.setCompositionMode(QtGui.QPainter.CompositionMode_Source)が必要だった。

フリーハンドでドット抜けなく綺麗に描く

マウスを素早く動かすとドット抜けしてしまうバグを修正した。

アニメ表示&間隔の設定

ドット絵アニメ表示する。

GIF,APNG,WebPアニメを出力する

ドット絵ならアニメーションでしょ。

ListViewのアイコンを更新する

マウスのクリックにて。

ListViewでアイコン一覧

ViewとModelに抽象化されている。

GIF,WebPを読書

読込に工夫が必要になってしまった。

PNGを読書

2色ドット絵。

DnDでファイル読込

pixels.txtファイルをドラッグ&ドロップするとドット絵を読み込む。

QActionでファイル保存する

2色ドット絵をファイル保存する。Ctrl+Sキーで。

マウスでドットを描く

マウスイベントに応じて。

QGraphicsItemで透明色を表す市松模様を描く

QGraphicsView, QGraphicsSene, QGraphicsItem, QScrollAreaの組合せ。

QGraphicsSceneとQScrollAreaでグリッドを描画する

前回のヤツにスクロールをつけた。

QGraphicsSceneでグリッドを描画する

線を格子状に描くことで。

PySide2でQGraphicsView()

クラスの抽象化がすばらしい。