<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>PUBLICROOTS | mtFlash</title>
<link>http://www.publicroots.com/fmt/</link>
<description></description>
<language>ja</language>
<copyright>Copyright 2010</copyright>
<lastBuildDate>Sun, 07 Mar 2010 17:33:09 +0900</lastBuildDate>
<generator>http://www.movabletype.org/?v=3.151-ja</generator>
<docs>http://blogs.law.harvard.edu/tech/rss</docs> 

<item>
<title>AS3 : Google Maps API</title>
<description><![CDATA[<p>FlashとGoogleMapの連携って意外に簡単。</p>

<p>まず、SDKをダウンロードしてからAPIキーを取得する。<br />
<a href="http://code.google.com/apis/maps/documentation/flash/" target="_blank">http://code.google.com/apis/maps/documentation/flash/</a><br />
<a href="http://code.google.com/apis/maps/signup.html" target="_blank">http://code.google.com/apis/maps/signup.html</a></p>

<p>swcファイル（map_1_8a.swc）をComponentsに格納します。<br />
あとはクラスをインポートしていくつかnewするだけで地図が表示できます。</p>

<pre>
import com.google.maps.LatLng;<br>
import com.google.maps.Map;<br>
import com.google.maps.MapEvent;<br>
import com.google.maps.MapType;<br>

<p>var map:Map = new Map();<br />
map.key = "your_api_key";<br />
map.setSize(new Point(stage.stageWidth, stage.stageHeight);<br />
map.addEventListener(MapEvent.MAP_READY, onMapReady);<br />
this.addChild(map);</p>

<p>function onMapReady(event:Event):void {<br />
  map.setCenter(new LatLng(40.736072,-73.992062), 14, MapType.NORMAL_MAP_TYPE);<br />
}<br />
</pre></p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000293.html</link>
<guid>http://www.publicroots.com/fmt/archives/000293.html</guid>
<category>AS3</category>
<pubDate>Sun, 07 Mar 2010 17:33:09 +0900</pubDate>
</item>
<item>
<title>Frocessing</title>
<description><![CDATA[<p>Processingライクなドロー系AS3ライブラリです。<br />
あくまでライクだそうですが、遊んでみると結構面白いです。</p>

<p>Spark projectよりダウンロードできます。<br />
<a href="http://www.libspark.org/wiki/nutsu/Frocessing" target="_blank">http://www.libspark.org/wiki/nutsu/Frocessing</a><br><br />
開発者 nutsu さん<br />
<a href="http://nutsu.com/" target="_blank">http://nutsu.com/</a><br><br />
サンプルサイト<br />
<a href="http://hokori.net/2009/08/13/frocessing/" target="_blank">http://hokori.net/2009/08/13/frocessing/</a><br />
<a href="http://blog.alt-scape.com/archives/138" target="_blank">http://blog.alt-scape.com/archives/138</a><br><br />
<em><b>Processing</b></em><br />
電子アートとビジュアルデザインのためのプログラミング言語<br />
<a href="http://processing.org/" target="_blank">http://processing.org/</a><br />
<br></p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000292.html</link>
<guid>http://www.publicroots.com/fmt/archives/000292.html</guid>
<category>Frocessing</category>
<pubDate>Wed, 20 Jan 2010 17:17:14 +0900</pubDate>
</item>
<item>
<title>AS3 : SoundMixer.computeSpectrum</title>
<description><![CDATA[<p><em>SoundMixer.computeSpectrum</em>は結構問題あるようですが、<br />
とりあえず波形を表示するサンプルを作ってみました。<br><br />
<pre><br />
package {<br />
 import flash.display.*;<br />
 import flash.events.*;<br />
 import flash.filters.*;<br />
 import flash.media.*;<br />
 import flash.net.*;<br />
 import flash.utils.*;<br />
	<br />
 public class Main extends Sprite {<br />
  private var WaveH:int = stage.stageHeight/2;<br />
  //チャンネル毎のByteArray取得範囲<br />
  private const chanlength:int = 550;<br />
  private var _byteArray:ByteArray = new ByteArray();</p>

<p>  //サウンドの再生・毎フレームイベント設定<br />
  public function Main() {<br />
   var sound:Sound = new Sound();<br />
   var soundurl:URLRequest = new URLRequest("loop.mp3");<br />
   sound.load(soundurl);<br />
		<br />
   var channel:SoundChannel;<br />
   channel = sound.play(0,100);<br />
   addEventListener( Event.ENTER_FRAME, enterFrameHandler );<br />
   //channel.addEventListener( Event.SOUND_COMPLETE, PlayCompleteHandler );<br />
   }		</p>

<p>   //毎フレームサウンドの波形取得・線描画<br />
   private function enterFrameHandler( e:Event ):void {<br />
   //_byteArrayにサウンド波形の値を設定<br />
   SoundMixer.computeSpectrum( _byteArray, false, 0 );<br />
   var g:Graphics = graphics;<br />
   g.clear();<br />
	<br />
   g.lineStyle( 0, 0x000000 );<br />
   g.beginFill (0xFF0000, 1.0);	// 面のスタイル設定<br />
		<br />
   /* 円で表示する場合<br />
   var n:Number = 0;<br />
   n = ( _byteArray.readFloat() * WaveH );<br />
   g.drawCircle(275,200,(WaveH - n));<br />
   */</p>

<p>   /* 波形表示の場合*/<br />
   g.moveTo( 0, WaveH );<br />
   //左チャンネルだけ取得して描画<br />
   var n:Number = 0;<br />
   for ( var i:int = 0; i < chanlength; i++ ) {<br />
    n = ( _byteArray.readFloat() * WaveH );<br />
    g.lineTo( i, WaveH - n );<br />
   }<br />
  }<br />
  private function PlayCompleteHandler( e:Event ):void {<br />
   removeEventListener( Event.ENTER_FRAME, enterFrameHandler );<br />
  }<br />
 }<br />
}<br />
</pre><br />
</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000291.html</link>
<guid>http://www.publicroots.com/fmt/archives/000291.html</guid>
<category>AS3</category>
<pubDate>Wed, 20 Jan 2010 00:35:28 +0900</pubDate>
</item>
<item>
<title>AS3 : Google Analytics</title>
<description><![CDATA[<p>AS2の時と変更してるんですね。</p>

<p>google codeから<a href="http://code.google.com/p/gaforflash/" target="_blank">gaforflash</a>をダウンロードする。</p>

<p>Macの場合は、<br />
<em>Macintosh HD/Applications/Adobe Flash CS3/Configuration/Components</em><br />
にダウンロードしたgaforflash/libフォルダーを"Google"とか適当な名前付けてコピーする。<br />
Winの場合は、<br />
<em>C:¥Program Files¥Adobe¥ Adobe Flash CS3¥language¥Configuration¥Components</em></p>

<p>コンポーネントウィンドウの中からGoogle/analytics.swcをflaファイルの適当なレイヤーに配置、<br />
名前はtrackerとかになってるからそのままでOK。パラメータのaccountに"UA-XXXXXXX-X"を入れる。</p>

<p>ソースは<br />
<pre><br />
import com.google.analytics.AnalyticsTracker;  <br />
import com.google.analytics.GATracker;  </p>

<p>//取得したいイベントの処理後に追加<br />
tracker.trackPageview("/sample");<br />
</pre></p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000283.html</link>
<guid>http://www.publicroots.com/fmt/archives/000283.html</guid>
<category>AS3</category>
<pubDate>Wed, 04 Nov 2009 13:05:04 +0900</pubDate>
</item>
<item>
<title>AS3 : ドロップシャドー</title>
<description><![CDATA[<pre>
import flash.filters.DropShadowFilter;<br>
〜<br>
//dropShadow<br>
private var dropShadow : DropShadowFilter;<br>
〜<br>
//ドロップシャドー<br>
dropShadow = new DropShadowFilter();<br>
dropShadow.distance = 0;<br>
dropShadow.blurX = 16;<br>
dropShadow.blurY = 16;<br>
dropShadow.alpha= 0.20;<br>
sample_img.filters = [dropShadow];<br>
</pre>]]></description>
<link>http://www.publicroots.com/fmt/archives/000280.html</link>
<guid>http://www.publicroots.com/fmt/archives/000280.html</guid>
<category>AS3</category>
<pubDate>Wed, 14 Oct 2009 22:45:57 +0900</pubDate>
</item>
<item>
<title>AS3 : 背景テクスチャ</title>
<description><![CDATA[<p>画像素材のリンゲージプロパティをBG_dotにしてから下記の設定OK。</p>

<pre>
private var detailSprite   	: Sprite;<br>
private var _paternobj　     : BitmapData;<br>
〜<br>
//背景のテクスチャー設定<br>
detailSprite = new Sprite();<br>
_paternobj = new BG_dot(0, 0);<br>
<br>
detailSprite.graphics.beginBitmapFill(_paternobj);<br>
detailSprite.graphics.drawRect(0, 0, _detailthis.stage.stageWidth, <br>
_detailthis.stage.stageWidth);<br>
detailSprite.graphics.endFill();<br>
<br>
//背景をaddする<br>
_detailthis.addChild(detailSprite);<br>
detailSprite.x = 0;<br>
detailSprite.y = 0;<br>
〜
</pre>]]></description>
<link>http://www.publicroots.com/fmt/archives/000277.html</link>
<guid>http://www.publicroots.com/fmt/archives/000277.html</guid>
<category>AS3</category>
<pubDate>Fri, 02 Oct 2009 21:11:33 +0900</pubDate>
</item>
<item>
<title>Twitter</title>
<description><![CDATA[<p><a href="http://twitter.com/" target="_blank">Twitter</a>って最近また人気がでてきたの？<br />
今やってる案件でクライントから「Twitterで何かできませんか？」って提案があったらしく、<br />
いろいろ調べてみました。</p>

<p>参考になったサイト<br />
Hogwarts Wizarding Class<br />
<a href="http://www.harrypottertweet.com/" target="_blank">http://www.harrypottertweet.com/</a><br />
Billie Tweets - a Twitter tribute to Michael Jackson's "Billie Jean"<br />
<a href="http://billietweets.com/" target="_blank">http://billietweets.com/</a><br />
TwittEarth<br />
<a href="http://www.twittearth.com/" target="_blank">http://www.twittearth.com/</a></p>

<p>ん..... 正直どれもうまく落とし込まれているような気はしないですが。</p>

<p>これの方が実用的でかなり活用できていると思います。難しい....<br />
福助株式会社<br />
<a href="http://twitter.com/fukuske" target="_blank">http://twitter.com/fukuske</a><br />
フジヤカメラ<br />
<a href="http://twitter.com/fujiyacamera" target="_blank">http://twitter.com/fujiyacamera</a></p>

<p>やっぱりTwitterはこういう使い方が正しいと思います。<br />
それかちょっとしたバズぐらいにしかならないですね。<br />
</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000274.html</link>
<guid>http://www.publicroots.com/fmt/archives/000274.html</guid>
<category>news</category>
<pubDate>Thu, 03 Sep 2009 04:38:18 +0900</pubDate>
</item>
<item>
<title>APMT5 CONFERENCE</title>
<description><![CDATA[<p><a href="http://www.apmt.jp/"><img class="alignnone size-full wp-image-69" title="apmtweek09_banner320b" src="http://www.apmt.jp/images/apmtweek09_banner320b.gif" alt="apmtweek09_banner320b" width="320" height="520" /></a></p>

<p>行きます！</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000270.html</link>
<guid>http://www.publicroots.com/fmt/archives/000270.html</guid>
<category>news</category>
<pubDate>Tue, 11 Aug 2009 02:32:24 +0900</pubDate>
</item>
<item>
<title>JSでアドレスをSWFに渡す方法</title>
<description><![CDATA[<pre> 
＜script type="text/javascript"＞<br>
  var siteurl = location.href.substring(0,location.href.indexOf(location.pathname));<br>
  var so = new SWFObject("sample.swf", "sample","100%", "00%", "9");<br>
  so.addParam("menu", "false");<br>
  so.addParam("quality", "best");<br>
  so.addParam("scale", "noScale");<br>
  so.addParam("salign", "TL");<br>
  so.addVariable("sample", siteurl);<br>
  so.write("flashcontent");<br>
＜/script＞<br>
</pre>

<p>Flash側<br />
<pre><br />
var thisloader = _sthis.parent.parent;<br />
var flashVars:Object = thisloader.loaderInfo.parameters;<br />
_site_pass = flashVars["siteurl"];<br />
trace("_site_pass = "+_site_pass);//http://www.sample.com<br />
</pre><br />
</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000255.html</link>
<guid>http://www.publicroots.com/fmt/archives/000255.html</guid>
<category>news</category>
<pubDate>Thu, 11 Jun 2009 00:07:17 +0900</pubDate>
</item>
<item>
<title>AS3 : swfのあるドメインを取得する</title>
<description><![CDATA[<p>AS2ではswfのあるアドレスを<br />
<em>_root._url</em><br />
で取得できたんですがAS3ではできません。</p>

<p>でいろいろ調べた結果、ドメインを取得する方法がありました。<br />
<pre><br />
import flash.net.LocalConnection;<br />
〜<br />
//swfを置いているドメイン名(サブドメイン含む)<br />
public static function get currentDomain():String{<br />
   var url_string:String = new LocalConnection( ).domain;<br />
   trace(url_string);//出力結果　www.sample.com<br />
}<br />
</pre></p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000252.html</link>
<guid>http://www.publicroots.com/fmt/archives/000252.html</guid>
<category>AS3</category>
<pubDate>Tue, 02 Jun 2009 02:22:39 +0900</pubDate>
</item>
<item>
<title>ターミナルでデバック表示</title>
<description><![CDATA[<p>昔 FirefoxでFlashTracerていうのがあったけど、<br />
バージョンアップしてから見れなくなったのでターミナルで見れるようにしました。</p>

<p>Flash Player をDebugger Versionsにする<br />
<a href="http://www.adobe.com/support/flashplayer/downloads.html" target="_blank">http://www.adobe.com/support/flashplayer/downloads.html</a></p>

<p>それからターミナルを立ち上げてデバッグを表示しているファイルにアクセウスする。<br />
tail -f ~/Library/Preferences/Macromedia/"Flash Player"/Logs/flashlog.txt</p>

<p>かなり便利です。</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000250.html</link>
<guid>http://www.publicroots.com/fmt/archives/000250.html</guid>
<category>news</category>
<pubDate>Tue, 26 May 2009 17:45:40 +0900</pubDate>
</item>
<item>
<title>AS3 : PHPとの通信方法</title>
<description><![CDATA[<pre>
import flash.events.*;<br>
import flash.net.URLLoader;<br>
import flash.net.URLLoaderDataFormat;<br>
import flash.net.URLRequest;<br>
import flash.net.URLRequestMethod;<br>
import flash.net.URLVariables;<br>

<p>〜</p>

<p>//sample1, sample2, sample3の値をPOSTする<br />
var variables:URLVariables = new URLVariables();<br />
variables.sample1 = "sample1";<br />
variables.sample2 = "sample2";<br />
variables.sample3 = "sample3";<br />
 	<br />
var urlRequest:URLRequest = new URLRequest(sample_php_url);<br />
urlRequest.method = URLRequestMethod.POST;<br />
urlRequest.data = variables;<br />
var urlLoader:URLLoader = new URLLoader();<br />
urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;<br />
urlLoader.addEventListener(Event.COMPLETE, SampleComplete);<br />
urlLoader.load(urlRequest);</p>

<p>public function SampleComplete(eventObject:Event):void<br />
{<br />
送信完了後のアクション<br />
}<br />
</pre><br />
</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000247.html</link>
<guid>http://www.publicroots.com/fmt/archives/000247.html</guid>
<category>AS3</category>
<pubDate>Mon, 11 May 2009 17:39:54 +0900</pubDate>
</item>
<item>
<title>HTTPS接続(SSL)する際のcrossdomain.xmlの設定</title>
<description><![CDATA[<pre>
＜?xml version="1.0"?＞<br>
＜!DOCTYPE cross-domain-policy SYSTEM "/xml/dtds/cross-domain-policy.dtd"＞<br>
＜!-- Policy file for mysite.com --＞<br>
＜cross-domain-policy＞<br>
  ＜allow-access-from domain="sample.com" secure="false" /＞<br>
＜/cross-domain-policy＞<br>
</pre >

<p>HTTP SWFファイルとHTTPS SWFファイルの通信を許可するようにするには<br><br />
<em>secure="false"</em>にすればOKです。<br><br />
デフォルト(何も書かない状態)は<em>secure="true"</em>なので、<br><br />
HTTPS接続(SSL)する場合は<em>secure="false"</em>にすればOKです。<br></p>

<p>つまりswfの別ドメイン間のやり取りに加えて、SSL通信が必要な場合はこうすれはいいみたいですね。<br><br />
忘れそうなのでメモ。</p>

<p>参考サイトはこちら<br />
<a href="http://www.adobe.com/jp/devnet/flashplayer/articles/secure_swf_apps_05.html" target="_blank">http://www.adobe.com/jp/devnet/flashplayer/articles/secure_swf_apps_05.html</a><br />
<a href="http://blog.img8.com/archives/2006/12/002751.html" target="_blank">http://blog.img8.com/archives/2006/12/002751.html</a></p>

<p><br />
その他の方法では、codebaseと、embedタグ内のプラグイン取得への箇所のプロトコル宣言をhttpsにしておくだけでOKだそうです。<br />
<pre><br />
＜object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" <br><br />
codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" <br><br />
width="**" height="**" id="**" align="middle"＞  <br />
〜<br />
＜embed src="huga.swf" quality="high" bgcolor="#ffffff" width="**" height="**" name="**" <br><br />
align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" <br><br />
type="application/x-shockwave-flash" pluginspage="https://www.adobe.com/go/getflashplayer" /＞<br />
＜/object＞<br />
</pre></p>

<p>参考サイトはこちら<br />
<a href="http://glasses-factory.net/2008/11/crossdomain-ssl.html" target="_blank">http://glasses-factory.net/2008/11/crossdomain-ssl.html</a><br />
</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000246.html</link>
<guid>http://www.publicroots.com/fmt/archives/000246.html</guid>
<category>news</category>
<pubDate>Tue, 28 Apr 2009 22:52:59 +0900</pubDate>
</item>
<item>
<title>AS3 : Loaderオブジェクトでロードしたswfの変数を参照する</title>
<description><![CDATA[<pre>
//loader<br>
public var ldrobj        : Loader;<br>
var urImage       : URLRequest;<br>
var info          : LoaderInfo;<br>
var contents_url : String;//コンテンツアドレス<br>
<br>
var subcontents:*;

<p>ldrobj = new Loader();<br />
urImage = new URLRequest(contents_url);<br />
ldrobj.load(urImage);<br />
this.addChild(ldrobj);</p>

<p>// ローダーインフォを取得<br />
info = ldrobj.contentLoaderInfo;<br />
info.addEventListener (Event.OPEN,LoaderInfoOpenFunc);<br />
info.addEventListener(ProgressEvent.PROGRESS, LoadProgress);<br />
info.addEventListener(Event.COMPLETE, loaded_INFO);</p>

<p>//-----[読み込み開始イベントの処理]<br />
public function LoaderInfoOpenFunc(event:Event){<br />
trace ("読み込みを開始した");<br />
}<br />
//-----[読み込み中イベントの処理]<br />
public function LoadProgress(event:ProgressEvent):void<br />
{<br />
trace("progress = " + Math.round((event.bytesLoaded*100)/(event.bytesTotal)));<br />
}<br />
//-----[読み込み完了イベントの処理]<br />
public function loaded_INFO(event:Event):void<br />
{<br />
subcontents = ldrobj.content;<br />
subcontents._intbtn();//ロード後に実行したい関数 : _intbtn<br />
〜演出〜<br />
Tweener.addTween(ldrobj, {alpha:1, time:1, transition:"easeInExpo", delay:1});<br />
			<br />
info.removeEventListener (Event.OPEN,LoaderInfoOpenFunc);<br />
info.removeEventListener(ProgressEvent.PROGRESS, LoadProgress);<br />
info.removeEventListener(Event.COMPLETE, loaded_INFO);<br />
}<br />
</pre><br />
<em><br />
subcontents = ldrobj.content;<br />
subcontents._intbtn();//ロード後に実行したい関数 : _intbtn()<br />
<em><br />
この部分。<br />
subcontentsを使ってアクセスすればOKです。</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000245.html</link>
<guid>http://www.publicroots.com/fmt/archives/000245.html</guid>
<category>AS3</category>
<pubDate>Thu, 23 Apr 2009 21:17:47 +0900</pubDate>
</item>
<item>
<title>AS3 : HTMLからSWFにパラメータを受け渡す方法</title>
<description><![CDATA[<p>idという名のパラメータを受け渡しする場合<br />
HTML側<br />
<pre><br />
＜script type="text/javascript" src="swfobject.js"＞＜/script＞<br><br />
〜<br><br />
＜div id="flashcontent"＞<br><br />
〜代替テキスト〜<br><br />
＜/div＞<br><br />
＜script type="text/javascript"＞<br><br />
 var so = new SWFObject("sample.swf", "swfl", "550", "400", "8", "#000000");<br><br />
 so.addVariable("id", getQueryParamValue("id"));<br><br />
 so.write("flashcontent");<br><br />
＜/script＞<br><br />
〜<br><br />
</pre></p>

<p>fla側<br />
<pre><br />
var tmpParam_obj:Object;<br><br />
var id_number:String;<br><br />
〜<br><br />
tmpParam_obj = loaderInfo.parameters;<br><br />
id_number = String(tmpParam_obj["id"]);<br><br />
trace("id_number = "+id_number);<br><br />
</pre></p>

<p> <em>loaderInfo.parameters</em>に格納されるようです。</p>]]></description>
<link>http://www.publicroots.com/fmt/archives/000244.html</link>
<guid>http://www.publicroots.com/fmt/archives/000244.html</guid>
<category>AS3</category>
<pubDate>Wed, 22 Apr 2009 20:50:10 +0900</pubDate>
</item>


</channel>
</rss>