これは私の最初の投稿ですので、私はすべてのものが正しいことを願っています。Flash AS3リニアグラジエントローテーションの問題
Flash AS3では、矩形内にダイナミックグラデーションを作成しています。私は26度の回転を持つ勾配が必要です。私の問題は、回転が私の四角形の幅/高さに基づいて変化するようだということです。私はそれを適用するサイズの四角形に関係なく、回転が実際に26度である必要があります。あなたの問題は、このラインである
var rect:Shape=new Shape();
this.addChild(rect);
rect.x=40;
rect.y=70;
var rectWidth:Number=200;
var rectHeight:Number=100;
drawShapes();
function drawShapes():void {
var mat:Matrix;
var colors:Array;
var alphas:Array;
var ratios:Array;
//We proceed to draw 'rect'.
mat=new Matrix();
colors=[0xFF0000, 0x00FF00, 0x001eff];
alphas=[1,1,1];
ratios=[0,120,255];
mat.createGradientBox(rectWidth,rectHeight,toRad(26));
rect.graphics.lineStyle();
rect.graphics.beginGradientFill(GradientType.LINEAR,colors,alphas,ratios,mat);
rect.graphics.drawRect(0,0,rectWidth,rectHeight);
rect.graphics.endFill();
}
function toRad(a:Number):Number {
return a*Math.PI/180;
}
いくつかのスクリーンショットであなたのポイントを証明できますか? – Kodiak