日記緑ログ

2006/03/03 ~ 2006/03/29

目次

戻る

Blog

文字コードのどうでもいいような話。

[Create: 2006/03/03 21:28] [LastUpdate: 2006/03/03 21:51]

アー ヴ文字がTRONコードに含まれていたりして、さて、こういったものの文字というものはいったいどこまでが含まれてOKで、どこら辺りからだめなのかとい うことは議論の対象になりそうですが、例えば私が中学のころに暗号等と称して怪しげな文字体系をこしらえたことはありますがこれはまったくごくごくローカ ルというよりも極個人のものでまったく公用性が無いので一般にこれはだめでしょう。そもそもそういう遊びはかなりの人が体験するのではないでしょうか。鏡 文字とか。

私の考える基準では公文書に記載された文字ということになりそうですが、ここの公文書というのは公に公開された文書であって、なんらか の議事録であるとか公の出版物(これも議論を呼びそうだが)、あるいは歴史的に重要な書物、古典(このあたりもさらに議論を呼びそうで日記とかどうなんだ とか)そのあたりがあれでしょうが、草書でわけがわからん。点が多いのか少ないのかとかそういうのは専門家に任せるとしてそんな気分ですね。

そういう観点ではアーヴ文字もOKでしょう。いやどうなのかという気持ちはもちろんありますが。

Unicode が欧米中心のチームであるゆえか、西欧中心に色々と特化されているような気配があるとかなんとかいう批判もあるとして(ひきかえアーヴ文字は極日本的だ が)、とりあえず意味的にも歴史的にも(当事者に)ほぼ明白な文字から入れていくのはまあ当然でしょうな。失われた母音とかあったとかないとか言うことは 外の人からはわかりづらいのでね。

アラビアとかタイとかヘブライとかわれわれ日本人からみて危険な、取り扱いが難しそうなものも当事者にはきっとそれほどでもないのでしょう。恐らく。

じゃあ漢字はどうなんだというと極悪な文字数があるわけで、すべてを把握している人はいないと思いますが(世の中はなんだかわからないが居ないだろう)これは米国の人たちがよってたかってというよりも中国を中心として漢字圏の人間が洗い出すべきなのでね。

ま あどうでもいいんですが、そういえばと思い出して魯迅の故郷にはチャーという動物が現れますね。これは中学あたりの教科書なんかにも出ているようなものな んですが、チャーは[ケモノヘン+査]という文字でこれは魯迅の創作文字ということです。恐らくこの文書の引用以外で見ることは無いと思いますが辞書にも 載っていたりするそうです(ただ私は見たことがない今昔文字鏡にも無い)。じゃあこの文字は一般の文字コードには含まれているのかどうなのかということで見てみました。ええ。そりゃあもう見ましたとも。

JISではしっかりとありました。JIS X0213ですが。2-80-42 にしっかりとあります。Plane2なので第四水準ですね。

じゃあUnicodeはどうなの?

いやありますよ。ありますあります。U+7339 です。

Ძ としても通らないか。とにかくあります。ただ標準でフォントがありませんでしたがね。

いや恐らくこのあたりが文字としての分かれ目でしょうね。極ローカル文字セットは外字扱いというかUnicodeにもそういうコードポイントもありますしね。

Shift_JIS-2004テキストビューア2

[Create: 2006/03/04 20:51] [LastUpdate: 2006/03/04 20:53]

Shift_JIS-2004テキストビューア2 をこちらにおいておきました。

TrueTypeフォントを使えるようになっていて.NET Framework等も使っておりませんので素のWindows 98でも動くのではないかしら。でも95だとOSR1まではIE4以降を入れないと動かないんじゃないかしら。試してはいないんですけれどね。

wxDev-C++の怪しい挙動

[Create: 2006/03/08 19:10] [LastUpdate: 2006/03/09 18:29]

有名なのですがBoxSizerをデザイナーでポトペタしてやると

WxBoxSizer1->SetFont();

のようなコードが追加されます。

これはとてもとても有名なのでほうっておきます。報告もあったようなように見えるので、次のリリースでは直っていると期待しましょう。しています。

次にマイナーなもの。

Frame やDialogではMinGWでは出ないのですが、BCC(Borland C++ Compiter)では面白エラーが発生するコードを吐きます(VCは最近使ってなくて入れてないのでノーテストですが多分ならないんじゃないからしら恐 らくBCC32だけでしょう)。

いや、実際テンプレートに入っているだけですから直せばいいんですが

DECLARE_EVENT_TABLE();

のセミコロンでエラーになるんですね。こんなもんめったに気づかないと思うので各々かってに消しましょう(本家に報告するまでも無いと思って放置しています)。

ついでに、MinGWだとコンパイル+リンクがため息が出るぐらい時間がかかります。いや正確ではないので言い直せばため息が十回ぐらいでるぐらい時間がかかります。プリコンパイルヘッダを使えなかったりするからでしょうかね。

リンクについてはライブラリの構築をMONOLITHICでやれば早くなるんじゃないかしら。

2006-03-09:追記

MONOLITHIC にして試しましたがやっぱりため息は止まりませんでした。そもそもコンパイルに時間がかかるのですがリンクもやっぱり時間がかかります。コーヒーを淹れて 飲むほどの時間はありませんが牛乳を飲むぐらいの時間はあります。いや、そんなもんたいしたこと無いぜと思うのですがFrameなんかのデザインをしてい ると結構致命的な感じです。

RADだからいいじゃん? とか言われそうなんですがレンダリングが完璧ではないので、いじったら実行して確認というステップをぷりぷり踏むことになるのです。パラメータの指定と結果に慣れればコンパイル回数は減ると思いますけれど。

つ いでに書いておきますがデザイナーでデザインした座標やサイズはまんまコードに落ちます。Sizerとか使っていないやつ用だと思うのですがそれはいいと して、このまま使うとStaticTextなどで伸びてくれません(日本語リソースで表示すると切れたりする)。このあたり本家フォーラムだかでも話題に なっているような気がしますがTextBox等ではそうもいっていられなかったりしてちょっと悩むところです。

とりあえずはStaticText等を使うときはDefaultSizeにすることをお勧めします。

ついでにwxT("")を_("")にするオプションがあるのですがコントロール名はしなくていいんじゃないかとかいう気もします。

他のデザイナ使おうか迷います。どうせIDEとして使ってないし。むしろ大体書き方は分かったから手で書いたほうが早いかもしれない(以前はPanelを張ったりしたのが失敗だったようだPanelは複数使ったら駄目ということのようだが情報求む)。

人型機械

[Create: 2006/03/09 19:27] [LastUpdate: 2006/03/09 22:49]

人型のロボットは以前から研究されていてP3あたりが出たあたりで二足歩行の技術が飛躍的に進歩しました。重心を上に持っていき、歩行時に前方に傾けるのがポイントだとか。

現在の間接の駆動はどう実装するのが普通なのだろうか。ギアをかませているのだろうか。それともワイヤーを

↓固定点

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

□□□□□□□□□□□@| ←@は固定点でワイヤーは外側を自在に動く

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

モーターで巻きつける

※□は空白だと思っていただきたい。以下同じ

よ うな装置だろうか。これは間接の動きに近いために動きはいい。実際に魚でこういう駆動方法を使ったものが数年前に映像で流れていたが面白いように動いてい た。バリエーションはあるだろうがこれを腕だとしたら二組か三組か用意し、一つか二つか絞れば腕は曲がるわけでそうでないものを絞れば腕は伸びるはずだ。 モーターの位置は中間でもかまわない。@を両端につけてモーターをごりごりするわけだ。

ただ、高速性はあまり期待できない気がする。でかいプーリーにワイヤーを巻けば可能かもしれないが力は出ない気がする。

以前から言っているように電磁石を使った方式はどうなのだろうか

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

□□□□□□□□□□□□□----------------------------------

□□□□□□□□□□□□□----------------------------------

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

のように配置してリニアモーター的にシュインとスライド

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

□□-----------------------------------------

□□-----------------------------------------

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

させてやる。ワイヤー駆動と同じように逆がわにもつければOKだ。干渉はするだろうが内部に抱きかかえるようにすれば(つまり太いパイプに細いパイプをいれるようにすれば)それほどでもないんじゃないだろうか。どうせというかボディは磁性体を使わなければすむのだし。

こ れだとガスや、油圧に頼らず電気駆動のみで可能だしパワーとスピードの制御も可能なはずだ。電圧で調整できる部分もあるし、むしろ対(対は三本一組あるい はそれ以上も含むが)の逆側に力を掛ければゆっくりとした動きにすることはできるはずだ。というか人も筋肉をそうやって制御しますよね?

問題はパワーと干渉だがバッテリーもパワーアップしているので可能かもしれないと思っているのだがすでにあるのかもしれない。

これだと走ることも容易にできそうだと思っている。

QRIOが走った!とか言ってたりしますがもっといけるんじゃないかなあ。知らんけど。制御が難しいのは分かっているんだが。

走るときの制御とか言われると困るんだが人間の場合着地地点を微妙に前後左右に変化させてバランスをとっているんだが(飛び上がった後でも)それって自分の今までの経験を元にしているのでそのあたり大変だろう。

巨 大ロボットとかいうやつは(アニメだったりするが)、そういうのは鉄の塊だとか言う以前に兵器としての扱いでおよそミサイルと変わらないのが問題だと思っ ている。ああいうのを見ても面白くないのはそのあたりにあるのかもしれない。が面白いと感じる気持ちもわかる(わかるだけで面白いとは思っていないのだ ぞ)。要するに生身で殴り合ってるか(あるいは殺しあっているか)、ガワをかぶせて殴りあっているかの違いしかない上に回りに及ぼす被害は甚大だし、なに かいいことはあるのだろうか。人は痛くないとかいうことはないようだし(ものによるが)。

つまり私が求めるロボットとか言うものはそうで はなくて、人そのものを求めているのです。それには動き以外の課題もがっしりあってそっちのほうが問題だと思いますが『健全な精神は健全な肉体に宿る』の 言葉通り肉体が出来上がってからでなければ精神もうまく発達できないと考えていますのでそれは置いておきましょう。

日本がロボットの先端でいけて いるのは文化の違いというか思想の違いにあるという話があります。日本の人がカラクリ人形だとかお茶くみだとか作ったり、昔の刻時に対応する昼の長さと夜 の長さが季節によって異なることに対応した(一年周期で変わる)怪しい時計を作ってみたりするカラクリ好き民族ということも関係するかもしれませんが、東 洋と西洋では東洋は人の技術を磨くことで上達する(筆とか箸とか)ものに対して西洋だと誰でもそこそこに使える(フォークとか拳銃とかという例があった) という心もあるようですが、なんだか西洋は人以外の心はどうなのか、東洋は何でも心があるのですという違いもあるとかないとか。

日本では(他の国 は知らないから日本だが)空から雲から石にまで心があるとか動物にはもちろん心と意思と精神があってワープロには樫山さんと命名するなど普通だというので すが、西洋ではそうでもないとか言うことがあるとかないとかいうそうです。いや、ギリシア・ローマ神話とか北欧神話とか見たらそうでもないだろうと思うの ですがキリスト教ではどうなんだとか言われると唸るようになりそうです。

脱線しましたが求めているのはそういうあたりでファジーなロボットと言っ たところでしょうか。まあいいや。ロボットに表情を持たせるとか研究はごりごり進んでいますが、良くあるパターンとしてガワをやわらかくするというのがあ ります。甲殻生物ではないので柔らかいというのは重要です。シリコーンとかその他ゴムで表面をコーティングするということですね。たんぱく質でできればい いのでしょうが腐りますからね。難しいところです。

ちょっと前にシリコンで厚さ数センチだか持たせたとか言う話も出ていてそりゃあ熱処理が大変そうだと思った私はどうなんでしょうか。

熱処理はヒートパイプで逃がしてもいいけれど、どうせだったら水冷にして前進を血液のように巡らせれば熱も逃げるし体温もできるしでいい漢字じゃないかと思っているのですがね。

フォントのアンチエイリアス

[Create: 2006/03/10 11:57] [LastUpdate: 2006/03/10 11:59]

各種レンダラによるフォントレンダリング

とりあえず比較のサンプル画像を見ていただきたいと思います。

左の三枚はFreeType2でレンダリングしたもので、右の三枚はWindows GDIでレンダリングしたものです。

左 は上から埋め込みビットマップ、FreeType2のオートヒンティング+アンチエイリアシング、ByteCodeを用いたヒンティング+アンチエイリア シングとなっています。右は上が埋め込みビットマップ、フォントスムージング(アンチエイリアシングと同義、以下アンチエイリアシングと表記します)表 示、スムージング無しです。

サイズは16ピクセル(96dpiで12ポイント)。フォントは“MS 明朝”です。

ClearType、CoolTypeのようなサブピクセルを用いたアンチエイリアス処理ではありません(ちなみに最近だと携帯電話でもシャープなどがLCフォント.Cと いうもので使っているぐらい普及しているのだが万能戦士ではないので今回は割愛。どうでもいいが液晶はCRTに比べて四角ばって見える(アパーチャグリル はそうでもないかもしれないがシャドーマスクは三角配置なので丸く見える)ので液晶の人のほうが多分求めているでしょう。そうするとサブピクセルレンダリ ングしたいのだが、物理ピクセルと論理ピクセルが一対一でないと意味が無いのでやっぱり割愛しよう)。

Windowsは2000なので違うバージョンだと違う表示になりそうな気がします。またClearTypeを使うとまたがらりと変わるような気がしますがこのぐらいのサイズで、こういったヒンティングだと悲しいことになるかもしれません。

ByteCodeインタプリタをONにしたFreeTypeの表示はGDIと似通ったレンダリング結果になっていると思います。まあ当然ですな。ちなみに一番上の二つは埋め込みなものでまったく同じになっているのが分かります。

右の一番下は参考程度にしてください。このぐらいのサイズであれば普通のフォントにはビットマップが埋め込んでありますし、そちらのほうが見やすいでしょうから(一番上と比べること)。

FreeType2 のオートヒンティングは結構まともに動いているような気がします。『適』などの文字を見るとByteCodeを使ったものよりも見やすいぐらいですが、 じっくりと作りこまれたヒンティング情報にはやはり敵わないと思います(これについては別のフォントを使ってみるしかないでしょう)。

蛇足ですが美しいレンダリングをするので評判のMACとかAdobeとかでもByteCodeを使ってヒンティングするでしょうから多分そういう結果になるんじゃないでしょうか。多分。

私 感ですが、20数ピクセルぐらいからアウトライン+アンチエイリアス表示がいいような気がします。ビットマップ表示は30数ピクセルぐらいまではいいん じゃないかとか、グレースケール情報をもてればもっといけるんじゃないかとか思うところですが思うところですが、恐らく容量は逆転しますしアウトライン表 示で遜色ないレベルになるでしょうからそのぐらいでやめておきましょう。今時の高精細ディスプレイだと12ポイントで28ピクセルとか30ピクセルぐらい とるのも珍しくないのではないかと思いますが、そういうぐらいでアンチエイリアスはもりもり使うといいんじゃないかしら。これが3000dpiぐらいに なったらあんまり必要ないのかもしれませんがね(アンチエイリアスは中間を埋めるものなんじゃないかという考えですが、高精細でも使って悪いことは無いし 小さくても悪くないのでなんとも言えないのですが)。

ちなみに、液晶だともっと小さくても使うといいかもしれません。液晶なら。

ア ンチエイリアスがいいのは分かっていますが、『ClearType最高だぜ!全部のポイント数でかけたいぜ!』とか言っている人に惑わされず自分で判断す るといいでしょう。いや自分で使いやすいのが一番なので使いたい時はバンバン使えばいいんですが。強制したり、蔑んだりするのはやめましょうね。

P/ECE購入しました

[Create: 2006/03/12 17:23] [LastUpdate: 2006/03/14 17:34]

今更も今更、何年越しなんだという気配がぷんぷんしますが、P/ECE(http://www.piece-me.com/)を購入しました。在庫品で初回版だけどアクアプラスさん許してください。

P/ECEの次期版でないかなあ。CPUはもう少し慣れたアーキテクチャがよかったなあ。メモリは…まあこのままでもいいけど2倍か4倍ぐらいあるとうれしいなあ。そしてMMCでしょうか(笑)。いやもうこうなったら本体サイズが倍ぐらいになってもOKなんですが。

※P/ECEにMMCはまどかの世界を参照してください。

Shift_JIS-2004テキストビューア2 の縦書き対応しようとがんばり中

[Create: 2006/03/15 22:28] [LastUpdate: 2006/03/15 22:31]

くじけそうです……。

半角というかASCII領域あたりが。あたりが。つまりはそのまんまになるのですがWinGDIあたりだと横に寝るのですよね。どうなるのが正しいのだろうか。というかどう処理するべきなんだろうか。GSUBの対応がうんちゃらしているんだろうか。

実害といえば括弧表示がやたら変になるぐらいでまったく読みにくくなってしまうことぐらいでとても重大ですね。

Shift_JIS-2004テキストビューア2 の縦書き対応手抜版

[Create: 2006/03/17 10:49] [LastUpdate: 2006/03/17 10:52]

縦書き表示をつけてみました。

どうもFFh以下の文字とそれより大きいコードポイントの文字が馴染みません。VerticalLayout用のものをきっちりやらないとまずいんですが読めないことは無いと思うのでこのぐらいで。

ビットマップ埋め込みでもアンチエイリアス表示するようになっています。

Winny監視強制終了ツール

[Create: 2006/03/18 15:00] [LastUpdate: 2006/03/23 10:06]

Winnyを起動できなくするソフト「ウィニーストッパー」

みたいな割とアイデア勝負のくだらないソフトが大々的に発表されるという現実が物悲しいところです。まあこれ自体は無償だとしていますけれども

トレンドマイクロ、新ウイルス対策ソフトにWinny削除機能

のようなものもあって(これは今までの製品に+したものですから当然有償)、これはいかん。いかんいかん。ということでなんとなくやっつけ仕事をしてみました

Winny が起動したら消すだけです。それだけです。ただし、もしかしたら何か別のソフトを終了させてしまうかもしれません。起動する際には十分気をつけてくださ い。まずはデータを全部保存していったんすべてのアプリケーションを終了させるなどしてから起動させるといいんじゃないでしょうか。

なにがあっても責任は取れませんので大事なデータやなにかは大切にしてください。

これはウィルス対策ソフトとはまったく違うものです。本来であればこのようなものは不要なはずです。

Winny は技術的にすばらしいソフトなのですがどうも残念なニュースばかり飛び交っており世間には誤解ばかりばら撒いているようです。私はWinnyをはじめとし たP2Pという技術に期待をもっていますので誤解はできるだけ避けたいところですし、できればもっと有意義な事に使って頂いてもらいたいと思います。

まあどうでもいいか。

ダウンロードはこちら

----2006-03-23

ちょっとバージョンアップ。

詳しくは履歴を見て欲しい。

一応付け加えておくとこのソフトはポストWinnyという立場で製作された同等のソフトShareも強制的に殺すようになっている。

雑記

[Create: 2006/03/20 19:36] [LastUpdate: 2006/03/20 19:47]

トラックバックを頂いたがトラックバック返しは不毛な気がするのでそこらへんは残念ながら遠慮させていただきたいと思います。

さて、トラックバックが文字化けしている。いや文字化けはまあいいがどうも元はEUC-JPのようだ。一方DoblogはUTF-8固定で処理するようだ。まあ色々問題はあるような気がするが文字コード変換ぐらいしろやという意見ももっともな気がする。

ただRSSなりなんなりはUTFシリーズのエンコードをするのがスタンダードなはずで、blogだろうがwikiだろうが、xhtmlが基本の連中もよくよく考えるとXMLなわけでやっぱりUTFで処理するのが妥当な気もする。

という話はさておき、掲示板は捨てたのですが(つまりデッドリンクになっているはず)どうもあほどもがそれでも掲示板に書きっぱなしなので掲示板が消えない気がします。どうでもいいか。

KillNyのShare上での配布

[Create: 2006/03/27 18:26] [LastUpdate: 2006/03/27 18:49]

KillNyをP2Pネットワークファイル共有ソフトであるところのShareを利用し配布してみようと思います。

キー情報

[Tool] killny20060323.lzh higamSU1kgvTZbx 30,420 4bd493e278c396e8d27bd8ec74daaf5d6cb90ac6

まずなぜShareかということについて説明したいと思います。

 KillNyのアーカイブはサイズが30kByte程度であり、BitTorrentのような形式での配布には不向きです(各種ノード情報のほうが大きくなるなどといった冗談のような状態になりかねない)。

 Winny は認知度等の問題により十分な拡散が見込みにくいこと、トリップ認証の強度難のためにとりあえず見送りました。またネットワークも1系と2系、クラックも 含めるとさらに増えますし、その全を起動しっぱなしという負担は大きいと感じます(少なくとも拡散するまでは起動していないと意味が無い)。

 BitTorrentは巨大ファイルをよってたかってダウンロードするのに適しています。例えばゲーム等の体験版とか、オープニングデモ等の配布には最適でしょう。しかし今回はファイルも小さく、専用サーバーも独自ドメインもなーんもない状態ですから残念ながら却下。

 WinMXやらeDonkeyのようなネットワークでもいいのではないかと思いますが認証が難しいので却下(ハッシュで認証するしかないだろうけれども)。また拡散に協力してくれる人がどのぐらいいるか疑問でもあります。

 掲示板型、Freenetあたりでも問題ない程度のサイズですが掲示板に張り付けるのも鬱陶しい気がしますし、Freenetはいいけど気軽に配布という用途にはイマイチ不向きな気がします(情報配信にはいいと思うのだが)。

 Shareは強制拡散が可能ですから適当にアップロードしてあげると自身はおさらばしていてもとりあえず問題ないことと、強い認証があるのでとりあえず選択してみました。

 別にこんなもんこんな配布の方法じゃなくても容量的にも問題ないのですが洒落気です。しかも起動したらShareもWinnyも強制終了させるのでどうにも悪い冗談のような気もします。

Windows NT Service での実行なんですが案の定というか無理なんですね。窓が取れないので。ただサービスの実現方法はわかったので何かの役に立つかもしれない。

Susie pluginで火遊び

[Create: 2006/03/29 18:40] [LastUpdate: 2006/03/29 18:55]

火遊びの意味がわからないとかいう突っ込みは不可。

Susieプラグインを一度ぐらいは使ってみておいたほうがいいんじゃないかと思い立ったのでなんとなく。

仕様も簡潔で使用は楽々ですな。

Unicodeは使えないけどさ(アーカイブ系だと困るかもしれないけどめったに遭遇しないという気持ちもある)。