mieki256's diary



2012/01/23(月) [n年前の日記]

#1 [nitijyou] また地震

夜9:00ちょっと前頃に、前触れもなくいきなりドドドと来た。震源地は、福島県浜通りに近い福島県沖。中通りは震度4〜3。

#2 [ruby] Rubyでcairoなるものを使おうとしたが上手く行かず

ストップウォッチの時計盤?のような画像を描きたいわけだけど、今時手作業で描いていくなんて冗談じゃない、みたいな。最初のうちは DXRubyで描こうとしてみたけれど、線がギザギザして見れたものではなく。どうせならアンチエイリアスのかかった線を引いて画像を作成したい。

検索してみたら、rcairoなるものがあると知る。Ruby と cairo を繋ぐものらしい。

Windows7 x64 + Ruby 1.8.7 p330 [i386-mswin32] 上で、
gem install cairo
としてみたが、エラーが出た。
gem install cairo --platform x86-mswin32
をしてみてもダメ。

諦めた。別の何かを探すことにする。

…後になってどうにかなった。それについては後述する。

#3 [pc] gnuplotなるものを試してみたり

rcairo が導入できなかったので、別の何かを探す。

gnuplot なるツールがグラフを描くなら定番らしい。 _gnuplot download から辿って、gp444win32.zip をDL、解凍。binary/wgnuplot.exe を実行。

文字が出ない。ウインドウ内で右クリックしてフォントを選択。右クリックして Update 〜wgnuplot.ini を選択。

plot sin(x) を打ったらsinカーブが描かれた。面白いな…。

軸や目盛や凡例?ラベル?を消したい。
set border 0
unset xtics
unset ytics
unset key
で消せるらしい。上から順に、軸線をどれも描かない、x方向、y方向、凡例を描かない、ということだと思う。昔は set noxtics と書いたらしいけど、今は unset xtics と書くことが推奨されてる模様。

描画ウインドウの周りに隙間が出来るが、ソレを無くしたい。
set lmargin 0
set rmargin 0
set tmargin 0
set bmargin 0

円を描く時は。
set parametric
set size square
plot cos(t),sin(t),0.9*cos(t),0.9*sin(t),0.8*cos(t),0.8*sin(t)
直交座標モード?に設定、縦横比を正方形?に、3つの円を描画、らしい。

ここまでやってはみたけれど。これは何か違うだろうという気がしてきた。グラフを描くならたしかに使えそうだけど…。

#4 [python] Python + PyCairo を試してみたり

Gimp-Pythonを使えるようにする際に、PyCairoなるモジュールをインストールしていたことを思い出した。もしかしてソレを使えば、アンチエイリアスがかかった図形がプログラムで描けるかもしれない。

PyScripter をまだインストールしてないことに気付いた。 _pyscripter から、PyScripter-v2.4.3-Setup.exe をDLしてインストール。自分の環境では Python 2.6.6 が標準で動いているので、PyScripter for Python 2.6 を起動。

ソースコードをUTF-8で書きたいので、編集 → ファイルフォーマット → UTF-8 (No BOM)に。

PyCairo でどうにか描いてみた。一応動いてくれたっぽい。

それはそれとして、PyScripter が使いづらい。PyCairo についてはコード補完してくれないようだが…どうすればいいのだ。

#5 [ruby] rcairoがどうにかなった

Rubyがmswin32版だろうとmingw32版だろうと、mingw32版のrcairoをインストールすればよかったらしい。 _Japanese user list of the Ruby programming language () の中で、「拡張ライブラリは mingw32のバイナリでも問題はない」と書かれていた。

参考ページ。
_[ruby-list:47400] [ANN] rcairo 1.10.0
_脱カルマ研究 : gemが上手く動かない件

Windows7 x64 + Ruby 1.8.7 p330 [i386-mswin32] 上で、
gem install cairo --platform x86-mingw32
と打ってみた。今度はエラーが出ずに入ってくれた。
C:\Users\hoge>gem list

*** LOCAL GEMS ***

bluefeather (0.40)
cairo (1.10.2 x86-mingw32)
columnize (0.3.4)
linecache (0.43 mswin32)
pkg-config (1.1.2)
rbx-require-relative (0.0.5)
ruby-debug (0.10.3)
ruby-debug-base (0.10.3 mswin32)
ruby-debug-ide (0.4.6)
リストにも出てきた。

_Rubyist Magazine - cairo: 2 次元画像描画ライブラリ を参考にサンプルをコピペして動かそうとしたところ、エラーが出た。RubyGems でインストールしたので、スクリプトの最初のほうで、
require 'rubygems'
が必要だったらしい。

サンプルを眺めていたら Ruby-GNOME2 なるものも使っていた。ついでに入れてみた。
gem install gtk2 --platform x86-mingw32
サンプルを動かしてみたが、 Ruby 1.8.7 mswin32 上ではエラーダイアログが表示された。
ruby.exe - エントリポイントが見つかりません

プロシージャエントリポイント deflateSetHeader がダイナミックリンクライブラリ zlib1.dll から見つかりませんでした。
なるメッセージ。Ruby 1.9.2 mingw32 版で gem install したら動いたのだが…。1.8.7 mswin32 ではダメなのか?

_zlib.dllのダウンロード - RubyGemsのインストール - Railsインストール が気になった。 _zlib Home Site から zlib125-dll.zip をDLして、中に入っていた zlib1.dll を zlib.dll として ruby.exe の入っているフォルダにコピーしてみた。…元々 zlib1.dll が入っているようではある。元々あったソレは、zlib1.dll.old.org にリネームして残しておく。この作業をしたら、Ruby-GNOME2? gtk2? なるもののサンプルが動いた。何が何やら。

以上、1 日分です。

過去ログ表示

Prev - 2012/01 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project