メイン

development アーカイブ

2006年09月07日

CSSを保存したときにブラウザを更新 mac+applescript+emacs+safari

この辺のマネをMacで実現してみました。

最速インターフェース研究会 :: 萌ディタとSleipnirとWEBrickを使って人のサイトのCSSをリアルタイム編集するデモ
http://la.ma.la/blog/diary_200607172004.htm

Proxyは上記のモノを利用させていただきました。

Emacsから「do-applescript」でAppleScriptを実行できるので.emacs.elに


;; Safari reload
(defun reload-safari()
(if (string-match "\.\\(css\\|js\\)$" (buffer-file-name))
(do-applescript "tell application \"Safari\"
do JavaScript \"location.reload(true);\" in document 1
end tell")))
(add-hook 'after-save-hook 'reload-safari)

と記述して保存時にsafariを更新します。

これすげーべんりっす。

2006年09月10日

RailsプロジェクトをSubversionで管理するときのメモ

trunk tags branchesを作っておく


$ mkdir hogeapp
$ cd hogeapp
$ mkdir trunk tags branches
$ svn import . svn+ssh://svnurl/hogeapp -m "initial"
$ cd ../
$ rm -rf hogeapp

プロジェクト作成


$ rails hogeapp
$ cd hogeapp

インポート


$ svn import . svn+ssh://svnurl/hogeapp/trunk/ -m "import"

作業ディレクトリへ移動してチェックアウト


$ svn co svn+ssh://svnurl/hogeapp/trunk/ .

ログファイルを削除して無視ファイルに指定


$ svn ci -m "remove log file"
$ svn propset svn:ignore "*.log" log/
$ svn ci -m "add ignore log/*"

tmp以下を無視ファイルに指定


$ svn propset svn:ignore "*" tmp/sessions tmp/cache tmp/sockets
$ svn ci -m "add ignore tmp/"

database.yml を database.yml.exampleへ


$svn move config/database.yml config/database.yml.example
$svn ci -m "database.yml -> database.yml.example"

database.ymlを無視ファイルに指定


$svn propset svn:ignore "database.yml" config/
$svn ci -m "ignore database.yml"
cp config/database.yml.example config/database.yml

この辺りを参考にさせて頂きました。
HowtoUseRailsWithSubversion in Ruby on Rails
http://wiki.rubyonrails.com/rails/pages/HowtoUseRailsWithSubversion

subversionでRailsアプリを管理 :: wiki.rails2u.com
http://wiki.rails2u.com/subversion%E3%81%A7Rails%E3%82%A2%E3%83%97%E3%83%AA%E3%82%92%E7%AE%A1%E7%90%86

2006年09月18日

Refeをutf-8で使う

rubyのリファレンス検索用にrefeをインストール

gem install refe 
でインストールできる

でも使ってみたら文字化けした。
どうやらutf-8でみれるようにしてやる必要があるらしい。

でここをみて対応。
断片部 - 適当日記 - refeのutf-8化
http://fragments.g.hatena.ne.jp/samurai20000/20060326/1143380535

sudo vi /usr/lib/ruby/gems/1.8/gems/refe-0.8.0.3/lib/refe/searcher.rb

require 'iconv'を追加
22行目あたりのstrの下へ
Iconv.iconv("UTF-8","EUC-JP", str)
を追加

できたー

2006年09月27日

EmacsでActionscript

Actionscript用のモードがないかなと思って探してみた。
あった。

Casual Game Development » Blog Archive » My Emacs Customizations
http://blog.pettomato.com/?p=12

actionscript-mode.elをダウンロードしてきてロードパスの通ったとこに置いて


(autoload 'actionscript-mode "actionscript-mode" "actionscript" t)
(setq auto-mode-alist
(append '(("\\.as$" . actionscript-mode))
auto-mode-alist))

でOK

2006年10月05日

EmacsでActionScriptを書くときは

M-x set-buffer-file-coding-system して utf-8mに設定しましょう。
文字化けではまった。

追記
やっぱだめっぽい。
一度、Flashでasファイルを開いた後なら大丈夫みたい

一番簡単なRailsとFlash(ActionScript)の連携方法

FlashからデータをRailsに渡して、そのままデータをFlashへ返します。


Flash側


1フレーム目に以下のように記述

this.createTextField("r_txt",1,10,10,480,480);
this.r_txt.border = true
this.r_txt.text = "start";

var lv = new LoadVars();
var rlv = new LoadVars();

lv.data = "hoge"; // Rails側に送信するデータ
lv.sendAndLoad("http://localhost:3000/flash/hello/",rlv,"POST");

rlv.target = this;
rlv.onLoad = function (s:Boolean){
if (s) {
this.target.r_txt.text = "result = " + this.result;
} else {
this.target.r_txt.text = "error";
}
};


Rails側


適当なコントローラーを作成

$ ruby script/generate controller flash

flash_controller.rb


class FlashController < ApplicationController
def hello
@data = @params["data"]
end
end

hello.rhtml


result=<%= @data %>

2006年10月10日

onLoadCompleteとonLoadInitの違い

ちょっとだけはまった。
onLoadCompleteで_heigthと_widthは0になる
onLoadInitだと両方とも取得できる。

どやらonLoadCompleteではMovieClipが初期化されていないらしい。

詳しくはこちら
FN0501003 - MovieClipLoaderクラスについて - Flash : テクニカルノート
http://www.fumiononaka.com/TechNotes/Flash/FN0501003.html

サンプルコード


var mc:MovieClip = this.createEmptyMovieClip("mc",this.getNextHightestDepth());
var loader:MovieClipLoader = new MovieClipLoader();
var lo:Object = new Object();

lo.onLoadComplete = function(mc:MovieClip):Void {
trace(mc._height); // 0になる
trace(mc._width); // 0になる
}

lo.onLoadInit = function(mc:MovieClip):Void {
trace(mc._height); // ちゃんと出力
trace(mc._width); // ちゃんと出力
}

loader.addListener(lo);
loader.loadClip("sample.jpg",mc);

ASOファイルの削除

いつも手作業で消してたけど、Flash8からは「ASOファイルを削除」なんてメニューが追加されてた。パブリッシュのとき以外はほとんどFlashをさわらないので今まで気づかなかった。

aso.png

2006年10月12日

IE7とIE6を判別するJavaScript

そろそろIE7がきそうな感じです。

このコードは重要になるかな?


if (typeof document.body.style.maxHeight != "undefined") {
// IE 7, mozilla, safari, opera 9
} else {
// IE6, older browsers
}

Abe Fettig’s Weblog » Detecting IE7+ in Javascript
http://fettig.net/weblog/2006/10/09/detecting-ie7-in-javascript/

2006年10月17日

MacだとFlashのテキスト入力でインライン入力できない

hoge.png

こいつが出てくるんだよなー
すっかり忘れてた。
しかも公式な情報がAdobeから出てないあたりも、あれな感じですな。
でもはWinでやりますかね

FLASH-JP.COM - フォーラム
http://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=5027&forum=5&move=prev&topic_time=1150157572

2006年10月18日

ActionScriptの物理エンジン

a-blog with F 物理好き?
http://appleple.heteml.jp/blog/index.php?ID=298


こちらで紹介されていた動画を見て、ActionScriptの物理エンジンがあったなーと思って調べてみた。


Flade - Flash Dynamics Engine
http://www.cove.org/flade/

Preview
http://recycle.andre-michelle.com/as3/beta3/revive/


あとは誰かこの辺から探してくれ。
Pages tagged with "actionscript+physics" on del.icio.us
http://del.icio.us/tag/actionscript+physics

2006年10月19日

ActionScript3.0の物理エンジン

この辺を見てたら見っけた。
http://del.icio.us/tag/actionscript+physics

APE - Actionscript Physics Engine
http://www.cove.org/ape/

APE - Actionscript Physics Engine
http://www.cove.org/ape/demo1.htm

ActionScriptでundefinedって予約語だったんだ!!

IT戦記 - JavaScript で undefined って予約語じゃなかったんだ!!
http://d.hatena.ne.jp/amachang/20061018/1161118305

ということだったのでActionScriptでも試してみた。

undefined = 1;
trace(undefined);

でパブリッシュしたら


代入演算子の左側は、変数またはプロパティでなければなりません。
undefined = 1;
ActionScript エラー数 :1 報告済みエラー :1

だってさ。

ということで、ActionScriptのundefinedは予約語!

2006年10月23日

ActionScriptやるときイロイロ参考にするサイトなどなど

とりあえずURLだけ。

As2lib — Welcome — Open Source ActionScript 2.0 Library
http://www.as2lib.org/ 

Person13
http://www.person13.com/ascblibrary/

IFBIN.COM - Great Software By Example
http://www.ifbin.com/?code=5etdemi

senocular.com : News
http://senocular.com/

Hotscripts.com :: Flash
http://www.hotscripts.com/Flash/index.html

Actionscript.org Macromedia Flash Resources and Tutorials
http://actionscript.org/index.php

Flash Kit, A Flash Developer Resource for Macromedia Flash MX Tutorials SWF FLA images clipart Sounds WAVS Animations Help and Support
http://www.flashkit.com/

kirupa.com - Flash and ActionScript Tutorials
http://www.kirupa.com/developer/flash/index.htm

gotoAndLearn.com
http://www.gotoandlearn.com/

Flash Perfection - Flash Tutorials
http://www.flashperfection.com/

Flashmatics Library
http://www.experiments.flashmatics.co.uk/

Open Source Flash - osflash
http://osflash.org/

Movie Clip Tweening prototypes - download
target="_brank"http://laco.wz.cz/tween/

senocular.com Flash ActionScript Library
http://www.senocular.com/flash/actionscript.php

MosesSupposes :: Fuse Kit
http://www.mosessupposes.com/Fuse/index.html

Home - AsWing.org - AsWing.org
http://www.aswing.org/display/AsWing/Home

XFactor Studio
http://www.xfactorstudio.com/

form = function :: draw methods
http://www.formequalsfunction.com/downloads/drawmethods.html

Index of /
http://recycle.andre-michelle.com/

Home - Confluence
http://thinkkit.org:8180/confluence/display/ASLIB/Home

2006年10月27日

Apollo

Apolloの情報がいろいろ増えてきているようです。

Apollo - Adobe Labs
http://labs.adobe.com/wiki/index.php/Apollo

ApolloとはAdobeの新たなプラットフォームで、PCのローカルでFlashとかPDFとかHtmlとかJavascript(Ajax)動いちゃいますよ的なものです。
ようはFlashでローカルアプリケーションとかが作れちゃう訳です。

MacのDashboardとかVistaのGadgetとなどは、JavaScript+Htmlだったけど、それに近いものになるのだろうか。。

でもFlashからローカルのファイルとか、その他もろもろにアクセスできるってのは魅力的。


HtmlのレンダリングはSafariに使われてるWebkitになるらしいですね
Apolloアプリへファイルをドラッグ&ドロップできるそうなので、FlashにファイルをD&Dなんてこともできるんじゃないでしょうか。とあるアプリを作ってるときに、FlashにファイルD&Dできればなんてこともあったので、こういった機能は非常にありがたいです。Flashで作られるアプリの幅がぐっと広がりそうです。

問題は多分セキュリティですね。ファイルに直接アクセスとか、できてしまうといろいろと問題が出てきそうです。

Flex Coderの方がいろいろと情報を出してくれてますね
http://d.hatena.ne.jp/sato-shi/searchdiary?word=*%5BApollo%5D

とにかく、Apolloには今後も注目ってことで。

SWFObjectが激しく便利

deconcept › SWFObject: Javascript Flash Player detection and embed script
http://blog.deconcept.com/swfobject/

SWFをJavaScript使って出力するやつ。
Playerのバージョンとかも簡単に検出できます。

例えばこんなメソッドを用意しておいて。


function swfOrImg(so,version,write) {
var ver = deconcept.SWFObjectUtil.getPlayerVersion();
if (ver['major'] >= version) {
so.write(write);
}
}

htmlにはこんな感じにしておくと、一定のバージョン以上じゃないと、代わりの画像を表示とか簡単にできます。


<div id="flashcontent">
かわりのがぞう
</div>
<script type="text/javascript">
// <![CDATA[
var so = new SWFObject("swf/hoge.swf", "hoge", "200", "100", "8", "#FFFFFF");
swfOrImg(so,8,"flashcontent");
// ]]>
</script>

ExpressInstallにも対応してるみたいですね。
日本語のドキュメントはこちらの方が翻訳されてます。
trick7.com blog: SWFObjectのドキュメントを日本語に翻訳してみたよ
http://www.trick7.com/blog/2006/06/15-135235.php

追記
どうやら、半年ほど前に自分でdel.icio.usにブックマークしてたのに使ってなかったらしい。

2006年11月01日

イベントリスナー

【ハウツー】Flash 9 ActionScript 3.0 Previewのイベントリスナーとクラス定義 (1) ActionScript 1.0/2.0から3.0にスクリプトを書替える(1) (MYCOMジャーナル)
http://journal.mycom.co.jp/articles/2006/10/31/as/

ActionScript3.0はなんとく敬遠してたけど、これ読んでたら、いけるんじゃねって思った。
最近はActionScript2.0で書くときも、ちゃんとイベントリスナー使うようにしてるから、この辺はさくっと移行できるかも。

このごろAS2のフレームワークとかをイロイロ試してます。
この辺のはよくできてるっぽい。

WebHome < ASAP < TWiki
http://asapframework.org/wiki/bin/view/ASAP/

As2lib — Welcome — Open Source ActionScript 2.0 Library
http://www.as2lib.org/

Home - AsWing.org - AsWing.org
http://www.aswing.org/display/AsWing/Home

MosesSupposes :: Fuse Kit
http://www.mosessupposes.com/Fuse/

ASAPを少し使ってみようかなって感じです。

知られざるJavaScriptの世界

知られざるJavaScriptの世界:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20061026/251846/

かなりわかりやすいjavascriptでオブジェクト指向な説明

2006年11月02日

もうActionScript3.0の本が出てる、しかも和書

Amazon.co.jp: ActionScript 3.0ゲームプログラミングブック—Flash for Professionals: 本: 布留川 英一
http://www.amazon.co.jp/gp/product/4839921938/sr=1-2/qid=1162442459/ref=sr_1_2/503-6116509-7787959?ie=UTF8&s=books

はえーっすな。

2006年11月05日

Adobe MAX 2006 フラッシュレポート

Adobe MAX 2006 フラッシュレポート
http://www.adobe.com/jp/events/max/report/

Maxのレポートがありました。14ページと長いですが。。。

Apolloに関することも色々書いてあったけど、ちゃんと普及すれば面白いものが作れるかも。
FlashとJavaScriptの関係もApollo上ではかなりシームレスな感じらしい。

Apolloアプリケーションの中では、JavaScriptとActionScriptオブジェクトモデルがブリッジされます。これにより、 ActionScriptからHTMLのドキュメントオブジェクトモデル(DOM)に直接アクセスすることが可能になります。また、JavaScript からFlashのディスプレイリストを操作したり、ActionScriptからJavaScriptをインスタンス化することもできます。

* JavaScriptから同期的にActionScript関数を呼び出す、またはその逆
* ActionScriptはJavaScriptオブジェクトへの参照を保持でき、その逆も可能
* 従来のExternalInterfaceによるActionScriptとJavaScriptの通信よりもシームレス

HTML+JavaScriptのみでApolloアプリ作れるみたいだし、JavaScriptから直接Apollo APIへアクセスもできるとのこと。

Flashのコンポーネントについても少し触れてたけど、正直現状のコンポーネントはクソなので、ちょっと凝ったもの作るときは、コンポーネントを自作するか、誰かが作ったフレームワーク類を利用しないときつい。
新しいコンポーネントでは速度の強化とか、スキンを簡単に変えることができるようになるって書いてあった。
速度もそうなんだけど、今のコンポーネントってあからさまに、これコンポーネントじゃんって感じなので何とかしてほしいっす。
この辺ちゃんと実装してくれないと、また「コンポーネントつかえねー」になるので、がんばってほしいし、期待してますAdobeさん。

2006年11月09日

MacでFlash Playerのバージョンを切り替える

Firefoxのエクステンションです。

sephiroth.it - flash & php: Flash Switcher for OSX
http://www.sephiroth.it/weblog/archives/2006/11/flash_switcher_for_osx.php

インストールするとFirefoxの右下にFlashPlayerのアイコンが出てきて、クリックするとバージョンを切り替えれます。自動的にFirefoxが再起動します。

playersw.png

Safariとかも影響を受けるみたいですが、そんな時はSafariを再起動すれば大丈夫みたいです。

ちなみにWindowsでFlash Playerを切り替える場合はこちら
Flash Switcher (win) | Firefox Add-ons | Mozilla Corporation
https://addons.mozilla.org/firefox/3649/

2006年11月21日

Flashで360°

ぐりぐり動きます

CubicVR 360° with Flashplayer9
http://cubicvr.popforge.de/

2006年11月26日

Flashのパーマリンク問題をSWFAddressで解決

<追記> 
SWFAdreess2 はこちら
SWFAddress2をSWFObject2でつかってみる (Unknown Quality)
http://un-q.net/2007/12/swfaddress2_swfobject2.html
</追記>

Flashサイトでよく問題になるのがパーマリンク。
例えば、商品を複数紹介しているサイトとかで、各商品ページへをブックマークしよと思っても、パーマリンクが存在しないので、トップページをブックマークしてしまうことになる。他のページからのリンクでも、その商品へのリンクができない。

よくやる解決手法の1つがPHPなどでURLの最後に「?id=10」でアクセスされたら、FlashVars経由でFlashへidを渡し、任意のページへ移動させたりする。
この手法は他のサイトからのリンク辿ってくる場合にはOKだけど、Flash内でのページ遷移ではURLは変化しないので、ブックマークとかは無理。親切なサイトだと、このページへのリンクはhogehogeと書いてあったり、クリックするとURLがクリップボードにコピーされる仕組みを用意してるなんてのもあった。

Nikeのサイトとかは、結構前からこの辺の問題をスマートに解決してて、Javascriptを駆使してFlash内のページ遷移もページを更新することなくURLを変更してた。

で、この辺のことをまとめてやってくれるのが「SWFAddress」
Asual » SWFAddress
http://www.asual.com/swfaddress/

とりあえずサンプル作ってみた
SWFAddress Test
http://labs.un-q.net/flash/swfaddress/

as1、as2、as3、それぞれのスクリプトが用意されてて使い方も簡単。

as2だったらこんな感じ

import SWFAddress;

btn_mc.onRelease = function() {
SWFAddress.setValue('/page1/');
}

SWFAddress.onChange = function() {
サンプルはこの辺でページ遷移処理してた
}

ページのタイトルも

SWFAddress.setTitle("Hage Hage");

で切り替えられるので、ブックマークとかもばっちり。

どっちかっていうとアプリ作ることのほうが多いけど、Flashサイト作るときは必ずこういう作りにしよう。

2006年12月07日

所属してるMovieClipの深度を出力

var mc_array = String(this.a.b).split(".");

for (i=0; i < mc_array.length; i++) {
var mc_name = mc_array.slice(0,i+1).join(".")
trace(mc_name + " : " + eval(mc_name).getDepth());
}

結果


_level0 : -16384
_level0.a : -16383
_level0.a.b : -16383

オーサリングで置いたMovieClipの深度はマイナスになる。

深度嫌いorz

2006年12月14日

Flash8ライセンス移行

MX2004のような移行はなくなったらしい。

Macromedia - General TechNotes : gn0023 - Macromedia 製品のアンインストール方法
http://www.adobe.com/jp/support/general/ts/documents/gn0023.html

Flashのヘルプはだめー

Flashについてるヘルプはすげー使いにくいので。

Windowsなら
Mike Chambers
http://weblogs.macromedia.com/mesh/archives/2004/04/flash_resource.html

Macなら
Software- XASH
http://developer.mabwebdesign.com/xash.html

を使いましょう。

ちなみにXASHは日本語環境で動かないので下記参照にて解決してください。
ActionScript Junky! : osX用 スタンドアロンhelp XASH ->日本語化
http://www.actionscript-junky.net/p_blog/article.php?id=147

Macで初めてのFlex2

してみた。

とりあえず環境から。
1, http://www.flex.org/ からSDKをダウンロード。
2, /Developer/SDKs/Flex_sdk_2 とかに置いて flex でンボリックリンク作っておく。
3, /Developer/SDKs/flex/binにパスを通す。

環境おわり。

hello.mxmlとかてきとーな名前のファイルを以下の内容で作成

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
   layout="absolute">
    <mx:Label x="10" y="10" text="こんにちはこんにちは" fontSize="40"/>
</mx:Application>

コンパイル

mxmlc Hello.mxml

以上!


Macで初めてのActionScript3.0

前の続き
Macは別に関係ない

以下のようなファイルをasファイルを作成


package {
import flash.display.*;
import flash.text.*;

public class HelloAS extends Sprite {
public function HelloAS() {
var textField:TextField = new TextField();
textField.text = "こんにちはこんにちは";
addChild(textField);
}
}

}

コンパイル

mxmlc HelloAS.as 

できた

2006年12月23日

ユーザーテスト

最近ユーザーテストというものをやってみている。

とりあえず見よう見まねで初めてみたけど、なかなかいいかも。
どーしても、作ってる側は都合のいいユーザーをイメージしてしまっているようだ。
何かの本には「ゴムのユーザー」って書いてあって、なるほどなーと思った。

実際に何も知らない人に使ってみてもらうと、いろいろとわかってくる。
結構見てると面白い。

ユーザーテストのときは、テストの被験者になるべく独り言を言ってもらえるようにした方がよさそう。
頭のなかで考えていることを声にだしてもらうことで、見てるだけじゃわからないことがどんどん伝わってくる。

でもこちらが何も反応しないと、被験者の人が独り言いってくれなくなるからおうむ返しするとよさげ。
独り言に答えちゃうと意味がないし、相づちとかもYESと意味と取られてはまずいしね。

あとはこちらから与える情報をどーするかも肝になりそう。

勉強ですな。

2006年12月28日

Macでmxmlcのメッセージが化ける問題解決

隣の人が解決してくれた。

mxmlcでmxmlなりActionScript3なりをコンパイルすると、コンパイル時のメッセージが英語でも化けてた。

で問題はJavaにあった様子。
OSX標準搭載のJavaコマンドがshift_jis出力らしい。

なのでmxmlcを書き換えると解決する。

java $VMARGS -jar $FLEX_HOME/lib/mxmlc.jar $*

java -Dfile.encoding=UTF8 $VMARGS -jar $FLEX_HOME/lib/mxmlc.jar $*

隣のひとマジでありがとう

MacでFlashPlayer9のTraceが出力されない問題解決

ActionScript3のtraceはファイルに出力することができる。
その設定をmm.cfgにするんだけど、なかなかうまくいかなかった。
そしてまたもや隣の人が解決w

ちなみにMacだと

/Library/Application Support/Macromedia

にmm.cfgはあります。

TraceOutputFileNameというプロパティがあるんだけど、これの設定が間違ってた。
ふつーに

/Users/username/Desktop/flashlog.txt

って指定してたんだけど、正しくは
Macintosh HD:Users:username:Desktop:flashlog.txt

とする必要がある

全く気づかなかった。
またまたありがとう隣の人


参考
Trace and debug ActionScript from your browser
http://www.actionscript.org/resources/articles/207/1/Trace-and-debug-ActionScript-from-your-browser/Page1.html

デバッガ版の Flash Player の構成 -- Flex 2
http://livedocs.macromedia.com/flex/2_jp/docs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001371.html


関連記事
MacでFlashPlayer9のTraceが出力されない問題解決 その2 (Unknown Quality)
http://un-q.net/2006/12/macflashplayer9trace_1.html

MacでFlashPlayer9のTraceが出力されない問題解決 その2

前回のエントリーで解決したんだけど、その追記。
前回のはこちら

またまた隣の人が解決

実はIntel Mac版のプレイヤーではdebugプレイヤーがスタンドアローン版しか存在しなかった。
でもIntel Mac版のプラグインを発見

Flex Builder 2の体験版をインストールすると、
/Applications/Adobe Flex Builder 2 Beta/Flex SDK 2/player/debug
の中に「Install Flash Player 9 UB.app」というファイルがある。
これがユニバーサルバイナリーのデバッグプレイヤー、プラグイン版

しかし、インストールしてもtraceが出力されない。。。
これをまたもや隣の人が解決してくれた。

前回のエントリーでmm.cfgに

TraceOutPutFileName=Macintosh HD:Users:username:Desktop:flashlog.txt

と設定してたんだけどこれを
TraceOutPutFileName=Macintosh HD:Users:username:Library:Preferences:Macromedia:Flash Player:Logs:flashlog.txt

と設定したらtraceでたー

なぜはよーわからん。。。

ちなみにtraceはFirefoxのプラグイン「Flash Tracer」を利用すると便利です。
FlashTracer | Firefox Add-ons | Mozilla Corporation
https://addons.mozilla.org/firefox/3469/

2007年01月10日

Dashcode

Dashboard用のウィジェット開発ツールがいつの間にかβ版だけど出てた。
Leopardには最初から入るらしい。

Tools - Dashcode Beta
http://developer.apple.com/tools/dashcode/

ダウンロードはなんかアカウントいるみたいだけど、無料で登録できた。

DashboardにFlashって読み込めるのかな。

2007年01月11日

FlashからPOSTでデータを送ってXMLをFlashで受け取る

var send_lv:LoadVars = new LoadVars;
var load_xml:XML = new XML();

send_lv.data = "hgoe";

load_xml.ignoreWhite = true;
load_xml.onLoad = function() {
trace(this);
};

send_lv.sendAndLoad("送信先のパス", load_xml, POST);

2007年01月15日

OnEnterFrameBeacon

いつも使おうと思ったときに忘れているのでメモ。


Frame

import mx.transitions.OnEnterFrameBeacon;
OnEnterFrameBeacon.init();
var hoge:Object = new Object();
hoge.onEnterFrame = function () {
trace("はげー");
}
MovieClip.addListener(hoge);
//MovieClip.removeListener(hoge)

Class

import mx.transitions.OnEnterFrameBeacon;
class Hoge {
function Hoge() {
OnEnterFrameBeacon.init();
MovieClip.addListener(this);
}
function onEnterFrame() {
trace("はげじゃねー");
}
}

参考
BicRe: OnEnterFrameBeaconの使い方
http://blog.cellfusion.jp/2005/12/onenterframebeacon.html

2007年01月16日

MovieClip.lineStyleのnoScaleパラメータ

lineStyle (MovieClip.lineStyle メソッド)
http://livedocs.macromedia.com/flash/8_jp/main/00002477.html

こんなパラメータが増えてたなんて知らなかった。
noneにすればオブジェクト拡大したときに線の太さが変わらない。

noScale:String - Flash Player 8 で追加されました。線の拡大・縮小方法を指定するストリングです。有効な値は次のとおりです。

"normal" - 常に太さを拡大・縮小します (デフォルト)。
"none" - 太さを拡大・縮小しません。
"vertical" - オブジェクトを垂直方向にのみ拡大・縮小する場合、太さを拡大・縮小しません。
"horizontal" - オブジェクトを水平方向にのみ拡大・縮小する場合、太さを拡大・縮小しません。

2007年01月17日

こんなにActionScriptやってるのに知らなかった

if 〜 in なんてなかったのね。。。
ざんねん

IT戦記 - こんなに JavaScript やってるのに知らなかった基本文法「if in」
http://d.hatena.ne.jp/amachang/20070115/1168859275

オブジェクトが真か偽か

if (obj.property) {
    // ...
}

オブジェクトにプロパティがあるかは置いといて undefined ではないことを確かめる

if (typeof obj.property == 'undefined') {
    // ...
}

オブジェクトにプロパティがあるか。

動きません ><
if ('property' in obj) {
    // ...
}
**エラー** /Users/yosuke/labs/flash/if/main.as: 行 16:')' が必要です。
     if ('property' in obj) {

ActionScript エラー数 :1 報告済みエラー :1

オブジェクト自体(プロトタイプを含まない)にプロパティがあるか

if (obj.hasOwnProperty('property')) {
    // ...
}

まとめ

if in 以外は動きました。 ざんねんですな。

追記
ActionScript3.0ではif in があるそーです。
hagaさん情報ありがとうございます。

2007年01月22日

ActionScript3でWebカメラ

なんとなーくカメラ関連をやってみようかなと思って書いてみた。

左下のボタンっぽいものをクリックすると、キャプチャを右側に生成します。

CameraExample

ここんとこずーっとAS2ばかりだったけど、AS3のほうがプログラマに優しい気がする。。。


package {

import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.events.*;
import flash.media.Camera;
import flash.media.Video;

public class CameraExample extends Sprite {

private var video:Video;
private var bm:Bitmap;
private var bmd:BitmapData;
private var btn:Sprite;

public function CameraExample() {

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

// camera
var camera:Camera = Camera.getCamera();

if (camera != null) {
video = new Video(camera.width * 2, camera.height * 2);
video.attachCamera(camera);
addChild(video);
} else {
trace("You need a camera.");
}

// bitmap
bmd = new BitmapData(camera.width*2, camera.height*2 ,false,0xaaaaaa);
bm = new Bitmap(bmd);
bm.x = camera.width*2 + 10;
addChild(bm);

// button
btn = new Sprite();
btn.buttonMode = true
btn.graphics.beginFill(0x333333);
btn.graphics.drawRect(0,0,100,30);
btn.y = camera.height*2 + 10;
addChild(btn);
btn.addEventListener(MouseEvent.MOUSE_UP, btnUp);

}


private function btnUp(e:MouseEvent):void {

bmd.draw(video);
bm = new Bitmap(bmd);

}
}
}

2007年01月29日

名古屋でActionScriptの勉強会やりました

WCANの分科会として「WCAN mini vol.1 [FlashのActionScript勉強会]」を行いました。

WCAN [ Web Creators Association Nagoya ] WCAN mini vol.1 [FlashのActionScript勉強会]
http://www.wcan.jp/index.php?ID=92

一応主催者側のひとでした

勉強会ということで、皆さんに発表をしてもらう形式をとったのですが、私の進行とかが、ぐだぐだで皆さんご迷惑おかけしました。

会の雰囲気は非常によかったので、あの雰囲気のまま続けていければと思います。
集まった方は、デザイナーさん、プログラマさん、ディレクターさんといろいろでした。
「作業環境」というお題で発表してもらったんですが、特にプログラマさんのActionScript開発環境はこだわりが感じられました。

CUIのみでActionScriptを開発する人や、haXeやってる人とか、なかなかコアな方もいておもしろかったです。

今後も継続的にやっていきたいと思っているので、名古屋のActionScriptを盛り上げていければと思います。


私の発表資料を公開しておきます。
wcanmini01.pdf


追記
IT戦記 - ActionScriopt の勉強会で話してキタ!
http://d.hatena.ne.jp/amachang/20070130/1170144721

a-blog with F 名古屋でActionScriptの勉強会
http://appleple.heteml.jp/blog/index.php?ID=378

2007年02月01日

EYE-PROJECT

http://eye.kddi.com/

fladdict.net blog: EYE-PROJECT BY KDDI プレラウンチ
http://fladdict.net/blog/2007/02/eyeproject_by_kddi.html

すげーよなー

2007年02月02日

Getting Real

が翻訳されとる

Getting Real by 37signals
http://gettingreal.37signals.com/GR_jap.php

仕事中に口笛を吹いて、コンピューターにコマンドを実行させる

IBM 仕事中に口笛を吹いて、コンピューターにコマンドを実行させる - Japan
http://www-06.ibm.com/jp/developerworks/opensource/library/os-whistle/

あほだけど、こーいうのすげー好き