当て逃げ

スポーツクラブの駐車場で当て逃げされた。修理費 9万円也。
あー、くやしいなあ。

CEATEC

先週の土曜日に CEATEC JAPAN に行ってきた。
個人的に一番面白かったのはやはり東芝ブースの Cellのデモ。
“Cell”の処理能力で奇妙に変身!? “デジタルかがみtype F”を披露――東芝

技術デモとしても見事だけど、「Cellを使ってどれだけ面白いことができるか?」という視点でみても素晴らしいデモだった。
これに髪型や化粧のバリエーション(ヨンさまヘアスタイルとか、きん肉マンメイクとか)を増やして、なんとかPS3で商品化してくれないかな?(ハーフミラーはどうするんだろう?)

SVGの謎

仕事でSVGの簡易レンダラを書いている。
んで、今、アニメーション周りの実装をしているのだが、 SVG仕様書の定義があいまいな部分が多くて困っている。

たとえば モーションパス。モーションパスは直線やベジェ曲線で指定したパスに沿って要素を動かすタグで、たとえば以下のようにすると長方形が直線(0,0)-(100,0)に沿って、右に3秒かけて移動する。
<rect width="10" height="20" >
  <animateMotion path="M 0 0 L 100 0" dur="3s"/>
</rect>
ここで、親要素のrectに transform属性によるアフィン変換がかかっている場合はどうなるか?
<rect transform="rotate(90)" width="10" height="20" >
  <animateMotion path="M 0 0 L 100 0" dur="3s"/>
</rect>
まず、このときの定義が仕様書に書いてない(ような気がする)。 しょうがないので、各種ブラウザの挙動をみると、モーションパス自体も親要素と同じアフィン変換がかかるようだ。てことで、上の場合には直線(0,0)-(0,100)に沿って、真下に矩形が移動するアニメーションになる。
たしかに親要素の影響をモーションパスが受けないと不便そうなので、納得がいく挙動ではある。

では、親要素のアフィン変換自体を動的に変更させるとどうなるか?
たとえば以下は animateTransformというタグによって、親要素のtransform属性を上書きする例である。親要素のrotateの値が子要素のanimateTransformタグによって90から0へと変化していく。
<rect transform="rotate(90)" width="10" height="20" >
  <animateMotion path="M 0 0 L 100 0" dur="3s"/>
  <animateTransform attributeName="transform" type="rotate" from="90" to="0" dur="3s"/>
</rect>
この場合も当然仕様書には書いてない(ような気がする)。
Adobeのビューアの挙動をみると今度は モーションパスは親要素のtransformの影響を全く受けなくなるようだ。 つまり上の例ではモーションパスは一番最初の例と同様に(0,0)-(100,0)の直線として扱われる。

このあたりでちょっと仕様に納得がいかなくなってくるが、さらに、今度は親要素のtransform属性を上書きするのではなく、追記するようにしてみる。
<rect transform="rotate(90)" width="10" height="20" >
  <animateMotion path="M 0 0 L 100 0" dur="3s"/>
  <animateTransform additive="sum" attributeName="transform" type="rotate" from="90" to="0" dur="3s"/>
</rect>
additive属性によって、親要素のrotateの値を上書きするのでなく、加算することになる。つまり親要素のrotateは180から90へ変換するアニメーションとなる。
すると、不思議なことにモーションパスは再度親要素のtransform属性、それもアニメーションによる変形を受ける前の"rotate(90)"の影響だけを受けるようになるようだ。

今回の例以外にも、こういった複数のタグが絡み合ったときの挙動に対する記述が、不思議なことにSVGの仕様書には書いてない(ような気がする)。
現状は仕様書に明記されていない部分は Adobeのビューアを参考に推測しているが、Adobeビューアの挙動が本当に正しいのかもわからないし、そもそもアニメーション周りでもまったく実装されていない機能などが多数存在している。

このままじゃビューアごとに挙動が異なるという混沌とした状況になるんじゃないかと危惧してしまう。
SVG大丈夫なのか!?VRMLみたくなってしまうのは避けてもらいたいのだが...

台湾の友人

Hamanaの中国語リソースの作成を行ってくれている台湾の方より、今月より徴兵制で軍に入隊されるとの連絡が来た。期間は1年半だそうだ。
そうか台湾にも徴兵制度があるのか。たしかに今までも中国と軍事的な緊張が高かったし、さらに最近の中国の軍拡路線を見てると、それは一層高まっていくような気がする。見事に民主化した台湾が今のままの中国に統一されるなんて絶対ないと思うんだよね。
一応、毎週末には帰宅を許されるそうで、「そのときにHamanaの中国語リソースも作れるから心配しないでくれ」という申し出があって、本当に嬉しかった。こういうのはプログラマでよかったと心から思えますな。

ちなみに彼のおかげで台湾のユーザもだんだんと増えており、今では全体の10%程度だ。たまにHamanaのページの参照元が台湾のblogやらBBSだったりするので、覗きにいくのだが、わりと評判がいいようでほっとしている。
ただ、ソフトの名前が間違っていることが結構多い。
かっこ良い間違われ方としては HanmaとかHammaだ。範馬勇次郎みたい。強そう。
かっこ悪い間違われ方としては HmamaとかHmangaだ。後者みたときはコーヒー吹いた。

東京商工リサーチ

今日、東京商工リサーチから電話がかかってきた。

「1,2分ほどよろしいですか?」っていうので、いろいろ質問に答えていたんだが、登記簿謄本に載っている情報をひととおり確認するだけでちょうど2分ぐらい経過。
まあちょっと時間すぎてるけど、これだけで終わりかと思ったら、「従業員数は?」「取引銀行は?」「売上高は?」「仕入先は?」「取引先は?」「利益は?」とずるずるといつまでも質問しやがる。5分ぐらいたったところで、「いつまで続くのでしょうか?」と聞いたら「答えたくなければ終っていいですよ」との返答。さすがにムカッときてじゃあ、すみませんが切りますといったら、速攻で「ありがとうございました。ガチャ」

時間をオーバーしたら、ほんの一言「すみません、よろしかったらもうX分お願いできますでしょうか?」ぐらいいう必要があると思うのだが、そういうのが一切なかった。そちらの利益のために親切心で洗いざらい情報話してるんだから、それなりに丁寧に応対する必要があると思うんだが...。ノルマが厳しくて一件一件丁寧にやってる暇はないのかもしれないが、企業の情報で食ってる割にこの態度はどうかと思った。 これ絶対評判悪いと思うなー。

帝国データバンクからも電話こないかな。応対を比べてみたい。

<< 8/15 >>