Archive for the ‘flash’ Category

大阪ひよこの会 第四回勉強会 「トゥイーン祭り!」

月曜日, 6月 20th, 2011

Tweenerのサンプルっていうか、アレ作りました。

先日のひよこの会に参加してきました。

僕も発表しました。レアです。アレですけどレアです。

発表っていうか、まぁ、作ったんですよ。

Tweenerのtransitionってたくさん(41種類)あるけど、どんなもんだ!?って思うわけです。

よく使うやつから、全然興味がわかないやつ

Tweenerのドキュメントで全部どんなもんか見れるんですが、ぶっちゃけ、想像しにくいなぁって。

もっと視覚的にわかりやすいサンプルってナカナカなくて、そうやったら自分で作ってみたらどうだろう。

で、作ったのが下記のやつ

Tweener Transition

this content needs adobe flash player.


僕の中で「大きさ」「移動」「回る」ってのが、よく使うもんじゃないかなぁと、3つの動きをご用意。

「change tween」ボタンでトゥイーンを切り替えて「transition」でトゥイーン(変な日本語ですいません)

各ブロックに数字が3つあるのは「scale」「x」「rotation」です。

 

これでもまだわかりにくいなぁ

「Back」とか「Cubic」とかが10種あって、それぞれに「easeIn」とか「easeOut」やらが4種ある

それを踏まえて、並べてみたのが下記リンクにあります(デカイのでブログに貼れなかった。。。。)

Tweener Transition

 

少しでもTweenerのTransitionにどんなものがあるのか、というのでお困りの方にとって役に立てたら幸いです。

これをみて色々言いたいことがあるかもしれませんが、お手柔らかに。。。

 

※森さん(@ymori_tw)からの宿題(クリックしてそのtransitionのコードをクリップボードにコピーしてはどう?)はまだ出来ておりませんが、近いうちにやります。

その他のレポートはにゃあプロジェクトに上がってきてるようなので、そちらも是非!

NetStream

木曜日, 12月 16th, 2010

adobeのリファレンスみたら一発だった。

何でそんなことにも気がつかなかったのか。。。

1、flv・f4vの総時間

まずはNetConnectionをnewして

var _nc:NetConnection = new NetConnection();
_nc.addEventListener(NetStatusEvent.NET_STATUS, ConnectCheck);
_nc.connect(null);

NetStatusEvent.NET_STATUSをリッスンリッスン。

でコネクトに成功していたらっていうのは、

private function ConnectCheck(e:NetStatusEvent):void {
    if (e.info.code == "NetConnection.Connect.Success") {
        var _ns:NetStream = new NetStream(_nc);
        _ns.client = {} ;//new Object()でも可
         _video.attachNetStream(_ns);
         _ns.play("path");
    }
}

みたいな。

_videoはコストラクタでnewしてaddChildしているものとして下さいな。

で、肝心の「総時間」は、

_ns.client = {};

にぶち込む用(?)のonMetaDataっていうコールバックがあるってさー。

function getMetaData():Object {
    var _obj:Object = {};
    _obj.onMetaData = function(meta:*):void {
        totaltime = meta.duration;
    };
    return _obj;
}

っていうことで、durationが総時間になります。

_ns.client = getMetaData();

って呼んであげて下さい。

2、現在の再生位置(時間)

は、

_ns.time //ミリ秒

です。

はい。

3、音量

は、volumeプロパティがないので、わざわざSoundTransformを生成して、あてます。

var _st:SoundTransForm = new SoundTransform(音量, パン);
_ns.soundTransform = _st;

という具合に。

スライダーか何かで制御したい場合は、

_st.volume = 0.5;  //0 - 1 の間ですわ。
_ns.soundTransform = _st;

と、volumeに値を代入した後は、NetStreamインスタンスのsoundTransformに再度代入してください。

忘れがちな私のメモでございやした。

jsonでつまりまくった

水曜日, 10月 6th, 2010

おこんばんわ

つかれた

そこから。

エキサイトブログから記事を引っ張ってくる、って簡単だと思っていたけど、

tonさん(twitter)にエキサイト以外からのドメインが排除されているって教えてもらい、

有為さん(twitter)にgoogle.feeds.Feedを教えてもらった。

説明は、、、サイトに飛んでくだせぇ。

_loader = new URLLoader ();
_loader.load ( new URLRequest (
    "http://ajax.googleapis.com/ajax/services/feed/load?" +
    'q=' +
    encodeURIComponent("http://rss.exblog.jp/エキサイトブログのRSS") +
    '&key=---APIKEY----' +
    '&v=1.0'
));
_loader.addEventListener(Event.COMPLETE, Loaded);

まぁ、引っ張ってきて、ロードが終わるとって

as3corelibで何やかんややってもなかなかうまいこといかなんだ。

で最終的には下記

private function Loaded(e:Event):void
{
    var _json:String = URLLoader(e.currentTarget).data;
    var _news:Object = JSON.decode(_json);
   
    var _array:Array = _news['responseData']['feed']['entries'];
           
    trace(_array[0]["link"]); //URL
    trace(_array[0]["title"]); //記事タイトル
    trace(_array[0]["publishedDate"]); //投稿日時
    trace(_array[0]["content"]); //記事内容
}

だぁ!深い!深すぎる。

むー。

お世話になったサイト

feb19.jp blog

徒然なるままに

ありがとうございます。

あへー

定点観察

月曜日, 9月 13th, 2010

定点観察、が面白い。

定点観察もどきかもしれない。

一つの視点、その物語。

20100912

http://gaina-laboratory.com/video/

「夜に動きはないけど、信号機の点滅、雲の移動、そして、眼下にあるホテルのネオンが消える。」

次は、何を撮って、省略して、物語にしようかな。

interface

日曜日, 8月 8th, 2010

Interfaceって何ぞや?

って思ってましたよ。

実装しなければいけないもんを枠として備えている、って感じでしょうか?

package  
{
    public interface InterfaceTest
    {
        function sampleTest(str:String = ""):String;
    }
}

というインターフェイスがあって、これを実装(implement)するとなった場合

package  
{
    public class TestClass implements InterfaceTest
    {
        public function TestClass(str:String="") {}
       
        public function sampleTest(str:String = ""):String
        {
            return str + "\.unko";
        }
    }
}

となるわけで、このTestClassにsampleTest()がなければ、エラーになる。
インターフェイスに、もし、

public function sample02(str:String=""):String

があったとすれば、TestClassにはその記述がないので、エラーになる。
ほほう。
「絶対実装したいメソッドやらを入れなくてはいけない」場合、「入れ忘れ防止」になるわけですねー。
ほほほう。
上のインターフェイス・クラスを使って

package
{
    import flash.display.Sprite;
    import flash.text.TextField;
   
    public class Main extends Sprite
    {
       
        public function Main():void
        {
            init();
        }
       
        private function init():void
        {
            var unko:TestClass = new TestClass();
            var tf:TextField = new TextField();
            tf.text = unko.sampleTest("unko");
            addChild(tf);
        }
    }
}

をつくってやると・・・

[study] – interface – wonderfl build flash online

こうなるわけですね。
ほうほう。
簡単ではありますが、インターフェイスってなんぞ?
のお話。
ちょっと理解しましたよ。

soundspectrumとbytearrayと私

金曜日, 7月 2nd, 2010

音、って面白うございます。

そうです。

大重先生の本

に書いていたのを読んでモフモフするのが楽しくて。

SoundMixer.computeSpectrum

で情報をbytearrayに入れて、

256×2=512個の情報で遊ぶって。

512個の配列を作って、やればいい感じ。

soundtest5 – wonderfl build flash online

こんな感じになりました。

でも、こいつは、他の音楽がPC上にあればエラーになるという、

なんて、使い勝手の悪いやつなんだ!

と、思うのです。

AS3とPHPと渡し(ワタシ)

水曜日, 6月 23rd, 2010

flashでお問合せフォームを制作するとなったので、そのメモ。

使用するやつは

URLBaliablesさんです。

flash.net.URLVariablesさんです。

こいつにURLRequestを入れてモフモフするのですよ。

適当にボタン作って、TextInputとかで入力部分作って、ボタン押したら関数実行プレイ

private function sendToPHP(event:MouseEvent ):void
{
    var variable:URLVariables = new URLVariables();
    variable.name = name_text;
    variable.mail = mail_text.text;
    variable.mail_check = mail_check.text;
    variable.comment = comment.text;

    var urlReq:URLRequest = new URLRequest("url"); //PHPのパスですYO
    //urlReq.url = "url";でもOK
    urlReq.method = URLRequestMethod.POST;
    urlReq.data = variable;

    var loader:URLLoader = new URLLoader();
    loader.load(urlReq);
    loader.addEventListener(Event.COMPLETE, phpfileLoaded);
}

private function phpfileLoaded(e:Event):void
{
    trace(e.target.data);//戻り値でモフモフする感じ
}

でPHP側

    $name=$_POST['name'];
    $mail=$_POST['mail'];
    $mail_check=$_POST['mail_check'];
    $comment=$_POST['comment'];

    echo $name."\n".$mail."\n".$comment;

とでもすると、e.target.dataに$name.”\n”.$mail.”\n”.$comment;の値が入るっていう、ね。

僕はphpでメールチェックとかエラーチェックして、

エラーがあれば、エラーの値を表示する変数をecho、

エラーなければmb_sendmailして、適当な文字でもechoで吐かせて、phpfileLoaded関数内で条件使ってどうのこうのしました。

はい。

XMLをPHPで吐かせて処理するのがいい!みたいなことを書いてる方もいらっしゃいましたね。

確かに、PHP→ASに戻す変数は1つだけなので(たぶん)、そのほうが色々なことが出来そうですね。

またチャレンジ一年生したいと思います。いつの日か。

ちなみに、今回がWordPress 3.0 日本語 で書く初めてのエントリーでございました。

何の問題もなくアップグレードが出来たもの、日ごろの行いが良かったからでしょう。

まぁ、そんなにカスタムしてるわけじゃないので、当たり前のことじゃ!

等と、自分で自分をけなしたいと思います。

では!

大阪ひよこの会 第一弾 ミーティング と 懇親会

火曜日, 6月 8th, 2010

大阪ひよこの会

6/5の土曜日、18時
場所はオノフさん

発起人はひろゆきさん(@ProjectNyaさん)とマサムネさん(@masamunet)さん

ちゃんとした記事が読みたい方はこちらをチェキラ

にゃあプロジェクト
宇都宮ウェブ研究所

・・・

[メモったことの羅列]

・マニアックになりすぎないこと
・テーマを共有すること
・みんなの勉強方法って
・ビルトインクラスを一人1つ課題でつぶしていく
・自分のコードが正しいのか正しくないのかわからない
・イベントまわり(dispatcherとか)
・セキュリティ
・FlashBuilderの使い方、FDTとか
・勉強会の方向性
・ここはもっとこうしたほうがいいんじゃないっていう助言
・プロジェクト・ファイル管理の仕方
・エラーの意味

[頭の中のメモの切れ端]
・発表会、質問会、飲み会でするとか
・たまごの会、にわとりの会等の派生部会
・Progressionは素晴らしい!
・Dictionaryって便利だYO
・どうしてJSerがいないのか
・eclipse
・プリローダー
・一回にロードさせる画像は4つまでが良い
・FD3.2
・とりあえずやってみろ!
・おにぎり専用のクックパッドみたいなん
・ご当地おにぎり
・家のおにぎり
・いろいろな形のおにぎり
・前衛的おにぎり
・絶望おにぎり
・おにぎりAR

です。

おにぎりはツボでした。

個人的な感想、雑感ですが、
懇親会で色々お話を聞けたのは、すごい楽しかった。
こういうスタンスで、「何気ない話」から情報を収集することって、楽しいですし、発見が多いような気がします。

ある程度のテーマは残しつつ、脱線大いに結構!みたいな。

いまさら人には聞けないことも、
こんな質問して・・・いいのかなぁってことも、
僕がどうでもいい様なことを発言しても、
みなさんがみなさんのために真摯に考え、答えてくる環境になって行くようにしていきたいですね。

自分自身、この業界に入って数ヶ月、AS3なんて、以前勉強ようとして、挫折しています。
どうやって勉強するのか、どうやって問題を解決するのか、全く理解が出来なかったですし、聞く相手もいなかった。
これだけで、かなり堪える。
でも、ひろゆきさんやまさむねさんが言い出してくれたこのひよこの会を、
そういった方々のため、自分のためにも、盛り上げていかなあかんのかなー、と、意気込んでおります。勝手に。無力のくせに。

はい、正直、初心者で偉ぶっているますが、アウトプットすることが、必要だと思ったので、まだ書きます。

ひろゆきさんが「参加することが重要」っておっしゃっていて、これは、本当にそうだ!!と。

アウトプットがあってレスポンスがあってフィードバックがある。
これは、一人じゃ出来ん。
新たに同じようなことがあれば、アウトプットした人がレスポンスできるし。
output

ああ、まただらだらと、要点のないことを書いている!が。それもまた良し。

[あればいいなー、と思うもの]
アーカイブ的な何か。
せっかく誰から質問して、みんなで答えて、ってするなら、
そのやり取りをアーカイブとして残したいですね。
「まずこれを読め!」とかじゃーなく、そんな「ググれ!」みないなことは言わずに、
ただ単純に「知識の集積」として。
各個々人のブログなりソーシャル何とかに書く、ってのもありですけど、
こう、情報がありまっせ!的な、巨大なリソース群。
誰が管理する?ってことになるでしょうが、まず言ってみます。投げてみます。

あと、50人とかの勉強会は、勉強会としてはしんどい、と思います。
欲を言えば、超個人的に言えば、20人までがベストかなー、と。
誰かれが発言する、ってことになれば、多すぎると発言できないまま終わってしまいそうです(僕がそう!)

BBQとかやって、もっと仲良くなりたい。
人見知りを緩和させたい。

です!
しっかりやります!

ドス黒い部分、自分勝手な部分が出てきそうなので、
ここまで!

長文駄文。

追記:
ちなみにtwitterでのアウトプットは、結構有効かもしれません。
Progressionでわからん!ってさえずったら、「どこがわからんの?」とniumさんが光臨されたことがありますし、
最近ではyugopさんからのリツイート頂きました!
僕、ミーハーですよ。

actionscriptとRSS

土曜日, 6月 5th, 2010

FlashでRSSフィードを読み込みたいのけど出てしまう

「セキュリティサンドボックス侵害」っていうのん。

ググってみても、Loaderでの対処ばっかしだわさ。

外部イメージの読み込みの部分での対処ばっかりね。

LoaderContextとかLoader.load(url,context)的。

じゃー、URLLoaderの場合はどうすればいいのか・・・

URLLoaderの引数は1個(URLRequest)で、LoaderContextは持ってこれない。

なので、PHPファイルに一回そのxmlもってきて、

そのPHPファイルをFlashを置くドメインに置いて、そっから読み込むっていう所業。

<?php

echo get_file_contents('フィードのURL');

?>

「echo」は必須、だったと思います。10時間前のことは覚えていません。

そのパスをURLRequsetでとってきてURLLoaderで読み込んで、XMLList的なものに入れて、

appendTextとか何かで、for使って個数決めて、何やかんややったら出来ました。

ざっくりとしたメモ。

ちなみにフィードの相手はかのアメブロでした。

自分のやったら、問題なかった(当たり前だけど)。

だって、クロスドメイン的なxml的なの置いたんだもの。

そういやmixiも勝手に画像使われないように、クロスドメイン的なxmlに規制っていうか、

遮断しているってどっかで見ましたよ。

はい。

すんません。

あー、ブログのカテゴリー、もっとちゃんとせなあきませんとかいいながら、

また次はいつになるだろうかーなー。