[back]

【雑記】
2008/3/29

2Dパースグリッド

、、、さて、どうしたものか :-<
イマイチ定規としての使いでが微妙な気もする、またガイドとしても微妙、味って事で考えるとむしろ消失点だけの方が良いか?

---------------

「法的リスクがゼロに」、アドビがソフト管理の認証事業を開始
だそうな、色々意見はあろうが、一般論として言えばこの手のしくみが腐るとロクな事にならない、そういった意味では余り軌道に乗りすぎると新しい「税金」のようになりかねないワケだが、果たして、、、また常にマクロ集合としての人間とは腐るものなワケだが ;-)

またこのようなニュースも Adobe、無料のオンライン版Photoshopをβ公開
結局Flashベースになった模様、テストドライブで試しただけだが、基本的にはOnlineアルバムに画像のフィルタ機能を加えたものな模様、試せた限りでは本当にフィルタを適用するだけなので、PhotoShopの名を冠するだけで完全な別ソフト. まぁ予想通りと言えば予想通りかもしれない、オンライン画像管理サービスの補完材としては有効な路線と言えるが、現状ではそれ以上の価値はあるまいというトコロ.

Adobe、確か記憶違いでなければコンシューマ向けのソフト売上では世界第二位 (少し前の情報だが) の企業だったと記憶しているが、主力のデスクトップ向けグラフィック製品以外に目を向けると色々考えさせられる事が多い.

思い出す限りで列挙するとPDFの基幹業務向けのサービス事業の強化、マクロメディアの買収、主要パッケージのSaas化のアナウンス、そしてAdobe AIR. それ程確かな情報を持っている訳では無いが、PDFは結局オープンソースのライブラリを使用したものが主流になっている気がする、PDFの主要用途では企業内での使用がメインでそれ程クリティカルな運用を要求される個所が少なかったからかもしれない. またAIRはここ暫くスクリプト熱が復活したのでSilverlightと共に関連情報を調べてみたが、リリースされたというのに盛り上がっている人種はせいぜいそれ系の分野の「プログラマ」という所しか情報は見つからず、面白いのは関連するデザイナーなどの分野では殆ど話題になっていないという所か. また心成しか半年前程リッチクライアントの為のRIAという分野自体が盛り下がっているようにも見える (まぁあくまで主観だが).

AIRを思い返せばここ暫く似たようなものが色々出ているなぁとも思う、Silverlight、VistaガジェットにGoogleガジェット、確かYahooも作っていたような(正確にはそれ系のベンチャーを買収したのだったと記憶しているが) 結局の所API戦争、似たような状況はかつてWeb3Dとか言われた時代にそれ系のオーサリングツールが乱立したり、Flashがまだメジャーで無かった頃はやはり雨後の筍のごとく2Dオーサリングツールが出ていたと思ったが、あれらは何処に行ってしまったのだろう? ;-)

RIAについて言えばプログラマ以外の層にアピール出来ていないのが面白い、極端な言い方をすればHSPにすらその辺の裾野へのプレゼンテーションは劣っているとも言える.

またgoogle、ここ近年発表したgmailやweb上でのスプレッドシート、google earthに最近はgoogle gear、いずれも「あのgoogleが」と大々的に発表され1年後には大した結果が出ず「それなり」の存在となっているのが興味深い、そういえばGWTは何処へ行ったのだろう.

これらはソフトウェアの開発という本質と安定期に入った企業の経営・維持における経営戦略という観点では非常に興味深い、そこから一貫性のある戦略も確かに見て取れる、しかし結果は余り芳しくないようにも思え、一般的な印象でのソフトウェア企業 (ソフトを"主力製品"として作る企業) に寿命はあるのか (無論企業が倒産するという意味では無く、収益の内訳が変わってくるという事) スケーリングの問題点と安定した収益のモデル、周辺規模の増大とそれに伴うコスト増の課題等の観点から興味深い.

1エンジニア職としては多少複雑な思いを感じる部分もあるが、何とも何とも、それ以外の視点ではまぁそれなりに色々面白いのも事実 ;-)

---------------

思う所あってActiveScriptHostで使うIDispatchExの実装を行う、相変わらず悶絶するか正気を疑いたくなる程面倒なのだが、上手く作ればTypeInfoとかも無くて済むし、IDLなんかも書かないので良いのかもなどとも思ってみたり.

しかしIDispatchよりはJScriptとの相性が良いとは言え、言語そのままのクラスじゃないのでinstanceofに反応しない辺りはやはり何とも言い難し X-<


2008/3/26


少々雑談で話題に挙がったので、久しぶりに使っている言語処理系のコアに手を入れる. この部分を触るのは1年ぶり位になるが、意外とちゃんと覚えているものだなぁなどと思ってみたり.

それはさておき実装したのは単体のdo文とdo及びループ(for,foreach,while)でのexcept節の導入、こんなカンジ.


do{
    fo=open("test.txt");
    if(!fp) break;
    ...
}
//breakでここまで抜ける

とか

while(i<10){
    ...
}except{
    //breakが呼ばれるとここに来る
    print("loop break");
}else{
    //ループが最後まで実行されるとここに来る
    print("loop done");
}

else節 (詳細はPython参照) と違い上で導入したexcept節は(アセンブラの)コンパイラ化する場合にはJavaのラベルつきなどの多段階 break/continueとは余り相性良くない (例えば2段階continueする場合にも内側のループのexcept節を呼ぶ等) のでランタイムを出来るだけ軽減した従来型の所謂コンパイラ型言語のデザインの際には考えた方が良いかもしれない.

まぁこういうのはあっても良く無ければそれはそれで何とかなる機能、予約語が増えるのは嬉しくないが、自分的にはそれ程頻繁に使う単語では無いので、取り合えずは組み込んで様子を見ましょうという所.

しかし久しぶりに処理系を触って思うのは、処理系だけ作っていた時にはあんなに悩んでいた細かい言語仕様が今の自分には割とどうでも良いものに見える事だな、多値とかクロージャは無いと流石に困るけど、よくそれ系のアルファギーク予備軍的な記事に載っているような枝葉末節には殆ど興味が無くなっているのが実に面白い.

まぁそれが良いのか悪いのかはともかく (ある意味ではそういう部分が様々な言語パラダイムを進化させるので否定する意図は無い) 立場が変われば見える個所が変わるというのは非常に興味深い所ではある、誰かさんに言わせれば結局そういう所にプログラムを作る上での本質は存在しないのだ、などと容赦なく突っ込まれてしまいそうだが(苦笑)

---------------

幾つか思う所があるので、もう少し言語処理系にも手を入れる予定、無論ペイントソフトも平行してやるのだが、一時的に優先順位低下とする.

2008/3/22 その後の顛末


ボヤ騒ぎの件、本日朝から現場となった部屋の住人が各部屋を周っていた. とにかく恐縮し平謝り状態だったが、こういうのは見ていて非常に気の毒になる. 自分の感覚上こういうのって終わったら何も感じないのだよね、というカンジ. 口先だけ反省して繰り返される可能性がある事例はイラつくが、火事を引き起こす事態は自身に被害が発生するから別段糾弾しなくても常識的に避けると予想され、それでも人間は不注意を繰り返す以上何%かの確率で常に自分自身が火災に巻き込まれるケースは常に発生する.

また今回の場合鍋の空焚きであり慢性化し得る要因とは考え難い、とすれば要因として各個人の個体差的要因は比較的低いと考えられ、そんなものにいちいち目くじらを立てていても何ら意味は無く、今回の事態にこれ以上意識や感情を割くだけ単に無駄でしかない、無論ボヤで済んで被害が無かった為何ら実害が発生していない事が大きい.

として考えると僕がその住人に対し腹を立てる理由は何ら存在しないのだが、そういう考え方の方が稀な為、社会通念的にはこのようなリアクションを取らざるを得ないのだな、などと考えながら対応すると非常に痛々しい気持ちになる、何ともはや:-<

# なお火事になった時最初に考えたのは「これで今のPCに入っているソースコードが失われる事態になったら(大汗)」という所だった、ある意味今の金銭的な全財産を失うより大きいかも、などと考えてしまうのは何とも何とも、職業柄と思いつつ、普通の感覚の側では少々溜息も出る(苦笑)

---------------

テクスチャを作る上で必要なのでスタンプツールを実装、そろそろ足りない機能を探す方が難しくなってきた:-P

2008/3/21 消防車が来た


部屋でプログラムを書いていた所何やら外でサイレンの音がけたたましい、何事かと思って窓から首を出すと同じマンションの住人も何人か首を出している.面前には数台の消防車が激しく往来し、路上には大量の野次馬. どうも近所で火事の模様、首を出していた下の階の住人と「何処なんでしょーね?」なんて会話していた所、階下から「いや隣ですよ」との声

「はい?」

、、、そういえば先程から何やらコゲ臭いどうも斜め下の部屋だった模様.

半ば混乱状態で下の階の住人と「どうしたもんでしょうね?」などと会話、数分間あたふたする、ふと冷静になってマンション火災の場合火は上方に回るので外に出た方が良いと判断し、急いで着替えて外へ.

外では消防隊や警察官が慌しく階段を上り降りしておりホースが一面に張り巡らされている、しかし肝心の住人留守らしくなかなか連絡がつかない. 結局鍵屋がロックを開けて突入した模様、火元は鍋の空焚き、幸い煙は凄かったもののボヤだけで済んだ模様で事なきを得る.

TVの火災の報道などを見るにつけ「冷静に逃げたら良いのに」などと思うのだが、いざ自分の身に降りかかってみるとなかなかそのように行動できぬものと痛感、ボヤだったから良かったものの、既に出火していたら、思考停止している数分間で逃げられなくなっていた可能性もあり余り笑えない.

、、、思いがけない事で、不謹慎ではあるもののある意味ネタが増えたという所、これより珍しい体験は近所に黒焦げの人間の死体が落ちていた(所々皮膚が裂けて赤色) 位じゃないかしらん (ちなみに警官にすぐ非常線の外に出されたのだが、見たカンジでは闘士状姿勢 (焼死の生前反応) を取っていたので生きながら焼けた模様、しかしその後のニュースにも取り上げられず、なんで近所に転がっていたのかは未だ不明のまま:-<

まぁ生きていれば色々あるものですね(笑)

2008/3/17


中点変位

基本的にはこれを2次元に展開すれば良いのだろうけどね、実行効率が、、、:-< (※1)

、、、何をやっているのか分かる人にしか分からないネタだなぁ(苦笑)

※1) 同日19時追記

、、、と思ったが意外に簡単にできた(苦笑)
スクリプトを使った実装でも十分実用的な速度が出ているのでC++なら間違いなく問題無いだろう.

この方式 (中点変位) を用いたものを実装するのはタイル素材を作る為であるので、そういう意味では悪くないカンジ;-)
エフェクト用としては調整がやり易いのでPerlinノイズを用いたものについても実装予定.

---------------

以前は「波の収縮」よりも「多世界解釈」の方が違和感が無いかと思っていたのだけど、近年行われたフラーレンを用いた干渉実験で温度を上げていくと徐々に干渉縞が消えていくらしい. 統計的な実験なので温度上昇に伴ってアナログ的に遷移するのか、相転移的に遷移するのかは不明だけど、結局の所温度を上げる事で第二法則により外部に流出する情報が増える事で量子的性質を失うそうな.

なんかそうして考えるとぼんやりと広がっている存在確率の弦のようなものを引張るようなイメージなのかなーなどと思ってみたり、んで熱平行の状態が定常化したらまたぼんやりとした分布に戻ると、何かそういうイメージで捉えると全ての物体の干渉はエントロピーのやり取りを発生させるワケで、物体の検出というのはそういう行為であると認識できるので「波の収縮」も結構自然な話のような気がしてきている今日この頃.

まぁ割とどうでも良い話、実際計算して証明と実践を伴わない内容などどんなに小難しい事を言っているように見えてもそれは全てヨタ話と同等の価値しか持たないワケであります(苦笑)

分かる人にしか分からないネタだけど、周囲にもこの手の話ができる人は少ないので、たまには発散してみたいじゃーん、みたいなそんなロバの耳.

---------------

なお書き忘れてたけど今年の確定申告は早々に終わりました(^^)v

2008/3/16

ちとアルバイト、しかし英文の文書を書くのは10倍の分量のプログラムを書くよりも疲れます(パタ

まぁ日本語の文章を書くのもプログラムを書くのの倍位は面倒なんですが(特にメールの返事とか、本当は全部電話で代用したい所ですよ(笑)

最近は結構公開するのはシビアなネタが多くて日記に書けないのが少々辛い所.

# さて、この臨時収入でPS3を買うべきか否か?(えー

---------------

プログラムは例の定規機能をペイントソフトに組み込んでみたり、プロッタのアナグリフにモノクロモードを付けてみたり、なお定規機能は雲形・自在定規を実装しなくても楕円定規に回転・拡大縮小をつければこれと曲線機能でほぼ代用できる模様につきこれらについては検討予定から除外.

久しぶりに自前の言語処理系のコードをいじるついでに古い雑用ライブラリを使っている個所を現在使っているものに置き換えてみたり、しかし昔のコードを眺めてて面白いのは昔作った (と言っても数年前だが) ライブラリに比べて現在使っているライブラリのデザインの方が遥かにシンプルで単純なものになっているという所、これは進歩しているのかどうなのか(苦笑) あながち本質はそんな小難しい所にあるワケでは無いという所なのかなぁなどとも思ったり.

フィルタを実装していてGDIで図形描画するとアンチエイリアスがかからずモノによっては見た目が安っぽくなるのが気になったので、アンチエイリアス&RGBA合成付き描画のみをサポートする簡易版GDI+のようなものを作成中、流石にアンチエイリアスの為だけに1.5MBもあるインストールされているとは限らないライブラリを前提にするのも如何なものかというカンジであるし、Alpha付きの32bit画像を作成する場合にはGDI+では問題がある(入力としてはRGBA付き画像を扱えるが合成結果はRGB24bitの単位でしかアテにならない) という事もあり作っておいた方が良かろうという所.

それが終わったら多分自前のスクリプトで使っているグラフィック部分をこれに置き換える予定なので、今暫くはペイントツールは小休止. といっても後はフィルタ機能を一通り全部実装するだけなので、ダラダラやって行こうかと思っている ;-)

---------------

なおKOJIさんも色々忙しい模様、遂にsaiが発売になって20年前にPCの線の品質にブチ切れて以来20年ばかり道具作りに専念したという話だったので「で、とうとう望みの画材が完成して何か絵は描いたの?」と聞いた所「全然」との回答、さもありなん(笑)

色々シビアな話も多いので気を遣うのだが、この位なら良かろうという所で ;-)

2008/3/9

一人で満足しているのもアレなのでアナグリフ表示に対応した簡単な3Dモデルビューアなんぞ作ってみる. もう寂れて久しいページなので見ている人がいるか、更にその中に3Dをいじれる人がいるかも疑問ではあるワケですが、そういえばアナグリフに対応した3Dのモデルビューアとか余り聞かないよね、という所で一応junkの方に置いてますというカンジ ;-)

こんな具合、静止画では表現できないが、クルクル回すと更に立体感が上がって良いカンジ.

現状WavefrontOBJ &TGA形式のテクスチャのみですので、メタセコ等でのコンバート要. 立体映像を体験した事が無い人は騙されたと思って透明下敷きを買ってきて見てみると幸せになれるかもしれません、2枚で300円程度だし、、、無論幸せになれなくても保証はできませんが(^^;;;

というか一番興奮してるのは僕自身かもしれません、凄ぇよ、モニタから生えてるよ!!みたいな (全く以ってガキですねorz

---------------

糖尿病とアルデヒドの関係

ちょっと前友人との話題に上がったので調べてみた. 以下いずれもwikipedia内.

アルデヒド

グルコース

糖尿病

どうやら糖尿病は血液中の糖代謝異常により血中の糖濃度が慢性的に上昇、それに伴いグルコースの平衡状態のうちアルデヒド基を持つもの(上記グルコースの頁の構造及び化学的性質-還元性の部分) と生体を構成する蛋白質内アミノ基との反応により慢性的に組織を侵してゆく病気だそうな.

という事でアルデヒドがそのものズバリの原因ですね、言ってみれば生きたままジワジワと体がホルマリン漬けになって行く(悪趣味な表現)ようなカンジでしょうか. ただグルコース内のアルデヒド基なんで、やはりお酒を飲んだ時に発生するアセトアルデヒド臭とはまた別な気もするんですが(^^;;>例の会話の内容

# こういう所でも化学式で見るとほんの少しだけど見方が広がるのは楽しくて良いですよね ;-)

 

2008/3/8 シンプルな面白さ.

ペイントソフトはお休みして自作の行列処理言語のプロッタに立体映像(アナグリフ)モードを付けてみた、というか付けようと思ってて半年程すっかり忘れていたのだが(笑)

赤青メガネを持っていないとさっぱり分からないのだが、、、凄いよ、本当に飛び出してるよ みたいなそんなカンジ.

ちなみに赤青メガネを作るのが面倒な場合は文房具屋に売っている赤と緑(not 水色)の透明下敷きが思いの外良い具合で両方の画像をカットしてくれます(※1). というか以前セロファンで作ったメガネより綺麗に見えるorz

問題は下敷きを顔に当ててPCをいじってる姿は他人には見られたくない事ですが.

まぁとは言え非常に素朴で馬鹿らしい程単純なのだが、そこに何とも言えず嬉しくなってしまうようなそんなカンジ、というかPCって色々できるようで、結構限定されたものなんだなぁなどとも実感してしまいます. ただ問題はあまりやっていると目が適応してしまい、片方の目では緑が、もう片方の目では赤が異様に強調されてしまうようになったまま30分程目が元に戻らない事ですが(※2)(苦笑)

※1) web上で公開されているアナグリフ画像も非常に綺麗に見えるので買っても損は無いと思います ;-)

※2) 実は見過ぎてちと頭が痛くなってます(馬鹿

 

2008/3/6

確定申告の書類をまとめようと思ったがどうもやる気が出ないので定規のアルゴリズムのテストなどやってみる

こんな具合 (実際のプログラムコード)


【平行定規】

【集中線定規】

【円定規】

 

雲形・自由定規はちょっとアルゴリズム的に開始点のヒットテストで途中から選択できないと駄目な気がしたので見送り、というかどの機能も自分的には使わないのですが、描画がマウス通りで無く定規で規定されるのは、感覚的にどうかと思ったものの、思ったよりは違和感も少ないカンジ.

別段面白みがあるワケでも無く、個人的にはあっても良いし無くても良いようなそんな具合. なお上のサンプルコードは自前言語で書いているので、他の環境での実行は常識的に考えて不可能、まぁ単純なものなのでJavaScript分かる人なら読めば分かるでしょってカンジで :-P

つまりはここで「つまりお前は何がしたいんだ?」と言う具合の間抜けなカンジ、みたいな.

 

 

2008/3/5 グラフィックソフトはアルゴリズムの品評会ではござらぬ

シームレステクスチャの生成機能と選択部のべベル機能 (PhotoShopのべベルとエンボスに似た機能)、選択のタイリング等の実装、どれもこれも素材作りには便利だけど、絵を描く本質には全く関係無い.

何処に行くやらというカンジだが、テクスチャライザの実装でバンプも付いたし、3Dのテクスチャ作成などにはよく泣かされたので、個人的にテクスチャ作成に便利な機能を乗っけてみましたと言う具合. ただ余り散漫にはしたくないが.

まぁ一通りの十得ナイフというカンジでしょうかねぇ;-)

# 誤解無きように書いておきますとここの内容はSYSTEMAX社のsaiの開発やロードマップとは全く無関係なのであしからず ;-)
saiの内部のアルゴリズムなどはある程度聞いて知ってますが、こちらのソフトは別の個人が単なる話のネタもしくは酒の肴程度で作っているだけの事です :-P

 

2008/3/1

何となく解像度変更のアルゴリズムを従来のバイリニア(+面積平均)に加え、バイキュービックを実装、双三次と言うからスプライン補間を用いた拡大処理かと思っていたのだが、調べてみるとどうも拡大・縮小ともにsinc系の近似関数を用いた窓関数による信号の再サンプリングっぽい.

まぁ取り合えずそれで実装、実装前はバイリニアだけで良いかと思っていたが実行してみると結果に明らかな差がある、絵の質にも依るが+-20%程度なら殆ど気にならず、最終出力としては50%近くまで縮小しても、バイリニアの場合気になってた微妙なボケがほぼ解消されるカンジ. まぁとは言え自分も今回の実装をするまでそんなに意識してたワケじゃないので、実はユーザー視点なんてそんなもの拘っているのは当事者だけかもしれない ;-)

しかしこのテの実装はアルゴリズムが間違ってても一目でわからないケースがあるのがきつい所、ぱっと見それでも良いような結果が出ていて気付かなくても、正しく実装した結果と比較すると明確に違いが出てくる、というか見事にそれで1時間程ハマりました X-<

# 3月に入ったのでそろそろ一時中断して確定申告関連の作業に入ります.

# 雲模様フィルタの実装について考える、タイル状に並べるにはFFTによる周期関数を想定して制約条件の元係数を乱数で求めて逆DFTで良いのかな?まぁやってみないと分からないけど(^^;;




過去の雑記
2008年 2月
2008年 1月
2007年 8月〜12月
2007年 7月
2007年 6月
2007年 5月
2007年 4月の雑記はありません.
2007年 3月
2007年 2月
2007年 1月
2006年 12月
2006年 11月
2006年 10月
2006年 4月〜9月の雑記はありません.
2006年 3月
2006年 2月
2006年 1月
2005年 12月
2005年 11月
2005年 10月
2005年 9月
2005年 8月
2005年 7月
2005年 6月
2005年 5月
2005年 4月
2005年 3月
2005年 2月
2005年 1月
2004年度


メールアドレス収集ロボット対策の為メールアドレスはHP上に記載しておりません、
ソフト内のドキュメントには記載しておりますので、御用の方はそちらまでお願いします.
since 2003/10/04, Y.Ume/Tabo