FlexBuilder3StandAloneにJavaコンパイラ機能をつける方法
- FlexBuilder3を開く
- メニューからヘルプ→ソフトウェア更新→検索およびインストールを選択
- インストールする新規フィーチャーを検索を選択し、次へ
- 検索に含めるサイトでThe Eclipse Project Updatesにチェックをつけて終了
- 更新サイトのミラーリングはどこでもいい(と思う、今回はaizuを選択)
- インストールするフィーチャーの選択でEclipse3.x.xを選択し、ツリーを展開する
- 今回検証につかったFlexBuilder3のバージョンは3.0(ビルド 3.0.194161)
- Eclipse Java Development Tool xxx...と書かれているプラグインを見つけて、チェックでOK
- あとは手順にしたがってダウンロード&インストール
- 再起動すれば、はい出来上がり
- Javaのプロジェクトが作れるか確認しましょー
- FlexBuilder3でもJavaプロジェクトをつくることができる(もとがEclipseだからそりゃそうだ)
- Java開発に必要なPluginは,Eclipse Java Development Tool xxx...だけ
- 更新サイトは状況によってファイルがあったりなかったりするかもしれないので、エラーがでるようならまず更新サイトを疑う
- プロジェクトのバージョン管理とかの関係で、FlexBuilderのPluginは塞がってるけど、Javaもやらないとだめって人は覚えとくといいかも
アフィン変換おもろいなー
しかしこれ作るのに、2時間ぐらいかかってしもた
package {
import flash.display.Bitmap;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.geom.Matrix;
import mx.core.BitmapAsset;
[SWF(backgroundColor="#FFFFFF", width="400", height="300")]
public class AffineTransform extends Sprite
{
[Embed(source='canvas.png')]
private var canvasBMP:Class;
public function AffineTransform()
{
init();
}
private var p1:Sprite;
private var p2:Sprite;
private var p3:Sprite;
private var canvas:Bitmap;
private var isMouseDown:Boolean;
private function init():void
{
addEventListener( Event.ENTER_FRAME, onEnterFrame );
canvas = new canvasBMP() as BitmapAsset;
canvas.x = 100;
canvas.y = 100;
p1 = new Ball();
p1.x = 100;
p1.y = 100;
p1.addEventListener( MouseEvent.MOUSE_DOWN, onMouseDown );
p1.addEventListener( MouseEvent.MOUSE_UP, onMouseUp );
p2 = new Ball();
p2.x = 100;
p2.y = 200;
p2.addEventListener( MouseEvent.MOUSE_DOWN, onMouseDown );
p2.addEventListener( MouseEvent.MOUSE_UP, onMouseUp );
p3 = new Ball();
p3.x = 250;
p3.y = 100;
p3.addEventListener( MouseEvent.MOUSE_DOWN, onMouseDown );
p3.addEventListener( MouseEvent.MOUSE_UP, onMouseUp );
addChild( canvas );
addChild( p1 );
addChild( p2 );
addChild( p3 );
}
private function onMouseDown(event:MouseEvent):void
{
isMouseDown = true;
event.target.startDrag();
}
private function onMouseUp(event:MouseEvent):void
{
isMouseDown = false;
event.target.stopDrag();
}
private function onEnterFrame(event:Event):void
{
if ( isMouseDown )
{
var w:Number = 150;
var h:Number = 100;
var a:Number = ( p3.x - p1.x ) / w;
var b:Number = ( p3.y - p1.y ) / w;
var c:Number = ( p2.x - p1.x ) / h;
var d:Number = ( p2.y - p1.y ) / h;
var m:Matrix = new Matrix(
a, b, c, d, p1.x, p1.y
);
//trace( m.toString() );
canvas.transform.matrix = m;
}
}
}
}
import flash.display.Graphics;
import flash.display.Sprite;
internal class Ball extends Sprite
{
public function Ball()
{
init();
}
private function init():void
{
var g:Graphics = graphics;
g.clear();
g.lineStyle( 1, 0 );
g.beginFill( 0xFFFFFF, .8 );
g.drawCircle( 0, 0, 4 );
g.endFill();
}
}