
Adobe EDGE newsletter第5回
『大重美幸のこれ見落としてませんか? ActionScript 3.0』
『スクリプトでフィルタを適用する方法』が公開されました。
今回はフィルタがテーマです。表示オブジェクト、ビットマップデータにフィルタを適用する方法を解説します。

Adobe EDGE newsletter第5回
『大重美幸のこれ見落としてませんか? ActionScript 3.0』
『スクリプトでフィルタを適用する方法』が公開されました。
今回はフィルタがテーマです。表示オブジェクト、ビットマップデータにフィルタを適用する方法を解説します。
■この訂正は初版のものです。
p.89 見出し「乱数を作る」の4行目、スクリプト見出し
誤:1〜10の乱数
正:1〜10の整数の乱数
p.159 本文1行目
誤:その再生に到達したら
正:そのフレームに到達したら

Adobe EDGE newsletter第4回
『大重美幸のこれ見落としてませんか? ActionScript 3.0』
『FLVをウィンドウ/画面全体に表示する』が公開されました。
今回はFLVの変形とフルスクリーン表示がテーマです。前回の宿題の回答もありますよ。
FITCで紹介された「Flash CS5で作るiPhone App」のスライドを見ることができますよ。
FITC Edmonton Slides : Building iPhone applications with Flash CS5
(Mike Chambers)
ロクナナワークショップで「最大23%OFF 複数割」が始まりました!
有効期限は一年間。全ての講座で利用できます。
企業研修や新人研修で複数の講座を利用したい!お友達・会社の同僚と一緒にいろんな講座を受講したい!そんな方に必見のキャンペーンです。
詳しくは、ロクナナワークショップNEWS [複数割」受講チケット最大23%OFF]

※ぼくのActionScript3.0セミナーは来年1月21日と1月28日です。
大重美幸のActionScript 3.0初級講座(前半) 2010年1月21日
大重美幸のActionScript 3.0初級講座(後半) 2010年1月28日

Adobe EDGE newsletter第3回
『大重美幸のこれ見落としてませんか? ActionScript 3.0』
『配列の値の並べ替えをマスターする』が公開されました。
今回のテーマは配列の値の並べ替えです。配列は複数の値を管理したいときに便利な機能です。CS4 からは配列を扱うクラスに Vector クラスが加わりましたが、基本的には Array クラスと同じです。配列を使うときに、よく分からなくて、頭の中が混乱していませんか? 配列を使いこなせてこそ一人前。配列を使ってスマートなスクリプトを書きましょう。
package {
public class Friend4 {
//クラスプロパティ
public static var seqNo:uint;
public static var friendList:Array=new Array();
//インスタンスプロパティ
public var no:uint;
public var name:String;
public var age:uint;
//コンストラクタ
public function Friend4(na:String,ag:uint) {
no= ++seqNo;
name=na;
age=ag;
//インスタンスのリストに参照を保管する
friendList.push(this);
}
//
// クラスメソッド
//
//平均年齢を求める
public static function getAgeAverage():Number {
if (friendList.length==0) {
return 0;
} else {
var ageSum:uint;
//年齢の合計を出す
for (var i:int=0; i<friendList.length; i++) {
var friend:Friend4=friendList[i];
ageSum+=friend.age;
}
//平均を計算する
var ave:Number=ageSum/friendList.length;
//小数点2位で四捨五入する
ave=Math.round(ave*10)/10;
return ave;
}
}
//最年長を求める
public static function getOldestProfile():String {
if (friendList.length==0) {
return null;
} else {
//friendListの複製
var tmpList:Array=friendList.slice();
//年齢でソートする
tmpList.sortOn("age",Array.NUMERIC);
//最後の人を取り出す
var oldest:Friend4=tmpList[tmpList.length-1];
//プロフィールを返す(インスタンスメソッドの実行)
return oldest.getProfile();
}
}
//
// インスタンスメソッド
//
//プロフィールを返す
public function getProfile():String {
var info:String="no."+no+" "+name+"、"+age+"歳です。";
return info;
}
}
}
→ファイル一式をダウンロードする。
//読み込む画像ファイルを指定する
var url:String = "image/IMG_8171.jpg";
var urlReq:URLRequest = new URLRequest(url);
//ローダーを作る
var photoLoader:Loader=new Loader();
photoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);
//画像を読み込む
photoLoader.load(urlReq);
//画像を表示する
photoLoader.x = 100;
photoLoader.y = 50;
addChild(photoLoader);
//ドロップシャドウを付ける
var dsf:DropShadowFilter=new DropShadowFilter();
dsf.alpha = 0.8;
photoLoader.filters = [dsf];
import fl.transitions.Tween;
import fl.transitions.easing.*;
var tw:Tween;
//フェードインで表示する
function onLoaded(eventObj:Event):void {
tw = new Tween(photoLoader,"alpha",Regular.easeInOut,0,1,1,true);
}
import flash.text.TextFieldAutoSize;
//テキストフィールドを作る
var fld:TextField=new TextField();
fld.x = 100;
fld.y = 50;
fld.width = 280;
fld.height = 180;
fld.border = true;
fld.multiline = true;
fld.wordWrap = true;
fld.autoSize = TextFieldAutoSize.LEFT;
addChild(fld);
//書式の設定
var tf:TextFormat = new TextFormat();
tf.size = 18;
tf.color = 0x333333;
fld.defaultTextFormat = tf;
//URLLoaderのインスタンスを作る
var txtloader=new URLLoader();
var urlReq:URLRequest=new URLRequest();
urlReq.url = "./data/sample_utf.txt";
//unicodeならばfalse
System.useCodePage = false;
txtloader.load(urlReq);
//読み完了イベントのリスナーを登録する
txtloader.addEventListener(Event.COMPLETE,completeHandler);
//リスナー関数
function completeHandler(eventObj:Event):void {
//読み込んだテキストをフィールドに表示する
fld.text = txtloader.data;
}