hidesignlab.™ blog

FlashPlayerグローバルセキュリティ設定の検証

date
26 Jan. 2007
category
keywords
  • FlashPlayerグローバルセキュリティ設定, Javascript, ExternalInterface, getURL, バグ, トラブル, ローカル, サーバー
comments
(0)
trackback
(0)

Flashファイルをローカルで開くと動かない、サーバー上なら大丈夫。大至急どうにかならないか.... とかなんとか言われたのだけど、それってサポート外だよねとか思ったりは全くないのだけど、小一時間格闘した結果、原因はしょうもないことだった。

はじめ、先方が言っている現象はこちらで全く再現せず、先方は先方でローカルとサーバーで挙動が違うと。こんなことでまた徹夜かよ....週末前なのに嫌な予感漂いまくりんぐだったけど、意外とあっけなく解決。


現象:ローカルで実行したFlashがネット上のファイルと通信しようとしている場合、警告が出る(ローカルJavascriptとの通信も含む)

• 検証:
- 1.通信無し
- 2.通信あり(GetURL---> Googleサイトへ)
- 3.通信あり(ExternalInterfaceでJavascriptと通信。ただし両方ともローカル)
- 検証ファイル: GlobalScuritySetting.zip
- 結果:1は問題なし。2,3ともに警告が出る。
- ---> ローカルであっても、Javascriptと通信する場合は警告が出る。


• 解決策:グローバルセキュリティ設定を信頼済みに設定する
グローバルセキュリティ設定
- ---> それ以外に、もっとよい解決方法があれば知りたい。もの凄く。>エロい人誰か


いやもちろんこの仕様は知っていたよ。自分の場合、警告がウザイから常に許可にしていたりで。そのおかげで混乱したというわけだ罠。ただ、たとえローカルであってもJavascriptとの通信では警告出るってのは知らなかった。

写像ってそういうことか

date
26 Jan. 2007
category
keywords
  • 写像, mapping, 関数, function, 行列, matrix, ベクトル, vector, math
comments
(0)
trackback
(0)

写像という言葉の意味がわかったので、
感動のあまり、メモ。
とりあえず、自分なりの解釈で整理してみよう。


関数
・入力と出力の対応規則
・任意の入力に対して、出力はひとつ
・入出力は変数

写像
・入力と出力の対応規則(関数をより一般化)
・任意の入力に対して、出力はひとつでなくてもよい
・入出力は集合


なんども登場する「写像」という言葉がどうも
自分にとって直観的な言葉でなくて、出てくる度につっかえてた。
頭に来たので、英訳を辞書で引いてみたら、
写像=mappingということが判明、なんだ簡単じゃん、というわけ。
つまり、HashMapとかDispalacementMapとかのMapですよ、と。
その昔関数の意味がわかった時と同様、大変すっきりした。
「写像とは関数の一般化」という意味もようやく納得。


行列とは写像である。
行列とは写像である。
行列とは写像である。

わかってきたぞ。

パターン認識

date
23 Jan. 2007
category
keywords
  • パターン認識, ベイズ, 特徴ベクトル
comments
(0)
trackback
(0)

パターン認識に深く首突っ込まないといけないぽい。
ざっと見たけど、むずい.... 
多次元ベクトルとか、直感的に把握できない。
人と多の生物のDNAの配列がどれだけ似ているか
みたいなのはわかりやすいけど。

これって統計学とかもろ関係してるね。
大学で統計解析まじめにやればよかった。。

とりあえずもすこし詳しい本を参考に
机上データでせこせこやってみる。


以下関連リソースをここに追記。

参考文献
- わかりやすいパターン認識 (単行本(ソフトカバー))
http://www.amazon.co.jp/exec/obidos/ASIN/4274131491/hidestm-22/ref=nosim

- フルスクラッチによるグラフィックスプログラミング入門 (単行本)
http://www.amazon.co.jp/exec/obidos/ASIN/479800958X/hidestm-22/ref=nosim

- パターン認識 - wikipedia
http://ja.wikipedia.org/wiki/パターン認識

- パターン認識演習
http://www.kishii.ss.is.nagoya-u.ac.jp/~tori/pattern/

外部ドメインからロードした画像をBitmapData.drawできない罠

date
9 Feb. 2006
category
keywords
  • bug, flash8, Bitmap.draw, security, crossdomain
comments
(2)
trackback
(0)

buggy_airlines.jpg

以前grafitti-webのnaoさんとこでも話題になってた件と同じかな?'ェ'
これは仕様なのでしょうか。以下要点。

現象:外部ドメインから画像を一旦ロード用mcにロードした後、BitmapData.drawでbitmap化して別mcにattachBitmapしようとするができない。

memo
  • 画像のロード完了の判断は、MovieClipLoader.onLoadInitイベント
  • 同じドメイン内では問題なくできる
  • ローカルでFlashアプリ上から実行すると問題なくできる
  • ローカルでスタンドアロンで実行するとセキュリティ警告が出るものの問題なくできる

この件はできれば今の案件中に(今後のためにも)解決しておきたいので、検証用ファイルをさくっと作成。

検証:外部ドメインからロードした画像をBitmapData.drawできない罠


左から順に、

  • A列: 同一ドメイン内
  • B列: 外部ドメイン
  • C列: 外部ドメイン(自由にいじれます。)

の画像を読みに行ってます。1行目(A1)でロードして、ロード完了後2行目(A2)で1行目でロードした画像をbitmap化してattachしてます。矢印はロード完了のサインです。完了と同時に一瞬でbitmapの移植が完了しているのがわかると思います。

C列は自由にURL変更できるようになってるので、いろいろ試してめちゃめちゃにしちゃってください。手始めに、gate Aの'Requested Url:'をコピっとして、上のテキストフィールドにガツっと入れて旅立っちゃってください。すると、同一ドメイン内なので問題なく画像が表示されるはずです。

みんなどうしてるんだろう?まさか僕だけの現象?
しばらくおいといて他のことやろう。

新規作成時の設定をカスタマイズ

テンプレート機能を使ってみる

date
28 Jan. 2006
category
keywords
  • flash, tips, utils
comments
(0)
trackback
(0)

Flashのプロジェクトで使う共通の設定ってあるじゃないですか。たとえば、必ず使うパッケージ名前空間のimportとか、タイムラインのレイヤーの分けとか、ライブラリの整理とか。ちなみに僕がいつもしている設定はこんなかんじ。


これを新規作成時に毎回準備してるのがいい加減めんどくさくなってきたどころか、極めて人間的ではない行為に思えてやるせなくなってきたので何か解決策はないかと考えてみたところ、Flashのテンプレート機能がそのまま使えるのではないかと思い早速やってみたらあっさりできたので報告してみる。

ものすごく簡単。

1.Flaファイルを新規作成。新規作成時に必要な設定をする。
2.「ファイル」>「テンプレートとして保存」
3.カテゴリ・テンプレート名などを設定

以上。あとは普通に新規作成時にテンプレートタブを選択して該当するテンプレートを選択すればOK。ひょっとしたら常識なのかも。こんな便利なものいままで使ってなかった自分がイタイです。ちなみに、困ったことにASファイルはテンプレートとして保存できないようなので、Dockに登録しておいて必要なときに開いては別名で保存するようにしてみた。

Zooming User Interfaces(ZUI)

date
23 Jan. 2006
category
keywords
  • ZUI, interface, hypertext, hyperword, information vidualization
comments
(0)
trackback
(0)

ZUIの先行研究事例のメモ。かなり前に既出だが。

C O U L D:ZUIの可能性

New York UniversityのMedia Research Labではコンピュータに関する様々な研究なされているが、その中にZooming User Interfaces(ZUI)と呼ばれる拡大/縮小が出来るインターフェイスの研究がまとめられているページがある。

//ソースコード

Zooming applet

//無限ズーム

zoomquilt


Rooney Design | Christmas Zoom

上に挙げた無限ズームは、ビジュアルのループだが、
これをテキストで実現したのが、ハイパーテクストだとしたら、
その両者のシームレスな融合ができればおもしろい。

アートなインターフェースができるはず。
なにより、先行事例を探して学ぶ方が早いなぁ。

"enterキー"を"commandキー"に

PowerBookのenterキーがこの上なく使えない件に対する解決策

date
22 Jan. 2006
category
keywords
  • powerbook, mac, tips, install
comments
(1)
trackback
(0)

PowerBookってenterキーが2つあるじゃないですか。厳密には右っ端のでっかいのがreturnキー、矢印キーの左にあるちっこいのがenterキーなわけですが、そのちっこいenterキーってどれくらい使ってますか?かなり使用頻度少ないですよね。実際Photoshopでテキストエリアの確定くらいしか使いません。appelに一体なんのために存在してるのか?と小一時間ほど問いつめたいわけですが。

たとえばあのenterキーがcommandキーに置き換えられたらどれだけの人が「Flashの開発で片手でパブリッシュできない」苦労から救われるか。でもそんな都合の良い話あるわけないですよね…。

いや、あるんです。あっちゃったんです。その名もDoubleCommand。いやぁ〜、PoowerBook購入以来半年間探し回りましたよ。さっそくPowerBookにインストールして、「enter --> command」、「shift+delete --> forward delete」にしましたよ。個人的には「 fn --> option」もあるとなにかと便利だったのだけども、残念。でもほかにもいろいろチューニングができるので、今まで泣きを見ていた人は是非お試しあれ。これでようやくPowerBookでも片手でFlashのパブリッシュができるってわけだ。さぁこれで元気出してください。誰

DoubleCommand

Fuse Kit

date
18 Jan. 2006
category
keywords
  • tween, as2, component, utils
comments
(1)
trackback
(0)

Flashでトウィーンをスクリプトで実装する際には、Robert Penner氏に毎度のことお世話になっているわけだが、同時に多数走らせるとやはり処理がもたつくのが悩みの種なわけで。その場合アルゴリズムを見直すか、そもそもそんな悪いことはしないかのどちらかしかないわけで。アルゴリズムを見直すっていっても限界があるってわけで。トウィーンクラスを改良するのもめんどくさいってわけで。

前からかれこれいろいろ悩んではいたが、特に何をするわけでもなく放置していたこの問題。最近処理速度アップのためにどうしても再考する必要が浮上。そこでざっくりと方針めいたものを考えてみた。というか考え中。

  1. トウィーンに関しては可能な限りFuse Kitで実装
  2. それ以外で毎フレームごとに処理が必要なものに関してはOnEnterFrameBeaconで実装
  3. それ以外はsetInterval/crearIntervalで実装
まだきちんと調べてないからわからないけど、Fuse KitをOnEnterFrameBeacon的に使えればかなり幅がききそう。

で、その目的のモノはここから手に入る。

Fuse Kit


入手するためには直接メールでお願いするしかないみたいだけど、メール書けばすぐ返事来るから特に心配することはない。現在バージョン1.1は開発中につきベータテスター募集中のようだ。参加してくれっていわれたけど、いじくってる暇あるかわからないから保留。要望だけしてみてもいいけど。とりあえずこれからいじってみます。