2008/06/01(日) [n年前の日記]
#1 [anime] 彩雲国物語2の主人公演説の回
効果音に感心。
これは誰の功績なのだろう。演出? 音響監督? 何にせよ、上手いなと。この作品、脚本までは工夫が見えても、コンテ以降、作画やレイアウトはアレだなと思ってたけど…実はこういうところで、今までもちゃんと工夫をしてたんだろうか。こういったところにも演出・表現技法があるのだなと、なんだか目から鱗が。てな気分になったり。 *1
- 主人公が議場(?)に入ってくるときに、爆発音のようなドアの開閉音を。
- 議場が騒いでいるのを静めるべく、王様が剣を床に打ちつける際に、激しい金属音を。
- 主人公の叔父が窓から逃げる時に、バイクのエンジン音?を。
これは誰の功績なのだろう。演出? 音響監督? 何にせよ、上手いなと。この作品、脚本までは工夫が見えても、コンテ以降、作画やレイアウトはアレだなと思ってたけど…実はこういうところで、今までもちゃんと工夫をしてたんだろうか。こういったところにも演出・表現技法があるのだなと、なんだか目から鱗が。てな気分になったり。 *1
*1: や。考えてみれば、ゲームを作る時などはSEを活用しまくりだったからアレなんだけど。昔のゲームなんてのは視覚的な表現力に乏しいので、画面ではキャラの表示位置を数ドットずらして表示してるだけなのに、そこに派手なSEつけてアクションが起きてるように思わせる、とかやってたわけで。ましてや、アニメのソレは、ゲームの先輩格みたいなものだから…。作画面が期待できない場合は、音を上手に使って補完してみせる、てのが、アニメにおける演出の腕の見せ所だったりもするのかしらん。
[ ツッコむ ]
#2 [iappli][cg_tools] 地形モデルにUVテクスチャを指定したり
一つのオブジェクトの中に複数のマテリアルが入ってるから作業が面倒だな…。アタリ属性が異なるポリゴンを別のオブジェクトにしたほうがいいのだろうか。いや、地形は地形として扱ったほうがいいか…。
木のテクスチャをポリゴンに貼って地形モデルの上に配置してみたり。配置したそのままの状態で表示したほうがいいものと、ビルボードとして表示したほうがいいものの2種類があったほうがよさそう。となると、.bac を読んで、ビルボードにするポリゴンは除外するスクリプトを記述しないといけないであろう予感。いや、どのみちアタリ判定用のポリゴン群を取り出すスクリプトを書かなきゃいかんだろうけど。何の情報を使って、分類をしようか…。マテリアル名かな…。
背景がないと雰囲気がよくわからないので、背景画像も作成。その手の風景の写真を参考に、GIMPのスタンプツールでペタペタと。以前実験したときは、背景画像は半球状のモデルデータに張り付ける画像として作成したけど。その方法だとテクスチャが拡大され、かなり汚く見えることが判ったので、今回はフツーの2Dの背景画像でやってみようと。半球状のモデルデータを背景にするほうが、視点の向きが変わった際に空間を感じられるような気もするのだけど、パッと見で汚いのではあかんだろう、という気もするし。…ただ、今回も、視点を下向き・真下にしたときの見え方をどうするかで悩んだり。上空から森を見たような見栄えにしたほうがいいのか、それとも単色ベタのほうがいいのだろうか。
木のテクスチャをポリゴンに貼って地形モデルの上に配置してみたり。配置したそのままの状態で表示したほうがいいものと、ビルボードとして表示したほうがいいものの2種類があったほうがよさそう。となると、.bac を読んで、ビルボードにするポリゴンは除外するスクリプトを記述しないといけないであろう予感。いや、どのみちアタリ判定用のポリゴン群を取り出すスクリプトを書かなきゃいかんだろうけど。何の情報を使って、分類をしようか…。マテリアル名かな…。
背景がないと雰囲気がよくわからないので、背景画像も作成。その手の風景の写真を参考に、GIMPのスタンプツールでペタペタと。以前実験したときは、背景画像は半球状のモデルデータに張り付ける画像として作成したけど。その方法だとテクスチャが拡大され、かなり汚く見えることが判ったので、今回はフツーの2Dの背景画像でやってみようと。半球状のモデルデータを背景にするほうが、視点の向きが変わった際に空間を感じられるような気もするのだけど、パッと見で汚いのではあかんだろう、という気もするし。…ただ、今回も、視点を下向き・真下にしたときの見え方をどうするかで悩んだり。上空から森を見たような見栄えにしたほうがいいのか、それとも単色ベタのほうがいいのだろうか。
◎ 水面の見せ方に関して挫折。 :
背景画像の作成中に、水面の見せ方について、自分が勘違い・見落とし・甘い考えをしていたことに気づく。
背景作成時に、地平線より下を、地平線より上の画像を上下反転した状態で描いておけば、水面ポリゴンを半透明にすることで、水面ポリゴンの向こう側の背景が透けて見える = 水面に空が映り込んでるように見えるだろう…と考えていたけど。それをやっちゃうと、地形モデルのポリゴンが無い部分・描画しない部分も、上下が反対になった背景が見えちゃうんだよなと。残念。この方法は使えない。
いや待てよ。その方法は本当に実現できないのだろうか。…水面ポリゴンが実際に画面に描画されるかどうかを一旦判別して、もし描画されるようなら、水面ポリゴンが描かれる領域をまず作成して。その領域で、上下反転した背景画像をマスキング・切り抜いて作成。本来の背景画像の手前に上書き描画してから、地形モデルデータを描画。てな感じではどうか。更に、水面に空が映り込む度合いは、視線の向きが地面と平行か、あるいは垂直かで変わってくるので…。視線の向きが地面に垂直なら、真上から見た時の水面の見え方を不透明率100%で描画して、視線の向きが地面と平行なら、水面ポリゴンの不透明率を0%にして描画して。…いやいや、iアプリの3D関連は、モデルデータ中の不透明率云々をダイナミックに変化させられただろうか。無理っぽい予感。となると、切り抜いて作った背景画像のほうの不透明率を変化させて描画すればどうにかなるのかな。
などともやもやしてみたけど。1フレーム中に、背景画像を上下反転、かつ、水面の形で切り抜いて云々なんて、iアプリじゃ処理速度的に無理だろうな。1ドットずつ自前でチビチビ描いていくことになる=処理が激重になるだろうと予想。
地平線より下を、透視変換した画像で全面塗りつぶせれば、背景画像を事前に上下反転して、といったこともできるのだろうか。SFCのF-ZEROあたりに見られる、BG面の2軸回転? みたいな。あれで地平線以下を塗りつぶす。…ってそうなると背景画像の地平線より下の部分を上下反転していても意味無いじゃん。水面のための上下反転背景も2軸回転BG面で塗りつぶされるじゃん。ダメじゃん。
背景作成時に、地平線より下を、地平線より上の画像を上下反転した状態で描いておけば、水面ポリゴンを半透明にすることで、水面ポリゴンの向こう側の背景が透けて見える = 水面に空が映り込んでるように見えるだろう…と考えていたけど。それをやっちゃうと、地形モデルのポリゴンが無い部分・描画しない部分も、上下が反対になった背景が見えちゃうんだよなと。残念。この方法は使えない。
いや待てよ。その方法は本当に実現できないのだろうか。…水面ポリゴンが実際に画面に描画されるかどうかを一旦判別して、もし描画されるようなら、水面ポリゴンが描かれる領域をまず作成して。その領域で、上下反転した背景画像をマスキング・切り抜いて作成。本来の背景画像の手前に上書き描画してから、地形モデルデータを描画。てな感じではどうか。更に、水面に空が映り込む度合いは、視線の向きが地面と平行か、あるいは垂直かで変わってくるので…。視線の向きが地面に垂直なら、真上から見た時の水面の見え方を不透明率100%で描画して、視線の向きが地面と平行なら、水面ポリゴンの不透明率を0%にして描画して。…いやいや、iアプリの3D関連は、モデルデータ中の不透明率云々をダイナミックに変化させられただろうか。無理っぽい予感。となると、切り抜いて作った背景画像のほうの不透明率を変化させて描画すればどうにかなるのかな。
などともやもやしてみたけど。1フレーム中に、背景画像を上下反転、かつ、水面の形で切り抜いて云々なんて、iアプリじゃ処理速度的に無理だろうな。1ドットずつ自前でチビチビ描いていくことになる=処理が激重になるだろうと予想。
地平線より下を、透視変換した画像で全面塗りつぶせれば、背景画像を事前に上下反転して、といったこともできるのだろうか。SFCのF-ZEROあたりに見られる、BG面の2軸回転? みたいな。あれで地平線以下を塗りつぶす。…ってそうなると背景画像の地平線より下の部分を上下反転していても意味無いじゃん。水面のための上下反転背景も2軸回転BG面で塗りつぶされるじゃん。ダメじゃん。
[ ツッコむ ]
2008/06/02(月) [n年前の日記]
#1 [iappli][cg_tools] タイル状に画像を並べて確認できるツールを探したり
水面のテクスチャ作成で模索。最初、
ということで、タイル状に並べて表示しながらドット編集できるツールはないものかと。
普段使ってるEDGE2のマニュアルを眺めてみたが、どうもそういう機能はないように見受けられる。仕方ないので他のツールを探したり。
- GIMPで64x64ドットの画像を作成して、
- レイヤー→変換→オフセット→「オフセットを(x/2)と(y/2)に」「縁の境界→繰り返す」で、境界を真ん中に持ってきて、
- スタンプツールで境界を消して、
- フィルタ→マップ→並べる、で256x256にタイル状に並べて見栄えを確認。
ということで、タイル状に並べて表示しながらドット編集できるツールはないものかと。
普段使ってるEDGE2のマニュアルを眺めてみたが、どうもそういう機能はないように見受けられる。仕方ないので他のツールを探したり。
◎ _彩彩畑 :
ドット編集はほとんどできないに等しいものの、
*1
タイル状に並べられるシームレス画像を選んでいくだけ、というあたりが便利そう。下絵となる画像作成には使える予感。
◎ _DotPainterALFAR :
画像を並べて表示しながらドット編集ができる。ありがたや。ウインドウサイズが固定なのがちとツライけど。
◎ _点画師鳳雛3 :
これも画像を並べて表示しながらドット編集ができる。ありがたや。
◎ 並べた画像をドット編集できるツールはないのかな。 :
画像の端・境界をまたいで描き込める、てな感じのツールはないのかしらん。昔どこかでそういうツールを見かけたような気もするのだけど。
◎ GIMPのResynthesizerプラグインも使ってみたのだけど :
_Resynthesizer - Oss4art
_再合成 - GIMP2を使おう
どうも画像を選ぶようで、今回の自分のソレでは欲しい結果画像が得られなかった。そこに映されたものが、比較的くっきりはっきりしていれば効果がありそうなんだけど。
_再合成 - GIMP2を使おう
どうも画像を選ぶようで、今回の自分のソレでは欲しい結果画像が得られなかった。そこに映されたものが、比較的くっきりはっきりしていれば効果がありそうなんだけど。
*1: 16x16ドット単位ならドット編集できるみたいではある。が、並べたものを見ながら編集できるわけではナサゲ。
[ ツッコむ ]
2008/06/03(火) [n年前の日記]
#1 [cg_tools] faceworxを試用してみたのだけど
面白いんだけど、インストールフォルダを選択できないのがちょっと。いきなりルートフォルダにインストールしてくれやがった。行儀が悪いにもほどがある。
◎ _GHOST WIP! | LOOXIS Faceworx - ブルース・リーで試してみた。 :
_GHOST WIP! | 平均顔作成ツールで正面顔を作成。
_三次元CG@七葉
_トミーノ‐ニコニコ動画(SP1) - Faceworxで作ったトミーノ監督ヘッドをARToolkitに組み込んでみた。
一番最後のは凄いな。と言っても、昔、 _LogicoolあたりのWebカメラにそういうアプリがついてた ような気もする。人の顔にCGモデルを重ねる、みたいな。
_三次元CG@七葉
_トミーノ‐ニコニコ動画(SP1) - Faceworxで作ったトミーノ監督ヘッドをARToolkitに組み込んでみた。
一番最後のは凄いな。と言っても、昔、 _LogicoolあたりのWebカメラにそういうアプリがついてた ような気もする。人の顔にCGモデルを重ねる、みたいな。
[ ツッコむ ]
#2 [iappli] N903iが届いた
午後に宅急便で届いた。代引きで約12,000円。付属品その他は入ってないかもしれんと覚悟してたけど、幸い、充電池も、マニュアルも、充電時に使うであろうホルダーまで入ってた。助かった。
ひとまず充電。動いてはいるみたい。これでNシリーズの画面がガクつく云々のバグチェックができる、といいのだけど。FOMAカードとやらを入れ替えれば使えるのかしら。
想像してたよりきれいな状態の中古品だなと。表面は特に目立った傷等ないように見える。いや、スリキズはかなりついてるけど、パッと見ではわからないレベル。水没?水濡れ?シールはドットのまま、ではあるけど昨今は張り替えなどもできてしまうのだろうか? そのへん知らんけど。
ひとまず充電。動いてはいるみたい。これでNシリーズの画面がガクつく云々のバグチェックができる、といいのだけど。FOMAカードとやらを入れ替えれば使えるのかしら。
想像してたよりきれいな状態の中古品だなと。表面は特に目立った傷等ないように見える。いや、スリキズはかなりついてるけど、パッと見ではわからないレベル。水没?水濡れ?シールはドットのまま、ではあるけど昨今は張り替えなどもできてしまうのだろうか? そのへん知らんけど。
[ ツッコむ ]
2008/06/04(水) [n年前の日記]
#1 [digital] VQ1005というトイデジカメが流行っていたらしい
Webカメラについて検索してるうちに情報に遭遇。検索してみたらかなりのページ数が出てきた。ひょっとしてトジデジカメがブームだったのか。面白そうだなと思ったものの、ほとんど市場に流通してない・通販でごく稀に買えるかどうか、てな状態のようで。残念。
携帯電話に何百万画素のデジカメ機能がついてるのが当たり前になり、また、Che-ez! シリーズを売っていたNHJが潰れてしまったときに、トイデジカメという市場は消滅しちゃったんだなと悲しくなったものだけど。ほんのちょっと復活してる or 細々と存在し続けてるようで、なんだか嬉しくなってしまったり。
ただ、Che-ez! SPYZに代表される、STV680チップ使用トイデジカメのソレと、VQ1005のソレは、性質が違うような感もあり。前者は、トイデジカメでどれだけ良い画質を追求できるか、どの製品が良い画質なのかという方向で試行錯誤してる人が多かった印象なのだけど。後者は、最初から画質が悪いことがオシャレなのだ、という方向でハマってる人が多いように見受けられた。トイデジカメブームと言っても、何かが既に一巡してる・フィルムカメラのソレに近づいたのかもしれない、と思えてきたり。
にしても、どうして日本のメーカはこういうところに目をつけないんだろう。先日探した携帯用液晶TV(ポータブル液晶TV)もそうだけど、どうも日本のメーカは、皆が右を向いたらウチも右を向かなきゃ、てな感じで商品企画を立てている・市場から撤退してしまう、そんな印象が。素人考えでは、皆が居なくなった市場こそ一人勝ちできるチャンスがあるのでは、と思ったりもするわけで。競争相手が居ない市場のほうが商売楽じゃん。…まあ、日本以外のメーカ・台湾や中国のメーカがやるから、そういうスキマ狙いの商品でも儲けに繋がるのであって、日本国内の人件費前提でのモノ作りではそんなところ狙ってられない、ということなのかしら。
携帯電話に何百万画素のデジカメ機能がついてるのが当たり前になり、また、Che-ez! シリーズを売っていたNHJが潰れてしまったときに、トイデジカメという市場は消滅しちゃったんだなと悲しくなったものだけど。ほんのちょっと復活してる or 細々と存在し続けてるようで、なんだか嬉しくなってしまったり。
ただ、Che-ez! SPYZに代表される、STV680チップ使用トイデジカメのソレと、VQ1005のソレは、性質が違うような感もあり。前者は、トイデジカメでどれだけ良い画質を追求できるか、どの製品が良い画質なのかという方向で試行錯誤してる人が多かった印象なのだけど。後者は、最初から画質が悪いことがオシャレなのだ、という方向でハマってる人が多いように見受けられた。トイデジカメブームと言っても、何かが既に一巡してる・フィルムカメラのソレに近づいたのかもしれない、と思えてきたり。
にしても、どうして日本のメーカはこういうところに目をつけないんだろう。先日探した携帯用液晶TV(ポータブル液晶TV)もそうだけど、どうも日本のメーカは、皆が右を向いたらウチも右を向かなきゃ、てな感じで商品企画を立てている・市場から撤退してしまう、そんな印象が。素人考えでは、皆が居なくなった市場こそ一人勝ちできるチャンスがあるのでは、と思ったりもするわけで。競争相手が居ない市場のほうが商売楽じゃん。…まあ、日本以外のメーカ・台湾や中国のメーカがやるから、そういうスキマ狙いの商品でも儲けに繋がるのであって、日本国内の人件費前提でのモノ作りではそんなところ狙ってられない、ということなのかしら。
◎ 全然関係ないけど自分はタイミングが悪い。 :
どうして自分は、世間のブームから外れたタイミングでソレにハマるんだろう。トイデジカメもキャプチャーボードもFLASHもRubyもPythonも、どれも世間より早かったり遅かったり。さりとて、ずっとソレに固執して、ブーム到来まで引き摺るわけでもなく。気づいた時には周回遅れ。…どうも自分は間が悪い(?)なぁ。
[ ツッコむ ]
#2 [digital][windows] Windows VistaではデジカメのPCカメラ機能は使えない場合がほとんどなのか
PCカメラ機能というか、Webカメラ機能。関連情報を探していたら、どうやら
_デジカメでPCカメラ機能を持っていてもVistaではほとんど使えない
ように見受けられる。…一体何をやらかしてくれてるんだ?>Vista。
Webカメラに範囲を絞れば、Vista対応と謳ってる製品も一応はあるみたいだけど。Webカメラのソレと、デジカメについてるPCカメラ(Webカメラ)機能というのは、何か根本的に仕様その他が違うのだろうか。
ひょっとすると、動画のオーバーレイ表示云々のあたりが絡んでるのかしら。Vistaになってからそのへんがらりと変わった、という話もどこかで見かけた記憶もあるし。
Webカメラに範囲を絞れば、Vista対応と謳ってる製品も一応はあるみたいだけど。Webカメラのソレと、デジカメについてるPCカメラ(Webカメラ)機能というのは、何か根本的に仕様その他が違うのだろうか。
ひょっとすると、動画のオーバーレイ表示云々のあたりが絡んでるのかしら。Vistaになってからそのへんがらりと変わった、という話もどこかで見かけた記憶もあるし。
[ ツッコむ ]
2008/06/05(木) [n年前の日記]
#1 [windows][web] 直子の代筆なるIE用ツールバーをインストールしようとしたのだけどアドウェアと判断されてしまう
avast4 が、「コイツはヤベエぜ。隔離するぜ」と言ってくる。うーむ。
[ ツッコむ ]
#2 [iappli] N903iでiモードが使えた
FOMAカードとやらをP902iSからN903iに入れ替えたら、iモードが使えた。これでバグチェックできそう。
N903iのほうが性能・機能が良さそうなのだけど、どういう状況で使われてたのかよくわからん個体なので、ちと不安。ということで、今まで通りP902iSを常用するつもり。特に何か機能が足りなくて困ってるわけでもないし。というか、そもそもほとんど外出しないし、電話がかかってくることも極めて稀なので、日常生活の中で携帯を持ってる意味自体がほとんどなかったりもするんだけど。
N903iのほうが性能・機能が良さそうなのだけど、どういう状況で使われてたのかよくわからん個体なので、ちと不安。ということで、今まで通りP902iSを常用するつもり。特に何か機能が足りなくて困ってるわけでもないし。というか、そもそもほとんど外出しないし、電話がかかってくることも極めて稀なので、日常生活の中で携帯を持ってる意味自体がほとんどなかったりもするんだけど。
◎ x903iからmicroSDになってたのか。 :
P902iSに刺しているのはminiSDなわけで。使い回しはできないな。
[ ツッコむ ]
#3 [iappli][cg_tools] 地形モデルにテクスチャを張り直したり
ひとまず水面にテクスチャを張ったり。また、木を張り付けるポリゴンに関して、ビルボードとそうでないものの2種類を作ってみようと。
blender から export した .bac に対してスケールを変えたいのだけど。Perlスクリプトで頂点データ(「( pnt xxx xxx xxx )」)のみを拡大して PAC、PVMicro に放り込んだら、それなりに表示されてしまって首を捻る。translate は弄らなくていいのか…? わからんなぁ…。
.bac の中から、ビルボードにしたいと思っているポリゴンだけは別にして取り出したい。が、どうやったらそういうことができるのか…。Perlでできる? 階層を持ったデータ形式を内部に格納できるようなスクリプトにしないといかんのではないか、という気がするのだけど、階層を持ったデータの形で格納する方法が判らない。こういう場合は何が使えるんだろう。
blender から export した .bac に対してスケールを変えたいのだけど。Perlスクリプトで頂点データ(「( pnt xxx xxx xxx )」)のみを拡大して PAC、PVMicro に放り込んだら、それなりに表示されてしまって首を捻る。translate は弄らなくていいのか…? わからんなぁ…。
.bac の中から、ビルボードにしたいと思っているポリゴンだけは別にして取り出したい。が、どうやったらそういうことができるのか…。Perlでできる? 階層を持ったデータ形式を内部に格納できるようなスクリプトにしないといかんのではないか、という気がするのだけど、階層を持ったデータの形で格納する方法が判らない。こういう場合は何が使えるんだろう。
[ ツッコむ ]
2008/06/06(金) [n年前の日記]
#1 [prog] perlに構造体ってないのかな
iアプリの.bacファイルを眺めているうちに、要するにコレは構造体の配列が羅列してある状態なのだなと。てことは、読みこんで解析した結果を構造体に放り込んでいけば、加工して出力するのも比較的容易なはず。さて、LLでそういった処理・データの持ち方が向いてるのはどれだろうと。例えば Perl で出来るだろうか。何かしら手があるのだろうけど、無知なのでどのへんを使うのかが判らない。うーん。
◎ _構造体 - Perl表技集 :
[ ツッコむ ]
2008/06/07(土) [n年前の日記]
#1 [tv][movie] 「THE 有頂天ホテル」を鑑賞
TVで流れてたので見てみたり。
脚本の力ってのは大きいのだな。
脚本の力ってのは大きいのだな。
[ ツッコむ ]
#2 [pc] ARToolkitがちょっと気になってたり
モーションキャプチャの真似事みたいなことはできないだろうか。マーカーを使って奥行きや角度の情報も取得できているようだし。…モーションキャプチャのソレとなると、物凄く小さいマーカーになってしまって、おそらく話にならないか。
ARToolkitの実験に使えそうなWebカメラと言うとどのへんなんだろう。ロジクール製品がお勧めという話も見かけたけど、ロジクールのソレはドライバが不安定という話も見かけた。しかも値段がちょっと高めだし。かといって他のメーカのソレが安定してるかというと、おそらくそんなこともなさげな予感も。…とりあえずスペック的にはどのくらいのものが必要なんだろう。>ARToolkit。640x480の30FPSぐらいは必須、とか、320x240でも30FPSあればOK、とか、そういう情報が知りたいのだけど。
ARToolkitの実験に使えそうなWebカメラと言うとどのへんなんだろう。ロジクール製品がお勧めという話も見かけたけど、ロジクールのソレはドライバが不安定という話も見かけた。しかも値段がちょっと高めだし。かといって他のメーカのソレが安定してるかというと、おそらくそんなこともなさげな予感も。…とりあえずスペック的にはどのくらいのものが必要なんだろう。>ARToolkit。640x480の30FPSぐらいは必須、とか、320x240でも30FPSあればOK、とか、そういう情報が知りたいのだけど。
[ ツッコむ ]
2008/06/08(日) [n年前の日記]
#1 [iappli][prog] ビルボードとして扱うポリゴンだけを除外するPerlスクリプトを作成
手順としては、Materials を順に調べて、マテリアル名に「.*billboard.*」とつけてあるマテリアル番号を記録。
*1
そのマテリアル番号を使ってるポリゴンを、Polygons の中から探し出してコメントアウトする Perlスクリプトを作成。PAC、PVMicro に読ませた限りでは、該当ポリゴンだけ消えているように見える。今のところ上手くいってる、かもしれず。
とはいえ、これはあくまで仮対応。出力された .bac中には、ビルボードとして扱うポリゴン中でしか使っていない、頂点情報、UV情報、マテリアル情報、Bones情報等が未だに含まれているわけで。おそらく、実機上で .bac 中に含まれている情報を扱おうとした場合、列挙されてる全ての頂点情報をまとめて座標変換してから後になって使ったりするのではないかと想像するわけで、つまりは表示に使っていない頂点情報その他をモデルデータ中から除外しておかないとその分無駄に計算をすることになりそうな。しかし、一部の頂点情報を抜き出したりすると、頂点番号やUV情報番号が全部ずれていってしまうわけで。そのあたりの辻褄合わせをどうするかで悩んでしまったり。また、ビルボードは、アプリ側がプリミティブの形で発生させていく予定なので、ビルボードの情報を別ファイル、あるいは独自データ形式で取り出しておかないといけない。この場合も頂点情報その他がずれてくるわけで…。うーん。
ちなみに。今のところ、Perlスクリプトによる .bac の解析時は、ひたすら配列の中に文字列情報として格納していくというトホホなやり方でやっていたり。例えば、
とはいえ、これはあくまで仮対応。出力された .bac中には、ビルボードとして扱うポリゴン中でしか使っていない、頂点情報、UV情報、マテリアル情報、Bones情報等が未だに含まれているわけで。おそらく、実機上で .bac 中に含まれている情報を扱おうとした場合、列挙されてる全ての頂点情報をまとめて座標変換してから後になって使ったりするのではないかと想像するわけで、つまりは表示に使っていない頂点情報その他をモデルデータ中から除外しておかないとその分無駄に計算をすることになりそうな。しかし、一部の頂点情報を抜き出したりすると、頂点番号やUV情報番号が全部ずれていってしまうわけで。そのあたりの辻褄合わせをどうするかで悩んでしまったり。また、ビルボードは、アプリ側がプリミティブの形で発生させていく予定なので、ビルボードの情報を別ファイル、あるいは独自データ形式で取り出しておかないといけない。この場合も頂点情報その他がずれてくるわけで…。うーん。
ちなみに。今のところ、Perlスクリプトによる .bac の解析時は、ひたすら配列の中に文字列情報として格納していくというトホホなやり方でやっていたり。例えば、
( Materials ( material ( blendMode normal ) ( doubleFace false ) ( transparent false ) )という情報があったら、
Materials,material,blendMode normal,doubleFace false,transparent falseという文字列にして配列にひたすら突っ込む、みたいな。…真っ当なPerlスクリプトとして書くとしたら、どんな風に書けばいいんだろう。さっぱりわからん…。
*1: マテリアル名は blender 上で指定しておく。
[ ツッコむ ]
2008/06/09(月) [n年前の日記]
#1 [iappli][prog] ビルボード用ポリゴンの頂点情報その他も削除するPerlスクリプトを作成
使ってる頂点番号やUV頂点番号を、ハッシュのキーにすることで使ってるか否かを判別して、てな感じでアレコレごちゃごちゃとやって、なんとか頂点情報の類も削除できるようにした。が、削除したそれら情報を別途取り出さないといけないんだよな…。うーん。
[ ツッコむ ]
2008/06/10(火) [n年前の日記]
#1 [prog] Perl用のIDEってないのかな
eclipse あたりを使ってると、変数名を変更したいなと思った時に、サクッと変更できるのだけど。Perl用のそういったIDEはないのだろうか。いや、エディタでもいいんだけど。目視で変数名を query-replace していくのもなんだかアホらしいわけで。eclipse + EPIC ならそういうこともできるんだろうか。でも重いんだよな…。> eclipse。
エディターのキー配置が emacs のソレになってないと使いづらいというのもあって、なかなかその手の便利なツールを見つけるのが難しかったり。
エディターのキー配置が emacs のソレになってないと使いづらいというのもあって、なかなかその手の便利なツールを見つけるのが難しかったり。
◎ emacse の cperl-mode てのが気になるんだけど。 :
特長が判らない。最新の Perl構文にも対応してるというのが売りなんだろうか。でも、それだけ?
[ ツッコむ ]
#2 [nitijyou] いいかげん、日記をアップロードしないといかんのだが
いや、強迫観念を持ちながら書き残すのもなんだかおかしな話なのでアレなんだけど。ローカルでは書き溜めているので、後は校正をすれば…なのだけど、そこが面倒で。
[ ツッコむ ]
#3 [iappli] ビルボード部分を別途取り出すところまではできた
blenderで export した .bac に対して、ビルボード用と非ビルボード用ポリゴンを分離するPerlスクリプト、が一応そこそこできたような気がする。
実機で表示するためには、背景画像も表示しないといけない。前回テストしたときは、半球状のモデルを作って背景にしていたけど。テクスチャがかなり引き伸ばされてしまうために、静止画のスクリーンショットで見た場合は、テクスチャが荒くてちょっとアレだったわけで。今回のテストでは、2Dの背景画像を表示するようにしてみたいなと。が、そのためには、背景画像をセル単位に分割したり等をしないといけない。
背景画像をセル単位に分割するPythonスクリプトを以前書いてはいたのだけど。それはコマンドラインから使うものだったので、ちゃんと分割できたかどうかの確認作業等が面倒で。一時期、GUIで使えるようにしたものを途中まで作って放置してたので、今回ちゃんと作り直そうと思ったり。が、どこに保存したか忘れた。どのフォルダに入れてたっけ…。
実機で表示するためには、背景画像も表示しないといけない。前回テストしたときは、半球状のモデルを作って背景にしていたけど。テクスチャがかなり引き伸ばされてしまうために、静止画のスクリーンショットで見た場合は、テクスチャが荒くてちょっとアレだったわけで。今回のテストでは、2Dの背景画像を表示するようにしてみたいなと。が、そのためには、背景画像をセル単位に分割したり等をしないといけない。
背景画像をセル単位に分割するPythonスクリプトを以前書いてはいたのだけど。それはコマンドラインから使うものだったので、ちゃんと分割できたかどうかの確認作業等が面倒で。一時期、GUIで使えるようにしたものを途中まで作って放置してたので、今回ちゃんと作り直そうと思ったり。が、どこに保存したか忘れた。どのフォルダに入れてたっけ…。
[ ツッコむ ]
2008/06/11(水) [n年前の日記]
#1 [iappli][python] BG画像分割スクリプトのソースを眺めてるのだけど
どれがどの処理をするスクリプトだったかすっかり忘れてるわけで…。
[ ツッコむ ]
2008/06/12(木) [n年前の日記]
#1 [iappli][python] Python勉強中なれどdocstringってのがよくわからん
BG画像をセル単位に分割・共通セルを見つけ出すPythonスクリプトを作成するためにPython勉強中。
_Python ドキュメンテーション文字列(docstring) てのがよくわからない。1行で書く場合と、複数行で書く場合があるらしいのだけど。
_Python ドキュメンテーション文字列(docstring) てのがよくわからない。1行で書く場合と、複数行で書く場合があるらしいのだけど。
- この docstring はピリオドで終わる文です.この文字列では,関数や メソッドの ("あれを行う", "それを返す" といった) 命令としての効果 を既定し,詳細記述は行いません; "... であるパス名を返す" のようには 書かないでください.てのがわからない。「〜のようには書かないでください」の具体的事例が想像できないわけで。どこかにサンプル・参考になりそうなソースはないのかな。
[ ツッコむ ]
#2 [web] Web広告をもっとカスタマイズできないものか
ここのところ、ずっと、「お袋さん用のノートPCが欲しいな」とか「自宅サーバ用に、HDD温度が上がらない・HDDが冷却できる空調や内部スペースがあって、ACアダプタで電源を供給するMini-ITXケースが欲しいな」とか思っているのだけど。そういう、細かい需要に特化した広告のカスタマイズってできないものかなと。
「何に興味がありますか? 1.コンピュータ 2.ファッション」等のアバウトな選択じゃなくて。特定単語を打ち込んでおくとその単語が出現する広告を極力表示する、みたいなことはできないのだろうか。いや、本来 Google あたりは、そのくらいのことをやっててもおかしくないだろうけど。
「何に興味がありますか? 1.コンピュータ 2.ファッション」等のアバウトな選択じゃなくて。特定単語を打ち込んでおくとその単語が出現する広告を極力表示する、みたいなことはできないのだろうか。いや、本来 Google あたりは、そのくらいのことをやっててもおかしくないだろうけど。
[ ツッコむ ]
#3 [anime] ウラシマンって夏への扉が元ネタなのかな
コールドスリープとタイムスリップの違いはあれど一応時間軸が絡んでくる設定だし。オチも似てるし。何より、主人公のペットとして猫が出てきたような気がするし。…あまり関係ないか。
よく覚えてないのだけど、警察署が移動するんだっけ?>ウラシマン。宇宙刑事よろしく、パワーアップできる特殊スーツが出てきたような記憶も。昔の銃を未来の技術でちゃんと使える銃に改造する、てな設定も個人的に好み。アレを今のCG技術で海外向け作品として実写ドラマ化できんかな。と思ったけど戦隊シリーズが結構近いことをやってたか。…ロボコップも一応ジャンル的には同じなのかな。
よく覚えてないのだけど、警察署が移動するんだっけ?>ウラシマン。宇宙刑事よろしく、パワーアップできる特殊スーツが出てきたような記憶も。昔の銃を未来の技術でちゃんと使える銃に改造する、てな設定も個人的に好み。アレを今のCG技術で海外向け作品として実写ドラマ化できんかな。と思ったけど戦隊シリーズが結構近いことをやってたか。…ロボコップも一応ジャンル的には同じなのかな。
[ ツッコむ ]
#4 [python][windows] Komodo Editのフォント指定がよくわからん
Pythonスクリプトを記述する時は Komodo Edit を使っているのだけど。フォントがどうも今一つ。日本語部分と英語部分で、上下に段差ができてしまっていたり。設定でフォント指定をし直すこともできるが、選択時はリスト上に日本語でフォント名が出てくるけれど、選択してOKを押して、また設定画面を開くと、文字化けしてしまう。本当にそのフォントが選択されているのかわからない。英語のフォント名を持ったフォントしか指定できないのだろうか。
◎ フォントがガクガクしていて見栄えが悪い。 :
関連情報を検索していたら、
_Windowsでプログラミングに最適なフォントを探す - ナレッジエース
という記事に遭遇。どうもその手のフォントを使う場合は、アンチエイリアスをかけた状態で使うといいらしい。が、gdi++.dll は開発が停滞してる・開発のアレコレが話されている2chのスレも荒れているようで。仕方ないので、ClearType を有効に。…MSゴシック等はアンチエイリアスがかからないのだな。
_MSゴシックとMS明朝で、ClearTypeを有効にする を参考にして、アンチエイリアスがかかるMSゴシックを作成。ついでに、フォント名も、英語のみで指定してみたり。でも何か違う。
Consolas とやらがいいらしい。自分のWnXP環境には入ってたけど、どこの段階で入れた・入ったのだろうか。さっぱり覚えてない。とりあえずそれに変更してみたり。…日本語はデフォルトのソレが表示されてしまうのかな。
_MSゴシックとMS明朝で、ClearTypeを有効にする を参考にして、アンチエイリアスがかかるMSゴシックを作成。ついでに、フォント名も、英語のみで指定してみたり。でも何か違う。
Consolas とやらがいいらしい。自分のWnXP環境には入ってたけど、どこの段階で入れた・入ったのだろうか。さっぱり覚えてない。とりあえずそれに変更してみたり。…日本語はデフォルトのソレが表示されてしまうのかな。
[ ツッコむ ]
2008/06/13(金) [n年前の日記]
#1 [zatta][pc] 個人レベルではソフトウェアにどのくらい金額を出せるのだろう
仮に、の話だけど。俺はシェアウェア作家になるぞーという人がどこかで出てきた場合、シェアウェアの価格設定は大体いくらぐらいならそこそこ売り物になるというか商売になり得るんだろうと疑問が。
メーカ側というか販売側の感覚としては、開発費にこのぐらいかかった→このぐらいの値段で売らないと儲けが出ない、てな考えで価格設定をしちゃう場面がほとんどなのかなと想像したりもするんだけど。供給側の都合ばかりを考えて価格設定をしていたら、需要側の感覚から著しく乖離した場合、まったく商売にならないだろうという気もするわけで。なので、このくらいの価格設定ならこのくらいの人達には買ってもらえそう、という推測が必須→そのあたりのデータが必要な場面が多かったりするのかな、と思ったり。
あくまで勝手な想像で値を打ち込んでグラフを作成。以下、勝手な想像に対する解説。
小学生〜高校生は、お小遣いをもらってる身だから、たぶんほとんどのお子さんが自身でソフトを買うなんてことはできない予感。100円ぐらいならまだガシャポンより安いから買えなくもないような気がするけれど、1,000円前後になると、もう厳しかったりはしないか。いや、もちろんこれは、お小遣いで買える範囲てのを考えた場合の話で、親に頼んで買ってもらうという選択肢まで含めると全然違う話になるんだろうけど。つーかゲームソフトをお子さんたちはどうやって買ってるのかが気になる。お年玉か、それとも親におねだりするのかしら。
大学生は、一人暮らしで仕送りをもらっていれば、その範囲内でアレコレ工夫できるだろうし、バイトをしてる人も居るだろうから、もうちょっと多くの値段でもいけるのかなと想像。でも、2,980円あたりになると結構厳しいのではないか。CDレンタルで借りてきて録音してる、という話が結構ある=ソフトに3,000円近くも払ってられない、という感覚じゃないのかと。や、もちろんこれも、そのソフトが学業に必要である、等の状況ならかなり話が違ってきそうだけど。
独身社会人は、自由にできる金額が結構違ってくるので、一番まともに売り込めそう(?)な。とはいえ、10,000円を超えると自分はかなり考えちゃうなとか、500,000円のソフトなんて自分にはまず無理だよ、といった各人の心理的境界線かありそうな気も。ただ、どうしても自分の趣味 or 仕事に必要であれば、それは仕方ないから買いますよ…てな場面もそこそこありそうな予感も。
既婚者は、おそらく、いくらぐらいの金額までなら伴侶を説得できるのか、といったあたりの境界が関わってきそうな予感。や、結婚したことないのでそのへんさっぱりわからんけど。各御家庭によってそのへんの境界は全然違うのだろうと。500円でもダメだと言われる家庭もあれば、数十万円だとしてもそれが必要ならしょうがないよと言われる家庭もあるんだろうし。
お年寄は、ソフトウェアのような形のないもんに金を払うという感覚自体がまず理解できません、てな人が結構居そうな予感があったりもするので、100円でも買わない、という人がほとんどなのかなと偏見バリバリな想像。でも、ハードウェアに金を払う感覚は判るので、そういう層を狙うためにはハードウェア+ソフトウェアという形で商品企画を考えた方がいいのかなと妄想したけどよくわからないです。
同じお年寄りでも、企業の社長さんやってました自社でソフトも販売してましたみたいなお金持ちの方は、それなりに払ってくれそうな。ただ、独身社会人と同様に、これ以上の額になるとちょっと考えちゃうな、てな境界が各人ありそうな。
ソフトの価格にマイナス値がある場面も考えてしまったり。ソフトを使うだけでお金をもらえますよ!みたいな。そんなソフトはまず存在してないだろうと思われるわけだけど。仮にそういうソフトがあったとして、大半の人は「使う使う!」と言いそうだなと。が、極一部の人が「うさんくせえ…」「何かヤバい」「裏があるなコレ」と思いそうな予感も。
以上、偏見に満ち満ちた勝手な想像でした。
商売の上手い企業は、このあたりしっかりリサーチしてる・ちゃんとした「実測」データがあるのではないかと想像したりもして。商品企画なり、販売戦略を練ったりする時に、市場に対する実測データがなかったら、ほとんど企画も通らないのではないのかと。そのソフトをどの層に売り込むか等を検討するのはもちろんのこと、その商品が市場をさらに広げる可能性が高いソフトかどうか、あるいはすでに市場・顧客数が固定してる中に売り込んでいくソフトなのか等で価格設定を考えたりもするだろうし。「たくさん儲けたいから」という気持ちだけで、自社の都合しか考えていない価格設定をしてしまうと、そもそも顧客側の払える額を大幅に超過してしまって、商品そのものがスルーされ、市場そのものが成立することなく結局撤退で赤字になりました、なんてことにもなりかねないし。
つーか、こういうデータに関して調査したところとかないのかな。大学の研究室とかで市場に対して無作為にアンケートを取ってみました、とかやってたりしないだろうか。
メーカ側というか販売側の感覚としては、開発費にこのぐらいかかった→このぐらいの値段で売らないと儲けが出ない、てな考えで価格設定をしちゃう場面がほとんどなのかなと想像したりもするんだけど。供給側の都合ばかりを考えて価格設定をしていたら、需要側の感覚から著しく乖離した場合、まったく商売にならないだろうという気もするわけで。なので、このくらいの価格設定ならこのくらいの人達には買ってもらえそう、という推測が必須→そのあたりのデータが必要な場面が多かったりするのかな、と思ったり。
◎ グラフを捏造してみた。 :
あくまで勝手な想像で値を打ち込んでグラフを作成。以下、勝手な想像に対する解説。
小学生〜高校生は、お小遣いをもらってる身だから、たぶんほとんどのお子さんが自身でソフトを買うなんてことはできない予感。100円ぐらいならまだガシャポンより安いから買えなくもないような気がするけれど、1,000円前後になると、もう厳しかったりはしないか。いや、もちろんこれは、お小遣いで買える範囲てのを考えた場合の話で、親に頼んで買ってもらうという選択肢まで含めると全然違う話になるんだろうけど。つーかゲームソフトをお子さんたちはどうやって買ってるのかが気になる。お年玉か、それとも親におねだりするのかしら。
大学生は、一人暮らしで仕送りをもらっていれば、その範囲内でアレコレ工夫できるだろうし、バイトをしてる人も居るだろうから、もうちょっと多くの値段でもいけるのかなと想像。でも、2,980円あたりになると結構厳しいのではないか。CDレンタルで借りてきて録音してる、という話が結構ある=ソフトに3,000円近くも払ってられない、という感覚じゃないのかと。や、もちろんこれも、そのソフトが学業に必要である、等の状況ならかなり話が違ってきそうだけど。
独身社会人は、自由にできる金額が結構違ってくるので、一番まともに売り込めそう(?)な。とはいえ、10,000円を超えると自分はかなり考えちゃうなとか、500,000円のソフトなんて自分にはまず無理だよ、といった各人の心理的境界線かありそうな気も。ただ、どうしても自分の趣味 or 仕事に必要であれば、それは仕方ないから買いますよ…てな場面もそこそこありそうな予感も。
既婚者は、おそらく、いくらぐらいの金額までなら伴侶を説得できるのか、といったあたりの境界が関わってきそうな予感。や、結婚したことないのでそのへんさっぱりわからんけど。各御家庭によってそのへんの境界は全然違うのだろうと。500円でもダメだと言われる家庭もあれば、数十万円だとしてもそれが必要ならしょうがないよと言われる家庭もあるんだろうし。
お年寄は、ソフトウェアのような形のないもんに金を払うという感覚自体がまず理解できません、てな人が結構居そうな予感があったりもするので、100円でも買わない、という人がほとんどなのかなと偏見バリバリな想像。でも、ハードウェアに金を払う感覚は判るので、そういう層を狙うためにはハードウェア+ソフトウェアという形で商品企画を考えた方がいいのかなと妄想したけどよくわからないです。
同じお年寄りでも、企業の社長さんやってました自社でソフトも販売してましたみたいなお金持ちの方は、それなりに払ってくれそうな。ただ、独身社会人と同様に、これ以上の額になるとちょっと考えちゃうな、てな境界が各人ありそうな。
ソフトの価格にマイナス値がある場面も考えてしまったり。ソフトを使うだけでお金をもらえますよ!みたいな。そんなソフトはまず存在してないだろうと思われるわけだけど。仮にそういうソフトがあったとして、大半の人は「使う使う!」と言いそうだなと。が、極一部の人が「うさんくせえ…」「何かヤバい」「裏があるなコレ」と思いそうな予感も。
以上、偏見に満ち満ちた勝手な想像でした。
商売の上手い企業は、このあたりしっかりリサーチしてる・ちゃんとした「実測」データがあるのではないかと想像したりもして。商品企画なり、販売戦略を練ったりする時に、市場に対する実測データがなかったら、ほとんど企画も通らないのではないのかと。そのソフトをどの層に売り込むか等を検討するのはもちろんのこと、その商品が市場をさらに広げる可能性が高いソフトかどうか、あるいはすでに市場・顧客数が固定してる中に売り込んでいくソフトなのか等で価格設定を考えたりもするだろうし。「たくさん儲けたいから」という気持ちだけで、自社の都合しか考えていない価格設定をしてしまうと、そもそも顧客側の払える額を大幅に超過してしまって、商品そのものがスルーされ、市場そのものが成立することなく結局撤退で赤字になりました、なんてことにもなりかねないし。
つーか、こういうデータに関して調査したところとかないのかな。大学の研究室とかで市場に対して無作為にアンケートを取ってみました、とかやってたりしないだろうか。
◎ どうやって金を払ってもらうかも関係するよな。 :
クレジットカードでの支払いでは、クレジットカードを持ってない人には売り込めないし。BitCash等の電子マネーでは、使えるまでの手順が面倒だったらそれだけで「もういいや」という話になりそうだし。
売る側も売る側で、一枚一枚CD-Rに焼いてたんでは大変だし。CDプレスになるとお金かかるし。通販するとしたら全部郵送・宅配になるんか、そのあたりの作業は誰がやるんだ、みたいな。
その点ダウンロード販売なら、物理的なメディアを用意しなくて済む分、低コスト・低負担で商品を用意できそうな。でも、その手のサービス会社の取り分はどのくらいなのか、とか、前述の「顧客にとっての支払の面倒くささ」を考えると、難しいところも多々あったりするのだろうけど。…そのあたり、上手く回ってる前例がたくさん出てきてほしいなと期待。
売る側も売る側で、一枚一枚CD-Rに焼いてたんでは大変だし。CDプレスになるとお金かかるし。通販するとしたら全部郵送・宅配になるんか、そのあたりの作業は誰がやるんだ、みたいな。
その点ダウンロード販売なら、物理的なメディアを用意しなくて済む分、低コスト・低負担で商品を用意できそうな。でも、その手のサービス会社の取り分はどのくらいなのか、とか、前述の「顧客にとっての支払の面倒くささ」を考えると、難しいところも多々あったりするのだろうけど。…そのあたり、上手く回ってる前例がたくさん出てきてほしいなと期待。
◎ ちなみに最初は折れ線グラフにしてたけど途中で間違いに気付いた。 :
折れ線グラフと言うのは、取得したデータのそれぞれが関連性を持ってる・徐々に変化していく・連続性があることが前提のデータ、に対するグラフ形式、だろうけど。
価格に対する心理的障壁ってのは、連続していないデータだよなと。ある人にとっては「10,000円なら払える。それより高かったら考え込んじゃうよ」みたいな感覚を持つのが、いわゆる「モノの値段」ってやつだろうと。価格と、心理的障壁が、アナログ的に連続して関係してるわけではない。デジタル的に、ある価格を境にして、心理的障壁がパカッと変わるデータ、なのだろうという気がしたわけで。
であるから、その手の実測データを見るときに、そこに連続性があるかのように判断したら危ないなと。100円で80%の人が買い、500円で10%の人が買うのだから、250円だったら…とか考えちゃいけない。間というものがないデータ、なのではないかしらん。>モノの値段。
価格に対する心理的障壁ってのは、連続していないデータだよなと。ある人にとっては「10,000円なら払える。それより高かったら考え込んじゃうよ」みたいな感覚を持つのが、いわゆる「モノの値段」ってやつだろうと。価格と、心理的障壁が、アナログ的に連続して関係してるわけではない。デジタル的に、ある価格を境にして、心理的障壁がパカッと変わるデータ、なのだろうという気がしたわけで。
であるから、その手の実測データを見るときに、そこに連続性があるかのように判断したら危ないなと。100円で80%の人が買い、500円で10%の人が買うのだから、250円だったら…とか考えちゃいけない。間というものがないデータ、なのではないかしらん。>モノの値段。
[ ツッコむ ]
#2 [windows] Excelのグラフってどうやって画像ファイルにすればいいのだろう
と首をひねってたけど、コピーしてペイントあたりに張り付ければよかったのね。
[ ツッコむ ]
#3 [python] wxPython勉強中なのだけど色々と怪しい動作が
謎な部分がちょこちょこと。
◎ wxPythonのwxMenuItemのlabelだかtextだかにアンダーバーが指定されてるのは何故。 :
自分が以前、XRCedでレイアウトした .xrc 中で、wxMenuItem の label(text?)にアンダーバーが指定されていて首をひねったり。
「_File」「_Open」「E_xit」てな感じに指定がされていて、つまりはショートカットキーを割り振っているみたいなんだけど。一般的にこの手のショートカットキーを割り振る時は「&File」「&Open」「E&xit」と指定するもんじゃないのかと。それがどうしてアンダーバーなのか。どうしてアンダーバーの指定で動くのか。そういう指定の仕方を自分はどこで見つけたのか。謎。
_[wxPython] - 理想のユーザ・インターフェースを求めて - wxStaticTextでの"&"の表示方法CommentsAdd Star
wxGlade で作成したソレを .xrc で出力すると、「&File」と打ったはずが「_File」になる…。もしかして、以前の自分が作成したソレは、wxGlade で出力したソレなんだろうか。
「_File」「_Open」「E_xit」てな感じに指定がされていて、つまりはショートカットキーを割り振っているみたいなんだけど。一般的にこの手のショートカットキーを割り振る時は「&File」「&Open」「E&xit」と指定するもんじゃないのかと。それがどうしてアンダーバーなのか。どうしてアンダーバーの指定で動くのか。そういう指定の仕方を自分はどこで見つけたのか。謎。
_[wxPython] - 理想のユーザ・インターフェースを求めて - wxStaticTextでの"&"の表示方法CommentsAdd Star
"&"を直接書くと化ける(Windows XPでしか試していないが、"_"が表示される)。む? これかな? 自分がアンダーバーを打ち込んだわけじゃなくて、XRCedで「&File」と打っても「_File」と表示されてしまうのだろうか。
wxGlade で作成したソレを .xrc で出力すると、「&File」と打ったはずが「_File」になる…。もしかして、以前の自分が作成したソレは、wxGlade で出力したソレなんだろうか。
◎ wxPythonにあらかじめ入っているらしいビットマップ画像のサイズが合わない。 :
wx.ART_FILE_OPEN とか wx.ART_QUIT とか、ツールバーに使えそうなビットマップ画像がある程度事前に入っている、らしいのだけど。それらを XRCed で表示しようとすると、なんだかサイズがまちまちで。
というか、XRCed のツールバーからして、各ボタンのビットマップ画像のサイズが合ってないように見受けられる…。wxPython 2.8.7.1 のバグなんだろうか。それとも仕様通りなんだろうか。
というか、XRCed のツールバーからして、各ボタンのビットマップ画像のサイズが合ってないように見受けられる…。wxPython 2.8.7.1 のバグなんだろうか。それとも仕様通りなんだろうか。
◎ wxFrame のサイズを指定しても反映されない。 :
XRCed 上でサイズ指定を「640,480」のようにしているのだけど。反映されない。sizerとやらでレイアウトしてると反映されない、等の制限でもあるんだろうか。
◎ wxGlade、ヤバイ。 :
wxGladeで作成して .xrc したものを、wxGlade でインポートしようとしたらエラーを出す。なんじゃそりゃあ。自分が出力したデータファイルを自分で読めないツールって凄過ぎやしないか。
[ ツッコむ ]
2008/06/14(土) [n年前の日記]
#1 [java] NetBeans IDE 6.1 をインストールしてみたり
eclipseより軽いのであれば嬉しいのだけど。と期待しながらインストール。
起動時間はeclipseとあまり変わらず結構待たされる。エディタの反応速度も別にこれと言って…。emacsのキー配置セットがあるのはありがたいけれど、どうも英語キーボードを前提にした配置になってるような。気のせいだろうか。GUIビルダーはeclipseと違って真っ当に使えそうなので、そのあたりの作業をするのであれば便利そうだなと。
eclipseから乗り換えるだけのメリットがあるかどうかは正直微妙。
起動時間はeclipseとあまり変わらず結構待たされる。エディタの反応速度も別にこれと言って…。emacsのキー配置セットがあるのはありがたいけれど、どうも英語キーボードを前提にした配置になってるような。気のせいだろうか。GUIビルダーはeclipseと違って真っ当に使えそうなので、そのあたりの作業をするのであれば便利そうだなと。
eclipseから乗り換えるだけのメリットがあるかどうかは正直微妙。
[ ツッコむ ]
#2 [nitijyou] 東北地方で地震
午前中にぐらりと来てかなりビビった。
仙台に住んでる弟に、お袋さんが電話。無事らしい。よかった。
岩手・宮城内陸地震、と命名されたらしい、とメモ。
仙台に住んでる弟に、お袋さんが電話。無事らしい。よかった。
岩手・宮城内陸地震、と命名されたらしい、とメモ。
[ ツッコむ ]
#3 [nitijyou] 従兄の家で火事
母屋は無事だったそうだけど、物置が燃えてしまったらしい。親父さんとお袋さんが電話で連絡を受けて後片付けの手伝いに。警察の調査による推測では、おそらく、国道49号線を走っている車から火のついたままの煙草を投げ捨てたヤツが居て、それが物置近くの草に引火→物置まで達したのではないかという話らしく。物置の中にはガソリンが入ってる耕運機があったので、それに引火した場合は爆発事故になっただろうとの話も。不幸中の幸いで、耕運機に火が及ぶ前に消化できたそうだけど。万が一、第一発見者の、従兄の子供が近くに寄ったときに爆発していたら、本当にとんでもないことになっていたわけで…。
地震だけでも大変なのに、まさかこんなことまで起きるとは…。にしても、今回の犯人を捕まえることはできないのだろうか。どうにかならんのか…。こんな事件を起こされるぐらいなら、監視社会になったほうがまだマシだ。いや、煙草の値段を一箱1,000円ぐらいにすればこういう事件も起きなくなるんだろうか。
地震だけでも大変なのに、まさかこんなことまで起きるとは…。にしても、今回の犯人を捕まえることはできないのだろうか。どうにかならんのか…。こんな事件を起こされるぐらいなら、監視社会になったほうがまだマシだ。いや、煙草の値段を一箱1,000円ぐらいにすればこういう事件も起きなくなるんだろうか。
[ ツッコむ ]
#4 [python] wxPython勉強中
以前のソレはソース中でGUIの指定をずらずらとやってたわけだけど。与えるパラメータが足りないことに気がついて、レイアウトを変更しようとしたら大変なことになったわけで。なので、今回は、.xrc と実処理部分に分けて記述していたり。ようやく以前のスクリプトと同レベルのところまで実装できた。と言っても肝心要の処理はまだ実装してないんだけど。
[ ツッコむ ]
2008/06/15(日) [n年前の日記]
#1 [python] Pythonで多重ループを一気に抜けるときはどうしたらいいのだろう
例外を使って行うという話を見かけたけれど、どうやるんだ…?
◎ for 文の else を使う手もあるのか。 :
_Pythonのお勉強 Part23
の294を見てなるほどと。
294 :デフォルトの名無しさん:2008/02/08(金) 19:08:57
for i in xrange(10):
for j in xrange(10):
if i == j == 5:
break
else:
continue
break
print i, j
[ ツッコむ ]
#2 [iappli][python] 画像分割スクリプトをまだ作成中
セル画像を吐き出すところまではなんとかできた。後は読み込んでちゃんと分割できるかどうか確認する処理を作れば…。
◎ ツールバー用のアイコン画像で悩む。 :
スクリプトの動作確認をしてる際に、ツールバー上のボタンを間違って押してしまって「ありゃ」てな場面が。ツールバーのアイコンは現状16x16ドットのものにしてあるのだけど、ちと小さすぎるのかもしれぬ。
ということで、「ファイルを開く」「保存する」「ナイフみたいなヤツ」「終了ボタン」といった種類で、かつ、サイズが大きめの、フリーで使わせてもらえそうなアイコン画像を探したり。が、これがなかなか見当たらない。どうもプログラム作成時のツールバーに使えるアイコン画像素材というのは、非常に需要がないというか、供給がないようで。自分で書くしかないのか…。
Javaの場合は、標準で _Java look and feel Graphics Repository というアイコン画像群があるらしく。また、Tcl/Tk も、 _ICONSパッケージ なるものが存在するらしい。うらやましい。
wxPythonも、一応は _wxArtProvider なるもので標準アイコン画像が入ってるかのようなことになってるんだけど。自分の環境特有の問題なのか、バージョンの問題なのか、なぜかアイコン画像のサイズがまちまちで。先日の日記にも書いたように、XRCedのツールバーアイコンすらサイズが違っていて正常表示されないという。なもんで、XRCed上でアイコン画像を指定するような .xrc を作ると、ツールバーの表示が見苦しいことになる。…もしかして、自前で逐一、アイコン画像用のビットマップを wxArtProvider から作り出して指定することが前提になっているのだろうか。うーん。
ということで、「ファイルを開く」「保存する」「ナイフみたいなヤツ」「終了ボタン」といった種類で、かつ、サイズが大きめの、フリーで使わせてもらえそうなアイコン画像を探したり。が、これがなかなか見当たらない。どうもプログラム作成時のツールバーに使えるアイコン画像素材というのは、非常に需要がないというか、供給がないようで。自分で書くしかないのか…。
Javaの場合は、標準で _Java look and feel Graphics Repository というアイコン画像群があるらしく。また、Tcl/Tk も、 _ICONSパッケージ なるものが存在するらしい。うらやましい。
wxPythonも、一応は _wxArtProvider なるもので標準アイコン画像が入ってるかのようなことになってるんだけど。自分の環境特有の問題なのか、バージョンの問題なのか、なぜかアイコン画像のサイズがまちまちで。先日の日記にも書いたように、XRCedのツールバーアイコンすらサイズが違っていて正常表示されないという。なもんで、XRCed上でアイコン画像を指定するような .xrc を作ると、ツールバーの表示が見苦しいことになる。…もしかして、自前で逐一、アイコン画像用のビットマップを wxArtProvider から作り出して指定することが前提になっているのだろうか。うーん。
[ ツッコむ ]
2008/06/16(月) [n年前の日記]
#1 [cg_tools] GIMPやInkscapeでツールバー用アイコン画像作成の練習
Inkscapeの動作が重くて閉口。
◎ 練習の参考にしたページ。 :
[ ツッコむ ]
#2 [python] VisualWxを試用してみたり
wxWidgetsのGUIを設計できるツールらしい。シェアウェアか何かかと思いこんでいたけどフリーソフトという分類らしいので、試しにインストール・試用してみたり。
使い方がさっぱりわからん。検索しても解説ページが全然見当たらない。
新規プロジェクトを作ろうとすると、まず最初にテンプレート一覧が出てくるのだけど。wxPython のソレを作りたいのだから、なんたらpythonてのを選べばいいのだろう、というところまでは判るものの。WX_MDI_Python_python, WX_DLG_Python, WX_SDI_Python, WX_SDI_Python_menu てのがあって首を捻る。どれがどういうソレなんだ。説明も何も見あたないし。しばらく考え込んで、もしかすると、と思い当たる。おそらく、*_DLG_* はダイアログ、*_SDI_* はウインドウが一つだけのアプリ、*_MDI_* は親ウインドウの中に子ウインドウが表示されることもあるアプリ、なのかもしれない。たぶん。おそらく。まったくもって自信ないけど。ってなんで新規プロジェクト作成の段階からして名探偵コナン・金田一少年よろしく推理ごっこ?をしなきゃいけないのか。
Frame にコンポーネントを追加したいわけだけど。そもそも画面にフレームを表示する方法が判らない。メニューを探してみたり、空白のウインドウ中で右クリックしてみたり。…右のリストのほうに MyFrame.pfr という項目があることに気づいた。右クリックメニューを出してもそれらしい項目はないが、恐る恐るダブルクリックしたらフレームが表示された。コレだったか…ってこれは新手のアドベンチャーゲームなのだろうか。
使い方がさっぱりわからん。検索しても解説ページが全然見当たらない。
新規プロジェクトを作ろうとすると、まず最初にテンプレート一覧が出てくるのだけど。wxPython のソレを作りたいのだから、なんたらpythonてのを選べばいいのだろう、というところまでは判るものの。WX_MDI_Python_python, WX_DLG_Python, WX_SDI_Python, WX_SDI_Python_menu てのがあって首を捻る。どれがどういうソレなんだ。説明も何も見あたないし。しばらく考え込んで、もしかすると、と思い当たる。おそらく、*_DLG_* はダイアログ、*_SDI_* はウインドウが一つだけのアプリ、*_MDI_* は親ウインドウの中に子ウインドウが表示されることもあるアプリ、なのかもしれない。たぶん。おそらく。まったくもって自信ないけど。ってなんで新規プロジェクト作成の段階からして名探偵コナン・金田一少年よろしく推理ごっこ?をしなきゃいけないのか。
Frame にコンポーネントを追加したいわけだけど。そもそも画面にフレームを表示する方法が判らない。メニューを探してみたり、空白のウインドウ中で右クリックしてみたり。…右のリストのほうに MyFrame.pfr という項目があることに気づいた。右クリックメニューを出してもそれらしい項目はないが、恐る恐るダブルクリックしたらフレームが表示された。コレだったか…ってこれは新手のアドベンチャーゲームなのだろうか。
[ ツッコむ ]
2008/06/17(火) [n年前の日記]
#1 [python][prog] wxFormBuilderを試用してみたり
以前インストール・試用したことはあるのだけど、C/C++にしか対応してないという話を見かけたので放置しちゃってたわけで。しかし改めて関連情報を眺めてみると、XRCでエクスポート・インポートできるという話もあり。だったら、wxPythonでも使えそうだなと。wxPython側でXRCを読み込んでGUI定義をすればいいわけだし。
少し触ってみたけど結構いい感じ。VisualWxと違って操作が判らないとかパラメータ名が独自のものになっているとかなさそうだし。いや、後者はもしかすると、wxWidgetsのほうが途中で名前を変えてしまったのかなという予感もあったりもするんだけどそのへん定かではなく。
少し触ってみたけど結構いい感じ。VisualWxと違って操作が判らないとかパラメータ名が独自のものになっているとかなさそうだし。いや、後者はもしかすると、wxWidgetsのほうが途中で名前を変えてしまったのかなという予感もあったりもするんだけどそのへん定かではなく。
◎ _Comparison of wxSmith features - CodeBlocks :
wxWidgets用RADの比較一覧。かしら。
_2ch:【GUI】wxWidgets(旧wxWindows) その3【サイザー】
で紹介されてた。
[ ツッコむ ]
#2 [web][prog] LGPLで画像が配布されている場合の画像の使用条件が判らない
_Crystal Clear - Wikimedia Commons
というページに遭遇したのだけど、この画像を自作プログラム・自作スクリプトで使いたいと思った場合は、何をどうすればいいのだろうと。さっぱりわからん。
[ ツッコむ ]
2008/06/18(水) [n年前の日記]
#1 [digital] N905iを購入
店頭から無くなる前に、と思ったわけで。自転車でロックタウンのDoCoMoショップまで。本体+ホルダーで。46,410円。一括で支払い。…高いなぁ。でもこれで、動作確認用の端末が一つ増やせた。
充電器はP902iS購入時に買ったものがあるので、それを流用できればと。
充電器はP902iS購入時に買ったものがあるので、それを流用できればと。
◎ 契約プランも変更。 :
N905i購入と同時に、契約プランも変更。ベーシックコース+いちねん割引から、バリューコース+ひとりでも割50に。
ひとりでも割50は、基本料金が半額になる割引サービスだけど。その代り、2年間は回線を解約できないという縛りが入ってくる。期間内に解約しようとすると、1万円近く払わないといけない。また、期限が来た頃に何もアクションを起こさないと、自動で契約が更新されてしまう。つまり、何もしないと、4年間、6年間、8年間という単位で縛られてしまう。
解約時に余計なお金を払いたくなければ、自分の場合、2年後の、2010年7月中に解約するよう動かないといけない。…なんだか忘れそう。いや、絶対に忘れる。非常に危ない。
ちなみに、今まで申し込んでたいちねん割引を、一年経たないうちにやめるとなると、3,000円ぐらい払わないといけない、とDoCoMoのサイトには書いてあったのだけど。ショップの人の話では、他の会社に移られてしまう場合はその額を請求するけど、今回のような切り替えの場合は、いちねん割引を廃止という形になるので、その3,000円は発生しないとのことで。他社に移られないようユーザを縛るための3,000円、ということらしい。
ひとりでも割50は、基本料金が半額になる割引サービスだけど。その代り、2年間は回線を解約できないという縛りが入ってくる。期間内に解約しようとすると、1万円近く払わないといけない。また、期限が来た頃に何もアクションを起こさないと、自動で契約が更新されてしまう。つまり、何もしないと、4年間、6年間、8年間という単位で縛られてしまう。
解約時に余計なお金を払いたくなければ、自分の場合、2年後の、2010年7月中に解約するよう動かないといけない。…なんだか忘れそう。いや、絶対に忘れる。非常に危ない。
ちなみに、今まで申し込んでたいちねん割引を、一年経たないうちにやめるとなると、3,000円ぐらい払わないといけない、とDoCoMoのサイトには書いてあったのだけど。ショップの人の話では、他の会社に移られてしまう場合はその額を請求するけど、今回のような切り替えの場合は、いちねん割引を廃止という形になるので、その3,000円は発生しないとのことで。他社に移られないようユーザを縛るための3,000円、ということらしい。
◎ 使ってなかったサービスも解約、というか廃止してきた。 :
iチャネル、キャッチホン、メロディコール、転送電話も今回廃止。一番最初に携帯を購入する際に、これも申し込むと安くなりますよ、と言われて申し込んじゃったのだけど。結局使わないまま、しかし廃止するのも面倒で、延々と料金を払っていたわけで。これでちょっとスッキリした。
今回携帯を購入する際、保険を入れるかどうか、とも聞かれたけど。毎月315円払うのもなんだかアレだし、また廃止するのを忘れそうなので、最初から申し込まないことに。ちょっと不安ではあるけど、そもそもそんなに外出する人間でもない・一日中PCの前に座ってるような状態なので、携帯を壊してしまう確率は非常に低いだろうから、まあ大丈夫だろうと。…壊しちゃう頃には新機種が出てるだろうし。
今回携帯を購入する際、保険を入れるかどうか、とも聞かれたけど。毎月315円払うのもなんだかアレだし、また廃止するのを忘れそうなので、最初から申し込まないことに。ちょっと不安ではあるけど、そもそもそんなに外出する人間でもない・一日中PCの前に座ってるような状態なので、携帯を壊してしまう確率は非常に低いだろうから、まあ大丈夫だろうと。…壊しちゃう頃には新機種が出てるだろうし。
◎ 住所変更もしてきた。 :
一番最初の契約時からして間違えて登録していたことに今頃気づいたわけで。番地の数字が83-8じゃなくて83-3になってた。
自分が住所を間違えて書いてしまうのはちとあり得ない気もするので、おそらくショップ側の人がPCに打ち込む時にミスしちゃったんだろうと。しかし、「これで間違いないですか?」と確認されたときに、自分がまったく気付かなくてスルーしちゃった上に、2年間も自分が気付かなかったということで、どう考えてもこちら側のトホホ。幸い、住所変更作業に関してお金はかからなかった。助かった(?)。
自分が住所を間違えて書いてしまうのはちとあり得ない気もするので、おそらくショップ側の人がPCに打ち込む時にミスしちゃったんだろうと。しかし、「これで間違いないですか?」と確認されたときに、自分がまったく気付かなくてスルーしちゃった上に、2年間も自分が気付かなかったということで、どう考えてもこちら側のトホホ。幸い、住所変更作業に関してお金はかからなかった。助かった(?)。
◎ microSDも買ってきた。 :
ヤマダ電気まで足を延ばして購入。
_IO-DATA SDMC-2G/A。
2GB。3,280円。
余談。ヤマダ電機のほうが、ケーズデンキより1,000円ほど安かった。デジカメ等も、ケーズデンキよりヤマダ電機のほうが全般的に安い感じ。ポイント込みで、の話だけど、下手すると10,000円ぐらい安い。>デジカメ。…ケーズデンキは「ポイントがつかない代わりに安くしてます」と店内放送してるけど。全然安くなってない…。
余談。ヤマダ電機のほうが、ケーズデンキより1,000円ほど安かった。デジカメ等も、ケーズデンキよりヤマダ電機のほうが全般的に安い感じ。ポイント込みで、の話だけど、下手すると10,000円ぐらい安い。>デジカメ。…ケーズデンキは「ポイントがつかない代わりに安くしてます」と店内放送してるけど。全然安くなってない…。
[ ツッコむ ]
2008/06/19(木) [n年前の日記]
#1 [nitijyou] 携帯電話のケースを買いに行ってきた
ケーズデンキまで自転車で。
N905iはP902iSよりサイズが大きいようで。今まで使ってた携帯電話ケースの中に入らない。ちなみに大きさは、110x50x20mm ほど。ということでケーズデンキの店頭でケースを探してみたのだけど、ほとんどのケースが105mmとかで。うーん。N905iが入りそうなケースが2〜3種類しかない。まあ、一応購入。ノーザンブルー NB-CA BKなるケース。780円。
液晶保護シートなるものも購入。ラスタバナナ RBPN042 N905i用。378円。…N905i購入時に液晶に張り付けてあるシートはなんだかよくわからんシートで、画面全体、というかシート全体にビーズのようなチカチカキラキラしたものが。目が疲れるわけで。
帰宅後に、ケースに入れてみたり、シートを張り替えてみたけれど、概ねイイ感じ。ただ、カメラ部分にシートを張ると、撮影画像がぼやける・光が拡散するような見栄えになってしまうようで。そこだけはシートを張らないことにした。
N905iはP902iSよりサイズが大きいようで。今まで使ってた携帯電話ケースの中に入らない。ちなみに大きさは、110x50x20mm ほど。ということでケーズデンキの店頭でケースを探してみたのだけど、ほとんどのケースが105mmとかで。うーん。N905iが入りそうなケースが2〜3種類しかない。まあ、一応購入。ノーザンブルー NB-CA BKなるケース。780円。
液晶保護シートなるものも購入。ラスタバナナ RBPN042 N905i用。378円。…N905i購入時に液晶に張り付けてあるシートはなんだかよくわからんシートで、画面全体、というかシート全体にビーズのようなチカチカキラキラしたものが。目が疲れるわけで。
帰宅後に、ケースに入れてみたり、シートを張り替えてみたけれど、概ねイイ感じ。ただ、カメラ部分にシートを張ると、撮影画像がぼやける・光が拡散するような見栄えになってしまうようで。そこだけはシートを張らないことにした。
◎ ダイソーにも寄ってきたり。 :
[ ツッコむ ]
2008/06/20(金) [n年前の日記]
#1 [firefox] Firefox3をインストールしてみたけれど
拡張をガシガシ入れて様子を見てみよう、と思ったところでつまづいた。翻訳パネルや Drag de goが未対応。うーん。Firefox2からの乗り換えは、しばらくの間、諦めよう…。
[ ツッコむ ]
#2 [prog] jEditなるエディタをインストールしてみたり
プログラミング時に使いやすいエディタ、という触れこみらしいので試しにインストール。
やっぱり emacs的キー配置じゃないとツライものがあるなあ。キーマップのセットか何かで、emacsのソレが用意されてると非常にありがたいのだけど。まあ、一つ一つ割り当て直していけば、目的は果たせるんだろうけど。使えるかどうかよくわからないエディタの設定変更に、そこまで労力を割くのもアレだし…。
やっぱり emacs的キー配置じゃないとツライものがあるなあ。キーマップのセットか何かで、emacsのソレが用意されてると非常にありがたいのだけど。まあ、一つ一つ割り当て直していけば、目的は果たせるんだろうけど。使えるかどうかよくわからないエディタの設定変更に、そこまで労力を割くのもアレだし…。
[ ツッコむ ]
2008/06/21(土) [n年前の日記]
#1 [python] PythonからWebブラウザを起動する方法がわからない
アプリのヘルプ文書をhtmlで用意するとして、それをwxPythonで作ったアプリから開く方法がわからない。メニューのヘルプ→ヘルプ、を選んだら、html文書を各環境の標準ブラウザで開かせたいのだけど。
Python のモジュールに _webbrowser という名前そのまんまのモノがあって。よく見かける、httpから始まるURLだったら、webbrowser.open(URL) としてやるだけでブラウザは起動する。が、ローカルHDD内に入ってる、htmlファイルのパスを ―― 「C:\\hoge\\fuga」+「/piyo/index.html」なんてのを渡そうとすると、エラーが出てしまう。
_urllib というモジュールの中に、pathname2url(path) というメソッド(?)があって。「ローカルシステムにおける記法で表されたパス名 path を、URL におけるパス部分の形式に変換」してくれるらしい。が、前述のパスを渡すと、「///C|/hoge/fuga/piyo/index.html」という記述になる。得られた文字列の頭に「file:」でもつけたして webbrowser.open(URL) を呼ぶと、Firefox から「file:///C なんてアドレスは知らんがな」的文句を言われてしまうわけで。
IEはどうだったか知らないけれど、Firefoxの場合、「|」が複数のURLを渡すための区切り文字になっていたような気がする。なもんだから、「file:///C|/hoge/fuga/piyo/index.html」をFirefoxに渡すと、「file:///C」と「/hoge/fuga/piyo/index.html」という2つのURLモドキを渡してしまうのではないか。と想像。
OSの関連付けに従ってファイルを開く、 _os.startfile() という手もあるらしいと知る。
カレントディレクトリを「C:\\hoge\\fuga\\piyo\\」にしてもOKなのであれば、webbrowser.open("index.html") で開けるみたい、ではある。しかし、カレントディレクトリを「C:\\hoge\\fuga\\」にして、webbrowser.open("piyo/index.html") ではダメ。
アレ? webbrowser.open("C:\\hoge\\fuga\\piyo\\index.html") であっさりブラウザで開けてしまった。そのOSのパス区切り文字を正しく使ったパスを与えてやれば、問題なく動く、のであらうか。であれば、
Python のモジュールに _webbrowser という名前そのまんまのモノがあって。よく見かける、httpから始まるURLだったら、webbrowser.open(URL) としてやるだけでブラウザは起動する。が、ローカルHDD内に入ってる、htmlファイルのパスを ―― 「C:\\hoge\\fuga」+「/piyo/index.html」なんてのを渡そうとすると、エラーが出てしまう。
_urllib というモジュールの中に、pathname2url(path) というメソッド(?)があって。「ローカルシステムにおける記法で表されたパス名 path を、URL におけるパス部分の形式に変換」してくれるらしい。が、前述のパスを渡すと、「///C|/hoge/fuga/piyo/index.html」という記述になる。得られた文字列の頭に「file:」でもつけたして webbrowser.open(URL) を呼ぶと、Firefox から「file:///C なんてアドレスは知らんがな」的文句を言われてしまうわけで。
IEはどうだったか知らないけれど、Firefoxの場合、「|」が複数のURLを渡すための区切り文字になっていたような気がする。なもんだから、「file:///C|/hoge/fuga/piyo/index.html」をFirefoxに渡すと、「file:///C」と「/hoge/fuga/piyo/index.html」という2つのURLモドキを渡してしまうのではないか。と想像。
OSの関連付けに従ってファイルを開く、 _os.startfile() という手もあるらしいと知る。
カレントディレクトリを「C:\\hoge\\fuga\\piyo\\」にしてもOKなのであれば、webbrowser.open("index.html") で開けるみたい、ではある。しかし、カレントディレクトリを「C:\\hoge\\fuga\\」にして、webbrowser.open("piyo/index.html") ではダメ。
アレ? webbrowser.open("C:\\hoge\\fuga\\piyo\\index.html") であっさりブラウザで開けてしまった。そのOSのパス区切り文字を正しく使ったパスを与えてやれば、問題なく動く、のであらうか。であれば、
path = os.path.abspath("piyo/index.html") webbrowser.open(path)みたいな感じでいいのかな?
[ ツッコむ ]
#2 [prog][python][cg_tools] アプリ用のアイコン画像を作成
Inkscapeで元画像を作成。
IcoFX でアイコン化。
- ファイル → ドキュメントの設定 → ページ → ページサイズ → Icon 48x48に変更。正方形状のドキュメントにする。
- ざっくりと描いて。
- 表示 → アイコンプレビューでアイコンサイズになったときの見栄えを確認。
- .svg で保存。
- ファイル → ビットマップにエクスポート → 96x96ドットのサイズでpng形式で出力。
IcoFX でアイコン化。
- 先ほど作成した画像を、「True Color + アルファチャンネル(32ビット)」「48x48」で開く。
- アイコン → イメージからWindowsアイコンを作成、を選択。
- 32x32-32bit、16x16-32bit、48x48-8bit(256色)、32x32-8bit、16x16-8bit、の画像を作成。
- アイコン画像 .ico として保存。
[ ツッコむ ]
2008/06/22(日) [n年前の日記]
#1 [python] py2exでexe化できなくて悩む
_wxPythonヘルパーモジュールの作成
や、
_wxPython雛形集
を見ながら、py2exe で Pythonスクリプトを .exe にしようとアレコレ試していたのだけど。出力された .exe を実行すると、「hoge.py のン行目でおかしなことになっちまったよ」的ログを吐き出したり、あるいはそもそも起動と同時に不正終了したりで。何がいかんのかさっぱりわからずアレコレ試してはまたダメで、の繰り返し。
そもそも「雛型集」として公開されてる簡素なサンプルですらexe化できんわけで。自分の環境に何か問題があるのだろうか。
XRCedで事前に出力しておいた resource_xrc.py が、setup.py を実行するたびに毎回再作成・しかも中身がすっからかんになってしまって首を捻ってたわけだけど。この一行があったが故に、XRCed が出力してくれた、まっとうな resource_xrc.py が後から上書きされて、ちとまっとうではない resource_xrc.py が作られていた。のかな? と想像。
そもそも「雛型集」として公開されてる簡素なサンプルですらexe化できんわけで。自分の環境に何か問題があるのだろうか。
◎ _wxPython x XRCed x py2exe - 見切り発車 :
ただ、元の wx_util.manifest の中では pywxrc でリソースの xrc を python モジュールに変換しています。これは既に XRCed で行っているので不要です。出力するファイル名がかぶったりしたらややこしいことになるので、この処理は削除させていただきました。どうもこれが原因だったみたい。
def manifest(app_name):
#不要 os.system('pywxrc -p resource.xrc')
XRCedで事前に出力しておいた resource_xrc.py が、setup.py を実行するたびに毎回再作成・しかも中身がすっからかんになってしまって首を捻ってたわけだけど。この一行があったが故に、XRCed が出力してくれた、まっとうな resource_xrc.py が後から上書きされて、ちとまっとうではない resource_xrc.py が作られていた。のかな? と想像。
[ ツッコむ ]
#2 [xyzzy] xyzzyで「.pyw」もpy-modeで開くにはどうすれば
common lisp、さっぱりわからん。
(load-library "py-mode") (push '("\\.py$" . py-mode) *auto-mode-alist*) (push '("\\.pyw$" . py-mode) *auto-mode-alist*)~/.xyzzy の末尾に、こんな感じの行を入れてみたり。これであってるのかどうかは判らない。が、一応 .pyw を開くと py-mode になってくれてるみたい。
[ ツッコむ ]
2008/06/23(月) [n年前の日記]
#1 [python] wxPythonでメッセージ文字列を国際化する方法を勉強
wxPython なのか Python なのか gettext なのか wx.Locale なのか、よーわからんけど。
英語圏用に書かれたアプリを国際化することを、i18nとか、L10Nとか言うらしい。数字の18とか10とかは何を表してるのか、というと、省略された文字数なのだとか。
さておき、かなりジタバタしつつ、何とかなってくれそうな気配が。忘れそうなので手順をメモ。
英語圏用に書かれたアプリを国際化することを、i18nとか、L10Nとか言うらしい。数字の18とか10とかは何を表してるのか、というと、省略された文字数なのだとか。
i18nはinternationalizationを省略した記述法。ジャーゴン。
一般的な学習者用の辞書などにはあまり掲載されていませんが、L10N というのは Localization の慣例的な略記法です。これは地域化、具体的には英語のソフトを日本語化することなどを意味する言葉です。Localization は長い単語であるため、L と N の間に 10 文字あるという意味で L10N と表記されます。l10n とするとアルファベットの l と数字の 1 とが区別しにくいため L10n と大文字にします。ローカライズセンターでは n も大文字で表記していますが、これは単にデザイン上の理由によるものです。
さておき、かなりジタバタしつつ、何とかなってくれそうな気配が。忘れそうなので手順をメモ。
◎ 実験時の環境。 :
- Windows XP Home SP3
- Python 2.5.2
- wxPython 2.8.7.1
- XRCed version 0.2.0-beta
◎ 本体スクリプト中の文字列の記述を修正。 :
本体スクリプト中で、日本語化したい文字列を指定しておく。例としては下のような感じ。
print "test %s %s" % (str0, str1) ↓ print _("test %s %s") % (str0, str1)
◎ .xrcから文字列を抽出できるようにしておく。 :
XRCed で .xrc を作成・保存して、GUIのレイアウトを決めていくわけだけど。その際、File → Genarate Python を選択して、resource_xrc.py を出力する。「Genarate gettext strings」にチェックを入れた状態で、「genarate module」ボタンを押せば、出力された .py ファイル中に、
.xrc から直接、文字列を抽出することもできるらしい。pywxrc を使う。
_("&File") _("&Open") _("E&xit")といった形で、gettext用(?)の文字列が列挙された部分ができる。
.xrc から直接、文字列を抽出することもできるらしい。pywxrc を使う。
pywxrc -g resource.xrc > resource.txt
◎ メッセージカタログファイル(.mo)を格納するディレクトリを作成。 :
locale/ja/LC_MESSAGES といった感じのディレクトリを、本体スクリプトと同階層に作成する。
本来は、というか *NIX文化圏では、/usr/share/locale/ja/LC_MESSAGES/ といった感じで作って、その中にいろいろなアプリの .mo を入れるらしいのだけど。今回実験したのはWindows環境下なので、そのようなディレクトリをルートに作ってええのやろかと。なので、該当アプリの入ってるディレクトリに locale/(以下略) を作っておく。
mkdir locale\ja\LC_MESSAGESja ってのが、「ここに日本語のソレが入ってるよ」ということらしく。英語の場合は en とかになるのかしら。たぶん。
本来は、というか *NIX文化圏では、/usr/share/locale/ja/LC_MESSAGES/ といった感じで作って、その中にいろいろなアプリの .mo を入れるらしいのだけど。今回実験したのはWindows環境下なので、そのようなディレクトリをルートに作ってええのやろかと。なので、該当アプリの入ってるディレクトリに locale/(以下略) を作っておく。
◎ メッセージカタログファイル(.pot)を作成。 :
例えば、
.pot じゃなくて .po で出力しちゃってもいいらしいのだけど。
- gettext_test.py (本体スクリプト)
- resource_xrc.py (XRCedで出力したスクリプト)
[Pythonインストールフォルダ]\Tools\i18n\pygettext.py -o gettext_test.pot gettext_test.py [Pythonインストールフォルダ]\Tools\i18n\pygettext.py -o resource_xrc.pot resource_xrc.pyを実行して、
- gettext_test.pot
- resource_xrc.pot
[Pythonインストールフォルダ]\Tools\i18n\pygettext.py -o 出力ファイル名(.pot) 入力ファイル名(.py)ということらしい。
.pot じゃなくて .po で出力しちゃってもいいらしいのだけど。
- .pot は pygettext.py から出力されたもの。上書きしてOK。
- .po はエディタで開いて訳を追加したもの。上書きしちゃダメ。手修正すること。
◎ メッセージカタログファイル(.po)を作成。 :
gettext_test.pot と resource_xrc.pot をエディタで開いて、手作業で中身を混ぜて、ja.po を作成する。
ヘッダー部分は、最低でも下の修正が必要らしい? よくわからないけど。
全然関係ないけど。「こんにちは、世界!」って、「コイン いっこ いれる」に似てる気がする。
ヘッダー部分は、最低でも下の修正が必要らしい? よくわからないけど。
"Language-Team: LANGUAGE <LL@li.org>\n" .... "Content-Type: text/plain; charset=CHARSET\n" ↓ "Language-Team: japanese\n" ... "Content-Type: text/plain; charset=utf-8\n"また、大体は、下のような感じで訳を追加していく。らしい。
#: gettext_test.py:53 msgid "Hello world!" msgstr "" ↓ #: gettext_test.py:53 msgid "Hello world!" msgstr "こんにちは、世界!"
全然関係ないけど。「こんにちは、世界!」って、「コイン いっこ いれる」に似てる気がする。
◎ .po から .mo を作成。 :
例えば、本体スクリプト名が gettext_test.py だったら、gettext_test.mo というファイルを作成。(そういう命名をすれば後々管理が楽になる、ということなんだろう。たぶん…)
[Pythonインストールフォルダ]\Tools\i18n\msgfmt.py -o gettext_test.mo ja.po
[Pythonインストールフォルダ]\Tools\i18n\msgfmt.py -o 出力ファイル名(.mo) 入力ファイル名(.po)
◎ .mo を所定の場所に移動する。 :
locale/ja/LC_MESSAGES以下に、.mo をコピーする。
前述の例だと、
前述の例だと、
locale\ja\LC_MESSAGES\gettext_test.moとなる。
◎ メッセージカタログファイル(.mo)を参照して使うようにソースを修正。 :
本体スクリプト中に、以下のような記述を入れる。
本体スクリプト内でのメッセージ国際化を gettext で行う。
xrc部分でのメッセージ国際化を wx.Locale で行う。
途中で出てきた get_main_dir() は、 _py2exeモジュールについて - 問題点 を参考に。要するに、本体スクリプトが入ってるディレクトリを取得するためのメソッド。…なんとなくだけど、この場合は、カレントディレクトリを取得する os.getcwd() でもいいのかな?という気がしないでもないけど。
当初、GUIのレイアウトを規定してる、resource_xrc.py も書き換えないといけないのかと思っていたのだけど。どうやらその必要はないようで。あくまで、本体スクリプトのみに関連記述をしておけばOK、のように見える。
本体スクリプト内でのメッセージ国際化を gettext で行う。
# gettext(メッセージの国際化)関連 import gettext # .mo を格納してるディレクトリパス # ./locale/ のパスを求めている。 localedir = os.path.normpath(os.path.join(get_main_dir(), "locale")) # gettext を使うことを指定 gettext.install('gettext_test', localedir, unicode=True)
xrc部分でのメッセージ国際化を wx.Locale で行う。
# カタログファイルとやらの場所を指定 wx.Locale.AddCatalogLookupPathPrefix(localedir) self.i18n = wx.Locale(wx.LANGUAGE_DEFAULT, wx.LOCALE_LOAD_DEFAULT) self.i18n.AddCatalog('gettext_test')
途中で出てきた get_main_dir() は、 _py2exeモジュールについて - 問題点 を参考に。要するに、本体スクリプトが入ってるディレクトリを取得するためのメソッド。…なんとなくだけど、この場合は、カレントディレクトリを取得する os.getcwd() でもいいのかな?という気がしないでもないけど。
当初、GUIのレイアウトを規定してる、resource_xrc.py も書き換えないといけないのかと思っていたのだけど。どうやらその必要はないようで。あくまで、本体スクリプトのみに関連記述をしておけばOK、のように見える。
◎ 参考にしたページ。 :
_wxPythonの国際化について - Plone en sourdine
_2006-01-18 - himainuの日記
_A-Liaison BLOG 【Python】gettextモジュールを用いて国際的な男になってみた
_XRCAndI18N - wxPyWiki
_wxPythonヘルパーモジュールの作成
_py2exeモジュールについて - 問題点
_Cross Platform Desktop Applications with Python
_2006-01-18 - himainuの日記
_A-Liaison BLOG 【Python】gettextモジュールを用いて国際的な男になってみた
_XRCAndI18N - wxPyWiki
_wxPythonヘルパーモジュールの作成
_py2exeモジュールについて - 問題点
_Cross Platform Desktop Applications with Python
◎ 実験に使ったスクリプトのソースもメモ。 :
忘れそうなのでコレもメモ。
_wxPythonヘルパーモジュールの作成 の wx_utils.py も使わせてもらっていたり。
本体スクリプト gettext_test.py -----
GUIのレイアウト定義 xml resource.xrc -----
ja.po -----
_wxPythonヘルパーモジュールの作成 の wx_utils.py も使わせてもらっていたり。
本体スクリプト gettext_test.py -----
#!/usr/bin/env python # -*- coding: utf-8 -*- # # gettext_test.py # gettext のテスト import sys import os import imp # デフォルトのエンコーディングをUTF8にしてる? if hasattr(sys,"setdefaultencoding"): sys.setdefaultencoding("utf-8") def main_is_frozen(): u"""exe化して動いてる状態かどうかを判定してる?のかな?.""" return (hasattr(sys, "frozen") or # new py2exe hasattr(sys, "importers") # old py2exe or imp.is_frozen("__main__")) # tools/freeze def get_main_dir(): u"""スクリプトの保存場所(PATH)を得る.""" if main_is_frozen(): return os.path.abspath(os.path.dirname(sys.executable)) return os.path.abspath(os.path.dirname(sys.argv[0])) import wx import wx_utils from wx.xrc import XRCID, XRCCTRL # XRCedで出力した resource_xrc.py をインポート import resource_xrc # 別途作成したアイコン画像部分 main_icon.py をインポート(削除してもOK) import main_icon # gettext(メッセージの国際化)関連 import gettext # .mo を格納してるディレクトリパス localedir = os.path.normpath(os.path.join(get_main_dir(), "locale")) # gettext を使うことを指定 gettext.install('gettext_test', localedir, unicode=True) class MainFrame(resource_xrc.xrcMainFrame): u"""MainFrame class deffinition.""" # イベントを割り当てるための前準備(たぶん) binder = wx_utils.bind_manager() def __init__(self, parent=None): u"""メインフレームクラスの初期化""" # メッセージ国際化 self.initI18n() resource_xrc.xrcMainFrame.__init__(self, parent) # アイコンを指定(アイコン指定が要らなかったら削除) self.SetIcon(main_icon.getIcon()) # イベント割り当て(たぶん) self.binder.bindall(self) def initI18n(self): u"""XRCed で作成した resource.xrc 側のメッセージ国際化.""" # カタログファイルとやらの場所を指定 wx.Locale.AddCatalogLookupPathPrefix(localedir) self.i18n = wx.Locale(wx.LANGUAGE_DEFAULT, wx.LOCALE_LOAD_DEFAULT) self.i18n.AddCatalog('gettext_test') # イベント割り当て @binder(wx.EVT_ACTIVATE) def OnActivate(self, event): u"""ウインドウがアクティブになった際に呼ばれるメソッド.""" print _('Activate!') # アプリケーション起動 if __name__=='__main__': app = wx.App(False) frame = MainFrame() app.SetTopWindow(frame) frame.Show() app.MainLoop()
GUIのレイアウト定義 xml resource.xrc -----
<?xml version="1.0" ?> <resource> <object class="wxFrame" name="MainFrame"> <object class="wxBoxSizer"> <orient>wxVERTICAL</orient> <object class="sizeritem"> <object class="wxPanel"> <object class="wxBoxSizer"> <orient>wxVERTICAL</orient> <object class="sizeritem"> <object class="wxPanel"> <object class="wxStaticText"> <pos>60, 30</pos> <label>hello wrold</label> </object> <size>240, 160</size> </object> <option>1</option> <flag>wxALL|wxEXPAND</flag> <border>0</border> <minsize>240, 160</minsize> </object> <object class="sizeritem"> <object class="wxButton"> <label>OK</label> </object> <flag>wxALIGN_RIGHT</flag> </object> </object> </object> </object> </object> <title>gettext_test</title> </object> </resource>
ja.po -----
# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR ORGANIZATION # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # msgid "" msgstr "" "Project-Id-Version: gettext_test 0.0.1\n" "POT-Creation-Date: 2008-06-24 00:04+東京 (標準時)\n" "PO-Revision-Date: 2008-06-24 02:25+0900\n" "Last-Translator: mieki256 <mieki256 atmark 104.net>\n" "Language-Team: japanese\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: pygettext.py 1.5\n" "X-Poedit-Language: Japanese\n" "X-Poedit-Country: JAPAN\n" "X-Poedit-SourceCharset: utf-8\n" #: gettext_test.py:53 msgid "Activate!" msgstr "アクティブになりました。" #: resource_xrc.py:103 msgid "hello wrold" msgstr "世界よ、こんにちは" #: resource_xrc.py:104 msgid "OK" msgstr "おけ" #: resource_xrc.py:105 msgid "gettext&test" msgstr "gettextのテスト"
◎ スクリーンショット。 :
◎ アイコン画像を.pyにする手順。 :
念のためにメモ。
img2py -i main_icon.ico main_icon.pymain_icon.ico を、main_icon.py に変換してる。らしい。
[ ツッコむ ]
2008/06/24(火) [n年前の日記]
#1 [python] BG画像分割スクリプトをi18n対応に修正
日本語でメッセージが表示できるようになった。
長い文字列を数行に分けて書く方法がよくわからず。「"""〜"""」を使うべきだろうか。うーん。
長い文字列を数行に分けて書く方法がよくわからず。「"""〜"""」を使うべきだろうか。うーん。
[ ツッコむ ]
2008/06/25(水) [n年前の日記]
#1 [game][neta] 社交ダンスのゲームって作れないかな
NHKをBGVにして作業していたら社交ダンスの番組が始まった。複雑な動きだ…。格闘ゲームのモーションのように見える。というか足の動きを覚えるだけでも一苦労な予感。…足が本来動いていく場所に、アナログコントローラでカーソルを次々と移動して、という感じでゲームにできんかな。でも、誰がそれで遊ぶんだという話も。
舞台はイギリス、かつ、貴族が社交ダンスを踊ってるのが当たり前、てな時代設定のゲームはどうか。「エマ」みたいな世界。社交ダンスがまともに踊れないとその階級の中でひどい目に会うのです=ゲームをクリアできないのです。嘘。どんなゲームやねん。
舞台はイギリス、かつ、貴族が社交ダンスを踊ってるのが当たり前、てな時代設定のゲームはどうか。「エマ」みたいな世界。社交ダンスがまともに踊れないとその階級の中でひどい目に会うのです=ゲームをクリアできないのです。嘘。どんなゲームやねん。
[ ツッコむ ]
#2 [scheme] Schemeをインストール
勉強用に。GIMPのスクリプトを書くときに知識が必要になるらしくて、前から気になってたわけで。
以前、MzSchemeをインストールしていたみたいではある。>自分。C:\usr\local\以下に入ってた。アンインストール方法がわからん…。
以前、MzSchemeをインストールしていたみたいではある。>自分。C:\usr\local\以下に入ってた。アンインストール方法がわからん…。
◎ MIT/GNU Schemeをインストールしてみたり :
_MIT/GNU Scheme - GNU Project - Free Software Foundation (FSF)
インストールすると「プログラムの追加と削除」に項目が並ぶので、アンインストールも簡単。
インストールすると「プログラムの追加と削除」に項目が並ぶので、アンインストールも簡単。
◎ _Scheme 入門 1. Scheme 処理系のインストール :
参考にしながら勉強。MIT/GNU Scheme をインストールすると4つのショートカットファイルが、と書いてあるけど、現状では一つしかショートカットが作られないらしい。Edwin という emacsっぽいエディタが開く。C-x C-e で最後の式?を実行できるらしい?
scheme.ini は作らない方向で作業。
scheme.ini は作らない方向で作業。
◎ xyzzyのscheme-modeで使えるように設定する方法が分からない。 :
_xyzzy - WikiWikiFun
を参考にして、~/.xyzzy に、
_Command-Line Options - MIT/GNU Scheme 7.7.90+ を参考にすればどうにかなるのだろうか。英語わからん。
(load-library "scheme-mode") (push '(".scm$" . scheme-mode) *auto-mode-alist*) ;; MIT/GNU Scheme (setf *scheme-process-open-hook* #'(lambda (buffer) (if (buffer-process) (buffer-process) (progn (set-buffer buffer) (make-process (format nil "\"~A\"" (map-slash-to-backslash "C:/usr/local/MIT-GNU_Scheme/bin/scheme.exe")))))))と書いてみたんだけど。make-scheme-scratch の (+ 1 2) の C-RET したらエラーが出る。うーん。
_Command-Line Options - MIT/GNU Scheme 7.7.90+ を参考にすればどうにかなるのだろうか。英語わからん。
◎ Gaucheも気になるのだけど。 :
_Gauche - A Scheme Interpreter
_[Think IT] 第1回:Gaucheをはじめてみませんか? (2/3)
Windows用のバイナリはまだ難あり、ということらしくて。うーん。cygwin 入れてまで勉強するものなのか、という気もするし。うーん。いや。あくまで勉強用、としての範疇であれば、実験用バイナリとやらでも全然OKなのかしらん。よくわからんです。
勉強用、と割り切って実験用バイナリを入れてみた。zipを解凍して c:\usr\local\ 以下にフォルダをコピー。xyzzy の scheme-mode で使えるように ~/.xyzzy を修正。
xyzzy 上で Scheme を勉強する = Gauche を勉強する、と割り切ることに。MIT/GNU Scheme を勉強する時は Edwin 上で、ということにしようかなと。
_[Think IT] 第1回:Gaucheをはじめてみませんか? (2/3)
Windows用のバイナリはまだ難あり、ということらしくて。うーん。cygwin 入れてまで勉強するものなのか、という気もするし。うーん。いや。あくまで勉強用、としての範疇であれば、実験用バイナリとやらでも全然OKなのかしらん。よくわからんです。
勉強用、と割り切って実験用バイナリを入れてみた。zipを解凍して c:\usr\local\ 以下にフォルダをコピー。xyzzy の scheme-mode で使えるように ~/.xyzzy を修正。
xyzzy 上で Scheme を勉強する = Gauche を勉強する、と割り切ることに。MIT/GNU Scheme を勉強する時は Edwin 上で、ということにしようかなと。
[ ツッコむ ]
#3 [scheme][neta] Lisp だの Scheme だのが不人気なのはどれをインストールすれば良さそうなのかさっぱりわからないから
という電波が。
どれをインストールして勉強すればいいのかわからない=特定の環境上でスクリプトを書けるようになっても他で使えるかどうか不明=勉強する意味がどれだけあるのかと考えてしまってやる気消滅、みたいな。や、わからんですけど。
Emacs lisp 用に書いたものは、 xyzzy lisp で使えないし。xyzzy lisp 用に書いたものは script-fu で使えないし。Gauche 用に書いたものは Tiny-fu で使えないし。「これで勉強しとけば後々役に立つ」というのが薄そうなのはどうなんだろうなと。「いやいや、基本は同じですよ」と言うこともできるのかもしれないけど、それを言っちゃったら「a = b + 1」といった形でかける basic も C も Java も Ruby も Python も Perl も皆同じ言語ですよ、ぐらいのことが言えてしまうのではないかという気もしたりしなかったり。
日本国内では Gauche の人気が微妙に高いように見受けられるのだけど Windows で使うには難易度が高いのもどうなのかとなんとなく。これでは初心者に「悩む必要ないやん。Gauche でやればええやん」と言い切ることもできないではないか。みたいな。
…要するに、Scheme を勉強しようと思っただけなのに、MzScheme、MIT/GNU Scheme、Gauche と3つも入れる羽目になったこの状況はなんだかなと思ってしまったというだけの話なのでした。 *1
どれをインストールして勉強すればいいのかわからない=特定の環境上でスクリプトを書けるようになっても他で使えるかどうか不明=勉強する意味がどれだけあるのかと考えてしまってやる気消滅、みたいな。や、わからんですけど。
Emacs lisp 用に書いたものは、 xyzzy lisp で使えないし。xyzzy lisp 用に書いたものは script-fu で使えないし。Gauche 用に書いたものは Tiny-fu で使えないし。「これで勉強しとけば後々役に立つ」というのが薄そうなのはどうなんだろうなと。「いやいや、基本は同じですよ」と言うこともできるのかもしれないけど、それを言っちゃったら「a = b + 1」といった形でかける basic も C も Java も Ruby も Python も Perl も皆同じ言語ですよ、ぐらいのことが言えてしまうのではないかという気もしたりしなかったり。
日本国内では Gauche の人気が微妙に高いように見受けられるのだけど Windows で使うには難易度が高いのもどうなのかとなんとなく。これでは初心者に「悩む必要ないやん。Gauche でやればええやん」と言い切ることもできないではないか。みたいな。
…要するに、Scheme を勉強しようと思っただけなのに、MzScheme、MIT/GNU Scheme、Gauche と3つも入れる羽目になったこの状況はなんだかなと思ってしまったというだけの話なのでした。 *1
*1: つか入門系サイトを眺めてみたら、「どれをインストールすればいいのかわからない」云々が不人気の理由ではないよなと思えてきました。これは天才秀才しか触れちゃいけない言語なのかもしれない。何がなんだかさっぱりわからん。なんでループ処理を再帰で…。再帰で書かれたものをジャンプ命令に置き換えて最適化して動くなんて、本末転倒じゃないのか。言語の構文木を人間が意識して書けるってのもどうなんだろう。ある意味アセンブラで書くのと変わらんのじゃないのか。人間が楽しようという思想が根本的なところでスポンと抜けてる感が…。頭の中がコンピュータと同化した人間じゃないと使えない言語なのでは…。こんなの凡人には無理だ…。
[ ツッコむ ]
2008/06/26(木) [n年前の日記]
#1 [anime] ゴーオンジャー金銀登場の回
「兄ぃ」という言い方がなんだかグッド。兄ぃ…かっこいいぜ…。ていうかどこかで見た役者さんだなと思ったらライダーカブトのやさぐれ兄弟の兄貴役の人だったのか。かっこいいよ…さすがだよ…兄貴…!
さておき、顔出し一話前の、ペンギン画と黒の人の氷上ソリ滑りに笑ったり。特に後者は秀逸。真横からとらえたカットで、速度一定で右から左に抜けるたびにカットを切り替えるという見せ方がいい。更に該当シーンが、4コマ漫画的リズム・構成に非常に近いものになっていたあたりにも感心。映像作品でありながら、漫画のソレを見事に再現・応用できるとは。素晴らしい。…いや、元ネタがある見せ方なのかもしれないけど。
怪人の「かしこまり!」がいいなあ…。
さておき、顔出し一話前の、ペンギン画と黒の人の氷上ソリ滑りに笑ったり。特に後者は秀逸。真横からとらえたカットで、速度一定で右から左に抜けるたびにカットを切り替えるという見せ方がいい。更に該当シーンが、4コマ漫画的リズム・構成に非常に近いものになっていたあたりにも感心。映像作品でありながら、漫画のソレを見事に再現・応用できるとは。素晴らしい。…いや、元ネタがある見せ方なのかもしれないけど。
怪人の「かしこまり!」がいいなあ…。
[ ツッコむ ]
#2 [anime] ライダーキバ、3人分のパワーアップ回
右腕・左腕・胸部分がパワーアップするあたりが上手いなと。体の各部分を変えていく=まとめて使うこともできるというのは玩具として色々展開が、って考えてみれば戦隊シリーズの巨大ロボットのソレと同じ発想でスケールが違うだけなのか…。
ということは、等身大ヒーロー特有の設定を巨大ロボットに応用した玩具を企画することも可能、なのだろうか。でも、等身大ヒーロー特有の設定って何があるだろう。うーん。
あるいは逆に、等身大ヒーローより小さい玩具を考えるとか。たとえば、ライダー響鬼に出ていた、CDから変形するメカのようなサイズで、パーツごとに組み合わせて使うこと前提、みたいな玩具とか。って本編合間の別商品のCMでそういうものが既に流れてるわな。うーん。
それはともかく。現代編の役者さんが過去編の役者さんの真似をしてるあたりに笑ってしまったり。かなりソックリ。手の動きがポイントなのだろうか。最初からこれを狙って過去編の演技をつけてたのかしら。
ということは、等身大ヒーロー特有の設定を巨大ロボットに応用した玩具を企画することも可能、なのだろうか。でも、等身大ヒーロー特有の設定って何があるだろう。うーん。
あるいは逆に、等身大ヒーローより小さい玩具を考えるとか。たとえば、ライダー響鬼に出ていた、CDから変形するメカのようなサイズで、パーツごとに組み合わせて使うこと前提、みたいな玩具とか。って本編合間の別商品のCMでそういうものが既に流れてるわな。うーん。
それはともかく。現代編の役者さんが過去編の役者さんの真似をしてるあたりに笑ってしまったり。かなりソックリ。手の動きがポイントなのだろうか。最初からこれを狙って過去編の演技をつけてたのかしら。
[ ツッコむ ]
#3 [nitijyou] また目が見えなくなった
目の前に波ガラスがかかったような状態がまた再発。片目ずつ手で覆って確認しても、両方の目で起きているので、目がおかしいのではなくて神経・脳のほうで問題が起きてるのだろうと。うっすらと状態が出てきたあたりでこりゃヤバイと思って早々に寝ることに。
3時間ぐらい寝てから起きてみたら、症状はなくなってた。しかし相変わらず頭痛がこない。調べた範囲では、頭痛がこないほうが怖いわけで…。
3時間ぐらい寝てから起きてみたら、症状はなくなってた。しかし相変わらず頭痛がこない。調べた範囲では、頭痛がこないほうが怖いわけで…。
[ ツッコむ ]
2008/06/27(金) [n年前の日記]
#1 [linux][windows] geditのWindows版ってないのかな
あるわけないか。Gnomeのソレだし。
◎ _Open Tech Press | Geditプラグインあれこれ :
プラグインがあること自体知らなかった…。
[ ツッコむ ]
#2 [tv][movie] マトリックス3作目を鑑賞
マトリックス・レボリューションズがTVで流れてたので見てみたり。
話というか設定というか「どうしてそうなるのか」がさっぱりわからず。台詞でアレコレ説明してくれてるのかもしれないのだけど、もしかして「ローカル星人」問題があちこちに混入していて更に判りづらくなっているのだろうか。…日本のアニメもあちらに行った時は、訳の問題でこういった難解さが付随してしまったりするのだろうか、と不安にもなったり。
でも映像が凄いからそれだけでお腹一杯。よくまあこんな映像を作れるなあ。
話というか設定というか「どうしてそうなるのか」がさっぱりわからず。台詞でアレコレ説明してくれてるのかもしれないのだけど、もしかして「ローカル星人」問題があちこちに混入していて更に判りづらくなっているのだろうか。…日本のアニメもあちらに行った時は、訳の問題でこういった難解さが付随してしまったりするのだろうか、と不安にもなったり。
でも映像が凄いからそれだけでお腹一杯。よくまあこんな映像を作れるなあ。
◎ _Matrix最終解説 〜映画「マトリックス」三部作の解説と資料・オリジナル続編〜 :
_マトリックスの世界についての解説
読んでみてなんとなくわかったような気になってきた。CASSHERNもそうだけど、(正解・非正解を問わず)解説記事を読んだほうが楽しめる映画、てのがあるのだなとなんとなく。
「映画である以上、映画単体を見ただけで観客が理解できなければ、それは評価に値しない」という考えがあるかもしれないけど。他メディア・他文献を入手することで理解が進む・更に面白くなる、というやり方も、商品価値を増すことに繋がるのだろうと思うわけで。映画=商品、と捉えればそういう商品展開は特に否定されるものでもないだろうし。また、作り手自身が最初から、「他メディアまで全部ひっくるめたときにそこで初めて一つの作品として完結するのだ」と考えながら作っていた場合、「映画単体で〜」という主張には空虚さ・根拠の無さを感じないでもない。とはいえ、何かと時間がない現代人においては、できるだけ短い時間で手っ取り早く充実感を得られるモノこそが良質の娯楽、と捉えることも可能だろうから、「映画単体で〜」という考えも否定されるものではないのだろう。てなことももやもやと考えちゃったりもして。
つーかアニマトリックスのDVDを買っていながらまだ見てないんだよな。>自分。手元にずっとあるんだから急いで見る必要はないや、てな感じでズルズルと。これまた問題が内包されてる感が。いや、中身を見もしないのに商品買ってくれる人間ってのもある意味ありがたい存在なのかな。わからんけど。
読んでみてなんとなくわかったような気になってきた。CASSHERNもそうだけど、(正解・非正解を問わず)解説記事を読んだほうが楽しめる映画、てのがあるのだなとなんとなく。
「映画である以上、映画単体を見ただけで観客が理解できなければ、それは評価に値しない」という考えがあるかもしれないけど。他メディア・他文献を入手することで理解が進む・更に面白くなる、というやり方も、商品価値を増すことに繋がるのだろうと思うわけで。映画=商品、と捉えればそういう商品展開は特に否定されるものでもないだろうし。また、作り手自身が最初から、「他メディアまで全部ひっくるめたときにそこで初めて一つの作品として完結するのだ」と考えながら作っていた場合、「映画単体で〜」という主張には空虚さ・根拠の無さを感じないでもない。とはいえ、何かと時間がない現代人においては、できるだけ短い時間で手っ取り早く充実感を得られるモノこそが良質の娯楽、と捉えることも可能だろうから、「映画単体で〜」という考えも否定されるものではないのだろう。てなことももやもやと考えちゃったりもして。
つーかアニマトリックスのDVDを買っていながらまだ見てないんだよな。>自分。手元にずっとあるんだから急いで見る必要はないや、てな感じでズルズルと。これまた問題が内包されてる感が。いや、中身を見もしないのに商品買ってくれる人間ってのもある意味ありがたい存在なのかな。わからんけど。
[ ツッコむ ]
2008/06/28(土) [n年前の日記]
#1 [iappli] 地形表示のテストアプリを探したり
以前 eclipse が起動しなくなって、ワークスペースを作り直したわけで。以前のワークスペースのソレを、現在のワークスペースに、どうやって追加すればいいのやら…。
結局、新規プロジェクトを作成して、中のファイルだけをコピー。
背景表示用のテストアプリを作成しようとしてアレコレ作業していたけど。地形表示用アプリの中に最初から組み込んだほうがいいよなと思い至る。ちと無駄な作業をしてしまった…。
結局、新規プロジェクトを作成して、中のファイルだけをコピー。
背景表示用のテストアプリを作成しようとしてアレコレ作業していたけど。地形表示用アプリの中に最初から組み込んだほうがいいよなと思い至る。ちと無駄な作業をしてしまった…。
[ ツッコむ ]
2008/06/29(日) [n年前の日記]
#1 [nitijyou] 歯が痛い
左奥歯が痛くて目が覚めた。上が痛いのか下が痛いのかよく判らず。どうも下の奥歯が虫歯になってかなり溶けてしまったらしい。歯医者に行ってこないと…。
[ ツッコむ ]
2008/06/30(月) [n年前の日記]
#1 [nitijyou] 一日中寝てた
起きれなかった。歯医者に行こうと思ってたのに。…勝手な推測だけど、歯が痛い→脳or体がストレスを受ける・ダメージを受ける→疲れる→疲れをとるために睡眠時間が長くなる・起きれなくなる、ということはないだろうか。って風が吹けばなんとやらと変わらんか。
今になって考えてみると、会社勤めしてた頃のその手のアレになったその直前も、虫歯が進んで痛くて云々、てなことがあったような気もする。…記憶違いかもしれんけど。
今になって考えてみると、会社勤めしてた頃のその手のアレになったその直前も、虫歯が進んで痛くて云々、てなことがあったような気もする。…記憶違いかもしれんけど。
[ ツッコむ ]
以上、30 日分です。