オプション -prune を -path などと組み合わせて使えばいいらしい.例えば build ディレクトリを無視しつつ CMakeLists.txt を検索するには,
find . -path './build' -prune -or -name CMakeLists.txt -print
と書く. -path './build' -prune -or のように書くのがポイント.最後の -print がないと,build ディレクトリも出力されてしまう.
ということを今まで知らずに使ってた.User Interface - OpenCV v2.4.2 documentation#waitKey によると:
This function is the only method in HighGUI that can fetch and handle events, so it needs to be called periodically for normal event processing ...
ODE (Open Dynamics Engine) を Linux (ここでは Ubuntu) にインストールするときに,以下のようなエラーが出る場合の対処法.
x11.cpp:108: error: undefined reference to 'XOpenDisplay' x11.cpp:123: error: undefined reference to 'XCreateColormap' ...
論文に掲載するグラフを gnuplot で作るとき,SVG (Scalable Vector Format) で出力して Inkscape などで編集すると便利だ.だが,マーカ(×など)の線の太さを Inkscape で変更できなかったので,直接 SVG (XML) ファイルを編集してマーカの線の太さを変更する方法をメモ.
tcsh だったら !* を使うのだが, bash の場合は関数を定義しないとダメらしい.
例 (tcsh, bash の順):
alias pless '/usr/share/source-highlight/src-hilite-lesspipe.sh \!* | less -R'
function pless(){ /usr/share/source-highlight/src-hilite-lesspipe.sh $@ | less -R;}
bash を使わないので知らなかった.ちなみに pless はソースコードを端末上でハイライトできるようになる.
信じられない話だが,iPad (iPhone も) では,SSL で接続すると,動画が見られなくなる場合がある.例えば http://example.com/hoge.mp4 は見られるが,https://example.com/hoge.mp4 は見られない,など.
std::vector<T>::back() を使うと,末尾の要素の参照を取得できる.これは普通は,T&型だ.ところが,T=bool に限っては,「std::_Bit_reference」型なのだ(少なくとも g++ の場合).
通常,bool を関数の引数として渡すとき,わざわざ参照渡ししようとは思わないから(別に効率がよくなるわけではない),意識する必要はないのだが,テンプレート関数やクラスを作る場合には,知っておかないと理解不能なエラーに直面することがある.なので,忘備録も兼ねてメモ.
クラスのメンバ関数をテンプレート関数として作成し,さらにそれを特殊化する場合,特殊化は,特殊化宣言も含めてクラス外で行わなければならないらしい.
Microsoft の kinect SDK をダウンロードしてくると,インストールは簡単だし,Visual Studio でサンプルプログラムを簡単にコンパイルして実行できる.しかし,コードはそれなりに煩雑で(と言っても1000行程度だが),自分でアプリを作る場合にどこから始めればいいか,今一つピンとこない.
そこで,GUIなどを一切使わず,単にkinectでスケルトン (skeleton) を計測してファイルに保存するだけ,という最小のプログラムを書いてみた.言語は C++.基本的には,このページの内容をそのまま流用している.
テンプレートクラスや関数を friend にする方法のメモ.危険性についても言及.
過去記事 もう eps でトラブらない...LaTeX で PDF を張り付ける では,PDFをLaTeXに貼り付ける方法を紹介したが,学会によっては画像ファイルの形式として PDF を許可していない場合がある.また,dvips で変換した PS ファイルが表示できなかったりするトラブルも発生した.やはり,PS/EPS の需要は大きい,ということで,acroread を使って PDF を PS に変換する小技を紹介する.
なお,今回紹介する方法は,Inkscape で eps をきれいに出力する方法で解決できなかった,xdvi で表示時に画像がずれて見える問題も解決する...かもしれない.
KDE4 で,日本語のフォントの句読点がずれて表示される問題があった.中国語用のフォントが原因のようなので,そのパッケージを削除してみたらなおった.
Before:
After:
過去記事 Inkscape で eps をきれいに出力する方法 で紹介している方法などで eps 画像を作って LaTeX で読み込むと,何かしらのトラブルが起こりがちだ.dvipdfmx で PDF 化したときに画像が表示されないこともある.
Inclusion of large eps files with dvipdfm によると,dvipdfm(x) における eps の読み込みには問題があるから,画像を PDF 化して読み込むとよい,と書いてある.これからはそうしよう.
epsffit というコマンドを使えば,eps を回転できる.epsffit は少々使い勝手が悪いので,使いやすくするスクリプトを書いてみた.
HTML5 のvideo要素で使えたり使えなかったりするH.264だが,使えるにこしたことはないと思い,ffmpegでエンコーディングしようとしてみた.少しコツが必要なので,メモしておく.
Debian で日本語 TeX 環境を構築するには,以下のような手順を踏めばよいようだ.
いちいち Gnuplot を起動してグラフを描画するのが面倒なので,コマンドラインから使える Gnuplot のラッパスクリプトを書いた.変化するデータファイルをリアルタイムにプロットするスクリプトも組み込んだ.とても使いやすいので紹介する.
STL (standard template library) コンテナを include すると,それなりにコストが掛かる(参考).このコストは,場合によっては「前方宣言 (forward declaration)」によって大幅に軽減できる.STL コンテナの場合,前方宣言が少々ややこしいので,まとめておく.
Google Chrome がたまにすごく重くなる.ディスクアクセスが原因のようだ.そこでキャッシュ(消えても問題ないファイル群)~/.cache/google-chrome を RAMディスク /dev/shm 以下に移動したのだが,それでも改善されない.そこで,設定ファイル~/.config/google-chrome も RAMディスク 上に置くことにした.
# 追記@Sep.04,2010:スクリプト修正.