2009/01/09
[FumioNonaka.com Newsletter: no.061]
//=========================================================================
// [FumioNonaka.com Newsletter]
//
var issue:uint = 61; // 第61号
var published:Date = new Date(2009, 1, 9); // January 9, 2009
//=========================================================================
var index:Object = {
No_0:新年のごあいさつ,
No_1:11月の新ネタ,
No_2:書きもの,
No_3:セミナー,
No_4:よろず新情報,
No_5:スクリプト覚え書き
}; //_____________________________________________________________________
/*
【No_0:新年のごあいさつ】==================================================
遅ればせながら、新年のごあいさつを申し上げます。本年もよろしくお願いします。
var i:Wish = new Year(2009) as Happy;
package {
public class Year extends Happy {
private var thisYear:int;
public function Year(nYear:int) {
thisYear = nYear;
trace("Happy New Year! "+thisYear.toString());
}
}
}
package {
public class Happy extends Wish {}
}
package {
public class Wish {
// DAIGOではない
}
}
【No_1:11月の新ネタ】======================================================
[リファレンス/ActionScript 3.0新規情報]
■Flash FN0811001「変換行列を数学的に捉える」
<http://www.fumiononaka.com/TechNotes/Flash/FN0811001.html>
MatrixおよびMatrix3Dクラスで扱う変換行列について、数学的な視点から基本的な
解説を行います。Adobeデベロッパーセンターへ10月に寄稿した「Matrixクラス −
変換行列」および同11月掲載の「Matrix3Dクラス − 変換行列2」の数学的な基礎を
補足するものです。
【No_2:書きもの】==========================================================
[雑誌・書籍・Web記事など]
■『web creators』2009年2月号巻末特集「独学で始めるFlash作成講座」
<http://www.mdn.co.jp/content/view/269/>
chapter4「最新! Flash CS4を使ってみよう」の解説1ページを執筆しました。
■Adobeデベロッパーセンター「Matrix3Dクラス − 変換行列2」
<http://www.adobe.com/jp/devnet/flash/articles/matrix3d_class.html>
Flash Player 10でMatrix3Dクラスが実装され、3次元座標空間の変換行列が扱える
ようになりました。そこで、Matrix3Dクラスの変換行列を使い、マウスポインタの
位置に合わせて3次元座標空間で平面を回転させるサンプルスクリプトについて解説
します。
■gihyo.jp「ActionScript 3.0で始めるオブジェクト指向スクリプティング」
・第19回「Objectクラスと静的メソッドの定義」
<http://gihyo.jp/dev/serial/01/as3/0019>
前回「カスタムクラスを定義する」で作成したクラスMyTimerに、さらに機能を加え
ます。メソッドの戻り値にObjectインスタンスを用い、また別に静的なメソッドも
定義します。
[レジュメ・データアップ]
■FLASH OOP勉強会
「数学的なベクトルと行列からMatrix/Matrix3Dクラスを理解する」
<http://www.fumiononaka.com/Sample/flash_oop/FO081211.html>
2008年12月11日に開催された拙著『ActionScript 3.0プロフェッショナルガイド』
出版記念のFLASH OOP勉強会「数学的なベクトルと行列からMatrix/Matrix3Dクラス
を理解する」でお見せしたスライドとサンプルファイルをアップしました。
___________________________________________________________________________
■【読者プレゼント当選者発表】□□□□□□□□□□□□□□□□□□□□□□
以下のおふたりが、当選されました。おめでとうございます。
『ActionScript 3.0プロフェッショナルガイド』(毎日コミュニケーションズ)
金沢 広峰さん/東京都
『FLASH OOP for ActionScript 3.0』(翔泳社)
dasignさん/千葉県
【No_3:セミナー】==========================================================
[JaGra PROFESSIONAL DTP & WEB SCHOOL]
■Flash ActionScript中級/ActionScript 2.0
<http://www.jagra.or.jp/school/web/actionscript_advance.html>
マウスに遅れて追いかけるアニメーションやマウスの方向を向くアニメーションと
いったインタラクティブなムービーを素材として、ActionScriptの基本的な考え方
やスクリプトの組み立て方を学習します。
【日 時】2009年2月24日火曜日〜25日水曜日6時間×2日全12時間
【参加費用】39,900円
【場 所】社団法人日本グラフィックサービス工業会
【募集人数】10名
【テキスト】『モーショングラフィックスで学ぶActionScript − Flash MX −』
■基礎から学ぶActionScript 3.0 〜ステップ1
<http://www.jagra.or.jp/school/web/actionscript3_step1.html>
簡単なスクリプトは書いたことがある、という初学者を対象とした基礎講座です。
スクリプトによるアニメーションを題材にして、ActionScript 3.0の基本と処理の
組立て方・考え方を解説します。おもな学習項目としては、変数と関数、イベント
リスナー、および日付と文字の扱いなどが含まれます。ActionScript 2.0の知識は
前提とはしません。
【日 時】2009年2月26日木曜日6時間
【参加費用】21,000円
【場 所】社団法人日本グラフィックサービス工業会
【募集人数】10名
【テキスト】『ActionScript 3.0プロフェッショナルガイド』
■基礎から学ぶActionScript 3.0 〜ステップ2
<http://www.jagra.or.jp/school/web/actionscript3_step2.html>
ActionScript 3.0の基礎の学習を終えた初級者が対象です。MovieClipインスタンス
をインタラクティブにアニメーションさせるムービーを作成しながら、座標と座標
空間の扱い、条件判定、配列やObjectの操作などについて学びます。関数を基本に
すえた処理のパーツ化についても、実習をとおして理解していただきます
【日 時】2009年2月27日金曜日6時間
【参加費用】21,000円
【場 所】社団法人日本グラフィックサービス工業会
【募集人数】10名
【テキスト】『ActionScript 3.0プロフェッショナルガイド』
■基礎から学ぶActionScript 3.0 〜ステップ3
<http://www.jagra.or.jp/school/web/actionscript3_step3.html>
ActionScript 3.0の基本的なスクリプティングの知識をもった初級者が対象です。
3D風に回転するアニメーションのスクリプトを出発点に、クラスの定義やイベント
の配信までデザイン(設計・構成)を展開していきます。三角関数や数学的な考え方、
クラスの応用についても触れます。変数や関数、条件判定、イベントリスナーなど
基礎事項は、学習されていることが前提です。
【日 時】2009年3月25日水曜日〜26日木曜日6時間×2日全12時間
【参加費用】54,600円
【場 所】社団法人日本グラフィックサービス工業会
【募集人数】10名
【テキスト】『ActionScript 3.0プロフェッショナルガイド』
[m-School]
■ActionScript 3.0 基礎から実践へのStep
<http://m-school.biz/training/actionscript3.0_step.htm>
MovieClipの取り扱いなどActionScriptの復習からスタートし、ActionScript 3.0の
基本項目を学習します。Flashの基本機能を習得済みで、初歩的なプログラム経験の
ある方であれば、ActionScript 1.0や2.0を知らない方でも無理なく習得できます。
さらにActionScript 3.0の基礎事項ばかりでなく、実践で役立つテクニックも学習
しますので、実際のコンテンツ制作でどのように活用すればよいか知ることもでき
ます。
【日 時】2009年2月17日火曜日〜18日水曜日6時間×2日全12時間
【参加費用】63,000円
【場 所】m-School
【募集人数】10名
【テキスト】オリジナル教材
【No_4:よろず新情報】======================================================
[FLASH-Japanネタ]<http://www.flash-jp.com/>
■動的に入れ子になったインスタンスを追加し、そのインスタンスを動かす。
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=8269&forum=20>
ActionSctipt 3.0では、インスタンスを操作するときは、インスタンス名やそれを
ドット(.)で結んだパスより、参照として扱うことが基本になりました。パスを使う
方法も、おそらく従来との互換性を保つため、特殊な仕組みで実現されています。
しかし、インスタンスを動的に生成するような場合には、注意が必要です。
参考: F-site「MovieClipインスタンスとインスタンス名」
<http://f-site.org/articles/2008/04/19014939.html>
■ComboBoxの基本的な設定法
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=8280&forum=20>
スレッドの最後に補足しておいたように、「コンポーネントを動的に作成して配置
するスクリプトでは、コンポーネントは[ライブラリ]に予め入れておく必要があり
ます」。
■外部リンクの相対パスについて
<http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=8294&forum=8>
外部ファイルへの「相対パスを指定するときには、パスの起点が問題になります。
相対パスは、SWFファイルでなく、HTMLファイルを基準とします」。より厳密には、
ブラウザが解釈するものですので、タグで設定を変えることもできます。
【No_5:スクリプト覚え書き】================================================
■小数点以下の値を切捨てる
小数点以下の数値を切捨てて整数を得るには、一般にMath.floor()メソッドが用い
られます。しかし、ActionScript 3.0には、同じ機能の関数としてint()も備わって
います[*1]。そして、処理速度は、int()関数の方が速いようです[*2]。
テスト用のフレームアクションは、つぎのとおりです。
// ActionScript 3.0
// フレームアクション
var nCount:uint = 10000000; // 繰返し回数
var i:uint;
var nAnswer:int;
var nStart:uint;
// Math.floor()
nStart = getTimer();
for (i=0; i<nCount; i++) {
nAnswer = Math.floor(i / 100);
}
var t0:uint = getTimer() - nStart;
trace("Math.floor(): "+t0);
// int()
nStart = getTimer();
for (i=0; i<nCount; i++) {
nAnswer = int(i / 100);
}
var t1:uint = getTimer() - nStart;
trace("int(): "+t1);
// result
trace("speed up(%): "+int((1-t1/t0)*100));
_____
[*1] ActionScript 2.0のint()はFlash 5以降の使用が推奨されない古い関数です。
<http://help.adobe.com/ja_JP/AS2LCR/Flash_10.0/help.html?content=00000574.html#170631>
また、その演算結果も3.0と異なることにご注意ください。
<http://f-site.org/articles/2003/12/23233434.html>
[*2] 処理速度の差はOSやブラウザその他の環境により変わります(筆者の環境では
30〜80%増くらいまで幅がありました)。
*/
//=========================================================================
var publisher:Object = {
name:野中 文雄,
mailto:fumio@mx10.ttcn.ne.jp,
web:<http://www.FumioNonaka.com>,
credit:2003-2008 (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);
}



