home

AS3 : Google Maps API

March 07, 2010

FlashとGoogleMapの連携って意外に簡単。

まず、SDKをダウンロードしてからAPIキーを取得する。
http://code.google.com/apis/maps/documentation/flash/
http://code.google.com/apis/maps/signup.html

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

import com.google.maps.LatLng;
import com.google.maps.Map;
import com.google.maps.MapEvent;
import com.google.maps.MapType;

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

function onMapReady(event:Event):void {
map.setCenter(new LatLng(40.736072,-73.992062), 14, MapType.NORMAL_MAP_TYPE);
}

続きを読む "AS3 : Google Maps API"

Permalink | Comments (0)

Frocessing

January 20, 2010

Processingライクなドロー系AS3ライブラリです。
あくまでライクだそうですが、遊んでみると結構面白いです。

Spark projectよりダウンロードできます。
http://www.libspark.org/wiki/nutsu/Frocessing

開発者 nutsu さん
http://nutsu.com/

サンプルサイト
http://hokori.net/2009/08/13/frocessing/
http://blog.alt-scape.com/archives/138

Processing
電子アートとビジュアルデザインのためのプログラミング言語
http://processing.org/

Permalink | Comments (0)

AS3 : SoundMixer.computeSpectrum

SoundMixer.computeSpectrumは結構問題あるようですが、
とりあえず波形を表示するサンプルを作ってみました。


package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
import flash.media.*;
import flash.net.*;
import flash.utils.*;

public class Main extends Sprite {
private var WaveH:int = stage.stageHeight/2;
//チャンネル毎のByteArray取得範囲
private const chanlength:int = 550;
private var _byteArray:ByteArray = new ByteArray();

//サウンドの再生・毎フレームイベント設定
public function Main() {
var sound:Sound = new Sound();
var soundurl:URLRequest = new URLRequest("loop.mp3");
sound.load(soundurl);

var channel:SoundChannel;
channel = sound.play(0,100);
addEventListener( Event.ENTER_FRAME, enterFrameHandler );
//channel.addEventListener( Event.SOUND_COMPLETE, PlayCompleteHandler );
}

//毎フレームサウンドの波形取得・線描画
private function enterFrameHandler( e:Event ):void {
//_byteArrayにサウンド波形の値を設定
SoundMixer.computeSpectrum( _byteArray, false, 0 );
var g:Graphics = graphics;
g.clear();

g.lineStyle( 0, 0x000000 );
g.beginFill (0xFF0000, 1.0); // 面のスタイル設定

/* 円で表示する場合
var n:Number = 0;
n = ( _byteArray.readFloat() * WaveH );
g.drawCircle(275,200,(WaveH - n));
*/

/* 波形表示の場合*/
g.moveTo( 0, WaveH );
//左チャンネルだけ取得して描画
var n:Number = 0;
for ( var i:int = 0; i < chanlength; i++ ) {
n = ( _byteArray.readFloat() * WaveH );
g.lineTo( i, WaveH - n );
}
}
private function PlayCompleteHandler( e:Event ):void {
removeEventListener( Event.ENTER_FRAME, enterFrameHandler );
}
}
}


続きを読む "AS3 : SoundMixer.computeSpectrum"

Permalink | Comments (0)