2007/07/16
[FumioNonaka.com Newsletter: no.044]
//=========================================================================
// [FumioNonaka.com Newsletter]
//
var issue:uint = 44; // 第44号
var published:Date = new Date(2007, 7, 16); // Jul. 16, 2007
//=========================================================================
var index:Object = {
No_0:30秒ルール,
No_1:6月の新ネタ,
No_2:書きもの【読者プレゼント情報あり!!】,
No_3:セミナー,
No_4:よろず新情報,
No_5:スクリプト覚え書き
}; //_____________________________________________________________________
/*
■『Flash プロフェッショナル・スタイル』が7月13日に発売されました。「No_2:
書きもの」欄に、読者プレゼントのご案内があります。
<http://www.fumiononaka.com/Books/FlashProfessionalStyle.html>
【No_0:30秒ルール】========================================================
床に落ちた食べ物は3秒以内に拾えば食べても大丈夫、という「3秒ルール」はよく
耳にします。理由は定かでありません。花王生活者研究センター小島みゆきさんに
よれば「大事なのは落ちた場所。3秒という時間は根拠がない」とのことです。
<http://www.life-bio.or.jp/topics/topics214.html>
これが米国では、「5秒ルール」になるそうです。欧米人のおおらかさか、それとも
単に大ざっぱなのか。ところが、これらが思いもよらぬ方向に、覆されようとして
います。
アメーバニュース(07/06/09)
「床に落とした食べ物、OKなのは5秒ルール?−−米大で研究」:
<http://news.ameba.jp/2007/06/5120.php>
「『食べるべきか、食べざるべきか?』室内でも土足のままの米国では、食べ物が
床に落ちた場合に5秒以内なら拾って食べてもOKという『5秒ルール』が広く知れ
渡っている。もちろん、『落ちたら絶対に拾い食いはいけない』というばい菌
嫌いの人も大勢いる。このほどコネチカット州の大学の研究チームがこの問題を
科学的に調査したところ、なんと『30秒以上は大丈夫』という結果が出た。」
「30秒以上は大丈夫」というのは、日本語として意味がよくわかりません。そこで
原文を調べてみました。
Connecticut College (07/05/17)
「To eat or not to eat: seniors prove "five-second rule" more like 30」:
<http://aspen.conncoll.edu/camelweb/index.cfm?fuseaction=ccnews&id=3464>
「ふたりの女子学生たちは、5秒間と10秒間および30秒間それぞれ床にあった食べ物
には、バクテリアが存在しないことを発見した。リンゴのスライスは、1分経過した
後にバクテリアがついた。他方、Skittlesキャンディでは、床に5分間置かれた後に
バクテリアの存在が確認された。女子学生のGoettscheとMoinは、これらの結果から
水気のある食べ物では少なくとも30秒、乾いた食べ物なら1分以上待って拾っても、
バクテリアに汚染されることはないと語った。」(野中訳)
おそらくアメーバニュースは「30秒以上でも大丈夫」「30秒以上はいける」という
ニュアンスで「30秒以上は大丈夫」と書いたのでしょう。ニュースの表現としては
わかりにくいように感じられます。
いずれにしても、「3秒ルール」は「30秒ルール」に改訂されるべきときがきたよう
です。もっとも、「3秒ルール」は多分に気分的なものでした。そうなると、新しい
ルールが普及するかどうかは微妙といえそうです。
【No_1:6月の新ネタ】=======================================================
[スクリプティング/ActionScript 3.0新規情報]
■Flash FN0706001「ActionScript 3.0に対応したMovieClipのボタンをつくる」
<http://www.fumiononaka.com/TechNotes/Flash/FN0706001.html>
Flash MX以降(ActionScript 2.0/1.0)では簡単な設定で、Buttonシンボルと同様の
ボタンアニメーションを、MovieClipシンボルに対して適用することができました。
その機能は、Flash CS3にも基本的に受継がれています。ただし、ActionScript 3.0
では、2.0/1.0とは異なる設定や注意点があります。
【No_2:書きもの】==========================================================
[雑誌・書籍・Web記事など]
■『Flash プロフェッショナル・スタイル』7月13日発売
<http://www.fumiononaka.com/Books/FlashProfessionalStyle.html>
共著者は、この頃減少傾向のモーニング娘。より2人多い11人です。豪勢な顔ぶれが
揃いました。私が執筆した「ActionScript 1.0/2.0とActionScript 3.0」は、この
本の性格上幅広い読者を想定しているので、入門的な解説になっています。
[F-site: ActionScript: AS3]
■URLエンコード
<http://f-site.org/articles/2007/06/09232451.html>
ActionScript 3.0では、escape()関数の動作が2.0/1.0とは変わりました。たとえば
文字列"F-siteセミナー"をescape()関数でURLエンコードすると、ActionScript 3.0
と2.0/1.0の結果は異なります。
[F-site: ActionScript: Tips]
■FileReference.onUploadCompleteDataイベント
<http://f-site.org/articles/2007/06/30234010.html>
Flash CS3では、どうしてもActionScript 3.0に目を奪われがちです。でも、2.0に
ついても、一部追加された機能はあります。
___________________________________________________________________________
■【読者プレゼント!!】□□□□□□□□□□□□□□□□□□□□□□□□□□
株式会社毎日コミュニケーションズ様より、この7月13日に発売されたばかりの共著
『Flashプロフェッショナル・スタイル』を、[FumioNonaka.com Newsletter]の読者
プレゼントとして1冊ご提供いただきました。抽選で、1名様にプレゼントします!!
メール<mailto:fumio@mx10.ttcn.ne.jp>宛に下記の要領でお申込みください。
・書籍情報: <http://www.fumiononaka.com/Books/FlashProfessionalStyle.html>
【メール件名】[応募] Flashプロフェッショナル・スタイル
【送付先情報】郵便番号/住所/氏名/電話番号
【当選者発表】都道府県および氏名を次号のNewsletterにて発表します。ハンドル
など本名以外を希望される方は、その旨ご記載ください。
【応募閉切り】2007年7月25日水曜日24:00
___________________________________________________________________________
【No_3:セミナー】==========================================================
[JaGra PROFESSIONAL DTP & WEB SCHOOL]
■Flash MX 2004 ActionScript中級
<http://www.jagra.or.jp/school/flash4.html>
マウスに遅れて追いかけるアニメーションやマウスの方向を向くアニメーションと
いったインタラクティブなムービーを素材として、ActionScriptの基本的な考え方
やスクリプトの組み立て方を学習します。
【日 時】2007年7月26日木曜日〜27日金曜日6時間×2日全12時間
【参加費用】39,900円
【場 所】社団法人日本グラフィックサービス工業会
【募集人数】10名
【テキスト】『モーショングラフィックスで学ぶActionScript − Flash MX −』
[Adobe認定トレーニングプログラム]
■Macromedia Flash 8:Advanced Design
<http://www.m-school.biz/courses/matp_flash_advanced_design.htm>
フルFlashのWebサイトを想定したサンプルの制作実習と、ポイントの解説により、
以下の内容を習得します。
・Flash 8の新機能およびデザイン要素をActionScriptで制御する方法
・外部ソースの取り扱い
・効率的なFlashムービー設計手法
【日 時】2007年8月1日水曜日〜3日金曜日6時間×3日全18時間
【参加費用】157,500円
【場 所】m-School
【テキスト】macromedia authorized curriculum
[ROKUNANA WORKSHOP OF MEDIA DESIGN]
■ActionScript3.0を使ってみよう
<http://67.org/ws/workshop/detail/040as.html>
Flash Professional 9 ActionScript 3.0 Previewに実装されたActionScript 3.0は
2.0とはクラスの構成やイベントの扱いが変わり、個々のプロパティやメソッドにも
細かな点で違いがあります。本講座では従来のActionScript 1.0/2.0と比較しつつ
ActionScript 3.0の新たな考え方やこれまでと異なる点を解説します。
【日 時】2007年8月24日金曜日6時間
【参加費用】35,000円
【場 所】株式会社ロクナナ
【テキスト】レジュメとサンプルムービーを使用
【No_4:よろず新情報】======================================================
[FLASH-Japanネタ]<http://www.flash-jp.com/>
■テキストのサイズ調整をすると中のテキストが伸び縮みする件について
<http://www.flash-jp.com/modules/newbb/viewtopic.php?topic_id=6465&forum=8&post_id=33533#forumpost33533>
CS3では、[プロパティ]インスペクタで幅(W)や高さ(H)を指定しても、テキストには
変形が加わらなくなりました。野中一押しの機能改善です。
■変数のスコープについて
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=6636&forum=6>
ECMAScriptには、ブロックスコープがありません。
■FirefoxのKey.isDown()の動作について
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=6642&forum=6>
wmodeを設定すると、ブラウザによってはキー入力などに問題が発生するようです。
とくに、本来の用途と異なるフレームレートの改善などに利用することは、お勧め
しません。
■as3における onReleaseOutsideについて
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=6687&forum=20>
ActionScript 3.0では、SWFの領域外のMouseEvent.MOUSE_UPイベントがブラウザに
よっては取得できないようです。
■loadClipしたMCにattachMovieをしても表示されない
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=6688&forum=8>
リンケージが設定された[ライブラリ]のシンボルは、SWFファイルに関連づけられる
ようです。外部ファイルをロードした場合に、ロード先のMovieClipインスタンスを
ターゲットにしてMovieClip.attachMovie()メソッドが呼出されると、引数に渡した
リンケージ識別子はその外部ファイル内で検索されます。
■フィルターの削除
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=6702&forum=8>
MovieClipインスタンスに設定したフィルタをクリアするには、MovieClip.filters
プロパティに空の配列を設定します。nullや任意の文字列を設定しても、内部的に
フィルタのクリアは行われるようです。しかし、実行した内容(nullの設定)と結果
(MovieClip.filtersが空の配列になる)が異なる処理は、個人的には好みません。
【No_5:スクリプト覚え書き】================================================
■SWFファイルの外部読込みとMovieClip.attachMovie()メソッド
FLASH-japan「loadClipしたMCにattachMovieをしても表示されない」のスレッドで
議論された内容(「No_4:よろず新情報」を参照)を、以下のテストスクリプトで確認
してみます。
・手順
[1] 新規flaファイルをふたつ用意し、それぞれ"main.fla"、"sub.fla"という名前
で同階層に保存します。
[2] ふたつのflaファイルに、ひとつずつMovieClipシンボルを作成し、リンケージ
[識別子]を設定します。識別子名は、"main.fla"のMovieClipシンボルが"oval"、
"sub.fla"は"rectangle"とします。ともにステージ上には、何も配置せず、空白に
しておきます。
[3] "sub.fla"を[ムービープレビュー]して、"sub.swf"を書出します。
[4] "main.fla"の第1フレームに、つぎのスクリプトを記述したうえで、[ムービー
プレビュー]により結果を確認します。
// fla(swf)ファイル: main.fla
// タイムライン: メイン
// 第1フレームアクション
var _mc:MovieClip =
createEmptyMovieClip("my_mc", this.getNextHighestDepth());
var _mcl:MovieClipLoader = new MovieClipLoader();
var oListener:Object = new Object();
oListener.onLoadInit = function(target_mc:MovieClip):Void {
var temp_mc:MovieClip;
// 読込み元メインタイムラインをターゲットにattachMovie()を呼出す
temp_mc =
attachMovie("Oval", "oval0_mc", getNextHighestDepth());
temp_mc._alpha = 50;
temp_mc =
attachMovie("Rectangle", "rectangle0_mc", getNextHighestDepth());
temp_mc._alpha = 50;
// ロードされたMovieClipをターゲットにattachMovie()を呼出す
temp_mc =
target_mc.attachMovie("Oval", "oval1_mc", target_mc.getNextHighestDepth());
temp_mc._alpha = 50;
temp_mc =
target_mc.attachMovie("Rectangle", "rectangle1_mc", target_mc.getNextHighestDepth());
temp_mc._alpha = 50;
};
_mc._x = Stage.width/2;
_mc._y = Stage.height/2;
_mcl.addListener(oListener);
_mcl.loadClip("sub.swf",_mc);
・結果
ロード元"main.swf"のメインタイムラインと、"sub.swf"がロードされたMovieClip
インスタンスを各ターゲットとして、MovieClipシンボルの"oval"と"rectangle"を
それぞれMovieClip.attachMovie()メソッドで配置しようとしました。
しかし4つの呼出しのうち、ロード元メインタイムラインをターゲットとしたときは
"main.swf"の[ライブラリ]に設定した"oval"のみ、"sub.swf"を読込んだMovieClip
インスタンスがターゲットのときは"rectangle"のみしか、インスタンスは生成され
ませんでした。
よって、リンケージ設定された[ライブラリ]のシンボルは、SWFファイルに関連づけ
られると考えられます。つまり、外部ファイルを読込んだ場合、ロード先MovieClip
インスタンスをターゲットにしてMovieClip.attachMovie()メソッドを呼出すとき、
引数に渡したリンケージ識別子はその外部ファイル内で検索されるようです。
*/
//=========================================================================
var publisher:Object = {
name:野中 文雄,
mailto:fumio@mx10.ttcn.ne.jp,
web:<http://www.FumioNonaka.com>,
credit:2003-2007 (c) Fumio Nonaka all rights reserved.
}; //_____________________________________________________________________
if (wantToUnsubscribe) { // メールマガジンの購読中止は
// つぎのURLでお手続きください
var url:String = "http://www.FumioNonaka.com/Magazine/";
var request:URLRequest = new URLRequest(url);
navigateToURL(request);
}


