Home

NAGAI TAKASUMI BLOG

soundspectrumとbytearrayと私

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

そうです。

大重先生の本

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

SoundMixer.computeSpectrum

で情報をbytearrayに入れて、

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

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

soundtest5 – wonderfl build flash online

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

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

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

と、思うのです。

AS3とPHPと渡し(ワタシ)

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

使用するやつは

URLBaliablesさんです。

flash.net.URLVariablesさんです。

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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側

1
2
3
4
5
6
    $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/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

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

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

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

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

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

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

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

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

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

1
2
3
4
5
<?php

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

?>

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

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

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

ざっくりとしたメモ。

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

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

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

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

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

はい。

すんません。

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

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

最近の色々

ここ一ヵ月色々ありましたが、

新しい仕事をするよになって、ようやく

htmlやらcssやらをモフモフすることを生業とすることに成功しました。

flashもこれから、仕事としてやっていくにあたって、勉強会に何個か参加しました。

・67works Geeks

・Progression本読み会

えー、撃沈でした。

日本でも有数なflasherさんたちに混じったのですが、なんのこっちゃ。

情けないことに、おしっこちびりそうになりました。

「本気で取り組む」っていうよりも「仕事に還元」出来るようにならんといかんなぁ、

そう感じてます。

webで飯を食う、わけですから、「稼ぐ」人間でありたいと切に、切々と。

新しいこと?というか、仲間でサイトを立ち上げました。

iLDK

今のところはみんなのブログだけですけど、なんかおもろいことがあればコンテンツとして

どんどん出して行こうと思っています。

自分自身のサイトではweb関連、iLDKでは自分の周りのことだったり、もっと「誰にでも近い」ことを、

自分の中で仕分けながらやって行こうと思います。

はい。

そういうことです。

progression、初めてちゃんと組んでいるけど、楽しいです。難しいですが。

progression本、買っていない人は、買いましょう。flashするのなら、必須。

正規表現のお勉強

  • 2010-04-11 (日)
  • WEB

twitterからRSSをひっぱってきてモフモフする時って、

ブログからひっぱってくる時と事情が違う。

一緒なんだけども、「@….」「#….」とかね、タイムラインではリンクになってますよね。

今回はPHPでTwitterからRSSでひっぱってきて、@も#も全部リンクにすることが出来るかなぁ、という勉強。

正規表現は難しい。というかややこしい。僕にとって。

わかりやすいサイトを教えてもらったので、参考にそこを読む。

さるにもわかる正規表現

まずはXML_RSSでRSSを取得しパース

1
2
$tweet=&new XML_RSS($tweet_url);
$tweet->parse();

getItems()で中身を取り出す

1
2
3
4
5
6
7
8
9
10
11
12
13
14
foreach($tweet->getItems() as $item){  
    $item['description']=mb_convert_encoding($item['description'],'UTF-8','auto');
    $item['description']=mb_substr($item['description'],6);
    $pat=array("/(https?)(:\/\/[[:alnum:]\+\$\;\?\.%,!#~*\/:@&=_-]+)/i");
    $_user=array("/(@)([[:alnum:]_]+)/");
    $_search=array("/(#)([[:alnum:]_]+)/");
    $replacements = array("<a href=\"\\1\\2\">\\1\\2</a>");
    $replacements2 = array("\\1<a href=\"http://twitter.com/\\2\">\\2</a>");
    $replacements3 = array("<a href=\"http://twitter.com/search?q=%23\\2\">\\1\\2</a>");
    $item['description']= preg_replace($pat, $replacements, $item['description']);
    $item['description']= preg_replace($_user, $replacements2, $item['description']);
    $item['description']= preg_replace($_search, $replacements3, $item['description']);
    $item['list']="<li class=\"grid twitter_li\">";
}

色々調べながらやってみました。時間かかったけど。

$pat、$_user、$_searchがマッチさせたい文字列です。

1
$pat=array("/(https?)(:\/\/[[:alnum:]\+\$\;\?\.%,!#~*\/:@&=_-]+)/i");

各項目内の[:alnum:]はアルファベット・数字全部、()は文字列のグループ化。

「?」は「直前の文字が1つ、もしくは0つ」ということみたいです。

(https?)、はつまり「httpかhttps」がマッチ、ということになります。

[]は「[]ないどれか1つ」で、+は「最低1つ直前の文字があることで同じ文字の繰り返し」ですか。

ふー

「同じ文字の繰り返し」なのですが、[]内の文字の繰り返し、っていうことになるのですね。

$replacementsは置き換える文字列です。

1
$replacements = array("<a href=\"\\1\\2\">\\1\\2</a>");

「\”」は”のエスケープで、「\\1\\2」はグループ化された$patの文字列部分をあらわしています。

なので

1
http://www.takasumi-nagai.com/

があるとしたら、

1
2
(http) \\1
(://www.takasumi-nagai.com/) \\2

ということになる(ぼんやりしかわかってないけど・・・)

なんしか、これで出来ました。

難しいですね。正規表現。

私のサイトトップで実装してます。

ちゃんと動いているみたいですね。

良かった。

WordPress3.0 beta 1

  • 2010-04-09 (金)
  • blog

WordPress3.0 beta 1の日本語版が出たので入れてみた。

とはいっても、ローカルに。

怖いので。

今のところ問題なく・・・と言いたいところだけど、

プラグインのCodeColorerが彼のCSSを読まない。

たんなる文字列として表示(指定の行数とかはちゃんとうごいているけど)されている。

まったくもって、シンプル。シンプルすぎて「コードかテキストなのかわからん」状態。

なしてだろう?とフォーラムに書いてやろうとしたら、ログインせなアカン。

面倒なので、パスしてごめんなさい。

ここで言っておくので、拾ってください。他人任せ。

WPの人も日本語化プロジェクトの人もごめんなさい。

関係ないけど、twitterのjson読み込みが遅い。

色々表示が遅い。けど、遅い。

仕事でなら、100%使えないね、怒られるね。

text-size

テキストサイズをボタンをポチポチ押して

大きくしたり小さくしたりするスクリプトを

勉強がてら作ってみる

jQueryを使用しているので、リンクを貼っていること前提です

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script type="text/javascript">// <![CDATA[
$(document).ready(function() {
    var count = 2 ;
    var textsize=["0.8em","0.9em","1em","1.2em","1.4em"] ;
    $('#big').click(function(){
        count++:
        $('サイズ変更したい要素やid,class名').css("font-size",textsize[count]);
        if(count>4){
        count=4;
        }
    });
    $('#small').click(function(){
        count--:
        $('サイズ変更したい要素やid,class名').css("font-size",textsize[count]);
        if(count<0){
        count=0;
        }
    });
});
// ]]></script>

#bigやら#smallやらは任意のアンカーにつけてくだされ

1
2
<a id="big" href="#">文字を大きくするよ</a>
<a id="small" href="#">文字を小さくするよ</a>

みたいに。

で、変数countに「2」を最初に入れているのは、ブラウザ読み込み時のデフォ

文字サイズはtextsizeに配列でぶちこんでいるので、その場所(=1em)を指定しています

クリックでcountの数値を増やしたり減らしたりして、配列から文字サイズを変えています

if文は、やたらめったにクリックされると「count=100」とかになってしまうと、文字サイズを小さく変更するまで大変!

ということで、countの数値を配列数に収めてます(0~4の間っすね)

ラクチンポン

ちなみに、WORDPRESSやらでは「$」を使用するとうまく動作しないことがしばしばあるので、

私は「$」ではなく「jQuery」を使うようにしてます。

1
jQuery(document).ready(function(){

と。

BOLTS HARDWARE STORE

はい、制作しました。

BOLTS HARDWARE STORE

京都の金物屋さんです。

金物って何?と思われる方もいらっしゃるでしょうけど、

僕がどうのこうの言うよりも、まずは行って見て下さい。

サイト上には店主の思いがつまっています。

言葉足らずなところも多々ありますが、ちょっとでも興味を持ってもらい、

着地としては、「金物」という1つの概念的なものを分かってもらいたい。

もちろん「売れる」ってことは必要ですが、

店主の「金物をもっと知って欲しい」という気持ちの強い方です。

元々、Pacific Furniture Serviceで販売から設計まで多岐に活躍されていた方なので、

金物以外でも内装やらインテリアやらのことも詳しい。

きさく。

是非、京都に行く際、立ち寄ってみたい場所の1つにしてもらえると嬉しいです。

bolts hardware store

jQueryで高さの調整

コンテンツ量が少なく、footerが上にきてしまっている

というときjQueryを使ってきちんと下部に表示するようなスクリプトを書いてみた。

htmlはdiv#header、div#main、div#footerという構成を前提にします。

これら3つの高さがウィンドウサイズより小さかった時に、#mainの大きさを指定するっていうこと。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script type="text/javascript">
jQuery(document).ready(function(){
  var winHeight = jQuery(window).height();
  var headHeight = jQuery('#header').height();
  var mainHeight = jQuery('#main').height();
  var footHeight = jQuery('#footer').height();
 
  var fullHeight=mainHeight+headHeight+footHeight;
 
  if (fullHeight <= winHeight) {
   var wrapHeight = winHeight-headHeight-footHeight;
   jQuery(function() {
    jQuery('#main').height(wrapHeight);
   });
  }
});
</script>

うむ。

どうして「$」じゃないかって?

それは、「エラーになった」からです。

コンフリクトっていうんでしょうか。

他のプラグインではいけてるっぽいんですが。

でも、まー、うまくいってるから良しとします。

1つの手段として、有効であれば・・・

Home

Search
links
Feeds
Meta
twitter
books

Return to page top