import sys from PySide import QtGui app = QtGui.QApplication(sys.argv) icon = None QtGui.QMessageBox.about(icon, 'About', 'Hello.') QtGui.QMessageBox.question(icon, 'Question', 'Are you dead?', QtGui.QMessageBox.Yes | QtGui.QMessageBox.No)…
WIN32から離れられない貴方へ import sys from PySide import QtGui import ctypes class RECT(ctypes.Structure): _fields_ = [('left', ctypes.c_long), ('top', ctypes.c_long), ('right', ctypes.c_long), ('bottom', ctypes.c_long)] class TestWidget(…
QScrollAreaのresizeEventを継承してゴニョゴニョしたら割と簡単にできた import sys from PySide import QtCore, QtGui class AlwaysCenterAlign(QtGui.QScrollArea): def __init__(self): super().__init__() self.setAlignment(QtCore.Qt.AlignCenter) se…
RPIOをインストール モーターは デジタル・マイクロサーボ SG90 を使いました 下記サイトを参考に github.com こんな感じでインストール cd ~ git clone https://github.com/metachris/RPIO.git --branch v2 --single-branch cd RPIO sudo python3.4 setup.p…
メニューやツールバーを実装するときはQPushButtonやコールバックをガリガリ書くのではなくQActionを作る。QActionオブジェクトを作成しておけば、複数のメニューやツールバーをまたいでも、ひとつのQActionオブジェクトで挙動を定義できるし、QActionGroup…
自分の環境でちゃんと動く記事が無かったのでメモ。設定ファイルをあちこち編集するのは好きじゃないのでbash_profileで頑張った。Linuxめんどい。 環境 Raspberry Pi 3 Model B OS 2016-11-25-raspbian-jessie 1. モジュールインストール sudo apt-get inst…
Pythonのクロージャ内部で使われている変数は通常、実行時に値が評価されます。for文などと組み合わせてlambda式やローカル関数を使うときは、ちょっと気を付けないといけません。 例えば、0~4まで出力する関数を5つ用意したいとき # 関数作る functions = …
setWidget()を使え
# conding: utf-8 import sys from PySide.QtCore import * from PySide.QtGui import * # 右クリックでカレントの行を削除 def customMenu(widget, pos): if len(widget.selectedItems()) == 0: return action = QAction('Remove', widget) action.triggere…
いつものようにLayoutにButtonを追加するが 一定サイズ以下に縮まないしスクロールバーも出ない # conding: utf-8 import sys from PySide.QtCore import * from PySide.QtGui import * # entry point if __name__ == '__main__': myapp = QApplication(sys.…
文字列でフィルタリングできるリストビューがあれば 人生の複雑な状況も整理できるかもしれない # conding: utf-8 import sys from PySide.QtCore import * from PySide.QtGui import * class MyListWidget(QWidget): def __init__(self, data, parent=None)…
Comboboxのインデックスと処理が1:1だと便利 dictは追加した要素を不定の順序でイテレートするので 挿入順を保存したい場合は OrderedDict を使う # conding: utf-8 import sys from PySide.QtCore import * from PySide.QtGui import * import collections …
これでGUIピタゴラ装置作ったら仕事してる振りできる # conding: utf-8 import sys from PySide.QtCore import * from PySide.QtGui import * # ほげ~ class Hoge(QLabel): # 文字列を引数に渡すシグナルを定義 textChanged = Signal(str) # 初期化 def __i…
C#だったら属性を書くだけで済むけれど、C++はそういうわけにはいかないのでXMLで定義したフォーマットからコードを生成するスクリプトを書いた。 まずはデータフォーマットをXmlで表記する。 <Root> <Type name="Scene"> <Type name="Material"> <Type name="Property"> <value name="Name" type="String"/> <value name="Value" type="Float[]"/> </Type> </type></type></root>
コード書き専用マシンとして ¥30,000 で購入 不要なソフトウェアを削除 Kingsoft office iフィルタ McAfee Asus Live Update Asus Web Storage Asus Screen Saver Asus Splendid Video Enhancement Technology Asus ATK Package Windows10 にアップグレード…
ffmpegを使ってflvをコンバートしたら動画がカクカクになってしまったのでメモ 環境 Windows 8.1 + ffmpeg static build 現象 WMPではカクカクする GOM Playerで見ると普通の動画に見える Chromeではスローモーション再生 詳細情報を見るとフレームレートが1…
PILで作った画像を表示するときに便利 # conding: utf-8 import sys from PySide.QtCore import * from PySide.QtGui import * from PIL import Image, ImageQt # entry point if __name__ == '__main__': myapp = QApplication(sys.argv) # PILで画像読み込…
よく使うので自分用にメモ # conding: utf-8 import sys from PySide.QtCore import * from PySide.QtGui import * # entry point if __name__ == '__main__': myapp = QApplication(sys.argv) wnd = QMainWindow() # Dock Widgets wnd.__c = QTextEdit(wnd)…
DirectXでOBJファイルを表示する。 時間はかけたくないのでライブラリと3Dデータを使う。 こんな感じで簡単に読み込み処理が書ける。 #include "tiny_obj_loader.h" void CreateBuffer(ID3D11Buffer** io_buf, UINT in_byteWidth, UINT in_bindFlags, const …
Substance買うお金無い Python # conding: utf-8 import math from PIL import Image PI = 3.1415926536 # 正弦 class Sin: def __init__(self, in_x): self.x = in_x def __call__(self): return math.sin(self.x()) # 余弦 class Cos: def __init__(self, …
noiseモジュールをインストールしてPerlin Noiseを使ってみた。 Python # conding: utf-8 from PIL import Image import math import noise w = 128 h = 128 pn_freq_u = 10.0 pn_freq_v = 10.0 pn_octave = 3 wv_freq_x = 3.1416 * 2.0 * 10.0 wv_noise_sca…
Gray-Scottモデルの反応拡散式で模様を自動生成してみました。 C++ pythonでは処理速度が厳しいため反応拡散の計算はC++で書きました。 #define BOOST_PYTHON_STATIC_LIB #include <boost/python.hpp> #include <vector> #include <algorithm> boost::python::list Create(int in_w, int in_h, flo</algorithm></vector></boost/python.hpp>…
Node Graph のデータをテキストにしてみます。 テキストデータ 各行でノードを定義する。 左辺に名前、右辺に定義を書く。 右辺がリストとして解釈された場合、第一要素には型名、第二要素には接続元のリストを記述する。 リスト型で解釈されない場合は値を…
Substance Designer www.youtube.com 巷で流行りの設計。 Python 入出力が定義された各ノードを連結してグラフを作成し、グラフの値がほしいときにノードを辿って必要な解決をおこなう。 # conding: utf-8 # 値を保持するだけのノード class Value: def __in…
↑PySideで表示したWindowにDirectXの画面を表示しています。 C++ pyd用のプロジェクトを作成 DirectXのTutorialをコピペしてInitWindow、WinProcなどの不要な関数を削除 InitDeviceでウインドウハンドルを受け取るように変更 boost::pythonを使ってDirectXの…
まずは単純な関数やクラスを自作してpythonから読んでみます。 C++ いつものようにdllプロジェクトを作成してboostとpythonのlibをリンクします。 出力されるファイルの拡張子をdllからpydに変更しておきます。 #define BOOST_PYTHON_STATIC_LIB #include <boost/python.hpp> c</boost/python.hpp>…
うあああああああああああああんfどふぁ;なw;えf