2008年03月

奏光のストレイン waltz.IV 初回限定版 [DVD]

奏光のストレイン waltz.IV 初回限定版 [DVD]

セーラちんが空間機甲科に編入してから微妙な作品になってきたなー。状況が緊迫してるんだかしてないんだかチグハグ。人物のコロコロした絵柄と光るキュベレイみたいなCGメカのごとく。
でもラヴィニアの全裸館内1周→3周事件が面白かったのでよし。

このエントリーをはてなブックマークに追加 mixiチェック

おかしいなー。去年の夏ごろまでは確か読み書きできていたんだが…。ていうかワールドコンOPの時にそれで最初の絵コンテ作ったもん(監督が全部変えて残ってないけど……まぁ良いわい)。たしか昔は素のWindowsだとBMPだけで、Office入れると対応ファイルが増えてた気がするんだけどなーTIFFとかもOKだった筈。だがしかし、今現在私のPCに入っているのはBMP,GIF,JPEGだけ。不思議だ…Windows Updateで何かしたのだろうか?
http://www2u.biglobe.ne.jp/~colorful/lesson/paint/index.html
起動が超早いから絵コンテエディタから使うのに重宝してたんだけど。
AzPainterを試したが、引数にPNGファイル名渡しても無視して新規作成するので使えない。
openCanvas 3も「未対応の形式です」と言うし(嘘をつけ!)。
HyperKidはちゃんと対応。さすがだ。でも起動が微妙に遅い。
対象プロセスを起動しっぱなしにしてやり取りする手もあるのかも知れないけどそうするとWindowsべったりになると思う。いやしかし実際問題MacintoshLinuxSolarisHP-UXで使ってる人が居るのか?というと微妙だから(動作確認はしてないし)いいのかも。

このエントリーをはてなブックマークに追加 mixiチェック

画像欄に表示するイメージアイコンオブジェクトをImageIcon(Image イメージ、String 説明)のコンストラクタで作っておくと、後でImageIcon.toString()でこの説明が取り出せる。
今までは、説明テキストに画像ファイル名を入れて、編集時等にこれをtoStringで取り出して使っていたんだけど、キャッシュファイルから読んだ時はここにキャッシュファイル名が入っていた。
だったら毎回発生しそうなものだけど、何故かドラッグ&ドロップで持ってきたファイルでしか発生しなかった。謎。
とりあえず絵コンテエディタの修正版リリース。

そいえばこの画像もちょっと古いな。コマ数とかツールバーとか補助メニューとか無かった頃のだし。
それからいまどきメモリ上限64Mでも無いだろうということで、-Xmx512mに。いや一部ImageIOをつかっててメモリリークがあるから。
あと、作業中に画像サイズ切り替えした場合、今はキャッシュファイルが無い時には本物を読んで表示してメモリに置いて、必要になった時にまた本物を読んで…を行っているので使用感がもたつく。ここはダイアログでも表示しつつ全部一気にキャッシュファイル作った方がいいのかも。ちなみに今はキャッシュファイルはセーブか終了時に作成している。いや、やっぱやるとすれば読み込み時かな。読み込み時なら時間掛かっても許されそうな気がする。どうせ初回だけだし。ただメモリリークがなー。用も無いのに画像アクセスはしたくないな。やっぱ終了時に全部作る事にするか。終了時なら何が起きても許される。ような気がする。
→いや待て待て。そういう面白い事をする以前に一昨日発覚した

java.lang.UnsatisfiedLinkError: C:\ほげほげ(.sbdのあるディレクトリ)\clib_jiio.dll: Can't find dependent libraries

をまずは直さないと。
こんなディレクトリを探す事自体がおかしい。私のクラスローダーの挙動への理解が浅いのだ。これを機会に鍛え直さないと。いや鍛えるというか正確に理解するというか。
→などと決意表明してる傍から墓場鬼太郎見てたら直せたんで寝る。まー普通は外部のグラフィックツール使うから通らないパスだけど。

このエントリーをはてなブックマークに追加 mixiチェック

SafariはウェブページをIE7と比べて1.9倍、Firefox 2と比べて1.7倍速く読み込みます。Safariはまた、JavaScriptも他のブラウザに比べて最大6倍速く動作させるほか、高度にインタラクティブな次世代のWeb 2.0のエクスペリエンスを提供するために必要な最新の革新的ウェブ標準をサポートする最初のブラウザでもあります

http://www.apple.com/jp/news/2008/mar/18safari.html

という高速ブラウザらしいので、休日なのに雨で寒くて暇だし、早速入れてみた。
→ハンドルされていないWIN32の例外が出まくる。
アクセス先のWEBページを表示しようとする時に落ちてるらしくて、このはてなダイアリーもNG。はてなアンテナなら大丈夫。デフォルトのApple Hot Newsでも落ちる。正常動作する限りでは確かに速いような気がする。
まぁ動作対象外のWindows2000なのでそんなものだろう。やっぱまだOperaか。
ちなみにアンインストール時、Apple Software Updateは別途アンインストールする必要がある。

コメント欄で教わって、JavaScriptを切ったら落ちなくなった。
フォントにアンチエイリアシングが掛かってて、Java5のSwingの裏技みたいな事になってる(javaコマンドに -Dswing.aatext=true オプションをつけてSwingアプリを起動するとフォントにスムージングが掛かるのだ)。そいえば6.0では効かなくなってしまったな、あれ。
→1.6では -Dawt.useSystemAAFontSettings=on だった。

awt.useSystemAAFontSettingsの取りうる値
off アンチエイリアスを行わない
on アンチエイリアスを行う
gasp 小さい文字ではアンチエイリアスを行わない
lcd サブピクセルアンチエイリアス
lcd_hrgb サブピクセルアンチエイリアス 横方向RGB
lcd_hbgr サブピクセルアンチエイリアス 横方向BGR
lcd_vrgb サブピクセルアンチエイリアス 縦方向RGB
lcd_vbgr サブピクセルアンチエイリアス 縦方向BGR

http://itpro.nikkeibp.co.jp/article/COLUMN/20070205/260649/

このエントリーをはてなブックマークに追加 mixiチェック

の謎を追う第二弾。トレース二回目。

2008/03/19 23:26:30 sbedit$ImageEditor2 getTableCellEditorComponent
情報: from value.toString() fileName=C:\ほげほげ\My Pictures\up\452706.jpg
2008/03/19 23:26:30 sbedit$ImageEditor2$ButtonCheck actionPerformed
情報: ImageEdito2 開始
2008/03/19 23:26:39 SBDTableModel setDocFileName <−−−− 既存のタイムシートファイルをオープン
情報: filename=C:\ほげほげ\SBD調査\test.sbd docdir=C:\ほげほげ\SBD調査
2008/03/19 23:26:39 SBDTableModel getIconFromCachFile
情報: Image Cache file old cash
2008/03/19 23:26:39 SBDTableModel getIconFromCachFile
情報: Image Cache file old cash
2008/03/19 23:26:39 SBDTableModel getIconFromCachFile
情報: Image Cache file old cash
2008/03/19 23:26:39 SBDTableModel getIconFromCachFile
情報: Image Cache file old cash
2008/03/19 23:26:40 MakeTemp run
情報: ワーカスレッド終了
2008/03/19 23:26:42 SBDTableModel getIconFromCachFile
情報: Image Cache file not exist

2008/03/19 23:26:42 sbedit$ImageEditor2 getTableCellEditorComponent
情報: from value.toString() fileName=C:\ほげほげ\SBD調査\img\S\071211-0200250545-1280x720.png
2008/03/19 23:26:42 sbedit$ImageEditor2$ButtonCheck actionPerformed
情報: ImageEdito2 開始
2008/03/19 23:26:55 SBDTableModel getIconFromCachFile
情報: Image Cache file old cash

2008/03/19 23:26:58 sbedit$ImageEditor2 getTableCellEditorComponent
情報: from value.toString() fileName=C:\ほげほげ\SBD調査\img\S\071211-0200250545-1280x720.png
2008/03/19 23:26:58 sbedit$ImageEditor2$ButtonCheck actionPerformed
情報: ImageEdito2 開始
2008/03/19 23:27:13 SBDTableModel getIconFromCachFile
情報: Image Cache file old cash

2008/03/19 23:27:15 sbedit$ImageEditor2 getTableCellEditorComponent
情報: from value.toString() fileName=C:\ほげほげ\SBD調査\img\S\080125-0056520888-1280x720.png
2008/03/19 23:27:16 sbedit$ImageEditor2$ButtonCheck actionPerformed
情報: ImageEdito2 開始
2008/03/19 23:27:19 SBDTableModel getIconFromCachFile
情報: Image Cache file old cash

2008/03/19 23:27:21 sbedit$ImageEditor2 getTableCellEditorComponent
情報: from value.toString() fileName=C:\ほげほげ\SBD調査\img\S\080125-0056520888-1280x720.png
2008/03/19 23:27:21 sbedit$ImageEditor2$ButtonCheck actionPerformed
情報: ImageEdito2 開始

getTableCellEditorComponent(JTable table,Object value,boolean isSelected,int row,int column)の引数の、value.toString()が画像ファイルじゃなくてキャッシュファイルのファイル名を返してる。ここで既にキャッシュファイル名になってるのか。つまり編集開始時点では既にそのセルの値はキャッシュファイルになっているということ。鶏が先か卵が先か、根が深い…。
まー手元で再現するからいずれは判明するけど。この『謎』はもう我輩の舌の上だ。
テーブルのセルに値を入れる機会と言えば
1.SBDファイルロード時。
2.セル編集時
3.画像ファイルをドラッグアンドドロップ
 3は今回行わなかったので、あとは1か。でもロード直後最初にダブルクリックした時は正常に渡るんだよねー。二回目に起こる。つまり1回目の編集の最後?
何か「Image Cache file old cash」が何度も出るのが怪しい気がするな。Model側のgetValueAtで変な事してるからその辺もなー。
大体、編集時にgetIconFromCachFile()なんて名前の関数が呼ばれてるのが不審(自分で作っておきながら忘れてる)。これって初表示の際に呼ばれる筈じゃ。
バッカーノ!が始まったんで本日はこれまで。
.
と思ったけど明日休みなので続き。
getIconFromCachFileが何か超奇怪な事やってる。

String tmpname = readImgFile.getName();
StringBuilder readImgFileName = new StringBuilder( tmpname.substring(0, tmpname.lastIndexOf('.')+1) ).append("png");
StringBuilder cashFileName = new StringBuilder(docFileDir.getCanonicalPath() ).append(File.separator ).append("img").append( File.separator ).append( cdirname ).append( File.separator ).append( readImgFileName );
logger.info("ReadFile="+ tmpname + " キャッシュファイル="+cashFileName);
File cashFile = new File( cashFileName.toString() );
(略)
Image image = java.awt.Toolkit.getDefaultToolkit().getImage(cashFile.getCanonicalPath() );
reticon = new ImageIcon(image , cashFileName.toString() );

リターン値としてcashFileName.toString()を返してるな。

このエントリーをはてなブックマークに追加 mixiチェック

アニメの無印の最終回のあたりかな。
終盤、何でいきなりゼロ戦なんだ?とアニメの時は分からなかったけど、きっとゼロの使い魔だからゼロ戦なんだな。地水火風な魔法の世界でもガソリンエンジンは動作するのか…まぁ人体中の生化学反応も動作してる位だから当然?

このエントリーをはてなブックマークに追加 mixiチェック

赤の他人がナンパするかしないかとか実にどうでもいい事でよくこんなに盛り上がれるなー。
多分元記事の人の文才だろう。すげー。そしてやっぱこの↓淡い色使いの一見微妙な絵が何か人をひきつけるのか。

鼻を描かずに口の位置を思い切り下げてるのが何かいいね。ただ青いシャツの色だけ、妙に彩度が高くて浮いてるような。

反転するとちょっと顔と肩の骨がナニだけど。でも肩と耳はともかく顔だけは結構この反転版でもアリな気がしてきたな。鼻が無いからゆがみがそんなに気にならないからかな。口も元々表情を作るために位置をずらしてるし。
.
そいえば年収分のはてなポイントが貰えそうなんで分け前をくれるって話はどうなったんだろう。多分1万円程度もらえる筈なので貰ったら

D.C.P.K.~ダ・カーポーカー~ 初回限定版

D.C.P.K.~ダ・カーポーカー~ 初回限定版

を買おうと決めてて楽しみに待ってるんだけど…。
まー転職と起業は慎重になー。無計画を勇気でカバーできるのは勇者王位だしー。

このエントリーをはてなブックマークに追加 mixiチェック

絵コンテエディタに関してねこまたやさんからレポートを頂いた。どうもありがとうございます。
特にヤバげなのがこのバグ。自分で使ってる分には起きないというか、無意識に危険操作を避けてるんだろうゴージャス・アイリン。
んで、我が家ではドラッグ&ドロップしたのを編集しようとすると起きたり起きなかったり。一度起きるとD&Dじゃないものもそうなったり。なんだろなー。
最初は画像編集APとの謎競合かと思ったけど、そもそも本当にテーブルモデル側が画像ファイルの名前としてキャッシュファイル名を保持してsuper.getValueAt()で返す状態になっているみたい。
一体どこで…。
まぁgetValueAtで返すということは、setValueAtでセットしているからに決まってるから、setValueAtを呼び出してる所にトレースを仕込んで再現させればいいのか。
関係あるかどうか不明だけど、ドラッグ&ドロップでJPGを入れて、これを編集しようとすると以下が。

2008/03/18 23:39:52 sbedit$ImageEditor2$ButtonCheck actionPerformed
情報: ImageEdito2 開始
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: C:\ほげほげ(.sbdのあるディレクトリ)\clib_jiio.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.sun.medialib.codec.jpeg.Decoder.(Decoder.java:233)
at com.sun.media.imageioimpl.plugins.jpeg.CLibJPEGImageReader.decode(CLibJPEGImageReader.java:56)
at com.sun.media.imageioimpl.plugins.clib.CLibImageReader.getImage(CLibImageReader.java:275)
at com.sun.media.imageioimpl.plugins.jpeg.CLibJPEGImageReader.getRawImageType(CLibJPEGImageReader.java:78)
at com.sun.media.imageioimpl.plugins.clib.CLibImageReader.read(CLibImageReader.java:335)
at javax.imageio.ImageIO.read(Unknown Source)
at javax.imageio.ImageIO.read(Unknown Source)
at sbedit$ImageEditor2$ButtonCheck.actionPerformed(sbedit.java:3148)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$Handler.repostEvent(Unknown Source)
at javax.swing.plaf.basic.BasicTableUI$Handler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

なんだか素っ頓狂なディレクトリで「clib_jiio.dll」を探してるなー。これ、昔直したつもりだったんだが…。ちなみにこれは画像入出力ライブラリ。これも超怪しいしけど、まずはファイル名を追う。もしかするとこのexceptionでのパスで何か悪さしてるのかも。まーまずはトレースの調査が先。っていうか何でJAIのライブラリが呼ばれてるんだろ。JAIのImageIOってメモリリークするからPNGとJPEGは見分けてJAIじゃなくてawt.ToolKit側で読むようにしたはずなのに。何かどこかで古いソースが紛れたか。やっぱSourceForgeのCVSとか使わないと駄目かも。まーそれは後。
→あ、思い出した。これ、直したのはタイムシートエディタの方だった(あっちは画像を大量に読むので顕在化しやすくてすぐメモリリーク問題に当たったんだっけ)。横展開しろよ>私。いやだって仕事じゃないしー。まー原因と対策は分かったんでこっちは後回し。
→いや、違うな。私もそこまでドジっ子じゃない。

bf = (BufferedImage)java.awt.Toolkit.getDefaultToolkit().getImage( new File(fileName).getCanonicalPath() );

でキャストできないからめんどくさくて編集は数回だしーつか普通外部エディタ使うからこのパス通らないしー、とか思ってJAIの方使ってたんだ。起動時に読む時は編集しないからしっかりawtの方使ってる。まぁとにかくメモだけして後回し。
.
→とにかくトレース取った

2008/03/18 23:43:41 sbedit$ImageEditor2$CellButtonEnd editingStopped
情報: CallButtonEnd elseのパス setValueAt=C:\ほげほげ\img\S\06.png
2008/03/18 23:43:41 SBDTableModel setValueAt
情報: setValueAt 画像ファイルをテーブルセットvalue=C:\ほげほげ\img\S\06.png

イメージ欄編集終了時にファイル名をセットするところで、

if (edit_flg == true && fileName != null) {

else のパスで、このfileNameをセットしている。

fileNameがnullではないから、edit_flgがfalseだな。うむ。画像編集ウィンドウでキャンセルボタン押してるからここに来るのは正常。fileNameに何故に縮小キャッシュファイル名がを追わねば。
カイジが始まるんで今日はここまで。

このエントリーをはてなブックマークに追加 mixiチェック

※ご利用のお客様には誠に申し訳ございませんが、iEPG(録画予約機能)の対応、UHF・BSアナログに関する番組情報のご提供は対応は3月31日(月)をもって終了させていただきます。

http://tv.yahoo.co.jp/vhf/tokyo/realtime.html

な、なんだってー!? MXTVTVKで深夜アニメばっか見てる私はどうしたら…。

このエントリーをはてなブックマークに追加 mixiチェック

3年ぶりにバージョンアップされたそうでメールでお知らせが。
LWO→DXFコンバートのためにユーザ登録したもののShadeのDXFインポータがイマイチで、結局、MQOインポータ経由となったために使わなくなったんだよねー。
私も3Dを頑張って会得していれば今頃はもっと生産性高かっただろうか。

このエントリーをはてなブックマークに追加 mixiチェック

↑このページのトップヘ