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);