Scalable Vector Graphics

仕事の合間を縫って自分用の3DImageViewerをC#で作ってたりしてます。や、今年に入って全然時間ないけどね!C#で作っているのは単に勉強も兼ねたいという理由だけで根本的理由はないです。まあ、今更MFCとか使いたくないし。
目的は読影ではなく認識結果のデバッグ用なのでお医者さんが使っているのとは大分違います。その違いの一つとして、認識結果や計算途中で算出したランドマーク等を画像の上に一緒に表示するとかしたい。認識結果を適当なファイルフォーマットに吐き出し、そのファイルをviewerで読み込み、フォーマットの記述に従って画像の上にマークをつける。そういう仕様が必要になりファイルフォーマットとかを考えていた。
つけるマークの形はせいぜい円とか矩形とかぐらい。適当なベクトルデータを記せれば十分ということでフォーマットを考えていた。そういえばC#ってXMLを簡単に読み込めたよなと思ってXMLで行くことにした。

・・・でさらに考えた。


「ベクトルデータをXMLで表現って、ひょっとして既に標準化とかされてないか?」


調べてみたらビンゴ。SVG(Scalable Vector Graphics:http://www.w3.org/Graphics/SVG/)という標準フォーマットがありました。すばらしい。このフォーマットをそのまま使わせてもらおう。さらに欲張って、C#で既に標準ライブラリがないかと思ったら流石に見つからなかった(^^; まあそのくらいは自分で作るか。どうせ使うのは直線と矩形と円くらいだし。


ていうかそれ以前にXMLをあんまり理解してなかったorz まずはその勉強からだな・・・。