Hola a todos,

En una clase personalizada dibujo unos rectangulos con bordes redondeados y al hacer clic sobre ellos se redimensionan. El código simplificado:

Código ActionScript :

class RectanguloRedondeado extends MovieClip(){
      
      var radio:Number = 25
      
      public function RectanguloRedondeado(){
            drawRect(100,40,radio) //width, height, radio
      }

      public function redimensiona(nuevoWidth,nuevoHeight){
            Tweener.addTween(this,{_width:nuevoWidth, _height:nuevoHeight, time:1, onUpdate:updateRect}
      }

      private function updateRect(){
            drawRect(this._width,this._height,radio);
      }

      private function drawRect(ancho:Number,alto:Number,radius:Number){
            // Aquí se dibuja el rectangulo usando beginFill, moveTo, curvTo..
     }
}


El código en sí funciona, pero hay algun tipo de problema, supongo que de rendimiento, que hace que cuando se vuelve a dibujar la forma en el metodo updateRect() se ven algunos saltos en el tamaño del rectángulo de vez en cuando y la animación no queda fluida.

Puede que no haya escogido el camino adecuado para animar el crecimiento, pero quería que fuese algo muy sencillo. Se que si divido el rectangulo en 7 partes (bordes redondeados, centrales...) un poco como se haria un botón liquido en CSS y después calculo posiciones no me daría problema, pero quiero que el código quede sencillo.

¿Alguno sugerencia?

¡Gracias!