c'era un piccolo errore nello script che ho postato... inoltre mi son permesso di scrivere una piccola funzione abbastanza completa per creare rettangoli/quadrati via AS, semplice da usare
codice:
var mmToPx:Function = function(n:Number):Number{
var ItoMM:Number = 25.4;
var dpi:Number = System.capabilities.screenDPI;
var dpmm:Number = dpi/ItoMM;
var nPx:Number = n*dpmm;
return nPx;
}
var larghezza:Number = mmToPx(20); // restituisce, per 72dpi, 56,69E px
var altezza:Number = mmToPx(20); // restituisce, per 72dpi, 56,69E px
codice:
var drawRect:Function = function (target:MovieClip, name:String, level:Number, width:Number, height:Number, border:Number, borderColor:Number, color:Number, initObject:Object) {
target.createEmptyMovieClip(name, level);
with (target[name]) {
lineStyle(border == 0 ? border=undefined : border, borderColor);
moveTo(0, 0);
beginFill(color);
lineTo(width, 0);
lineTo(width, height);
lineTo(0, height);
lineTo(0, 0);
endFill();
if (initObject != undefined) {
_x = initObject._x != undefined ? initObject._x : 0;
_y = initObject._y != undefined ? initObject._y : 0;
_xscale = initObject._xscale != undefined ? initObject._xscale : 100;
_yscale = initObject._yscale != undefined ? initObject._yscale : 100;
_alpha = initObject._alpha != undefined ? initObject._alpha : 100;
_rotation = initObject._rotation != undefined ? initObject._rotation : 0;
}
}
}
drawRect(_root, "prova", 1, 100, 100, 0, 0x000000, 0xCCCCCC, {_x:100, _y:100, _alpha:50});
nel caso richiesto le righe di richiamo delle funzioni sarebbero
codice:
var larghezza:Number = mmToPx(campotesto_larghezza.text);
var altezza:Number = mmToPx(campotesto_altezza.text);
drawRect(_root, "prova", 1, larghezza, altezza, 1, 0x000000, 0xCCCCCC);