2007年 02月 21日

なんか 1.4 でばっかり撮ってる気がする。
今日ちょっときになってとりくらべたけど f10 ぐらいまで絞らないと鮮明にならない。4.5 でも結構にじむ。1.8 のほうでも同じだからこんなもんなのかなぁ。AF があってない可能性もあるけど、デフォルトのスクリーンだと開放のピントがどこにあってるのかよくわかんない (マニュアルで前後させて深度イメージしてから戻すとかしないとちゃんとあわない感じ)。
大きくても A4 程度にしかしないからどうでもいいっちゃどうでもいい

あ、うそ。やっぱりピントあってなかった。マニュアル 1.4 でとってみたけどそんなひどくない。4.5 で十分くっきりだった。AF あてになんねー

寝過ごす

よよぎうえはらー

AS libs

どこに置くべきかな。~/lib/ にでもおくのかな

flickr exif

Flickr API で exif 大量に取得しようとすると API 呼びまくるしかないっぽくてこわい。一気にとってこれるいい方法ないのかな

AS flickr

なんで AS の flickr 系ライブラリはリスナを登録してから呼ぶみたいになってるんだろう。
呼ぶ関数に直接関数渡せたほうがコールバックで余計な条件分岐しなくてすむのに

AS3 リフレクション

メソッドの一覧が for (var hoge:String in this) でとれない><

var t:XML = describeType(this);
for each (var m:XML in t.method) {
	if (m.@declaredBy == t.@name) {
		log(String(m.@name));
	}
}

これで this のクラスに定義されたメソッドだけをとれる、っぽい。

test memo あとで書く

wget http://as3flexunitlib.googlecode.com/files/flexunit-.85.zip
unzip flexunit-.85.zip
cp flexunit/bin/flexunit.swc ~/sdk/flex_sdk_2/frameworks/libs/

とりあえず

package {
	import flexunit.framework.Test;
	import flexunit.framework.TestCase;
	import flexunit.framework.TestSuite;
	import flash.utils.describeType;

	import Rational;

	public class RationalTest extends TestCase {

		public function RationalTest(methodName:String) {
			super(methodName);
		}

		public static function suite():TestSuite {
			var ts:TestSuite = new TestSuite();
			var t:XML = describeType(RationalTest);
			for each (var m:XML in t.factory.method) {
				if (m.@name.match(/^test/) && m.@declaredBy == t.@name) {
					ts.addTest( Test( new RationalTest(String(m.@name)) ) );
				}
			}

			return ts;
		}

		public function testTrue():void {
			assertTrue("trueTrue", true);
		}

		public function testRationalInit():void {
			assertEquals("(new Rational(2, 6)).numerator   == 1", (new Rational(2, 6)).numerator, 1);
			assertEquals("(new Rational(2, 6)).denominator == 3", (new Rational(2, 6)).denominator, 3);
		}

		public function testToString():void {
			assertEquals("String(new Rational(2, 6))", String(new Rational(2, 6)), "1 / 3");
		}

		public function testAdd():void {
		}
	}
}

みたいに書いたけど (途中) 、かくのがめんどい。メタプログラミングしたい!

AS regexp

なんか ^ が効かないんだけど!!

というかそもも regexp だめなのか

AS3 の E4X と JS (Spidermonkey) の差

XML 宣言の有無でエラーになったり (Spidermonkey) とか、XML オブジェクトに繋げるメソッドの動きとかが微妙にちがくてはまる。

AS3 でヒアドキュメントしようとおもって

var data:String = <>
	my
	input
	lines
	--- expected
	expected
	output
</>.replace(/¥t/g, "");

ってやると \t 消えない。

var data:String = <>
	my
	input
	lines
	--- expected
	expected
	output
</>.toString().replace(/¥t/g, "");

だと消える。

File.read

Perl めも

 do { local $/ ; <$foo> } 

暗号杉

use File::Slurp;