Показать сообщение отдельно
Старый 07.09.2011, 19:10
bav вне форума Посмотреть профиль Отправить личное сообщение для bav Найти все сообщения от bav
  № 5  
Ответить с цитированием
bav
 
Аватар для bav

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Код AS3:
package 
{
    import flash.display.*;
    import flash.events.*;
 
    public class TestProject extends Sprite 
    {
        private var n:int = 0;
        private var cont:Sprite;
 
        public function TestProject() 
        {
            if (stage) init();
            else addEventListener(Event.ADDED_TO_STAGE, init);
        }
 
        private function init(event:Event = null):void 
        {
            removeEventListener(Event.ADDED_TO_STAGE, init);
 
            cont = new Sprite();
            cont.x = stage.stageWidth / 2;
            cont.y = stage.stageHeight / 2;
            addChild(cont);
 
            var s:Sprite = new Sprite();
            s.graphics.beginFill(0);
            s.graphics.drawCircle(0, 0, 10);
            s.addEventListener(Event.ENTER_FRAME, moveCircle);
            cont.addChild(s);
 
            stage.addEventListener(MouseEvent.MOUSE_DOWN, clickHandler);
            stage.addEventListener(MouseEvent.MOUSE_UP, clickHandler);
        }
 
        private function moveCircle(event:Event):void
        {
            n += 10;
            event.target.x = Math.sin(n * (Math.PI / 180)) * 100;
        }
 
        private function clickHandler(event:MouseEvent):void
        {
            cont.rotation = (event.type == MouseEvent.MOUSE_DOWN) ? 90 : 0;
        }
    }
}
Как видим, визуально координаты меняются. Но лучше думать об этом как о повороте контейнера.