Home > ActionScript 3.0 Archive
ActionScript 3.0 Archive
BetweenAS3がoverwriteに対応。
- 2010年2月15日 20:02
- ActionScript 3.0
超高速なTweenライブラリとして有名なBetweenAS3が念願のoverwriteに対応したようなので、さっそく試してみました。
左がTweener,真ん中が変更前のBetweenAS3、そして右が今回アップデートされたBetweenAS3を使ったトゥイーンです。かなり単純なスクリプトで、ロールオーバーされたらalphaが0.5に、ロールアウトされたら1になります。
挙動をみてみると、変更前の真ん中のサンプルでは高速にロールオーバー・アウトを繰り返すとチカチカしますが、右の最新バージョンではTweener版同様、気持ちよくトゥイーンしてくれます。今までは適宜stop()させないといけなかったので、嬉しい修正ですね!
- Comments: 0
- TrackBacks: 0

Ruby :: ActionScript 3.0 とRubyの定義を見比べる - クラス編
- 2009年10月30日 22:40
- ActionScript 3.0 | Ruby
日にちびちびとRubyを触ってます。そんな備忘録。 今回はAS3とRubyのクラス定義について見比べてみましょう。
- Comments: 0
- TrackBacks: 0

ActionScript 3.0 :: マウスジェスチャー
- 2009年10月30日 19:43
- ActionScript 3.0
SparkProjectに、MouseGestureをアップしました。MouseGestureは、その名の通りマウスジェスチャーを手軽実装するためのライブラリです。ジェスチャーの挙動としては、Firefoxのアドオン、ALL in one Gestureが近いでしょう。基本的には、左クリックが押された瞬間から離されるまでの挙動をイベントとして送出します。タッチパッドを用いた少ないアクションが必要とされる案件で使えるかも知れません。以下はサンプルと使い方。
- Comments: 0
- TrackBacks: 1

Progressionを習得するなら、開発者に直接聴くのが一番早い
- 2009年9月18日 16:37
- ActionScript 3.0
Progression、皆さん使ってますか?Progressionは、億劫なバッグエンドの処理を担い、高い拡張性と柔軟性を併せ持つコンテンツを開発することができる、ActionScript 3.0用のオープンソースフレームワークです。
67WSでは、この優れたフレームワークをProgression開発者 阿部貴弘氏自らが伝授することで、効率よく学習できるカリキュラムを、9月に続いて、10・11月も開催することが決定しました。
モダンなFlashが作りたいクリエーターの皆さんにお勧めの講座です。
この機会、お見逃しなく!
- Comments: 0
- TrackBacks: 0

FlexPMD :: 環境構築から実験まで。-ソースコード解析によるバグの早期発見とコーディング規約準拠-
- 2009年9月 4日 16:21
- ActionScript 3.0 | other
コンパイルエラーでもコンパイラ警告でもランタイムエラーでもない第四の警告を発するソースコード解析ツール
いつも拝見させていただいているAdobe の上条さんのブログ、akihiro kamijoで、気になるエントリーを見かけました。どうやら、AdobeからFlexPMDなるものがでた模様。早速試してみました。
Adobe FlexPMD とは?
もともとJavaなどで使われるPMDは、ソースコードを走査して、潜在的なバグやバグになりそうな問題を発見することができます。ざっくり言えば、バグ早期警戒探査器です。 とはいえ、ActionScript3.0でも多いにユーザーを悩ませているコンパイルエラーや、ランタイムエラーの類を見つけるものではありません。致命的にはならないが、非推奨な記述や定義がされているコードに対して警告を発生させます。また、コーディング規約の準拠にも対応し、それら警告はルールセットとよばれます。ルールセットはユーザーの好きなようなカスタマイズすることも出来ます。これを利用することで、大規模開発での複数開発者間で、ルール統一を計ることができるわけです。
例えば以下のようなバグ予備軍コードを発見することが出来ます。
- 未使用のコード(関数・変数・定数)
- 非効率的なコード(動的フィルタ・コンストラクタの誤用)
- 複雑なコード(ネストされたループ・あまりにも多いの条件式)
- 長すぎるコード(クラス、メソッド)
なんとなくわかったところで、さっそく環境構築を始めましょう!
- Comments: 0
- TrackBacks: 1

Event :: ここから始める ActionScript 3.0 入門前 !
- 2009年9月 4日 03:38
- ActionScript 3.0 | Event
9月16日、グローバル・テクノロジー・デザイン株式会社様主催の無料AS3入門者向けイベントに出演します。
内容はまさしく、入門者向け。コードのお話ではなく、いかにしてAS3を始めるか、どうすればAS3を効率的に習得できるか、に焦点を当ててトピックを紹介していきます。
会場はデジタルハリウッド渋谷校となっており、参加申し込みは予約制・無料となっております。
これからActionScript 3.0をはじめたい方、ディレクターやチームリーダーをしていて、AS3のがどんなものか、確認しておきたい方は是非ご参加くださいませ。
お申し込みは以下のサイトにて受付中です。
- Comments: 0
- TrackBacks: 0

ActionScript 3.0 :: SWFPanelで発生したエラーを出力する
- 2009年9月 3日 19:26
- ActionScript 3.0 | JSFL
SWFPanel。便利な機能ですよね。Progressionでも活用されていますし、自分専用のジェネレターとか作れてしまうスグレモノです。
でも、欠点は開発のデバッグが大変なこと。traceとか、ランタイムエラーとか、出力パネルでないんです。
じゃぁ、どうしようってなるわけです。
- Comments: 0
- TrackBacks: 0

直感的かつ再利用性の高いアニメーションライブラリ BetweenAS3
- 2009年8月27日 21:27
- ActionScript 3.0
SparkProjectに毎度顔を出しているような、ASマッチョな貴兄には、もはや定番のBetweenAS3。僕は今までぐだぐだTweener使っていたクチなんですが、FlashPlayer 9 対応したとのことで、訃報も久しいTweenerから乗り換えました。正直にいいます。
こんな直感的なライブラリは見たことがない。
- Comments: 0
- TrackBacks: 1

ActionScript 3.0 エラーアーカイブス Amazon予約開始!!
- 2009年8月22日 12:28
- ActionScript 3.0
前々回のエントリーで紹介し、twitterや、はてブで反響を頂いたActionScript 3.0 エラーアーカイブスですが、Amazonにて予約開始されました!
なお、初版はわりと少なめですので、ご予約・ご購入はお早めのほうがよいかもしれません、、
ご紹介いただいたブログ
とてもお世話になっている方々から激励のエントリーが!!ありがとうございます。
- HTML+CSSの大御所、河内さん カラクリエイト
- 監修者の大重美幸さん ActionScript 入門ノートCS4
- ロクナナ 上田さん memouk
- Comments: 0
- TrackBacks: 0

ActionScript 3.0 エラーアーカイブス -コンパイルエラー・コンパイラ警告・ランタイムエラーの解法
- 2009年8月19日 00:00
- ActionScript 3.0 | Writing
コンパイルエラー・コンパイラ警告・ランタイムエラーの原因と解決法がわかる本
追記
- 2009/08/22 Amazonで予約が開始されました!
- 2009/09/04 発売日は2009年9/9に。
- 2009/09/04 サンプルページを公開。
- 2009/09/09 発売開始!
- 2009/09/29 Adobe Developer Connection に寄稿
ActionScript 3.0エラーアーカイブスは、初心者が躓きやすく、上級者も戸惑うコンパイルエラー、コンパイラ警告、ランタイムエラーの原因・解決法を掲載した、今までに前例がない内容のAS3書籍です。
しかも、ロクナナワークショップ講師・大重美幸氏を監修としてご協力していただき、より洗練された内容となっています。
リファレンスや入門書とは違う、"第三の本"として、本書があなたの新しい旅の仲間に加えていただけたら、幸いです。
- Comments: 0
- TrackBacks: 0

JSFL :: SWFPanel(AS3/SWF)のメソッドを呼び出すswfPanel.call
- 2009年8月12日 17:35
- ActionScript 3.0 | JSFL
以前のエントリーでも、MMexecuteに関してはとりあげました。では、JSFL側が、SWFPanelとやりとりしたい場合はどうでしょう。これには、JSFLのswfPanelオブジェクトには、callメソッドを使用します。
- Comments: 0
- TrackBacks: 0

ActionScript 3.0 :: ネームスペースを付加したメソッドのオーバーライド
- 2009年8月 6日 02:12
- ActionScript 3.0
ネームスペース(名前空間)、使ってますか?実際便利なんですが、あんまり使っている人見ないですよね。
さて、ネームペースが付加されているメソッドのオーバーライドは、ただoverrideキーワードを付加するだけではうまくいかず、スコープに注意を払う必要があります。
クラスレベルのネームスペースを付加したメソッドを継承する
クラスレベルのスコープ。つまりclassキーワードで括られた範囲内のスコープに定義されたネームスペースをメソッドに定義した場合です。この場合の注意点は、スーパークラスで定義されているネームスペースは、サブクラスでもアクセスできなければならない。ということです。ActionScript 3.0の仕様では、internal(パッケージ内のみアクセス可)になり、それ以外にpublic(どこからでもアクセス可)、protected(サブクラスのみアクセス可)、private(外部からアクセス不可)の四つのアクセス制御指定子が存在します。ここでは、サブクラスでアクセスしなければならないため、protectedを指定します。あとは、いつもと同様にオーバーライドをかけるだけです。
- Comments: 0
- TrackBacks: 0

ActionScript 3.0 :: IP情報を4ステップで取得できるライブラリ IPinfodb
- 2009年8月 4日 21:03
- ActionScript 3.0
IPinfodbは、IP情報を一括してXMLやJSON,XMLなどの各種データで取得できるサービスです。このサービスを利用すれば、アクセスしたユーザーのIPを取得し、国名・県名、アクセスポイントの経度緯度などを活用することが出来ます。
- Comments: 0
- TrackBacks: 0

FlashDevelopで開発を10倍楽にする便利なコメントパターンとメタデータタグ
- 2009年7月13日 19:33
- ActionScript 2.0 | ActionScript 3.0 | other
ActionScript開発で欠かせないのはIDE(統合開発環境)ですが、その中でもフリーで高機能なFlashDevelopは説明が不要なほど有名です。
その高機能性は群を抜いており、FlashBuilder(Flash ProfessionalはActionScript開発にはちょっと心許ないです)やFDTともひけをとらない性能を持っています。
そんなFlashDevelopですが、便利な機能をさらに高機能にすることができます。
そのひとつがコメントパターンです。これはJAVAなどのプログラミング言語によく見られ、規則的なコメント方法で記述することでコードが見やすくなるだけでなく、IDEによっては有利な機能を働かせることが出来ます。
FlashDevelopでは以下のようなコメントパターンがみられます。
- Comments: 0
- TrackBacks: 0

JSFL :: Flashのタイムラインに文字を書く
- 2009年6月 2日 01:18
- ActionScript 3.0 | JSFL

先のエントリーで、Geoff氏の誕生日用に作ったJSFLを用いたタイムラインメッセージ。
ポイントは3つ
- JSFLとAS3(SWF)の連携
- AS3によるパーティクル表現
- JSFLの限界
これを踏まえて、以下解説編です。
- Comments: 0
- TrackBacks: 0

SparkProject勉強会#9でGeoffを全力で祝ってきた
- 2009年5月29日 20:46
- ActionScript 3.0 | JSFL

昨日、SparkProject勉強会#9にスピーカーとして参加しました。今回、SWFObjectの開発者であるGeoff Stearns氏が来日・ゲストとして登場し、氏の誕生日と言うこともあってすごい盛り上がりでしたね。
で、僕はJSFLについて自分がコミットしているものを紹介したわけなんですが、それとは別にGeoffが誕生日ってことで皆でFlashつかって祝おう!って企画があがったわけです。
ARを使ったバースデーケーキの拡張現実やら、WEBカムでGeoffの顔をあしらったケーキを生成したり、もうすごいのなんの。僕は性懲りもなく、JSFLでお祝いしました。どんだけJSFL好きなんだと。
- Comments: 0
- TrackBacks: 1

ActionScript 3.0 :: SWFPanel(AS3)とJSFLを連携するMMExecute2
- 2009年5月28日 16:43
- ActionScript 3.0 | JSFL
ちょっと使いづらいMMExecuteを少しだけ使いやすくするユーティリティクラスMMExecute2をSparkにコミットしました。
as3のMMExecute関数は、SWFPanelとJSFLの連携を図るためのパッケージ関数です。引数にJSFLコマンドをStringで渡すことで、SWFPanelからJSFLを実行することが出来ます。ところが、Stringにしなければならないため、外部のJSFLに定義されている関数を実行したり、引数を渡したりするのは、少しめんどくさく、かつとても見にくくなりがちでした。MMExecute2はそんな問題を解消します。
- Comments: 0
- TrackBacks: 0

ActionScript 3.0 :: 名前空間によるスウィッチング
- 2009年5月21日 14:56
- ActionScript 3.0
ネームスペースとも呼ばれる名前空間は、ActionScript 3.0 * パッケージと名前空間では、以下のように説明されています。
名前空間では、作成したプロパティおよびメソッドの可視性を制御することができます。 public、private、protected、および internal アクセス制御指定子は、ビルトイン名前空間のようなものです。これらのあらかじめ定義されているアクセス制御指定子が要件を満たさない場合は、独自の名前空間を作成することができます。
上述でも説明されているように、public、private、protectedなどのアクセス制御指定子はメソッドやプロパティに対して外部からのアクセスを制御します。名前空間はそれのカスタムとも言うべきもので、メソッドやプロパティに対してアクセス制御を掛けることができるようになります。同名のメソッドやプロパティでも、名前空間を使って制御することによって文脈的な意味づけを付加することができるわけです。名前空間によって制御されたメソッドは、:: name qualifier演算子 を使ってアクセスすることができます。以下のサンプルコードでは、二つのanswer()メソッドが名前空間によって修飾されています。名前空間としてcorrect(正解)とwrong(不正)を用意することで、if文なしで条件分岐ができるわけです。
- Comments: 0
- TrackBacks: 0

Flash CS4 で容量増大のバグ?
- 2009年5月19日 15:54
- ActionScript 2.0 | ActionScript 3.0 | other
- Comments: 0
- TrackBacks: 0

ActionScript 3.0 :: イベントのデフォルト動作を拒否/定義する Event.preventDefault() / Event.isDefaultPrevented()
- 2009年5月13日 21:21
- ActionScript 3.0
デフォルト動作
ActionScript3.0のイベントアーキテクチャには、デフォルト動作と呼ばれる副次的な処理が登録されているものがあります。代表的なものにTextEvent.TEXT_INPUTがあり、ユーザーがTextField内でキー入力をすると、自動的に文字列が追加されるのはこのためです。
- Comments: 0
- TrackBacks: 0

ActionScript :: 配列内を検索するArray.indexof
- 2009年5月13日 18:50
- ActionScript 2.0 | ActionScript 3.0
今日は非常に基本的なtipsを紹介します。Array.indexOf()メソッドは、配列エレメントを走査し、該当するエレメントがあるか検索し、該当した場合はエレメントのインデックスを返すインスタンスメソッドです。
ただし、このメソッドは配列内に複数ある該当エレメントには対応していません。例えば下記のような配列があり、3が格納されているエレメントのインデックスを抜き出したいとします。しかし、3は複数あるので単純にindexOfしても返値は2です。
var array:Array = [1,2,3,3,4,5,6,7,8,9,10,3,6]
結果を配列内の該当する全てのエレメントにするためには、Array.indexOf()メソッドの第二引数がポイントになります。第二引数には、検索の開始位置を指定することができます。これを利用し、下記のサンプルでは、do-whileステートメントを使用し、該当のエレメントを発見したらそのインデックスを足し込み繰返し処理します。
var array:Array = [1,2,3,3,4,5,6,7,8,9,10,3,6]
repeatIndexof(array, 6);
function repeatIndexof(targetArray:Array, searchElement:*):Array {
var result:int = -1;
var results:Array = [];
var reserve:Boolean;
do {
if (reserve) results.push(result);
result = targetArray.indexOf(searchElement, ++result);
}while (reserve = result >= 0)
return results
}
- Comments: 0
- TrackBacks: 0

AS3 :: XML / XMLListのフィルタリング
- 2009年5月 7日 16:36
- ActionScript 3.0
ActionScript 3.0では、E4X(ECMAScript for XML)をサポートしすることで、より柔軟で強力なフィルタリング機能を得ました。
ActionScript 2.0だとこの辺りが非常にややこしく、for地獄になりがちでしたが、ActionScript 3.0はかなりスマートです。
- Comments: 0
- TrackBacks: 0

[JSFL]リアルタイムにパブリッシュを実行するコンポーネントRealPub[AIR]
- 2009年4月 8日 00:37
- ActionScript 2.0 | ActionScript 3.0 | JSFL
http://www.libspark.org/wiki/kaede/RealPub
http://www.libspark.org/svn/mxp/RealPub/RealPub.zip
少し遅れてのコミットになってしまいましたが、先日行われたJSFL勉強会で発表したJSFLをSparkで公開しました。もともと、このコンーネントは以前行われたDTL.asで、吉川さんが公開して話題となったAIRアプリで実現するASエディタのリアルタイムパブリッシュ機能を、サーバー無しで実現させようと考え、開発しました。
リアルタイムパブリッシュ・コンポーネントRealPub
RealPubは、SWFPanel+AS3/JSFL/AIRの技術を使用したコンポーネントです。実行結果は題目通り、指定された秒数ごとにパブリッシュを実行し、専用のAIRアプリに表示します。FLASHコンポーネント内から独立するAIRアプリのため、常に最前面に表示することができ、パブリッシュ結果の確認を容易にします。
使い方は以下から
- Comments: 1
- TrackBacks: 0

FlashDevelopで補完されないFlashCS4のクラスをまとめて解決
- 2009年4月 2日 19:11
- ActionScript 3.0 | other
flパッケージ以下のクラスのコードヒントが表示されない!
FlashCS4やCS3のお供としてFlashDevelopを使っていると、コードヒントが表示されないクラスがたまにあります。
これは、コンポーネントクラスと呼ばれる、所謂よりよくするために跡付けで加えたものたちです。例としてFlashPlayBackや、FlashCS4で生成したボーンを制御するIK系のクラスがそれです。それらのコンポーネントクラスは、主にflパッケージに属しており、デフォルトではFlashDevelopはflパッケージ内のクラスを補完しません。
これらのクラスを補完させるには、FlashDevelopのGlobal ClassPathsに以下を追加します。
Global ClassPathsで追加
[Tools] > [Global ClassPaths..](Ctrl+F9)
※<install_folder_path>には、通常 C:\Program Files\Adobe\ が挿入されます。
- <install_folder_path>Adobe Flash CS4\Common\Configuration\ActionScript 3.0\projects\Flash\src\fl
- <install_folder_path>Adobe Flash CS4\Common\Configuration\ActionScript 3.0\libs\ik.swc
- <install_folder_path>Adobe Flash CS4\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl
- <install_folder_path>Adobe Flash CS4\Common\Configuration\Component Source\ActionScript 3.0\FLVPlaybackCaptioning\fl
- <install_folder_path>Adobe Flash CS4\Common\Configuration\Component Source\ActionScript 3.0\FLVPlayback\fl
- Comments: 0
- TrackBacks: 0

FlashCS4で埋め込んだフォントの一覧を取得[ActionScript 3.0]
- 2009年3月26日 14:56
- ActionScript 3.0
Flashで埋め込んだフォントを、生成したTextFieldに指定したいけど、フォント名わかんねーよ、、なんでFlashで指定する名前とTextFormat.fontで指定する名前が一緒じゃないんだ!ばか!と、ツンデレちゃうFlasherの方もいるんじゃないでしょうか(自分もそうでした)
そんなときはこのコード。
var fonts:Array = Font.enumerateFonts(false)
Fontクラスの静的メソッドenumerateFonts()を使えば、埋め込まれているフォントの一覧を配列で取得することができます。配列に内包される要素はFontクラスで、インスタンスプロパティfontNameから参照することができます。第一引数enumerateDeviceFonts:Booleanをfalseにすれば、埋め込まれているフォントのみ取得、trueならば、デバイスフォントと埋め込みフォント、つまり使用できるフォント全てを取得することができます。便利ですね。フォントど忘れしたってときは、お試し下さい。
ちなみに、fontNameはreadOnly(読み取り専用)なので、変更できません。
配列の走査にはforEachが便利↓
Font.enumerateFonts(true).forEach(function(item,arr,index){trace(item.fontName)})
- Comments: 0
- TrackBacks: 0

[AS3]Event.PASTE / Clipboard.generalClipboard.getData 覚え書き
- 2009年3月14日 17:03
- ActionScript 3.0
Event.PASTEのコードをすぐに忘れてしまうため覚え書き。FlashPalayer10から実装されたClipboard.generalClipboardプロパティで、ユーザーのOSレベルでのクリップボードへのアクセスが可能になる。ただし、セキュリティのためEvent.PASTEイベントリスナー内でしか実行(取得)できない。これを解決するためには、ペーストを受け取るInteractiveObjectをスーパークラスとするインスタンスのcontextMenuに、ペースト(contextMenu.clipboardMenu && contextMenu.clipboardItems.paste)を許可したContextMenuクラスインスタンスを与える。あとはペーストを受け取るインスタンスにEvent.PASTEをリスナー登録すれば完了
package {
import flash.desktop.Clipboard;
import flash.desktop.ClipboardFormats;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;
import flash.ui.ContextMenu;
public class Example extends MovieClip {
public function Example():void {
var pasteTarget:Sprite = addChild(new Sprite()) as Sprite;
pasteTarget.graphics.beginFill(0);
pasteTarget.graphics.drawRect(0, 0, 100, 100);
var contextMenu:ContextMenu = new ContextMenu();
contextMenu.clipboardMenu = contextMenu.clipboardItems.paste = true;
pasteTarget.contextMenu = contextMenu;
pasteTarget.addEventListener(Event.PASTE,pasteHandler)
}
private function pasteHandler(e:Event):void {
var clipboadStr:String = Clipboard.generalClipboard.getData(ClipboardFormats.TEXT_FORMAT) as String;
trace(clipboadStr)
}
}
}
- Comments: 0
- TrackBacks: 0

FlashDevelopのヘルプ検索をgoogleからコンポーネントリファレンスに変更する
- 2009年2月21日 19:50
- ActionScript 3.0 | other
FlashCS4とFlashDevelopのヘルプ機能(ダイナミック検索)

FlashCS4のアクションパネルや、asファイルの編集時には、検索したい文字列(クラス名など)を選択してF1を押すことによって、該当の文字列をヘルプファイルから直で検索してくれます。すごく便利な機能です。
FlashDevelopでは、同様の機能で、該当の文字列をグーグルで検索してくれます。
google検索でももちろんいいのですが、
この設定を変えれば、ActionScript 3.0 言語およびコンポーネントリファレンスで検索できるようになります。
設定方法
設定を変更するには以下のようになります
- F10もしくは[Tools]から、[ProgromSettings]を開く
- 左メニューの[Plugins]から、AS3Contextを選択
- 右の設定項目[Documentation]>Documentation Command Line]の値を
[http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/search.html?search=$(ItmName)]
に変更
- Comments: 0
- TrackBacks: 0

2行でイベント→XMLロード→画像読み込み→表示できるAS3ライブラリ[Next]
- 2009年2月19日 21:19
- ActionScript 3.0
つい先日、素晴らしいライブラリがSparkにコミットされたので、 ご紹介。
非同期処理ライブラリ Next
Sparkにコミットされている非同期処理ライブラリとして、Threadが有名ですが、
Nextはひだちのいろさんが開発した、超簡素に非同期処理を行うことを目的としたAS3ライブラリです。
一番簡素な例としては、
N.load("image.png").then = function(loader:Loader):void {
addChild(loader);
}
超簡素!
たったこれだけで、画像をロードした後にaddChildすることができます。
Nは、予め定義されているNextインスタンス。グローバル変数なので、Nextをnewすることなくimportするだけで使用可能です。
load()とevent()
load()のみで、Sound,SWF,Bitmap,XMLなどなどに対応。使い方はStringでパスをしているするだけです。eventは、イベント処理に対応。イベントを発行するオブジェクトとイベントを定数(MouseEvent.CLICKetc..)かStringで指定すればOK。処理が終った結果が引数としてthenやfuncに定義するFunctionに渡ってきます。
組み合わせればこんなことも超簡素に!
N.event(btn, MouseEvent.CLICK).load("test.xml").then = function(e:MouseEvent, _xml:XML) {
N.load(_xml.data["@src"].toString()).then = addChild
};
ボタンをクリックしたらXMLを読み込んで、パースして、画像ロード後に表示!なんて処理も、たったこれだけ。正直、超変態(もちろん良い意味で)だとおもいます><
くわしくは
上記の他にも、SparkProjectの該当ページで開発者のひだちのいろさんがいろいろ解説されていますので、要ちぇっく!で早速スパーク!しましょー
http://www.libspark.org/wiki/hidachinoiro/Next
- Comments: 0
- TrackBacks: 0

Firefoxの検索バーに ActionScript 3.0 リファレンスを追加する
- 2009年2月 7日 04:32
- ActionScript 3.0
![]()
Firefoxでas3のクラス検索したいー。
しかもgoogleさんじゃなくてActionScript 3.0 言語およびコンポーネントリファレンスの検索結果がでたら最高なのに。。
そんなお嘆きの貴兄に。
searchipluginsXMLを追加すれば、Firefoxの検索バーで、ActionScript 3.0 言語およびコンポーネントリファレンス内に含まれるクラスを検索できるようになります。
このXMLをFirefoxのユーザーデータ内のフォルダにいれてください。
例:C:\Documents and Settings\<USER_NAME>\Application Data\Mozilla\Firefox\Profiles\<USER_ID>\searchplugins
- Comments: 0
- TrackBacks: 0

関数とメソッドの違い[ActionScript 3.0]
- 2009年1月23日 13:32
- ActionScript 3.0
プログラミング経験者なら誰もが一度は思ったことがあると思うこの問題。
言語によって違いはありますが、ActionScript3.0に関して言えば、
書籍やネットを参照しても、答えはまちまちだったりします。
果たして、本当はどれなのでしょうか?
- Comments: 2
- TrackBacks: 0

Flash+ActionScript開発・習得に欠かせない12の神器
- 2009年1月16日 12:30
- ActionScript 2.0 | ActionScript 3.0 | other
Flashは、デザイナーや学生が初めて触れるには敷居が高いのだろうか。 僕自身、Flash初めて触れたのは中学2年のころで挫折したのを覚えている。
Beinteractiveのyossyさんも言及されているけど、ActionScriptって女の子に似ている。
新藤愛大――欲望という幻想を現実に変えるActionScripter
かわいい女の子とFlashの共通点はとっつきづらいところ、かわいい女の子とActionScriptの共通点は反応が面白いところ、かわいい女の子とECMAScript4の共通点はちょっとやそっとでは理解し合えないところ
僕自身の独断と偏見だけど、AS1はやさしいくてドジっこ。AS2はじゃじゃ馬のツンデレで怒ると怖い。AS3は清楚なしっかりもの。いわゆる生徒会長タイプでやっぱり怒ると怖い。という勝手なイメージがあるんだけど、みんなはどう?
さて、前置きは長くなってしまったけれど、僕が彼女たちとつきあっていく上で重宝しているツール・tipsを紹介します。去年のはじめから今年にかけて大分話題になったところが多いので、彼女たちをメロメロにさせてるASerたちには物足りないと思いますが、ご了承ください。
- 1.Flash CS4
- 2.FlashDevelop 3 RC
- 3.FlashPlayerDebugger+4.FlashTracer
- 5.swfswitcher
- 6.Library
- 7.Spark project
- 8.swfobject.js
- 9.ActionScript 3.0 言語およびコンポーネントリファレンス
- 10.wonderfl
- 11.Adobe TV
- 12.書籍
- Comments: 0
- TrackBacks: 0

今話題のwonderflでスパークしてみた。
- 2008年12月24日 20:39
- ActionScript 3.0
説明はもはや必要ないと思うので省きますが、
今話題のwonderflに投稿してみました。
スパークします。
- Comments: 0
- TrackBacks: 0

[Flash CS4]stage.stageHeightが大幅に少ない値を返す[バグ]
- 2008年12月24日 15:35
- ActionScript 3.0
このバグは、Flash CS4においてプロファイラを開いた状態でパブリッシュすると、stage.stageHeightが本来のstageHeightよりも100少ない値を返します。
CS3以前は、プロファイラ込みの値が返ってきていたようです。
//本来のステージサイズは400 trace(this.stage.stageHeight)/出力/300
- Comments: 0
- TrackBacks: 0

型を特定する[as2/as3/JSFL]
- 2008年12月10日 15:14
- ActionScript 2.0 | ActionScript 3.0 | JSFL
Flash周りのスクリプト言語で型を特定したい場合、 as2,as3,jsflではそれぞれ実装がことなってきます。
例えばas2の場合、
//as2 typeof(test_mc)//movieclip
typeof()を用いて特定ができます。
as3の場合では、typeofを実行しても objectが返ってくるため、
同じようにはいきません。
私の場合はよくisステートメントを利用します。
//as3 (test_mc is MovieClip)//true
ところで、jsflではどうでしょう?
- Comments: 0
- TrackBacks: 0

12月16日!SparkProjectイベント!
- 2008年12月 5日 22:48
- ActionScript 3.0 | other
今度、ロクナナワークショップ主催で、自分もコミッタとして参加させていただいているsparkprojectのイベントがあります!
sparkprojectは、日本発・日本最大のActionScriptコミュニティーで、主な目的として役立ちライブラリをじゃんじゃんあげてみんなで幸せになろうという考えのもと、活動していて、Adobeのエバンジェリストや海外Aserにも認められています。
有料ですが、そうめん(Thread)ライブラリや、iphoneasの話なんかが聞けちゃいます。
これを機に各種ライブラリを使ってみたり、sparkprojectに参加してみてはいかがでしょうか?この機会に是非!
詳しくは以下のページから!
- Comments: 0
- TrackBacks: 0

FlashPlayer10における消失点調整/PerspectiveProjection.projectionCenter[as3]
- 2008年12月 3日 22:36
- ActionScript 3.0
FlashPlayer10になって、displayobjectに3dが扱えるようになりました。これによってzやrotationX/Y/Zなどの3d関連プロパティが追加されました。
さて、3dといえば、消失点です。wikipediaを見ると、以下のように解説されています。
多くの透視図には消失点 (vanishing point) が存在する。一点透視図法とは水平線上に1つの消失点を持つものであり、視界に存在するすべての平行な直線は、距離に比例してこの消失点へと近づいていき、やがて消える。まっすぐ地平線の彼方へと消える2本の線路を想像すればわかりやすいだろう。
as3的にかみ砕いて言えば、消失点を調整すればdisplayObjectのzを高めたときに、その点のx,y座標に向かって遠ざかっていき、最終的に消えます。
- Comments: 0
- TrackBacks: 0

SWFのデフォルトコンテキストメニューを非表示化する[ActionScript]
- 2008年12月 3日 21:13
- ActionScript 2.0 | ActionScript 3.0
忘れやすいので、自分自身の為にもメモ
下記のスクリプトでas2,as3それぞれのコンテキストメニューの非表示化する
as2
this.menu = new ContextMenu() this.menu.hideBuiltInItems()
as3
this.contextMenu = new ContextMenu(); this.contextMenu.hideBuiltInItems()
- Comments: 0
- TrackBacks: 0

Setter(set)/Getter(get)は積極的に使うべき[ActionScript3.0]
- 2008年9月 6日 00:26
- ActionScript 3.0
set/getを使ってアクセス制御する
本来、オブジェクト指向の考え方ではなるべくprivateキーワードを使って外部からのアクセスを遮断し、クラスに対し自律責任的に行動するようにします。
しかしやむを得ず外部からのアクセスを許す場合は、最低限の安全を確保したいものです。
安易にpublicにすれば、外部からの直接的なアクセスをすべて許すことになり、バグなどの危険も増す可能性があります。かといって、protected(定義クラスとサブクラスのみアクセス可)やinternal(定義クラスと同一パッケージでのみ可)では範囲がせますぎます。
ビルドインクラスのインスタンスプロパティには、読み取り専用・書き込み専用があります。これらのプロパティは、制限がかかっているため、たとえば読み取り専用の場合は書き込みができず、参照しか行えません。 このようにアクセス制御ができればよいのですが、ではどうすればいいのでしょうか?
- Comments: 0
- TrackBacks: 0

複数のSpriteやMCのプロパティを一括/指定traceできるクラスSanzoku.as[ActionScript3.0][SparkProject]
- 2008年8月29日 18:25
- ActionScript 3.0
ちょっと前から参加しているyossyさん運営のSPARKProjectに、遅ればせながら初コミットしてみました。
このSanzokuは複数のSpriteやMovieClip?のプロパティを一括・指定でtraceしたりfirebugのコンソールに出力するクラス です。
Sanzoku.peep(target)とするだけで、MCやSpriteのビルドインプロパティを覗くことができます。
以下、例:ルートでSanzoku.peep(this)を実行した場合の出力結果
- Comments: 0
- TrackBacks: 0

[as3]Array filter()と無名関数を使って配列のフィルタリングに汎用性をもたせる
- 2008年8月28日 19:06
- ActionScript 3.0
配列を扱っていると、条件に合うエレメントを絞り込みたいことがよくあります。
たとえば、クラスの生徒の名前を集約した配列があるとします。その中から、"ben"だけを抜いた配列を作りたい。
そんな時は、as3でArrayクラスに新しく実装されたfilterメソッドがお勧めです。
このパブリックメソッドは配列内の各エレメントについてテスト関数を実行し、指定された関数について true を返すすべてのエレメントを含む新しい配列を生成します。つまり、falseを返したエレメントはこの新しい配列には含まれません。
以下、サンプルコード
- Comments: 0
- TrackBacks: 0

AS3でFlashVarsを取得する/SwfObejectを使ってFlashVarsを定義する
- 2008年7月18日 21:04
- ActionScript 3.0 | JavaScript
FlashVarsを取得する(ActionScript 3.0)
HTMLに埋め込まれている変数を取得することができるFlashVarsですが、ActionScrip2.0では_roo.tomのように存在しない変数名であっても簡単に取得することができました。
しかしActionScript 3.0ではこの仕様はなくなり、ドキュメントクラス、またはタイムラインに属するMovieClip・SpriteクラスのloaderInfoプロパティ内に置かれます。 loaderInfoのparametersオブジェクトを参照すると、しっかりと受け取ることができます。 以下はfor in を使ってFlashVarsを取得する例です。
//FlashVarsの受取り
for (var name:String in loaderInfo.parameters) {
trace(loaderInfo.parameters[name])
}
SwfObejectを使ってFlashVarsを定義
さて、FlashVarsはおおよそ、HTML/XHTMLのparamタグ内に以下のように定義します。
本来はこのように埋め込みますが、SWFobject.jsを使った場合、embedSWFメソッドの第7引数にオブジェクトとして指定することで、実現できます。
var flashvars = {
reqURL:"test.xml"
};
swfobject.embedSWF("test.swf", "contentSwf", "920", "427", "9.0.0","",flashvars);
- Comments: 0
- TrackBacks: 1

Point.distance()を使ったドラッグアンドドロップテクニック[ActionScript 3.0]
- 2008年7月 9日 18:02
- ActionScript 3.0
ActionScript3.0でドラッグの動作を実現させるためには、startDrag(),stopDrag()を使います。
単純なドラッグ処理でしたらこれだけでも十分なのですが、
ドラッグとクリックを分けたいという場合がでてきます。
こういう場合、Pointクラスのdistanceメソッドを使って判定処理を行うことで実現できます。
http://xingxx.com/sample/drag.html
流れとしては以下のような感じになります。
- マウスが押されたら座標を取得する
- マウスが押された状況でマウスを動かしているかをイベントでキャッチする
- 動いていたらドラッグの開始
- マウスが離されたら座標を取得
- 二つの座標を比べ、0だったらクリック処理、それ以外だったらドラッグの処理として判定する
ソースにすると以下のようになります。
- Comments: 0
- TrackBacks: 0

Sprite/MovieClipのマウスイベントを無効にする
- 2008年7月 8日 20:11
- ActionScript 3.0
AS2では、ロールオーバー時にマウスカーソルのハンドポインタを無効化するuseHandCursorがありましたがAS3で実装されたmouseEnabled は、
SpriteやMovieClipなどのInteractiveObjectにおいてマウスイベントが発生した場合の挙動を一切無効化します。
つまり、イベントリスナーはマウスイベントを全くキャッチしなくなります。これを応用することで、複雑なマウスイベント処理が可能となります。
ちなみに、MovieClipではフレームラベルに_up,_over,_downのそれぞれを設定し、buttonModeをtrueにすると、ボタンのように挙動しますが、
enabledプロパティをfalseにすれば、これらの処理を無効化することができます。
_mc:MovieClip = new MovieClip();
with(_mc){
buttonMode = true;
enabled = false;
mouseEnabled = false;
}
- Comments: 0
- TrackBacks: 0

getPixelとlocalToGlobalを用いたパーティクル・アニメーションテクニック[ActionScript 3.0]
- 2008年7月 2日 23:57
- ActionScript 3.0
今回のサンプルは入力されたテキストを読み込んで、パーティクルを生成、文字の形に沿って積もっていきます。
これを実現するために、以下のように手順を踏みます。
- 入力されたテキストを読み込んでテキストフィールドにする
- このテキストフィールドをビットマップデータに変換する
- ビットマップデータからビットマップを生成
- ビットマップを表示
- 表示されたビットマップのカラー値をピクセル単位で取得
- カラー値をローカル座標に置き換え、グローバル座標に変換
- パーティクルを生成してTweenerで座標に向けてアニメーション
このように、幾つかの手順を踏む必要があります。ここで肝となるのはパーティクルの一つ一つを特定の座標へ向かわせるためにテキストをビットマップ化しているところです。
特定の座標をとるためにBitMapClassのGetpixel()を、取得した座標をグローバル座標に変換するのにDisplayObjectClassのlocalToGlobal()用います。
以下ピックアップソースです
- Comments: 0
- TrackBacks: 0

Flash CS3 でGoogle Maps API for Flash を使う
- 2008年7月 1日 21:00
- ActionScript 3.0
Google MapのFlash版APIが出されて数か月がたちましたが、まだFlexのみ対応ということでFlash CS3 使いの方々ももどかしい気分なのではないでしょうか。
そんな方々に朗報です。Google Maps API for Flash のGroupで立ち上がっているコミュニティーにおいて、Flash CS3対応のコンポーネントが配布されています。
Issue 329: Feature Request: Ability to use Adobe Flash CS3 Environment with Flash API
私自身、これは待ちに待ったものでした。 これで簡単にgoogle Mapを読み込むことができます。
そんなわけで、さっそくホットペッパーAPIと組み合わせてこんなものをつくってみました。
CS3に対応したため、MovieClipとの連携が非常にしやすくなりました。
マーカーも簡単に作ることができます。Classも洗練されていて直感的に使うことができます。
AS3前提ですが簡単に組み込めますし、他のAPIとの連携もスムーズ。重いかと思いましたが、案外そうでもないです。
注意すべき点はひとつ、このswcはまだオフィシャルではありません。配布しているのはgoogleの中の人?という声も聞かれますが定かではありません。すべて自己責任でお願いします。
コメントどおり、Hope Google releases an official version soon... ですね
- Comments: 0
- TrackBacks: 0

[XML]タグにxmlns属性があると空白が返る[ActionScript 3.0]
- 2008年6月26日 18:44
- ActionScript 3.0
ホットペーパーのAPIを叩いて、返ってきたXMLを弄ろうと思い、
URLLoaderをつかってみた。
そこまではよかったんだけど、ノードを取ろうとすると空白が返ってくる...
この問題で30分くらいはまったので、メモとして残しておきます。
どうやら、読み込むXMにxmlns属性が付与されていると、ActionScriptではネームスペースを厳密に指定しないと取得できない。
なお、ここでのネームスペースはXMLノードに対してのものである。
以下FlashCS3ヘルプからの引用
XML オブジェクトの名前空間 : 名前空間により名前空間接頭辞と、名前空間を識別する URI (Uniform Resource Identifier) を関連付けます。接頭辞は、XML オブジェクト内の名前空間を参照する場合に使用されるストリングです。接頭辞が未定義の場合、XML がストリングに変換されたときに接頭辞が自動的に生成されます。
で、この名前空間があるおかげで、同一のノード名を扱うことができる代わりに、参照する際に特殊な指定をしなければならない。
このときの指定方法は、クラスや変数、メソッドで扱う場合と同じ:(コロン)を用いる
private function completeHandler(e:Event):void {
_xml = new XML(urlLoader.data)
var ns:Namespace = new Namespace("http://webservice.recruit.co.jp/HotPepper/")
for each(var _target in _xml.ns::shop.ns::name) {
trace(_target.text())
}
}
xmlをURLLoaderで読み込み、COMPLETEイベントで完了後、XMLオブジェクトを生成する。ここまでは問題ない。
次に必要になってくるのが、Namespaceの生成。トップレベルクラスなので、importする必要はない。
ホットペッパーのAPIで使われているxlmnsは"http://webservice.recruit.co.jp/HotPepper/"だったので、これをいれる。
次に参照だが、通常_xml.shopのように、ノードをつなげるところを、_xml.ns::shopのように、ネームスペースをクッションさせてやる
このようにすることで、きちんと取得することができる。
- Comments: 0
- TrackBacks: 0

UTC世界標準時間からローカル時間に変換する[as3]
- 2008年6月25日 19:45
- ActionScript 3.0
utc世界標準時間は、1970年1月1日からのミリ秒。
タイムスタンプとも呼ばれている。
これを利用することで簡単に日付を弄ることが可能です。
var utc:Number = 1214387704781;
AS3ではトップレベルクラスのDateにUTC書式のNumberを引数として渡し、Dateオブジェクトを生成し、toString()を実行するだけで、西暦日付時間曜日・タイムゾーンまで返してくれる。
var date:Date = new Date(utc) trace(date.toString()) //出力結果 : Wed Jun 25 18:55:04 GMT+0900 2008
- Comments: 0
- TrackBacks: 0

papervision3dでWindows Aero風スライド作ってみた[ActionScript 3.0]
- 2008年6月12日 21:02
- ActionScript 3.0
最近、やっとこさ実用レベルでActionScript3.0が理解できてきて、気になっていたpapervision3dを始めてみた。
年単位で遅れてる感を感じるけど、ActionScript3.0自体始めたのが今年からっていういまさらっぷり。
note.xさんのエントリーが非常に参考になった。
とりあえず、つくったものを晒してみます。とはいっても、ありがちな感じの、windows Aero風スライド。
カーソルキーの→←で次戻りの移動、↓↑でズームインズームアウトです
- Comments: 0
- TrackBacks: 1

javascriptとの連携でFlashコンテンツをお気に入り登録できるようにする
- 2008年6月10日 22:43
- ActionScript 3.0
Flashサイトは普通、コンテンツ内をお気に入りとして登録することができない。
お気に入りというのはもちろん、URLを登録しているだけなので、小コンテンツを登録することなんて単一のフルFlashサイトでは不可能と思われがち。
もちろん、小コンテンツごとにFlashを分けて作って、そこにアクセスしてもいいけど、実は、フルFLashの単一コンテンツでもできる。
ActionScript 3.0 のExternalInterfaceをつかって、Javascriptと連携させるやり方を紹介する。
http://xingxx.com/shared/swf/flashBookmark/
以下、スクリプトと解説
- Comments: 0
- TrackBacks: 0

Home > ActionScript 3.0 Archive
- Search
- Feeds
- Tag Cloud
-
- 3
- 3d
- 67ws
- ActionScriopt
- ActionScriopt 執筆
- ActionScript
- ActionScript3.0
- Ajax
- api
- as
- as3
- bug
- cs3
- Date
- dom
- event
- ExternalInterface
- Flash
- flash
- FlashCS3
- FlashDevelop
- FlexPDM
- for
- Gadget
- gihyo.jp
- HTML
- Javascript
- javascript
- javascript dom 講座
- jQuery
- jsfl
- localToGrobal
- map
- maps
- other
- papervision3d tweener actionscript3
- PerspectiveProjection
- PR
- RSS
- ruby
- setPixel
- SparkProject
- swc
- trace
- trouble
- Tweener
- UTC
- WebCreators
- Writing
- XHTML
- xlmns
- XML
- XML ネームスペース
- クラス
- コンポーネント
- パーティクル
- マウスイベント
- 世界標準時間
- 連携
- Sticker

- Recommend
-
Powered by POPit







