yu00’s blog

プログラミングに関する備忘録です

UnityボーンポーズをBlenderで読み込む(Unity,Blender座標変換まとめ)

はじめに Unityでつけたボーンポーズを出力して、 Blenderのボーンポーズに適用するスクリプトを作成しました。 Blenderのボーンウェイトの調整の時、 Unityの物理演算で設定されたポーズにしたかったのが目的です。 手順 以下方針で行います。 Unityのボー…

座標変換まとめ

はじめに CGや画像処理で必要になる座標変換について説明します。 座標変換は同次変換行列という形式で表すことで、 すべて行列の掛け算で行うことができます。 表記 座標Aから見た点pの座標がである時、 次のように表記します。 移動 座標Aから見た座標Bへ…

MarkdownでTex数式をSVGに変換する(Pandoc+MathJax+Python Selenium)

はじめに Markdown中のTex数式は、Webサイトによってサポートされていなかったり、 方言があったりします。 また、JavaScriptのTex数式変換ツールであるMathJaxがありますが、 レンダリングが遅いという問題があります。 そこで、Tex数式をMathJaxを使い事前…

Pandoc+Python環境構築まとめ

はじめに PandocはMarkdownからHTML変換など、マークアップ言語を 別の形式に変換するツールです。 また、Pandoc filterという仕組みを使用することで、 変換書式を自作することができます。 ここでは、PandocとPython Pandoc filterを 使用するための環境構…

スタイルシート詳細

PyQt5入門 PythonでGUI作成 - yu00’s blog リファレンス:Qt 5.5 > Qt Widgets > The Style Sheet Syntax - スタイルシート詳細 リファレンス2:Qt 5.5 > Qt Widgets > Qt Style Sheets Reference - プロパティ一覧,サブコントロール一覧など スタイルシー…

スタイルシートによるスタイル設定

PyQt5入門 PythonでGUI作成 - yu00’s blog スタイルシート PyQt5でフォントや色を設定するにはスタイルシート を使うと簡単です.スタイルシートはHTML CSSのような形式でスタイルを 設定する機能です.スタイルシートを使うことで, アプリケーション全体に…

QGridLayoutクラス

PyQt5入門 PythonでGUI作成 - yu00’s blog リファレンス:Qt 5.5 > Qt Widgets > C++ Classes > QGridLayout QGridLayoutクラスはマス目に並べるクラスです. マス目に並べる addWidget(widget, row, column) #! /usr/bin/python3 # -*- coding: utf-8 -*- i…

QHBoxLayout・QVBoxLayoutクラス

PyQt5入門 PythonでGUI作成 - yu00’s blog リファレンス:Qt 5.5 > Qt Widgets > C++ Classes > QBoxLayout QHBoxLayout・QVBoxLayoutはウィジェットを 横・縦に並べるクラスです.ここではQHBoxLayoutを例に説明します. 横に並べる addWidget(widget) サン…

QLabelクラス

PyQt5入門 PythonでGUI作成 - yu00’s blog リファレンス:Qt 5.5 > Qt Widgets > C++ Classes > QLabel QLabelクラスは文字または画像を表示するクラスです. QLabelの作成 サンプルコード #! /usr/bin/python3 # -*- coding: utf-8 -*- import sys from PyQ…

QPushButtonクラス

PyQt5入門 PythonでGUI作成 - yu00’s blog リファレンス:Qt 5.5 > Qt Widgets > C++ Classes > QPushButton QPushButtonは普通のボタンです. ボタンの作成 PyQt5.QtWidgets.QPushButton(text, parent=0) 文字がtextのボタンを作成します. サンプルコード …

シグナルとスロット詳細

PyQt5入門 PythonでGUI作成 - yu00’s blog ここではシグナルとスロットについて, 詳しい使い方を説明します. シグナルとスロットを接続する シグナルとスロットを接続(設定)するにはconnect()を使います. connect(slot) シグナルにスロットslotを接続しま…

ウィジェットの自動伸縮の設定

PyQt5入門 PythonでGUI作成 - yu00’s blog レイアウトでウィジェットを配置するとき, ウィジェットは自動的に伸縮します. ここでは自動伸縮の設定について説明します. 自動伸縮するかどうか 自動伸縮をするしないを設定するには, QWidget.setSizePolicy(…

QWidgetクラス

PyQt5入門 PythonでGUI作成 - yu00’s blog リファレンス:Qt 5.5 > Qt Widgets > C++ Classes > QWidget PyQt5ではウェジェットでウィンドウを作成し, その中にボタンやラベルなどの部品を配置していきます. ここではウェジェットの基本的な使い方を説明し…

ドキュメントの読み方

PyQt5入門 PythonでGUI作成 - yu00’s blogPyQt5の多くのクラスや関数はQtをラップしただけなので, PyQt5を使ったプログラムを書く場合Qt本家のドキュメントを 参照することになると思います. ここではQt本家のドキュメントの読み方を説明します. ただ,リ…

イベント処理

PyQt5入門 PythonでGUI作成 - yu00’s blog イベント処理の方法 PyQt5でキーボードやマウスなどのイベントを扱う処理の説明です. ウィジェットでキーボードやマウスの入力などのイベント起こると,それぞれに対応する関数が呼ばれます. 例えばキーボード入…

シグナルとスロット

PyQt5入門 PythonでGUI作成 - yu00’s blog シグナルとスロットとは シグナルとスロットの例として, ボタンを押したときに何か処理をするプログラムを考えます. そのときの流れは次のようになります. ボタンを押す ボタンが押されたというイベントが発行さ…

レイアウトを使った配置

PyQt5入門 PythonでGUI作成 - yu00’s blog レイアウトとは レイアウトはウィジェットを簡単に配置する仕組みです. ウィジェットを横に並べたり,マス目に並べたりできます. ウィジェットの位置は自動的に計算されるので, 自分でピクセルの位置を設定する…

ウィジェット

PyQt5入門 PythonでGUI作成 - yu00’s blog ウィジェットとは ウィンドウ,ボタン,ラベルなどのユーザーインターフェースを構成する部品を ウィジェットと呼びます. PyQt5ではQWidgetクラスがウィジェットを表しています. ウィジェットの機能・特徴 ウィジ…

PyQt5でのプログラミングの基本

PyQt5入門 PythonでGUI作成 - yu00’s blog PyQt5で必要最小限のプログラミングは次のようになります. サンプルコード #! /usr/bin/python3 # -*- coding: utf-8 -*- import sys from PyQt5 import QtWidgets if __name__ == '__main__': app = QtWidgets.QA…

PyQt5入門 PythonでGUI作成

PythonでGUIを作成できるPyQt5について,使い方を説明していきます. 注意 Pythonの基本を知っていることを前提としています Pythonは3.x系です 情報,プログラムの正確さには細心の注意を払っていますが,それらの正確性は保証できません.間違いがありまし…

VisualStudio2013でEmacsキーバインド

VisualStudio2013をEmacsのキーバインドにするさいのメモです. emacs.vsixのインストール まず次のリンク先からemacs.vsixをダウンロードします. owainlewis/emacs-visual-studio-2013 · GitHubそして,ダウンロードしたemacs.vsixを実行します. インスト…

よくわかるクイックソート解説

ソートのアルゴリズムであるクイックソートについて できるだけ分かりやすくなるよう心がけて解説していきます. クイックソートの考え方 クイックソートは次のような処理を行っています 1. バラバラなデータからランダムな数(ピボット)を選択する. 2. 選択…

LaTeXで色付きソースコードを貼り付け

LaTeXでC言語などのソースコードを色付きで貼り付けるには, jlistingパッケージを使うといいです. インストール方法については省略します. 使い方の例 texファイル % (省略) \usepackage{color} \usepackage{listings,jlisting} \lstset{ language={C}, b…