Ver post no novo domínio: http://blog.rogeriolino.com/2007/03/06/flash-resize-proporcional/
Acabei de responder no forum da FlashMasters um tópico que se tratava sobre a seguinte dúvida:
O membro queria saber alguma função que redimensiona-se um determinado objeto mas mantendo a sua proporção. Por exemplo um MovieClip de tamanho 400×200 se eu aumentar a largura em 100 tenho que aumentar a altura em 50. Isso devido a razão entre os dois valores.
Então com um lápis na mão podemos chegar a seguinte fórmula para uma nova altura caso altere sua largura:
H = dW . H/W + H
H: Altura;
W: Largura;
dX: delta da variável “X”.
Sabendo a fórmula para uma nova altura é facil chegar na da nova largura:
W = dH . W/H + W
Agora então mãos a obra com as Actions:
MovieClip.prototype.resizeW = function
{
var dw = w – this._width;
this._height += dw*(this._height/this._width);
this._width = w;
}MovieClip.prototype.resizeH = function(h) {
var dh = h – this._height;
this._width += dh*(this._width/this._height);
this._height = h;
}
Para utilizar:
MovieClip.resizeW(novaLargura);
MovieClip.resizeH(novaAltura);
Espero que possa ajudar.