Flash DEMO

[Papervision3D]リボン

Papervision3Dでリボンです。
やり方としてはPlane内のTriangle3Dの頂点を操作してPlane同士をつながっているように見せています。
・ABCD…のPlaneを用意
・Aの左端をワールド座標へ変換※1
・Bの左端をワールド座標へ変換
・AとBの座標の差を求める
・得られた座標をAのローカル座標A’へ変換
・Aの右端のTriangle3Dの頂点をA’へ移動
・対象Planeを変えて※1へ

スクリーンショット1

リボン

[Flashからjpg]

Flash上のBitmapで画像を生成してjpgで保存
スクリーンショット1
flash2jpg

JPGEncoder.asがいります。
SVNリポジトリ:http://as3corelib.googlecode.com/svn/

function save_jpg(bmd){
	var jpg_enc=new JPGEncoder(50);
	var byte_array=jpg_enc.encode(bmd);
	url_request=new url_request(phpPath);
	url_loader=new url_loader();
	url_request.contentType="application/octet-stream";
	url_request.method=URLRequestMethod.POST;
	url_request.data=byte_array;
	url_loader.load(url_request);
	url_loader.addEventListener(Event.COMPLETE,when_save_done);
}
function when_save_done(e){
	file_name=url_loader.data;
	tex_in.text=file_name;
}

PHP側はこう

<?php
$t=time()+72000;
$fileName=date("Ymd")."_".date("His")."_".$t.".jpg";
$fp = fopen("../image/".$fileName, 'wb');
fwrite($fp, $GLOBALS['HTTP_RAW_POST_DATA']);
fclose($fp);
print $fileName;
?>