Adobe Max: FITC スペシャルセッションまとめ
Adobe Maxは2講演しか行ってなくって
どちらもFITC スペシャルセッションだったのでそのまとめ。

Adobe Maxは2講演しか行ってなくって
どちらもFITC スペシャルセッションだったのでそのまとめ。
前回のエントリーで書いた疑問点を調べてたら結構いろいろ知らないことが出てきたので
宿題だけで1エントリー使うことにした。
as演算子とDisplayObject.rootについてです。
いまだにtraceでパスの取り方がわからんw
でも、AS3ではtraceするとオブジェクトの中身を詳細に書き出してくれることはわかった。
で、[MouseEvent type="click" bubbles=true cancelable=false eventPhase=2...]とか出力されるんだけど、bubbles? cancelable? eventPhase?って感じだったのでこいつらについて調べてみた。
どうやらイベントオブジェクトと関係があるらしい。以下詳しくメモ。
AS3やってるとエラーがばんばん出てきてうける。
強制変換してるよー強制変換してるよー強制変換してるよー...orz
このエントリーは表示オブジェクトとか表示オブジェクトコンテナについて。
自分なりにパスを調べる方法を考えてみた。
それにしても、このblog見にくいな...リニューアルしたくなってきた。
AS3で卒研手伝いつつ、友達のサイトを作ってAS3でフォトビュアー作った後にリニュしたいなー。目標は来年4月にロンチで!
うーん、基本から地道にやってるけど...いつ終わるのか心配だw
とりあえず、メモメモ。
【変数と定数】
・変数はvar、定数はconstで宣言。
・定数は大文字だけを使い、宣言時に一度しか値を設定できない。
・ただしオブジェクトを定数とした場合は、そのオブジェクトに対する操作は可能
(定数にした配列にpushするとか)
・標準クラスで定義してある定数を静的パブリック定数と呼ぶ。MathクラスやKeyboardクラスなど。(あぁ!こいつら定数だから大文字だったのか)
・改行コードなどの通常では表記できない文字列は、\を使う。
基礎をぶっとばして来たから、知らない事多過ぎワロス...orz
ていうか関数定義とメソッド定義って意味違うんですね、混同してた。
【フレームアクションの関数定義とメソッド定義】
・関数定義はreturnで値を返す。メソッド定義は返さない。
・AS3からは、functionを定義してあるキーフレームを再生していなくても利用できる。
・AS3から引数の個数も一致していないとエラーになる。
・引数の個数が決まっていないときは、...restを使うことで個数を決めなくてもできる。
(restは配列で、restの部分は好きな変数名を付けられる)
(例)
------------------------------------------------------------------------------------------------------------------
function test(...rest):Number {
var restNum:Number = rest.length;
return restNum;
}
var testNum:Number = test(1,2,3,4,5);
trace(testNum);//5
------------------------------------------------------------------------------------------------------------------
ここちゃんとやっとかないとエラーばっか出るよね。
「AS3.0 アニメーション」買ったから早くそっちやりたい。
でもまぁ焦らずやります...キソキソ。
うぁー盛大に遅刻した。反省。
昨日のプレゼンで緊張とかして疲れてたみたい。
起きてびっくりだった。
【演算子】
・演算の対象となる値や変数はオペランドと呼ぶ。演算子はオペレータ。
・ビット単位演算子がいみふ。
・?:は「条件式 ? 値1 : 値2」という風に使う。条件式がtrueなら値1、falseなら値2を返す。
・::はnamespaceで定義した名前空間を識別するための演算子。名前空間とはアクセス範囲を示す名前らしい。標準で定義されているのは、internal, private, protected, public。名前空間を利用すると。1つのクラス内での同名プロパティやメソッドの衝突を避けれる。
※つまりオリジナルprotectedを作れるってことか。
・[]は配列だけでなくオブジェクトのプロパティにアクセスする場合にも利用する。
・演算子の結合性は、代入演算子(=や+=など)を除くすべてが左結合。つまり、左にある演算子が右にある演算子よりも先に処理される。
・代入演算子や三項演算子(?:)は右結合。
今日サム!
明日はとうとうAPMT3ですねー。楽しみ。
起きれるか心配だけど。
【繰り返し】
・for..inとfor..each..inの違い。for..inは配列のインデックス番号や配列オブジェクトのプロパティ名を取り出す。for..each..inは配列や配列オブジェクトの値を取り出す。
※疑問なんだが、for..inで取り出されるインデックス番号はStringなんだけど
------------------------------------------------------------------------------------------------------------------
var vlist:Array=["a","b","c","d","e","f"];
var no:String;
for (no in vlist) {
var test:String = vlist[no];
trace(no,test);
}
------------------------------------------------------------------------------------------------------------------
でも普通に配列の値を表示してくれる。
vlist["3"];とかでもtraceするとちゃんと値が返ってくる...。どうゆうこと?
myArray[i]のiは0 以上の整数インデックスのはずなんだけど。
・continueは繰り返し中のスクリプトを残してスキップできる。breakは中断して繰り返し処理を抜ける。
【条件分岐】
・switch..caseってあんまり使ったことないけど、便利っぽい。値に応じてスクリプトを分岐したい場合に使える。
・caseに何も当てはまらなかった場合はdefaultで指定したステートメントが実行される。省略もできる。
・caseの最後にbreakを実行しないと、次のcaseの処理に続くが、値のチェックをせずに無条件で処理部分だけが実行される。これをうまく利用すれば論理和の処理が行える。
・?:は入れ子(ネスティング)で書くと複雑な条件分岐も可能。
LogicoolのMX™ Revolution昨日届いて、今使ってる。いいね、いいね!
これで新卒4人くらいこのマウスを使ってるんじゃないだろうか。
次はアップルキーボードかなー。正月の飛行機代とか、AS3本でかなり金欠ですけど。貯金できない。
ということで、やっとCHAPTER3に突入しました。配列は奥が深いですね。AS3からArrayクラスにはsome()そかfilter()とかforEach()とか新しいメソッドも加わって、使いこなせれば便利そうです。使いこなせれば...。
以下メモ。
PaperVision3Dを触ってみた。なんていうか...すごいね、楽しい。簡単に3Dが作れてインタラクションもすぐにできる。MaxでPaperVision3Dの講演を聞いたおかげで、思ったより簡単に理解できたのが良かった。
あんまりライブラリに頼るのは良くないのかもしれないけど、AS3に慣れる用に使うとかなり良さげ。一緒にtweenerも触ってみるか。
基礎勉強するだけじゃ飽きるけど、PV3Dとか触るとテンション上がるね。
昨日、家のMacにSafari3入れたら、FlashPlayerが9になってくれなくて寝るの遅くなった。ネムス。
Flash Player.pluginを全部削除して再度インストールしたら直ったよ。Safari3早いのかな?たまにフォントが明朝体になってるのがキモイ。
で、AS3的な座標なわけですが、Pointクラスがいろいろ使えそうでいいっすね。
以下詳細。
なお姉さんは好きですか?(やっぱギークでナイト)
ギークなお姉さんは好きですか?のアクションスクリプト版みたいです。AS3を初めてPV3Dをやってるところがまんま一緒でうけた。
俺はギークなお兄さんになれるんだろうか。まぁギークなお姉さんは人気があるけど、ギークなお兄さんはきもいだけか。
・Graphicsクラスを弄ってて思った事
ASで作った円とか長方形の基準点はデフォで左上だけど、中心にしたい場合はどうすればいいんだろう?
・解答
親インスタンスの基準点に子インスタンスの中心点を配置してあげて、親インスタンスを操作してあげる方法があるよな...。
っていうか、インスタンス作る時に
mySprite.graphics.drawRect(-50,-50,100,100);
ってしてあげればいいじゃんねwばかw
ということで、以下領域についてメモメモ。
今月号のWeb DesigningのAS高速化のテクニックの中で、メモ化のことが紹介されていたけどピンとこなかった。が、404 Blog Not Foundさんのこれとかこれ読んでやっと、そのすごさがわかった。
以下、フィボナッチ数列を使ってメモ化のすごさを簡単に紹介。