<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>alt &#187; AS3</title>
	<atom:link href="http://blog.alt-scape.com/archives/tag/as3/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.alt-scape.com</link>
	<description>alt-scape weblog</description>
	<lastBuildDate>Wed, 18 Aug 2010 18:08:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>ASDocsを横断検索してくれるソフト「Doc?」</title>
		<link>http://blog.alt-scape.com/archives/376</link>
		<comments>http://blog.alt-scape.com/archives/376#comments</comments>
		<pubDate>Thu, 01 Apr 2010 05:27:04 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=376</guid>
		<description><![CDATA[



Doc?
http://airdoc.be/

これ便利そうですね。
ASライブラリのドキュメントをURL入力で取り込んでおけば
リファレンスを横断検索できちゃうビュワーです。


とりあえずカヤックさんのブログ [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/doc1.jpg" alt="Doc?" />
<br />
<br />
<strong>Doc?</strong><br />
<a href="http://airdoc.be/" target="_blank" title="Doc?">http://airdoc.be/</a><br />
<br />
これ便利そうですね。<br />
ASライブラリのドキュメントをURL入力で取り込んでおけば<br />
リファレンスを横断検索できちゃうビュワーです。<br />
<br />
<span id="more-376"></span><br />
とりあえずカヤックさんのブログで紹介されているものに加えて<br />
TwennLiteなどなど以下のdocsを入れておいた。<br />
Wonderflで使えるライブラリなんかは入れておくといいかも。<br />
<img src="http://blog.alt-scape.com/img/doc2.jpg" alt="Doc?" class="imgnostyle" />
<br />
<br />
<strong>ActionScript 3.0 Language and Components Reference JP</strong><br />
<a href="http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/index.html" target="_blank" title="ActionScript 3.0 Language and Components Reference JP">http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/index.html</a><br />
<br />
<strong>Adobe Flex3.5Language Reference</strong><br />
<a href="http://livedocs.adobe.com/flex/3/langref/" target="_blank" title="Adobe Flex3.5Language Reference">http://livedocs.adobe.com/flex/3/langref/</a><br />
<br />
<strong>Adobe Air 1.5 Languarge Reference</strong><br />
<a href="http://help.adobe.com/en_US/AIR/1.5/devappsflex/" target="_blank" title="">http://help.adobe.com/en_US/AIR/1.5/devappsflex/</a><br />
<br />
<strong>Progression4 Reference</strong><br />
<a href="http://asdoc.progression.jp/4.0/" target="_blank" title="Progression4 Reference">http://asdoc.progression.jp/4.0/</a><br />
<br />
<strong>JSFL API Refference</strong><br />
<a href="http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/" target="_blank" title="JSFL API Refference">http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/</a><br />
<br />
<strong>Tweener</strong><br />
<a href="http://hosted.zeh.com.br/tweener/docs/en-us/" target="_blank" title="Tweener">http://hosted.zeh.com.br/tweener/docs/en-us/</a><br />
<br />
<strong>TweenLite / TweenMax</strong><br />
<a href="http://www.greensock.com/as/docs/tween/" target="_blank" title="TweenLite / TweenMax">http://www.greensock.com/as/docs/tween/</a><br />
<br />
<strong>Papervision 3D</strong><br />
<a href="http://www.papervision3d.org/docs/as3/" target="_blank" title="Papervision 3D">http://www.papervision3d.org/docs/as3/</a><br />
<br />
<strong>Away3D</strong><br />
<a href="http://away3d.com/livedocs/" target="_blank" title="Away3D">http://away3d.com/livedocs/</a><br />
<br />
<strong>Alternativa3D</strong><br />
<a href="http://help.alternativaplatform.com/en/client/" target="_blank" title="Alternativa3D">http://help.alternativaplatform.com/en/client/</a><br />
<br />
<strong>Box2DFlash 2.1a</strong><br />
<a href="http://www.box2dflash.org/docs/2.1a/reference/" target="_blank" title="Box2DFlash 2.1a">http://www.box2dflash.org/docs/2.1a/reference/</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/376/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash MiniBuilder &#8211; オンラインAS3 IDE</title>
		<link>http://blog.alt-scape.com/archives/353</link>
		<comments>http://blog.alt-scape.com/archives/353#comments</comments>
		<pubDate>Thu, 05 Nov 2009 05:00:04 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=353</guid>
		<description><![CDATA[



前回、AIR版のFlash MiniBuilderをテストしてみましたが、
今回はWEB版のFlash MiniBuilderを設置して
自分のサーバーにwonderfl環境を作ってみます。

ActionScr [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/flash_builder5.jpg" alt="Flash MiniBuilder" />
<br />
<br />
<a href="http://blog.alt-scape.com/archives/352" target="_blank" title="Flash MiniBuilder – AIR製ActionScriptエディタ">前回</a>、AIR版のFlash MiniBuilderをテストしてみましたが、<br />
今回はWEB版のFlash MiniBuilderを設置して<br />
自分のサーバーに<a href="http://wonderfl.net/" target="_blank" title="wonderfl"><strong>wonderfl</strong></a>環境を作ってみます。<br />
<br />
ActionScript 3 Code Completion<br />
<a href="http://code.google.com/p/as-code-completion/" target="_blank" title="ActionScript 3 Code Completion">http://code.google.com/p/as-code-completion/</a><br />
<br />
<span id="more-353"></span><br />
１．まずは上のページから「<strong>MiniBuilder-web-0.0.2.zip</strong>」をダウンロードします。<br />
<br />
２．MiniBuilder-web-0.0.2というフォルダが展開されるので<br />
フォルダ名を適当な名前にします。<br />
ここでは「minibuilder」というフォルダ名にしておきます。<br />
<br />
３．フォルダ内のindex.htmlを修正します。<br />
＜script type=&#8221;text/javascript&#8221;＞minibuilder(&#8217;<strong>example.as</strong>&#8216;, 350)＜/script＞<br />
となっている箇所を<br />
＜script type=&#8221;text/javascript&#8221;＞minibuilder(&#8221;, 600)＜/script＞<br />
にします。<br />
※350はASエディタの縦サイズになるのでできるだけ大きくしてあげる。<br />
※CSSでエディタの見栄えを自分流にアレンジしてあげる。<br />
<br />
４．設置したい場所にminibuilderフォルダごとアップしてindex.htmlにアクセスすればＯＫ！<br />
<br />
これでめでたくWEB（ブラウザベース）でもFlash開発できるようになりました。<br />
（ASファイルの読み込み・編集、<strong>FlashPlayer10</strong>のコンパイル、保存）<br />
↓↓↓hetemlやsakuraではすんなりいけました。<br />
<br />
MiniBuilder<br />
<a href="http://blog.alt-scape.com/swf/minibuilder/" target="_blank" title="MiniBuilder">http://blog.alt-scape.com/swf/minibuilder/</a><br />
<br />
<br />
参考：<br />
<a href="http://www.victordramba.com/?p=34" target="_blank">http://www.victordramba.com/?p=34</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/353/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash MiniBuilder &#8211; AIR製ActionScriptエディタ</title>
		<link>http://blog.alt-scape.com/archives/352</link>
		<comments>http://blog.alt-scape.com/archives/352#comments</comments>
		<pubDate>Wed, 04 Nov 2009 02:33:41 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=352</guid>
		<description><![CDATA[


コード補完機能やデバッガもついたActionscriptエディタを発見したのでちょっとテスト。
コンパイルまでやってくれるのでFDTと似たような使い方なのかな。機能はかなり劣るけど。
これ、AIR以外にオンライン上 [...]]]></description>
			<content:encoded><![CDATA[<p>
<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/bjEc2eT_rCE&#038;hl=ja&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/bjEc2eT_rCE&#038;hl=ja&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object><br />
<br />
コード補完機能やデバッガもついた<strong>Actionscript</strong>エディタを発見したのでちょっとテスト。<br />
コンパイルまでやってくれるのでFDTと似たような使い方なのかな。機能はかなり劣るけど。<br />
これ、AIR以外にオンライン上でコンパイルができるソースも配布しているので<br />
個人用サーバーで<strong>Wonderfl</strong>のような環境作ってブラウザベースで開発もできちゃいますね。<br />
ってことで次回は自分の環境に<strong>Wonderfl</strong>作ってみる。<br />
<br />
<strong>Flash MiniBuilder</strong><br />
<a href="http://code.google.com/p/minibuilder/" target="_blank" title="Flash MiniBuilder">http://code.google.com/p/minibuilder/</a><br />
<br />
まずは準備。以下のものがなければダウンロードします。<br />
<br />
Adobe AIRをインストール<br />
<a href="http://get.adobe.com/air/" target="_blank">http://get.adobe.com/air/</a><br />
<br />
Javaランタイムをインストール (JRE) 1.6～<br />
<a href="http://java.sun.com/javase/downloads/index.jsp#jre"  target="_blank">http://java.sun.com/javase/downloads/index.jsp#jre</a><br />
<br />
Flex SDK 3.0～をインストール 3.4を推奨。4～でもいける。<br />
Cドライブ直下に入れて環境変数を設定。<br />
<a href="http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3"  target="_blank">http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3</a><br />
<br />
<span id="more-352"></span><br />
１．AIRファイル「AirMiniBuilder.air」をダウンロードしてインストール。<br />
<br />
２．SetupタブのSDK Pathを設定し、Save。<br />
<img src="http://blog.alt-scape.com/img/flash_builder1.jpg" alt="Flash MiniBuilder1" />
<br />
<br />
３．C:\Program Files\AirMiniBuilder\MBCompilerのstart.batを起動。<br />
<img src="http://blog.alt-scape.com/img/flash_builder2.jpg" alt="Flash MiniBuilder2" />
<br />
<br />
４．SetupタブのCheck againボタンをクリック。<br />
<br />
５．Create New ProjectタブからProject Nameを設定して<br />
Create Projectボタンをクリック。<br />
<br />
６．何か書いて「File」→「Save All」して「Compile」→「Compile and QuickRun」で出力。<br />
※プロジェクトファイルは<strong>.actionScriptProperties</strong>というファイル名で以下のディレクトリに出力されます。<br />
C:\Documents and Settings\○○○\minibuilder\プロジェクト名<br />
<img src="http://blog.alt-scape.com/img/flash_builder4.jpg" alt="Flash MiniBuilder4" />
<br />
<br />
以下のコードでデバッガを表示させることも可能。<br />
import com.victordramba.console.*;<br />
<br />
//uncomment to enable debugger console<br />
Debugger.setParent(this, true);<br />
debug(&#8217;started in &#8216; + this);<br />
<img src="http://blog.alt-scape.com/img/flash_builder3.jpg" alt="Flash MiniBuilder3" />
<br />
<br />
参考：<br />
<a href="http://www.victordramba.com/?p=36" target="_blank" title="Desktop Flash MiniBuilder is out!">http://www.victordramba.com/?p=36</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/352/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>無制限に双方向通信が可能なLocalConnectionクラス「FlashLCS」</title>
		<link>http://blog.alt-scape.com/archives/296</link>
		<comments>http://blog.alt-scape.com/archives/296#comments</comments>
		<pubDate>Fri, 13 Mar 2009 02:46:43 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[ソースコード]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=296</guid>
		<description><![CDATA[



こちらで「FlashLCS」という新しいLocalConnectionライブラリが言及されています。

ライブラリのダウンロード先：
http://code.google.com/p/flashlcs/

ライブ [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/localconnection.jpg" alt="LocalConnectionクラス「FlashLCS」" class="imgnostyle" />
<br />
<br />
<a href="http://labs.blitzagency.com/?p=650" target="_blank" title="New open source project enables unlimited local runtime collaboration for the Flash Platform.">こちら</a>で「<strong>FlashLCS</strong>」という新しい<strong>LocalConnection</strong>ライブラリが言及されています。<br />
<br />
ライブラリのダウンロード先：<br />
<a href="http://code.google.com/p/flashlcs/" target="_blank" title="flashlcs">http://code.google.com/p/flashlcs/</a><br />
<br />
ライブラリの特長：<br />
    * 従来の<strong>LocalConnection</strong>に必要なソースコードと作業時間を劇的に短縮します。<br />
    * 同じコンピュータ上で動きながら、2つのFlash間で<strong>無制限</strong>な<strong>双方向通信</strong>を可能にします。<br />
    * Flashプラットフォームのための新しい可能性を拡げます。デスクトップアプリケーション同士やブラウザでマルチスレッド化されたFlashアプリケーションの通信も。<br />
<br />
<span id="more-296"></span><br />
残念なことにライブラリに付属のサンプルソースに<strong>CS3</strong>版があったのに<br />
現在は<strong>CS4</strong>と<strong>FlexBuilder3</strong>のみになっています。<br />
僕は事前に落としておいたので<strong>CS3</strong>で試してみます。<br />
<br />
サンプル手順：<br />
1. 以下に300&#215;300の片方のFlashを表示させます。<br />
2. シフトキーを押しながらこの <a href="http://blog.alt-scape.com/swf/localconnection/other.html" target="_blank"><strong>リンク</strong></a> をクリックして新規ブラウザを開きます。<br />
3. 新規ブラウザで開いたもう一方のFlashが画像をロードします。<br />
4. 画像データをByteArrayに突っ込んで<strong>LocalConnectionService</strong>を通して以下のFlash上に表示させます。<br />
　　以下のFlashからは毎秒もう一方のFlashのマウス位置周辺画像を取得しにいくようになってます。<br />
<div id="so_lcs"></div>
<script type="text/javascript">
<!--
	var so_lcs = new SWFObject("http://blog.alt-scape.com/swf/localconnection/lcs_1.swf", "lcs", "300", "300", "9", "#000000");
	so_lcs.addParam("wmode", "window");
	so_lcs.addParam("allowFullScreen", "true");
	so_lcs.addParam("menu", "false");
	so_lcs.write("so_lcs");
-->
</script>
<br />
<a href="http://blog.alt-scape.com/fla/localconnection.zip" target="_blank" title="サンプルソース"><strong>サンプルソース</strong></a><br />
<br />
<br />
＜これまでのLocalConnectionの物理制限＞<br />
<br />
* <strong>40KBの限界</strong><br />
（LocalConnectionを通して送られた通信量は<strong>40KB</strong>の限界だった。これ以上はランタイム・エラーを起こします）<br />
<br />
* <strong>片方向通信</strong><br />
（LocalConnectionを通したすべてのコミュニケーションが一方向だった）<br />
<br />
<br />
FlashLCS（LocalConnectionService）はそれらの制限を解決してくれます。<br />
こういうのはもっと実用的なサンプルを作ると使い道がはっきりしてきそうです。<br />
AIR同士の連携とかで威力を発揮するのかな～。<br />
<br />
Papervision3Dの人もサンプル作ってますYO。<br />
※このページを開いたままにしておくと、下記ページのFlashは機能しないのでご注意を。<br />
<a href="http://pv3d.org/2009/03/06/localserviceconnection-flashlcs-dem/" target="_blank" title="LocalServiceConnection (FlashLCS) demo">http://pv3d.org/2009/03/06/localserviceconnection-flashlcs-dem/</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/296/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>FlashEff &#8211; 多彩な効果を演出するFlashコンポーネント -</title>
		<link>http://blog.alt-scape.com/archives/293</link>
		<comments>http://blog.alt-scape.com/archives/293#comments</comments>
		<pubDate>Wed, 25 Feb 2009 09:00:21 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[参考]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash CS4]]></category>
		<category><![CDATA[コンポーネント]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=293</guid>
		<description><![CDATA[



FlashEff
http://www.flasheff.com/

FlashEffというFlash CS3（CS4）用のAS3.0コンポーネントがあります。
「現在140以上のパターンが内臓されていて、アニメ [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/flasheff1.jpg" alt="FlashEff" />
<br />
<br />
<strong>FlashEff</strong><br />
<a href="http://www.flasheff.com/" target="_blank" title="FlashEff">http://www.flasheff.com/</a><br />
<br />
FlashEffという<strong>Flash CS3</strong>（<strong>CS4</strong>）用の<strong>AS3.0コンポーネント</strong>があります。<br />
「現在140以上のパターンが内臓されていて、アニメーション/変遷/フィルタからボタン動作まで<br />
ActionScriptを意識しないで多彩な効果を与えることができます」<br />
とサイトに書いてあります。<br />
スクリプトとか全く触りたくない人にとっては便利ツールだけど<br />
まんま使うとなるとアレなんでカスタマイズ性に優れてるのかが気になります。<br />
アニメーション主体のメディアバナーの制作には<br />
複数パターン作って提出するときに重宝するかもしれませんね。<br />
気になった方は機能限定の<strong>フリー版</strong>があるので試しに使ってみてはいかがでしょうか。<br />
<br />
<span id="more-293"></span><br />
<strong>対応バージョン</strong><br />
IDE： Adobe Flash CS3、Adobe Flash CS4<br />
Action Script Version： AS3.0 only<br />
Flash Player Version： Flash Player 9, 10, +<br />
works： AIR、Stand Alone players<br />
<br />
<br />
<strong>料金体系</strong><br />
<img src="http://blog.alt-scape.com/img/flasheff2.jpg" alt="料金体系" />
<br />
月額約4000円！高ぇ～<br />
<br />
<br />
<strong>エフェクトショーケース</strong><br />
<a href="http://www.flasheff.com/patternsshowcase/" target="_blank" title="エフェクトショーケース">http://www.flasheff.com/patternsshowcase/</a><br />
※こちらで実際にエフェクトを試すことができます。<br />
<br />
<br />
<strong>使い方</strong><br />
<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/PbBnDp4f42U&#038;hl=ja&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/PbBnDp4f42U&#038;hl=ja&#038;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><br />
<br />
<br />
<strong>フリー版ダウンロード</strong><br />
<a href="http://www.flasheff.com/freedownload/" target="_blank" title="フリー版ダウンロード">http://www.flasheff.com/freedownload/</a><br />
<br />
<strong>フリー版と有料版の比較</strong><br />
<img src="http://blog.alt-scape.com/img/flasheff3.jpg" alt="フリー版と有料版の比較" />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/293/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>サイト上でFlashをつくることのできるサービス「wonderfl」</title>
		<link>http://blog.alt-scape.com/archives/259</link>
		<comments>http://blog.alt-scape.com/archives/259#comments</comments>
		<pubDate>Wed, 17 Dec 2008 17:49:27 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[WEBサイト]]></category>
		<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=259</guid>
		<description><![CDATA[



カヤックさんから鼻血モノのサービスが登場しました。

wonderfl
http://wonderfl.kayac.com/

これはサイト上のフォーム内にActionscript3.0のソースコードを書くと、
 [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/wonderfl.jpg" border="0" width="550" height="310" />
<br />
<br />
カヤックさんから鼻血モノのサービスが登場しました。<br />
<br />
<strong>wonderfl</strong><br />
<a href="http://wonderfl.kayac.com/" target="_blank" title="wonderfl">http://wonderfl.kayac.com/</a><br />
<br />
これはサイト上のフォーム内に<strong>Actionscript3.0</strong>のソースコードを書くと、<br />
サーバーサイドで自動コンパイルして<br />
フォーム右側に書き出された<strong>swf</strong>を表示してくれるサービスです。<br />
<br />
・リアルタイムでプレビューしながらのトライ＆エラーもできちゃう<br />
・他人のコードをダウンロードしたり、覗き見しながら上達できる<br />
・ゼロから書くだけではなく、他人のコードを改変することも可能<br />
・書き出したswfを外部サイトへ貼り付けられる<br />
・はてなID、Yahoo!ID、livedoorID、mixiIDなどのOpenIDで簡単ログイン<br />
・ランキング機能で神が上位に（はてなスターのようなレーティングの仕組みがあるとうれしい）<br />
<br />
さっきログインしてみたらいきなり盛り上がってますね～。<br />
<br />
<span id="more-259"></span><br />
試しに以前エントリーした<strong>Frocessing</strong>のサンプルを書いたら見事にビルド成功！<br />
<strong>Spark Project</strong>のライブラリもインクルードできたのでこりゃいろいろ試す価値ありそうでふ。<br />
<iframe src="http://wonderfl.kayac.com/blogparts/380525b95a6200f3254fcc0e4b11975dcc87bbd2" width="484" height="490" style="border:1px black solid;"></iframe><br />
<br />
【追記】<br />
ヘルプに書いてありました。<br />
使用可能なライブラリは今のところは以下のみです。<br />
<strong>as3corelib</strong>, version: 0.92.1<br />
<strong>tweener</strong>, version: 1.31.74<br />
<strong>Progression</strong>, version 3.0.8<br />
<strong>Thread</strong>, version 1.0<br />
<strong>Frocessing</strong>, rev.2067@libspark(maybe)<br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/259/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>サーバーの時間をPHP+Flash（AS3）で取得する</title>
		<link>http://blog.alt-scape.com/archives/242</link>
		<comments>http://blog.alt-scape.com/archives/242#comments</comments>
		<pubDate>Tue, 09 Dec 2008 03:11:43 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[AS2]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[ソースコード]]></category>
		<category><![CDATA[時計]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=242</guid>
		<description><![CDATA[





仕事でちょこっとやったのでメモメモ。


以下、ソースコード。

ActionScript2の場合
var varsData:LoadVars = new LoadVars(); 
varsData.onLoad = function(success):Void
{  
    if (success)
    {
        test.text = 
        this.year + &#34;年&#34; +
        this.month + &#34;月&#34; +
     [...]]]></description>
			<content:encoded><![CDATA[<p>
<div id="so_clock"></div>
<script type="text/javascript">
<!--
	var so_clock = new SWFObject("http://blog.alt-scape.com/swf/clock/clock.swf", "clock", "550", "400", "9", "#ffffff");
	so_clock.addParam("wmode", "window");
	so_clock.addParam("allowFullScreen", "true");
	so_clock.addParam("menu", "false");
	so_clock.write("so_clock");
-->
</script>
<br />
仕事でちょこっとやったのでメモメモ。<br />
<br />
<span id="more-242"></span><br />
以下、ソースコード。<br />
<br />
<strong>ActionScript2</strong>の場合<br />
<pre class="code"><span class="keyword">var</span> varsData:LoadVars = <span class="keyword">new</span> LoadVars(); <br />
varsData.onLoad = <span class="keyword">function</span>(success):Void<br />
{  <br />
    <span class="keyword">if</span> (success)<br />
    {<br />
        test.text = <br />
        <span class="keyword">this</span>.year + <span class="str">&quot;年&quot;</span> +<br />
        <span class="keyword">this</span>.month + <span class="str">&quot;月&quot;</span> +<br />
        <span class="keyword">this</span>.day + <span class="str">&quot;日&quot;</span> +<br />
        <span class="keyword">this</span>.week +<br />
        <span class="keyword">this</span>.hour + <span class="str">&quot;時&quot;</span> +<br />
        <span class="keyword">this</span>.minutes + <span class="str">&quot;分&quot;</span> +<br />
        <span class="keyword">this</span>.seconds + <span class="str">&quot;秒&quot;</span>;<br />
    }<br />
};<br />
varsData.load(<span class="str">&quot;http://blog.alt-scape.com/swf/clock/clock.php&quot;</span>);</pre>
<br />
<br />
<strong>ActionScript3</strong>の場合<br />
Clock.as<br />
<pre class="code"><span class="keyword">package</span> <br />
{<br />
　<span class="keyword">import</span> flash.events.Event;<br />
　<span class="keyword">import</span> flash.events.EventDispatcher;<br />
　<span class="keyword">import</span> flash.net.URLLoader;<br />
　<span class="keyword">import</span> flash.net.URLLoaderDataFormat;<br />
　<span class="keyword">import</span> flash.net.URLRequest;<br />
　<span class="keyword">import</span> flash.net.URLRequestMethod;<br />
　<span class="keyword">import</span> flash.net.URLVariables;<br />
　<br />
　<span class="rem">/**<br />
　* Clock<br />
　* @alt<br />
　*/</span><br />
　<span class="keyword">public</span> <span class="keyword">class</span> Clock <span class="keyword">extends</span> EventDispatcher<br />
　{<br />
        <span class="rem">//</span><br />
        <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">const</span> COMPLETE:<span class="keyword">String</span> = <span class="str">&quot;GetClockComplete&quot;</span>;<br />
        <span class="keyword">private</span> <span class="keyword">var</span> _result:Object = <span class="keyword">new</span> Object();<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// コンストラクタ</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">public</span> <span class="keyword">function</span> Clock(url:<span class="keyword">String</span> = <span class="keyword">null</span>)<br />
        {<br />
            <span class="keyword">if</span> (url) getClock(url);<br />
        }<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// ロード</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">public</span> <span class="keyword">function</span> getClock(url:<span class="keyword">String</span>):<span class="keyword">void</span><br />
        {<br />
            <span class="keyword">var</span> urlRequest:URLRequest = <span class="keyword">new</span> URLRequest(url);<br />
            urlRequest.method = URLRequestMethod.GET;<br />
            <span class="keyword">var</span> urlLoader:URLLoader = <span class="keyword">new</span> URLLoader();<br />
            urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;<br />
            urlLoader.addEventListener(Event.COMPLETE, completeHandler);<br />
            urlLoader.load(urlRequest);<br />
        }<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// ロード完了</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> completeHandler(e:Event):<span class="keyword">void</span><br />
        {<br />
            <span class="keyword">var</span> urlVariables:URLVariables = <span class="keyword">new</span> URLVariables(e.target.data);<br />
            <span class="keyword">var</span> obj:Object = <span class="keyword">new</span> Object();<br />
            <span class="keyword">for</span> (<span class="keyword">var</span> i:<span class="keyword">String</span> <span class="keyword">in</span> urlVariables)<br />
            {<br />
                obj[i] = urlVariables[i];<br />
            }<br />
            _result = obj;<br />
            dispatchEvent(<span class="keyword">new</span> Event(COMPLETE));<br />
        }<br />
        <br />
        <span class="rem">//-------------------------</span><br />
        <span class="rem">// getter</span><br />
        <span class="rem">//-------------------------</span><br />
        <span class="keyword">public</span> <span class="keyword">function</span> <span class="keyword">get</span> result():Object<br />
        {<br />
            <span class="keyword">return</span> _result;<br />
        }<br />
　}<br />
}<br />
</pre>
<br />
PHP（clock.php）は<br />
<pre class="code"><span class="tag">&lt;?php</span><br />
<br />
<span class="variable">$year</span> = date(<span class="str">&quot;Y&quot;</span>); <span class="rem">//年（4ケタ）</span><br />
<span class="variable">$month</span> = date(<span class="str">&quot;n&quot;</span>); <span class="rem">//月（1ケタ）</span><br />
<span class="variable">$day</span> = date(<span class="str">&quot;j&quot;</span>); <span class="rem">//日（1ケタ）</span><br />
<span class="variable">$week</span> = date(<span class="str">&quot;w&quot;</span>); <span class="rem">//曜日（0～6）</span><br />
<br />
<span class="variable">$hour</span> = date(<span class="str">&quot;G&quot;</span>); <span class="rem">//24時間表記</span><br />
<span class="variable">$minutes</span> = date(<span class="str">&quot;i&quot;</span>); <span class="rem">//分（2ケタ）</span><br />
<span class="variable">$seconds</span> = date(<span class="str">&quot;s&quot;</span>); <span class="rem">//秒（2ケタ）</span><br />
<br />
<br />
<span class="keyword">switch</span> (<span class="variable">$week</span>) {<br />
    <span class="keyword">case</span> <span class="num">0</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;日曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">1</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;月曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">2</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;火曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">3</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;水曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">4</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;木曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">5</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;金曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">case</span> <span class="num">6</span>:<br />
        <span class="variable">$week</span> = <span class="str">&quot;土曜&quot;</span>;<br />
        <span class="keyword">break</span>;<br />
    <span class="keyword">default</span>:<br />
        <span class="keyword">break</span>;<br />
}<br />
<br />
<span class="rem">//出力</span><br />
<span class="keyword">echo</span> <span class="str">&quot;year=&quot;</span>.<span class="variable">$year</span>.<span class="str">&quot;&amp;month=&quot;</span>.<span class="variable">$month</span>.<span class="str">&quot;&amp;day=&quot;</span>.<span class="variable">$day</span>.<span class="str">&quot;&amp;week=&quot;</span>.<span class="variable">$week</span>.<span class="str">&quot;&amp;hour=&quot;</span>.<span class="variable">$hour</span>.<span class="str">&quot;&amp;minutes=&quot;</span>.<span class="variable">$minutes</span>.<span class="str">&quot;&amp;seconds=&quot;</span>.<span class="variable">$seconds</span>;<br />
<br />
<span class="tag">?&gt;</span></pre></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/242/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FlashでTwitterの発言を取得してみる</title>
		<link>http://blog.alt-scape.com/archives/234</link>
		<comments>http://blog.alt-scape.com/archives/234#comments</comments>
		<pubDate>Mon, 01 Dec 2008 06:56:15 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[マッシュアップ]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=234</guid>
		<description><![CDATA[


世界最大のつぶやき共有サービス「Twitter」での発言を取得してみるテスト。
APIが公開されているのですが、
今回はTwitterユーザー全員の発言情報を5秒おきに最新10件表示するというものを作ってみました。 [...]]]></description>
			<content:encoded><![CDATA[<p>
<a rel="shadowbox;width=800;height=600" class="option" title="twitter1" href="http://blog.alt-scape.com/swf/twitter1.swf"><img src="http://blog.alt-scape.com/img/twitter1.jpg" border="0" width="550" height="338" /></a><br />
<br />
世界最大のつぶやき共有サービス「<a href="http://twitter.com/" target="_blank" title="Twitter"><strong>Twitter</strong></a>」での発言を取得してみるテスト。<br />
APIが公開されているのですが、<br />
今回はTwitterユーザー全員の発言情報を5秒おきに最新10件表示するというものを作ってみました。<br />
読み込みのフォーマットは<strong>XML</strong>、<strong>JSON</strong>、<strong>RSS</strong>、<strong>Atom</strong>のフォーマットで情報を使うことができます。<br />
今回はXMLで読み込みます。以下、API仕様をざっくりと書きました。<br />
<br />
<span id="more-234"></span><br />
<strong>Twitterユーザー全員の発言情報</strong>（最新20件）<br />
http://twitter.com/statuses/public_timeline.xml<br />
<br />
<strong>友達の発言情報</strong>（最新20件）<br />
http://twitter.com/statuses/friends_timeline/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<strong>自分の発言情報</strong>（最新20件）<br />
http://twitter.com/statuses/user_timeline/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<strong>自分の友達のリスト情報</strong><br />
http://twitter.com/statuses/friends/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<strong>followしてくれているユーザーリスト情報</strong><br />
http://twitter.com/statuses/followers/自分のユーザーネーム か IDナンバー.xml<br />
<br />
<br />
Twitterもクロスドメインポリシーの関係でFlashからはAPIに接続できないのでPHP経由で取得してきます。<br />
<a href="http://yoppa.org/rsd.php?itemid=691" target="_blank" title="Flash(AS3)でcrossdomain.xml無しにクロスドメインにアクセスする">こちら</a> のPHPソースを参考にして<br />
<pre class="code"><span class="keyword">var</span> xmlURL:<span class="keyword">String</span> = <span class="str">&quot;crossdomain-proxy.php?url=http://twitter.com/statuses/public_timeline.xml&quot;</span>;<br />
xmlLoader = <span class="keyword">new</span> URLLoader();<br />
xmlLoader.load(<span class="keyword">new</span> URLRequest(xmlURL));</pre>
<br />
のように取得すればＯＫです。<br />
<br />
<br />
【2009/9/15追記】<br />
<a href="http://blog.alt-scape.com/fla/twitter_sample.zip">ソース</a>をアップしました。<br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/234/feed</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Flash CS3でGoogle Maps APIを利用してみる</title>
		<link>http://blog.alt-scape.com/archives/231</link>
		<comments>http://blog.alt-scape.com/archives/231#comments</comments>
		<pubDate>Wed, 26 Nov 2008 16:35:18 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[ソースコード]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=231</guid>
		<description><![CDATA[


Google Mapコンポーネントで簡単にFlashでも地図を扱うことができるので今回は表示部分だけやってみました。
で、CS3で作る際にまず準備として

１．APIキー取得
http://code.google. [...]]]></description>
			<content:encoded><![CDATA[<p>
<a rel="shadowbox;width=550;height=400" class="option" title="googlemap1" href="http://blog.alt-scape.com/swf/googlemap1.swf"><img src="http://blog.alt-scape.com/img/googlemap1a.jpg" border="0" /></a><br />
<br />
<strong>Google Map</strong>コンポーネントで簡単にFlashでも地図を扱うことができるので今回は表示部分だけやってみました。<br />
で、CS3で作る際にまず準備として<br />
<br />
<strong>１．APIキー取得</strong><br />
<a href="http://code.google.com/apis/maps/signup.html" target="_blank" title="APIキー取得">http://code.google.com/apis/maps/signup.html</a><br />
<br />
<strong>２．SDK（swcファイル）をダウンロード</strong><br />
<a href="http://code.google.com/apis/maps/documentation/flash/" target="_blank" title="Google Maps API for Flash">http://code.google.com/apis/maps/documentation/flash/</a><br />
<br />
解凍して中のswcファイル（最新はmap_1_8a.swc）を<br />
C:\Program Files\Adobe\Adobe Flash CS3\ja\Configuration\Components<br />
にGoogleフォルダを作って中に格納します。<br />
CS3を起動すると、コンポーネントパネルにGoogleMapsConponentが入っているのが分かります。<br />
それをライブラリにドラッグするだけで準備ＯＫ！<br />
1.6以前の古いバージョンは <a href="http://groups.google.com/group/google-maps-api-for-flash/files" target="_blank" title="1.6以前の古いバージョン">ここ</a> にあります。<br />
mxpファイルが入っていればダブルクリックで簡単にインストールできますね。<br />
<br />
こちらのページが大変参考になりました！<br />
<a href="http://1ka2ka.com/archives/200808/24_005443.html" target="_blank" title="CS3 版の Google Maps API for Flash でいろいろ遊んでみる">http://1ka2ka.com/archives/200808/24_005443.html</a><br />
<br />
<span id="more-231"></span><br />
<strong>３．ステージに地図表示</strong><br />
あとは以下を参考にクラスをインポートしていくつかnewするだけで地図が表示できますよ。<br />
リファレンスやチュートリアルを見れば分かりやすく書いてあります。<br />
<br />
<strong>リファレンス</strong><br />
<a href="http://code.google.com/apis/maps/documentation/flash/reference.html" target="_blank" title="リファレンス">http://code.google.com/apis/maps/documentation/flash/reference.html</a><br />
<strong>チュートリアル</strong><br />
<a href="http://code.google.com/apis/maps/documentation/flash/tutorial-flash.html" target="_blank" title="チュートリアル">http://code.google.com/apis/maps/documentation/flash/tutorial-flash.html</a><br />
<strong>デモギャラリー</strong><br />
<a href="http://code.google.com/apis/maps/documentation/flash/demogallery.html" target="_blank" title="デモギャラリー">http://code.google.com/apis/maps/documentation/flash/demogallery.html</a><br />
<strong>サンプル</strong><br />
<a href="http://code.google.com/apis/maps/documentation/flash/examples/index.html" target="_blank" title="サンプル">http://code.google.com/apis/maps/documentation/flash/examples/index.html</a><br />
<br />
<strong>４．追加オプション</strong><br />
拡大比率、経度緯度、地図タイプ等を設定するだけで表示はすぐ出来ちゃいます。<br />
その他、地図上にアイコンや線を描くことができるので<br />
東京タワーと六本木ヒルズにアイコンを設置して線で結んでみました。<br />
さらに直線以外に道路に沿って細かい線を引くこともできます。<br />
以下のエンコードユーティリティツールで手動で設定した東京タワー周辺のポイント座標をエンコードして<br />
赤枠で囲んだ<strong>Encoded Polyline</strong>と<strong>Encoded Levels</strong>を<strong>EncodedPolylineData</strong>の引数に入れてやることで表示できました。<br />
<br />
<img src="http://blog.alt-scape.com/img/googlemap1b.jpg" border="0" />
<br />
<strong>エンコードユーティリティ</strong><br />
<a href="http://code.google.com/apis/maps/documentation/polylineutility.html" target="_blank" title="エンコードユーティリティ">http://code.google.com/apis/maps/documentation/polylineutility.html</a><br />
<strong>エンコードアルゴリズム</strong><br />
<a href="http://code.google.com/apis/maps/documentation/polylinealgorithm.html" target="_blank" title="エンコードアルゴリズム">http://code.google.com/apis/maps/documentation/polylinealgorithm.html</a><br />
<br />
<br />
ソースは<br />
<pre class="code"><span class="keyword">package</span><br />
{<br />
    <span class="keyword">import</span> flash.display.<span class="keyword">MovieClip</span>;<br />
    <span class="keyword">import</span> flash.display.Stage;<br />
    <span class="keyword">import</span> flash.display.StageAlign;<br />
    <span class="keyword">import</span> flash.display.StageScaleMode;<br />
    <span class="keyword">import</span> flash.geom.Point;<br />
    <span class="keyword">import</span> flash.events.Event;<br />
    <span class="keyword">import</span> flash.events.MouseEvent;<br />
    <span class="keyword">import</span> com.google.maps.controls.OverviewMapControl;<br />
    <span class="keyword">import</span> com.google.maps.MapEvent;<br />
    <span class="keyword">import</span> com.google.maps.MapMouseEvent;<br />
    <span class="keyword">import</span> com.google.maps.Map;<br />
    <span class="keyword">import</span> com.google.maps.MapType;<br />
    <span class="keyword">import</span> com.google.maps.LatLng;<br />
    <span class="keyword">import</span> com.google.maps.LatLngBounds;<br />
    <span class="keyword">import</span> com.google.maps.ProjectionBase;<br />
    <span class="keyword">import</span> com.google.maps.interfaces.IProjection;<br />
    <span class="keyword">import</span> com.google.maps.interfaces.IMapType;<br />
    <span class="keyword">import</span> com.google.maps.controls.MapTypeControl;<br />
    <span class="keyword">import</span> com.google.maps.controls.ZoomControl;<br />
    <span class="keyword">import</span> com.google.maps.controls.PositionControl;<br />
    <span class="keyword">import</span> com.google.maps.overlays.Marker;<br />
    <span class="keyword">import</span> com.google.maps.overlays.MarkerOptions;<br />
    <span class="keyword">import</span> com.google.maps.styles.StrokeStyle;<br />
    <span class="keyword">import</span> com.google.maps.styles.FillStyle;<br />
    <span class="keyword">import</span> com.google.maps.overlays.Polyline;<br />
    <span class="keyword">import</span> com.google.maps.overlays.PolylineOptions;<br />
    <span class="keyword">import</span> com.google.maps.overlays.EncodedPolylineData;<br />
    <br />
    <span class="keyword">public</span> <span class="keyword">class</span> GoogleMap1 <span class="keyword">extends</span> <span class="keyword">MovieClip</span><br />
    {<br />
        <span class="keyword">private</span> <span class="keyword">const</span> API_KEY:<span class="keyword">String</span> = <span class="str">&quot;あなたのAPIキー&quot;</span>; <span class="rem">//APIキー</span><br />
        <span class="keyword">private</span> <span class="keyword">var</span> container:<span class="keyword">MovieClip</span>;<br />
        <span class="keyword">private</span> <span class="keyword">var</span> map:Map;<br />
        <br />
        <span class="keyword">public</span> <span class="keyword">function</span> GoogleMap1()<br />
        {<br />
            initMap();<br />
        }<br />
        <br />
        <span class="keyword">private</span> <span class="keyword">function</span> initMap():<span class="keyword">void</span><br />
        {<br />
            <span class="rem">//コンテナ作成</span><br />
            container = <span class="keyword">new</span> <span class="keyword">MovieClip</span>();<br />
            container.x = container.y = <span class="num">0</span>;<br />
            addChild(container);<br />
            <br />
            <span class="rem">//Google MAP 作成</span><br />
            map = <span class="keyword">new</span> Map();<br />
            map.key = API_KEY; <span class="rem">//APIキー</span><br />
            map.language = <span class="str">&quot;ja&quot;</span>; <span class="rem">//言語</span><br />
            map.setSize(<span class="keyword">new</span> Point(stage.stageWidth, stage.stageHeight));    <span class="rem">//地図サイズ設定</span><br />
            map.addControl(<span class="keyword">new</span> PositionControl()); <span class="rem">//ポジションキーボタン</span><br />
            map.addControl(<span class="keyword">new</span> ZoomControl()); <span class="rem">//拡大縮小スライダー</span><br />
            map.addControl(<span class="keyword">new</span> MapTypeControl()); <span class="rem">//地図タイプセレクトボタン</span><br />
            map.addControl(<span class="keyword">new</span> OverviewMapControl()); <span class="rem">//右下オーバービューコントローラー</span><br />
            map.addEventListener(MapEvent.MAP_READY, onMapReady, <span class="keyword">false</span>, <span class="num">0</span>, <span class="keyword">true</span>); <span class="rem">//イベント設定</span><br />
            container.addChild(map);<br />
        }<br />
        <br />
        <span class="rem">//地図生成完了イベント</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> onMapReady(e:MapEvent):<span class="keyword">void</span><br />
        {<br />
            map.removeEventListener(MapEvent.MAP_READY, onMapReady);<br />
            <br />
            <span class="rem">//初期表示設定</span><br />
            map.enableScrollWheelZoom(); <span class="rem">//マウスホイールで拡大縮小できる</span><br />
            map.enableContinuousZoom(); <span class="rem">//スムースな拡大縮小ができる</span><br />
            <br />
            <span class="rem">//座標セット</span><br />
            map.setCenter(<br />
                                <span class="keyword">new</span> LatLng(<span class="num">35.6586317</span>, <span class="num">139.7454109</span>), <span class="rem">//座標</span><br />
                                <span class="num">14</span>, <span class="rem">//拡大率</span><br />
                                MapType.NORMAL_MAP_TYPE <span class="rem">//地図タイプ</span><br />
            );<br />
            <br />
            <span class="rem">//マーカー追加</span><br />
            addMarkers();<br />
            <br />
            <span class="rem">//直線ラインを引く</span><br />
            addDrawLine();<br />
            <br />
            <span class="rem">//地図ラインを引く</span><br />
            addMapLine();<br />
            <br />
            <span class="rem">//ステージ設定</span><br />
            initStage();<br />
        }<br />
        <br />
        <span class="rem">//マーカー配置</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> addMarkers():<span class="keyword">void</span><br />
        {<br />
            <span class="rem">//マーカー1設定</span><br />
            <span class="keyword">var</span> marker1:Marker = <span class="keyword">new</span> Marker(<br />
                        <span class="keyword">new</span> LatLng(<span class="num">35.6586317</span>, <span class="num">139.7454109</span>),<br />
                        <span class="keyword">new</span> MarkerOptions({strokeStyle: <span class="keyword">new</span> StrokeStyle({color: <span class="num">0</span>xFF0000}), fillStyle: <span class="keyword">new</span> FillStyle({color: <span class="num">0</span>xFFFFFF, alpha: <span class="num">1</span>}), radius:<span class="num">10</span>, hasShadow:<span class="keyword">true</span>})<br />
            );<br />
            marker1.addEventListener(MapMouseEvent.CLICK, clicked, <span class="keyword">false</span>, <span class="num">1</span>, <span class="keyword">true</span>);<br />
            <br />
            <span class="rem">//マーカー2設定</span><br />
            <span class="keyword">var</span> marker2:Marker = <span class="keyword">new</span> Marker(<br />
                        <span class="keyword">new</span> LatLng(<span class="num">35.6602616</span>, <span class="num">139.7295483</span>)<br />
            );<br />
            marker2.addEventListener(MapMouseEvent.CLICK, clicked, <span class="keyword">false</span>, <span class="num">1</span>, <span class="keyword">true</span>);<br />
            <br />
            <span class="rem">//マーカー配置</span><br />
            map.addOverlay(marker1);<br />
            map.addOverlay(marker2);<br />
        }<br />
        <br />
        <span class="rem">//マーカークリックイベント</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> clicked(event:MapMouseEvent):<span class="keyword">void</span><br />
        {<br />
            map.panTo(event.target.getLatLng()); <span class="rem">//マーカー座標へ移動</span><br />
        }<br />
        <br />
        <br />
        <span class="rem">//直線ラインを引く</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> addDrawLine():<span class="keyword">void</span><br />
        {<br />
            <span class="rem">// Polyline overlay.</span><br />
            <span class="keyword">var</span> polyline:Polyline = <span class="keyword">new</span> Polyline([<br />
                    <span class="keyword">new</span> LatLng(<span class="num">35.6586317</span>, <span class="num">139.7454109</span>),<br />
                    <span class="keyword">new</span> LatLng(<span class="num">35.6602616</span>, <span class="num">139.7295483</span>)<br />
                    ], <span class="keyword">new</span> PolylineOptions({ strokeStyle: <span class="keyword">new</span> StrokeStyle({<br />
                    color: <span class="num">0</span>xFF0000,<br />
                    thickness: <span class="num">4</span>,<br />
                    alpha: <span class="num">0.7</span>})<br />
            }));<br />
            map.addOverlay(polyline);<br />
        }<br />
        <br />
        <br />
        <span class="rem">//地図に沿ったラインを引く</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> addMapLine():<span class="keyword">void</span><br />
        {<br />
            <span class="rem">// エンコードされた座標値</span><br />
            <span class="keyword">var</span> encodedPoints:<span class="keyword">String</span> = <span class="str">&quot;kqsxE{_}sYiAm@kCbHk@`E|An@fNuFpJqEcCwB??{DOwEbAiByAy@vC&quot;</span><br />
            <br />
            <span class="rem">// エンコードされたズームレベル値</span><br />
            <span class="keyword">var</span> encodedLevels:<span class="keyword">String</span> = <span class="str">&quot;BBBBBBBBBBBBB&quot;</span>;<br />
<br />
            <br />
            <span class="keyword">var</span> encodedPolyline:Polyline = Polyline.fromEncoded(<br />
                <span class="keyword">new</span> EncodedPolylineData(<br />
                                        encodedPoints, <span class="rem">// エンコードされた座標値</span><br />
                                        <span class="num">32</span>, <span class="rem">// 線の描画精度</span><br />
                                        encodedLevels, <span class="rem">// エンコードされたレベル</span><br />
                                        <span class="num">4</span><br />
                ), <br />
                <span class="keyword">new</span> PolylineOptions({ strokeStyle: <span class="keyword">new</span> StrokeStyle({<br />
                                        color: <span class="num">0</span>x00FF00, <span class="rem">// 線の色</span><br />
                                        thickness: <span class="num">10</span>, <span class="rem">// 線の太さ</span><br />
                                        alpha: <span class="num">0.5</span> <span class="rem">// 線の透明度</span><br />
                })<br />
            }));<br />
            map.addOverlay(encodedPolyline);<br />
        }<br />
        <br />
        <br />
        <span class="rem">//ステージ設定</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> initStage():<span class="keyword">void</span><br />
        {<br />
            stage.showDefaultContextMenu = <span class="keyword">false</span>;<br />
            stage.scaleMode = StageScaleMode.NO_SCALE;<br />
            stage.align = StageAlign.TOP_LEFT;<br />
            stage.addEventListener(Event.RESIZE, stageResizeListener);<br />
            stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveListener, <span class="keyword">true</span>);<br />
            <br />
            map.setSize(<span class="keyword">new</span> Point(stage.stageWidth, stage.stageHeight));<br />
        }<br />
        <br />
        <span class="rem">//マウス移動イベント</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> mouseMoveListener(e:MouseEvent):<span class="keyword">void</span><br />
        {<br />
            <span class="rem">//マウスの座標取得</span><br />
            <span class="keyword">var</span> nowLL:LatLng = map.fromViewportToLatLng(<span class="keyword">new</span> Point(mouseX, mouseY));<br />
            <span class="rem">//trace(nowLL.lat()+&quot; , &quot;+nowLL.lng());</span><br />
        }<br />
        <br />
        <span class="rem">//ステージリサイズイベント</span><br />
        <span class="keyword">private</span> <span class="keyword">function</span> stageResizeListener(e:Event):<span class="keyword">void</span><br />
        {<br />
            map.setSize(<span class="keyword">new</span> Point(stage.stageWidth, stage.stageHeight));<br />
        }<br />
    }<br />
}</pre>
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/231/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Flickrの画像を取得してPapervision3Dで動かす</title>
		<link>http://blog.alt-scape.com/archives/230</link>
		<comments>http://blog.alt-scape.com/archives/230#comments</comments>
		<pubDate>Tue, 25 Nov 2008 16:55:16 +0000</pubDate>
		<dc:creator>alt</dc:creator>
				<category><![CDATA[サンプル]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Papervision3D]]></category>
		<category><![CDATA[フルスクリーン]]></category>
		<category><![CDATA[マッシュアップ]]></category>

		<guid isPermaLink="false">http://blog.alt-scape.com/?p=230</guid>
		<description><![CDATA[



FlickrのAPIより画像を取得してPapervision3Dライブラリで3D上に配置するサンプルを作ってみました。
使用したライブラリは
tweener
papervision3D（ver1.7）
as3fl [...]]]></description>
			<content:encoded><![CDATA[<p>
<img src="http://blog.alt-scape.com/img/papervision3d_flickr1.jpg" border="0" alt="Flickrの画像を取得してPapervision3Dで動かす" />
<br />
<br />
<strong>Flickr</strong>のAPIより画像を取得して<strong>Papervision3D</strong>ライブラリで3D上に配置するサンプルを作ってみました。<br />
使用したライブラリは<br />
<a href="http://code.google.com/p/tweener/" target="_blank" title="tweener">tweener</a><br />
<a href="http://code.google.com/p/papervision3d/" target="_blank" title="papervision3d">papervision3D</a>（ver1.7）<br />
<a href="http://code.google.com/p/as3flickrlib/" target="_blank" title="as3flickrlib">as3flickrlib</a><br />
です。<br />
<br />
<span id="more-230"></span><br />
注意事項として、<br />
BitmapFileMaterialでFlickrなどの外部サーバの画像を表示するときに<br />
ローカルでは問題なく表示できているのにサーバーにアップすると表示できない現象があります。<br />
これは以下のサンドボックス制限によるものです。<br />
<em><strong>表示リスト内の移動</strong><br />
「SWF ファイルから他のサンドボックスからロードされた表示オブジェクトにアクセスする機能は制限されます。SWF ファイルが別のサンドボックス内にある別の SWF ファイルによって作成された表示オブジェクトにアクセスするには、アクセスされる側の SWF ファイルが Security.allowDomain() メソッドを呼び出し、アクセスする側の SWF ファイルのドメインによるアクセスを許可する必要があります。詳細については、作成者 (開発者) コントロールを参照してください。<br />
Loader オブジェクトでロードされた Bitmap オブジェクトにアクセスするには、クロスドメインポリシーファイルはイメージファイルのオリジンサーバー上に存在する必要があり、そのクロスドメインポリシーファイルは、SWF ファイルのドメインに、Bitmap オブジェクトへのアクセスを試みる許可を付与する必要があります。」</em><br />
<a href="http://livedocs.adobe.com/flash/9.0_jp/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&#038;file=00000354.html" target="_blank" title="クロススクリプト">Flash Player セキュリティ > クロススクリプト引用</a><br />
<br />
これを回避するために、頭に以下を記述します。<br />
<pre class="code">Security.loadPolicyFile(<span class="str">&quot;http://api.flickr.com/crossdomain.xml&quot;</span>);<br />
Security.loadPolicyFile(<span class="str">&quot;http://farm1.static.flickr.com/crossdomain.xml&quot;</span>);<br />
Security.loadPolicyFile(<span class="str">&quot;http://farm2.static.flickr.com/crossdomain.xml&quot;</span>);<br />
Security.loadPolicyFile(<span class="str">&quot;http://farm3.static.flickr.com/crossdomain.xml&quot;</span>);<br />
Security.loadPolicyFile(<span class="str">&quot;http://farm4.static.flickr.com/crossdomain.xml&quot;</span>);</pre>
<br />
あと、フルスクリーン表示も簡単にできます。<br />
<pre class="code">btn.addEventListener(MouseEvent.CLICK, <span class="keyword">function</span>(e:MouseEvent):<span class="keyword">void</span>{<br />
        toggleFullScreen();<br />
});<br />
<span class="keyword">function</span> toggleFullScreen():<span class="keyword">void</span><br />
{<br />
    <span class="keyword">if</span>(stage.displayState == StageDisplayState.NORMAL)<br />
    {<br />
        stage.displayState = StageDisplayState.FULL_SCREEN;<br />
    }<br />
    <span class="keyword">else</span><br />
    {<br />
        stage.displayState = StageDisplayState.NORMAL;<br />
    }<br />
}</pre>
<br />
swfobject.jsに<br />
<pre class="code">so.addParam(<span class="str">&quot;allowFullScreen&quot;</span>, <span class="str">&quot;true&quot;</span>);</pre>
を1行付け足します。<br />
<br />
出来上がったのはこんなかんじです。<br />
気持ちCNNやBBCの報道スタジオ風。<br />
<br />
<div id="so_papervision3d_flickr1"></div>
<script type="text/javascript">
<!--
	var so_papervision3d_flickr1= new SWFObject("http://blog.alt-scape.com/swf/papervision3d_flickr1.swf", "papervision3d_flickr1", "550", "400", "9", "#ffffff");
	so_papervision3d_flickr1.addParam("wmode", "window");
	so_papervision3d_flickr1.addParam("allowFullScreen", "true");
	so_papervision3d_flickr1.addParam("menu", "false");
	so_papervision3d_flickr1.write("so_papervision3d_flickr1");
-->
</script>
<br />
<br />
Flickr Servicesドキュメント<br />
<a href="http://www.flickr.com/services/api/" target="_blank" title="Flickr Servicesドキュメント">http://www.flickr.com/services/api/</a><br />
<br />
APIキー取得<br />
<a href="http://www.flickr.com/services/api/keys/" target="_blank" title="APIキー取得">http://www.flickr.com/services/api/keys/</a><br />
<br />
Flickr Api Explorer<br />
<a href="http://flickr.com/services/api/explore/?method=flickr.photos.search" target="_blank" title="Flickr Api Explorer">http://flickr.com/services/api/explore/?method=flickr.photos.search</a><br />
<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.alt-scape.com/archives/230/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
