2009年2月 の日誌

高松でも作業は続く・・・

| No TrackBacks
出張で高松に来てます。観光で金毘羅山に行ってきましたがあいにくの空模様でした。
P1000020.JPG

とはいえ、ホテルに戻れば開発作業は続きます。会員登録機能の文言やレイアウトの微調整や管理機能の実装をしました。
今まではWEB系の画面とチャットサーバーを独立して開発を進めてきましたが、この管理機能の実装が終わればいよいよ連動して動作することになります。
さぁがんばるぞ!!!

つけやきば

| No TrackBacks

P2220002.JPG

さぁ、べんきょうするぞ!

Flexネタ

| No TrackBacks
Flexで開発してていくつかハマりネタがありました。Flexはコンポーネントのプロパティが変わると連動して動作する様々な視覚効果がクラス化されていて、とても便利です。
たとえば非表示にする操作

this.visible = false;

この時少し変わった消え方をさせたいなら、同オブジェクトにエフェクトを設定してあげると任意の消え方をします。テレビ応援団では発言の噴出しは一定時間経過すると20秒かけてじょじょに消えていきます。ですから、噴出しコンポーネントには次のように設定してあります。


            Fade hideEffect1 = new Fade(this);
            hideEffect1.alphaFrom = 1.0;
            hideEffect1.alphaTo = 0.0;
            hideEffect1.duration = 20000;
            hideEffect1.easingFunction = hideEasingFunc;
            hideEffect1.addEventListener(EffectEvent.EFFECT_END, onHideEnd);
            this.setStyle("hideEffect", hideEffect1);

このように設定したうえで、visibleにfalseを設定すると、ゆっくりうっすらと消えていくような表示になります。
そこで、このゆっくり消える途中にキャンセル操作を入れようとしてハマりました。エフェクトが中断すると設定してある関数onHideEnd()が呼び出されるのですが、この関数内でのvisibleの値はtrueなのです。
エフェクトはプロパティが変化した後に発生するのではなく、プロパティが変わる前に呼び出され、エフェクトが完了したらプロパティの値が書き換わるわけですね。ですがら、中断したのか、正常終了したのかはonHideEnd()中ではわからないのです。

この問題に対処するために、プロパティが書き換わった後(onHideEnd終了後)にプロパティみなければ判定できません。
Flexはシングルスレッドイベントディスパッチモデルで動作していますので、任意の処理を後でディスパッチスレッドに実行してもらうという機能があります。

Application.application.callLater(onHideCanceled);

このcallLaterに関数を指定すると、現在のコンテキストが終了した後にディスパッチスレッドによってonHideCanceled関数が呼びだれれるわけです。
もちろんonHideCanceled関数内ではvisibleの値はfalseでした。



作業は続く・・・・

| No TrackBacks
金曜の夜ですが、相変わらず開発作業に追われています。フロント側は年末年始で満足に遊べるくらい出来上がっていましたが、裏側の作業に着手しています。
テンション値をDBに格納する作業や組情報を管理する管理画面、テンション値を修正してグラフを書いてくれる処理などなど、やることはまだまだ盛りだくさんです。と、チャット画面にも面白いアイディアを組み込んでいます。DBと接続してもパフォーマンスを落とさないよう作業していかなければなりません。
P1000009.JPG

築地で昼食

| No TrackBacks
開発して疲れた時はやはりおいしいものを食べるに限ります。そこで、東京の台所とも呼ばれている築地場外市場で海鮮丼をいただいてきました。

築地場外はよくテレビなどでもお店が紹介されていますね。所せましと鮮魚屋をはじめ様々なお店が軒を連ねています。
mixiImage1.jpg

マグロの大トロのさくが2000円で売っていたりと、ここが東京のど真ん中であることを忘れさせるようなディスカウントで、驚きます。

いろいろありすぎて悩みましたが、僕はいくら鮭丼900円を頂きました。連れのY君はネギトロ丼700円を頼んでいましたが、かなり旨いと大満足の様子

mixiImage0.jpg

なかなか楽しめた昼食でした。皆さんも気軽に足をのばしてみてはいかがでしょうか?

アクセス状況のグラフ表示について

| No TrackBacks
番組毎の盛上がりを後でグラフで見たい時のために、テンションカウンターの値でグラフを作成する管理機能を作ってみました。

チャートを簡 単に書くためにはFlexのチャートコンポーネントを使うか、RubyならGruffというチャート画像を描画するためのライブラリを用います。今回は画 像を生成してブログなんかに貼りたいという意見を採用したため、Gruffでチャートを描く機能を実装しました。

Gruffのインストールはこちら
http://d.hatena.ne.jp/con_mame/20081011


そのままですと、見た目が明らかにGruffという感じでイマイチなので表現についていろいろと調べてみました。

まずコンストラクタで線グラフと画像のサイズを決定

g = Gruff::Line.new('1024x480')
タイトルやラベルなどを設定
    g.labels = labels
g.title = '番組名'
g.data("テンション値", tension_data)

設定したラベルに日本語を使った場合、デフォルトフォントだと表示されないので、日本語フォントを指定

g.font = 'XXXXXXXXXXX.ttf'

ここからはスタイルです。フォントのサイズ等の指定

g.title_font_size = 15
g.legend_font_size = 12
g.legend_box_size = 10
g.marker_font_size = 11
線グラフの区切り毎に丸いドットが表示されるのですが、これを非表示にしたいばあいはこのように指定

g.hide_dots = true
あとは、背景色などすべてのチャート共通のスタイルについてはthemeというプロパティにこのように設定していきます。


    g.theme = {
:colors => %w(orange purple green white red),
:background_colors => %w(blue #000066),
# :background_image =>'XXXXXXXX.jpg',
:font_color => 'white'
}


このようにして生成されたグラフは次のような感じです。
37712tension_level.jpg

簡単に綺麗なグラフを描画することができますね。

AA用スタイルシート定義してみたよ!

| No TrackBacks
   _,,....,,_  _人人人人人人人人人人人人人人人_
-''":::::::::::::`''>   ゆっくりしていってね!!!   <
ヽ::::::::::::::::::::: ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
 |::::::;ノ´ ̄\:::::::::::\_,. -‐ァ     __   _____   ______
 |::::ノ   ヽ、ヽr-r'"´  (.__    ,´ _,, '-´ ̄ ̄`-ゝ 、_ イ、
_,.!イ_  _,.ヘーァ'二ハ二ヽ、へ,_7   'r ´          ヽ、ン、
::::::rー''7コ-‐'"´    ;  ', `ヽ/`7 ,'==─-      -─==', i
r-'ァ'"´/  /! ハ  ハ  !  iヾ_ノ i イ iゝ、イ人レ/_ルヽイ i |
!イ´ ,' | /__,.!/ V 、!__ハ  ,' ,ゝ レリイi (ヒ_]     ヒ_ン ).| .|、i .||
`!  !/レi' (ヒ_]     ヒ_ン レ'i ノ   !Y!""  ,___,   "" 「 !ノ i |
,'  ノ   !'"    ,___,  "' i .レ'    L.',.   ヽ _ン    L」 ノ| .|
 (  ,ハ    ヽ _ン   人!      | ||ヽ、       ,イ| ||イ| /
,.ヘ,)、  )>,、 _____, ,.イ  ハ    レ ル` ー--─ ´ルレ レ´

ASCII コード とはあまり関係ないのに、なぜか AAと呼ばれるこれらの絵文字は、こうもり傘とミシンが解剖台の上で偶然に出会って生まれたような、実に混沌として美しい日本の文化だと思います。

おみくじを引いてみたよ

| No TrackBacks

omikuji.gif

楽しいサービスっていいですね!

Ubuntu Server Edition

| No TrackBacks

てれび応援団 」では、様々な OSS (オープンソースソフトウェア)を利用させて頂いています。
低コストで柔軟性の高い多くの OSS がなければ、本サービスの実現は間違いなく不可能だったと言えるでしょう。

OSS の開発者のみなさんに深い敬意と感謝を捧げると共に、今後なんらかの形でフィードバックを心がけていきたいと考えています。

まずは簡単にできることとして、我々が利用している OSS を紹介してきたいと思います。今回は全ての基本となる OS から。